From 0649a8029132e2ea659ce6eae2d7bbd4a1218a1d Mon Sep 17 00:00:00 2001 From: Luisfc68 Date: Tue, 13 Aug 2024 15:21:42 -0300 Subject: [PATCH 1/2] chore: 1.3.0 dev deployment --- .openzeppelin/unknown-31.json | 368 + build/contracts/Address.json | 2 +- build/contracts/AddressUpgradeable.json | 2 +- build/contracts/Bridge.json | 1934 +- build/contracts/BridgeMock.json | 2464 +- build/contracts/BtcUtils.json | 28304 ++++++++----- build/contracts/Context.json | 2 +- build/contracts/ContextUpgradeable.json | 2 +- build/contracts/ERC1967Proxy.json | 2 +- build/contracts/ERC1967Upgrade.json | 2 +- build/contracts/IBeacon.json | 2 +- build/contracts/IERC1822Proxiable.json | 2 +- build/contracts/IERC1967.json | 2 +- .../ITransparentUpgradeableProxy.json | 2 +- build/contracts/Initializable.json | 2 +- build/contracts/LiquidityBridgeContract.json | 8602 ++-- .../LiquidityBridgeContractAdmin.json | 24 +- .../LiquidityBridgeContractProxy.json | 68 +- .../contracts/LiquidityBridgeContractV2.json | 34899 ++++++++-------- build/contracts/Migrations.json | 92 +- build/contracts/Mock.json | 202 +- build/contracts/OpCodes.json | 192 +- build/contracts/Ownable.json | 2 +- build/contracts/OwnableUpgradeable.json | 2 +- build/contracts/Proxy.json | 2 +- build/contracts/ProxyAdmin.json | 2 +- build/contracts/Quotes.json | 1014 +- build/contracts/QuotesV2.json | 1112 +- .../contracts/ReentrancyGuardUpgradeable.json | 2 +- build/contracts/SignatureValidator.json | 166 +- build/contracts/SignatureValidatorMock.json | 56 +- build/contracts/StorageSlot.json | 2 +- .../TransparentUpgradeableProxy.json | 2 +- build/contracts/WalletMock.json | 74 +- config.json | 2 +- package-lock.json | 2 + 36 files changed, 43887 insertions(+), 35724 deletions(-) diff --git a/.openzeppelin/unknown-31.json b/.openzeppelin/unknown-31.json index d58e4a9..ef6c41a 100644 --- a/.openzeppelin/unknown-31.json +++ b/.openzeppelin/unknown-31.json @@ -9489,6 +9489,374 @@ }, "namespaces": {} } + }, + "b04391147ed2c41549209e098cb6f0472a06e0d8d2abbe0d578dbc804fd0d03e": { + "address": "0x8f30ea3a47e60F4C5f636407D365f7881C3b8fc9", + "txHash": "0x92cd177e7501c0b990304b9ba2b0ae477ac12b4e8c572e4fb8a15799d91b3ade", + "layout": { + "solcVersion": "0.8.18", + "storage": [ + { + "contract": "Initializable", + "label": "_initialized", + "type": "t_uint8", + "src": "../@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:63", + "retypedFrom": "bool" + }, + { + "contract": "Initializable", + "label": "_initializing", + "type": "t_bool", + "src": "../@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:68" + }, + { + "contract": "ContextUpgradeable", + "label": "__gap", + "type": "t_array(t_uint256)50_storage", + "src": "../@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:40" + }, + { + "contract": "OwnableUpgradeable", + "label": "_owner", + "type": "t_address", + "src": "../@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "contract": "OwnableUpgradeable", + "label": "__gap", + "type": "t_array(t_uint256)49_storage", + "src": "../@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "contract": "ReentrancyGuardUpgradeable", + "label": "_status", + "type": "t_uint256", + "src": "../@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol:38" + }, + { + "contract": "ReentrancyGuardUpgradeable", + "label": "__gap", + "type": "t_array(t_uint256)49_storage", + "src": "../@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol:88" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "bridge", + "type": "t_contract(Bridge)4173", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:92" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "balances", + "type": "t_mapping(t_address,t_uint256)", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:93" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "collateral", + "type": "t_mapping(t_address,t_uint256)", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:94" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "pegoutCollateral", + "type": "t_mapping(t_address,t_uint256)", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:95" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "liquidityProviders", + "type": "t_mapping(t_uint256,t_struct(LiquidityProvider)8021_storage)", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:96" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "callRegistry", + "type": "t_mapping(t_bytes32,t_struct(Registry)8003_storage)", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:97" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "resignationBlockNum", + "type": "t_mapping(t_address,t_uint256)", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:98" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "minCollateral", + "type": "t_uint256", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:100" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "minPegIn", + "type": "t_uint256", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:101" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "rewardP", + "type": "t_uint32", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:103" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "resignDelayInBlocks", + "type": "t_uint32", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:104" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "dust", + "type": "t_uint256", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:105" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "providerId", + "type": "t_uint256", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:106" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "btcBlockTime", + "type": "t_uint256", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:108" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "mainnet", + "type": "t_bool", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:109" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "processedQuotes", + "type": "t_mapping(t_bytes32,t_uint8)", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:111" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "registeredPegoutQuotes", + "type": "t_mapping(t_bytes32,t_struct(PegOutQuote)11234_storage)", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:112" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "pegoutRegistry", + "type": "t_mapping(t_bytes32,t_struct(PegoutRecord)8008_storage)", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:113" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "productFeePercentage", + "type": "t_uint256", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:115" + }, + { + "contract": "LiquidityBridgeContractV2", + "label": "daoFeeCollectorAddress", + "type": "t_address", + "src": "../project:/contracts/LiquidityBridgeContractV2.sol:116" + } + ], + "types": { + "t_contract(Bridge)4173": { + "label": "contract Bridge" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)" + }, + "t_address": { + "label": "address" + }, + "t_uint256": { + "label": "uint256" + }, + "t_mapping(t_uint256,t_struct(LiquidityProvider)8021_storage)": { + "label": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider)" + }, + "t_struct(LiquidityProvider)8021_storage": { + "label": "struct LiquidityBridgeContractV2.LiquidityProvider", + "members": [ + { + "label": "id", + "type": "t_uint256" + }, + { + "label": "provider", + "type": "t_address" + }, + { + "label": "name", + "type": "t_string_storage" + }, + { + "label": "apiBaseUrl", + "type": "t_string_storage" + }, + { + "label": "status", + "type": "t_bool" + }, + { + "label": "providerType", + "type": "t_string_storage" + } + ] + }, + "t_string_storage": { + "label": "string" + }, + "t_bool": { + "label": "bool" + }, + "t_mapping(t_bytes32,t_struct(Registry)8003_storage)": { + "label": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry)" + }, + "t_bytes32": { + "label": "bytes32" + }, + "t_struct(Registry)8003_storage": { + "label": "struct LiquidityBridgeContractV2.Registry", + "members": [ + { + "label": "timestamp", + "type": "t_uint32" + }, + { + "label": "success", + "type": "t_bool" + } + ] + }, + "t_uint32": { + "label": "uint32" + }, + "t_mapping(t_bytes32,t_uint8)": { + "label": "mapping(bytes32 => uint8)" + }, + "t_uint8": { + "label": "uint8" + }, + "t_mapping(t_bytes32,t_struct(PegOutQuote)11234_storage)": { + "label": "mapping(bytes32 => struct QuotesV2.PegOutQuote)" + }, + "t_struct(PegOutQuote)11234_storage": { + "label": "struct QuotesV2.PegOutQuote", + "members": [ + { + "label": "lbcAddress", + "type": "t_address" + }, + { + "label": "lpRskAddress", + "type": "t_address" + }, + { + "label": "btcRefundAddress", + "type": "t_bytes_storage" + }, + { + "label": "rskRefundAddress", + "type": "t_address" + }, + { + "label": "lpBtcAddress", + "type": "t_bytes_storage" + }, + { + "label": "callFee", + "type": "t_uint256" + }, + { + "label": "penaltyFee", + "type": "t_uint256" + }, + { + "label": "nonce", + "type": "t_int64" + }, + { + "label": "deposityAddress", + "type": "t_bytes_storage" + }, + { + "label": "value", + "type": "t_uint256" + }, + { + "label": "agreementTimestamp", + "type": "t_uint32" + }, + { + "label": "depositDateLimit", + "type": "t_uint32" + }, + { + "label": "depositConfirmations", + "type": "t_uint16" + }, + { + "label": "transferConfirmations", + "type": "t_uint16" + }, + { + "label": "transferTime", + "type": "t_uint32" + }, + { + "label": "expireDate", + "type": "t_uint32" + }, + { + "label": "expireBlock", + "type": "t_uint32" + }, + { + "label": "productFeeAmount", + "type": "t_uint256" + }, + { + "label": "gasFee", + "type": "t_uint256" + } + ] + }, + "t_bytes_storage": { + "label": "bytes" + }, + "t_int64": { + "label": "int64" + }, + "t_uint16": { + "label": "uint16" + }, + "t_mapping(t_bytes32,t_struct(PegoutRecord)8008_storage)": { + "label": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord)" + }, + "t_struct(PegoutRecord)8008_storage": { + "label": "struct LiquidityBridgeContractV2.PegoutRecord", + "members": [ + { + "label": "depositTimestamp", + "type": "t_uint256" + }, + { + "label": "completed", + "type": "t_bool" + } + ] + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]" + } + }, + "namespaces": {} + } } } } diff --git a/build/contracts/Address.json b/build/contracts/Address.json index 9430103..490e67a 100644 --- a/build/contracts/Address.json +++ b/build/contracts/Address.json @@ -4371,7 +4371,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.115Z", + "updatedAt": "2024-08-13T18:10:00.970Z", "devdoc": { "details": "Collection of functions related to the address type", "kind": "dev", diff --git a/build/contracts/AddressUpgradeable.json b/build/contracts/AddressUpgradeable.json index 6f1da04..6fbbe31 100644 --- a/build/contracts/AddressUpgradeable.json +++ b/build/contracts/AddressUpgradeable.json @@ -4371,7 +4371,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.105Z", + "updatedAt": "2024-08-13T18:10:00.944Z", "devdoc": { "details": "Collection of functions related to the address type", "kind": "dev", diff --git a/build/contracts/Bridge.json b/build/contracts/Bridge.json index 89bb22c..5ecfb28 100644 --- a/build/contracts/Bridge.json +++ b/build/contracts/Bridge.json @@ -271,7 +271,7 @@ "type": "bytes" } ], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { @@ -893,7 +893,7 @@ "type": "bool" } ], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { @@ -1047,7 +1047,7 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"key\",\"type\":\"bytes\"}],\"name\":\"addFederatorPublicKey\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"btcKey\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"rskKey\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"mstKey\",\"type\":\"bytes\"}],\"name\":\"addFederatorPublicKeyMultikey\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"aaddress\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"maxTransferValue\",\"type\":\"int256\"}],\"name\":\"addLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"aaddress\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"maxTransferValue\",\"type\":\"int256\"}],\"name\":\"addOneOffLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pubkey\",\"type\":\"bytes\"},{\"internalType\":\"bytes[]\",\"name\":\"signatures\",\"type\":\"bytes[]\"},{\"internalType\":\"bytes\",\"name\":\"txhash\",\"type\":\"bytes\"}],\"name\":\"addSignature\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"aaddress\",\"type\":\"string\"}],\"name\":\"addUnlimitedLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"hash\",\"type\":\"bytes\"}],\"name\":\"commitFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"createFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActiveFederationCreationBlockHeight\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActivePowpegRedeemScript\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainBestBlockHeader\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainBestChainHeight\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"depth\",\"type\":\"int256\"}],\"name\":\"getBtcBlockchainBlockHashAtDepth\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"btcBlockHash\",\"type\":\"bytes32\"}],\"name\":\"getBtcBlockchainBlockHeaderByHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"btcBlockHeight\",\"type\":\"uint256\"}],\"name\":\"getBtcBlockchainBlockHeaderByHeight\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainInitialBlockHeight\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"btcBlockHash\",\"type\":\"bytes32\"}],\"name\":\"getBtcBlockchainParentBlockHeaderByHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"merkleBranchPath\",\"type\":\"uint256\"},{\"internalType\":\"bytes32[]\",\"name\":\"merkleBranchHashes\",\"type\":\"bytes32[]\"}],\"name\":\"getBtcTransactionConfirmations\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"hash\",\"type\":\"string\"}],\"name\":\"getBtcTxHashProcessedHeight\",\"outputs\":[{\"internalType\":\"int64\",\"name\":\"\",\"type\":\"int64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationCreationBlockNumber\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationCreationTime\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationThreshold\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"}],\"name\":\"getFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"atype\",\"type\":\"string\"}],\"name\":\"getFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFeePerKb\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"}],\"name\":\"getLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"aaddress\",\"type\":\"string\"}],\"name\":\"getLockWhitelistEntryByAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLockWhitelistSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLockingCap\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinimumLockTxValue\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPendingFederationHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPendingFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"}],\"name\":\"getPendingFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"atype\",\"type\":\"string\"}],\"name\":\"getPendingFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationCreationBlockNumber\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationCreationTime\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationThreshold\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"}],\"name\":\"getRetiringFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"atype\",\"type\":\"string\"}],\"name\":\"getRetiringFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStateForBtcReleaseClient\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStateForDebugging\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"}],\"name\":\"hasBtcBlockCoinbaseTransactionInformation\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"newLockingCap\",\"type\":\"int256\"}],\"name\":\"increaseLockingCap\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"hash\",\"type\":\"string\"}],\"name\":\"isBtcTxHashAlreadyProcessed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"ablock\",\"type\":\"bytes\"}],\"name\":\"receiveHeader\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes[]\",\"name\":\"blocks\",\"type\":\"bytes[]\"}],\"name\":\"receiveHeaders\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"btcTxSerialized\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"pmtSerialized\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"witnessMerkleRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"witnessReservedValue\",\"type\":\"bytes32\"}],\"name\":\"registerBtcCoinbaseTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"atx\",\"type\":\"bytes\"},{\"internalType\":\"int256\",\"name\":\"height\",\"type\":\"int256\"},{\"internalType\":\"bytes\",\"name\":\"pmt\",\"type\":\"bytes\"}],\"name\":\"registerBtcTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"btcTxSerialized\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"pmtSerialized\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"derivationArgumentsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"userRefundBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"liquidityBridgeContractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"shouldTransferToContract\",\"type\":\"bool\"}],\"name\":\"registerFastBridgeBtcTransaction\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"aaddress\",\"type\":\"string\"}],\"name\":\"removeLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rollbackFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"disableDelay\",\"type\":\"int256\"}],\"name\":\"setLockWhitelistDisableBlockDelay\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"updateCollections\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"feePerKb\",\"type\":\"int256\"}],\"name\":\"voteFeePerKbChange\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Bridge.sol\":\"Bridge\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"project:/contracts/Bridge.sol\":{\"keccak256\":\"0xae192fa4fc0d6d395fd0c3912bc3affe86ddd4869f04501fbae0afe234d1becd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://309436cba07567a3ee76e71d6a751023b436a17f7d83e291ef731318287756e6\",\"dweb:/ipfs/QmZTjw3hbY4ofptJmQwnLRGrBTQcv6yPgbY4WvMAwgkzGS\"]}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"key\",\"type\":\"bytes\"}],\"name\":\"addFederatorPublicKey\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"btcKey\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"rskKey\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"mstKey\",\"type\":\"bytes\"}],\"name\":\"addFederatorPublicKeyMultikey\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"aaddress\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"maxTransferValue\",\"type\":\"int256\"}],\"name\":\"addLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"aaddress\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"maxTransferValue\",\"type\":\"int256\"}],\"name\":\"addOneOffLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pubkey\",\"type\":\"bytes\"},{\"internalType\":\"bytes[]\",\"name\":\"signatures\",\"type\":\"bytes[]\"},{\"internalType\":\"bytes\",\"name\":\"txhash\",\"type\":\"bytes\"}],\"name\":\"addSignature\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"aaddress\",\"type\":\"string\"}],\"name\":\"addUnlimitedLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"hash\",\"type\":\"bytes\"}],\"name\":\"commitFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"createFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActiveFederationCreationBlockHeight\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActivePowpegRedeemScript\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainBestBlockHeader\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainBestChainHeight\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"depth\",\"type\":\"int256\"}],\"name\":\"getBtcBlockchainBlockHashAtDepth\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"btcBlockHash\",\"type\":\"bytes32\"}],\"name\":\"getBtcBlockchainBlockHeaderByHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"btcBlockHeight\",\"type\":\"uint256\"}],\"name\":\"getBtcBlockchainBlockHeaderByHeight\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainInitialBlockHeight\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"btcBlockHash\",\"type\":\"bytes32\"}],\"name\":\"getBtcBlockchainParentBlockHeaderByHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"merkleBranchPath\",\"type\":\"uint256\"},{\"internalType\":\"bytes32[]\",\"name\":\"merkleBranchHashes\",\"type\":\"bytes32[]\"}],\"name\":\"getBtcTransactionConfirmations\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"hash\",\"type\":\"string\"}],\"name\":\"getBtcTxHashProcessedHeight\",\"outputs\":[{\"internalType\":\"int64\",\"name\":\"\",\"type\":\"int64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationCreationBlockNumber\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationCreationTime\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationThreshold\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"}],\"name\":\"getFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"atype\",\"type\":\"string\"}],\"name\":\"getFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFeePerKb\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"}],\"name\":\"getLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"aaddress\",\"type\":\"string\"}],\"name\":\"getLockWhitelistEntryByAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLockWhitelistSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLockingCap\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinimumLockTxValue\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPendingFederationHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPendingFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"}],\"name\":\"getPendingFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"atype\",\"type\":\"string\"}],\"name\":\"getPendingFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationCreationBlockNumber\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationCreationTime\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationThreshold\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"}],\"name\":\"getRetiringFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"atype\",\"type\":\"string\"}],\"name\":\"getRetiringFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStateForBtcReleaseClient\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStateForDebugging\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"}],\"name\":\"hasBtcBlockCoinbaseTransactionInformation\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"newLockingCap\",\"type\":\"int256\"}],\"name\":\"increaseLockingCap\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"hash\",\"type\":\"string\"}],\"name\":\"isBtcTxHashAlreadyProcessed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"ablock\",\"type\":\"bytes\"}],\"name\":\"receiveHeader\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes[]\",\"name\":\"blocks\",\"type\":\"bytes[]\"}],\"name\":\"receiveHeaders\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"btcTxSerialized\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"pmtSerialized\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"witnessMerkleRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"witnessReservedValue\",\"type\":\"bytes32\"}],\"name\":\"registerBtcCoinbaseTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"atx\",\"type\":\"bytes\"},{\"internalType\":\"int256\",\"name\":\"height\",\"type\":\"int256\"},{\"internalType\":\"bytes\",\"name\":\"pmt\",\"type\":\"bytes\"}],\"name\":\"registerBtcTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"btcTxSerialized\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"pmtSerialized\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"derivationArgumentsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"userRefundBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"liquidityBridgeContractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"shouldTransferToContract\",\"type\":\"bool\"}],\"name\":\"registerFastBridgeBtcTransaction\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"aaddress\",\"type\":\"string\"}],\"name\":\"removeLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rollbackFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"disableDelay\",\"type\":\"int256\"}],\"name\":\"setLockWhitelistDisableBlockDelay\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"updateCollections\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"feePerKb\",\"type\":\"int256\"}],\"name\":\"voteFeePerKbChange\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Bridge.sol\":\"Bridge\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"project:/contracts/Bridge.sol\":{\"keccak256\":\"0x1eb986f1f28ace76b72425a2617eaeb89a54c765dc7b16689cb1105a7e6c0f2f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://255860b4bfb0bed73723349493307106fb54fcaf5839a7b0c012fc1a03d0b8ce\",\"dweb:/ipfs/QmUoWjWVkXpUWjaiWQXQVNKEJmCnPtKXXTgFq7kkcTuGMs\"]}},\"version\":1}", "bytecode": "0x", "deployedBytecode": "0x", "immutableReferences": {}, @@ -1055,21 +1055,21 @@ "deployedGeneratedSources": [], "sourceMap": "", "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\ninterface Bridge {\n\n receive() external payable;\n\n function getBtcBlockchainBestChainHeight() external view returns (int);\n\n function getStateForBtcReleaseClient() external view returns (bytes memory);\n\n function getStateForDebugging() external view returns (bytes memory);\n\n function getBtcBlockchainInitialBlockHeight() external view returns (int);\n\n function getBtcBlockchainBlockHashAtDepth(int256 depth) external view returns (bytes memory);\n\n function getBtcTxHashProcessedHeight(string calldata hash) external view returns (int64);\n\n function isBtcTxHashAlreadyProcessed(string calldata hash) external view returns (bool);\n\n function getFederationAddress() external view returns (string memory);\n\n function registerBtcTransaction(bytes calldata atx, int256 height, bytes calldata pmt) external;\n\n function addSignature(bytes calldata pubkey, bytes[] calldata signatures, bytes calldata txhash) external;\n\n function receiveHeaders(bytes[] calldata blocks) external;\n\n function receiveHeader(bytes calldata ablock) external returns (int256);\n\n function getFederationSize() external view returns (int256);\n\n function getFederationThreshold() external view returns (int256);\n\n function getFederatorPublicKey(int256 index) external view returns (bytes memory);\n\n function getFederatorPublicKeyOfType(int256 index, string calldata atype) external returns (bytes memory);\n\n function getFederationCreationTime() external view returns (int256);\n\n function getFederationCreationBlockNumber() external view returns (int256);\n\n function getRetiringFederationAddress() external view returns (string memory);\n\n function getRetiringFederationSize() external view returns (int256);\n\n function getRetiringFederationThreshold() external view returns (int256);\n\n function getRetiringFederatorPublicKey(int256 index) external view returns (bytes memory);\n\n function getRetiringFederatorPublicKeyOfType(int256 index, string calldata atype)\n external view returns (bytes memory);\n\n function getRetiringFederationCreationTime() external view returns (int256);\n\n function getRetiringFederationCreationBlockNumber() external view returns (int256);\n\n function createFederation() external returns (int256);\n\n function addFederatorPublicKey(bytes calldata key) external returns (int256);\n\n function addFederatorPublicKeyMultikey(bytes calldata btcKey, bytes calldata rskKey,\n bytes calldata mstKey) external returns (int256);\n\n function commitFederation(bytes calldata hash) external returns (int256);\n\n function rollbackFederation() external returns (int256);\n\n function getPendingFederationHash() external view returns (bytes memory);\n\n function getPendingFederationSize() external view returns (int256);\n\n function getPendingFederatorPublicKey(int256 index) external view returns (bytes memory);\n\n function getPendingFederatorPublicKeyOfType(int256 index, string calldata atype)\n external view returns (bytes memory);\n\n function getLockWhitelistSize() external view returns (int256);\n\n function getLockWhitelistAddress(int256 index) external view returns (string memory);\n\n function getLockWhitelistEntryByAddress(string calldata aaddress) external view returns (int256);\n\n function addLockWhitelistAddress(string calldata aaddress, int256 maxTransferValue) external returns (int256);\n\n function addOneOffLockWhitelistAddress(string calldata aaddress, int256 maxTransferValue)\n external returns (int256);\n\n function addUnlimitedLockWhitelistAddress(string calldata aaddress) external returns (int256);\n\n function removeLockWhitelistAddress(string calldata aaddress) external returns (int256);\n\n function setLockWhitelistDisableBlockDelay(int256 disableDelay) external returns (int256);\n\n function getFeePerKb() external view returns (int256);\n\n function voteFeePerKbChange(int256 feePerKb) external returns (int256);\n\n function updateCollections() external;\n\n function getMinimumLockTxValue() external view returns (int256);\n\n function getBtcTransactionConfirmations(bytes32 txHash, bytes32 blockHash,\n uint256 merkleBranchPath, bytes32[] calldata merkleBranchHashes) external view returns (int256);\n\n function getLockingCap() external view returns (int256);\n\n function increaseLockingCap(int256 newLockingCap) external returns (bool);\n\n function registerBtcCoinbaseTransaction(bytes calldata btcTxSerialized, bytes32 blockHash,\n bytes calldata pmtSerialized, bytes32 witnessMerkleRoot, bytes32 witnessReservedValue) external;\n\n function hasBtcBlockCoinbaseTransactionInformation(bytes32 blockHash) external returns (bool);\n\n function registerFastBridgeBtcTransaction(bytes calldata btcTxSerialized, uint256 height,\n bytes calldata pmtSerialized, bytes32 derivationArgumentsHash,\n bytes calldata userRefundBtcAddress, address payable liquidityBridgeContractAddress,\n bytes calldata liquidityProviderBtcAddress, bool shouldTransferToContract) external returns (int256);\n\n function getActiveFederationCreationBlockHeight() external view returns (uint256);\n\n function getActivePowpegRedeemScript() external view returns (bytes memory);\n\n function getBtcBlockchainBestBlockHeader() external view returns (bytes memory);\n\n function getBtcBlockchainBlockHeaderByHash(bytes32 btcBlockHash) external view returns (bytes memory);\n\n function getBtcBlockchainBlockHeaderByHeight(uint256 btcBlockHeight) external view returns (bytes memory);\n\n function getBtcBlockchainParentBlockHeaderByHash(bytes32 btcBlockHash) external view returns (bytes memory);\n}", - "sourcePath": "/Users/guilhermesoares/WebstormProjects/Rootstock/liquidity-bridge-contract/contracts/Bridge.sol", + "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\ninterface Bridge {\n\n receive() external payable;\n\n function getBtcBlockchainBestChainHeight() external view returns (int);\n\n function getStateForBtcReleaseClient() external view returns (bytes memory);\n\n function getStateForDebugging() external view returns (bytes memory);\n\n function getBtcBlockchainInitialBlockHeight() external view returns (int);\n\n function getBtcBlockchainBlockHashAtDepth(int256 depth) external view returns (bytes memory);\n\n function getBtcTxHashProcessedHeight(string calldata hash) external view returns (int64);\n\n function isBtcTxHashAlreadyProcessed(string calldata hash) external view returns (bool);\n\n function getFederationAddress() external view returns (string memory);\n\n function registerBtcTransaction(bytes calldata atx, int256 height, bytes calldata pmt) external;\n\n function addSignature(bytes calldata pubkey, bytes[] calldata signatures, bytes calldata txhash) external;\n\n function receiveHeaders(bytes[] calldata blocks) external;\n\n function receiveHeader(bytes calldata ablock) external returns (int256);\n\n function getFederationSize() external view returns (int256);\n\n function getFederationThreshold() external view returns (int256);\n\n function getFederatorPublicKey(int256 index) external view returns (bytes memory);\n\n function getFederatorPublicKeyOfType(int256 index, string calldata atype) external view returns (bytes memory);\n\n function getFederationCreationTime() external view returns (int256);\n\n function getFederationCreationBlockNumber() external view returns (int256);\n\n function getRetiringFederationAddress() external view returns (string memory);\n\n function getRetiringFederationSize() external view returns (int256);\n\n function getRetiringFederationThreshold() external view returns (int256);\n\n function getRetiringFederatorPublicKey(int256 index) external view returns (bytes memory);\n\n function getRetiringFederatorPublicKeyOfType(int256 index, string calldata atype)\n external view returns (bytes memory);\n\n function getRetiringFederationCreationTime() external view returns (int256);\n\n function getRetiringFederationCreationBlockNumber() external view returns (int256);\n\n function createFederation() external returns (int256);\n\n function addFederatorPublicKey(bytes calldata key) external returns (int256);\n\n function addFederatorPublicKeyMultikey(bytes calldata btcKey, bytes calldata rskKey,\n bytes calldata mstKey) external returns (int256);\n\n function commitFederation(bytes calldata hash) external returns (int256);\n\n function rollbackFederation() external returns (int256);\n\n function getPendingFederationHash() external view returns (bytes memory);\n\n function getPendingFederationSize() external view returns (int256);\n\n function getPendingFederatorPublicKey(int256 index) external view returns (bytes memory);\n\n function getPendingFederatorPublicKeyOfType(int256 index, string calldata atype)\n external view returns (bytes memory);\n\n function getLockWhitelistSize() external view returns (int256);\n\n function getLockWhitelistAddress(int256 index) external view returns (string memory);\n\n function getLockWhitelistEntryByAddress(string calldata aaddress) external view returns (int256);\n\n function addLockWhitelistAddress(string calldata aaddress, int256 maxTransferValue) external returns (int256);\n\n function addOneOffLockWhitelistAddress(string calldata aaddress, int256 maxTransferValue)\n external returns (int256);\n\n function addUnlimitedLockWhitelistAddress(string calldata aaddress) external returns (int256);\n\n function removeLockWhitelistAddress(string calldata aaddress) external returns (int256);\n\n function setLockWhitelistDisableBlockDelay(int256 disableDelay) external returns (int256);\n\n function getFeePerKb() external view returns (int256);\n\n function voteFeePerKbChange(int256 feePerKb) external returns (int256);\n\n function updateCollections() external;\n\n function getMinimumLockTxValue() external view returns (int256);\n\n function getBtcTransactionConfirmations(bytes32 txHash, bytes32 blockHash,\n uint256 merkleBranchPath, bytes32[] calldata merkleBranchHashes) external view returns (int256);\n\n function getLockingCap() external view returns (int256);\n\n function increaseLockingCap(int256 newLockingCap) external returns (bool);\n\n function registerBtcCoinbaseTransaction(bytes calldata btcTxSerialized, bytes32 blockHash,\n bytes calldata pmtSerialized, bytes32 witnessMerkleRoot, bytes32 witnessReservedValue) external;\n\n function hasBtcBlockCoinbaseTransactionInformation(bytes32 blockHash) external view returns (bool);\n\n function registerFastBridgeBtcTransaction(bytes calldata btcTxSerialized, uint256 height,\n bytes calldata pmtSerialized, bytes32 derivationArgumentsHash,\n bytes calldata userRefundBtcAddress, address payable liquidityBridgeContractAddress,\n bytes calldata liquidityProviderBtcAddress, bool shouldTransferToContract) external returns (int256);\n\n function getActiveFederationCreationBlockHeight() external view returns (uint256);\n\n function getActivePowpegRedeemScript() external view returns (bytes memory);\n\n function getBtcBlockchainBestBlockHeader() external view returns (bytes memory);\n\n function getBtcBlockchainBlockHeaderByHash(bytes32 btcBlockHash) external view returns (bytes memory);\n\n function getBtcBlockchainBlockHeaderByHeight(uint256 btcBlockHeight) external view returns (bytes memory);\n\n function getBtcBlockchainParentBlockHeaderByHash(bytes32 btcBlockHash) external view returns (bytes memory);\n}", + "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/Bridge.sol", "ast": { "absolutePath": "project:/contracts/Bridge.sol", "exportedSymbols": { "Bridge": [ - 3652 + 4173 ] }, - "id": 3653, + "id": 4174, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 3251, + "id": 3772, "literals": [ "solidity", "^", @@ -1086,16 +1086,16 @@ "contractDependencies": [], "contractKind": "interface", "fullyImplemented": false, - "id": 3652, + "id": 4173, "linearizedBaseContracts": [ - 3652 + 4173 ], "name": "Bridge", "nameLocation": "68:6:19", "nodeType": "ContractDefinition", "nodes": [ { - "id": 3254, + "id": 3775, "implemented": false, "kind": "receive", "modifiers": [], @@ -1103,18 +1103,18 @@ "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 3252, + "id": 3773, "nodeType": "ParameterList", "parameters": [], "src": "89:2:19" }, "returnParameters": { - "id": 3253, + "id": 3774, "nodeType": "ParameterList", "parameters": [], "src": "108:0:19" }, - "scope": 3652, + "scope": 4173, "src": "82:27:19", "stateMutability": "payable", "virtual": false, @@ -1122,7 +1122,7 @@ }, { "functionSelector": "14c89c01", - "id": 3259, + "id": 3780, "implemented": false, "kind": "function", "modifiers": [], @@ -1130,23 +1130,23 @@ "nameLocation": "124:31:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3255, + "id": 3776, "nodeType": "ParameterList", "parameters": [], "src": "155:2:19" }, "returnParameters": { - "id": 3258, + "id": 3779, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3257, + "id": 3778, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3259, + "scope": 3780, "src": "181:3:19", "stateVariable": false, "storageLocation": "default", @@ -1155,7 +1155,7 @@ "typeString": "int256" }, "typeName": { - "id": 3256, + "id": 3777, "name": "int", "nodeType": "ElementaryTypeName", "src": "181:3:19", @@ -1169,7 +1169,7 @@ ], "src": "180:5:19" }, - "scope": 3652, + "scope": 4173, "src": "115:71:19", "stateMutability": "view", "virtual": false, @@ -1177,7 +1177,7 @@ }, { "functionSelector": "c4fbca20", - "id": 3264, + "id": 3785, "implemented": false, "kind": "function", "modifiers": [], @@ -1185,23 +1185,23 @@ "nameLocation": "201:27:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3260, + "id": 3781, "nodeType": "ParameterList", "parameters": [], "src": "228:2:19" }, "returnParameters": { - "id": 3263, + "id": 3784, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3262, + "id": 3783, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3264, + "scope": 3785, "src": "254:12:19", "stateVariable": false, "storageLocation": "memory", @@ -1210,7 +1210,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3261, + "id": 3782, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "254:5:19", @@ -1224,7 +1224,7 @@ ], "src": "253:14:19" }, - "scope": 3652, + "scope": 4173, "src": "192:76:19", "stateMutability": "view", "virtual": false, @@ -1232,7 +1232,7 @@ }, { "functionSelector": "0d0cee93", - "id": 3269, + "id": 3790, "implemented": false, "kind": "function", "modifiers": [], @@ -1240,23 +1240,23 @@ "nameLocation": "283:20:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3265, + "id": 3786, "nodeType": "ParameterList", "parameters": [], "src": "303:2:19" }, "returnParameters": { - "id": 3268, + "id": 3789, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3267, + "id": 3788, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3269, + "scope": 3790, "src": "329:12:19", "stateVariable": false, "storageLocation": "memory", @@ -1265,7 +1265,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3266, + "id": 3787, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "329:5:19", @@ -1279,7 +1279,7 @@ ], "src": "328:14:19" }, - "scope": 3652, + "scope": 4173, "src": "274:69:19", "stateMutability": "view", "virtual": false, @@ -1287,7 +1287,7 @@ }, { "functionSelector": "4897193f", - "id": 3274, + "id": 3795, "implemented": false, "kind": "function", "modifiers": [], @@ -1295,23 +1295,23 @@ "nameLocation": "358:34:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3270, + "id": 3791, "nodeType": "ParameterList", "parameters": [], "src": "392:2:19" }, "returnParameters": { - "id": 3273, + "id": 3794, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3272, + "id": 3793, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3274, + "scope": 3795, "src": "418:3:19", "stateVariable": false, "storageLocation": "default", @@ -1320,7 +1320,7 @@ "typeString": "int256" }, "typeName": { - "id": 3271, + "id": 3792, "name": "int", "nodeType": "ElementaryTypeName", "src": "418:3:19", @@ -1334,7 +1334,7 @@ ], "src": "417:5:19" }, - "scope": 3652, + "scope": 4173, "src": "349:74:19", "stateMutability": "view", "virtual": false, @@ -1342,7 +1342,7 @@ }, { "functionSelector": "efd44418", - "id": 3281, + "id": 3802, "implemented": false, "kind": "function", "modifiers": [], @@ -1350,17 +1350,17 @@ "nameLocation": "438:32:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3277, + "id": 3798, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3276, + "id": 3797, "mutability": "mutable", "name": "depth", "nameLocation": "478:5:19", "nodeType": "VariableDeclaration", - "scope": 3281, + "scope": 3802, "src": "471:12:19", "stateVariable": false, "storageLocation": "default", @@ -1369,7 +1369,7 @@ "typeString": "int256" }, "typeName": { - "id": 3275, + "id": 3796, "name": "int256", "nodeType": "ElementaryTypeName", "src": "471:6:19", @@ -1384,17 +1384,17 @@ "src": "470:14:19" }, "returnParameters": { - "id": 3280, + "id": 3801, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3279, + "id": 3800, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3281, + "scope": 3802, "src": "508:12:19", "stateVariable": false, "storageLocation": "memory", @@ -1403,7 +1403,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3278, + "id": 3799, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "508:5:19", @@ -1417,7 +1417,7 @@ ], "src": "507:14:19" }, - "scope": 3652, + "scope": 4173, "src": "429:93:19", "stateMutability": "view", "virtual": false, @@ -1425,7 +1425,7 @@ }, { "functionSelector": "97fcca7d", - "id": 3288, + "id": 3809, "implemented": false, "kind": "function", "modifiers": [], @@ -1433,17 +1433,17 @@ "nameLocation": "537:27:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3284, + "id": 3805, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3283, + "id": 3804, "mutability": "mutable", "name": "hash", "nameLocation": "581:4:19", "nodeType": "VariableDeclaration", - "scope": 3288, + "scope": 3809, "src": "565:20:19", "stateVariable": false, "storageLocation": "calldata", @@ -1452,7 +1452,7 @@ "typeString": "string" }, "typeName": { - "id": 3282, + "id": 3803, "name": "string", "nodeType": "ElementaryTypeName", "src": "565:6:19", @@ -1467,17 +1467,17 @@ "src": "564:22:19" }, "returnParameters": { - "id": 3287, + "id": 3808, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3286, + "id": 3807, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3288, + "scope": 3809, "src": "610:5:19", "stateVariable": false, "storageLocation": "default", @@ -1486,7 +1486,7 @@ "typeString": "int64" }, "typeName": { - "id": 3285, + "id": 3806, "name": "int64", "nodeType": "ElementaryTypeName", "src": "610:5:19", @@ -1500,7 +1500,7 @@ ], "src": "609:7:19" }, - "scope": 3652, + "scope": 4173, "src": "528:89:19", "stateMutability": "view", "virtual": false, @@ -1508,7 +1508,7 @@ }, { "functionSelector": "248a982d", - "id": 3295, + "id": 3816, "implemented": false, "kind": "function", "modifiers": [], @@ -1516,17 +1516,17 @@ "nameLocation": "632:27:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3291, + "id": 3812, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3290, + "id": 3811, "mutability": "mutable", "name": "hash", "nameLocation": "676:4:19", "nodeType": "VariableDeclaration", - "scope": 3295, + "scope": 3816, "src": "660:20:19", "stateVariable": false, "storageLocation": "calldata", @@ -1535,7 +1535,7 @@ "typeString": "string" }, "typeName": { - "id": 3289, + "id": 3810, "name": "string", "nodeType": "ElementaryTypeName", "src": "660:6:19", @@ -1550,17 +1550,17 @@ "src": "659:22:19" }, "returnParameters": { - "id": 3294, + "id": 3815, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3293, + "id": 3814, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3295, + "scope": 3816, "src": "705:4:19", "stateVariable": false, "storageLocation": "default", @@ -1569,7 +1569,7 @@ "typeString": "bool" }, "typeName": { - "id": 3292, + "id": 3813, "name": "bool", "nodeType": "ElementaryTypeName", "src": "705:4:19", @@ -1583,7 +1583,7 @@ ], "src": "704:6:19" }, - "scope": 3652, + "scope": 4173, "src": "623:88:19", "stateMutability": "view", "virtual": false, @@ -1591,7 +1591,7 @@ }, { "functionSelector": "6923fa85", - "id": 3300, + "id": 3821, "implemented": false, "kind": "function", "modifiers": [], @@ -1599,23 +1599,23 @@ "nameLocation": "726:20:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3296, + "id": 3817, "nodeType": "ParameterList", "parameters": [], "src": "746:2:19" }, "returnParameters": { - "id": 3299, + "id": 3820, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3298, + "id": 3819, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3300, + "scope": 3821, "src": "772:13:19", "stateVariable": false, "storageLocation": "memory", @@ -1624,7 +1624,7 @@ "typeString": "string" }, "typeName": { - "id": 3297, + "id": 3818, "name": "string", "nodeType": "ElementaryTypeName", "src": "772:6:19", @@ -1638,7 +1638,7 @@ ], "src": "771:15:19" }, - "scope": 3652, + "scope": 4173, "src": "717:70:19", "stateMutability": "view", "virtual": false, @@ -1646,7 +1646,7 @@ }, { "functionSelector": "43dc0656", - "id": 3309, + "id": 3830, "implemented": false, "kind": "function", "modifiers": [], @@ -1654,17 +1654,17 @@ "nameLocation": "802:22:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3307, + "id": 3828, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3302, + "id": 3823, "mutability": "mutable", "name": "atx", "nameLocation": "840:3:19", "nodeType": "VariableDeclaration", - "scope": 3309, + "scope": 3830, "src": "825:18:19", "stateVariable": false, "storageLocation": "calldata", @@ -1673,7 +1673,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3301, + "id": 3822, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "825:5:19", @@ -1686,12 +1686,12 @@ }, { "constant": false, - "id": 3304, + "id": 3825, "mutability": "mutable", "name": "height", "nameLocation": "852:6:19", "nodeType": "VariableDeclaration", - "scope": 3309, + "scope": 3830, "src": "845:13:19", "stateVariable": false, "storageLocation": "default", @@ -1700,7 +1700,7 @@ "typeString": "int256" }, "typeName": { - "id": 3303, + "id": 3824, "name": "int256", "nodeType": "ElementaryTypeName", "src": "845:6:19", @@ -1713,12 +1713,12 @@ }, { "constant": false, - "id": 3306, + "id": 3827, "mutability": "mutable", "name": "pmt", "nameLocation": "875:3:19", "nodeType": "VariableDeclaration", - "scope": 3309, + "scope": 3830, "src": "860:18:19", "stateVariable": false, "storageLocation": "calldata", @@ -1727,7 +1727,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3305, + "id": 3826, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "860:5:19", @@ -1742,12 +1742,12 @@ "src": "824:55:19" }, "returnParameters": { - "id": 3308, + "id": 3829, "nodeType": "ParameterList", "parameters": [], "src": "888:0:19" }, - "scope": 3652, + "scope": 4173, "src": "793:96:19", "stateMutability": "nonpayable", "virtual": false, @@ -1755,7 +1755,7 @@ }, { "functionSelector": "f10b9c59", - "id": 3319, + "id": 3840, "implemented": false, "kind": "function", "modifiers": [], @@ -1763,17 +1763,17 @@ "nameLocation": "904:12:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3317, + "id": 3838, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3311, + "id": 3832, "mutability": "mutable", "name": "pubkey", "nameLocation": "932:6:19", "nodeType": "VariableDeclaration", - "scope": 3319, + "scope": 3840, "src": "917:21:19", "stateVariable": false, "storageLocation": "calldata", @@ -1782,7 +1782,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3310, + "id": 3831, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "917:5:19", @@ -1795,12 +1795,12 @@ }, { "constant": false, - "id": 3314, + "id": 3835, "mutability": "mutable", "name": "signatures", "nameLocation": "957:10:19", "nodeType": "VariableDeclaration", - "scope": 3319, + "scope": 3840, "src": "940:27:19", "stateVariable": false, "storageLocation": "calldata", @@ -1810,7 +1810,7 @@ }, "typeName": { "baseType": { - "id": 3312, + "id": 3833, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "940:5:19", @@ -1819,7 +1819,7 @@ "typeString": "bytes" } }, - "id": 3313, + "id": 3834, "nodeType": "ArrayTypeName", "src": "940:7:19", "typeDescriptions": { @@ -1831,12 +1831,12 @@ }, { "constant": false, - "id": 3316, + "id": 3837, "mutability": "mutable", "name": "txhash", "nameLocation": "984:6:19", "nodeType": "VariableDeclaration", - "scope": 3319, + "scope": 3840, "src": "969:21:19", "stateVariable": false, "storageLocation": "calldata", @@ -1845,7 +1845,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3315, + "id": 3836, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "969:5:19", @@ -1860,12 +1860,12 @@ "src": "916:75:19" }, "returnParameters": { - "id": 3318, + "id": 3839, "nodeType": "ParameterList", "parameters": [], "src": "1000:0:19" }, - "scope": 3652, + "scope": 4173, "src": "895:106:19", "stateMutability": "nonpayable", "virtual": false, @@ -1873,7 +1873,7 @@ }, { "functionSelector": "e5400e7b", - "id": 3325, + "id": 3846, "implemented": false, "kind": "function", "modifiers": [], @@ -1881,17 +1881,17 @@ "nameLocation": "1016:14:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3323, + "id": 3844, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3322, + "id": 3843, "mutability": "mutable", "name": "blocks", "nameLocation": "1048:6:19", "nodeType": "VariableDeclaration", - "scope": 3325, + "scope": 3846, "src": "1031:23:19", "stateVariable": false, "storageLocation": "calldata", @@ -1901,7 +1901,7 @@ }, "typeName": { "baseType": { - "id": 3320, + "id": 3841, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1031:5:19", @@ -1910,7 +1910,7 @@ "typeString": "bytes" } }, - "id": 3321, + "id": 3842, "nodeType": "ArrayTypeName", "src": "1031:7:19", "typeDescriptions": { @@ -1924,12 +1924,12 @@ "src": "1030:25:19" }, "returnParameters": { - "id": 3324, + "id": 3845, "nodeType": "ParameterList", "parameters": [], "src": "1064:0:19" }, - "scope": 3652, + "scope": 4173, "src": "1007:58:19", "stateMutability": "nonpayable", "virtual": false, @@ -1937,7 +1937,7 @@ }, { "functionSelector": "884bdd86", - "id": 3332, + "id": 3853, "implemented": false, "kind": "function", "modifiers": [], @@ -1945,17 +1945,17 @@ "nameLocation": "1080:13:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3328, + "id": 3849, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3327, + "id": 3848, "mutability": "mutable", "name": "ablock", "nameLocation": "1109:6:19", "nodeType": "VariableDeclaration", - "scope": 3332, + "scope": 3853, "src": "1094:21:19", "stateVariable": false, "storageLocation": "calldata", @@ -1964,7 +1964,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3326, + "id": 3847, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1094:5:19", @@ -1979,17 +1979,17 @@ "src": "1093:23:19" }, "returnParameters": { - "id": 3331, + "id": 3852, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3330, + "id": 3851, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3332, + "scope": 3853, "src": "1135:6:19", "stateVariable": false, "storageLocation": "default", @@ -1998,7 +1998,7 @@ "typeString": "int256" }, "typeName": { - "id": 3329, + "id": 3850, "name": "int256", "nodeType": "ElementaryTypeName", "src": "1135:6:19", @@ -2012,7 +2012,7 @@ ], "src": "1134:8:19" }, - "scope": 3652, + "scope": 4173, "src": "1071:72:19", "stateMutability": "nonpayable", "virtual": false, @@ -2020,7 +2020,7 @@ }, { "functionSelector": "802ad4b6", - "id": 3337, + "id": 3858, "implemented": false, "kind": "function", "modifiers": [], @@ -2028,23 +2028,23 @@ "nameLocation": "1158:17:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3333, + "id": 3854, "nodeType": "ParameterList", "parameters": [], "src": "1175:2:19" }, "returnParameters": { - "id": 3336, + "id": 3857, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3335, + "id": 3856, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3337, + "scope": 3858, "src": "1201:6:19", "stateVariable": false, "storageLocation": "default", @@ -2053,7 +2053,7 @@ "typeString": "int256" }, "typeName": { - "id": 3334, + "id": 3855, "name": "int256", "nodeType": "ElementaryTypeName", "src": "1201:6:19", @@ -2067,7 +2067,7 @@ ], "src": "1200:8:19" }, - "scope": 3652, + "scope": 4173, "src": "1149:60:19", "stateMutability": "view", "virtual": false, @@ -2075,7 +2075,7 @@ }, { "functionSelector": "0fd47456", - "id": 3342, + "id": 3863, "implemented": false, "kind": "function", "modifiers": [], @@ -2083,23 +2083,23 @@ "nameLocation": "1224:22:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3338, + "id": 3859, "nodeType": "ParameterList", "parameters": [], "src": "1246:2:19" }, "returnParameters": { - "id": 3341, + "id": 3862, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3340, + "id": 3861, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3342, + "scope": 3863, "src": "1272:6:19", "stateVariable": false, "storageLocation": "default", @@ -2108,7 +2108,7 @@ "typeString": "int256" }, "typeName": { - "id": 3339, + "id": 3860, "name": "int256", "nodeType": "ElementaryTypeName", "src": "1272:6:19", @@ -2122,7 +2122,7 @@ ], "src": "1271:8:19" }, - "scope": 3652, + "scope": 4173, "src": "1215:65:19", "stateMutability": "view", "virtual": false, @@ -2130,7 +2130,7 @@ }, { "functionSelector": "6b89a1af", - "id": 3349, + "id": 3870, "implemented": false, "kind": "function", "modifiers": [], @@ -2138,17 +2138,17 @@ "nameLocation": "1295:21:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3345, + "id": 3866, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3344, + "id": 3865, "mutability": "mutable", "name": "index", "nameLocation": "1324:5:19", "nodeType": "VariableDeclaration", - "scope": 3349, + "scope": 3870, "src": "1317:12:19", "stateVariable": false, "storageLocation": "default", @@ -2157,7 +2157,7 @@ "typeString": "int256" }, "typeName": { - "id": 3343, + "id": 3864, "name": "int256", "nodeType": "ElementaryTypeName", "src": "1317:6:19", @@ -2172,17 +2172,17 @@ "src": "1316:14:19" }, "returnParameters": { - "id": 3348, + "id": 3869, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3347, + "id": 3868, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3349, + "scope": 3870, "src": "1354:12:19", "stateVariable": false, "storageLocation": "memory", @@ -2191,7 +2191,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3346, + "id": 3867, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1354:5:19", @@ -2205,7 +2205,7 @@ ], "src": "1353:14:19" }, - "scope": 3652, + "scope": 4173, "src": "1286:82:19", "stateMutability": "view", "virtual": false, @@ -2213,7 +2213,7 @@ }, { "functionSelector": "549cfd1c", - "id": 3358, + "id": 3879, "implemented": false, "kind": "function", "modifiers": [], @@ -2221,17 +2221,17 @@ "nameLocation": "1383:27:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3354, + "id": 3875, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3351, + "id": 3872, "mutability": "mutable", "name": "index", "nameLocation": "1418:5:19", "nodeType": "VariableDeclaration", - "scope": 3358, + "scope": 3879, "src": "1411:12:19", "stateVariable": false, "storageLocation": "default", @@ -2240,7 +2240,7 @@ "typeString": "int256" }, "typeName": { - "id": 3350, + "id": 3871, "name": "int256", "nodeType": "ElementaryTypeName", "src": "1411:6:19", @@ -2253,12 +2253,12 @@ }, { "constant": false, - "id": 3353, + "id": 3874, "mutability": "mutable", "name": "atype", "nameLocation": "1441:5:19", "nodeType": "VariableDeclaration", - "scope": 3358, + "scope": 3879, "src": "1425:21:19", "stateVariable": false, "storageLocation": "calldata", @@ -2267,7 +2267,7 @@ "typeString": "string" }, "typeName": { - "id": 3352, + "id": 3873, "name": "string", "nodeType": "ElementaryTypeName", "src": "1425:6:19", @@ -2282,18 +2282,18 @@ "src": "1410:37:19" }, "returnParameters": { - "id": 3357, + "id": 3878, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3356, + "id": 3877, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3358, - "src": "1466:12:19", + "scope": 3879, + "src": "1471:12:19", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -2301,10 +2301,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3355, + "id": 3876, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1466:5:19", + "src": "1471:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -2313,42 +2313,42 @@ "visibility": "internal" } ], - "src": "1465:14:19" + "src": "1470:14:19" }, - "scope": 3652, - "src": "1374:106:19", - "stateMutability": "nonpayable", + "scope": 4173, + "src": "1374:111:19", + "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "5e2db9d4", - "id": 3363, + "id": 3884, "implemented": false, "kind": "function", "modifiers": [], "name": "getFederationCreationTime", - "nameLocation": "1495:25:19", + "nameLocation": "1500:25:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3359, + "id": 3880, "nodeType": "ParameterList", "parameters": [], - "src": "1520:2:19" + "src": "1525:2:19" }, "returnParameters": { - "id": 3362, + "id": 3883, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3361, + "id": 3882, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3363, - "src": "1546:6:19", + "scope": 3884, + "src": "1551:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2356,10 +2356,10 @@ "typeString": "int256" }, "typeName": { - "id": 3360, + "id": 3881, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "1546:6:19", + "src": "1551:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -2368,42 +2368,42 @@ "visibility": "internal" } ], - "src": "1545:8:19" + "src": "1550:8:19" }, - "scope": 3652, - "src": "1486:68:19", + "scope": 4173, + "src": "1491:68:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "1b2045ee", - "id": 3368, + "id": 3889, "implemented": false, "kind": "function", "modifiers": [], "name": "getFederationCreationBlockNumber", - "nameLocation": "1569:32:19", + "nameLocation": "1574:32:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3364, + "id": 3885, "nodeType": "ParameterList", "parameters": [], - "src": "1601:2:19" + "src": "1606:2:19" }, "returnParameters": { - "id": 3367, + "id": 3888, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3366, + "id": 3887, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3368, - "src": "1627:6:19", + "scope": 3889, + "src": "1632:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2411,10 +2411,10 @@ "typeString": "int256" }, "typeName": { - "id": 3365, + "id": 3886, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "1627:6:19", + "src": "1632:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -2423,42 +2423,42 @@ "visibility": "internal" } ], - "src": "1626:8:19" + "src": "1631:8:19" }, - "scope": 3652, - "src": "1560:75:19", + "scope": 4173, + "src": "1565:75:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "47227286", - "id": 3373, + "id": 3894, "implemented": false, "kind": "function", "modifiers": [], "name": "getRetiringFederationAddress", - "nameLocation": "1650:28:19", + "nameLocation": "1655:28:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3369, + "id": 3890, "nodeType": "ParameterList", "parameters": [], - "src": "1678:2:19" + "src": "1683:2:19" }, "returnParameters": { - "id": 3372, + "id": 3893, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3371, + "id": 3892, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3373, - "src": "1704:13:19", + "scope": 3894, + "src": "1709:13:19", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -2466,10 +2466,10 @@ "typeString": "string" }, "typeName": { - "id": 3370, + "id": 3891, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1704:6:19", + "src": "1709:6:19", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2478,42 +2478,42 @@ "visibility": "internal" } ], - "src": "1703:15:19" + "src": "1708:15:19" }, - "scope": 3652, - "src": "1641:78:19", + "scope": 4173, + "src": "1646:78:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "d970b0fd", - "id": 3378, + "id": 3899, "implemented": false, "kind": "function", "modifiers": [], "name": "getRetiringFederationSize", - "nameLocation": "1734:25:19", + "nameLocation": "1739:25:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3374, + "id": 3895, "nodeType": "ParameterList", "parameters": [], - "src": "1759:2:19" + "src": "1764:2:19" }, "returnParameters": { - "id": 3377, + "id": 3898, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3376, + "id": 3897, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3378, - "src": "1785:6:19", + "scope": 3899, + "src": "1790:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2521,10 +2521,10 @@ "typeString": "int256" }, "typeName": { - "id": 3375, + "id": 3896, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "1785:6:19", + "src": "1790:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -2533,42 +2533,42 @@ "visibility": "internal" } ], - "src": "1784:8:19" + "src": "1789:8:19" }, - "scope": 3652, - "src": "1725:68:19", + "scope": 4173, + "src": "1730:68:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "07bbdfc4", - "id": 3383, + "id": 3904, "implemented": false, "kind": "function", "modifiers": [], "name": "getRetiringFederationThreshold", - "nameLocation": "1808:30:19", + "nameLocation": "1813:30:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3379, + "id": 3900, "nodeType": "ParameterList", "parameters": [], - "src": "1838:2:19" + "src": "1843:2:19" }, "returnParameters": { - "id": 3382, + "id": 3903, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3381, + "id": 3902, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3383, - "src": "1864:6:19", + "scope": 3904, + "src": "1869:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2576,10 +2576,10 @@ "typeString": "int256" }, "typeName": { - "id": 3380, + "id": 3901, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "1864:6:19", + "src": "1869:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -2588,36 +2588,36 @@ "visibility": "internal" } ], - "src": "1863:8:19" + "src": "1868:8:19" }, - "scope": 3652, - "src": "1799:73:19", + "scope": 4173, + "src": "1804:73:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "4675d6de", - "id": 3390, + "id": 3911, "implemented": false, "kind": "function", "modifiers": [], "name": "getRetiringFederatorPublicKey", - "nameLocation": "1887:29:19", + "nameLocation": "1892:29:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3386, + "id": 3907, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3385, + "id": 3906, "mutability": "mutable", "name": "index", - "nameLocation": "1924:5:19", + "nameLocation": "1929:5:19", "nodeType": "VariableDeclaration", - "scope": 3390, - "src": "1917:12:19", + "scope": 3911, + "src": "1922:12:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2625,10 +2625,10 @@ "typeString": "int256" }, "typeName": { - "id": 3384, + "id": 3905, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "1917:6:19", + "src": "1922:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -2637,21 +2637,21 @@ "visibility": "internal" } ], - "src": "1916:14:19" + "src": "1921:14:19" }, "returnParameters": { - "id": 3389, + "id": 3910, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3388, + "id": 3909, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3390, - "src": "1954:12:19", + "scope": 3911, + "src": "1959:12:19", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -2659,10 +2659,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3387, + "id": 3908, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1954:5:19", + "src": "1959:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -2671,36 +2671,36 @@ "visibility": "internal" } ], - "src": "1953:14:19" + "src": "1958:14:19" }, - "scope": 3652, - "src": "1878:90:19", + "scope": 4173, + "src": "1883:90:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "68bc2b2b", - "id": 3399, + "id": 3920, "implemented": false, "kind": "function", "modifiers": [], "name": "getRetiringFederatorPublicKeyOfType", - "nameLocation": "1983:35:19", + "nameLocation": "1988:35:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3395, + "id": 3916, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3392, + "id": 3913, "mutability": "mutable", "name": "index", - "nameLocation": "2026:5:19", + "nameLocation": "2031:5:19", "nodeType": "VariableDeclaration", - "scope": 3399, - "src": "2019:12:19", + "scope": 3920, + "src": "2024:12:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2708,10 +2708,10 @@ "typeString": "int256" }, "typeName": { - "id": 3391, + "id": 3912, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "2019:6:19", + "src": "2024:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -2721,13 +2721,13 @@ }, { "constant": false, - "id": 3394, + "id": 3915, "mutability": "mutable", "name": "atype", - "nameLocation": "2049:5:19", + "nameLocation": "2054:5:19", "nodeType": "VariableDeclaration", - "scope": 3399, - "src": "2033:21:19", + "scope": 3920, + "src": "2038:21:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -2735,10 +2735,10 @@ "typeString": "string" }, "typeName": { - "id": 3393, + "id": 3914, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2033:6:19", + "src": "2038:6:19", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2747,21 +2747,21 @@ "visibility": "internal" } ], - "src": "2018:37:19" + "src": "2023:37:19" }, "returnParameters": { - "id": 3398, + "id": 3919, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3397, + "id": 3918, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3399, - "src": "2083:12:19", + "scope": 3920, + "src": "2088:12:19", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -2769,10 +2769,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3396, + "id": 3917, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "2083:5:19", + "src": "2088:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -2781,42 +2781,42 @@ "visibility": "internal" } ], - "src": "2082:14:19" + "src": "2087:14:19" }, - "scope": 3652, - "src": "1974:123:19", + "scope": 4173, + "src": "1979:123:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "3f0ce9b1", - "id": 3404, + "id": 3925, "implemented": false, "kind": "function", "modifiers": [], "name": "getRetiringFederationCreationTime", - "nameLocation": "2112:33:19", + "nameLocation": "2117:33:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3400, + "id": 3921, "nodeType": "ParameterList", "parameters": [], - "src": "2145:2:19" + "src": "2150:2:19" }, "returnParameters": { - "id": 3403, + "id": 3924, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3402, + "id": 3923, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3404, - "src": "2171:6:19", + "scope": 3925, + "src": "2176:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2824,10 +2824,10 @@ "typeString": "int256" }, "typeName": { - "id": 3401, + "id": 3922, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "2171:6:19", + "src": "2176:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -2836,42 +2836,42 @@ "visibility": "internal" } ], - "src": "2170:8:19" + "src": "2175:8:19" }, - "scope": 3652, - "src": "2103:76:19", + "scope": 4173, + "src": "2108:76:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "d905153f", - "id": 3409, + "id": 3930, "implemented": false, "kind": "function", "modifiers": [], "name": "getRetiringFederationCreationBlockNumber", - "nameLocation": "2194:40:19", + "nameLocation": "2199:40:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3405, + "id": 3926, "nodeType": "ParameterList", "parameters": [], - "src": "2234:2:19" + "src": "2239:2:19" }, "returnParameters": { - "id": 3408, + "id": 3929, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3407, + "id": 3928, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3409, - "src": "2260:6:19", + "scope": 3930, + "src": "2265:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2879,10 +2879,10 @@ "typeString": "int256" }, "typeName": { - "id": 3406, + "id": 3927, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "2260:6:19", + "src": "2265:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -2891,42 +2891,42 @@ "visibility": "internal" } ], - "src": "2259:8:19" + "src": "2264:8:19" }, - "scope": 3652, - "src": "2185:83:19", + "scope": 4173, + "src": "2190:83:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "1183d5d1", - "id": 3414, + "id": 3935, "implemented": false, "kind": "function", "modifiers": [], "name": "createFederation", - "nameLocation": "2283:16:19", + "nameLocation": "2288:16:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3410, + "id": 3931, "nodeType": "ParameterList", "parameters": [], - "src": "2299:2:19" + "src": "2304:2:19" }, "returnParameters": { - "id": 3413, + "id": 3934, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3412, + "id": 3933, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3414, - "src": "2320:6:19", + "scope": 3935, + "src": "2325:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2934,10 +2934,10 @@ "typeString": "int256" }, "typeName": { - "id": 3411, + "id": 3932, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "2320:6:19", + "src": "2325:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -2946,36 +2946,36 @@ "visibility": "internal" } ], - "src": "2319:8:19" + "src": "2324:8:19" }, - "scope": 3652, - "src": "2274:54:19", + "scope": 4173, + "src": "2279:54:19", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "ecefd339", - "id": 3421, + "id": 3942, "implemented": false, "kind": "function", "modifiers": [], "name": "addFederatorPublicKey", - "nameLocation": "2343:21:19", + "nameLocation": "2348:21:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3417, + "id": 3938, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3416, + "id": 3937, "mutability": "mutable", "name": "key", - "nameLocation": "2380:3:19", + "nameLocation": "2385:3:19", "nodeType": "VariableDeclaration", - "scope": 3421, - "src": "2365:18:19", + "scope": 3942, + "src": "2370:18:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -2983,10 +2983,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3415, + "id": 3936, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "2365:5:19", + "src": "2370:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -2995,21 +2995,21 @@ "visibility": "internal" } ], - "src": "2364:20:19" + "src": "2369:20:19" }, "returnParameters": { - "id": 3420, + "id": 3941, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3419, + "id": 3940, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3421, - "src": "2403:6:19", + "scope": 3942, + "src": "2408:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3017,10 +3017,10 @@ "typeString": "int256" }, "typeName": { - "id": 3418, + "id": 3939, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "2403:6:19", + "src": "2408:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -3029,36 +3029,36 @@ "visibility": "internal" } ], - "src": "2402:8:19" + "src": "2407:8:19" }, - "scope": 3652, - "src": "2334:77:19", + "scope": 4173, + "src": "2339:77:19", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "444ff9da", - "id": 3432, + "id": 3953, "implemented": false, "kind": "function", "modifiers": [], "name": "addFederatorPublicKeyMultikey", - "nameLocation": "2426:29:19", + "nameLocation": "2431:29:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3428, + "id": 3949, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3423, + "id": 3944, "mutability": "mutable", "name": "btcKey", - "nameLocation": "2471:6:19", + "nameLocation": "2476:6:19", "nodeType": "VariableDeclaration", - "scope": 3432, - "src": "2456:21:19", + "scope": 3953, + "src": "2461:21:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -3066,10 +3066,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3422, + "id": 3943, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "2456:5:19", + "src": "2461:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -3079,13 +3079,13 @@ }, { "constant": false, - "id": 3425, + "id": 3946, "mutability": "mutable", "name": "rskKey", - "nameLocation": "2494:6:19", + "nameLocation": "2499:6:19", "nodeType": "VariableDeclaration", - "scope": 3432, - "src": "2479:21:19", + "scope": 3953, + "src": "2484:21:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -3093,10 +3093,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3424, + "id": 3945, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "2479:5:19", + "src": "2484:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -3106,13 +3106,13 @@ }, { "constant": false, - "id": 3427, + "id": 3948, "mutability": "mutable", "name": "mstKey", - "nameLocation": "2525:6:19", + "nameLocation": "2530:6:19", "nodeType": "VariableDeclaration", - "scope": 3432, - "src": "2510:21:19", + "scope": 3953, + "src": "2515:21:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -3120,10 +3120,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3426, + "id": 3947, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "2510:5:19", + "src": "2515:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -3132,21 +3132,21 @@ "visibility": "internal" } ], - "src": "2455:77:19" + "src": "2460:77:19" }, "returnParameters": { - "id": 3431, + "id": 3952, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3430, + "id": 3951, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3432, - "src": "2551:6:19", + "scope": 3953, + "src": "2556:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3154,10 +3154,10 @@ "typeString": "int256" }, "typeName": { - "id": 3429, + "id": 3950, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "2551:6:19", + "src": "2556:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -3166,36 +3166,36 @@ "visibility": "internal" } ], - "src": "2550:8:19" + "src": "2555:8:19" }, - "scope": 3652, - "src": "2417:142:19", + "scope": 4173, + "src": "2422:142:19", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "1533330f", - "id": 3439, + "id": 3960, "implemented": false, "kind": "function", "modifiers": [], "name": "commitFederation", - "nameLocation": "2574:16:19", + "nameLocation": "2579:16:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3435, + "id": 3956, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3434, + "id": 3955, "mutability": "mutable", "name": "hash", - "nameLocation": "2606:4:19", + "nameLocation": "2611:4:19", "nodeType": "VariableDeclaration", - "scope": 3439, - "src": "2591:19:19", + "scope": 3960, + "src": "2596:19:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -3203,10 +3203,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3433, + "id": 3954, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "2591:5:19", + "src": "2596:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -3215,21 +3215,21 @@ "visibility": "internal" } ], - "src": "2590:21:19" + "src": "2595:21:19" }, "returnParameters": { - "id": 3438, + "id": 3959, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3437, + "id": 3958, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3439, - "src": "2630:6:19", + "scope": 3960, + "src": "2635:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3237,10 +3237,10 @@ "typeString": "int256" }, "typeName": { - "id": 3436, + "id": 3957, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "2630:6:19", + "src": "2635:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -3249,42 +3249,42 @@ "visibility": "internal" } ], - "src": "2629:8:19" + "src": "2634:8:19" }, - "scope": 3652, - "src": "2565:73:19", + "scope": 4173, + "src": "2570:73:19", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "8dec3d32", - "id": 3444, + "id": 3965, "implemented": false, "kind": "function", "modifiers": [], "name": "rollbackFederation", - "nameLocation": "2653:18:19", + "nameLocation": "2658:18:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3440, + "id": 3961, "nodeType": "ParameterList", "parameters": [], - "src": "2671:2:19" + "src": "2676:2:19" }, "returnParameters": { - "id": 3443, + "id": 3964, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3442, + "id": 3963, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3444, - "src": "2692:6:19", + "scope": 3965, + "src": "2697:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3292,10 +3292,10 @@ "typeString": "int256" }, "typeName": { - "id": 3441, + "id": 3962, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "2692:6:19", + "src": "2697:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -3304,42 +3304,42 @@ "visibility": "internal" } ], - "src": "2691:8:19" + "src": "2696:8:19" }, - "scope": 3652, - "src": "2644:56:19", + "scope": 4173, + "src": "2649:56:19", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "6ce0ed5a", - "id": 3449, + "id": 3970, "implemented": false, "kind": "function", "modifiers": [], "name": "getPendingFederationHash", - "nameLocation": "2715:24:19", + "nameLocation": "2720:24:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3445, + "id": 3966, "nodeType": "ParameterList", "parameters": [], - "src": "2739:2:19" + "src": "2744:2:19" }, "returnParameters": { - "id": 3448, + "id": 3969, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3447, + "id": 3968, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3449, - "src": "2765:12:19", + "scope": 3970, + "src": "2770:12:19", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -3347,10 +3347,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3446, + "id": 3967, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "2765:5:19", + "src": "2770:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -3359,42 +3359,42 @@ "visibility": "internal" } ], - "src": "2764:14:19" + "src": "2769:14:19" }, - "scope": 3652, - "src": "2706:73:19", + "scope": 4173, + "src": "2711:73:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "3ac72b38", - "id": 3454, + "id": 3975, "implemented": false, "kind": "function", "modifiers": [], "name": "getPendingFederationSize", - "nameLocation": "2794:24:19", + "nameLocation": "2799:24:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3450, + "id": 3971, "nodeType": "ParameterList", "parameters": [], - "src": "2818:2:19" + "src": "2823:2:19" }, "returnParameters": { - "id": 3453, + "id": 3974, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3452, + "id": 3973, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3454, - "src": "2844:6:19", + "scope": 3975, + "src": "2849:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3402,10 +3402,10 @@ "typeString": "int256" }, "typeName": { - "id": 3451, + "id": 3972, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "2844:6:19", + "src": "2849:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -3414,36 +3414,36 @@ "visibility": "internal" } ], - "src": "2843:8:19" + "src": "2848:8:19" }, - "scope": 3652, - "src": "2785:67:19", + "scope": 4173, + "src": "2790:67:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "492f7c44", - "id": 3461, + "id": 3982, "implemented": false, "kind": "function", "modifiers": [], "name": "getPendingFederatorPublicKey", - "nameLocation": "2867:28:19", + "nameLocation": "2872:28:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3457, + "id": 3978, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3456, + "id": 3977, "mutability": "mutable", "name": "index", - "nameLocation": "2903:5:19", + "nameLocation": "2908:5:19", "nodeType": "VariableDeclaration", - "scope": 3461, - "src": "2896:12:19", + "scope": 3982, + "src": "2901:12:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3451,10 +3451,10 @@ "typeString": "int256" }, "typeName": { - "id": 3455, + "id": 3976, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "2896:6:19", + "src": "2901:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -3463,21 +3463,21 @@ "visibility": "internal" } ], - "src": "2895:14:19" + "src": "2900:14:19" }, "returnParameters": { - "id": 3460, + "id": 3981, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3459, + "id": 3980, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3461, - "src": "2933:12:19", + "scope": 3982, + "src": "2938:12:19", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -3485,10 +3485,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3458, + "id": 3979, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "2933:5:19", + "src": "2938:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -3497,36 +3497,36 @@ "visibility": "internal" } ], - "src": "2932:14:19" + "src": "2937:14:19" }, - "scope": 3652, - "src": "2858:89:19", + "scope": 4173, + "src": "2863:89:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "c61295d9", - "id": 3470, + "id": 3991, "implemented": false, "kind": "function", "modifiers": [], "name": "getPendingFederatorPublicKeyOfType", - "nameLocation": "2962:34:19", + "nameLocation": "2967:34:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3466, + "id": 3987, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3463, + "id": 3984, "mutability": "mutable", "name": "index", - "nameLocation": "3004:5:19", + "nameLocation": "3009:5:19", "nodeType": "VariableDeclaration", - "scope": 3470, - "src": "2997:12:19", + "scope": 3991, + "src": "3002:12:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3534,10 +3534,10 @@ "typeString": "int256" }, "typeName": { - "id": 3462, + "id": 3983, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "2997:6:19", + "src": "3002:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -3547,13 +3547,13 @@ }, { "constant": false, - "id": 3465, + "id": 3986, "mutability": "mutable", "name": "atype", - "nameLocation": "3027:5:19", + "nameLocation": "3032:5:19", "nodeType": "VariableDeclaration", - "scope": 3470, - "src": "3011:21:19", + "scope": 3991, + "src": "3016:21:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -3561,10 +3561,10 @@ "typeString": "string" }, "typeName": { - "id": 3464, + "id": 3985, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3011:6:19", + "src": "3016:6:19", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3573,21 +3573,21 @@ "visibility": "internal" } ], - "src": "2996:37:19" + "src": "3001:37:19" }, "returnParameters": { - "id": 3469, + "id": 3990, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3468, + "id": 3989, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3470, - "src": "3061:12:19", + "scope": 3991, + "src": "3066:12:19", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -3595,10 +3595,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3467, + "id": 3988, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "3061:5:19", + "src": "3066:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -3607,42 +3607,42 @@ "visibility": "internal" } ], - "src": "3060:14:19" + "src": "3065:14:19" }, - "scope": 3652, - "src": "2953:122:19", + "scope": 4173, + "src": "2958:122:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "e9e658dc", - "id": 3475, + "id": 3996, "implemented": false, "kind": "function", "modifiers": [], "name": "getLockWhitelistSize", - "nameLocation": "3090:20:19", + "nameLocation": "3095:20:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3471, + "id": 3992, "nodeType": "ParameterList", "parameters": [], - "src": "3110:2:19" + "src": "3115:2:19" }, "returnParameters": { - "id": 3474, + "id": 3995, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3473, + "id": 3994, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3475, - "src": "3136:6:19", + "scope": 3996, + "src": "3141:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3650,10 +3650,10 @@ "typeString": "int256" }, "typeName": { - "id": 3472, + "id": 3993, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "3136:6:19", + "src": "3141:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -3662,36 +3662,36 @@ "visibility": "internal" } ], - "src": "3135:8:19" + "src": "3140:8:19" }, - "scope": 3652, - "src": "3081:63:19", + "scope": 4173, + "src": "3086:63:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "93988b76", - "id": 3482, + "id": 4003, "implemented": false, "kind": "function", "modifiers": [], "name": "getLockWhitelistAddress", - "nameLocation": "3159:23:19", + "nameLocation": "3164:23:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3478, + "id": 3999, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3477, + "id": 3998, "mutability": "mutable", "name": "index", - "nameLocation": "3190:5:19", + "nameLocation": "3195:5:19", "nodeType": "VariableDeclaration", - "scope": 3482, - "src": "3183:12:19", + "scope": 4003, + "src": "3188:12:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3699,10 +3699,10 @@ "typeString": "int256" }, "typeName": { - "id": 3476, + "id": 3997, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "3183:6:19", + "src": "3188:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -3711,21 +3711,21 @@ "visibility": "internal" } ], - "src": "3182:14:19" + "src": "3187:14:19" }, "returnParameters": { - "id": 3481, + "id": 4002, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3480, + "id": 4001, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3482, - "src": "3220:13:19", + "scope": 4003, + "src": "3225:13:19", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -3733,10 +3733,10 @@ "typeString": "string" }, "typeName": { - "id": 3479, + "id": 4000, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3220:6:19", + "src": "3225:6:19", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3745,36 +3745,36 @@ "visibility": "internal" } ], - "src": "3219:15:19" + "src": "3224:15:19" }, - "scope": 3652, - "src": "3150:85:19", + "scope": 4173, + "src": "3155:85:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "251c5f7b", - "id": 3489, + "id": 4010, "implemented": false, "kind": "function", "modifiers": [], "name": "getLockWhitelistEntryByAddress", - "nameLocation": "3250:30:19", + "nameLocation": "3255:30:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3485, + "id": 4006, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3484, + "id": 4005, "mutability": "mutable", "name": "aaddress", - "nameLocation": "3297:8:19", + "nameLocation": "3302:8:19", "nodeType": "VariableDeclaration", - "scope": 3489, - "src": "3281:24:19", + "scope": 4010, + "src": "3286:24:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -3782,10 +3782,10 @@ "typeString": "string" }, "typeName": { - "id": 3483, + "id": 4004, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3281:6:19", + "src": "3286:6:19", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3794,21 +3794,21 @@ "visibility": "internal" } ], - "src": "3280:26:19" + "src": "3285:26:19" }, "returnParameters": { - "id": 3488, + "id": 4009, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3487, + "id": 4008, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3489, - "src": "3330:6:19", + "scope": 4010, + "src": "3335:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3816,10 +3816,10 @@ "typeString": "int256" }, "typeName": { - "id": 3486, + "id": 4007, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "3330:6:19", + "src": "3335:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -3828,36 +3828,36 @@ "visibility": "internal" } ], - "src": "3329:8:19" + "src": "3334:8:19" }, - "scope": 3652, - "src": "3241:97:19", + "scope": 4173, + "src": "3246:97:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "502bbbce", - "id": 3498, + "id": 4019, "implemented": false, "kind": "function", "modifiers": [], "name": "addLockWhitelistAddress", - "nameLocation": "3353:23:19", + "nameLocation": "3358:23:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3494, + "id": 4015, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3491, + "id": 4012, "mutability": "mutable", "name": "aaddress", - "nameLocation": "3393:8:19", + "nameLocation": "3398:8:19", "nodeType": "VariableDeclaration", - "scope": 3498, - "src": "3377:24:19", + "scope": 4019, + "src": "3382:24:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -3865,10 +3865,10 @@ "typeString": "string" }, "typeName": { - "id": 3490, + "id": 4011, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3377:6:19", + "src": "3382:6:19", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3878,13 +3878,13 @@ }, { "constant": false, - "id": 3493, + "id": 4014, "mutability": "mutable", "name": "maxTransferValue", - "nameLocation": "3410:16:19", + "nameLocation": "3415:16:19", "nodeType": "VariableDeclaration", - "scope": 3498, - "src": "3403:23:19", + "scope": 4019, + "src": "3408:23:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3892,10 +3892,10 @@ "typeString": "int256" }, "typeName": { - "id": 3492, + "id": 4013, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "3403:6:19", + "src": "3408:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -3904,21 +3904,21 @@ "visibility": "internal" } ], - "src": "3376:51:19" + "src": "3381:51:19" }, "returnParameters": { - "id": 3497, + "id": 4018, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3496, + "id": 4017, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3498, - "src": "3446:6:19", + "scope": 4019, + "src": "3451:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3926,10 +3926,10 @@ "typeString": "int256" }, "typeName": { - "id": 3495, + "id": 4016, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "3446:6:19", + "src": "3451:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -3938,36 +3938,36 @@ "visibility": "internal" } ], - "src": "3445:8:19" + "src": "3450:8:19" }, - "scope": 3652, - "src": "3344:110:19", + "scope": 4173, + "src": "3349:110:19", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "848206d9", - "id": 3507, + "id": 4028, "implemented": false, "kind": "function", "modifiers": [], "name": "addOneOffLockWhitelistAddress", - "nameLocation": "3469:29:19", + "nameLocation": "3474:29:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3503, + "id": 4024, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3500, + "id": 4021, "mutability": "mutable", "name": "aaddress", - "nameLocation": "3515:8:19", + "nameLocation": "3520:8:19", "nodeType": "VariableDeclaration", - "scope": 3507, - "src": "3499:24:19", + "scope": 4028, + "src": "3504:24:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -3975,10 +3975,10 @@ "typeString": "string" }, "typeName": { - "id": 3499, + "id": 4020, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3499:6:19", + "src": "3504:6:19", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3988,13 +3988,13 @@ }, { "constant": false, - "id": 3502, + "id": 4023, "mutability": "mutable", "name": "maxTransferValue", - "nameLocation": "3532:16:19", + "nameLocation": "3537:16:19", "nodeType": "VariableDeclaration", - "scope": 3507, - "src": "3525:23:19", + "scope": 4028, + "src": "3530:23:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4002,10 +4002,10 @@ "typeString": "int256" }, "typeName": { - "id": 3501, + "id": 4022, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "3525:6:19", + "src": "3530:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -4014,21 +4014,21 @@ "visibility": "internal" } ], - "src": "3498:51:19" + "src": "3503:51:19" }, "returnParameters": { - "id": 3506, + "id": 4027, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3505, + "id": 4026, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3507, - "src": "3576:6:19", + "scope": 4028, + "src": "3581:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4036,10 +4036,10 @@ "typeString": "int256" }, "typeName": { - "id": 3504, + "id": 4025, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "3576:6:19", + "src": "3581:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -4048,36 +4048,36 @@ "visibility": "internal" } ], - "src": "3575:8:19" + "src": "3580:8:19" }, - "scope": 3652, - "src": "3460:124:19", + "scope": 4173, + "src": "3465:124:19", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "b906c938", - "id": 3514, + "id": 4035, "implemented": false, "kind": "function", "modifiers": [], "name": "addUnlimitedLockWhitelistAddress", - "nameLocation": "3599:32:19", + "nameLocation": "3604:32:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3510, + "id": 4031, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3509, + "id": 4030, "mutability": "mutable", "name": "aaddress", - "nameLocation": "3648:8:19", + "nameLocation": "3653:8:19", "nodeType": "VariableDeclaration", - "scope": 3514, - "src": "3632:24:19", + "scope": 4035, + "src": "3637:24:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -4085,10 +4085,10 @@ "typeString": "string" }, "typeName": { - "id": 3508, + "id": 4029, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3632:6:19", + "src": "3637:6:19", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4097,21 +4097,21 @@ "visibility": "internal" } ], - "src": "3631:26:19" + "src": "3636:26:19" }, "returnParameters": { - "id": 3513, + "id": 4034, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3512, + "id": 4033, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3514, - "src": "3676:6:19", + "scope": 4035, + "src": "3681:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4119,10 +4119,10 @@ "typeString": "int256" }, "typeName": { - "id": 3511, + "id": 4032, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "3676:6:19", + "src": "3681:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -4131,36 +4131,36 @@ "visibility": "internal" } ], - "src": "3675:8:19" + "src": "3680:8:19" }, - "scope": 3652, - "src": "3590:94:19", + "scope": 4173, + "src": "3595:94:19", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "fcdeb46f", - "id": 3521, + "id": 4042, "implemented": false, "kind": "function", "modifiers": [], "name": "removeLockWhitelistAddress", - "nameLocation": "3699:26:19", + "nameLocation": "3704:26:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3517, + "id": 4038, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3516, + "id": 4037, "mutability": "mutable", "name": "aaddress", - "nameLocation": "3742:8:19", + "nameLocation": "3747:8:19", "nodeType": "VariableDeclaration", - "scope": 3521, - "src": "3726:24:19", + "scope": 4042, + "src": "3731:24:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -4168,10 +4168,10 @@ "typeString": "string" }, "typeName": { - "id": 3515, + "id": 4036, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3726:6:19", + "src": "3731:6:19", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4180,21 +4180,21 @@ "visibility": "internal" } ], - "src": "3725:26:19" + "src": "3730:26:19" }, "returnParameters": { - "id": 3520, + "id": 4041, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3519, + "id": 4040, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3521, - "src": "3770:6:19", + "scope": 4042, + "src": "3775:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4202,10 +4202,10 @@ "typeString": "int256" }, "typeName": { - "id": 3518, + "id": 4039, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "3770:6:19", + "src": "3775:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -4214,36 +4214,36 @@ "visibility": "internal" } ], - "src": "3769:8:19" + "src": "3774:8:19" }, - "scope": 3652, - "src": "3690:88:19", + "scope": 4173, + "src": "3695:88:19", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "c1cc54f5", - "id": 3528, + "id": 4049, "implemented": false, "kind": "function", "modifiers": [], "name": "setLockWhitelistDisableBlockDelay", - "nameLocation": "3793:33:19", + "nameLocation": "3798:33:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3524, + "id": 4045, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3523, + "id": 4044, "mutability": "mutable", "name": "disableDelay", - "nameLocation": "3834:12:19", + "nameLocation": "3839:12:19", "nodeType": "VariableDeclaration", - "scope": 3528, - "src": "3827:19:19", + "scope": 4049, + "src": "3832:19:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4251,10 +4251,10 @@ "typeString": "int256" }, "typeName": { - "id": 3522, + "id": 4043, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "3827:6:19", + "src": "3832:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -4263,21 +4263,21 @@ "visibility": "internal" } ], - "src": "3826:21:19" + "src": "3831:21:19" }, "returnParameters": { - "id": 3527, + "id": 4048, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3526, + "id": 4047, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3528, - "src": "3866:6:19", + "scope": 4049, + "src": "3871:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4285,10 +4285,10 @@ "typeString": "int256" }, "typeName": { - "id": 3525, + "id": 4046, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "3866:6:19", + "src": "3871:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -4297,42 +4297,42 @@ "visibility": "internal" } ], - "src": "3865:8:19" + "src": "3870:8:19" }, - "scope": 3652, - "src": "3784:90:19", + "scope": 4173, + "src": "3789:90:19", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "724ec886", - "id": 3533, + "id": 4054, "implemented": false, "kind": "function", "modifiers": [], "name": "getFeePerKb", - "nameLocation": "3889:11:19", + "nameLocation": "3894:11:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3529, + "id": 4050, "nodeType": "ParameterList", "parameters": [], - "src": "3900:2:19" + "src": "3905:2:19" }, "returnParameters": { - "id": 3532, + "id": 4053, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3531, + "id": 4052, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3533, - "src": "3926:6:19", + "scope": 4054, + "src": "3931:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4340,10 +4340,10 @@ "typeString": "int256" }, "typeName": { - "id": 3530, + "id": 4051, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "3926:6:19", + "src": "3931:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -4352,36 +4352,36 @@ "visibility": "internal" } ], - "src": "3925:8:19" + "src": "3930:8:19" }, - "scope": 3652, - "src": "3880:54:19", + "scope": 4173, + "src": "3885:54:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "0461313e", - "id": 3540, + "id": 4061, "implemented": false, "kind": "function", "modifiers": [], "name": "voteFeePerKbChange", - "nameLocation": "3949:18:19", + "nameLocation": "3954:18:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3536, + "id": 4057, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3535, + "id": 4056, "mutability": "mutable", "name": "feePerKb", - "nameLocation": "3975:8:19", + "nameLocation": "3980:8:19", "nodeType": "VariableDeclaration", - "scope": 3540, - "src": "3968:15:19", + "scope": 4061, + "src": "3973:15:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4389,10 +4389,10 @@ "typeString": "int256" }, "typeName": { - "id": 3534, + "id": 4055, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "3968:6:19", + "src": "3973:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -4401,21 +4401,21 @@ "visibility": "internal" } ], - "src": "3967:17:19" + "src": "3972:17:19" }, "returnParameters": { - "id": 3539, + "id": 4060, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3538, + "id": 4059, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3540, - "src": "4003:6:19", + "scope": 4061, + "src": "4008:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4423,10 +4423,10 @@ "typeString": "int256" }, "typeName": { - "id": 3537, + "id": 4058, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "4003:6:19", + "src": "4008:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -4435,69 +4435,69 @@ "visibility": "internal" } ], - "src": "4002:8:19" + "src": "4007:8:19" }, - "scope": 3652, - "src": "3940:71:19", + "scope": 4173, + "src": "3945:71:19", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "0c5a9990", - "id": 3543, + "id": 4064, "implemented": false, "kind": "function", "modifiers": [], "name": "updateCollections", - "nameLocation": "4026:17:19", + "nameLocation": "4031:17:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3541, + "id": 4062, "nodeType": "ParameterList", "parameters": [], - "src": "4043:2:19" + "src": "4048:2:19" }, "returnParameters": { - "id": 3542, + "id": 4063, "nodeType": "ParameterList", "parameters": [], - "src": "4054:0:19" + "src": "4059:0:19" }, - "scope": 3652, - "src": "4017:38:19", + "scope": 4173, + "src": "4022:38:19", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "2f8d158f", - "id": 3548, + "id": 4069, "implemented": false, "kind": "function", "modifiers": [], "name": "getMinimumLockTxValue", - "nameLocation": "4070:21:19", + "nameLocation": "4075:21:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3544, + "id": 4065, "nodeType": "ParameterList", "parameters": [], - "src": "4091:2:19" + "src": "4096:2:19" }, "returnParameters": { - "id": 3547, + "id": 4068, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3546, + "id": 4067, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3548, - "src": "4117:6:19", + "scope": 4069, + "src": "4122:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4505,10 +4505,10 @@ "typeString": "int256" }, "typeName": { - "id": 3545, + "id": 4066, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "4117:6:19", + "src": "4122:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -4517,36 +4517,36 @@ "visibility": "internal" } ], - "src": "4116:8:19" + "src": "4121:8:19" }, - "scope": 3652, - "src": "4061:64:19", + "scope": 4173, + "src": "4066:64:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "5b644587", - "id": 3562, + "id": 4083, "implemented": false, "kind": "function", "modifiers": [], "name": "getBtcTransactionConfirmations", - "nameLocation": "4140:30:19", + "nameLocation": "4145:30:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3558, + "id": 4079, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3550, + "id": 4071, "mutability": "mutable", "name": "txHash", - "nameLocation": "4179:6:19", + "nameLocation": "4184:6:19", "nodeType": "VariableDeclaration", - "scope": 3562, - "src": "4171:14:19", + "scope": 4083, + "src": "4176:14:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4554,10 +4554,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3549, + "id": 4070, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4171:7:19", + "src": "4176:7:19", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4567,13 +4567,13 @@ }, { "constant": false, - "id": 3552, + "id": 4073, "mutability": "mutable", "name": "blockHash", - "nameLocation": "4195:9:19", + "nameLocation": "4200:9:19", "nodeType": "VariableDeclaration", - "scope": 3562, - "src": "4187:17:19", + "scope": 4083, + "src": "4192:17:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4581,10 +4581,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3551, + "id": 4072, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4187:7:19", + "src": "4192:7:19", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4594,13 +4594,13 @@ }, { "constant": false, - "id": 3554, + "id": 4075, "mutability": "mutable", "name": "merkleBranchPath", - "nameLocation": "4222:16:19", + "nameLocation": "4227:16:19", "nodeType": "VariableDeclaration", - "scope": 3562, - "src": "4214:24:19", + "scope": 4083, + "src": "4219:24:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4608,10 +4608,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3553, + "id": 4074, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4214:7:19", + "src": "4219:7:19", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4621,13 +4621,13 @@ }, { "constant": false, - "id": 3557, + "id": 4078, "mutability": "mutable", "name": "merkleBranchHashes", - "nameLocation": "4259:18:19", + "nameLocation": "4264:18:19", "nodeType": "VariableDeclaration", - "scope": 3562, - "src": "4240:37:19", + "scope": 4083, + "src": "4245:37:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -4636,18 +4636,18 @@ }, "typeName": { "baseType": { - "id": 3555, + "id": 4076, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4240:7:19", + "src": "4245:7:19", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "id": 3556, + "id": 4077, "nodeType": "ArrayTypeName", - "src": "4240:9:19", + "src": "4245:9:19", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", "typeString": "bytes32[]" @@ -4656,21 +4656,21 @@ "visibility": "internal" } ], - "src": "4170:108:19" + "src": "4175:108:19" }, "returnParameters": { - "id": 3561, + "id": 4082, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3560, + "id": 4081, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3562, - "src": "4302:6:19", + "scope": 4083, + "src": "4307:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4678,10 +4678,10 @@ "typeString": "int256" }, "typeName": { - "id": 3559, + "id": 4080, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "4302:6:19", + "src": "4307:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -4690,42 +4690,42 @@ "visibility": "internal" } ], - "src": "4301:8:19" + "src": "4306:8:19" }, - "scope": 3652, - "src": "4131:179:19", + "scope": 4173, + "src": "4136:179:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "3f9db977", - "id": 3567, + "id": 4088, "implemented": false, "kind": "function", "modifiers": [], "name": "getLockingCap", - "nameLocation": "4325:13:19", + "nameLocation": "4330:13:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3563, + "id": 4084, "nodeType": "ParameterList", "parameters": [], - "src": "4338:2:19" + "src": "4343:2:19" }, "returnParameters": { - "id": 3566, + "id": 4087, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3565, + "id": 4086, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3567, - "src": "4364:6:19", + "scope": 4088, + "src": "4369:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4733,10 +4733,10 @@ "typeString": "int256" }, "typeName": { - "id": 3564, + "id": 4085, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "4364:6:19", + "src": "4369:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -4745,36 +4745,36 @@ "visibility": "internal" } ], - "src": "4363:8:19" + "src": "4368:8:19" }, - "scope": 3652, - "src": "4316:56:19", + "scope": 4173, + "src": "4321:56:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "2910aeb2", - "id": 3574, + "id": 4095, "implemented": false, "kind": "function", "modifiers": [], "name": "increaseLockingCap", - "nameLocation": "4387:18:19", + "nameLocation": "4392:18:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3570, + "id": 4091, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3569, + "id": 4090, "mutability": "mutable", "name": "newLockingCap", - "nameLocation": "4413:13:19", + "nameLocation": "4418:13:19", "nodeType": "VariableDeclaration", - "scope": 3574, - "src": "4406:20:19", + "scope": 4095, + "src": "4411:20:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4782,10 +4782,10 @@ "typeString": "int256" }, "typeName": { - "id": 3568, + "id": 4089, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "4406:6:19", + "src": "4411:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -4794,21 +4794,21 @@ "visibility": "internal" } ], - "src": "4405:22:19" + "src": "4410:22:19" }, "returnParameters": { - "id": 3573, + "id": 4094, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3572, + "id": 4093, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3574, - "src": "4446:4:19", + "scope": 4095, + "src": "4451:4:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4816,10 +4816,10 @@ "typeString": "bool" }, "typeName": { - "id": 3571, + "id": 4092, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "4446:4:19", + "src": "4451:4:19", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4828,36 +4828,36 @@ "visibility": "internal" } ], - "src": "4445:6:19" + "src": "4450:6:19" }, - "scope": 3652, - "src": "4378:74:19", + "scope": 4173, + "src": "4383:74:19", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "ccf417ae", - "id": 3587, + "id": 4108, "implemented": false, "kind": "function", "modifiers": [], "name": "registerBtcCoinbaseTransaction", - "nameLocation": "4467:30:19", + "nameLocation": "4472:30:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3585, + "id": 4106, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3576, + "id": 4097, "mutability": "mutable", "name": "btcTxSerialized", - "nameLocation": "4513:15:19", + "nameLocation": "4518:15:19", "nodeType": "VariableDeclaration", - "scope": 3587, - "src": "4498:30:19", + "scope": 4108, + "src": "4503:30:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -4865,10 +4865,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3575, + "id": 4096, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "4498:5:19", + "src": "4503:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -4878,13 +4878,13 @@ }, { "constant": false, - "id": 3578, + "id": 4099, "mutability": "mutable", "name": "blockHash", - "nameLocation": "4538:9:19", + "nameLocation": "4543:9:19", "nodeType": "VariableDeclaration", - "scope": 3587, - "src": "4530:17:19", + "scope": 4108, + "src": "4535:17:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4892,10 +4892,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3577, + "id": 4098, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4530:7:19", + "src": "4535:7:19", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4905,13 +4905,13 @@ }, { "constant": false, - "id": 3580, + "id": 4101, "mutability": "mutable", "name": "pmtSerialized", - "nameLocation": "4572:13:19", + "nameLocation": "4577:13:19", "nodeType": "VariableDeclaration", - "scope": 3587, - "src": "4557:28:19", + "scope": 4108, + "src": "4562:28:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -4919,10 +4919,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3579, + "id": 4100, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "4557:5:19", + "src": "4562:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -4932,13 +4932,13 @@ }, { "constant": false, - "id": 3582, + "id": 4103, "mutability": "mutable", "name": "witnessMerkleRoot", - "nameLocation": "4595:17:19", + "nameLocation": "4600:17:19", "nodeType": "VariableDeclaration", - "scope": 3587, - "src": "4587:25:19", + "scope": 4108, + "src": "4592:25:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4946,10 +4946,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3581, + "id": 4102, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4587:7:19", + "src": "4592:7:19", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4959,13 +4959,13 @@ }, { "constant": false, - "id": 3584, + "id": 4105, "mutability": "mutable", "name": "witnessReservedValue", - "nameLocation": "4622:20:19", + "nameLocation": "4627:20:19", "nodeType": "VariableDeclaration", - "scope": 3587, - "src": "4614:28:19", + "scope": 4108, + "src": "4619:28:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4973,10 +4973,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3583, + "id": 4104, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4614:7:19", + "src": "4619:7:19", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4985,42 +4985,42 @@ "visibility": "internal" } ], - "src": "4497:146:19" + "src": "4502:146:19" }, "returnParameters": { - "id": 3586, + "id": 4107, "nodeType": "ParameterList", "parameters": [], - "src": "4652:0:19" + "src": "4657:0:19" }, - "scope": 3652, - "src": "4458:195:19", + "scope": 4173, + "src": "4463:195:19", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "253b944b", - "id": 3594, + "id": 4115, "implemented": false, "kind": "function", "modifiers": [], "name": "hasBtcBlockCoinbaseTransactionInformation", - "nameLocation": "4668:41:19", + "nameLocation": "4673:41:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3590, + "id": 4111, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3589, + "id": 4110, "mutability": "mutable", "name": "blockHash", - "nameLocation": "4718:9:19", + "nameLocation": "4723:9:19", "nodeType": "VariableDeclaration", - "scope": 3594, - "src": "4710:17:19", + "scope": 4115, + "src": "4715:17:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5028,10 +5028,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3588, + "id": 4109, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4710:7:19", + "src": "4715:7:19", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5040,21 +5040,21 @@ "visibility": "internal" } ], - "src": "4709:19:19" + "src": "4714:19:19" }, "returnParameters": { - "id": 3593, + "id": 4114, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3592, + "id": 4113, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3594, - "src": "4747:4:19", + "scope": 4115, + "src": "4757:4:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5062,10 +5062,10 @@ "typeString": "bool" }, "typeName": { - "id": 3591, + "id": 4112, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "4747:4:19", + "src": "4757:4:19", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5074,36 +5074,36 @@ "visibility": "internal" } ], - "src": "4746:6:19" + "src": "4756:6:19" }, - "scope": 3652, - "src": "4659:94:19", - "stateMutability": "nonpayable", + "scope": 4173, + "src": "4664:99:19", + "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "6adc0133", - "id": 3615, + "id": 4136, "implemented": false, "kind": "function", "modifiers": [], "name": "registerFastBridgeBtcTransaction", - "nameLocation": "4768:32:19", + "nameLocation": "4778:32:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3611, + "id": 4132, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3596, + "id": 4117, "mutability": "mutable", "name": "btcTxSerialized", - "nameLocation": "4816:15:19", + "nameLocation": "4826:15:19", "nodeType": "VariableDeclaration", - "scope": 3615, - "src": "4801:30:19", + "scope": 4136, + "src": "4811:30:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -5111,10 +5111,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3595, + "id": 4116, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "4801:5:19", + "src": "4811:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -5124,13 +5124,13 @@ }, { "constant": false, - "id": 3598, + "id": 4119, "mutability": "mutable", "name": "height", - "nameLocation": "4841:6:19", + "nameLocation": "4851:6:19", "nodeType": "VariableDeclaration", - "scope": 3615, - "src": "4833:14:19", + "scope": 4136, + "src": "4843:14:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5138,10 +5138,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3597, + "id": 4118, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4833:7:19", + "src": "4843:7:19", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5151,13 +5151,13 @@ }, { "constant": false, - "id": 3600, + "id": 4121, "mutability": "mutable", "name": "pmtSerialized", - "nameLocation": "4872:13:19", + "nameLocation": "4882:13:19", "nodeType": "VariableDeclaration", - "scope": 3615, - "src": "4857:28:19", + "scope": 4136, + "src": "4867:28:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -5165,10 +5165,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3599, + "id": 4120, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "4857:5:19", + "src": "4867:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -5178,13 +5178,13 @@ }, { "constant": false, - "id": 3602, + "id": 4123, "mutability": "mutable", "name": "derivationArgumentsHash", - "nameLocation": "4895:23:19", + "nameLocation": "4905:23:19", "nodeType": "VariableDeclaration", - "scope": 3615, - "src": "4887:31:19", + "scope": 4136, + "src": "4897:31:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5192,10 +5192,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3601, + "id": 4122, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4887:7:19", + "src": "4897:7:19", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5205,13 +5205,13 @@ }, { "constant": false, - "id": 3604, + "id": 4125, "mutability": "mutable", "name": "userRefundBtcAddress", - "nameLocation": "4943:20:19", + "nameLocation": "4953:20:19", "nodeType": "VariableDeclaration", - "scope": 3615, - "src": "4928:35:19", + "scope": 4136, + "src": "4938:35:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -5219,10 +5219,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3603, + "id": 4124, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "4928:5:19", + "src": "4938:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -5232,13 +5232,13 @@ }, { "constant": false, - "id": 3606, + "id": 4127, "mutability": "mutable", "name": "liquidityBridgeContractAddress", - "nameLocation": "4981:30:19", + "nameLocation": "4991:30:19", "nodeType": "VariableDeclaration", - "scope": 3615, - "src": "4965:46:19", + "scope": 4136, + "src": "4975:46:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5246,10 +5246,10 @@ "typeString": "address payable" }, "typeName": { - "id": 3605, + "id": 4126, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4965:15:19", + "src": "4975:15:19", "stateMutability": "payable", "typeDescriptions": { "typeIdentifier": "t_address_payable", @@ -5260,13 +5260,13 @@ }, { "constant": false, - "id": 3608, + "id": 4129, "mutability": "mutable", "name": "liquidityProviderBtcAddress", - "nameLocation": "5036:27:19", + "nameLocation": "5046:27:19", "nodeType": "VariableDeclaration", - "scope": 3615, - "src": "5021:42:19", + "scope": 4136, + "src": "5031:42:19", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -5274,10 +5274,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3607, + "id": 4128, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "5021:5:19", + "src": "5031:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -5287,13 +5287,13 @@ }, { "constant": false, - "id": 3610, + "id": 4131, "mutability": "mutable", "name": "shouldTransferToContract", - "nameLocation": "5070:24:19", + "nameLocation": "5080:24:19", "nodeType": "VariableDeclaration", - "scope": 3615, - "src": "5065:29:19", + "scope": 4136, + "src": "5075:29:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5301,10 +5301,10 @@ "typeString": "bool" }, "typeName": { - "id": 3609, + "id": 4130, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5065:4:19", + "src": "5075:4:19", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5313,21 +5313,21 @@ "visibility": "internal" } ], - "src": "4800:295:19" + "src": "4810:295:19" }, "returnParameters": { - "id": 3614, + "id": 4135, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3613, + "id": 4134, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3615, - "src": "5114:6:19", + "scope": 4136, + "src": "5124:6:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5335,10 +5335,10 @@ "typeString": "int256" }, "typeName": { - "id": 3612, + "id": 4133, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "5114:6:19", + "src": "5124:6:19", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -5347,42 +5347,42 @@ "visibility": "internal" } ], - "src": "5113:8:19" + "src": "5123:8:19" }, - "scope": 3652, - "src": "4759:363:19", + "scope": 4173, + "src": "4769:363:19", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "177d6e18", - "id": 3620, + "id": 4141, "implemented": false, "kind": "function", "modifiers": [], "name": "getActiveFederationCreationBlockHeight", - "nameLocation": "5137:38:19", + "nameLocation": "5147:38:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3616, + "id": 4137, "nodeType": "ParameterList", "parameters": [], - "src": "5175:2:19" + "src": "5185:2:19" }, "returnParameters": { - "id": 3619, + "id": 4140, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3618, + "id": 4139, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3620, - "src": "5201:7:19", + "scope": 4141, + "src": "5211:7:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5390,10 +5390,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3617, + "id": 4138, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5201:7:19", + "src": "5211:7:19", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5402,42 +5402,42 @@ "visibility": "internal" } ], - "src": "5200:9:19" + "src": "5210:9:19" }, - "scope": 3652, - "src": "5128:82:19", + "scope": 4173, + "src": "5138:82:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "1d73d5dd", - "id": 3625, + "id": 4146, "implemented": false, "kind": "function", "modifiers": [], "name": "getActivePowpegRedeemScript", - "nameLocation": "5225:27:19", + "nameLocation": "5235:27:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3621, + "id": 4142, "nodeType": "ParameterList", "parameters": [], - "src": "5252:2:19" + "src": "5262:2:19" }, "returnParameters": { - "id": 3624, + "id": 4145, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3623, + "id": 4144, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3625, - "src": "5278:12:19", + "scope": 4146, + "src": "5288:12:19", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -5445,10 +5445,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3622, + "id": 4143, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "5278:5:19", + "src": "5288:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -5457,42 +5457,42 @@ "visibility": "internal" } ], - "src": "5277:14:19" + "src": "5287:14:19" }, - "scope": 3652, - "src": "5216:76:19", + "scope": 4173, + "src": "5226:76:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "f0b2424b", - "id": 3630, + "id": 4151, "implemented": false, "kind": "function", "modifiers": [], "name": "getBtcBlockchainBestBlockHeader", - "nameLocation": "5307:31:19", + "nameLocation": "5317:31:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3626, + "id": 4147, "nodeType": "ParameterList", "parameters": [], - "src": "5338:2:19" + "src": "5348:2:19" }, "returnParameters": { - "id": 3629, + "id": 4150, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3628, + "id": 4149, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3630, - "src": "5364:12:19", + "scope": 4151, + "src": "5374:12:19", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -5500,10 +5500,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3627, + "id": 4148, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "5364:5:19", + "src": "5374:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -5512,36 +5512,36 @@ "visibility": "internal" } ], - "src": "5363:14:19" + "src": "5373:14:19" }, - "scope": 3652, - "src": "5298:80:19", + "scope": 4173, + "src": "5308:80:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "739e364a", - "id": 3637, + "id": 4158, "implemented": false, "kind": "function", "modifiers": [], "name": "getBtcBlockchainBlockHeaderByHash", - "nameLocation": "5393:33:19", + "nameLocation": "5403:33:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3633, + "id": 4154, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3632, + "id": 4153, "mutability": "mutable", "name": "btcBlockHash", - "nameLocation": "5435:12:19", + "nameLocation": "5445:12:19", "nodeType": "VariableDeclaration", - "scope": 3637, - "src": "5427:20:19", + "scope": 4158, + "src": "5437:20:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5549,10 +5549,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3631, + "id": 4152, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5427:7:19", + "src": "5437:7:19", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5561,21 +5561,21 @@ "visibility": "internal" } ], - "src": "5426:22:19" + "src": "5436:22:19" }, "returnParameters": { - "id": 3636, + "id": 4157, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3635, + "id": 4156, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3637, - "src": "5472:12:19", + "scope": 4158, + "src": "5482:12:19", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -5583,10 +5583,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3634, + "id": 4155, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "5472:5:19", + "src": "5482:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -5595,36 +5595,36 @@ "visibility": "internal" } ], - "src": "5471:14:19" + "src": "5481:14:19" }, - "scope": 3652, - "src": "5384:102:19", + "scope": 4173, + "src": "5394:102:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "bd0c1fff", - "id": 3644, + "id": 4165, "implemented": false, "kind": "function", "modifiers": [], "name": "getBtcBlockchainBlockHeaderByHeight", - "nameLocation": "5501:35:19", + "nameLocation": "5511:35:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3640, + "id": 4161, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3639, + "id": 4160, "mutability": "mutable", "name": "btcBlockHeight", - "nameLocation": "5545:14:19", + "nameLocation": "5555:14:19", "nodeType": "VariableDeclaration", - "scope": 3644, - "src": "5537:22:19", + "scope": 4165, + "src": "5547:22:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5632,10 +5632,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3638, + "id": 4159, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5537:7:19", + "src": "5547:7:19", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5644,21 +5644,21 @@ "visibility": "internal" } ], - "src": "5536:24:19" + "src": "5546:24:19" }, "returnParameters": { - "id": 3643, + "id": 4164, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3642, + "id": 4163, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3644, - "src": "5584:12:19", + "scope": 4165, + "src": "5594:12:19", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -5666,10 +5666,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3641, + "id": 4162, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "5584:5:19", + "src": "5594:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -5678,36 +5678,36 @@ "visibility": "internal" } ], - "src": "5583:14:19" + "src": "5593:14:19" }, - "scope": 3652, - "src": "5492:106:19", + "scope": 4173, + "src": "5502:106:19", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "e0236724", - "id": 3651, + "id": 4172, "implemented": false, "kind": "function", "modifiers": [], "name": "getBtcBlockchainParentBlockHeaderByHash", - "nameLocation": "5613:39:19", + "nameLocation": "5623:39:19", "nodeType": "FunctionDefinition", "parameters": { - "id": 3647, + "id": 4168, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3646, + "id": 4167, "mutability": "mutable", "name": "btcBlockHash", - "nameLocation": "5661:12:19", + "nameLocation": "5671:12:19", "nodeType": "VariableDeclaration", - "scope": 3651, - "src": "5653:20:19", + "scope": 4172, + "src": "5663:20:19", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5715,10 +5715,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3645, + "id": 4166, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5653:7:19", + "src": "5663:7:19", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5727,21 +5727,21 @@ "visibility": "internal" } ], - "src": "5652:22:19" + "src": "5662:22:19" }, "returnParameters": { - "id": 3650, + "id": 4171, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3649, + "id": 4170, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3651, - "src": "5698:12:19", + "scope": 4172, + "src": "5708:12:19", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -5749,10 +5749,10 @@ "typeString": "bytes" }, "typeName": { - "id": 3648, + "id": 4169, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "5698:5:19", + "src": "5708:5:19", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -5761,21 +5761,21 @@ "visibility": "internal" } ], - "src": "5697:14:19" + "src": "5707:14:19" }, - "scope": 3652, - "src": "5604:108:19", + "scope": 4173, + "src": "5614:108:19", "stateMutability": "view", "virtual": false, "visibility": "external" } ], - "scope": 3653, - "src": "58:5656:19", + "scope": 4174, + "src": "58:5666:19", "usedErrors": [] } ], - "src": "32:5682:19" + "src": "32:5692:19" }, "compiler": { "name": "solc", @@ -5783,7 +5783,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.122Z", + "updatedAt": "2024-08-13T18:10:00.986Z", "devdoc": { "kind": "dev", "methods": {}, diff --git a/build/contracts/BridgeMock.json b/build/contracts/BridgeMock.json index c6c94e1..319cdc7 100644 --- a/build/contracts/BridgeMock.json +++ b/build/contracts/BridgeMock.json @@ -1096,9 +1096,9 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"addFederatorPublicKey\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"addFederatorPublicKeyMultikey\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"addLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"addOneOffLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pubkey\",\"type\":\"bytes\"},{\"internalType\":\"bytes[]\",\"name\":\"signatures\",\"type\":\"bytes[]\"},{\"internalType\":\"bytes\",\"name\":\"txhash\",\"type\":\"bytes\"}],\"name\":\"addSignature\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"addUnlimitedLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"commitFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"createFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActiveFederationCreationBlockHeight\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActivePowpegRedeemScript\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainBestBlockHeader\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainBestChainHeight\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"getBtcBlockchainBlockHashAtDepth\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"}],\"name\":\"getBtcBlockchainBlockHeaderByHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"}],\"name\":\"getBtcBlockchainBlockHeaderByHeight\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainInitialBlockHeight\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"getBtcBlockchainParentBlockHeaderByHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bytes32[]\",\"name\":\"\",\"type\":\"bytes32[]\"}],\"name\":\"getBtcTransactionConfirmations\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"getBtcTxHashProcessedHeight\",\"outputs\":[{\"internalType\":\"int64\",\"name\":\"\",\"type\":\"int64\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationCreationBlockNumber\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationCreationTime\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationThreshold\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"getFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"getFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFeePerKb\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"getLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"getLockWhitelistEntryByAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLockWhitelistSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLockingCap\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinimumLockTxValue\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPendingFederationHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPendingFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"getPendingFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"getPendingFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationCreationBlockNumber\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationCreationTime\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationThreshold\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"getRetiringFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"getRetiringFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStateForBtcReleaseClient\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStateForDebugging\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"hasBtcBlockCoinbaseTransactionInformation\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"increaseLockingCap\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"isBtcTxHashAlreadyProcessed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"receiveHeader\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes[]\",\"name\":\"blocks\",\"type\":\"bytes[]\"}],\"name\":\"receiveHeaders\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"btcTxSerialized\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"pmtSerialized\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"witnessMerkleRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"witnessReservedValue\",\"type\":\"bytes32\"}],\"name\":\"registerBtcCoinbaseTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"atx\",\"type\":\"bytes\"},{\"internalType\":\"int256\",\"name\":\"height\",\"type\":\"int256\"},{\"internalType\":\"bytes\",\"name\":\"pmt\",\"type\":\"bytes\"}],\"name\":\"registerBtcTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"derivationArgumentsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"liquidityBridgeContractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"name\":\"registerFastBridgeBtcTransaction\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"removeLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rollbackFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"header\",\"type\":\"bytes\"}],\"name\":\"setHeader\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"header\",\"type\":\"bytes\"}],\"name\":\"setHeaderByHash\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"setLockWhitelistDisableBlockDelay\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"derivationArgumentsHash\",\"type\":\"bytes32\"}],\"name\":\"setPegin\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"updateCollections\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"voteFeePerKbChange\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/BridgeMock.sol\":\"BridgeMock\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"project:/contracts/Bridge.sol\":{\"keccak256\":\"0xae192fa4fc0d6d395fd0c3912bc3affe86ddd4869f04501fbae0afe234d1becd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://309436cba07567a3ee76e71d6a751023b436a17f7d83e291ef731318287756e6\",\"dweb:/ipfs/QmZTjw3hbY4ofptJmQwnLRGrBTQcv6yPgbY4WvMAwgkzGS\"]},\"project:/contracts/BridgeMock.sol\":{\"keccak256\":\"0x6189e630ddab58eca7615334f05ecb804d11e9276ad6b97a7b4a7e44e5fb162c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0cf50f404c1ecb4656654be7ecc3f8f314ed9f9d2bedd0e310e18b64e0a0edef\",\"dweb:/ipfs/QmSY1vRdQ42sc5721FFGpvMPdUNzu2UY96tVtxpinZnD5M\"]}},\"version\":1}", - "bytecode": "0x608060405234801561001057600080fd5b5061114e806100206000396000f3fe6080604052600436106102b65760003560e01c80630461313e146102c257806307bbdfc4146102f65780630c5a99901461030a5780630d0cee931461031a5780630fd47456146102f657806310d86efd146103375780631183d5d1146102f657806314c89c01146102f65780631533330f14610358578063177d6e18146102f65780631b2045ee146102f65780631d73d5dd1461037b578063248a982d14610390578063251c5f7b14610358578063253b944b146103bb5780632910aeb2146103bb5780632f8d158f146103d65780633ac72b38146102f65780633f0ce9b1146102f65780633f9db977146102f657806343dc0656146103ea578063444ff9da1461040c5780634675d6de1461043357806347227286146104545780634897193f146102f6578063492f7c4414610433578063502bbbce14610475578063549cfd1c14610499578063572de37b146104bd5780635b644587146104dd5780635e2db9d4146102f657806368bc2b2b146104995780636923fa85146105035780636adc0133146105185780636b89a1af146104335780636ce0ed5a1461031a578063724ec886146102f6578063739e364a14610538578063802ad4b6146102f6578063848206d914610475578063884bdd86146103585780638dec3d32146102f657806393988b761461055857806397fcca7d14610586578063b906c93814610358578063bd0c1fff146105b4578063c1cc54f5146102c2578063c4fbca201461031a578063c61295d914610499578063ccf417ae146105d4578063d5949890146105f8578063d905153f146102f6578063d970b0fd146102f6578063e023672414610433578063e5400e7b14610618578063e9e658dc146102f6578063ecefd33914610358578063efd4441814610433578063f0b2424b1461031a578063f10b9c5914610637578063fcdeb46f1461035857600080fd5b366102bd57005b600080fd5b3480156102ce57600080fd5b506102e36102dd3660046108c6565b50600090565b6040519081526020015b60405180910390f35b34801561030257600080fd5b5060006102e3565b34801561031657600080fd5b505b005b34801561032657600080fd5b5060605b6040516102ed919061092f565b6103186103453660046108c6565b6000908152602081905260409020349055565b34801561036457600080fd5b506102e3610373366004610991565b600092915050565b34801561038757600080fd5b5061032a61065a565b34801561039c57600080fd5b506103ab610373366004610991565b60405190151581526020016102ed565b3480156103c757600080fd5b506103ab6102dd3660046108c6565b3480156103e257600080fd5b5060026102e3565b3480156103f657600080fd5b506103186104053660046109d2565b5050505050565b34801561041857600080fd5b506102e3610427366004610a4b565b60009695505050505050565b34801561043f57600080fd5b5061032a61044e3660046108c6565b50606090565b34801561046057600080fd5b5060408051602081019091526000815261032a565b34801561048157600080fd5b506102e3610490366004610ae4565b60009392505050565b3480156104a557600080fd5b5061032a6104b4366004610b2f565b60609392505050565b3480156104c957600080fd5b506103186104d8366004610c1c565b6106f5565b3480156104e957600080fd5b506102e36104f8366004610ca6565b600095945050505050565b34801561050f57600080fd5b5061032a610712565b34801561052457600080fd5b506102e3610533366004610d21565b610732565b34801561054457600080fd5b5061032a6105533660046108c6565b6107ef565b34801561056457600080fd5b5061032a6105733660046108c6565b5060408051602081019091526000815290565b34801561059257600080fd5b506105a1610373366004610991565b60405160079190910b81526020016102ed565b3480156105c057600080fd5b5061032a6105cf3660046108c6565b610891565b3480156105e057600080fd5b506103186105ef366004610e02565b50505050505050565b34801561060457600080fd5b50610318610613366004610c1c565b6108ae565b34801561062457600080fd5b50610318610633366004610e8a565b5050565b34801561064357600080fd5b50610318610652366004610ebf565b505050505050565b606060006040518060600160405280602981526020016110a360299139905060006040518060600160405280602a81526020016110cc602a913990506000604051806040016040528060168152602001751e4f6a9a7043c32b8bad8995c653187922ef826da9d760511b81525090508282826040516020016106de93929190610f20565b604051602081830303815290604052935050505090565b600082815260016020526040902061070d8282610fe3565b505050565b60606040518060600160405280602381526020016110f660239139905090565b600085815260208190526040808220805490839055905182906001600160a01b0387169083908381818185875af1925050503d8060008114610790576040519150601f19603f3d011682016040523d82523d6000602084013e610795565b606091505b50509050806107e15760405162461bcd60e51b815260206004820152601460248201527314d95b991a5b99c8199d5b991cc819985a5b195960621b604482015260640160405180910390fd5b509998505050505050505050565b600081815260026020526040902080546060919061080c90610f63565b80601f016020809104026020016040519081016040528092919081815260200182805461083890610f63565b80156108855780601f1061085a57610100808354040283529160200191610885565b820191906000526020600020905b81548152906001019060200180831161086857829003601f168201915b50505050509050919050565b600081815260016020526040902080546060919061080c90610f63565b600082815260026020526040902061070d8282610fe3565b6000602082840312156108d857600080fd5b5035919050565b60005b838110156108fa5781810151838201526020016108e2565b50506000910152565b6000815180845261091b8160208601602086016108df565b601f01601f19169290920160200192915050565b6020815260006109426020830184610903565b9392505050565b60008083601f84011261095b57600080fd5b5081356001600160401b0381111561097257600080fd5b60208301915083602082850101111561098a57600080fd5b9250929050565b600080602083850312156109a457600080fd5b82356001600160401b038111156109ba57600080fd5b6109c685828601610949565b90969095509350505050565b6000806000806000606086880312156109ea57600080fd5b85356001600160401b0380821115610a0157600080fd5b610a0d89838a01610949565b9097509550602088013594506040880135915080821115610a2d57600080fd5b50610a3a88828901610949565b969995985093965092949392505050565b60008060008060008060608789031215610a6457600080fd5b86356001600160401b0380821115610a7b57600080fd5b610a878a838b01610949565b90985096506020890135915080821115610aa057600080fd5b610aac8a838b01610949565b90965094506040890135915080821115610ac557600080fd5b50610ad289828a01610949565b979a9699509497509295939492505050565b600080600060408486031215610af957600080fd5b83356001600160401b03811115610b0f57600080fd5b610b1b86828701610949565b909790965060209590950135949350505050565b600080600060408486031215610b4457600080fd5b8335925060208401356001600160401b03811115610b6157600080fd5b610b6d86828701610949565b9497909650939450505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112610ba157600080fd5b81356001600160401b0380821115610bbb57610bbb610b7a565b604051601f8301601f19908116603f01168101908282118183101715610be357610be3610b7a565b81604052838152866020858801011115610bfc57600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060408385031215610c2f57600080fd5b8235915060208301356001600160401b03811115610c4c57600080fd5b610c5885828601610b90565b9150509250929050565b60008083601f840112610c7457600080fd5b5081356001600160401b03811115610c8b57600080fd5b6020830191508360208260051b850101111561098a57600080fd5b600080600080600060808688031215610cbe57600080fd5b85359450602086013593506040860135925060608601356001600160401b03811115610ce957600080fd5b610a3a88828901610c62565b80356001600160a01b0381168114610d0c57600080fd5b919050565b80358015158114610d0c57600080fd5b600080600080600080600080610100898b031215610d3e57600080fd5b88356001600160401b0380821115610d5557600080fd5b610d618c838d01610b90565b995060208b0135985060408b0135915080821115610d7e57600080fd5b610d8a8c838d01610b90565b975060608b0135965060808b0135915080821115610da757600080fd5b610db38c838d01610b90565b9550610dc160a08c01610cf5565b945060c08b0135915080821115610dd757600080fd5b50610de48b828c01610b90565b925050610df360e08a01610d11565b90509295985092959890939650565b600080600080600080600060a0888a031215610e1d57600080fd5b87356001600160401b0380821115610e3457600080fd5b610e408b838c01610949565b909950975060208a0135965060408a0135915080821115610e6057600080fd5b50610e6d8a828b01610949565b989b979a5095989597966060870135966080013595509350505050565b60008060208385031215610e9d57600080fd5b82356001600160401b03811115610eb357600080fd5b6109c685828601610c62565b60008060008060008060608789031215610ed857600080fd5b86356001600160401b0380821115610eef57600080fd5b610efb8a838b01610949565b90985096506020890135915080821115610f1457600080fd5b610aac8a838b01610c62565b60008451610f328184602089016108df565b845190830190610f468183602089016108df565b8451910190610f598183602088016108df565b0195945050505050565b600181811c90821680610f7757607f821691505b602082108103610f9757634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561070d57600081815260208120601f850160051c81016020861015610fc45750805b601f850160051c820191505b8181101561065257828155600101610fd0565b81516001600160401b03811115610ffc57610ffc610b7a565b6110108161100a8454610f63565b84610f9d565b602080601f831160018114611045576000841561102d5750858301515b600019600386901b1c1916600185901b178555610652565b600085815260208120601f198616915b8281101561107457888601518255948401946001909101908401611055565b50858210156110925787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe522102cd53fc53a07f211641a677d250f6de99caf620e8e77071e811a28b3bcddf0be1210362634ab57dae9cb373a5d536e66a8c4f67468bbcfb063809bab643072d78a1242103c5946b3fbae03a654237da86324e356d754d65704a697a4a45316752374662484a553643443138563342704e463970a26469706673582212205f3c0f599ddba0fbb2444d1d5a3259554a053c1b120a2774577c30674978782764736f6c63430008120033", - "deployedBytecode": "0x6080604052600436106102b65760003560e01c80630461313e146102c257806307bbdfc4146102f65780630c5a99901461030a5780630d0cee931461031a5780630fd47456146102f657806310d86efd146103375780631183d5d1146102f657806314c89c01146102f65780631533330f14610358578063177d6e18146102f65780631b2045ee146102f65780631d73d5dd1461037b578063248a982d14610390578063251c5f7b14610358578063253b944b146103bb5780632910aeb2146103bb5780632f8d158f146103d65780633ac72b38146102f65780633f0ce9b1146102f65780633f9db977146102f657806343dc0656146103ea578063444ff9da1461040c5780634675d6de1461043357806347227286146104545780634897193f146102f6578063492f7c4414610433578063502bbbce14610475578063549cfd1c14610499578063572de37b146104bd5780635b644587146104dd5780635e2db9d4146102f657806368bc2b2b146104995780636923fa85146105035780636adc0133146105185780636b89a1af146104335780636ce0ed5a1461031a578063724ec886146102f6578063739e364a14610538578063802ad4b6146102f6578063848206d914610475578063884bdd86146103585780638dec3d32146102f657806393988b761461055857806397fcca7d14610586578063b906c93814610358578063bd0c1fff146105b4578063c1cc54f5146102c2578063c4fbca201461031a578063c61295d914610499578063ccf417ae146105d4578063d5949890146105f8578063d905153f146102f6578063d970b0fd146102f6578063e023672414610433578063e5400e7b14610618578063e9e658dc146102f6578063ecefd33914610358578063efd4441814610433578063f0b2424b1461031a578063f10b9c5914610637578063fcdeb46f1461035857600080fd5b366102bd57005b600080fd5b3480156102ce57600080fd5b506102e36102dd3660046108c6565b50600090565b6040519081526020015b60405180910390f35b34801561030257600080fd5b5060006102e3565b34801561031657600080fd5b505b005b34801561032657600080fd5b5060605b6040516102ed919061092f565b6103186103453660046108c6565b6000908152602081905260409020349055565b34801561036457600080fd5b506102e3610373366004610991565b600092915050565b34801561038757600080fd5b5061032a61065a565b34801561039c57600080fd5b506103ab610373366004610991565b60405190151581526020016102ed565b3480156103c757600080fd5b506103ab6102dd3660046108c6565b3480156103e257600080fd5b5060026102e3565b3480156103f657600080fd5b506103186104053660046109d2565b5050505050565b34801561041857600080fd5b506102e3610427366004610a4b565b60009695505050505050565b34801561043f57600080fd5b5061032a61044e3660046108c6565b50606090565b34801561046057600080fd5b5060408051602081019091526000815261032a565b34801561048157600080fd5b506102e3610490366004610ae4565b60009392505050565b3480156104a557600080fd5b5061032a6104b4366004610b2f565b60609392505050565b3480156104c957600080fd5b506103186104d8366004610c1c565b6106f5565b3480156104e957600080fd5b506102e36104f8366004610ca6565b600095945050505050565b34801561050f57600080fd5b5061032a610712565b34801561052457600080fd5b506102e3610533366004610d21565b610732565b34801561054457600080fd5b5061032a6105533660046108c6565b6107ef565b34801561056457600080fd5b5061032a6105733660046108c6565b5060408051602081019091526000815290565b34801561059257600080fd5b506105a1610373366004610991565b60405160079190910b81526020016102ed565b3480156105c057600080fd5b5061032a6105cf3660046108c6565b610891565b3480156105e057600080fd5b506103186105ef366004610e02565b50505050505050565b34801561060457600080fd5b50610318610613366004610c1c565b6108ae565b34801561062457600080fd5b50610318610633366004610e8a565b5050565b34801561064357600080fd5b50610318610652366004610ebf565b505050505050565b606060006040518060600160405280602981526020016110a360299139905060006040518060600160405280602a81526020016110cc602a913990506000604051806040016040528060168152602001751e4f6a9a7043c32b8bad8995c653187922ef826da9d760511b81525090508282826040516020016106de93929190610f20565b604051602081830303815290604052935050505090565b600082815260016020526040902061070d8282610fe3565b505050565b60606040518060600160405280602381526020016110f660239139905090565b600085815260208190526040808220805490839055905182906001600160a01b0387169083908381818185875af1925050503d8060008114610790576040519150601f19603f3d011682016040523d82523d6000602084013e610795565b606091505b50509050806107e15760405162461bcd60e51b815260206004820152601460248201527314d95b991a5b99c8199d5b991cc819985a5b195960621b604482015260640160405180910390fd5b509998505050505050505050565b600081815260026020526040902080546060919061080c90610f63565b80601f016020809104026020016040519081016040528092919081815260200182805461083890610f63565b80156108855780601f1061085a57610100808354040283529160200191610885565b820191906000526020600020905b81548152906001019060200180831161086857829003601f168201915b50505050509050919050565b600081815260016020526040902080546060919061080c90610f63565b600082815260026020526040902061070d8282610fe3565b6000602082840312156108d857600080fd5b5035919050565b60005b838110156108fa5781810151838201526020016108e2565b50506000910152565b6000815180845261091b8160208601602086016108df565b601f01601f19169290920160200192915050565b6020815260006109426020830184610903565b9392505050565b60008083601f84011261095b57600080fd5b5081356001600160401b0381111561097257600080fd5b60208301915083602082850101111561098a57600080fd5b9250929050565b600080602083850312156109a457600080fd5b82356001600160401b038111156109ba57600080fd5b6109c685828601610949565b90969095509350505050565b6000806000806000606086880312156109ea57600080fd5b85356001600160401b0380821115610a0157600080fd5b610a0d89838a01610949565b9097509550602088013594506040880135915080821115610a2d57600080fd5b50610a3a88828901610949565b969995985093965092949392505050565b60008060008060008060608789031215610a6457600080fd5b86356001600160401b0380821115610a7b57600080fd5b610a878a838b01610949565b90985096506020890135915080821115610aa057600080fd5b610aac8a838b01610949565b90965094506040890135915080821115610ac557600080fd5b50610ad289828a01610949565b979a9699509497509295939492505050565b600080600060408486031215610af957600080fd5b83356001600160401b03811115610b0f57600080fd5b610b1b86828701610949565b909790965060209590950135949350505050565b600080600060408486031215610b4457600080fd5b8335925060208401356001600160401b03811115610b6157600080fd5b610b6d86828701610949565b9497909650939450505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112610ba157600080fd5b81356001600160401b0380821115610bbb57610bbb610b7a565b604051601f8301601f19908116603f01168101908282118183101715610be357610be3610b7a565b81604052838152866020858801011115610bfc57600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060408385031215610c2f57600080fd5b8235915060208301356001600160401b03811115610c4c57600080fd5b610c5885828601610b90565b9150509250929050565b60008083601f840112610c7457600080fd5b5081356001600160401b03811115610c8b57600080fd5b6020830191508360208260051b850101111561098a57600080fd5b600080600080600060808688031215610cbe57600080fd5b85359450602086013593506040860135925060608601356001600160401b03811115610ce957600080fd5b610a3a88828901610c62565b80356001600160a01b0381168114610d0c57600080fd5b919050565b80358015158114610d0c57600080fd5b600080600080600080600080610100898b031215610d3e57600080fd5b88356001600160401b0380821115610d5557600080fd5b610d618c838d01610b90565b995060208b0135985060408b0135915080821115610d7e57600080fd5b610d8a8c838d01610b90565b975060608b0135965060808b0135915080821115610da757600080fd5b610db38c838d01610b90565b9550610dc160a08c01610cf5565b945060c08b0135915080821115610dd757600080fd5b50610de48b828c01610b90565b925050610df360e08a01610d11565b90509295985092959890939650565b600080600080600080600060a0888a031215610e1d57600080fd5b87356001600160401b0380821115610e3457600080fd5b610e408b838c01610949565b909950975060208a0135965060408a0135915080821115610e6057600080fd5b50610e6d8a828b01610949565b989b979a5095989597966060870135966080013595509350505050565b60008060208385031215610e9d57600080fd5b82356001600160401b03811115610eb357600080fd5b6109c685828601610c62565b60008060008060008060608789031215610ed857600080fd5b86356001600160401b0380821115610eef57600080fd5b610efb8a838b01610949565b90985096506020890135915080821115610f1457600080fd5b610aac8a838b01610c62565b60008451610f328184602089016108df565b845190830190610f468183602089016108df565b8451910190610f598183602088016108df565b0195945050505050565b600181811c90821680610f7757607f821691505b602082108103610f9757634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561070d57600081815260208120601f850160051c81016020861015610fc45750805b601f850160051c820191505b8181101561065257828155600101610fd0565b81516001600160401b03811115610ffc57610ffc610b7a565b6110108161100a8454610f63565b84610f9d565b602080601f831160018114611045576000841561102d5750858301515b600019600386901b1c1916600185901b178555610652565b600085815260208120601f198616915b8281101561107457888601518255948401946001909101908401611055565b50858210156110925787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe522102cd53fc53a07f211641a677d250f6de99caf620e8e77071e811a28b3bcddf0be1210362634ab57dae9cb373a5d536e66a8c4f67468bbcfb063809bab643072d78a1242103c5946b3fbae03a654237da86324e356d754d65704a697a4a45316752374662484a553643443138563342704e463970a26469706673582212205f3c0f599ddba0fbb2444d1d5a3259554a053c1b120a2774577c30674978782764736f6c63430008120033", + "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"addFederatorPublicKey\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"addFederatorPublicKeyMultikey\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"addLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"addOneOffLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pubkey\",\"type\":\"bytes\"},{\"internalType\":\"bytes[]\",\"name\":\"signatures\",\"type\":\"bytes[]\"},{\"internalType\":\"bytes\",\"name\":\"txhash\",\"type\":\"bytes\"}],\"name\":\"addSignature\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"addUnlimitedLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"commitFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"createFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActiveFederationCreationBlockHeight\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActivePowpegRedeemScript\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainBestBlockHeader\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainBestChainHeight\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"getBtcBlockchainBlockHashAtDepth\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"}],\"name\":\"getBtcBlockchainBlockHeaderByHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"}],\"name\":\"getBtcBlockchainBlockHeaderByHeight\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainInitialBlockHeight\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"getBtcBlockchainParentBlockHeaderByHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bytes32[]\",\"name\":\"\",\"type\":\"bytes32[]\"}],\"name\":\"getBtcTransactionConfirmations\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"getBtcTxHashProcessedHeight\",\"outputs\":[{\"internalType\":\"int64\",\"name\":\"\",\"type\":\"int64\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationCreationBlockNumber\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationCreationTime\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationThreshold\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"getFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"getFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFeePerKb\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"getLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"getLockWhitelistEntryByAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLockWhitelistSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLockingCap\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinimumLockTxValue\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPendingFederationHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPendingFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"getPendingFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"getPendingFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationCreationBlockNumber\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationCreationTime\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationThreshold\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"getRetiringFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"getRetiringFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStateForBtcReleaseClient\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStateForDebugging\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"hasBtcBlockCoinbaseTransactionInformation\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"increaseLockingCap\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"isBtcTxHashAlreadyProcessed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"receiveHeader\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes[]\",\"name\":\"blocks\",\"type\":\"bytes[]\"}],\"name\":\"receiveHeaders\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"btcTxSerialized\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"pmtSerialized\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"witnessMerkleRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"witnessReservedValue\",\"type\":\"bytes32\"}],\"name\":\"registerBtcCoinbaseTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"atx\",\"type\":\"bytes\"},{\"internalType\":\"int256\",\"name\":\"height\",\"type\":\"int256\"},{\"internalType\":\"bytes\",\"name\":\"pmt\",\"type\":\"bytes\"}],\"name\":\"registerBtcTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"derivationArgumentsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"liquidityBridgeContractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"name\":\"registerFastBridgeBtcTransaction\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"removeLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rollbackFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"header\",\"type\":\"bytes\"}],\"name\":\"setHeader\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"header\",\"type\":\"bytes\"}],\"name\":\"setHeaderByHash\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"setLockWhitelistDisableBlockDelay\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"derivationArgumentsHash\",\"type\":\"bytes32\"}],\"name\":\"setPegin\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"updateCollections\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"voteFeePerKbChange\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/BridgeMock.sol\":\"BridgeMock\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"project:/contracts/Bridge.sol\":{\"keccak256\":\"0x1eb986f1f28ace76b72425a2617eaeb89a54c765dc7b16689cb1105a7e6c0f2f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://255860b4bfb0bed73723349493307106fb54fcaf5839a7b0c012fc1a03d0b8ce\",\"dweb:/ipfs/QmUoWjWVkXpUWjaiWQXQVNKEJmCnPtKXXTgFq7kkcTuGMs\"]},\"project:/contracts/BridgeMock.sol\":{\"keccak256\":\"0x6189e630ddab58eca7615334f05ecb804d11e9276ad6b97a7b4a7e44e5fb162c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0cf50f404c1ecb4656654be7ecc3f8f314ed9f9d2bedd0e310e18b64e0a0edef\",\"dweb:/ipfs/QmSY1vRdQ42sc5721FFGpvMPdUNzu2UY96tVtxpinZnD5M\"]}},\"version\":1}", + "bytecode": "0x608060405234801561001057600080fd5b5061114e806100206000396000f3fe6080604052600436106102b65760003560e01c80630461313e146102c257806307bbdfc4146102f65780630c5a99901461030a5780630d0cee931461031a5780630fd47456146102f657806310d86efd146103375780631183d5d1146102f657806314c89c01146102f65780631533330f14610358578063177d6e18146102f65780631b2045ee146102f65780631d73d5dd1461037b578063248a982d14610390578063251c5f7b14610358578063253b944b146103bb5780632910aeb2146103bb5780632f8d158f146103d65780633ac72b38146102f65780633f0ce9b1146102f65780633f9db977146102f657806343dc0656146103ea578063444ff9da1461040c5780634675d6de1461043357806347227286146104545780634897193f146102f6578063492f7c4414610433578063502bbbce14610475578063549cfd1c14610499578063572de37b146104bd5780635b644587146104dd5780635e2db9d4146102f657806368bc2b2b146104995780636923fa85146105035780636adc0133146105185780636b89a1af146104335780636ce0ed5a1461031a578063724ec886146102f6578063739e364a14610538578063802ad4b6146102f6578063848206d914610475578063884bdd86146103585780638dec3d32146102f657806393988b761461055857806397fcca7d14610586578063b906c93814610358578063bd0c1fff146105b4578063c1cc54f5146102c2578063c4fbca201461031a578063c61295d914610499578063ccf417ae146105d4578063d5949890146105f8578063d905153f146102f6578063d970b0fd146102f6578063e023672414610433578063e5400e7b14610618578063e9e658dc146102f6578063ecefd33914610358578063efd4441814610433578063f0b2424b1461031a578063f10b9c5914610637578063fcdeb46f1461035857600080fd5b366102bd57005b600080fd5b3480156102ce57600080fd5b506102e36102dd3660046108c6565b50600090565b6040519081526020015b60405180910390f35b34801561030257600080fd5b5060006102e3565b34801561031657600080fd5b505b005b34801561032657600080fd5b5060605b6040516102ed919061092f565b6103186103453660046108c6565b6000908152602081905260409020349055565b34801561036457600080fd5b506102e3610373366004610991565b600092915050565b34801561038757600080fd5b5061032a61065a565b34801561039c57600080fd5b506103ab610373366004610991565b60405190151581526020016102ed565b3480156103c757600080fd5b506103ab6102dd3660046108c6565b3480156103e257600080fd5b5060026102e3565b3480156103f657600080fd5b506103186104053660046109d2565b5050505050565b34801561041857600080fd5b506102e3610427366004610a4b565b60009695505050505050565b34801561043f57600080fd5b5061032a61044e3660046108c6565b50606090565b34801561046057600080fd5b5060408051602081019091526000815261032a565b34801561048157600080fd5b506102e3610490366004610ae4565b60009392505050565b3480156104a557600080fd5b5061032a6104b4366004610b2f565b60609392505050565b3480156104c957600080fd5b506103186104d8366004610c1c565b6106f5565b3480156104e957600080fd5b506102e36104f8366004610ca6565b600095945050505050565b34801561050f57600080fd5b5061032a610712565b34801561052457600080fd5b506102e3610533366004610d21565b610732565b34801561054457600080fd5b5061032a6105533660046108c6565b6107ef565b34801561056457600080fd5b5061032a6105733660046108c6565b5060408051602081019091526000815290565b34801561059257600080fd5b506105a1610373366004610991565b60405160079190910b81526020016102ed565b3480156105c057600080fd5b5061032a6105cf3660046108c6565b610891565b3480156105e057600080fd5b506103186105ef366004610e02565b50505050505050565b34801561060457600080fd5b50610318610613366004610c1c565b6108ae565b34801561062457600080fd5b50610318610633366004610e8a565b5050565b34801561064357600080fd5b50610318610652366004610ebf565b505050505050565b606060006040518060600160405280602981526020016110a360299139905060006040518060600160405280602a81526020016110cc602a913990506000604051806040016040528060168152602001751e4f6a9a7043c32b8bad8995c653187922ef826da9d760511b81525090508282826040516020016106de93929190610f20565b604051602081830303815290604052935050505090565b600082815260016020526040902061070d8282610fe3565b505050565b60606040518060600160405280602381526020016110f660239139905090565b600085815260208190526040808220805490839055905182906001600160a01b0387169083908381818185875af1925050503d8060008114610790576040519150601f19603f3d011682016040523d82523d6000602084013e610795565b606091505b50509050806107e15760405162461bcd60e51b815260206004820152601460248201527314d95b991a5b99c8199d5b991cc819985a5b195960621b604482015260640160405180910390fd5b509998505050505050505050565b600081815260026020526040902080546060919061080c90610f63565b80601f016020809104026020016040519081016040528092919081815260200182805461083890610f63565b80156108855780601f1061085a57610100808354040283529160200191610885565b820191906000526020600020905b81548152906001019060200180831161086857829003601f168201915b50505050509050919050565b600081815260016020526040902080546060919061080c90610f63565b600082815260026020526040902061070d8282610fe3565b6000602082840312156108d857600080fd5b5035919050565b60005b838110156108fa5781810151838201526020016108e2565b50506000910152565b6000815180845261091b8160208601602086016108df565b601f01601f19169290920160200192915050565b6020815260006109426020830184610903565b9392505050565b60008083601f84011261095b57600080fd5b5081356001600160401b0381111561097257600080fd5b60208301915083602082850101111561098a57600080fd5b9250929050565b600080602083850312156109a457600080fd5b82356001600160401b038111156109ba57600080fd5b6109c685828601610949565b90969095509350505050565b6000806000806000606086880312156109ea57600080fd5b85356001600160401b0380821115610a0157600080fd5b610a0d89838a01610949565b9097509550602088013594506040880135915080821115610a2d57600080fd5b50610a3a88828901610949565b969995985093965092949392505050565b60008060008060008060608789031215610a6457600080fd5b86356001600160401b0380821115610a7b57600080fd5b610a878a838b01610949565b90985096506020890135915080821115610aa057600080fd5b610aac8a838b01610949565b90965094506040890135915080821115610ac557600080fd5b50610ad289828a01610949565b979a9699509497509295939492505050565b600080600060408486031215610af957600080fd5b83356001600160401b03811115610b0f57600080fd5b610b1b86828701610949565b909790965060209590950135949350505050565b600080600060408486031215610b4457600080fd5b8335925060208401356001600160401b03811115610b6157600080fd5b610b6d86828701610949565b9497909650939450505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112610ba157600080fd5b81356001600160401b0380821115610bbb57610bbb610b7a565b604051601f8301601f19908116603f01168101908282118183101715610be357610be3610b7a565b81604052838152866020858801011115610bfc57600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060408385031215610c2f57600080fd5b8235915060208301356001600160401b03811115610c4c57600080fd5b610c5885828601610b90565b9150509250929050565b60008083601f840112610c7457600080fd5b5081356001600160401b03811115610c8b57600080fd5b6020830191508360208260051b850101111561098a57600080fd5b600080600080600060808688031215610cbe57600080fd5b85359450602086013593506040860135925060608601356001600160401b03811115610ce957600080fd5b610a3a88828901610c62565b80356001600160a01b0381168114610d0c57600080fd5b919050565b80358015158114610d0c57600080fd5b600080600080600080600080610100898b031215610d3e57600080fd5b88356001600160401b0380821115610d5557600080fd5b610d618c838d01610b90565b995060208b0135985060408b0135915080821115610d7e57600080fd5b610d8a8c838d01610b90565b975060608b0135965060808b0135915080821115610da757600080fd5b610db38c838d01610b90565b9550610dc160a08c01610cf5565b945060c08b0135915080821115610dd757600080fd5b50610de48b828c01610b90565b925050610df360e08a01610d11565b90509295985092959890939650565b600080600080600080600060a0888a031215610e1d57600080fd5b87356001600160401b0380821115610e3457600080fd5b610e408b838c01610949565b909950975060208a0135965060408a0135915080821115610e6057600080fd5b50610e6d8a828b01610949565b989b979a5095989597966060870135966080013595509350505050565b60008060208385031215610e9d57600080fd5b82356001600160401b03811115610eb357600080fd5b6109c685828601610c62565b60008060008060008060608789031215610ed857600080fd5b86356001600160401b0380821115610eef57600080fd5b610efb8a838b01610949565b90985096506020890135915080821115610f1457600080fd5b610aac8a838b01610c62565b60008451610f328184602089016108df565b845190830190610f468183602089016108df565b8451910190610f598183602088016108df565b0195945050505050565b600181811c90821680610f7757607f821691505b602082108103610f9757634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561070d57600081815260208120601f850160051c81016020861015610fc45750805b601f850160051c820191505b8181101561065257828155600101610fd0565b81516001600160401b03811115610ffc57610ffc610b7a565b6110108161100a8454610f63565b84610f9d565b602080601f831160018114611045576000841561102d5750858301515b600019600386901b1c1916600185901b178555610652565b600085815260208120601f198616915b8281101561107457888601518255948401946001909101908401611055565b50858210156110925787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe522102cd53fc53a07f211641a677d250f6de99caf620e8e77071e811a28b3bcddf0be1210362634ab57dae9cb373a5d536e66a8c4f67468bbcfb063809bab643072d78a1242103c5946b3fbae03a654237da86324e356d754d65704a697a4a45316752374662484a553643443138563342704e463970a2646970667358221220c4239a684275775f1395150eb81424c66c60862288b76c736f85620d6146cee964736f6c63430008120033", + "deployedBytecode": "0x6080604052600436106102b65760003560e01c80630461313e146102c257806307bbdfc4146102f65780630c5a99901461030a5780630d0cee931461031a5780630fd47456146102f657806310d86efd146103375780631183d5d1146102f657806314c89c01146102f65780631533330f14610358578063177d6e18146102f65780631b2045ee146102f65780631d73d5dd1461037b578063248a982d14610390578063251c5f7b14610358578063253b944b146103bb5780632910aeb2146103bb5780632f8d158f146103d65780633ac72b38146102f65780633f0ce9b1146102f65780633f9db977146102f657806343dc0656146103ea578063444ff9da1461040c5780634675d6de1461043357806347227286146104545780634897193f146102f6578063492f7c4414610433578063502bbbce14610475578063549cfd1c14610499578063572de37b146104bd5780635b644587146104dd5780635e2db9d4146102f657806368bc2b2b146104995780636923fa85146105035780636adc0133146105185780636b89a1af146104335780636ce0ed5a1461031a578063724ec886146102f6578063739e364a14610538578063802ad4b6146102f6578063848206d914610475578063884bdd86146103585780638dec3d32146102f657806393988b761461055857806397fcca7d14610586578063b906c93814610358578063bd0c1fff146105b4578063c1cc54f5146102c2578063c4fbca201461031a578063c61295d914610499578063ccf417ae146105d4578063d5949890146105f8578063d905153f146102f6578063d970b0fd146102f6578063e023672414610433578063e5400e7b14610618578063e9e658dc146102f6578063ecefd33914610358578063efd4441814610433578063f0b2424b1461031a578063f10b9c5914610637578063fcdeb46f1461035857600080fd5b366102bd57005b600080fd5b3480156102ce57600080fd5b506102e36102dd3660046108c6565b50600090565b6040519081526020015b60405180910390f35b34801561030257600080fd5b5060006102e3565b34801561031657600080fd5b505b005b34801561032657600080fd5b5060605b6040516102ed919061092f565b6103186103453660046108c6565b6000908152602081905260409020349055565b34801561036457600080fd5b506102e3610373366004610991565b600092915050565b34801561038757600080fd5b5061032a61065a565b34801561039c57600080fd5b506103ab610373366004610991565b60405190151581526020016102ed565b3480156103c757600080fd5b506103ab6102dd3660046108c6565b3480156103e257600080fd5b5060026102e3565b3480156103f657600080fd5b506103186104053660046109d2565b5050505050565b34801561041857600080fd5b506102e3610427366004610a4b565b60009695505050505050565b34801561043f57600080fd5b5061032a61044e3660046108c6565b50606090565b34801561046057600080fd5b5060408051602081019091526000815261032a565b34801561048157600080fd5b506102e3610490366004610ae4565b60009392505050565b3480156104a557600080fd5b5061032a6104b4366004610b2f565b60609392505050565b3480156104c957600080fd5b506103186104d8366004610c1c565b6106f5565b3480156104e957600080fd5b506102e36104f8366004610ca6565b600095945050505050565b34801561050f57600080fd5b5061032a610712565b34801561052457600080fd5b506102e3610533366004610d21565b610732565b34801561054457600080fd5b5061032a6105533660046108c6565b6107ef565b34801561056457600080fd5b5061032a6105733660046108c6565b5060408051602081019091526000815290565b34801561059257600080fd5b506105a1610373366004610991565b60405160079190910b81526020016102ed565b3480156105c057600080fd5b5061032a6105cf3660046108c6565b610891565b3480156105e057600080fd5b506103186105ef366004610e02565b50505050505050565b34801561060457600080fd5b50610318610613366004610c1c565b6108ae565b34801561062457600080fd5b50610318610633366004610e8a565b5050565b34801561064357600080fd5b50610318610652366004610ebf565b505050505050565b606060006040518060600160405280602981526020016110a360299139905060006040518060600160405280602a81526020016110cc602a913990506000604051806040016040528060168152602001751e4f6a9a7043c32b8bad8995c653187922ef826da9d760511b81525090508282826040516020016106de93929190610f20565b604051602081830303815290604052935050505090565b600082815260016020526040902061070d8282610fe3565b505050565b60606040518060600160405280602381526020016110f660239139905090565b600085815260208190526040808220805490839055905182906001600160a01b0387169083908381818185875af1925050503d8060008114610790576040519150601f19603f3d011682016040523d82523d6000602084013e610795565b606091505b50509050806107e15760405162461bcd60e51b815260206004820152601460248201527314d95b991a5b99c8199d5b991cc819985a5b195960621b604482015260640160405180910390fd5b509998505050505050505050565b600081815260026020526040902080546060919061080c90610f63565b80601f016020809104026020016040519081016040528092919081815260200182805461083890610f63565b80156108855780601f1061085a57610100808354040283529160200191610885565b820191906000526020600020905b81548152906001019060200180831161086857829003601f168201915b50505050509050919050565b600081815260016020526040902080546060919061080c90610f63565b600082815260026020526040902061070d8282610fe3565b6000602082840312156108d857600080fd5b5035919050565b60005b838110156108fa5781810151838201526020016108e2565b50506000910152565b6000815180845261091b8160208601602086016108df565b601f01601f19169290920160200192915050565b6020815260006109426020830184610903565b9392505050565b60008083601f84011261095b57600080fd5b5081356001600160401b0381111561097257600080fd5b60208301915083602082850101111561098a57600080fd5b9250929050565b600080602083850312156109a457600080fd5b82356001600160401b038111156109ba57600080fd5b6109c685828601610949565b90969095509350505050565b6000806000806000606086880312156109ea57600080fd5b85356001600160401b0380821115610a0157600080fd5b610a0d89838a01610949565b9097509550602088013594506040880135915080821115610a2d57600080fd5b50610a3a88828901610949565b969995985093965092949392505050565b60008060008060008060608789031215610a6457600080fd5b86356001600160401b0380821115610a7b57600080fd5b610a878a838b01610949565b90985096506020890135915080821115610aa057600080fd5b610aac8a838b01610949565b90965094506040890135915080821115610ac557600080fd5b50610ad289828a01610949565b979a9699509497509295939492505050565b600080600060408486031215610af957600080fd5b83356001600160401b03811115610b0f57600080fd5b610b1b86828701610949565b909790965060209590950135949350505050565b600080600060408486031215610b4457600080fd5b8335925060208401356001600160401b03811115610b6157600080fd5b610b6d86828701610949565b9497909650939450505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112610ba157600080fd5b81356001600160401b0380821115610bbb57610bbb610b7a565b604051601f8301601f19908116603f01168101908282118183101715610be357610be3610b7a565b81604052838152866020858801011115610bfc57600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060408385031215610c2f57600080fd5b8235915060208301356001600160401b03811115610c4c57600080fd5b610c5885828601610b90565b9150509250929050565b60008083601f840112610c7457600080fd5b5081356001600160401b03811115610c8b57600080fd5b6020830191508360208260051b850101111561098a57600080fd5b600080600080600060808688031215610cbe57600080fd5b85359450602086013593506040860135925060608601356001600160401b03811115610ce957600080fd5b610a3a88828901610c62565b80356001600160a01b0381168114610d0c57600080fd5b919050565b80358015158114610d0c57600080fd5b600080600080600080600080610100898b031215610d3e57600080fd5b88356001600160401b0380821115610d5557600080fd5b610d618c838d01610b90565b995060208b0135985060408b0135915080821115610d7e57600080fd5b610d8a8c838d01610b90565b975060608b0135965060808b0135915080821115610da757600080fd5b610db38c838d01610b90565b9550610dc160a08c01610cf5565b945060c08b0135915080821115610dd757600080fd5b50610de48b828c01610b90565b925050610df360e08a01610d11565b90509295985092959890939650565b600080600080600080600060a0888a031215610e1d57600080fd5b87356001600160401b0380821115610e3457600080fd5b610e408b838c01610949565b909950975060208a0135965060408a0135915080821115610e6057600080fd5b50610e6d8a828b01610949565b989b979a5095989597966060870135966080013595509350505050565b60008060208385031215610e9d57600080fd5b82356001600160401b03811115610eb357600080fd5b6109c685828601610c62565b60008060008060008060608789031215610ed857600080fd5b86356001600160401b0380821115610eef57600080fd5b610efb8a838b01610949565b90985096506020890135915080821115610f1457600080fd5b610aac8a838b01610c62565b60008451610f328184602089016108df565b845190830190610f468183602089016108df565b8451910190610f598183602088016108df565b0195945050505050565b600181811c90821680610f7757607f821691505b602082108103610f9757634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561070d57600081815260208120601f850160051c81016020861015610fc45750805b601f850160051c820191505b8181101561065257828155600101610fd0565b81516001600160401b03811115610ffc57610ffc610b7a565b6110108161100a8454610f63565b84610f9d565b602080601f831160018114611045576000841561102d5750858301515b600019600386901b1c1916600185901b178555610652565b600085815260208120601f198616915b8281101561107457888601518255948401946001909101908401611055565b50858210156110925787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe522102cd53fc53a07f211641a677d250f6de99caf620e8e77071e811a28b3bcddf0be1210362634ab57dae9cb373a5d536e66a8c4f67468bbcfb063809bab643072d78a1242103c5946b3fbae03a654237da86324e356d754d65704a697a4a45316752374662484a553643443138563342704e463970a2646970667358221220c4239a684275775f1395150eb81424c66c60862288b76c736f85620d6146cee964736f6c63430008120033", "immutableReferences": {}, "generatedSources": [], "deployedGeneratedSources": [ @@ -13918,23 +13918,23 @@ "sourceMap": "82:8510:20:-:0;;;;;;;;;;;;;;;;;;;", "deployedSourceMap": "82:8510:20:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7050:99;;;;;;;;;;-1:-1:-1;7050:99:20;;;;;:::i;:::-;-1:-1:-1;7122:6:20;;7050:99;;;;342:25:32;;;330:2;315:18;7050:99:20;;;;;;;;4202:105;;;;;;;;;;-1:-1:-1;4280:6:20;4202:105;;7154:52;;;;;;;;;;;;;2104:108;;;;;;;;;;-1:-1:-1;2171:12:20;2104:108;;;;;;;:::i;1053:127::-;;;;;;:::i;:::-;1129:7;:32;;;;;;;;;;1164:9;1129:44;;1053:127;5229:104;;;;;;;;;;-1:-1:-1;5229:104:20;;;;;:::i;:::-;5306:6;5229:104;;;;;1424:455;;;;;;;;;;;;;:::i;2582:110::-;;;;;;;;;;-1:-1:-1;2582:110:20;;;;;:::i;:::-;;;2843:14:32;;2836:22;2818:41;;2806:2;2791:18;2582:110:20;2678:187:32;7879:125:20;;;;;;;;;;-1:-1:-1;7879:125:20;;;;;:::i;7211:95::-;;;;;;;;;;-1:-1:-1;7302:1:20;7211:95;;2867:110;;;;;;;;;;-1:-1:-1;2867:110:20;;;;;:::i;:::-;;;;;;;5064:160;;;;;;;;;;-1:-1:-1;5064:160:20;;;;;:::i;:::-;5197:6;5064:160;;;;;;;;;4312:132;;;;;;;;;;-1:-1:-1;4312:132:20;;;;;:::i;:::-;-1:-1:-1;4395:12:20;;4312:132;3989:103;;;;;;;;;;-1:-1:-1;4081:9:20;;;;;;;;;-1:-1:-1;4081:9:20;;3989:103;;6293:130;;;;;;;;;;-1:-1:-1;6293:130:20;;;;;:::i;:::-;6388:6;6293:130;;;;;;3623:146;;;;;;;;;;-1:-1:-1;3623:146:20;;;;;:::i;:::-;3728:12;3623:146;;;;;;1186:104;;;;;;;;;;-1:-1:-1;1186:104:20;;;;;:::i;:::-;;:::i;7311:160::-;;;;;;;;;;-1:-1:-1;7311:160:20;;;;;:::i;:::-;7444:6;7311:160;;;;;;;;2697:137;;;;;;;;;;;;;:::i;313:582::-;;;;;;;;;;-1:-1:-1;313:582:20;;;;;:::i;:::-;;:::i;8269:170::-;;;;;;;;;;-1:-1:-1;8269:170:20;;;;;:::i;:::-;;:::i;6050:104::-;;;;;;;;;;-1:-1:-1;6050:104:20;;;;;:::i;:::-;-1:-1:-1;6143:9:20;;;;;;;;;-1:-1:-1;6143:9:20;;;6050:104;2463:114;;;;;;;;;;-1:-1:-1;2463:114:20;;;;;:::i;:::-;;;9884:1:32;9873:21;;;;9855:40;;9843:2;9828:18;2463:114:20;9713:188:32;901:146:20;;;;;;;;;;-1:-1:-1;901:146:20;;;;;:::i;:::-;;:::i;7665:209::-;;;;;;;;;;-1:-1:-1;7665:209:20;;;;;:::i;:::-;;;;;;;;;1296:122;;;;;;;;;;-1:-1:-1;1296:122:20;;;;;:::i;:::-;;:::i;3115:72::-;;;;;;;;;;-1:-1:-1;3115:72:20;;;;;:::i;:::-;;;;2982:128;;;;;;;;;;-1:-1:-1;2982:128:20;;;;;:::i;:::-;;;;;;;;1424:455;1486:12;1510:18;:108;;;;;;;;;;;;;;;;;;;1628:18;:110;;;;;;;;;;;;;;;;;;;1748:18;:70;;;;;;;;;;;;;-1:-1:-1;;;1748:70:20;;;;;1852:5;1859;1866;1835:37;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1828:44;;;;;1424:455;:::o;1186:104::-;1259:15;;;;:7;:15;;;;;:24;1277:6;1259:15;:24;:::i;:::-;;1186:104;;:::o;2697:137::-;2764:13;2788:44;;;;;;;;;;;;;;;;;;;2697:137;:::o;313:582::-;614:6;649:32;;;;;;;;;;;;;691:36;;;;756:54;;614:6;;-1:-1:-1;;;;;756:35:20;;;649:32;;614:6;756:54;614:6;756:54;649:32;756:35;:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;737:73;;;828:7;820:40;;;;-1:-1:-1;;;820:40:20;;16610:2:32;820:40:20;;;16592:21:32;16649:2;16629:18;;;16622:30;-1:-1:-1;;;16668:18:32;;;16661:50;16728:18;;820:40:20;;;;;;;;-1:-1:-1;881:6:20;313:582;-1:-1:-1;;;;;;;;;313:582:20:o;8269:170::-;8408:24;;;;:13;:24;;;;;8401:31;;8377:12;;8408:24;8401:31;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8269:170;;;:::o;901:146::-;1025:15;;;;:7;:15;;;;;1018:22;;994:12;;1025:15;1018:22;;;:::i;1296:122::-;1378:24;;;;:13;:24;;;;;:33;1405:6;1378:24;:33;:::i;14:179:32:-;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;-1:-1:-1;164:23:32;;14:179;-1:-1:-1;14:179:32:o;378:250::-;463:1;473:113;487:6;484:1;481:13;473:113;;;563:11;;;557:18;544:11;;;537:39;509:2;502:10;473:113;;;-1:-1:-1;;620:1:32;602:16;;595:27;378:250::o;633:270::-;674:3;712:5;706:12;739:6;734:3;727:19;755:76;824:6;817:4;812:3;808:14;801:4;794:5;790:16;755:76;:::i;:::-;885:2;864:15;-1:-1:-1;;860:29:32;851:39;;;;892:4;847:50;;633:270;-1:-1:-1;;633:270:32:o;908:217::-;1055:2;1044:9;1037:21;1018:4;1075:44;1115:2;1104:9;1100:18;1092:6;1075:44;:::i;:::-;1067:52;908:217;-1:-1:-1;;;908:217:32:o;1315:347::-;1366:8;1376:6;1430:3;1423:4;1415:6;1411:17;1407:27;1397:55;;1448:1;1445;1438:12;1397:55;-1:-1:-1;1471:20:32;;-1:-1:-1;;;;;1503:30:32;;1500:50;;;1546:1;1543;1536:12;1500:50;1583:4;1575:6;1571:17;1559:29;;1635:3;1628:4;1619:6;1611;1607:19;1603:30;1600:39;1597:59;;;1652:1;1649;1642:12;1597:59;1315:347;;;;;:::o;1667:409::-;1737:6;1745;1798:2;1786:9;1777:7;1773:23;1769:32;1766:52;;;1814:1;1811;1804:12;1766:52;1841:23;;-1:-1:-1;;;;;1876:30:32;;1873:50;;;1919:1;1916;1909:12;1873:50;1958:58;2008:7;1999:6;1988:9;1984:22;1958:58;:::i;:::-;2035:8;;1932:84;;-1:-1:-1;1667:409:32;-1:-1:-1;;;;1667:409:32:o;2870:784::-;2968:6;2976;2984;2992;3000;3053:2;3041:9;3032:7;3028:23;3024:32;3021:52;;;3069:1;3066;3059:12;3021:52;3096:23;;-1:-1:-1;;;;;3168:14:32;;;3165:34;;;3195:1;3192;3185:12;3165:34;3234:58;3284:7;3275:6;3264:9;3260:22;3234:58;:::i;:::-;3311:8;;-1:-1:-1;3208:84:32;-1:-1:-1;3393:2:32;3378:18;;3365:32;;-1:-1:-1;3450:2:32;3435:18;;3422:32;;-1:-1:-1;3466:16:32;;;3463:36;;;3495:1;3492;3485:12;3463:36;;3534:60;3586:7;3575:8;3564:9;3560:24;3534:60;:::i;:::-;2870:784;;;;-1:-1:-1;2870:784:32;;-1:-1:-1;3613:8:32;;3508:86;2870:784;-1:-1:-1;;;2870:784:32:o;3659:1004::-;3769:6;3777;3785;3793;3801;3809;3862:2;3850:9;3841:7;3837:23;3833:32;3830:52;;;3878:1;3875;3868:12;3830:52;3905:23;;-1:-1:-1;;;;;3977:14:32;;;3974:34;;;4004:1;4001;3994:12;3974:34;4043:58;4093:7;4084:6;4073:9;4069:22;4043:58;:::i;:::-;4120:8;;-1:-1:-1;4017:84:32;-1:-1:-1;4208:2:32;4193:18;;4180:32;;-1:-1:-1;4224:16:32;;;4221:36;;;4253:1;4250;4243:12;4221:36;4292:60;4344:7;4333:8;4322:9;4318:24;4292:60;:::i;:::-;4371:8;;-1:-1:-1;4266:86:32;-1:-1:-1;4459:2:32;4444:18;;4431:32;;-1:-1:-1;4475:16:32;;;4472:36;;;4504:1;4501;4494:12;4472:36;;4543:60;4595:7;4584:8;4573:9;4569:24;4543:60;:::i;:::-;3659:1004;;;;-1:-1:-1;3659:1004:32;;-1:-1:-1;3659:1004:32;;4622:8;;3659:1004;-1:-1:-1;;;3659:1004:32:o;4892:477::-;4971:6;4979;4987;5040:2;5028:9;5019:7;5015:23;5011:32;5008:52;;;5056:1;5053;5046:12;5008:52;5083:23;;-1:-1:-1;;;;;5118:30:32;;5115:50;;;5161:1;5158;5151:12;5115:50;5200:58;5250:7;5241:6;5230:9;5226:22;5200:58;:::i;:::-;5277:8;;5174:84;;-1:-1:-1;5359:2:32;5344:18;;;;5331:32;;4892:477;-1:-1:-1;;;;4892:477:32:o;5374:::-;5453:6;5461;5469;5522:2;5510:9;5501:7;5497:23;5493:32;5490:52;;;5538:1;5535;5528:12;5490:52;5561:23;;;-1:-1:-1;5635:2:32;5620:18;;5607:32;-1:-1:-1;;;;;5651:30:32;;5648:50;;;5694:1;5691;5684:12;5648:50;5733:58;5783:7;5774:6;5763:9;5759:22;5733:58;:::i;:::-;5374:477;;5810:8;;-1:-1:-1;5707:84:32;;-1:-1:-1;;;;5374:477:32:o;5856:127::-;5917:10;5912:3;5908:20;5905:1;5898:31;5948:4;5945:1;5938:15;5972:4;5969:1;5962:15;5988:718;6030:5;6083:3;6076:4;6068:6;6064:17;6060:27;6050:55;;6101:1;6098;6091:12;6050:55;6124:20;;-1:-1:-1;;;;;6193:10:32;;;6190:36;;;6206:18;;:::i;:::-;6281:2;6275:9;6249:2;6335:13;;-1:-1:-1;;6331:22:32;;;6355:2;6327:31;6323:40;6311:53;;;6379:18;;;6399:22;;;6376:46;6373:72;;;6425:18;;:::i;:::-;6465:10;6461:2;6454:22;6500:2;6492:6;6485:18;6546:3;6539:4;6534:2;6526:6;6522:15;6518:26;6515:35;6512:55;;;6563:1;6560;6553:12;6512:55;6627:2;6620:4;6612:6;6608:17;6601:4;6593:6;6589:17;6576:54;6674:1;6667:4;6662:2;6654:6;6650:15;6646:26;6639:37;6694:6;6685:15;;;;;;5988:718;;;;:::o;6711:388::-;6788:6;6796;6849:2;6837:9;6828:7;6824:23;6820:32;6817:52;;;6865:1;6862;6855:12;6817:52;6888:23;;;-1:-1:-1;6962:2:32;6947:18;;6934:32;-1:-1:-1;;;;;6978:30:32;;6975:50;;;7021:1;7018;7011:12;6975:50;7044:49;7085:7;7076:6;7065:9;7061:22;7044:49;:::i;:::-;7034:59;;;6711:388;;;;;:::o;7104:367::-;7167:8;7177:6;7231:3;7224:4;7216:6;7212:17;7208:27;7198:55;;7249:1;7246;7239:12;7198:55;-1:-1:-1;7272:20:32;;-1:-1:-1;;;;;7304:30:32;;7301:50;;;7347:1;7344;7337:12;7301:50;7384:4;7376:6;7372:17;7360:29;;7444:3;7437:4;7427:6;7424:1;7420:14;7412:6;7408:27;7404:38;7401:47;7398:67;;;7461:1;7458;7451:12;7476:642;7589:6;7597;7605;7613;7621;7674:3;7662:9;7653:7;7649:23;7645:33;7642:53;;;7691:1;7688;7681:12;7642:53;7714:23;;;-1:-1:-1;7784:2:32;7769:18;;7756:32;;-1:-1:-1;7835:2:32;7820:18;;7807:32;;-1:-1:-1;7890:2:32;7875:18;;7862:32;-1:-1:-1;;;;;7906:30:32;;7903:50;;;7949:1;7946;7939:12;7903:50;7988:70;8050:7;8041:6;8030:9;8026:22;7988:70;:::i;8123:181::-;8199:20;;-1:-1:-1;;;;;8248:31:32;;8238:42;;8228:70;;8294:1;8291;8284:12;8228:70;8123:181;;;:::o;8309:160::-;8374:20;;8430:13;;8423:21;8413:32;;8403:60;;8459:1;8456;8449:12;8474:1234;8637:6;8645;8653;8661;8669;8677;8685;8693;8746:3;8734:9;8725:7;8721:23;8717:33;8714:53;;;8763:1;8760;8753:12;8714:53;8790:23;;-1:-1:-1;;;;;8862:14:32;;;8859:34;;;8889:1;8886;8879:12;8859:34;8912:49;8953:7;8944:6;8933:9;8929:22;8912:49;:::i;:::-;8902:59;;9008:2;8997:9;8993:18;8980:32;8970:42;;9065:2;9054:9;9050:18;9037:32;9021:48;;9094:2;9084:8;9081:16;9078:36;;;9110:1;9107;9100:12;9078:36;9133:51;9176:7;9165:8;9154:9;9150:24;9133:51;:::i;:::-;9123:61;;9231:2;9220:9;9216:18;9203:32;9193:42;;9288:3;9277:9;9273:19;9260:33;9244:49;;9318:2;9308:8;9305:16;9302:36;;;9334:1;9331;9324:12;9302:36;9357:51;9400:7;9389:8;9378:9;9374:24;9357:51;:::i;:::-;9347:61;;9427:47;9469:3;9458:9;9454:19;9427:47;:::i;:::-;9417:57;;9527:3;9516:9;9512:19;9499:33;9483:49;;9557:2;9547:8;9544:16;9541:36;;;9573:1;9570;9563:12;9541:36;;9596:51;9639:7;9628:8;9617:9;9613:24;9596:51;:::i;:::-;9586:61;;;9666:36;9697:3;9686:9;9682:19;9666:36;:::i;:::-;9656:46;;8474:1234;;;;;;;;;;;:::o;10091:923::-;10208:6;10216;10224;10232;10240;10248;10256;10309:3;10297:9;10288:7;10284:23;10280:33;10277:53;;;10326:1;10323;10316:12;10277:53;10353:23;;-1:-1:-1;;;;;10425:14:32;;;10422:34;;;10452:1;10449;10442:12;10422:34;10491:58;10541:7;10532:6;10521:9;10517:22;10491:58;:::i;:::-;10568:8;;-1:-1:-1;10465:84:32;-1:-1:-1;10650:2:32;10635:18;;10622:32;;-1:-1:-1;10707:2:32;10692:18;;10679:32;;-1:-1:-1;10723:16:32;;;10720:36;;;10752:1;10749;10742:12;10720:36;;10791:60;10843:7;10832:8;10821:9;10817:24;10791:60;:::i;:::-;10091:923;;;;-1:-1:-1;10091:923:32;;10870:8;;10765:86;10952:2;10937:18;;10924:32;;11003:3;10988:19;10975:33;;-1:-1:-1;10091:923:32;-1:-1:-1;;;;10091:923:32:o;11412:448::-;11509:6;11517;11570:2;11558:9;11549:7;11545:23;11541:32;11538:52;;;11586:1;11583;11576:12;11538:52;11613:23;;-1:-1:-1;;;;;11648:30:32;;11645:50;;;11691:1;11688;11681:12;11645:50;11730:70;11792:7;11783:6;11772:9;11768:22;11730:70;:::i;11865:1043::-;12002:6;12010;12018;12026;12034;12042;12095:2;12083:9;12074:7;12070:23;12066:32;12063:52;;;12111:1;12108;12101:12;12063:52;12138:23;;-1:-1:-1;;;;;12210:14:32;;;12207:34;;;12237:1;12234;12227:12;12207:34;12276:58;12326:7;12317:6;12306:9;12302:22;12276:58;:::i;:::-;12353:8;;-1:-1:-1;12250:84:32;-1:-1:-1;12441:2:32;12426:18;;12413:32;;-1:-1:-1;12457:16:32;;;12454:36;;;12486:1;12483;12476:12;12454:36;12525:72;12589:7;12578:8;12567:9;12563:24;12525:72;:::i;12913:697::-;13134:3;13172:6;13166:13;13188:66;13247:6;13242:3;13235:4;13227:6;13223:17;13188:66;:::i;:::-;13317:13;;13276:16;;;;13339:70;13317:13;13276:16;13386:4;13374:17;;13339:70;:::i;:::-;13476:13;;13431:20;;;13498:70;13476:13;13431:20;13545:4;13533:17;;13498:70;:::i;:::-;13584:20;;12913:697;-1:-1:-1;;;;;12913:697:32:o;13615:380::-;13694:1;13690:12;;;;13737;;;13758:61;;13812:4;13804:6;13800:17;13790:27;;13758:61;13865:2;13857:6;13854:14;13834:18;13831:38;13828:161;;13911:10;13906:3;13902:20;13899:1;13892:31;13946:4;13943:1;13936:15;13974:4;13971:1;13964:15;13828:161;;13615:380;;;:::o;14125:544::-;14226:2;14221:3;14218:11;14215:448;;;14262:1;14287:5;14283:2;14276:17;14332:4;14328:2;14318:19;14402:2;14390:10;14386:19;14383:1;14379:27;14373:4;14369:38;14438:4;14426:10;14423:20;14420:47;;;-1:-1:-1;14461:4:32;14420:47;14516:2;14511:3;14507:12;14504:1;14500:20;14494:4;14490:31;14480:41;;14571:82;14589:2;14582:5;14579:13;14571:82;;;14634:17;;;14615:1;14604:13;14571:82;;14845:1348;14963:10;;-1:-1:-1;;;;;14985:30:32;;14982:56;;;15018:18;;:::i;:::-;15047:96;15136:6;15096:38;15128:4;15122:11;15096:38;:::i;:::-;15090:4;15047:96;:::i;:::-;15198:4;;15262:2;15251:14;;15279:1;15274:662;;;;15980:1;15997:6;15994:89;;;-1:-1:-1;16049:19:32;;;16043:26;15994:89;-1:-1:-1;;14802:1:32;14798:11;;;14794:24;14790:29;14780:40;14826:1;14822:11;;;14777:57;16096:81;;15244:943;;15274:662;14072:1;14065:14;;;14109:4;14096:18;;-1:-1:-1;;15310:20:32;;;15427:236;15441:7;15438:1;15435:14;15427:236;;;15530:19;;;15524:26;15509:42;;15622:27;;;;15590:1;15578:14;;;;15457:19;;15427:236;;;15431:3;15691:6;15682:7;15679:19;15676:201;;;15752:19;;;15746:26;-1:-1:-1;;15835:1:32;15831:14;;;15847:3;15827:24;15823:37;15819:42;15804:58;15789:74;;15676:201;-1:-1:-1;;;;;15923:1:32;15907:14;;;15903:22;15890:36;;-1:-1:-1;14845:1348:32:o", "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nimport \"./Bridge.sol\";\n\ncontract BridgeMock is Bridge {\n\n mapping(bytes32 => uint256) private amounts;\n mapping(uint256 => bytes) private headers;\n mapping (bytes32 => bytes) private headersByHash;\n\n receive() external payable override {}\n function registerFastBridgeBtcTransaction(\n bytes memory , \n uint256 , \n bytes memory, \n bytes32 derivationArgumentsHash, \n bytes memory, \n address payable liquidityBridgeContractAddress,\n bytes memory , \n bool \n ) external override returns (int256) {\n uint256 amount = amounts[derivationArgumentsHash];\n amounts[derivationArgumentsHash] = 0;\n (bool success, ) = liquidityBridgeContractAddress.call{value: amount}(\"\");\n require(success, \"Sending funds failed\");\n return int(amount);\n }\n\n function getBtcBlockchainBlockHeaderByHeight(uint256 height) external view override returns (bytes memory) {\n return headers[height];\n }\n\n function setPegin(bytes32 derivationArgumentsHash) public payable {\n amounts[derivationArgumentsHash] = msg.value;\n }\n\n function setHeader(uint256 height, bytes memory header) public {\n headers[height] = header;\n }\n\n function setHeaderByHash(bytes32 blockHash, bytes memory header) public {\n headersByHash[blockHash] = header;\n }\n\n function getActivePowpegRedeemScript() external pure returns (bytes memory) {\n bytes memory part1 = hex\"522102cd53fc53a07f211641a677d250f6de99caf620e8e77071e811a28b3bcddf0be1210362634ab5\";\n bytes memory part2 = hex\"7dae9cb373a5d536e66a8c4f67468bbcfb063809bab643072d78a1242103c5946b3fbae03a654237da86\";\n bytes memory part3 = hex\"3c9ed534e0878657175b132b8ca630f245df04db53ae\";\n return abi.encodePacked(part1, part2, part3);\n }\n\n function getBtcBlockchainBestChainHeight ( ) external pure override returns (int) {return 0;}\n function getStateForBtcReleaseClient ( ) external pure override returns (bytes memory) {bytes memory b; return b;}\n function getStateForDebugging ( ) external pure override returns (bytes memory) {bytes memory b; return b;}\n function getBtcBlockchainInitialBlockHeight ( ) external pure override returns (int) {return int(0);}\n function getBtcBlockchainBlockHashAtDepth ( int256 ) external pure override returns\n (bytes memory) {bytes memory b; return b;}\n function getBtcTxHashProcessedHeight ( string calldata ) external pure override returns (int64) {return int64(0);}\n function isBtcTxHashAlreadyProcessed ( string calldata ) external pure override returns (bool) {return false;}\n function getFederationAddress ( ) external pure override returns (string memory)\n {return \"2N5muMepJizJE1gR7FbHJU6CD18V3BpNF9p\";} // regtest genesis fed addr\n function registerBtcTransaction ( bytes calldata atx, int256 height, bytes calldata pmt ) external override {}\n function addSignature ( bytes calldata pubkey, bytes[] calldata signatures, bytes calldata txhash )\n external override {}\n function receiveHeaders ( bytes[] calldata blocks ) external override {}\n function receiveHeader ( bytes calldata ) external pure override returns (int256) {return int256(0);}\n function getFederationSize ( ) external pure override returns (int256) {return int256(0);}\n function getFederationThreshold ( ) external pure override returns (int256) {return int256(0);}\n function getFederatorPublicKey ( int256 ) external pure override returns (bytes memory)\n {bytes memory b; return b;}\n function getFederatorPublicKeyOfType ( int256, string calldata ) external pure\n override returns (bytes memory) {bytes memory b; return b;}\n function getFederationCreationTime ( ) external pure override returns (int256) {return int256(0);}\n function getFederationCreationBlockNumber ( ) external pure override returns (int256) {return int256(0);}\n function getRetiringFederationAddress ( ) external pure override returns (string memory) {return \"\";}\n function getRetiringFederationSize ( ) external override pure returns (int256) {return int256(0);}\n function getRetiringFederationThreshold ( ) external override pure returns (int256) {return int256(0);}\n function getRetiringFederatorPublicKey ( int256 ) external override pure returns (bytes memory)\n {bytes memory b; return b;}\n function getRetiringFederatorPublicKeyOfType ( int256,string calldata ) external pure override\n returns (bytes memory) {bytes memory b; return b;}\n function getRetiringFederationCreationTime ( ) external pure override returns (int256) {return int256(0);}\n function getRetiringFederationCreationBlockNumber ( ) external override pure returns\n (int256) {return int256(0);}\n function createFederation ( ) external pure override returns (int256) {return int256(0);}\n function addFederatorPublicKey ( bytes calldata ) external pure override returns (int256)\n {return int256(0);}\n function addFederatorPublicKeyMultikey ( bytes calldata , bytes calldata , bytes calldata )\n external pure override returns (int256) {return int256(0);}\n function commitFederation ( bytes calldata ) external pure override returns (int256) {return int256(0);}\n function rollbackFederation ( ) external pure override returns (int256) {return int256(0);}\n function getPendingFederationHash ( ) external pure override returns (bytes memory) {bytes memory b; return b;}\n function getPendingFederationSize ( ) external pure override returns (int256) {return int256(0);}\n function getPendingFederatorPublicKey ( int256 ) external pure override returns (bytes memory)\n {bytes memory b; return b;}\n function getPendingFederatorPublicKeyOfType ( int256 , string calldata ) external pure override\n returns (bytes memory) {bytes memory b; return b;}\n function getLockWhitelistSize ( ) external pure override returns (int256) {return int256(0);}\n function getLockWhitelistAddress ( int256 ) external pure override returns (string memory) {return \"\";}\n function getLockWhitelistEntryByAddress ( string calldata ) external pure override returns (int256)\n {return int256(0);}\n function addLockWhitelistAddress ( string calldata , int256 ) external pure override returns (int256)\n {return int256(0);}\n function addOneOffLockWhitelistAddress ( string calldata , int256 ) external pure override returns\n (int256) {return int256(0);}\n function addUnlimitedLockWhitelistAddress ( string calldata ) external pure override returns (int256)\n {return int256(0);}\n function removeLockWhitelistAddress ( string calldata ) external pure override returns (int256)\n {return int256(0);}\n function setLockWhitelistDisableBlockDelay ( int256 ) external pure override returns (int256)\n {return int256(0);}\n function getFeePerKb ( ) external pure override returns (int256) {return int256(0);}\n function voteFeePerKbChange ( int256 ) external pure override returns (int256) {return int256(0);}\n function updateCollections ( ) external override {}\n function getMinimumLockTxValue ( ) external pure override returns (int256) {return int256(2);}\n function getBtcTransactionConfirmations ( bytes32 , bytes32, uint256 , bytes32[] calldata )\n external pure override returns (int256) {return int256(0);}\n function getLockingCap ( ) external pure override returns (int256) {return int256(0);}\n function increaseLockingCap ( int256 ) external pure override returns (bool) {return false;}\n function registerBtcCoinbaseTransaction ( bytes calldata btcTxSerialized, bytes32 blockHash, bytes\n calldata pmtSerialized, bytes32 witnessMerkleRoot, bytes32 witnessReservedValue ) external override {}\n function hasBtcBlockCoinbaseTransactionInformation ( bytes32 ) external pure override returns\n (bool) {return false;}\n function getActiveFederationCreationBlockHeight ( ) external pure override returns (uint256)\n {return uint256(0);}\n function getBtcBlockchainBestBlockHeader ( ) external pure override returns (bytes memory)\n {bytes memory b; return b;}\n\n function getBtcBlockchainBlockHeaderByHash(\n bytes32 blockHash\n ) external view override returns (bytes memory) {\n return headersByHash[blockHash];\n }\n\n function getBtcBlockchainParentBlockHeaderByHash ( bytes32) external pure override returns\n (bytes memory) {bytes memory b; return b;}\n \n}\n", - "sourcePath": "/Users/guilhermesoares/WebstormProjects/Rootstock/liquidity-bridge-contract/contracts/BridgeMock.sol", + "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/BridgeMock.sol", "ast": { "absolutePath": "project:/contracts/BridgeMock.sol", "exportedSymbols": { "Bridge": [ - 3652 + 4173 ], "BridgeMock": [ - 4510 + 5031 ] }, - "id": 4511, + "id": 5032, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 3654, + "id": 4175, "literals": [ "solidity", "^", @@ -13947,11 +13947,11 @@ { "absolutePath": "project:/contracts/Bridge.sol", "file": "./Bridge.sol", - "id": 3655, + "id": 4176, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 4511, - "sourceUnit": 3653, + "scope": 5032, + "sourceUnit": 4174, "src": "58:22:20", "symbolAliases": [], "unitAlias": "" @@ -13961,16 +13961,16 @@ "baseContracts": [ { "baseName": { - "id": 3656, + "id": 4177, "name": "Bridge", "nameLocations": [ "105:6:20" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 3652, + "referencedDeclaration": 4173, "src": "105:6:20" }, - "id": 3657, + "id": 4178, "nodeType": "InheritanceSpecifier", "src": "105:6:20" } @@ -13979,10 +13979,10 @@ "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, - "id": 4510, + "id": 5031, "linearizedBaseContracts": [ - 4510, - 3652 + 5031, + 4173 ], "name": "BridgeMock", "nameLocation": "91:10:20", @@ -13990,12 +13990,12 @@ "nodes": [ { "constant": false, - "id": 3661, + "id": 4182, "mutability": "mutable", "name": "amounts", "nameLocation": "155:7:20", "nodeType": "VariableDeclaration", - "scope": 4510, + "scope": 5031, "src": "119:43:20", "stateVariable": true, "storageLocation": "default", @@ -14004,11 +14004,11 @@ "typeString": "mapping(bytes32 => uint256)" }, "typeName": { - "id": 3660, + "id": 4181, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 3658, + "id": 4179, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "127:7:20", @@ -14026,7 +14026,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 3659, + "id": 4180, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "138:7:20", @@ -14040,12 +14040,12 @@ }, { "constant": false, - "id": 3665, + "id": 4186, "mutability": "mutable", "name": "headers", "nameLocation": "202:7:20", "nodeType": "VariableDeclaration", - "scope": 4510, + "scope": 5031, "src": "168:41:20", "stateVariable": true, "storageLocation": "default", @@ -14054,11 +14054,11 @@ "typeString": "mapping(uint256 => bytes)" }, "typeName": { - "id": 3664, + "id": 4185, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 3662, + "id": 4183, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "176:7:20", @@ -14076,7 +14076,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 3663, + "id": 4184, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "187:5:20", @@ -14090,12 +14090,12 @@ }, { "constant": false, - "id": 3669, + "id": 4190, "mutability": "mutable", "name": "headersByHash", "nameLocation": "250:13:20", "nodeType": "VariableDeclaration", - "scope": 4510, + "scope": 5031, "src": "215:48:20", "stateVariable": true, "storageLocation": "default", @@ -14104,11 +14104,11 @@ "typeString": "mapping(bytes32 => bytes)" }, "typeName": { - "id": 3668, + "id": 4189, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 3666, + "id": 4187, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "224:7:20", @@ -14126,7 +14126,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 3667, + "id": 4188, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "235:5:20", @@ -14140,15 +14140,15 @@ }, { "baseFunctions": [ - 3254 + 3775 ], "body": { - "id": 3673, + "id": 4194, "nodeType": "Block", "src": "306:2:20", "statements": [] }, - "id": 3674, + "id": 4195, "implemented": true, "kind": "receive", "modifiers": [], @@ -14156,24 +14156,24 @@ "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "overrides": { - "id": 3671, + "id": 4192, "nodeType": "OverrideSpecifier", "overrides": [], "src": "297:8:20" }, "parameters": { - "id": 3670, + "id": 4191, "nodeType": "ParameterList", "parameters": [], "src": "277:2:20" }, "returnParameters": { - "id": 3672, + "id": 4193, "nodeType": "ParameterList", "parameters": [], "src": "306:0:20" }, - "scope": 4510, + "scope": 5031, "src": "270:38:20", "stateMutability": "payable", "virtual": false, @@ -14181,26 +14181,26 @@ }, { "baseFunctions": [ - 3615 + 4136 ], "body": { - "id": 3727, + "id": 4248, "nodeType": "Block", "src": "622:273:20", "statements": [ { "assignments": [ - 3697 + 4218 ], "declarations": [ { "constant": false, - "id": 3697, + "id": 4218, "mutability": "mutable", "name": "amount", "nameLocation": "640:6:20", "nodeType": "VariableDeclaration", - "scope": 3727, + "scope": 4248, "src": "632:14:20", "stateVariable": false, "storageLocation": "default", @@ -14209,7 +14209,7 @@ "typeString": "uint256" }, "typeName": { - "id": 3696, + "id": 4217, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "632:7:20", @@ -14221,27 +14221,27 @@ "visibility": "internal" } ], - "id": 3701, + "id": 4222, "initialValue": { "baseExpression": { - "id": 3698, + "id": 4219, "name": "amounts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3661, + "referencedDeclaration": 4182, "src": "649:7:20", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 3700, + "id": 4221, "indexExpression": { - "id": 3699, + "id": 4220, "name": "derivationArgumentsHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3682, + "referencedDeclaration": 4203, "src": "657:23:20", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -14264,31 +14264,31 @@ }, { "expression": { - "id": 3706, + "id": 4227, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 3702, + "id": 4223, "name": "amounts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3661, + "referencedDeclaration": 4182, "src": "691:7:20", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 3704, + "id": 4225, "indexExpression": { - "id": 3703, + "id": 4224, "name": "derivationArgumentsHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3682, + "referencedDeclaration": 4203, "src": "699:23:20", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -14310,7 +14310,7 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 3705, + "id": 4226, "isConstant": false, "isLValue": false, "isPure": true, @@ -14330,24 +14330,24 @@ "typeString": "uint256" } }, - "id": 3707, + "id": 4228, "nodeType": "ExpressionStatement", "src": "691:36:20" }, { "assignments": [ - 3709, + 4230, null ], "declarations": [ { "constant": false, - "id": 3709, + "id": 4230, "mutability": "mutable", "name": "success", "nameLocation": "743:7:20", "nodeType": "VariableDeclaration", - "scope": 3727, + "scope": 4248, "src": "738:12:20", "stateVariable": false, "storageLocation": "default", @@ -14356,7 +14356,7 @@ "typeString": "bool" }, "typeName": { - "id": 3708, + "id": 4229, "name": "bool", "nodeType": "ElementaryTypeName", "src": "738:4:20", @@ -14369,12 +14369,12 @@ }, null ], - "id": 3716, + "id": 4237, "initialValue": { "arguments": [ { "hexValue": "", - "id": 3714, + "id": 4235, "isConstant": false, "isLValue": false, "isPure": true, @@ -14404,18 +14404,18 @@ } ], "expression": { - "id": 3710, + "id": 4231, "name": "liquidityBridgeContractAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3686, + "referencedDeclaration": 4207, "src": "756:30:20", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "id": 3711, + "id": 4232, "isConstant": false, "isLValue": false, "isPure": false, @@ -14429,7 +14429,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 3713, + "id": 4234, "isConstant": false, "isLValue": false, "isPure": false, @@ -14440,11 +14440,11 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 3712, + "id": 4233, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3697, + "referencedDeclaration": 4218, "src": "799:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14458,7 +14458,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 3715, + "id": 4236, "isConstant": false, "isLValue": false, "isPure": false, @@ -14481,11 +14481,11 @@ "expression": { "arguments": [ { - "id": 3718, + "id": 4239, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3709, + "referencedDeclaration": 4230, "src": "828:7:20", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -14494,7 +14494,7 @@ }, { "hexValue": "53656e64696e672066756e6473206661696c6564", - "id": 3719, + "id": 4240, "isConstant": false, "isLValue": false, "isPure": true, @@ -14520,7 +14520,7 @@ "typeString": "literal_string \"Sending funds failed\"" } ], - "id": 3717, + "id": 4238, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -14534,7 +14534,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 3720, + "id": 4241, "isConstant": false, "isLValue": false, "isPure": false, @@ -14550,7 +14550,7 @@ "typeString": "tuple()" } }, - "id": 3721, + "id": 4242, "nodeType": "ExpressionStatement", "src": "820:40:20" }, @@ -14558,11 +14558,11 @@ "expression": { "arguments": [ { - "id": 3724, + "id": 4245, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3697, + "referencedDeclaration": 4218, "src": "881:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14577,7 +14577,7 @@ "typeString": "uint256" } ], - "id": 3723, + "id": 4244, "isConstant": false, "isLValue": false, "isPure": true, @@ -14589,14 +14589,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 3722, + "id": 4243, "name": "int", "nodeType": "ElementaryTypeName", "src": "877:3:20", "typeDescriptions": {} } }, - "id": 3725, + "id": 4246, "isConstant": false, "isLValue": false, "isPure": false, @@ -14612,15 +14612,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 3695, - "id": 3726, + "functionReturnParameters": 4216, + "id": 4247, "nodeType": "Return", "src": "870:18:20" } ] }, "functionSelector": "6adc0133", - "id": 3728, + "id": 4249, "implemented": true, "kind": "function", "modifiers": [], @@ -14628,23 +14628,23 @@ "nameLocation": "322:32:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3692, + "id": 4213, "nodeType": "OverrideSpecifier", "overrides": [], "src": "596:8:20" }, "parameters": { - "id": 3691, + "id": 4212, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3676, + "id": 4197, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3728, + "scope": 4249, "src": "364:12:20", "stateVariable": false, "storageLocation": "memory", @@ -14653,7 +14653,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3675, + "id": 4196, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "364:5:20", @@ -14666,12 +14666,12 @@ }, { "constant": false, - "id": 3678, + "id": 4199, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3728, + "scope": 4249, "src": "388:7:20", "stateVariable": false, "storageLocation": "default", @@ -14680,7 +14680,7 @@ "typeString": "uint256" }, "typeName": { - "id": 3677, + "id": 4198, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "388:7:20", @@ -14693,12 +14693,12 @@ }, { "constant": false, - "id": 3680, + "id": 4201, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3728, + "scope": 4249, "src": "407:12:20", "stateVariable": false, "storageLocation": "memory", @@ -14707,7 +14707,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3679, + "id": 4200, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "407:5:20", @@ -14720,12 +14720,12 @@ }, { "constant": false, - "id": 3682, + "id": 4203, "mutability": "mutable", "name": "derivationArgumentsHash", "nameLocation": "438:23:20", "nodeType": "VariableDeclaration", - "scope": 3728, + "scope": 4249, "src": "430:31:20", "stateVariable": false, "storageLocation": "default", @@ -14734,7 +14734,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 3681, + "id": 4202, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "430:7:20", @@ -14747,12 +14747,12 @@ }, { "constant": false, - "id": 3684, + "id": 4205, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3728, + "scope": 4249, "src": "472:12:20", "stateVariable": false, "storageLocation": "memory", @@ -14761,7 +14761,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3683, + "id": 4204, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "472:5:20", @@ -14774,12 +14774,12 @@ }, { "constant": false, - "id": 3686, + "id": 4207, "mutability": "mutable", "name": "liquidityBridgeContractAddress", "nameLocation": "511:30:20", "nodeType": "VariableDeclaration", - "scope": 3728, + "scope": 4249, "src": "495:46:20", "stateVariable": false, "storageLocation": "default", @@ -14788,7 +14788,7 @@ "typeString": "address payable" }, "typeName": { - "id": 3685, + "id": 4206, "name": "address", "nodeType": "ElementaryTypeName", "src": "495:15:20", @@ -14802,12 +14802,12 @@ }, { "constant": false, - "id": 3688, + "id": 4209, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3728, + "scope": 4249, "src": "551:12:20", "stateVariable": false, "storageLocation": "memory", @@ -14816,7 +14816,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3687, + "id": 4208, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "551:5:20", @@ -14829,12 +14829,12 @@ }, { "constant": false, - "id": 3690, + "id": 4211, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3728, + "scope": 4249, "src": "575:4:20", "stateVariable": false, "storageLocation": "default", @@ -14843,7 +14843,7 @@ "typeString": "bool" }, "typeName": { - "id": 3689, + "id": 4210, "name": "bool", "nodeType": "ElementaryTypeName", "src": "575:4:20", @@ -14858,17 +14858,17 @@ "src": "354:232:20" }, "returnParameters": { - "id": 3695, + "id": 4216, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3694, + "id": 4215, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3728, + "scope": 4249, "src": "614:6:20", "stateVariable": false, "storageLocation": "default", @@ -14877,7 +14877,7 @@ "typeString": "int256" }, "typeName": { - "id": 3693, + "id": 4214, "name": "int256", "nodeType": "ElementaryTypeName", "src": "614:6:20", @@ -14891,7 +14891,7 @@ ], "src": "613:8:20" }, - "scope": 4510, + "scope": 5031, "src": "313:582:20", "stateMutability": "nonpayable", "virtual": false, @@ -14899,34 +14899,34 @@ }, { "baseFunctions": [ - 3644 + 4165 ], "body": { - "id": 3740, + "id": 4261, "nodeType": "Block", "src": "1008:39:20", "statements": [ { "expression": { "baseExpression": { - "id": 3736, + "id": 4257, "name": "headers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3665, + "referencedDeclaration": 4186, "src": "1025:7:20", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", "typeString": "mapping(uint256 => bytes storage ref)" } }, - "id": 3738, + "id": 4259, "indexExpression": { - "id": 3737, + "id": 4258, "name": "height", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3730, + "referencedDeclaration": 4251, "src": "1033:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14944,15 +14944,15 @@ "typeString": "bytes storage ref" } }, - "functionReturnParameters": 3735, - "id": 3739, + "functionReturnParameters": 4256, + "id": 4260, "nodeType": "Return", "src": "1018:22:20" } ] }, "functionSelector": "bd0c1fff", - "id": 3741, + "id": 4262, "implemented": true, "kind": "function", "modifiers": [], @@ -14960,23 +14960,23 @@ "nameLocation": "910:35:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3732, + "id": 4253, "nodeType": "OverrideSpecifier", "overrides": [], "src": "976:8:20" }, "parameters": { - "id": 3731, + "id": 4252, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3730, + "id": 4251, "mutability": "mutable", "name": "height", "nameLocation": "954:6:20", "nodeType": "VariableDeclaration", - "scope": 3741, + "scope": 4262, "src": "946:14:20", "stateVariable": false, "storageLocation": "default", @@ -14985,7 +14985,7 @@ "typeString": "uint256" }, "typeName": { - "id": 3729, + "id": 4250, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "946:7:20", @@ -15000,17 +15000,17 @@ "src": "945:16:20" }, "returnParameters": { - "id": 3735, + "id": 4256, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3734, + "id": 4255, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3741, + "scope": 4262, "src": "994:12:20", "stateVariable": false, "storageLocation": "memory", @@ -15019,7 +15019,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3733, + "id": 4254, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "994:5:20", @@ -15033,7 +15033,7 @@ ], "src": "993:14:20" }, - "scope": 4510, + "scope": 5031, "src": "901:146:20", "stateMutability": "view", "virtual": false, @@ -15041,37 +15041,37 @@ }, { "body": { - "id": 3753, + "id": 4274, "nodeType": "Block", "src": "1119:61:20", "statements": [ { "expression": { - "id": 3751, + "id": 4272, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 3746, + "id": 4267, "name": "amounts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3661, + "referencedDeclaration": 4182, "src": "1129:7:20", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 3748, + "id": 4269, "indexExpression": { - "id": 3747, + "id": 4268, "name": "derivationArgumentsHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3743, + "referencedDeclaration": 4264, "src": "1137:23:20", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -15093,7 +15093,7 @@ "operator": "=", "rightHandSide": { "expression": { - "id": 3749, + "id": 4270, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -15104,7 +15104,7 @@ "typeString": "msg" } }, - "id": 3750, + "id": 4271, "isConstant": false, "isLValue": false, "isPure": false, @@ -15124,14 +15124,14 @@ "typeString": "uint256" } }, - "id": 3752, + "id": 4273, "nodeType": "ExpressionStatement", "src": "1129:44:20" } ] }, "functionSelector": "10d86efd", - "id": 3754, + "id": 4275, "implemented": true, "kind": "function", "modifiers": [], @@ -15139,17 +15139,17 @@ "nameLocation": "1062:8:20", "nodeType": "FunctionDefinition", "parameters": { - "id": 3744, + "id": 4265, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3743, + "id": 4264, "mutability": "mutable", "name": "derivationArgumentsHash", "nameLocation": "1079:23:20", "nodeType": "VariableDeclaration", - "scope": 3754, + "scope": 4275, "src": "1071:31:20", "stateVariable": false, "storageLocation": "default", @@ -15158,7 +15158,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 3742, + "id": 4263, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1071:7:20", @@ -15173,12 +15173,12 @@ "src": "1070:33:20" }, "returnParameters": { - "id": 3745, + "id": 4266, "nodeType": "ParameterList", "parameters": [], "src": "1119:0:20" }, - "scope": 4510, + "scope": 5031, "src": "1053:127:20", "stateMutability": "payable", "virtual": false, @@ -15186,37 +15186,37 @@ }, { "body": { - "id": 3767, + "id": 4288, "nodeType": "Block", "src": "1249:41:20", "statements": [ { "expression": { - "id": 3765, + "id": 4286, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 3761, + "id": 4282, "name": "headers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3665, + "referencedDeclaration": 4186, "src": "1259:7:20", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", "typeString": "mapping(uint256 => bytes storage ref)" } }, - "id": 3763, + "id": 4284, "indexExpression": { - "id": 3762, + "id": 4283, "name": "height", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3756, + "referencedDeclaration": 4277, "src": "1267:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -15237,11 +15237,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 3764, + "id": 4285, "name": "header", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3758, + "referencedDeclaration": 4279, "src": "1277:6:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -15254,14 +15254,14 @@ "typeString": "bytes storage ref" } }, - "id": 3766, + "id": 4287, "nodeType": "ExpressionStatement", "src": "1259:24:20" } ] }, "functionSelector": "572de37b", - "id": 3768, + "id": 4289, "implemented": true, "kind": "function", "modifiers": [], @@ -15269,17 +15269,17 @@ "nameLocation": "1195:9:20", "nodeType": "FunctionDefinition", "parameters": { - "id": 3759, + "id": 4280, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3756, + "id": 4277, "mutability": "mutable", "name": "height", "nameLocation": "1213:6:20", "nodeType": "VariableDeclaration", - "scope": 3768, + "scope": 4289, "src": "1205:14:20", "stateVariable": false, "storageLocation": "default", @@ -15288,7 +15288,7 @@ "typeString": "uint256" }, "typeName": { - "id": 3755, + "id": 4276, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1205:7:20", @@ -15301,12 +15301,12 @@ }, { "constant": false, - "id": 3758, + "id": 4279, "mutability": "mutable", "name": "header", "nameLocation": "1234:6:20", "nodeType": "VariableDeclaration", - "scope": 3768, + "scope": 4289, "src": "1221:19:20", "stateVariable": false, "storageLocation": "memory", @@ -15315,7 +15315,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3757, + "id": 4278, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1221:5:20", @@ -15330,12 +15330,12 @@ "src": "1204:37:20" }, "returnParameters": { - "id": 3760, + "id": 4281, "nodeType": "ParameterList", "parameters": [], "src": "1249:0:20" }, - "scope": 4510, + "scope": 5031, "src": "1186:104:20", "stateMutability": "nonpayable", "virtual": false, @@ -15343,37 +15343,37 @@ }, { "body": { - "id": 3781, + "id": 4302, "nodeType": "Block", "src": "1368:50:20", "statements": [ { "expression": { - "id": 3779, + "id": 4300, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 3775, + "id": 4296, "name": "headersByHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3669, + "referencedDeclaration": 4190, "src": "1378:13:20", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", "typeString": "mapping(bytes32 => bytes storage ref)" } }, - "id": 3777, + "id": 4298, "indexExpression": { - "id": 3776, + "id": 4297, "name": "blockHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3770, + "referencedDeclaration": 4291, "src": "1392:9:20", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -15394,11 +15394,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 3778, + "id": 4299, "name": "header", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3772, + "referencedDeclaration": 4293, "src": "1405:6:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -15411,14 +15411,14 @@ "typeString": "bytes storage ref" } }, - "id": 3780, + "id": 4301, "nodeType": "ExpressionStatement", "src": "1378:33:20" } ] }, "functionSelector": "d5949890", - "id": 3782, + "id": 4303, "implemented": true, "kind": "function", "modifiers": [], @@ -15426,17 +15426,17 @@ "nameLocation": "1305:15:20", "nodeType": "FunctionDefinition", "parameters": { - "id": 3773, + "id": 4294, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3770, + "id": 4291, "mutability": "mutable", "name": "blockHash", "nameLocation": "1329:9:20", "nodeType": "VariableDeclaration", - "scope": 3782, + "scope": 4303, "src": "1321:17:20", "stateVariable": false, "storageLocation": "default", @@ -15445,7 +15445,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 3769, + "id": 4290, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1321:7:20", @@ -15458,12 +15458,12 @@ }, { "constant": false, - "id": 3772, + "id": 4293, "mutability": "mutable", "name": "header", "nameLocation": "1353:6:20", "nodeType": "VariableDeclaration", - "scope": 3782, + "scope": 4303, "src": "1340:19:20", "stateVariable": false, "storageLocation": "memory", @@ -15472,7 +15472,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3771, + "id": 4292, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1340:5:20", @@ -15487,12 +15487,12 @@ "src": "1320:40:20" }, "returnParameters": { - "id": 3774, + "id": 4295, "nodeType": "ParameterList", "parameters": [], "src": "1368:0:20" }, - "scope": 4510, + "scope": 5031, "src": "1296:122:20", "stateMutability": "nonpayable", "virtual": false, @@ -15500,26 +15500,26 @@ }, { "baseFunctions": [ - 3625 + 4146 ], "body": { - "id": 3806, + "id": 4327, "nodeType": "Block", "src": "1500:379:20", "statements": [ { "assignments": [ - 3788 + 4309 ], "declarations": [ { "constant": false, - "id": 3788, + "id": 4309, "mutability": "mutable", "name": "part1", "nameLocation": "1523:5:20", "nodeType": "VariableDeclaration", - "scope": 3806, + "scope": 4327, "src": "1510:18:20", "stateVariable": false, "storageLocation": "memory", @@ -15528,7 +15528,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3787, + "id": 4308, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1510:5:20", @@ -15540,10 +15540,10 @@ "visibility": "internal" } ], - "id": 3790, + "id": 4311, "initialValue": { "hexValue": "522102cd53fc53a07f211641a677d250f6de99caf620e8e77071e811a28b3bcddf0be1210362634ab5", - "id": 3789, + "id": 4310, "isConstant": false, "isLValue": false, "isPure": true, @@ -15561,17 +15561,17 @@ }, { "assignments": [ - 3792 + 4313 ], "declarations": [ { "constant": false, - "id": 3792, + "id": 4313, "mutability": "mutable", "name": "part2", "nameLocation": "1641:5:20", "nodeType": "VariableDeclaration", - "scope": 3806, + "scope": 4327, "src": "1628:18:20", "stateVariable": false, "storageLocation": "memory", @@ -15580,7 +15580,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3791, + "id": 4312, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1628:5:20", @@ -15592,10 +15592,10 @@ "visibility": "internal" } ], - "id": 3794, + "id": 4315, "initialValue": { "hexValue": "7dae9cb373a5d536e66a8c4f67468bbcfb063809bab643072d78a1242103c5946b3fbae03a654237da86", - "id": 3793, + "id": 4314, "isConstant": false, "isLValue": false, "isPure": true, @@ -15613,17 +15613,17 @@ }, { "assignments": [ - 3796 + 4317 ], "declarations": [ { "constant": false, - "id": 3796, + "id": 4317, "mutability": "mutable", "name": "part3", "nameLocation": "1761:5:20", "nodeType": "VariableDeclaration", - "scope": 3806, + "scope": 4327, "src": "1748:18:20", "stateVariable": false, "storageLocation": "memory", @@ -15632,7 +15632,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3795, + "id": 4316, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1748:5:20", @@ -15644,10 +15644,10 @@ "visibility": "internal" } ], - "id": 3798, + "id": 4319, "initialValue": { "hexValue": "3c9ed534e0878657175b132b8ca630f245df04db53ae", - "id": 3797, + "id": 4318, "isConstant": false, "isLValue": false, "isPure": true, @@ -15667,11 +15667,11 @@ "expression": { "arguments": [ { - "id": 3801, + "id": 4322, "name": "part1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3788, + "referencedDeclaration": 4309, "src": "1852:5:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -15679,11 +15679,11 @@ } }, { - "id": 3802, + "id": 4323, "name": "part2", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3792, + "referencedDeclaration": 4313, "src": "1859:5:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -15691,11 +15691,11 @@ } }, { - "id": 3803, + "id": 4324, "name": "part3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3796, + "referencedDeclaration": 4317, "src": "1866:5:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -15719,7 +15719,7 @@ } ], "expression": { - "id": 3799, + "id": 4320, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -15730,7 +15730,7 @@ "typeString": "abi" } }, - "id": 3800, + "id": 4321, "isConstant": false, "isLValue": false, "isPure": true, @@ -15744,7 +15744,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 3804, + "id": 4325, "isConstant": false, "isLValue": false, "isPure": false, @@ -15760,15 +15760,15 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 3786, - "id": 3805, + "functionReturnParameters": 4307, + "id": 4326, "nodeType": "Return", "src": "1828:44:20" } ] }, "functionSelector": "1d73d5dd", - "id": 3807, + "id": 4328, "implemented": true, "kind": "function", "modifiers": [], @@ -15776,23 +15776,23 @@ "nameLocation": "1433:27:20", "nodeType": "FunctionDefinition", "parameters": { - "id": 3783, + "id": 4304, "nodeType": "ParameterList", "parameters": [], "src": "1460:2:20" }, "returnParameters": { - "id": 3786, + "id": 4307, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3785, + "id": 4306, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3807, + "scope": 4328, "src": "1486:12:20", "stateVariable": false, "storageLocation": "memory", @@ -15801,7 +15801,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3784, + "id": 4305, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1486:5:20", @@ -15815,7 +15815,7 @@ ], "src": "1485:14:20" }, - "scope": 4510, + "scope": 5031, "src": "1424:455:20", "stateMutability": "pure", "virtual": false, @@ -15823,17 +15823,17 @@ }, { "baseFunctions": [ - 3259 + 3780 ], "body": { - "id": 3815, + "id": 4336, "nodeType": "Block", "src": "1968:11:20", "statements": [ { "expression": { "hexValue": "30", - "id": 3813, + "id": 4334, "isConstant": false, "isLValue": false, "isPure": true, @@ -15847,15 +15847,15 @@ }, "value": "0" }, - "functionReturnParameters": 3812, - "id": 3814, + "functionReturnParameters": 4333, + "id": 4335, "nodeType": "Return", "src": "1969:8:20" } ] }, "functionSelector": "14c89c01", - "id": 3816, + "id": 4337, "implemented": true, "kind": "function", "modifiers": [], @@ -15863,29 +15863,29 @@ "nameLocation": "1894:31:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3809, + "id": 4330, "nodeType": "OverrideSpecifier", "overrides": [], "src": "1945:8:20" }, "parameters": { - "id": 3808, + "id": 4329, "nodeType": "ParameterList", "parameters": [], "src": "1926:4:20" }, "returnParameters": { - "id": 3812, + "id": 4333, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3811, + "id": 4332, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3816, + "scope": 4337, "src": "1963:3:20", "stateVariable": false, "storageLocation": "default", @@ -15894,7 +15894,7 @@ "typeString": "int256" }, "typeName": { - "id": 3810, + "id": 4331, "name": "int", "nodeType": "ElementaryTypeName", "src": "1963:3:20", @@ -15908,7 +15908,7 @@ ], "src": "1962:5:20" }, - "scope": 4510, + "scope": 5031, "src": "1885:94:20", "stateMutability": "pure", "virtual": false, @@ -15916,26 +15916,26 @@ }, { "baseFunctions": [ - 3264 + 3785 ], "body": { - "id": 3827, + "id": 4348, "nodeType": "Block", "src": "2072:27:20", "statements": [ { "assignments": [ - 3823 + 4344 ], "declarations": [ { "constant": false, - "id": 3823, + "id": 4344, "mutability": "mutable", "name": "b", "nameLocation": "2086:1:20", "nodeType": "VariableDeclaration", - "scope": 3827, + "scope": 4348, "src": "2073:14:20", "stateVariable": false, "storageLocation": "memory", @@ -15944,7 +15944,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3822, + "id": 4343, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2073:5:20", @@ -15956,32 +15956,32 @@ "visibility": "internal" } ], - "id": 3824, + "id": 4345, "nodeType": "VariableDeclarationStatement", "src": "2073:14:20" }, { "expression": { - "id": 3825, + "id": 4346, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3823, + "referencedDeclaration": 4344, "src": "2096:1:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 3821, - "id": 3826, + "functionReturnParameters": 4342, + "id": 4347, "nodeType": "Return", "src": "2089:8:20" } ] }, "functionSelector": "c4fbca20", - "id": 3828, + "id": 4349, "implemented": true, "kind": "function", "modifiers": [], @@ -15989,29 +15989,29 @@ "nameLocation": "1993:27:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3818, + "id": 4339, "nodeType": "OverrideSpecifier", "overrides": [], "src": "2040:8:20" }, "parameters": { - "id": 3817, + "id": 4338, "nodeType": "ParameterList", "parameters": [], "src": "2021:4:20" }, "returnParameters": { - "id": 3821, + "id": 4342, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3820, + "id": 4341, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3828, + "scope": 4349, "src": "2058:12:20", "stateVariable": false, "storageLocation": "memory", @@ -16020,7 +16020,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3819, + "id": 4340, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2058:5:20", @@ -16034,7 +16034,7 @@ ], "src": "2057:14:20" }, - "scope": 4510, + "scope": 5031, "src": "1984:115:20", "stateMutability": "pure", "virtual": false, @@ -16042,26 +16042,26 @@ }, { "baseFunctions": [ - 3269 + 3790 ], "body": { - "id": 3839, + "id": 4360, "nodeType": "Block", "src": "2185:27:20", "statements": [ { "assignments": [ - 3835 + 4356 ], "declarations": [ { "constant": false, - "id": 3835, + "id": 4356, "mutability": "mutable", "name": "b", "nameLocation": "2199:1:20", "nodeType": "VariableDeclaration", - "scope": 3839, + "scope": 4360, "src": "2186:14:20", "stateVariable": false, "storageLocation": "memory", @@ -16070,7 +16070,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3834, + "id": 4355, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2186:5:20", @@ -16082,32 +16082,32 @@ "visibility": "internal" } ], - "id": 3836, + "id": 4357, "nodeType": "VariableDeclarationStatement", "src": "2186:14:20" }, { "expression": { - "id": 3837, + "id": 4358, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3835, + "referencedDeclaration": 4356, "src": "2209:1:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 3833, - "id": 3838, + "functionReturnParameters": 4354, + "id": 4359, "nodeType": "Return", "src": "2202:8:20" } ] }, "functionSelector": "0d0cee93", - "id": 3840, + "id": 4361, "implemented": true, "kind": "function", "modifiers": [], @@ -16115,29 +16115,29 @@ "nameLocation": "2113:20:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3830, + "id": 4351, "nodeType": "OverrideSpecifier", "overrides": [], "src": "2153:8:20" }, "parameters": { - "id": 3829, + "id": 4350, "nodeType": "ParameterList", "parameters": [], "src": "2134:4:20" }, "returnParameters": { - "id": 3833, + "id": 4354, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3832, + "id": 4353, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3840, + "scope": 4361, "src": "2171:12:20", "stateVariable": false, "storageLocation": "memory", @@ -16146,7 +16146,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3831, + "id": 4352, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2171:5:20", @@ -16160,7 +16160,7 @@ ], "src": "2170:14:20" }, - "scope": 4510, + "scope": 5031, "src": "2104:108:20", "stateMutability": "pure", "virtual": false, @@ -16168,10 +16168,10 @@ }, { "baseFunctions": [ - 3274 + 3795 ], "body": { - "id": 3851, + "id": 4372, "nodeType": "Block", "src": "2303:16:20", "statements": [ @@ -16180,7 +16180,7 @@ "arguments": [ { "hexValue": "30", - "id": 3848, + "id": 4369, "isConstant": false, "isLValue": false, "isPure": true, @@ -16202,7 +16202,7 @@ "typeString": "int_const 0" } ], - "id": 3847, + "id": 4368, "isConstant": false, "isLValue": false, "isPure": true, @@ -16214,14 +16214,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 3846, + "id": 4367, "name": "int", "nodeType": "ElementaryTypeName", "src": "2311:3:20", "typeDescriptions": {} } }, - "id": 3849, + "id": 4370, "isConstant": false, "isLValue": false, "isPure": true, @@ -16237,15 +16237,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 3845, - "id": 3850, + "functionReturnParameters": 4366, + "id": 4371, "nodeType": "Return", "src": "2304:13:20" } ] }, "functionSelector": "4897193f", - "id": 3852, + "id": 4373, "implemented": true, "kind": "function", "modifiers": [], @@ -16253,29 +16253,29 @@ "nameLocation": "2226:34:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3842, + "id": 4363, "nodeType": "OverrideSpecifier", "overrides": [], "src": "2280:8:20" }, "parameters": { - "id": 3841, + "id": 4362, "nodeType": "ParameterList", "parameters": [], "src": "2261:4:20" }, "returnParameters": { - "id": 3845, + "id": 4366, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3844, + "id": 4365, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3852, + "scope": 4373, "src": "2298:3:20", "stateVariable": false, "storageLocation": "default", @@ -16284,7 +16284,7 @@ "typeString": "int256" }, "typeName": { - "id": 3843, + "id": 4364, "name": "int", "nodeType": "ElementaryTypeName", "src": "2298:3:20", @@ -16298,7 +16298,7 @@ ], "src": "2297:5:20" }, - "scope": 4510, + "scope": 5031, "src": "2217:102:20", "stateMutability": "pure", "virtual": false, @@ -16306,26 +16306,26 @@ }, { "baseFunctions": [ - 3281 + 3802 ], "body": { - "id": 3865, + "id": 4386, "nodeType": "Block", "src": "2431:27:20", "statements": [ { "assignments": [ - 3861 + 4382 ], "declarations": [ { "constant": false, - "id": 3861, + "id": 4382, "mutability": "mutable", "name": "b", "nameLocation": "2445:1:20", "nodeType": "VariableDeclaration", - "scope": 3865, + "scope": 4386, "src": "2432:14:20", "stateVariable": false, "storageLocation": "memory", @@ -16334,7 +16334,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3860, + "id": 4381, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2432:5:20", @@ -16346,32 +16346,32 @@ "visibility": "internal" } ], - "id": 3862, + "id": 4383, "nodeType": "VariableDeclarationStatement", "src": "2432:14:20" }, { "expression": { - "id": 3863, + "id": 4384, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3861, + "referencedDeclaration": 4382, "src": "2455:1:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 3859, - "id": 3864, + "functionReturnParameters": 4380, + "id": 4385, "nodeType": "Return", "src": "2448:8:20" } ] }, "functionSelector": "efd44418", - "id": 3866, + "id": 4387, "implemented": true, "kind": "function", "modifiers": [], @@ -16379,23 +16379,23 @@ "nameLocation": "2333:32:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3856, + "id": 4377, "nodeType": "OverrideSpecifier", "overrides": [], "src": "2391:8:20" }, "parameters": { - "id": 3855, + "id": 4376, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3854, + "id": 4375, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3866, + "scope": 4387, "src": "2368:6:20", "stateVariable": false, "storageLocation": "default", @@ -16404,7 +16404,7 @@ "typeString": "int256" }, "typeName": { - "id": 3853, + "id": 4374, "name": "int256", "nodeType": "ElementaryTypeName", "src": "2368:6:20", @@ -16419,17 +16419,17 @@ "src": "2366:10:20" }, "returnParameters": { - "id": 3859, + "id": 4380, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3858, + "id": 4379, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3866, + "scope": 4387, "src": "2417:12:20", "stateVariable": false, "storageLocation": "memory", @@ -16438,7 +16438,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3857, + "id": 4378, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2417:5:20", @@ -16452,7 +16452,7 @@ ], "src": "2416:14:20" }, - "scope": 4510, + "scope": 5031, "src": "2324:134:20", "stateMutability": "pure", "virtual": false, @@ -16460,10 +16460,10 @@ }, { "baseFunctions": [ - 3288 + 3809 ], "body": { - "id": 3879, + "id": 4400, "nodeType": "Block", "src": "2559:18:20", "statements": [ @@ -16472,7 +16472,7 @@ "arguments": [ { "hexValue": "30", - "id": 3876, + "id": 4397, "isConstant": false, "isLValue": false, "isPure": true, @@ -16494,7 +16494,7 @@ "typeString": "int_const 0" } ], - "id": 3875, + "id": 4396, "isConstant": false, "isLValue": false, "isPure": true, @@ -16506,14 +16506,14 @@ "typeString": "type(int64)" }, "typeName": { - "id": 3874, + "id": 4395, "name": "int64", "nodeType": "ElementaryTypeName", "src": "2567:5:20", "typeDescriptions": {} } }, - "id": 3877, + "id": 4398, "isConstant": false, "isLValue": false, "isPure": true, @@ -16529,15 +16529,15 @@ "typeString": "int64" } }, - "functionReturnParameters": 3873, - "id": 3878, + "functionReturnParameters": 4394, + "id": 4399, "nodeType": "Return", "src": "2560:15:20" } ] }, "functionSelector": "97fcca7d", - "id": 3880, + "id": 4401, "implemented": true, "kind": "function", "modifiers": [], @@ -16545,23 +16545,23 @@ "nameLocation": "2472:27:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3870, + "id": 4391, "nodeType": "OverrideSpecifier", "overrides": [], "src": "2534:8:20" }, "parameters": { - "id": 3869, + "id": 4390, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3868, + "id": 4389, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3880, + "scope": 4401, "src": "2502:15:20", "stateVariable": false, "storageLocation": "calldata", @@ -16570,7 +16570,7 @@ "typeString": "string" }, "typeName": { - "id": 3867, + "id": 4388, "name": "string", "nodeType": "ElementaryTypeName", "src": "2502:6:20", @@ -16585,17 +16585,17 @@ "src": "2500:19:20" }, "returnParameters": { - "id": 3873, + "id": 4394, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3872, + "id": 4393, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3880, + "scope": 4401, "src": "2552:5:20", "stateVariable": false, "storageLocation": "default", @@ -16604,7 +16604,7 @@ "typeString": "int64" }, "typeName": { - "id": 3871, + "id": 4392, "name": "int64", "nodeType": "ElementaryTypeName", "src": "2552:5:20", @@ -16618,7 +16618,7 @@ ], "src": "2551:7:20" }, - "scope": 4510, + "scope": 5031, "src": "2463:114:20", "stateMutability": "pure", "virtual": false, @@ -16626,17 +16626,17 @@ }, { "baseFunctions": [ - 3295 + 3816 ], "body": { - "id": 3890, + "id": 4411, "nodeType": "Block", "src": "2677:15:20", "statements": [ { "expression": { "hexValue": "66616c7365", - "id": 3888, + "id": 4409, "isConstant": false, "isLValue": false, "isPure": true, @@ -16650,15 +16650,15 @@ }, "value": "false" }, - "functionReturnParameters": 3887, - "id": 3889, + "functionReturnParameters": 4408, + "id": 4410, "nodeType": "Return", "src": "2678:12:20" } ] }, "functionSelector": "248a982d", - "id": 3891, + "id": 4412, "implemented": true, "kind": "function", "modifiers": [], @@ -16666,23 +16666,23 @@ "nameLocation": "2591:27:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3884, + "id": 4405, "nodeType": "OverrideSpecifier", "overrides": [], "src": "2653:8:20" }, "parameters": { - "id": 3883, + "id": 4404, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3882, + "id": 4403, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3891, + "scope": 4412, "src": "2621:15:20", "stateVariable": false, "storageLocation": "calldata", @@ -16691,7 +16691,7 @@ "typeString": "string" }, "typeName": { - "id": 3881, + "id": 4402, "name": "string", "nodeType": "ElementaryTypeName", "src": "2621:6:20", @@ -16706,17 +16706,17 @@ "src": "2619:19:20" }, "returnParameters": { - "id": 3887, + "id": 4408, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3886, + "id": 4407, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3891, + "scope": 4412, "src": "2671:4:20", "stateVariable": false, "storageLocation": "default", @@ -16725,7 +16725,7 @@ "typeString": "bool" }, "typeName": { - "id": 3885, + "id": 4406, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2671:4:20", @@ -16739,7 +16739,7 @@ ], "src": "2670:6:20" }, - "scope": 4510, + "scope": 5031, "src": "2582:110:20", "stateMutability": "pure", "virtual": false, @@ -16747,17 +16747,17 @@ }, { "baseFunctions": [ - 3300 + 3821 ], "body": { - "id": 3899, + "id": 4420, "nodeType": "Block", "src": "2787:47:20", "statements": [ { "expression": { "hexValue": "324e356d754d65704a697a4a45316752374662484a553643443138563342704e463970", - "id": 3897, + "id": 4418, "isConstant": false, "isLValue": false, "isPure": true, @@ -16771,15 +16771,15 @@ }, "value": "2N5muMepJizJE1gR7FbHJU6CD18V3BpNF9p" }, - "functionReturnParameters": 3896, - "id": 3898, + "functionReturnParameters": 4417, + "id": 4419, "nodeType": "Return", "src": "2788:44:20" } ] }, "functionSelector": "6923fa85", - "id": 3900, + "id": 4421, "implemented": true, "kind": "function", "modifiers": [], @@ -16787,29 +16787,29 @@ "nameLocation": "2706:20:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3893, + "id": 4414, "nodeType": "OverrideSpecifier", "overrides": [], "src": "2746:8:20" }, "parameters": { - "id": 3892, + "id": 4413, "nodeType": "ParameterList", "parameters": [], "src": "2727:4:20" }, "returnParameters": { - "id": 3896, + "id": 4417, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3895, + "id": 4416, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3900, + "scope": 4421, "src": "2764:13:20", "stateVariable": false, "storageLocation": "memory", @@ -16818,7 +16818,7 @@ "typeString": "string" }, "typeName": { - "id": 3894, + "id": 4415, "name": "string", "nodeType": "ElementaryTypeName", "src": "2764:6:20", @@ -16832,7 +16832,7 @@ ], "src": "2763:15:20" }, - "scope": 4510, + "scope": 5031, "src": "2697:137:20", "stateMutability": "pure", "virtual": false, @@ -16840,16 +16840,16 @@ }, { "baseFunctions": [ - 3309 + 3830 ], "body": { - "id": 3910, + "id": 4431, "nodeType": "Block", "src": "2975:2:20", "statements": [] }, "functionSelector": "43dc0656", - "id": 3911, + "id": 4432, "implemented": true, "kind": "function", "modifiers": [], @@ -16857,23 +16857,23 @@ "nameLocation": "2876:22:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3908, + "id": 4429, "nodeType": "OverrideSpecifier", "overrides": [], "src": "2966:8:20" }, "parameters": { - "id": 3907, + "id": 4428, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3902, + "id": 4423, "mutability": "mutable", "name": "atx", "nameLocation": "2916:3:20", "nodeType": "VariableDeclaration", - "scope": 3911, + "scope": 4432, "src": "2901:18:20", "stateVariable": false, "storageLocation": "calldata", @@ -16882,7 +16882,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3901, + "id": 4422, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2901:5:20", @@ -16895,12 +16895,12 @@ }, { "constant": false, - "id": 3904, + "id": 4425, "mutability": "mutable", "name": "height", "nameLocation": "2928:6:20", "nodeType": "VariableDeclaration", - "scope": 3911, + "scope": 4432, "src": "2921:13:20", "stateVariable": false, "storageLocation": "default", @@ -16909,7 +16909,7 @@ "typeString": "int256" }, "typeName": { - "id": 3903, + "id": 4424, "name": "int256", "nodeType": "ElementaryTypeName", "src": "2921:6:20", @@ -16922,12 +16922,12 @@ }, { "constant": false, - "id": 3906, + "id": 4427, "mutability": "mutable", "name": "pmt", "nameLocation": "2951:3:20", "nodeType": "VariableDeclaration", - "scope": 3911, + "scope": 4432, "src": "2936:18:20", "stateVariable": false, "storageLocation": "calldata", @@ -16936,7 +16936,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3905, + "id": 4426, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2936:5:20", @@ -16951,12 +16951,12 @@ "src": "2899:57:20" }, "returnParameters": { - "id": 3909, + "id": 4430, "nodeType": "ParameterList", "parameters": [], "src": "2975:0:20" }, - "scope": 4510, + "scope": 5031, "src": "2867:110:20", "stateMutability": "nonpayable", "virtual": false, @@ -16964,16 +16964,16 @@ }, { "baseFunctions": [ - 3319 + 3840 ], "body": { - "id": 3922, + "id": 4443, "nodeType": "Block", "src": "3108:2:20", "statements": [] }, "functionSelector": "f10b9c59", - "id": 3923, + "id": 4444, "implemented": true, "kind": "function", "modifiers": [], @@ -16981,23 +16981,23 @@ "nameLocation": "2991:12:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3920, + "id": 4441, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3099:8:20" }, "parameters": { - "id": 3919, + "id": 4440, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3913, + "id": 4434, "mutability": "mutable", "name": "pubkey", "nameLocation": "3021:6:20", "nodeType": "VariableDeclaration", - "scope": 3923, + "scope": 4444, "src": "3006:21:20", "stateVariable": false, "storageLocation": "calldata", @@ -17006,7 +17006,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3912, + "id": 4433, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3006:5:20", @@ -17019,12 +17019,12 @@ }, { "constant": false, - "id": 3916, + "id": 4437, "mutability": "mutable", "name": "signatures", "nameLocation": "3046:10:20", "nodeType": "VariableDeclaration", - "scope": 3923, + "scope": 4444, "src": "3029:27:20", "stateVariable": false, "storageLocation": "calldata", @@ -17034,7 +17034,7 @@ }, "typeName": { "baseType": { - "id": 3914, + "id": 4435, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3029:5:20", @@ -17043,7 +17043,7 @@ "typeString": "bytes" } }, - "id": 3915, + "id": 4436, "nodeType": "ArrayTypeName", "src": "3029:7:20", "typeDescriptions": { @@ -17055,12 +17055,12 @@ }, { "constant": false, - "id": 3918, + "id": 4439, "mutability": "mutable", "name": "txhash", "nameLocation": "3073:6:20", "nodeType": "VariableDeclaration", - "scope": 3923, + "scope": 4444, "src": "3058:21:20", "stateVariable": false, "storageLocation": "calldata", @@ -17069,7 +17069,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3917, + "id": 4438, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3058:5:20", @@ -17084,12 +17084,12 @@ "src": "3004:77:20" }, "returnParameters": { - "id": 3921, + "id": 4442, "nodeType": "ParameterList", "parameters": [], "src": "3108:0:20" }, - "scope": 4510, + "scope": 5031, "src": "2982:128:20", "stateMutability": "nonpayable", "virtual": false, @@ -17097,16 +17097,16 @@ }, { "baseFunctions": [ - 3325 + 3846 ], "body": { - "id": 3930, + "id": 4451, "nodeType": "Block", "src": "3185:2:20", "statements": [] }, "functionSelector": "e5400e7b", - "id": 3931, + "id": 4452, "implemented": true, "kind": "function", "modifiers": [], @@ -17114,23 +17114,23 @@ "nameLocation": "3124:14:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3928, + "id": 4449, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3176:8:20" }, "parameters": { - "id": 3927, + "id": 4448, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3926, + "id": 4447, "mutability": "mutable", "name": "blocks", "nameLocation": "3158:6:20", "nodeType": "VariableDeclaration", - "scope": 3931, + "scope": 4452, "src": "3141:23:20", "stateVariable": false, "storageLocation": "calldata", @@ -17140,7 +17140,7 @@ }, "typeName": { "baseType": { - "id": 3924, + "id": 4445, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3141:5:20", @@ -17149,7 +17149,7 @@ "typeString": "bytes" } }, - "id": 3925, + "id": 4446, "nodeType": "ArrayTypeName", "src": "3141:7:20", "typeDescriptions": { @@ -17163,12 +17163,12 @@ "src": "3139:27:20" }, "returnParameters": { - "id": 3929, + "id": 4450, "nodeType": "ParameterList", "parameters": [], "src": "3185:0:20" }, - "scope": 4510, + "scope": 5031, "src": "3115:72:20", "stateMutability": "nonpayable", "virtual": false, @@ -17176,10 +17176,10 @@ }, { "baseFunctions": [ - 3332 + 3853 ], "body": { - "id": 3944, + "id": 4465, "nodeType": "Block", "src": "3274:19:20", "statements": [ @@ -17188,7 +17188,7 @@ "arguments": [ { "hexValue": "30", - "id": 3941, + "id": 4462, "isConstant": false, "isLValue": false, "isPure": true, @@ -17210,7 +17210,7 @@ "typeString": "int_const 0" } ], - "id": 3940, + "id": 4461, "isConstant": false, "isLValue": false, "isPure": true, @@ -17222,14 +17222,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 3939, + "id": 4460, "name": "int256", "nodeType": "ElementaryTypeName", "src": "3282:6:20", "typeDescriptions": {} } }, - "id": 3942, + "id": 4463, "isConstant": false, "isLValue": false, "isPure": true, @@ -17245,15 +17245,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 3938, - "id": 3943, + "functionReturnParameters": 4459, + "id": 4464, "nodeType": "Return", "src": "3275:16:20" } ] }, "functionSelector": "884bdd86", - "id": 3945, + "id": 4466, "implemented": true, "kind": "function", "modifiers": [], @@ -17261,23 +17261,23 @@ "nameLocation": "3201:13:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3935, + "id": 4456, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3248:8:20" }, "parameters": { - "id": 3934, + "id": 4455, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3933, + "id": 4454, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3945, + "scope": 4466, "src": "3217:14:20", "stateVariable": false, "storageLocation": "calldata", @@ -17286,7 +17286,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3932, + "id": 4453, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3217:5:20", @@ -17301,17 +17301,17 @@ "src": "3215:18:20" }, "returnParameters": { - "id": 3938, + "id": 4459, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3937, + "id": 4458, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3945, + "scope": 4466, "src": "3266:6:20", "stateVariable": false, "storageLocation": "default", @@ -17320,7 +17320,7 @@ "typeString": "int256" }, "typeName": { - "id": 3936, + "id": 4457, "name": "int256", "nodeType": "ElementaryTypeName", "src": "3266:6:20", @@ -17334,7 +17334,7 @@ ], "src": "3265:8:20" }, - "scope": 4510, + "scope": 5031, "src": "3192:101:20", "stateMutability": "pure", "virtual": false, @@ -17342,10 +17342,10 @@ }, { "baseFunctions": [ - 3337 + 3858 ], "body": { - "id": 3956, + "id": 4477, "nodeType": "Block", "src": "3370:19:20", "statements": [ @@ -17354,7 +17354,7 @@ "arguments": [ { "hexValue": "30", - "id": 3953, + "id": 4474, "isConstant": false, "isLValue": false, "isPure": true, @@ -17376,7 +17376,7 @@ "typeString": "int_const 0" } ], - "id": 3952, + "id": 4473, "isConstant": false, "isLValue": false, "isPure": true, @@ -17388,14 +17388,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 3951, + "id": 4472, "name": "int256", "nodeType": "ElementaryTypeName", "src": "3378:6:20", "typeDescriptions": {} } }, - "id": 3954, + "id": 4475, "isConstant": false, "isLValue": false, "isPure": true, @@ -17411,15 +17411,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 3950, - "id": 3955, + "functionReturnParameters": 4471, + "id": 4476, "nodeType": "Return", "src": "3371:16:20" } ] }, "functionSelector": "802ad4b6", - "id": 3957, + "id": 4478, "implemented": true, "kind": "function", "modifiers": [], @@ -17427,29 +17427,29 @@ "nameLocation": "3307:17:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3947, + "id": 4468, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3344:8:20" }, "parameters": { - "id": 3946, + "id": 4467, "nodeType": "ParameterList", "parameters": [], "src": "3325:4:20" }, "returnParameters": { - "id": 3950, + "id": 4471, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3949, + "id": 4470, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3957, + "scope": 4478, "src": "3362:6:20", "stateVariable": false, "storageLocation": "default", @@ -17458,7 +17458,7 @@ "typeString": "int256" }, "typeName": { - "id": 3948, + "id": 4469, "name": "int256", "nodeType": "ElementaryTypeName", "src": "3362:6:20", @@ -17472,7 +17472,7 @@ ], "src": "3361:8:20" }, - "scope": 4510, + "scope": 5031, "src": "3298:91:20", "stateMutability": "pure", "virtual": false, @@ -17480,10 +17480,10 @@ }, { "baseFunctions": [ - 3342 + 3863 ], "body": { - "id": 3968, + "id": 4489, "nodeType": "Block", "src": "3471:19:20", "statements": [ @@ -17492,7 +17492,7 @@ "arguments": [ { "hexValue": "30", - "id": 3965, + "id": 4486, "isConstant": false, "isLValue": false, "isPure": true, @@ -17514,7 +17514,7 @@ "typeString": "int_const 0" } ], - "id": 3964, + "id": 4485, "isConstant": false, "isLValue": false, "isPure": true, @@ -17526,14 +17526,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 3963, + "id": 4484, "name": "int256", "nodeType": "ElementaryTypeName", "src": "3479:6:20", "typeDescriptions": {} } }, - "id": 3966, + "id": 4487, "isConstant": false, "isLValue": false, "isPure": true, @@ -17549,15 +17549,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 3962, - "id": 3967, + "functionReturnParameters": 4483, + "id": 4488, "nodeType": "Return", "src": "3472:16:20" } ] }, "functionSelector": "0fd47456", - "id": 3969, + "id": 4490, "implemented": true, "kind": "function", "modifiers": [], @@ -17565,29 +17565,29 @@ "nameLocation": "3403:22:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3959, + "id": 4480, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3445:8:20" }, "parameters": { - "id": 3958, + "id": 4479, "nodeType": "ParameterList", "parameters": [], "src": "3426:4:20" }, "returnParameters": { - "id": 3962, + "id": 4483, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3961, + "id": 4482, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3969, + "scope": 4490, "src": "3463:6:20", "stateVariable": false, "storageLocation": "default", @@ -17596,7 +17596,7 @@ "typeString": "int256" }, "typeName": { - "id": 3960, + "id": 4481, "name": "int256", "nodeType": "ElementaryTypeName", "src": "3463:6:20", @@ -17610,7 +17610,7 @@ ], "src": "3462:8:20" }, - "scope": 4510, + "scope": 5031, "src": "3394:96:20", "stateMutability": "pure", "virtual": false, @@ -17618,26 +17618,26 @@ }, { "baseFunctions": [ - 3349 + 3870 ], "body": { - "id": 3982, + "id": 4503, "nodeType": "Block", "src": "3591:27:20", "statements": [ { "assignments": [ - 3978 + 4499 ], "declarations": [ { "constant": false, - "id": 3978, + "id": 4499, "mutability": "mutable", "name": "b", "nameLocation": "3605:1:20", "nodeType": "VariableDeclaration", - "scope": 3982, + "scope": 4503, "src": "3592:14:20", "stateVariable": false, "storageLocation": "memory", @@ -17646,7 +17646,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3977, + "id": 4498, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3592:5:20", @@ -17658,32 +17658,32 @@ "visibility": "internal" } ], - "id": 3979, + "id": 4500, "nodeType": "VariableDeclarationStatement", "src": "3592:14:20" }, { "expression": { - "id": 3980, + "id": 4501, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3978, + "referencedDeclaration": 4499, "src": "3615:1:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 3976, - "id": 3981, + "functionReturnParameters": 4497, + "id": 4502, "nodeType": "Return", "src": "3608:8:20" } ] }, "functionSelector": "6b89a1af", - "id": 3983, + "id": 4504, "implemented": true, "kind": "function", "modifiers": [], @@ -17691,23 +17691,23 @@ "nameLocation": "3504:21:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3973, + "id": 4494, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3551:8:20" }, "parameters": { - "id": 3972, + "id": 4493, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3971, + "id": 4492, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3983, + "scope": 4504, "src": "3528:6:20", "stateVariable": false, "storageLocation": "default", @@ -17716,7 +17716,7 @@ "typeString": "int256" }, "typeName": { - "id": 3970, + "id": 4491, "name": "int256", "nodeType": "ElementaryTypeName", "src": "3528:6:20", @@ -17731,17 +17731,17 @@ "src": "3526:10:20" }, "returnParameters": { - "id": 3976, + "id": 4497, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3975, + "id": 4496, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3983, + "scope": 4504, "src": "3569:12:20", "stateVariable": false, "storageLocation": "memory", @@ -17750,7 +17750,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3974, + "id": 4495, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3569:5:20", @@ -17764,7 +17764,7 @@ ], "src": "3568:14:20" }, - "scope": 4510, + "scope": 5031, "src": "3495:123:20", "stateMutability": "pure", "virtual": false, @@ -17772,26 +17772,26 @@ }, { "baseFunctions": [ - 3358 + 3879 ], "body": { - "id": 3998, + "id": 4519, "nodeType": "Block", "src": "3742:27:20", "statements": [ { "assignments": [ - 3994 + 4515 ], "declarations": [ { "constant": false, - "id": 3994, + "id": 4515, "mutability": "mutable", "name": "b", "nameLocation": "3756:1:20", "nodeType": "VariableDeclaration", - "scope": 3998, + "scope": 4519, "src": "3743:14:20", "stateVariable": false, "storageLocation": "memory", @@ -17800,7 +17800,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3993, + "id": 4514, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3743:5:20", @@ -17812,32 +17812,32 @@ "visibility": "internal" } ], - "id": 3995, + "id": 4516, "nodeType": "VariableDeclarationStatement", "src": "3743:14:20" }, { "expression": { - "id": 3996, + "id": 4517, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3994, + "referencedDeclaration": 4515, "src": "3766:1:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 3992, - "id": 3997, + "functionReturnParameters": 4513, + "id": 4518, "nodeType": "Return", "src": "3759:8:20" } ] }, "functionSelector": "549cfd1c", - "id": 3999, + "id": 4520, "implemented": true, "kind": "function", "modifiers": [], @@ -17845,23 +17845,23 @@ "nameLocation": "3632:27:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 3989, + "id": 4510, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3710:8:20" }, "parameters": { - "id": 3988, + "id": 4509, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3985, + "id": 4506, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3999, + "scope": 4520, "src": "3662:6:20", "stateVariable": false, "storageLocation": "default", @@ -17870,7 +17870,7 @@ "typeString": "int256" }, "typeName": { - "id": 3984, + "id": 4505, "name": "int256", "nodeType": "ElementaryTypeName", "src": "3662:6:20", @@ -17883,12 +17883,12 @@ }, { "constant": false, - "id": 3987, + "id": 4508, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3999, + "scope": 4520, "src": "3670:15:20", "stateVariable": false, "storageLocation": "calldata", @@ -17897,7 +17897,7 @@ "typeString": "string" }, "typeName": { - "id": 3986, + "id": 4507, "name": "string", "nodeType": "ElementaryTypeName", "src": "3670:6:20", @@ -17912,17 +17912,17 @@ "src": "3660:27:20" }, "returnParameters": { - "id": 3992, + "id": 4513, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3991, + "id": 4512, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3999, + "scope": 4520, "src": "3728:12:20", "stateVariable": false, "storageLocation": "memory", @@ -17931,7 +17931,7 @@ "typeString": "bytes" }, "typeName": { - "id": 3990, + "id": 4511, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3728:5:20", @@ -17945,7 +17945,7 @@ ], "src": "3727:14:20" }, - "scope": 4510, + "scope": 5031, "src": "3623:146:20", "stateMutability": "pure", "virtual": false, @@ -17953,10 +17953,10 @@ }, { "baseFunctions": [ - 3363 + 3884 ], "body": { - "id": 4010, + "id": 4531, "nodeType": "Block", "src": "3854:19:20", "statements": [ @@ -17965,7 +17965,7 @@ "arguments": [ { "hexValue": "30", - "id": 4007, + "id": 4528, "isConstant": false, "isLValue": false, "isPure": true, @@ -17987,7 +17987,7 @@ "typeString": "int_const 0" } ], - "id": 4006, + "id": 4527, "isConstant": false, "isLValue": false, "isPure": true, @@ -17999,14 +17999,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4005, + "id": 4526, "name": "int256", "nodeType": "ElementaryTypeName", "src": "3862:6:20", "typeDescriptions": {} } }, - "id": 4008, + "id": 4529, "isConstant": false, "isLValue": false, "isPure": true, @@ -18022,15 +18022,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4004, - "id": 4009, + "functionReturnParameters": 4525, + "id": 4530, "nodeType": "Return", "src": "3855:16:20" } ] }, "functionSelector": "5e2db9d4", - "id": 4011, + "id": 4532, "implemented": true, "kind": "function", "modifiers": [], @@ -18038,29 +18038,29 @@ "nameLocation": "3783:25:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4001, + "id": 4522, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3828:8:20" }, "parameters": { - "id": 4000, + "id": 4521, "nodeType": "ParameterList", "parameters": [], "src": "3809:4:20" }, "returnParameters": { - "id": 4004, + "id": 4525, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4003, + "id": 4524, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4011, + "scope": 4532, "src": "3846:6:20", "stateVariable": false, "storageLocation": "default", @@ -18069,7 +18069,7 @@ "typeString": "int256" }, "typeName": { - "id": 4002, + "id": 4523, "name": "int256", "nodeType": "ElementaryTypeName", "src": "3846:6:20", @@ -18083,7 +18083,7 @@ ], "src": "3845:8:20" }, - "scope": 4510, + "scope": 5031, "src": "3774:99:20", "stateMutability": "pure", "virtual": false, @@ -18091,10 +18091,10 @@ }, { "baseFunctions": [ - 3368 + 3889 ], "body": { - "id": 4022, + "id": 4543, "nodeType": "Block", "src": "3965:19:20", "statements": [ @@ -18103,7 +18103,7 @@ "arguments": [ { "hexValue": "30", - "id": 4019, + "id": 4540, "isConstant": false, "isLValue": false, "isPure": true, @@ -18125,7 +18125,7 @@ "typeString": "int_const 0" } ], - "id": 4018, + "id": 4539, "isConstant": false, "isLValue": false, "isPure": true, @@ -18137,14 +18137,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4017, + "id": 4538, "name": "int256", "nodeType": "ElementaryTypeName", "src": "3973:6:20", "typeDescriptions": {} } }, - "id": 4020, + "id": 4541, "isConstant": false, "isLValue": false, "isPure": true, @@ -18160,15 +18160,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4016, - "id": 4021, + "functionReturnParameters": 4537, + "id": 4542, "nodeType": "Return", "src": "3966:16:20" } ] }, "functionSelector": "1b2045ee", - "id": 4023, + "id": 4544, "implemented": true, "kind": "function", "modifiers": [], @@ -18176,29 +18176,29 @@ "nameLocation": "3887:32:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4013, + "id": 4534, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3939:8:20" }, "parameters": { - "id": 4012, + "id": 4533, "nodeType": "ParameterList", "parameters": [], "src": "3920:4:20" }, "returnParameters": { - "id": 4016, + "id": 4537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4015, + "id": 4536, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4023, + "scope": 4544, "src": "3957:6:20", "stateVariable": false, "storageLocation": "default", @@ -18207,7 +18207,7 @@ "typeString": "int256" }, "typeName": { - "id": 4014, + "id": 4535, "name": "int256", "nodeType": "ElementaryTypeName", "src": "3957:6:20", @@ -18221,7 +18221,7 @@ ], "src": "3956:8:20" }, - "scope": 4510, + "scope": 5031, "src": "3878:106:20", "stateMutability": "pure", "virtual": false, @@ -18229,17 +18229,17 @@ }, { "baseFunctions": [ - 3373 + 3894 ], "body": { - "id": 4031, + "id": 4552, "nodeType": "Block", "src": "4080:12:20", "statements": [ { "expression": { "hexValue": "", - "id": 4029, + "id": 4550, "isConstant": false, "isLValue": false, "isPure": true, @@ -18253,15 +18253,15 @@ }, "value": "" }, - "functionReturnParameters": 4028, - "id": 4030, + "functionReturnParameters": 4549, + "id": 4551, "nodeType": "Return", "src": "4081:9:20" } ] }, "functionSelector": "47227286", - "id": 4032, + "id": 4553, "implemented": true, "kind": "function", "modifiers": [], @@ -18269,29 +18269,29 @@ "nameLocation": "3998:28:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4025, + "id": 4546, "nodeType": "OverrideSpecifier", "overrides": [], "src": "4046:8:20" }, "parameters": { - "id": 4024, + "id": 4545, "nodeType": "ParameterList", "parameters": [], "src": "4027:4:20" }, "returnParameters": { - "id": 4028, + "id": 4549, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4027, + "id": 4548, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4032, + "scope": 4553, "src": "4064:13:20", "stateVariable": false, "storageLocation": "memory", @@ -18300,7 +18300,7 @@ "typeString": "string" }, "typeName": { - "id": 4026, + "id": 4547, "name": "string", "nodeType": "ElementaryTypeName", "src": "4064:6:20", @@ -18314,7 +18314,7 @@ ], "src": "4063:15:20" }, - "scope": 4510, + "scope": 5031, "src": "3989:103:20", "stateMutability": "pure", "virtual": false, @@ -18322,10 +18322,10 @@ }, { "baseFunctions": [ - 3378 + 3899 ], "body": { - "id": 4043, + "id": 4564, "nodeType": "Block", "src": "4178:19:20", "statements": [ @@ -18334,7 +18334,7 @@ "arguments": [ { "hexValue": "30", - "id": 4040, + "id": 4561, "isConstant": false, "isLValue": false, "isPure": true, @@ -18356,7 +18356,7 @@ "typeString": "int_const 0" } ], - "id": 4039, + "id": 4560, "isConstant": false, "isLValue": false, "isPure": true, @@ -18368,14 +18368,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4038, + "id": 4559, "name": "int256", "nodeType": "ElementaryTypeName", "src": "4186:6:20", "typeDescriptions": {} } }, - "id": 4041, + "id": 4562, "isConstant": false, "isLValue": false, "isPure": true, @@ -18391,15 +18391,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4037, - "id": 4042, + "functionReturnParameters": 4558, + "id": 4563, "nodeType": "Return", "src": "4179:16:20" } ] }, "functionSelector": "d970b0fd", - "id": 4044, + "id": 4565, "implemented": true, "kind": "function", "modifiers": [], @@ -18407,29 +18407,29 @@ "nameLocation": "4106:25:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4034, + "id": 4555, "nodeType": "OverrideSpecifier", "overrides": [], "src": "4146:8:20" }, "parameters": { - "id": 4033, + "id": 4554, "nodeType": "ParameterList", "parameters": [], "src": "4132:4:20" }, "returnParameters": { - "id": 4037, + "id": 4558, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4036, + "id": 4557, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4044, + "scope": 4565, "src": "4170:6:20", "stateVariable": false, "storageLocation": "default", @@ -18438,7 +18438,7 @@ "typeString": "int256" }, "typeName": { - "id": 4035, + "id": 4556, "name": "int256", "nodeType": "ElementaryTypeName", "src": "4170:6:20", @@ -18452,7 +18452,7 @@ ], "src": "4169:8:20" }, - "scope": 4510, + "scope": 5031, "src": "4097:100:20", "stateMutability": "pure", "virtual": false, @@ -18460,10 +18460,10 @@ }, { "baseFunctions": [ - 3383 + 3904 ], "body": { - "id": 4055, + "id": 4576, "nodeType": "Block", "src": "4288:19:20", "statements": [ @@ -18472,7 +18472,7 @@ "arguments": [ { "hexValue": "30", - "id": 4052, + "id": 4573, "isConstant": false, "isLValue": false, "isPure": true, @@ -18494,7 +18494,7 @@ "typeString": "int_const 0" } ], - "id": 4051, + "id": 4572, "isConstant": false, "isLValue": false, "isPure": true, @@ -18506,14 +18506,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4050, + "id": 4571, "name": "int256", "nodeType": "ElementaryTypeName", "src": "4296:6:20", "typeDescriptions": {} } }, - "id": 4053, + "id": 4574, "isConstant": false, "isLValue": false, "isPure": true, @@ -18529,15 +18529,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4049, - "id": 4054, + "functionReturnParameters": 4570, + "id": 4575, "nodeType": "Return", "src": "4289:16:20" } ] }, "functionSelector": "07bbdfc4", - "id": 4056, + "id": 4577, "implemented": true, "kind": "function", "modifiers": [], @@ -18545,29 +18545,29 @@ "nameLocation": "4211:30:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4046, + "id": 4567, "nodeType": "OverrideSpecifier", "overrides": [], "src": "4256:8:20" }, "parameters": { - "id": 4045, + "id": 4566, "nodeType": "ParameterList", "parameters": [], "src": "4242:4:20" }, "returnParameters": { - "id": 4049, + "id": 4570, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4048, + "id": 4569, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4056, + "scope": 4577, "src": "4280:6:20", "stateVariable": false, "storageLocation": "default", @@ -18576,7 +18576,7 @@ "typeString": "int256" }, "typeName": { - "id": 4047, + "id": 4568, "name": "int256", "nodeType": "ElementaryTypeName", "src": "4280:6:20", @@ -18590,7 +18590,7 @@ ], "src": "4279:8:20" }, - "scope": 4510, + "scope": 5031, "src": "4202:105:20", "stateMutability": "pure", "virtual": false, @@ -18598,26 +18598,26 @@ }, { "baseFunctions": [ - 3390 + 3911 ], "body": { - "id": 4069, + "id": 4590, "nodeType": "Block", "src": "4417:27:20", "statements": [ { "assignments": [ - 4065 + 4586 ], "declarations": [ { "constant": false, - "id": 4065, + "id": 4586, "mutability": "mutable", "name": "b", "nameLocation": "4431:1:20", "nodeType": "VariableDeclaration", - "scope": 4069, + "scope": 4590, "src": "4418:14:20", "stateVariable": false, "storageLocation": "memory", @@ -18626,7 +18626,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4064, + "id": 4585, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "4418:5:20", @@ -18638,32 +18638,32 @@ "visibility": "internal" } ], - "id": 4066, + "id": 4587, "nodeType": "VariableDeclarationStatement", "src": "4418:14:20" }, { "expression": { - "id": 4067, + "id": 4588, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4065, + "referencedDeclaration": 4586, "src": "4441:1:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 4063, - "id": 4068, + "functionReturnParameters": 4584, + "id": 4589, "nodeType": "Return", "src": "4434:8:20" } ] }, "functionSelector": "4675d6de", - "id": 4070, + "id": 4591, "implemented": true, "kind": "function", "modifiers": [], @@ -18671,23 +18671,23 @@ "nameLocation": "4321:29:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4060, + "id": 4581, "nodeType": "OverrideSpecifier", "overrides": [], "src": "4371:8:20" }, "parameters": { - "id": 4059, + "id": 4580, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4058, + "id": 4579, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4070, + "scope": 4591, "src": "4353:6:20", "stateVariable": false, "storageLocation": "default", @@ -18696,7 +18696,7 @@ "typeString": "int256" }, "typeName": { - "id": 4057, + "id": 4578, "name": "int256", "nodeType": "ElementaryTypeName", "src": "4353:6:20", @@ -18711,17 +18711,17 @@ "src": "4351:10:20" }, "returnParameters": { - "id": 4063, + "id": 4584, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4062, + "id": 4583, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4070, + "scope": 4591, "src": "4395:12:20", "stateVariable": false, "storageLocation": "memory", @@ -18730,7 +18730,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4061, + "id": 4582, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "4395:5:20", @@ -18744,7 +18744,7 @@ ], "src": "4394:14:20" }, - "scope": 4510, + "scope": 5031, "src": "4312:132:20", "stateMutability": "pure", "virtual": false, @@ -18752,26 +18752,26 @@ }, { "baseFunctions": [ - 3399 + 3920 ], "body": { - "id": 4085, + "id": 4606, "nodeType": "Block", "src": "4575:27:20", "statements": [ { "assignments": [ - 4081 + 4602 ], "declarations": [ { "constant": false, - "id": 4081, + "id": 4602, "mutability": "mutable", "name": "b", "nameLocation": "4589:1:20", "nodeType": "VariableDeclaration", - "scope": 4085, + "scope": 4606, "src": "4576:14:20", "stateVariable": false, "storageLocation": "memory", @@ -18780,7 +18780,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4080, + "id": 4601, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "4576:5:20", @@ -18792,32 +18792,32 @@ "visibility": "internal" } ], - "id": 4082, + "id": 4603, "nodeType": "VariableDeclarationStatement", "src": "4576:14:20" }, { "expression": { - "id": 4083, + "id": 4604, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4081, + "referencedDeclaration": 4602, "src": "4599:1:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 4079, - "id": 4084, + "functionReturnParameters": 4600, + "id": 4605, "nodeType": "Return", "src": "4592:8:20" } ] }, "functionSelector": "68bc2b2b", - "id": 4086, + "id": 4607, "implemented": true, "kind": "function", "modifiers": [], @@ -18825,23 +18825,23 @@ "nameLocation": "4458:35:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4076, + "id": 4597, "nodeType": "OverrideSpecifier", "overrides": [], "src": "4535:8:20" }, "parameters": { - "id": 4075, + "id": 4596, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4072, + "id": 4593, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4086, + "scope": 4607, "src": "4496:6:20", "stateVariable": false, "storageLocation": "default", @@ -18850,7 +18850,7 @@ "typeString": "int256" }, "typeName": { - "id": 4071, + "id": 4592, "name": "int256", "nodeType": "ElementaryTypeName", "src": "4496:6:20", @@ -18863,12 +18863,12 @@ }, { "constant": false, - "id": 4074, + "id": 4595, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4086, + "scope": 4607, "src": "4503:15:20", "stateVariable": false, "storageLocation": "calldata", @@ -18877,7 +18877,7 @@ "typeString": "string" }, "typeName": { - "id": 4073, + "id": 4594, "name": "string", "nodeType": "ElementaryTypeName", "src": "4503:6:20", @@ -18892,17 +18892,17 @@ "src": "4494:26:20" }, "returnParameters": { - "id": 4079, + "id": 4600, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4078, + "id": 4599, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4086, + "scope": 4607, "src": "4561:12:20", "stateVariable": false, "storageLocation": "memory", @@ -18911,7 +18911,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4077, + "id": 4598, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "4561:5:20", @@ -18925,7 +18925,7 @@ ], "src": "4560:14:20" }, - "scope": 4510, + "scope": 5031, "src": "4449:153:20", "stateMutability": "pure", "virtual": false, @@ -18933,10 +18933,10 @@ }, { "baseFunctions": [ - 3404 + 3925 ], "body": { - "id": 4097, + "id": 4618, "nodeType": "Block", "src": "4695:19:20", "statements": [ @@ -18945,7 +18945,7 @@ "arguments": [ { "hexValue": "30", - "id": 4094, + "id": 4615, "isConstant": false, "isLValue": false, "isPure": true, @@ -18967,7 +18967,7 @@ "typeString": "int_const 0" } ], - "id": 4093, + "id": 4614, "isConstant": false, "isLValue": false, "isPure": true, @@ -18979,14 +18979,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4092, + "id": 4613, "name": "int256", "nodeType": "ElementaryTypeName", "src": "4703:6:20", "typeDescriptions": {} } }, - "id": 4095, + "id": 4616, "isConstant": false, "isLValue": false, "isPure": true, @@ -19002,15 +19002,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4091, - "id": 4096, + "functionReturnParameters": 4612, + "id": 4617, "nodeType": "Return", "src": "4696:16:20" } ] }, "functionSelector": "3f0ce9b1", - "id": 4098, + "id": 4619, "implemented": true, "kind": "function", "modifiers": [], @@ -19018,29 +19018,29 @@ "nameLocation": "4616:33:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4088, + "id": 4609, "nodeType": "OverrideSpecifier", "overrides": [], "src": "4669:8:20" }, "parameters": { - "id": 4087, + "id": 4608, "nodeType": "ParameterList", "parameters": [], "src": "4650:4:20" }, "returnParameters": { - "id": 4091, + "id": 4612, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4090, + "id": 4611, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4098, + "scope": 4619, "src": "4687:6:20", "stateVariable": false, "storageLocation": "default", @@ -19049,7 +19049,7 @@ "typeString": "int256" }, "typeName": { - "id": 4089, + "id": 4610, "name": "int256", "nodeType": "ElementaryTypeName", "src": "4687:6:20", @@ -19063,7 +19063,7 @@ ], "src": "4686:8:20" }, - "scope": 4510, + "scope": 5031, "src": "4607:107:20", "stateMutability": "pure", "virtual": false, @@ -19071,10 +19071,10 @@ }, { "baseFunctions": [ - 3409 + 3930 ], "body": { - "id": 4109, + "id": 4630, "nodeType": "Block", "src": "4823:19:20", "statements": [ @@ -19083,7 +19083,7 @@ "arguments": [ { "hexValue": "30", - "id": 4106, + "id": 4627, "isConstant": false, "isLValue": false, "isPure": true, @@ -19105,7 +19105,7 @@ "typeString": "int_const 0" } ], - "id": 4105, + "id": 4626, "isConstant": false, "isLValue": false, "isPure": true, @@ -19117,14 +19117,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4104, + "id": 4625, "name": "int256", "nodeType": "ElementaryTypeName", "src": "4831:6:20", "typeDescriptions": {} } }, - "id": 4107, + "id": 4628, "isConstant": false, "isLValue": false, "isPure": true, @@ -19140,15 +19140,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4103, - "id": 4108, + "functionReturnParameters": 4624, + "id": 4629, "nodeType": "Return", "src": "4824:16:20" } ] }, "functionSelector": "d905153f", - "id": 4110, + "id": 4631, "implemented": true, "kind": "function", "modifiers": [], @@ -19156,29 +19156,29 @@ "nameLocation": "4728:40:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4100, + "id": 4621, "nodeType": "OverrideSpecifier", "overrides": [], "src": "4783:8:20" }, "parameters": { - "id": 4099, + "id": 4620, "nodeType": "ParameterList", "parameters": [], "src": "4769:4:20" }, "returnParameters": { - "id": 4103, + "id": 4624, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4102, + "id": 4623, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4110, + "scope": 4631, "src": "4815:6:20", "stateVariable": false, "storageLocation": "default", @@ -19187,7 +19187,7 @@ "typeString": "int256" }, "typeName": { - "id": 4101, + "id": 4622, "name": "int256", "nodeType": "ElementaryTypeName", "src": "4815:6:20", @@ -19201,7 +19201,7 @@ ], "src": "4814:8:20" }, - "scope": 4510, + "scope": 5031, "src": "4719:123:20", "stateMutability": "pure", "virtual": false, @@ -19209,10 +19209,10 @@ }, { "baseFunctions": [ - 3414 + 3935 ], "body": { - "id": 4121, + "id": 4642, "nodeType": "Block", "src": "4918:19:20", "statements": [ @@ -19221,7 +19221,7 @@ "arguments": [ { "hexValue": "30", - "id": 4118, + "id": 4639, "isConstant": false, "isLValue": false, "isPure": true, @@ -19243,7 +19243,7 @@ "typeString": "int_const 0" } ], - "id": 4117, + "id": 4638, "isConstant": false, "isLValue": false, "isPure": true, @@ -19255,14 +19255,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4116, + "id": 4637, "name": "int256", "nodeType": "ElementaryTypeName", "src": "4926:6:20", "typeDescriptions": {} } }, - "id": 4119, + "id": 4640, "isConstant": false, "isLValue": false, "isPure": true, @@ -19278,15 +19278,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4115, - "id": 4120, + "functionReturnParameters": 4636, + "id": 4641, "nodeType": "Return", "src": "4919:16:20" } ] }, "functionSelector": "1183d5d1", - "id": 4122, + "id": 4643, "implemented": true, "kind": "function", "modifiers": [], @@ -19294,29 +19294,29 @@ "nameLocation": "4856:16:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4112, + "id": 4633, "nodeType": "OverrideSpecifier", "overrides": [], "src": "4892:8:20" }, "parameters": { - "id": 4111, + "id": 4632, "nodeType": "ParameterList", "parameters": [], "src": "4873:4:20" }, "returnParameters": { - "id": 4115, + "id": 4636, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4114, + "id": 4635, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4122, + "scope": 4643, "src": "4910:6:20", "stateVariable": false, "storageLocation": "default", @@ -19325,7 +19325,7 @@ "typeString": "int256" }, "typeName": { - "id": 4113, + "id": 4634, "name": "int256", "nodeType": "ElementaryTypeName", "src": "4910:6:20", @@ -19339,7 +19339,7 @@ ], "src": "4909:8:20" }, - "scope": 4510, + "scope": 5031, "src": "4847:90:20", "stateMutability": "pure", "virtual": false, @@ -19347,10 +19347,10 @@ }, { "baseFunctions": [ - 3421 + 3942 ], "body": { - "id": 4135, + "id": 4656, "nodeType": "Block", "src": "5040:19:20", "statements": [ @@ -19359,7 +19359,7 @@ "arguments": [ { "hexValue": "30", - "id": 4132, + "id": 4653, "isConstant": false, "isLValue": false, "isPure": true, @@ -19381,7 +19381,7 @@ "typeString": "int_const 0" } ], - "id": 4131, + "id": 4652, "isConstant": false, "isLValue": false, "isPure": true, @@ -19393,14 +19393,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4130, + "id": 4651, "name": "int256", "nodeType": "ElementaryTypeName", "src": "5048:6:20", "typeDescriptions": {} } }, - "id": 4133, + "id": 4654, "isConstant": false, "isLValue": false, "isPure": true, @@ -19416,15 +19416,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4129, - "id": 4134, + "functionReturnParameters": 4650, + "id": 4655, "nodeType": "Return", "src": "5041:16:20" } ] }, "functionSelector": "ecefd339", - "id": 4136, + "id": 4657, "implemented": true, "kind": "function", "modifiers": [], @@ -19432,23 +19432,23 @@ "nameLocation": "4951:21:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4126, + "id": 4647, "nodeType": "OverrideSpecifier", "overrides": [], "src": "5006:8:20" }, "parameters": { - "id": 4125, + "id": 4646, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4124, + "id": 4645, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4136, + "scope": 4657, "src": "4975:14:20", "stateVariable": false, "storageLocation": "calldata", @@ -19457,7 +19457,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4123, + "id": 4644, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "4975:5:20", @@ -19472,17 +19472,17 @@ "src": "4973:18:20" }, "returnParameters": { - "id": 4129, + "id": 4650, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4128, + "id": 4649, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4136, + "scope": 4657, "src": "5024:6:20", "stateVariable": false, "storageLocation": "default", @@ -19491,7 +19491,7 @@ "typeString": "int256" }, "typeName": { - "id": 4127, + "id": 4648, "name": "int256", "nodeType": "ElementaryTypeName", "src": "5024:6:20", @@ -19505,7 +19505,7 @@ ], "src": "5023:8:20" }, - "scope": 4510, + "scope": 5031, "src": "4942:117:20", "stateMutability": "pure", "virtual": false, @@ -19513,10 +19513,10 @@ }, { "baseFunctions": [ - 3432 + 3953 ], "body": { - "id": 4153, + "id": 4674, "nodeType": "Block", "src": "5205:19:20", "statements": [ @@ -19525,7 +19525,7 @@ "arguments": [ { "hexValue": "30", - "id": 4150, + "id": 4671, "isConstant": false, "isLValue": false, "isPure": true, @@ -19547,7 +19547,7 @@ "typeString": "int_const 0" } ], - "id": 4149, + "id": 4670, "isConstant": false, "isLValue": false, "isPure": true, @@ -19559,14 +19559,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4148, + "id": 4669, "name": "int256", "nodeType": "ElementaryTypeName", "src": "5213:6:20", "typeDescriptions": {} } }, - "id": 4151, + "id": 4672, "isConstant": false, "isLValue": false, "isPure": true, @@ -19582,15 +19582,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4147, - "id": 4152, + "functionReturnParameters": 4668, + "id": 4673, "nodeType": "Return", "src": "5206:16:20" } ] }, "functionSelector": "444ff9da", - "id": 4154, + "id": 4675, "implemented": true, "kind": "function", "modifiers": [], @@ -19598,23 +19598,23 @@ "nameLocation": "5073:29:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4144, + "id": 4665, "nodeType": "OverrideSpecifier", "overrides": [], "src": "5179:8:20" }, "parameters": { - "id": 4143, + "id": 4664, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4138, + "id": 4659, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4154, + "scope": 4675, "src": "5105:14:20", "stateVariable": false, "storageLocation": "calldata", @@ -19623,7 +19623,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4137, + "id": 4658, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5105:5:20", @@ -19636,12 +19636,12 @@ }, { "constant": false, - "id": 4140, + "id": 4661, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4154, + "scope": 4675, "src": "5122:14:20", "stateVariable": false, "storageLocation": "calldata", @@ -19650,7 +19650,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4139, + "id": 4660, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5122:5:20", @@ -19663,12 +19663,12 @@ }, { "constant": false, - "id": 4142, + "id": 4663, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4154, + "scope": 4675, "src": "5139:14:20", "stateVariable": false, "storageLocation": "calldata", @@ -19677,7 +19677,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4141, + "id": 4662, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5139:5:20", @@ -19692,17 +19692,17 @@ "src": "5103:53:20" }, "returnParameters": { - "id": 4147, + "id": 4668, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4146, + "id": 4667, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4154, + "scope": 4675, "src": "5197:6:20", "stateVariable": false, "storageLocation": "default", @@ -19711,7 +19711,7 @@ "typeString": "int256" }, "typeName": { - "id": 4145, + "id": 4666, "name": "int256", "nodeType": "ElementaryTypeName", "src": "5197:6:20", @@ -19725,7 +19725,7 @@ ], "src": "5196:8:20" }, - "scope": 4510, + "scope": 5031, "src": "5064:160:20", "stateMutability": "pure", "virtual": false, @@ -19733,10 +19733,10 @@ }, { "baseFunctions": [ - 3439 + 3960 ], "body": { - "id": 4167, + "id": 4688, "nodeType": "Block", "src": "5314:19:20", "statements": [ @@ -19745,7 +19745,7 @@ "arguments": [ { "hexValue": "30", - "id": 4164, + "id": 4685, "isConstant": false, "isLValue": false, "isPure": true, @@ -19767,7 +19767,7 @@ "typeString": "int_const 0" } ], - "id": 4163, + "id": 4684, "isConstant": false, "isLValue": false, "isPure": true, @@ -19779,14 +19779,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4162, + "id": 4683, "name": "int256", "nodeType": "ElementaryTypeName", "src": "5322:6:20", "typeDescriptions": {} } }, - "id": 4165, + "id": 4686, "isConstant": false, "isLValue": false, "isPure": true, @@ -19802,15 +19802,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4161, - "id": 4166, + "functionReturnParameters": 4682, + "id": 4687, "nodeType": "Return", "src": "5315:16:20" } ] }, "functionSelector": "1533330f", - "id": 4168, + "id": 4689, "implemented": true, "kind": "function", "modifiers": [], @@ -19818,23 +19818,23 @@ "nameLocation": "5238:16:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4158, + "id": 4679, "nodeType": "OverrideSpecifier", "overrides": [], "src": "5288:8:20" }, "parameters": { - "id": 4157, + "id": 4678, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4156, + "id": 4677, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4168, + "scope": 4689, "src": "5257:14:20", "stateVariable": false, "storageLocation": "calldata", @@ -19843,7 +19843,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4155, + "id": 4676, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5257:5:20", @@ -19858,17 +19858,17 @@ "src": "5255:18:20" }, "returnParameters": { - "id": 4161, + "id": 4682, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4160, + "id": 4681, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4168, + "scope": 4689, "src": "5306:6:20", "stateVariable": false, "storageLocation": "default", @@ -19877,7 +19877,7 @@ "typeString": "int256" }, "typeName": { - "id": 4159, + "id": 4680, "name": "int256", "nodeType": "ElementaryTypeName", "src": "5306:6:20", @@ -19891,7 +19891,7 @@ ], "src": "5305:8:20" }, - "scope": 4510, + "scope": 5031, "src": "5229:104:20", "stateMutability": "pure", "virtual": false, @@ -19899,10 +19899,10 @@ }, { "baseFunctions": [ - 3444 + 3965 ], "body": { - "id": 4179, + "id": 4700, "nodeType": "Block", "src": "5411:19:20", "statements": [ @@ -19911,7 +19911,7 @@ "arguments": [ { "hexValue": "30", - "id": 4176, + "id": 4697, "isConstant": false, "isLValue": false, "isPure": true, @@ -19933,7 +19933,7 @@ "typeString": "int_const 0" } ], - "id": 4175, + "id": 4696, "isConstant": false, "isLValue": false, "isPure": true, @@ -19945,14 +19945,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4174, + "id": 4695, "name": "int256", "nodeType": "ElementaryTypeName", "src": "5419:6:20", "typeDescriptions": {} } }, - "id": 4177, + "id": 4698, "isConstant": false, "isLValue": false, "isPure": true, @@ -19968,15 +19968,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4173, - "id": 4178, + "functionReturnParameters": 4694, + "id": 4699, "nodeType": "Return", "src": "5412:16:20" } ] }, "functionSelector": "8dec3d32", - "id": 4180, + "id": 4701, "implemented": true, "kind": "function", "modifiers": [], @@ -19984,29 +19984,29 @@ "nameLocation": "5347:18:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4170, + "id": 4691, "nodeType": "OverrideSpecifier", "overrides": [], "src": "5385:8:20" }, "parameters": { - "id": 4169, + "id": 4690, "nodeType": "ParameterList", "parameters": [], "src": "5366:4:20" }, "returnParameters": { - "id": 4173, + "id": 4694, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4172, + "id": 4693, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4180, + "scope": 4701, "src": "5403:6:20", "stateVariable": false, "storageLocation": "default", @@ -20015,7 +20015,7 @@ "typeString": "int256" }, "typeName": { - "id": 4171, + "id": 4692, "name": "int256", "nodeType": "ElementaryTypeName", "src": "5403:6:20", @@ -20029,7 +20029,7 @@ ], "src": "5402:8:20" }, - "scope": 4510, + "scope": 5031, "src": "5338:92:20", "stateMutability": "pure", "virtual": false, @@ -20037,26 +20037,26 @@ }, { "baseFunctions": [ - 3449 + 3970 ], "body": { - "id": 4191, + "id": 4712, "nodeType": "Block", "src": "5520:27:20", "statements": [ { "assignments": [ - 4187 + 4708 ], "declarations": [ { "constant": false, - "id": 4187, + "id": 4708, "mutability": "mutable", "name": "b", "nameLocation": "5534:1:20", "nodeType": "VariableDeclaration", - "scope": 4191, + "scope": 4712, "src": "5521:14:20", "stateVariable": false, "storageLocation": "memory", @@ -20065,7 +20065,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4186, + "id": 4707, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5521:5:20", @@ -20077,32 +20077,32 @@ "visibility": "internal" } ], - "id": 4188, + "id": 4709, "nodeType": "VariableDeclarationStatement", "src": "5521:14:20" }, { "expression": { - "id": 4189, + "id": 4710, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4187, + "referencedDeclaration": 4708, "src": "5544:1:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 4185, - "id": 4190, + "functionReturnParameters": 4706, + "id": 4711, "nodeType": "Return", "src": "5537:8:20" } ] }, "functionSelector": "6ce0ed5a", - "id": 4192, + "id": 4713, "implemented": true, "kind": "function", "modifiers": [], @@ -20110,29 +20110,29 @@ "nameLocation": "5444:24:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4182, + "id": 4703, "nodeType": "OverrideSpecifier", "overrides": [], "src": "5488:8:20" }, "parameters": { - "id": 4181, + "id": 4702, "nodeType": "ParameterList", "parameters": [], "src": "5469:4:20" }, "returnParameters": { - "id": 4185, + "id": 4706, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4184, + "id": 4705, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4192, + "scope": 4713, "src": "5506:12:20", "stateVariable": false, "storageLocation": "memory", @@ -20141,7 +20141,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4183, + "id": 4704, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5506:5:20", @@ -20155,7 +20155,7 @@ ], "src": "5505:14:20" }, - "scope": 4510, + "scope": 5031, "src": "5435:112:20", "stateMutability": "pure", "virtual": false, @@ -20163,10 +20163,10 @@ }, { "baseFunctions": [ - 3454 + 3975 ], "body": { - "id": 4203, + "id": 4724, "nodeType": "Block", "src": "5631:19:20", "statements": [ @@ -20175,7 +20175,7 @@ "arguments": [ { "hexValue": "30", - "id": 4200, + "id": 4721, "isConstant": false, "isLValue": false, "isPure": true, @@ -20197,7 +20197,7 @@ "typeString": "int_const 0" } ], - "id": 4199, + "id": 4720, "isConstant": false, "isLValue": false, "isPure": true, @@ -20209,14 +20209,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4198, + "id": 4719, "name": "int256", "nodeType": "ElementaryTypeName", "src": "5639:6:20", "typeDescriptions": {} } }, - "id": 4201, + "id": 4722, "isConstant": false, "isLValue": false, "isPure": true, @@ -20232,15 +20232,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4197, - "id": 4202, + "functionReturnParameters": 4718, + "id": 4723, "nodeType": "Return", "src": "5632:16:20" } ] }, "functionSelector": "3ac72b38", - "id": 4204, + "id": 4725, "implemented": true, "kind": "function", "modifiers": [], @@ -20248,29 +20248,29 @@ "nameLocation": "5561:24:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4194, + "id": 4715, "nodeType": "OverrideSpecifier", "overrides": [], "src": "5605:8:20" }, "parameters": { - "id": 4193, + "id": 4714, "nodeType": "ParameterList", "parameters": [], "src": "5586:4:20" }, "returnParameters": { - "id": 4197, + "id": 4718, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4196, + "id": 4717, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4204, + "scope": 4725, "src": "5623:6:20", "stateVariable": false, "storageLocation": "default", @@ -20279,7 +20279,7 @@ "typeString": "int256" }, "typeName": { - "id": 4195, + "id": 4716, "name": "int256", "nodeType": "ElementaryTypeName", "src": "5623:6:20", @@ -20293,7 +20293,7 @@ ], "src": "5622:8:20" }, - "scope": 4510, + "scope": 5031, "src": "5552:98:20", "stateMutability": "pure", "virtual": false, @@ -20301,26 +20301,26 @@ }, { "baseFunctions": [ - 3461 + 3982 ], "body": { - "id": 4217, + "id": 4738, "nodeType": "Block", "src": "5759:27:20", "statements": [ { "assignments": [ - 4213 + 4734 ], "declarations": [ { "constant": false, - "id": 4213, + "id": 4734, "mutability": "mutable", "name": "b", "nameLocation": "5773:1:20", "nodeType": "VariableDeclaration", - "scope": 4217, + "scope": 4738, "src": "5760:14:20", "stateVariable": false, "storageLocation": "memory", @@ -20329,7 +20329,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4212, + "id": 4733, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5760:5:20", @@ -20341,32 +20341,32 @@ "visibility": "internal" } ], - "id": 4214, + "id": 4735, "nodeType": "VariableDeclarationStatement", "src": "5760:14:20" }, { "expression": { - "id": 4215, + "id": 4736, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4213, + "referencedDeclaration": 4734, "src": "5783:1:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 4211, - "id": 4216, + "functionReturnParameters": 4732, + "id": 4737, "nodeType": "Return", "src": "5776:8:20" } ] }, "functionSelector": "492f7c44", - "id": 4218, + "id": 4739, "implemented": true, "kind": "function", "modifiers": [], @@ -20374,23 +20374,23 @@ "nameLocation": "5664:28:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4208, + "id": 4729, "nodeType": "OverrideSpecifier", "overrides": [], "src": "5719:8:20" }, "parameters": { - "id": 4207, + "id": 4728, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4206, + "id": 4727, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4218, + "scope": 4739, "src": "5695:6:20", "stateVariable": false, "storageLocation": "default", @@ -20399,7 +20399,7 @@ "typeString": "int256" }, "typeName": { - "id": 4205, + "id": 4726, "name": "int256", "nodeType": "ElementaryTypeName", "src": "5695:6:20", @@ -20414,17 +20414,17 @@ "src": "5693:11:20" }, "returnParameters": { - "id": 4211, + "id": 4732, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4210, + "id": 4731, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4218, + "scope": 4739, "src": "5737:12:20", "stateVariable": false, "storageLocation": "memory", @@ -20433,7 +20433,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4209, + "id": 4730, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5737:5:20", @@ -20447,7 +20447,7 @@ ], "src": "5736:14:20" }, - "scope": 4510, + "scope": 5031, "src": "5655:131:20", "stateMutability": "pure", "virtual": false, @@ -20455,26 +20455,26 @@ }, { "baseFunctions": [ - 3470 + 3991 ], "body": { - "id": 4233, + "id": 4754, "nodeType": "Block", "src": "5919:27:20", "statements": [ { "assignments": [ - 4229 + 4750 ], "declarations": [ { "constant": false, - "id": 4229, + "id": 4750, "mutability": "mutable", "name": "b", "nameLocation": "5933:1:20", "nodeType": "VariableDeclaration", - "scope": 4233, + "scope": 4754, "src": "5920:14:20", "stateVariable": false, "storageLocation": "memory", @@ -20483,7 +20483,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4228, + "id": 4749, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5920:5:20", @@ -20495,32 +20495,32 @@ "visibility": "internal" } ], - "id": 4230, + "id": 4751, "nodeType": "VariableDeclarationStatement", "src": "5920:14:20" }, { "expression": { - "id": 4231, + "id": 4752, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4229, + "referencedDeclaration": 4750, "src": "5943:1:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 4227, - "id": 4232, + "functionReturnParameters": 4748, + "id": 4753, "nodeType": "Return", "src": "5936:8:20" } ] }, "functionSelector": "c61295d9", - "id": 4234, + "id": 4755, "implemented": true, "kind": "function", "modifiers": [], @@ -20528,23 +20528,23 @@ "nameLocation": "5800:34:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4224, + "id": 4745, "nodeType": "OverrideSpecifier", "overrides": [], "src": "5879:8:20" }, "parameters": { - "id": 4223, + "id": 4744, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4220, + "id": 4741, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4234, + "scope": 4755, "src": "5837:6:20", "stateVariable": false, "storageLocation": "default", @@ -20553,7 +20553,7 @@ "typeString": "int256" }, "typeName": { - "id": 4219, + "id": 4740, "name": "int256", "nodeType": "ElementaryTypeName", "src": "5837:6:20", @@ -20566,12 +20566,12 @@ }, { "constant": false, - "id": 4222, + "id": 4743, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4234, + "scope": 4755, "src": "5846:15:20", "stateVariable": false, "storageLocation": "calldata", @@ -20580,7 +20580,7 @@ "typeString": "string" }, "typeName": { - "id": 4221, + "id": 4742, "name": "string", "nodeType": "ElementaryTypeName", "src": "5846:6:20", @@ -20595,17 +20595,17 @@ "src": "5835:29:20" }, "returnParameters": { - "id": 4227, + "id": 4748, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4226, + "id": 4747, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4234, + "scope": 4755, "src": "5905:12:20", "stateVariable": false, "storageLocation": "memory", @@ -20614,7 +20614,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4225, + "id": 4746, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5905:5:20", @@ -20628,7 +20628,7 @@ ], "src": "5904:14:20" }, - "scope": 4510, + "scope": 5031, "src": "5791:155:20", "stateMutability": "pure", "virtual": false, @@ -20636,10 +20636,10 @@ }, { "baseFunctions": [ - 3475 + 3996 ], "body": { - "id": 4245, + "id": 4766, "nodeType": "Block", "src": "6026:19:20", "statements": [ @@ -20648,7 +20648,7 @@ "arguments": [ { "hexValue": "30", - "id": 4242, + "id": 4763, "isConstant": false, "isLValue": false, "isPure": true, @@ -20670,7 +20670,7 @@ "typeString": "int_const 0" } ], - "id": 4241, + "id": 4762, "isConstant": false, "isLValue": false, "isPure": true, @@ -20682,14 +20682,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4240, + "id": 4761, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6034:6:20", "typeDescriptions": {} } }, - "id": 4243, + "id": 4764, "isConstant": false, "isLValue": false, "isPure": true, @@ -20705,15 +20705,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4239, - "id": 4244, + "functionReturnParameters": 4760, + "id": 4765, "nodeType": "Return", "src": "6027:16:20" } ] }, "functionSelector": "e9e658dc", - "id": 4246, + "id": 4767, "implemented": true, "kind": "function", "modifiers": [], @@ -20721,29 +20721,29 @@ "nameLocation": "5960:20:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4236, + "id": 4757, "nodeType": "OverrideSpecifier", "overrides": [], "src": "6000:8:20" }, "parameters": { - "id": 4235, + "id": 4756, "nodeType": "ParameterList", "parameters": [], "src": "5981:4:20" }, "returnParameters": { - "id": 4239, + "id": 4760, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4238, + "id": 4759, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4246, + "scope": 4767, "src": "6018:6:20", "stateVariable": false, "storageLocation": "default", @@ -20752,7 +20752,7 @@ "typeString": "int256" }, "typeName": { - "id": 4237, + "id": 4758, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6018:6:20", @@ -20766,7 +20766,7 @@ ], "src": "6017:8:20" }, - "scope": 4510, + "scope": 5031, "src": "5951:94:20", "stateMutability": "pure", "virtual": false, @@ -20774,17 +20774,17 @@ }, { "baseFunctions": [ - 3482 + 4003 ], "body": { - "id": 4256, + "id": 4777, "nodeType": "Block", "src": "6142:12:20", "statements": [ { "expression": { "hexValue": "", - "id": 4254, + "id": 4775, "isConstant": false, "isLValue": false, "isPure": true, @@ -20798,15 +20798,15 @@ }, "value": "" }, - "functionReturnParameters": 4253, - "id": 4255, + "functionReturnParameters": 4774, + "id": 4776, "nodeType": "Return", "src": "6143:9:20" } ] }, "functionSelector": "93988b76", - "id": 4257, + "id": 4778, "implemented": true, "kind": "function", "modifiers": [], @@ -20814,23 +20814,23 @@ "nameLocation": "6059:23:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4250, + "id": 4771, "nodeType": "OverrideSpecifier", "overrides": [], "src": "6109:8:20" }, "parameters": { - "id": 4249, + "id": 4770, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4248, + "id": 4769, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4257, + "scope": 4778, "src": "6085:6:20", "stateVariable": false, "storageLocation": "default", @@ -20839,7 +20839,7 @@ "typeString": "int256" }, "typeName": { - "id": 4247, + "id": 4768, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6085:6:20", @@ -20854,17 +20854,17 @@ "src": "6083:11:20" }, "returnParameters": { - "id": 4253, + "id": 4774, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4252, + "id": 4773, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4257, + "scope": 4778, "src": "6127:13:20", "stateVariable": false, "storageLocation": "memory", @@ -20873,7 +20873,7 @@ "typeString": "string" }, "typeName": { - "id": 4251, + "id": 4772, "name": "string", "nodeType": "ElementaryTypeName", "src": "6127:6:20", @@ -20887,7 +20887,7 @@ ], "src": "6126:15:20" }, - "scope": 4510, + "scope": 5031, "src": "6050:104:20", "stateMutability": "pure", "virtual": false, @@ -20895,10 +20895,10 @@ }, { "baseFunctions": [ - 3489 + 4010 ], "body": { - "id": 4270, + "id": 4791, "nodeType": "Block", "src": "6269:19:20", "statements": [ @@ -20907,7 +20907,7 @@ "arguments": [ { "hexValue": "30", - "id": 4267, + "id": 4788, "isConstant": false, "isLValue": false, "isPure": true, @@ -20929,7 +20929,7 @@ "typeString": "int_const 0" } ], - "id": 4266, + "id": 4787, "isConstant": false, "isLValue": false, "isPure": true, @@ -20941,14 +20941,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4265, + "id": 4786, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6277:6:20", "typeDescriptions": {} } }, - "id": 4268, + "id": 4789, "isConstant": false, "isLValue": false, "isPure": true, @@ -20964,15 +20964,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4264, - "id": 4269, + "functionReturnParameters": 4785, + "id": 4790, "nodeType": "Return", "src": "6270:16:20" } ] }, "functionSelector": "251c5f7b", - "id": 4271, + "id": 4792, "implemented": true, "kind": "function", "modifiers": [], @@ -20980,23 +20980,23 @@ "nameLocation": "6168:30:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4261, + "id": 4782, "nodeType": "OverrideSpecifier", "overrides": [], "src": "6235:8:20" }, "parameters": { - "id": 4260, + "id": 4781, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4259, + "id": 4780, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4271, + "scope": 4792, "src": "6201:15:20", "stateVariable": false, "storageLocation": "calldata", @@ -21005,7 +21005,7 @@ "typeString": "string" }, "typeName": { - "id": 4258, + "id": 4779, "name": "string", "nodeType": "ElementaryTypeName", "src": "6201:6:20", @@ -21020,17 +21020,17 @@ "src": "6199:20:20" }, "returnParameters": { - "id": 4264, + "id": 4785, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4263, + "id": 4784, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4271, + "scope": 4792, "src": "6253:6:20", "stateVariable": false, "storageLocation": "default", @@ -21039,7 +21039,7 @@ "typeString": "int256" }, "typeName": { - "id": 4262, + "id": 4783, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6253:6:20", @@ -21053,7 +21053,7 @@ ], "src": "6252:8:20" }, - "scope": 4510, + "scope": 5031, "src": "6159:129:20", "stateMutability": "pure", "virtual": false, @@ -21061,10 +21061,10 @@ }, { "baseFunctions": [ - 3498 + 4019 ], "body": { - "id": 4286, + "id": 4807, "nodeType": "Block", "src": "6404:19:20", "statements": [ @@ -21073,7 +21073,7 @@ "arguments": [ { "hexValue": "30", - "id": 4283, + "id": 4804, "isConstant": false, "isLValue": false, "isPure": true, @@ -21095,7 +21095,7 @@ "typeString": "int_const 0" } ], - "id": 4282, + "id": 4803, "isConstant": false, "isLValue": false, "isPure": true, @@ -21107,14 +21107,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4281, + "id": 4802, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6412:6:20", "typeDescriptions": {} } }, - "id": 4284, + "id": 4805, "isConstant": false, "isLValue": false, "isPure": true, @@ -21130,15 +21130,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4280, - "id": 4285, + "functionReturnParameters": 4801, + "id": 4806, "nodeType": "Return", "src": "6405:16:20" } ] }, "functionSelector": "502bbbce", - "id": 4287, + "id": 4808, "implemented": true, "kind": "function", "modifiers": [], @@ -21146,23 +21146,23 @@ "nameLocation": "6302:23:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4277, + "id": 4798, "nodeType": "OverrideSpecifier", "overrides": [], "src": "6370:8:20" }, "parameters": { - "id": 4276, + "id": 4797, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4273, + "id": 4794, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4287, + "scope": 4808, "src": "6328:15:20", "stateVariable": false, "storageLocation": "calldata", @@ -21171,7 +21171,7 @@ "typeString": "string" }, "typeName": { - "id": 4272, + "id": 4793, "name": "string", "nodeType": "ElementaryTypeName", "src": "6328:6:20", @@ -21184,12 +21184,12 @@ }, { "constant": false, - "id": 4275, + "id": 4796, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4287, + "scope": 4808, "src": "6346:6:20", "stateVariable": false, "storageLocation": "default", @@ -21198,7 +21198,7 @@ "typeString": "int256" }, "typeName": { - "id": 4274, + "id": 4795, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6346:6:20", @@ -21213,17 +21213,17 @@ "src": "6326:29:20" }, "returnParameters": { - "id": 4280, + "id": 4801, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4279, + "id": 4800, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4287, + "scope": 4808, "src": "6388:6:20", "stateVariable": false, "storageLocation": "default", @@ -21232,7 +21232,7 @@ "typeString": "int256" }, "typeName": { - "id": 4278, + "id": 4799, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6388:6:20", @@ -21246,7 +21246,7 @@ ], "src": "6387:8:20" }, - "scope": 4510, + "scope": 5031, "src": "6293:130:20", "stateMutability": "pure", "virtual": false, @@ -21254,10 +21254,10 @@ }, { "baseFunctions": [ - 3507 + 4028 ], "body": { - "id": 4302, + "id": 4823, "nodeType": "Block", "src": "6545:19:20", "statements": [ @@ -21266,7 +21266,7 @@ "arguments": [ { "hexValue": "30", - "id": 4299, + "id": 4820, "isConstant": false, "isLValue": false, "isPure": true, @@ -21288,7 +21288,7 @@ "typeString": "int_const 0" } ], - "id": 4298, + "id": 4819, "isConstant": false, "isLValue": false, "isPure": true, @@ -21300,14 +21300,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4297, + "id": 4818, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6553:6:20", "typeDescriptions": {} } }, - "id": 4300, + "id": 4821, "isConstant": false, "isLValue": false, "isPure": true, @@ -21323,15 +21323,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4296, - "id": 4301, + "functionReturnParameters": 4817, + "id": 4822, "nodeType": "Return", "src": "6546:16:20" } ] }, "functionSelector": "848206d9", - "id": 4303, + "id": 4824, "implemented": true, "kind": "function", "modifiers": [], @@ -21339,23 +21339,23 @@ "nameLocation": "6437:29:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4293, + "id": 4814, "nodeType": "OverrideSpecifier", "overrides": [], "src": "6511:8:20" }, "parameters": { - "id": 4292, + "id": 4813, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4289, + "id": 4810, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4303, + "scope": 4824, "src": "6469:15:20", "stateVariable": false, "storageLocation": "calldata", @@ -21364,7 +21364,7 @@ "typeString": "string" }, "typeName": { - "id": 4288, + "id": 4809, "name": "string", "nodeType": "ElementaryTypeName", "src": "6469:6:20", @@ -21377,12 +21377,12 @@ }, { "constant": false, - "id": 4291, + "id": 4812, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4303, + "scope": 4824, "src": "6487:6:20", "stateVariable": false, "storageLocation": "default", @@ -21391,7 +21391,7 @@ "typeString": "int256" }, "typeName": { - "id": 4290, + "id": 4811, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6487:6:20", @@ -21406,17 +21406,17 @@ "src": "6467:29:20" }, "returnParameters": { - "id": 4296, + "id": 4817, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4295, + "id": 4816, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4303, + "scope": 4824, "src": "6537:6:20", "stateVariable": false, "storageLocation": "default", @@ -21425,7 +21425,7 @@ "typeString": "int256" }, "typeName": { - "id": 4294, + "id": 4815, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6537:6:20", @@ -21439,7 +21439,7 @@ ], "src": "6536:8:20" }, - "scope": 4510, + "scope": 5031, "src": "6428:136:20", "stateMutability": "pure", "virtual": false, @@ -21447,10 +21447,10 @@ }, { "baseFunctions": [ - 3514 + 4035 ], "body": { - "id": 4316, + "id": 4837, "nodeType": "Block", "src": "6680:19:20", "statements": [ @@ -21459,7 +21459,7 @@ "arguments": [ { "hexValue": "30", - "id": 4313, + "id": 4834, "isConstant": false, "isLValue": false, "isPure": true, @@ -21481,7 +21481,7 @@ "typeString": "int_const 0" } ], - "id": 4312, + "id": 4833, "isConstant": false, "isLValue": false, "isPure": true, @@ -21493,14 +21493,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4311, + "id": 4832, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6688:6:20", "typeDescriptions": {} } }, - "id": 4314, + "id": 4835, "isConstant": false, "isLValue": false, "isPure": true, @@ -21516,15 +21516,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4310, - "id": 4315, + "functionReturnParameters": 4831, + "id": 4836, "nodeType": "Return", "src": "6681:16:20" } ] }, "functionSelector": "b906c938", - "id": 4317, + "id": 4838, "implemented": true, "kind": "function", "modifiers": [], @@ -21532,23 +21532,23 @@ "nameLocation": "6578:32:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4307, + "id": 4828, "nodeType": "OverrideSpecifier", "overrides": [], "src": "6646:8:20" }, "parameters": { - "id": 4306, + "id": 4827, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4305, + "id": 4826, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4317, + "scope": 4838, "src": "6613:15:20", "stateVariable": false, "storageLocation": "calldata", @@ -21557,7 +21557,7 @@ "typeString": "string" }, "typeName": { - "id": 4304, + "id": 4825, "name": "string", "nodeType": "ElementaryTypeName", "src": "6613:6:20", @@ -21572,17 +21572,17 @@ "src": "6611:20:20" }, "returnParameters": { - "id": 4310, + "id": 4831, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4309, + "id": 4830, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4317, + "scope": 4838, "src": "6664:6:20", "stateVariable": false, "storageLocation": "default", @@ -21591,7 +21591,7 @@ "typeString": "int256" }, "typeName": { - "id": 4308, + "id": 4829, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6664:6:20", @@ -21605,7 +21605,7 @@ ], "src": "6663:8:20" }, - "scope": 4510, + "scope": 5031, "src": "6569:130:20", "stateMutability": "pure", "virtual": false, @@ -21613,10 +21613,10 @@ }, { "baseFunctions": [ - 3521 + 4042 ], "body": { - "id": 4330, + "id": 4851, "nodeType": "Block", "src": "6809:19:20", "statements": [ @@ -21625,7 +21625,7 @@ "arguments": [ { "hexValue": "30", - "id": 4327, + "id": 4848, "isConstant": false, "isLValue": false, "isPure": true, @@ -21647,7 +21647,7 @@ "typeString": "int_const 0" } ], - "id": 4326, + "id": 4847, "isConstant": false, "isLValue": false, "isPure": true, @@ -21659,14 +21659,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4325, + "id": 4846, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6817:6:20", "typeDescriptions": {} } }, - "id": 4328, + "id": 4849, "isConstant": false, "isLValue": false, "isPure": true, @@ -21682,15 +21682,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4324, - "id": 4329, + "functionReturnParameters": 4845, + "id": 4850, "nodeType": "Return", "src": "6810:16:20" } ] }, "functionSelector": "fcdeb46f", - "id": 4331, + "id": 4852, "implemented": true, "kind": "function", "modifiers": [], @@ -21698,23 +21698,23 @@ "nameLocation": "6713:26:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4321, + "id": 4842, "nodeType": "OverrideSpecifier", "overrides": [], "src": "6775:8:20" }, "parameters": { - "id": 4320, + "id": 4841, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4319, + "id": 4840, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4331, + "scope": 4852, "src": "6742:15:20", "stateVariable": false, "storageLocation": "calldata", @@ -21723,7 +21723,7 @@ "typeString": "string" }, "typeName": { - "id": 4318, + "id": 4839, "name": "string", "nodeType": "ElementaryTypeName", "src": "6742:6:20", @@ -21738,17 +21738,17 @@ "src": "6740:20:20" }, "returnParameters": { - "id": 4324, + "id": 4845, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4323, + "id": 4844, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4331, + "scope": 4852, "src": "6793:6:20", "stateVariable": false, "storageLocation": "default", @@ -21757,7 +21757,7 @@ "typeString": "int256" }, "typeName": { - "id": 4322, + "id": 4843, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6793:6:20", @@ -21771,7 +21771,7 @@ ], "src": "6792:8:20" }, - "scope": 4510, + "scope": 5031, "src": "6704:124:20", "stateMutability": "pure", "virtual": false, @@ -21779,10 +21779,10 @@ }, { "baseFunctions": [ - 3528 + 4049 ], "body": { - "id": 4344, + "id": 4865, "nodeType": "Block", "src": "6936:19:20", "statements": [ @@ -21791,7 +21791,7 @@ "arguments": [ { "hexValue": "30", - "id": 4341, + "id": 4862, "isConstant": false, "isLValue": false, "isPure": true, @@ -21813,7 +21813,7 @@ "typeString": "int_const 0" } ], - "id": 4340, + "id": 4861, "isConstant": false, "isLValue": false, "isPure": true, @@ -21825,14 +21825,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4339, + "id": 4860, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6944:6:20", "typeDescriptions": {} } }, - "id": 4342, + "id": 4863, "isConstant": false, "isLValue": false, "isPure": true, @@ -21848,15 +21848,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4338, - "id": 4343, + "functionReturnParameters": 4859, + "id": 4864, "nodeType": "Return", "src": "6937:16:20" } ] }, "functionSelector": "c1cc54f5", - "id": 4345, + "id": 4866, "implemented": true, "kind": "function", "modifiers": [], @@ -21864,23 +21864,23 @@ "nameLocation": "6842:33:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4335, + "id": 4856, "nodeType": "OverrideSpecifier", "overrides": [], "src": "6902:8:20" }, "parameters": { - "id": 4334, + "id": 4855, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4333, + "id": 4854, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4345, + "scope": 4866, "src": "6878:6:20", "stateVariable": false, "storageLocation": "default", @@ -21889,7 +21889,7 @@ "typeString": "int256" }, "typeName": { - "id": 4332, + "id": 4853, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6878:6:20", @@ -21904,17 +21904,17 @@ "src": "6876:11:20" }, "returnParameters": { - "id": 4338, + "id": 4859, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4337, + "id": 4858, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4345, + "scope": 4866, "src": "6920:6:20", "stateVariable": false, "storageLocation": "default", @@ -21923,7 +21923,7 @@ "typeString": "int256" }, "typeName": { - "id": 4336, + "id": 4857, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6920:6:20", @@ -21937,7 +21937,7 @@ ], "src": "6919:8:20" }, - "scope": 4510, + "scope": 5031, "src": "6833:122:20", "stateMutability": "pure", "virtual": false, @@ -21945,10 +21945,10 @@ }, { "baseFunctions": [ - 3533 + 4054 ], "body": { - "id": 4356, + "id": 4877, "nodeType": "Block", "src": "7026:19:20", "statements": [ @@ -21957,7 +21957,7 @@ "arguments": [ { "hexValue": "30", - "id": 4353, + "id": 4874, "isConstant": false, "isLValue": false, "isPure": true, @@ -21979,7 +21979,7 @@ "typeString": "int_const 0" } ], - "id": 4352, + "id": 4873, "isConstant": false, "isLValue": false, "isPure": true, @@ -21991,14 +21991,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4351, + "id": 4872, "name": "int256", "nodeType": "ElementaryTypeName", "src": "7034:6:20", "typeDescriptions": {} } }, - "id": 4354, + "id": 4875, "isConstant": false, "isLValue": false, "isPure": true, @@ -22014,15 +22014,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4350, - "id": 4355, + "functionReturnParameters": 4871, + "id": 4876, "nodeType": "Return", "src": "7027:16:20" } ] }, "functionSelector": "724ec886", - "id": 4357, + "id": 4878, "implemented": true, "kind": "function", "modifiers": [], @@ -22030,29 +22030,29 @@ "nameLocation": "6969:11:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4347, + "id": 4868, "nodeType": "OverrideSpecifier", "overrides": [], "src": "7000:8:20" }, "parameters": { - "id": 4346, + "id": 4867, "nodeType": "ParameterList", "parameters": [], "src": "6981:4:20" }, "returnParameters": { - "id": 4350, + "id": 4871, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4349, + "id": 4870, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4357, + "scope": 4878, "src": "7018:6:20", "stateVariable": false, "storageLocation": "default", @@ -22061,7 +22061,7 @@ "typeString": "int256" }, "typeName": { - "id": 4348, + "id": 4869, "name": "int256", "nodeType": "ElementaryTypeName", "src": "7018:6:20", @@ -22075,7 +22075,7 @@ ], "src": "7017:8:20" }, - "scope": 4510, + "scope": 5031, "src": "6960:85:20", "stateMutability": "pure", "virtual": false, @@ -22083,10 +22083,10 @@ }, { "baseFunctions": [ - 3540 + 4061 ], "body": { - "id": 4370, + "id": 4891, "nodeType": "Block", "src": "7130:19:20", "statements": [ @@ -22095,7 +22095,7 @@ "arguments": [ { "hexValue": "30", - "id": 4367, + "id": 4888, "isConstant": false, "isLValue": false, "isPure": true, @@ -22117,7 +22117,7 @@ "typeString": "int_const 0" } ], - "id": 4366, + "id": 4887, "isConstant": false, "isLValue": false, "isPure": true, @@ -22129,14 +22129,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4365, + "id": 4886, "name": "int256", "nodeType": "ElementaryTypeName", "src": "7138:6:20", "typeDescriptions": {} } }, - "id": 4368, + "id": 4889, "isConstant": false, "isLValue": false, "isPure": true, @@ -22152,15 +22152,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4364, - "id": 4369, + "functionReturnParameters": 4885, + "id": 4890, "nodeType": "Return", "src": "7131:16:20" } ] }, "functionSelector": "0461313e", - "id": 4371, + "id": 4892, "implemented": true, "kind": "function", "modifiers": [], @@ -22168,23 +22168,23 @@ "nameLocation": "7059:18:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4361, + "id": 4882, "nodeType": "OverrideSpecifier", "overrides": [], "src": "7104:8:20" }, "parameters": { - "id": 4360, + "id": 4881, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4359, + "id": 4880, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4371, + "scope": 4892, "src": "7080:6:20", "stateVariable": false, "storageLocation": "default", @@ -22193,7 +22193,7 @@ "typeString": "int256" }, "typeName": { - "id": 4358, + "id": 4879, "name": "int256", "nodeType": "ElementaryTypeName", "src": "7080:6:20", @@ -22208,17 +22208,17 @@ "src": "7078:11:20" }, "returnParameters": { - "id": 4364, + "id": 4885, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4363, + "id": 4884, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4371, + "scope": 4892, "src": "7122:6:20", "stateVariable": false, "storageLocation": "default", @@ -22227,7 +22227,7 @@ "typeString": "int256" }, "typeName": { - "id": 4362, + "id": 4883, "name": "int256", "nodeType": "ElementaryTypeName", "src": "7122:6:20", @@ -22241,7 +22241,7 @@ ], "src": "7121:8:20" }, - "scope": 4510, + "scope": 5031, "src": "7050:99:20", "stateMutability": "pure", "virtual": false, @@ -22249,16 +22249,16 @@ }, { "baseFunctions": [ - 3543 + 4064 ], "body": { - "id": 4375, + "id": 4896, "nodeType": "Block", "src": "7204:2:20", "statements": [] }, "functionSelector": "0c5a9990", - "id": 4376, + "id": 4897, "implemented": true, "kind": "function", "modifiers": [], @@ -22266,24 +22266,24 @@ "nameLocation": "7163:17:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4373, + "id": 4894, "nodeType": "OverrideSpecifier", "overrides": [], "src": "7195:8:20" }, "parameters": { - "id": 4372, + "id": 4893, "nodeType": "ParameterList", "parameters": [], "src": "7181:4:20" }, "returnParameters": { - "id": 4374, + "id": 4895, "nodeType": "ParameterList", "parameters": [], "src": "7204:0:20" }, - "scope": 4510, + "scope": 5031, "src": "7154:52:20", "stateMutability": "nonpayable", "virtual": false, @@ -22291,10 +22291,10 @@ }, { "baseFunctions": [ - 3548 + 4069 ], "body": { - "id": 4387, + "id": 4908, "nodeType": "Block", "src": "7287:19:20", "statements": [ @@ -22303,7 +22303,7 @@ "arguments": [ { "hexValue": "32", - "id": 4384, + "id": 4905, "isConstant": false, "isLValue": false, "isPure": true, @@ -22325,7 +22325,7 @@ "typeString": "int_const 2" } ], - "id": 4383, + "id": 4904, "isConstant": false, "isLValue": false, "isPure": true, @@ -22337,14 +22337,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4382, + "id": 4903, "name": "int256", "nodeType": "ElementaryTypeName", "src": "7295:6:20", "typeDescriptions": {} } }, - "id": 4385, + "id": 4906, "isConstant": false, "isLValue": false, "isPure": true, @@ -22360,15 +22360,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4381, - "id": 4386, + "functionReturnParameters": 4902, + "id": 4907, "nodeType": "Return", "src": "7288:16:20" } ] }, "functionSelector": "2f8d158f", - "id": 4388, + "id": 4909, "implemented": true, "kind": "function", "modifiers": [], @@ -22376,29 +22376,29 @@ "nameLocation": "7220:21:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4378, + "id": 4899, "nodeType": "OverrideSpecifier", "overrides": [], "src": "7261:8:20" }, "parameters": { - "id": 4377, + "id": 4898, "nodeType": "ParameterList", "parameters": [], "src": "7242:4:20" }, "returnParameters": { - "id": 4381, + "id": 4902, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4380, + "id": 4901, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4388, + "scope": 4909, "src": "7279:6:20", "stateVariable": false, "storageLocation": "default", @@ -22407,7 +22407,7 @@ "typeString": "int256" }, "typeName": { - "id": 4379, + "id": 4900, "name": "int256", "nodeType": "ElementaryTypeName", "src": "7279:6:20", @@ -22421,7 +22421,7 @@ ], "src": "7278:8:20" }, - "scope": 4510, + "scope": 5031, "src": "7211:95:20", "stateMutability": "pure", "virtual": false, @@ -22429,10 +22429,10 @@ }, { "baseFunctions": [ - 3562 + 4083 ], "body": { - "id": 4408, + "id": 4929, "nodeType": "Block", "src": "7452:19:20", "statements": [ @@ -22441,7 +22441,7 @@ "arguments": [ { "hexValue": "30", - "id": 4405, + "id": 4926, "isConstant": false, "isLValue": false, "isPure": true, @@ -22463,7 +22463,7 @@ "typeString": "int_const 0" } ], - "id": 4404, + "id": 4925, "isConstant": false, "isLValue": false, "isPure": true, @@ -22475,14 +22475,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4403, + "id": 4924, "name": "int256", "nodeType": "ElementaryTypeName", "src": "7460:6:20", "typeDescriptions": {} } }, - "id": 4406, + "id": 4927, "isConstant": false, "isLValue": false, "isPure": true, @@ -22498,15 +22498,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4402, - "id": 4407, + "functionReturnParameters": 4923, + "id": 4928, "nodeType": "Return", "src": "7453:16:20" } ] }, "functionSelector": "5b644587", - "id": 4409, + "id": 4930, "implemented": true, "kind": "function", "modifiers": [], @@ -22514,23 +22514,23 @@ "nameLocation": "7320:30:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4399, + "id": 4920, "nodeType": "OverrideSpecifier", "overrides": [], "src": "7426:8:20" }, "parameters": { - "id": 4398, + "id": 4919, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4390, + "id": 4911, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4409, + "scope": 4930, "src": "7353:7:20", "stateVariable": false, "storageLocation": "default", @@ -22539,7 +22539,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4389, + "id": 4910, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "7353:7:20", @@ -22552,12 +22552,12 @@ }, { "constant": false, - "id": 4392, + "id": 4913, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4409, + "scope": 4930, "src": "7363:7:20", "stateVariable": false, "storageLocation": "default", @@ -22566,7 +22566,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4391, + "id": 4912, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "7363:7:20", @@ -22579,12 +22579,12 @@ }, { "constant": false, - "id": 4394, + "id": 4915, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4409, + "scope": 4930, "src": "7372:7:20", "stateVariable": false, "storageLocation": "default", @@ -22593,7 +22593,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4393, + "id": 4914, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "7372:7:20", @@ -22606,12 +22606,12 @@ }, { "constant": false, - "id": 4397, + "id": 4918, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4409, + "scope": 4930, "src": "7382:18:20", "stateVariable": false, "storageLocation": "calldata", @@ -22621,7 +22621,7 @@ }, "typeName": { "baseType": { - "id": 4395, + "id": 4916, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "7382:7:20", @@ -22630,7 +22630,7 @@ "typeString": "bytes32" } }, - "id": 4396, + "id": 4917, "nodeType": "ArrayTypeName", "src": "7382:9:20", "typeDescriptions": { @@ -22644,17 +22644,17 @@ "src": "7351:52:20" }, "returnParameters": { - "id": 4402, + "id": 4923, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4401, + "id": 4922, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4409, + "scope": 4930, "src": "7444:6:20", "stateVariable": false, "storageLocation": "default", @@ -22663,7 +22663,7 @@ "typeString": "int256" }, "typeName": { - "id": 4400, + "id": 4921, "name": "int256", "nodeType": "ElementaryTypeName", "src": "7444:6:20", @@ -22677,7 +22677,7 @@ ], "src": "7443:8:20" }, - "scope": 4510, + "scope": 5031, "src": "7311:160:20", "stateMutability": "pure", "virtual": false, @@ -22685,10 +22685,10 @@ }, { "baseFunctions": [ - 3567 + 4088 ], "body": { - "id": 4420, + "id": 4941, "nodeType": "Block", "src": "7544:19:20", "statements": [ @@ -22697,7 +22697,7 @@ "arguments": [ { "hexValue": "30", - "id": 4417, + "id": 4938, "isConstant": false, "isLValue": false, "isPure": true, @@ -22719,7 +22719,7 @@ "typeString": "int_const 0" } ], - "id": 4416, + "id": 4937, "isConstant": false, "isLValue": false, "isPure": true, @@ -22731,14 +22731,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 4415, + "id": 4936, "name": "int256", "nodeType": "ElementaryTypeName", "src": "7552:6:20", "typeDescriptions": {} } }, - "id": 4418, + "id": 4939, "isConstant": false, "isLValue": false, "isPure": true, @@ -22754,15 +22754,15 @@ "typeString": "int256" } }, - "functionReturnParameters": 4414, - "id": 4419, + "functionReturnParameters": 4935, + "id": 4940, "nodeType": "Return", "src": "7545:16:20" } ] }, "functionSelector": "3f9db977", - "id": 4421, + "id": 4942, "implemented": true, "kind": "function", "modifiers": [], @@ -22770,29 +22770,29 @@ "nameLocation": "7485:13:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4411, + "id": 4932, "nodeType": "OverrideSpecifier", "overrides": [], "src": "7518:8:20" }, "parameters": { - "id": 4410, + "id": 4931, "nodeType": "ParameterList", "parameters": [], "src": "7499:4:20" }, "returnParameters": { - "id": 4414, + "id": 4935, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4413, + "id": 4934, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4421, + "scope": 4942, "src": "7536:6:20", "stateVariable": false, "storageLocation": "default", @@ -22801,7 +22801,7 @@ "typeString": "int256" }, "typeName": { - "id": 4412, + "id": 4933, "name": "int256", "nodeType": "ElementaryTypeName", "src": "7536:6:20", @@ -22815,7 +22815,7 @@ ], "src": "7535:8:20" }, - "scope": 4510, + "scope": 5031, "src": "7476:87:20", "stateMutability": "pure", "virtual": false, @@ -22823,17 +22823,17 @@ }, { "baseFunctions": [ - 3574 + 4095 ], "body": { - "id": 4431, + "id": 4952, "nodeType": "Block", "src": "7645:15:20", "statements": [ { "expression": { "hexValue": "66616c7365", - "id": 4429, + "id": 4950, "isConstant": false, "isLValue": false, "isPure": true, @@ -22847,15 +22847,15 @@ }, "value": "false" }, - "functionReturnParameters": 4428, - "id": 4430, + "functionReturnParameters": 4949, + "id": 4951, "nodeType": "Return", "src": "7646:12:20" } ] }, "functionSelector": "2910aeb2", - "id": 4432, + "id": 4953, "implemented": true, "kind": "function", "modifiers": [], @@ -22863,23 +22863,23 @@ "nameLocation": "7577:18:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4425, + "id": 4946, "nodeType": "OverrideSpecifier", "overrides": [], "src": "7621:8:20" }, "parameters": { - "id": 4424, + "id": 4945, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4423, + "id": 4944, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4432, + "scope": 4953, "src": "7598:6:20", "stateVariable": false, "storageLocation": "default", @@ -22888,7 +22888,7 @@ "typeString": "int256" }, "typeName": { - "id": 4422, + "id": 4943, "name": "int256", "nodeType": "ElementaryTypeName", "src": "7598:6:20", @@ -22903,17 +22903,17 @@ "src": "7596:10:20" }, "returnParameters": { - "id": 4428, + "id": 4949, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4427, + "id": 4948, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4432, + "scope": 4953, "src": "7639:4:20", "stateVariable": false, "storageLocation": "default", @@ -22922,7 +22922,7 @@ "typeString": "bool" }, "typeName": { - "id": 4426, + "id": 4947, "name": "bool", "nodeType": "ElementaryTypeName", "src": "7639:4:20", @@ -22936,7 +22936,7 @@ ], "src": "7638:6:20" }, - "scope": 4510, + "scope": 5031, "src": "7568:92:20", "stateMutability": "pure", "virtual": false, @@ -22944,16 +22944,16 @@ }, { "baseFunctions": [ - 3587 + 4108 ], "body": { - "id": 4446, + "id": 4967, "nodeType": "Block", "src": "7872:2:20", "statements": [] }, "functionSelector": "ccf417ae", - "id": 4447, + "id": 4968, "implemented": true, "kind": "function", "modifiers": [], @@ -22961,23 +22961,23 @@ "nameLocation": "7674:30:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4444, + "id": 4965, "nodeType": "OverrideSpecifier", "overrides": [], "src": "7863:8:20" }, "parameters": { - "id": 4443, + "id": 4964, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4434, + "id": 4955, "mutability": "mutable", "name": "btcTxSerialized", "nameLocation": "7722:15:20", "nodeType": "VariableDeclaration", - "scope": 4447, + "scope": 4968, "src": "7707:30:20", "stateVariable": false, "storageLocation": "calldata", @@ -22986,7 +22986,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4433, + "id": 4954, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "7707:5:20", @@ -22999,12 +22999,12 @@ }, { "constant": false, - "id": 4436, + "id": 4957, "mutability": "mutable", "name": "blockHash", "nameLocation": "7747:9:20", "nodeType": "VariableDeclaration", - "scope": 4447, + "scope": 4968, "src": "7739:17:20", "stateVariable": false, "storageLocation": "default", @@ -23013,7 +23013,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4435, + "id": 4956, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "7739:7:20", @@ -23026,12 +23026,12 @@ }, { "constant": false, - "id": 4438, + "id": 4959, "mutability": "mutable", "name": "pmtSerialized", "nameLocation": "7781:13:20", "nodeType": "VariableDeclaration", - "scope": 4447, + "scope": 4968, "src": "7758:36:20", "stateVariable": false, "storageLocation": "calldata", @@ -23040,7 +23040,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4437, + "id": 4958, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "7758:5:20", @@ -23053,12 +23053,12 @@ }, { "constant": false, - "id": 4440, + "id": 4961, "mutability": "mutable", "name": "witnessMerkleRoot", "nameLocation": "7804:17:20", "nodeType": "VariableDeclaration", - "scope": 4447, + "scope": 4968, "src": "7796:25:20", "stateVariable": false, "storageLocation": "default", @@ -23067,7 +23067,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4439, + "id": 4960, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "7796:7:20", @@ -23080,12 +23080,12 @@ }, { "constant": false, - "id": 4442, + "id": 4963, "mutability": "mutable", "name": "witnessReservedValue", "nameLocation": "7831:20:20", "nodeType": "VariableDeclaration", - "scope": 4447, + "scope": 4968, "src": "7823:28:20", "stateVariable": false, "storageLocation": "default", @@ -23094,7 +23094,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4441, + "id": 4962, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "7823:7:20", @@ -23109,12 +23109,12 @@ "src": "7705:148:20" }, "returnParameters": { - "id": 4445, + "id": 4966, "nodeType": "ParameterList", "parameters": [], "src": "7872:0:20" }, - "scope": 4510, + "scope": 5031, "src": "7665:209:20", "stateMutability": "nonpayable", "virtual": false, @@ -23122,17 +23122,17 @@ }, { "baseFunctions": [ - 3594 + 4115 ], "body": { - "id": 4457, + "id": 4978, "nodeType": "Block", "src": "7989:15:20", "statements": [ { "expression": { "hexValue": "66616c7365", - "id": 4455, + "id": 4976, "isConstant": false, "isLValue": false, "isPure": true, @@ -23146,15 +23146,15 @@ }, "value": "false" }, - "functionReturnParameters": 4454, - "id": 4456, + "functionReturnParameters": 4975, + "id": 4977, "nodeType": "Return", "src": "7990:12:20" } ] }, "functionSelector": "253b944b", - "id": 4458, + "id": 4979, "implemented": true, "kind": "function", "modifiers": [], @@ -23162,23 +23162,23 @@ "nameLocation": "7888:41:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4451, + "id": 4972, "nodeType": "OverrideSpecifier", "overrides": [], "src": "7957:8:20" }, "parameters": { - "id": 4450, + "id": 4971, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4449, + "id": 4970, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4458, + "scope": 4979, "src": "7932:7:20", "stateVariable": false, "storageLocation": "default", @@ -23187,7 +23187,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4448, + "id": 4969, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "7932:7:20", @@ -23202,17 +23202,17 @@ "src": "7930:12:20" }, "returnParameters": { - "id": 4454, + "id": 4975, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4453, + "id": 4974, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4458, + "scope": 4979, "src": "7983:4:20", "stateVariable": false, "storageLocation": "default", @@ -23221,7 +23221,7 @@ "typeString": "bool" }, "typeName": { - "id": 4452, + "id": 4973, "name": "bool", "nodeType": "ElementaryTypeName", "src": "7983:4:20", @@ -23235,7 +23235,7 @@ ], "src": "7982:6:20" }, - "scope": 4510, + "scope": 5031, "src": "7879:125:20", "stateMutability": "pure", "virtual": false, @@ -23243,10 +23243,10 @@ }, { "baseFunctions": [ - 3620 + 4141 ], "body": { - "id": 4469, + "id": 4990, "nodeType": "Block", "src": "8111:20:20", "statements": [ @@ -23255,7 +23255,7 @@ "arguments": [ { "hexValue": "30", - "id": 4466, + "id": 4987, "isConstant": false, "isLValue": false, "isPure": true, @@ -23277,7 +23277,7 @@ "typeString": "int_const 0" } ], - "id": 4465, + "id": 4986, "isConstant": false, "isLValue": false, "isPure": true, @@ -23289,14 +23289,14 @@ "typeString": "type(uint256)" }, "typeName": { - "id": 4464, + "id": 4985, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "8119:7:20", "typeDescriptions": {} } }, - "id": 4467, + "id": 4988, "isConstant": false, "isLValue": false, "isPure": true, @@ -23312,15 +23312,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 4463, - "id": 4468, + "functionReturnParameters": 4984, + "id": 4989, "nodeType": "Return", "src": "8112:17:20" } ] }, "functionSelector": "177d6e18", - "id": 4470, + "id": 4991, "implemented": true, "kind": "function", "modifiers": [], @@ -23328,29 +23328,29 @@ "nameLocation": "8018:38:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4460, + "id": 4981, "nodeType": "OverrideSpecifier", "overrides": [], "src": "8076:8:20" }, "parameters": { - "id": 4459, + "id": 4980, "nodeType": "ParameterList", "parameters": [], "src": "8057:4:20" }, "returnParameters": { - "id": 4463, + "id": 4984, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4462, + "id": 4983, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4470, + "scope": 4991, "src": "8094:7:20", "stateVariable": false, "storageLocation": "default", @@ -23359,7 +23359,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4461, + "id": 4982, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "8094:7:20", @@ -23373,7 +23373,7 @@ ], "src": "8093:9:20" }, - "scope": 4510, + "scope": 5031, "src": "8009:122:20", "stateMutability": "pure", "virtual": false, @@ -23381,26 +23381,26 @@ }, { "baseFunctions": [ - 3630 + 4151 ], "body": { - "id": 4481, + "id": 5002, "nodeType": "Block", "src": "8236:27:20", "statements": [ { "assignments": [ - 4477 + 4998 ], "declarations": [ { "constant": false, - "id": 4477, + "id": 4998, "mutability": "mutable", "name": "b", "nameLocation": "8250:1:20", "nodeType": "VariableDeclaration", - "scope": 4481, + "scope": 5002, "src": "8237:14:20", "stateVariable": false, "storageLocation": "memory", @@ -23409,7 +23409,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4476, + "id": 4997, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "8237:5:20", @@ -23421,32 +23421,32 @@ "visibility": "internal" } ], - "id": 4478, + "id": 4999, "nodeType": "VariableDeclarationStatement", "src": "8237:14:20" }, { "expression": { - "id": 4479, + "id": 5000, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4477, + "referencedDeclaration": 4998, "src": "8260:1:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 4475, - "id": 4480, + "functionReturnParameters": 4996, + "id": 5001, "nodeType": "Return", "src": "8253:8:20" } ] }, "functionSelector": "f0b2424b", - "id": 4482, + "id": 5003, "implemented": true, "kind": "function", "modifiers": [], @@ -23454,29 +23454,29 @@ "nameLocation": "8145:31:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4472, + "id": 4993, "nodeType": "OverrideSpecifier", "overrides": [], "src": "8196:8:20" }, "parameters": { - "id": 4471, + "id": 4992, "nodeType": "ParameterList", "parameters": [], "src": "8177:4:20" }, "returnParameters": { - "id": 4475, + "id": 4996, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4474, + "id": 4995, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4482, + "scope": 5003, "src": "8214:12:20", "stateVariable": false, "storageLocation": "memory", @@ -23485,7 +23485,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4473, + "id": 4994, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "8214:5:20", @@ -23499,7 +23499,7 @@ ], "src": "8213:14:20" }, - "scope": 4510, + "scope": 5031, "src": "8136:127:20", "stateMutability": "pure", "virtual": false, @@ -23507,34 +23507,34 @@ }, { "baseFunctions": [ - 3637 + 4158 ], "body": { - "id": 4494, + "id": 5015, "nodeType": "Block", "src": "8391:48:20", "statements": [ { "expression": { "baseExpression": { - "id": 4490, + "id": 5011, "name": "headersByHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3669, + "referencedDeclaration": 4190, "src": "8408:13:20", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", "typeString": "mapping(bytes32 => bytes storage ref)" } }, - "id": 4492, + "id": 5013, "indexExpression": { - "id": 4491, + "id": 5012, "name": "blockHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4484, + "referencedDeclaration": 5005, "src": "8422:9:20", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -23552,15 +23552,15 @@ "typeString": "bytes storage ref" } }, - "functionReturnParameters": 4489, - "id": 4493, + "functionReturnParameters": 5010, + "id": 5014, "nodeType": "Return", "src": "8401:31:20" } ] }, "functionSelector": "739e364a", - "id": 4495, + "id": 5016, "implemented": true, "kind": "function", "modifiers": [], @@ -23568,23 +23568,23 @@ "nameLocation": "8278:33:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4486, + "id": 5007, "nodeType": "OverrideSpecifier", "overrides": [], "src": "8359:8:20" }, "parameters": { - "id": 4485, + "id": 5006, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4484, + "id": 5005, "mutability": "mutable", "name": "blockHash", "nameLocation": "8329:9:20", "nodeType": "VariableDeclaration", - "scope": 4495, + "scope": 5016, "src": "8321:17:20", "stateVariable": false, "storageLocation": "default", @@ -23593,7 +23593,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4483, + "id": 5004, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "8321:7:20", @@ -23608,17 +23608,17 @@ "src": "8311:33:20" }, "returnParameters": { - "id": 4489, + "id": 5010, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4488, + "id": 5009, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4495, + "scope": 5016, "src": "8377:12:20", "stateVariable": false, "storageLocation": "memory", @@ -23627,7 +23627,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4487, + "id": 5008, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "8377:5:20", @@ -23641,7 +23641,7 @@ ], "src": "8376:14:20" }, - "scope": 4510, + "scope": 5031, "src": "8269:170:20", "stateMutability": "view", "virtual": false, @@ -23649,26 +23649,26 @@ }, { "baseFunctions": [ - 3651 + 4172 ], "body": { - "id": 4508, + "id": 5029, "nodeType": "Block", "src": "8559:27:20", "statements": [ { "assignments": [ - 4504 + 5025 ], "declarations": [ { "constant": false, - "id": 4504, + "id": 5025, "mutability": "mutable", "name": "b", "nameLocation": "8573:1:20", "nodeType": "VariableDeclaration", - "scope": 4508, + "scope": 5029, "src": "8560:14:20", "stateVariable": false, "storageLocation": "memory", @@ -23677,7 +23677,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4503, + "id": 5024, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "8560:5:20", @@ -23689,32 +23689,32 @@ "visibility": "internal" } ], - "id": 4505, + "id": 5026, "nodeType": "VariableDeclarationStatement", "src": "8560:14:20" }, { "expression": { - "id": 4506, + "id": 5027, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4504, + "referencedDeclaration": 5025, "src": "8583:1:20", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 4502, - "id": 4507, + "functionReturnParameters": 5023, + "id": 5028, "nodeType": "Return", "src": "8576:8:20" } ] }, "functionSelector": "e0236724", - "id": 4509, + "id": 5030, "implemented": true, "kind": "function", "modifiers": [], @@ -23722,23 +23722,23 @@ "nameLocation": "8454:39:20", "nodeType": "FunctionDefinition", "overrides": { - "id": 4499, + "id": 5020, "nodeType": "OverrideSpecifier", "overrides": [], "src": "8519:8:20" }, "parameters": { - "id": 4498, + "id": 5019, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4497, + "id": 5018, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4509, + "scope": 5030, "src": "8496:7:20", "stateVariable": false, "storageLocation": "default", @@ -23747,7 +23747,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4496, + "id": 5017, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "8496:7:20", @@ -23762,17 +23762,17 @@ "src": "8494:10:20" }, "returnParameters": { - "id": 4502, + "id": 5023, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4501, + "id": 5022, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4509, + "scope": 5030, "src": "8545:12:20", "stateVariable": false, "storageLocation": "memory", @@ -23781,7 +23781,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4500, + "id": 5021, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "8545:5:20", @@ -23795,14 +23795,14 @@ ], "src": "8544:14:20" }, - "scope": 4510, + "scope": 5031, "src": "8445:141:20", "stateMutability": "pure", "virtual": false, "visibility": "external" } ], - "scope": 4511, + "scope": 5032, "src": "82:8510:20", "usedErrors": [] } @@ -23815,7 +23815,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:54:03.275Z", + "updatedAt": "2024-08-13T18:14:01.687Z", "networkType": "ethereum", "devdoc": { "kind": "dev", diff --git a/build/contracts/BtcUtils.json b/build/contracts/BtcUtils.json index c5fb2dd..37316ea 100644 --- a/build/contracts/BtcUtils.json +++ b/build/contracts/BtcUtils.json @@ -1,6 +1,20 @@ { "contractName": "BtcUtils", "abi": [ + { + "inputs": [], + "name": "version", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "constant": true + }, { "inputs": [ { @@ -108,6 +122,66 @@ "type": "function", "constant": true }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "pkScript", + "type": "bytes" + } + ], + "name": "isP2WPKHOutput", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function", + "constant": true + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "pkScript", + "type": "bytes" + } + ], + "name": "isP2WSHOutput", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function", + "constant": true + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "pkScript", + "type": "bytes" + } + ], + "name": "isP2TROutput", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function", + "constant": true + }, { "inputs": [ { @@ -158,6 +232,66 @@ "type": "function", "constant": true }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "outputScript", + "type": "bytes" + } + ], + "name": "parsePayToWitnessPubKeyHash", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "pure", + "type": "function", + "constant": true + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "outputScript", + "type": "bytes" + } + ], + "name": "parsePayToWitnessScriptHash", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "pure", + "type": "function", + "constant": true + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "outputScript", + "type": "bytes" + } + ], + "name": "parsePayToTaproot", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "pure", + "type": "function", + "constant": true + }, { "inputs": [ { @@ -274,16 +408,16 @@ "constant": true } ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"header\",\"type\":\"bytes\"}],\"name\":\"getBtcBlockTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"rawTx\",\"type\":\"bytes\"}],\"name\":\"getOutputs\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"value\",\"type\":\"uint64\"},{\"internalType\":\"bytes\",\"name\":\"pkScript\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"scriptSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"totalSize\",\"type\":\"uint256\"}],\"internalType\":\"struct BtcUtils.TxRawOutput[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"script\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"mainnet\",\"type\":\"bool\"}],\"name\":\"getP2SHAddressFromScript\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"btcTx\",\"type\":\"bytes\"}],\"name\":\"hashBtcTx\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pkScript\",\"type\":\"bytes\"}],\"name\":\"isP2PKHOutput\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pkScript\",\"type\":\"bytes\"}],\"name\":\"isP2SHOutput\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"mainnet\",\"type\":\"bool\"}],\"name\":\"outputScriptToAddress\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"}],\"name\":\"parseNullDataScript\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"mainnet\",\"type\":\"bool\"}],\"name\":\"parsePayToPubKeyHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"mainnet\",\"type\":\"bool\"}],\"name\":\"parsePayToScriptHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"p2sh\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"script\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"mainnet\",\"type\":\"bool\"}],\"name\":\"validateP2SHAdress\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"getBtcBlockTimestamp(bytes)\":{\"details\":\"Gets the timestamp of a Bitcoin block header\",\"params\":{\"header\":\"The block header\"},\"returns\":{\"_0\":\"The timestamp of the block header\"}},\"getOutputs(bytes)\":{\"params\":{\"rawTx\":\"the raw transaction\"},\"returns\":{\"_0\":\"An array of `TxRawOutput` with the outputs of the transaction\"}},\"getP2SHAddressFromScript(bytes,bool)\":{\"params\":{\"mainnet\":\"flag to specify if the output should be a mainnet address\",\"script\":\"the script to generate the address from\"},\"returns\":{\"_0\":\"The address generate from the script\"}},\"hashBtcTx(bytes)\":{\"params\":{\"btcTx\":\"the transaction to hash\"},\"returns\":{\"_0\":\"The transaction id \"}},\"isP2PKHOutput(bytes)\":{\"params\":{\"pkScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"Whether the script has a pay-to-public-key-hash output structure or not\"}},\"isP2SHOutput(bytes)\":{\"params\":{\"pkScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"Whether the script has a pay-to-script-hash output structure or not\"}},\"outputScriptToAddress(bytes,bool)\":{\"params\":{\"mainnet\":\"if the address to generate is from mainnet or testnet\",\"outputScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"The address bytes regarless of the output script type\"}},\"parseNullDataScript(bytes)\":{\"params\":{\"outputScript\":\"the fragment of the raw transaction containing the raw output script \"},\"returns\":{\"_0\":\"The content embedded inside the script\"}},\"parsePayToPubKeyHash(bytes,bool)\":{\"params\":{\"mainnet\":\"if the address to generate is from mainnet or testnet \",\"outputScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"The address generated using the receiver's public key hash\"}},\"parsePayToScriptHash(bytes,bool)\":{\"params\":{\"mainnet\":\"if the address to generate is from mainnet or testnet\",\"outputScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"The address generated using the script hash\"}},\"validateP2SHAdress(bytes,bytes,bool)\":{\"params\":{\"mainnet\":\"flag to specify if its a mainnet address\",\"p2sh\":\"the pay-to-script-hash address\",\"script\":\"the script to check\"},\"returns\":{\"_0\":\"Whether the address belongs to the script or not\"}}},\"title\":\"BtcUtils\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"getOutputs(bytes)\":{\"notice\":\"Parse a raw transaction to get an array of its outputs in a structured representation\"},\"getP2SHAddressFromScript(bytes,bool)\":{\"notice\":\"Generate a pay-to-script-hash address from a script, the resulting byte array already contains the 4 checksum bytes at the end of it\"},\"hashBtcTx(bytes)\":{\"notice\":\"Hash a bitcoin raw transaction to get its id (reversed double sha256)\"},\"isP2PKHOutput(bytes)\":{\"notice\":\"Check if a raw output script is a pay-to-public-key-hash output\"},\"isP2SHOutput(bytes)\":{\"notice\":\"Check if a raw output script is a pay-to-script-hash output\"},\"outputScriptToAddress(bytes,bool)\":{\"notice\":\"Parse a raw output script whose type is not known by the consumer. The function will return the corresponding address if the type of the script is supported or an error if not. For the addresses that are encoded with base58check the checksum bytes are not included in the resulting byte array\"},\"parseNullDataScript(bytes)\":{\"notice\":\"Parse a raw null-data output script to get its content\"},\"parsePayToPubKeyHash(bytes,bool)\":{\"notice\":\"Parse a raw pay-to-public-key-hash output script to get the corresponding address, the resulting byte array doesn't include the checksum bytes of the base58check encoding at the end\"},\"parsePayToScriptHash(bytes,bool)\":{\"notice\":\"Parse a raw pay-to-script-hash output script to get the corresponding address, the resulting byte array doesn't include the checksum bytes of the base58check encoding at the end\"},\"validateP2SHAdress(bytes,bytes,bool)\":{\"notice\":\"Check if a pay-to-script-hash address belogs to a specific script, expects the address bytes to include the 4 checksum bytes at the end\"}},\"notice\":\"This library contains functionality to make easier to work with Bitcoin transactions in Solidity.This library is based in this document: https://developer.bitcoin.org/reference/transactions.html#raw-transaction-format\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\":\"BtcUtils\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\":{\"keccak256\":\"0x0dc781715e8c751a32cc8a6cb062c0aa315dac2d14f9e00cf93d3aec0ae295e8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1dc434f8cc19e5ddf589ec5bab31427e9b0a0eb990e00a217fdfeca7223cf4f9\",\"dweb:/ipfs/QmUpkMKeG7ncvyxpye4Z1izF2NvRK4rJ2nt6fof9TbPsvc\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":{\"keccak256\":\"0x74d384b5e0ce7b5be1cb5d1446b40e788a0b3e13522aaa583d73a554c835c4d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e94fc123058c5e2cc8cd4635f12bcba195b8b57fef895980c519130f44aa5d17\",\"dweb:/ipfs/QmVhqvcmMhvwYeuYgheTFVBo3EHBKuyYpthdhQRwTdBfx4\"]}},\"version\":1}", - "bytecode": "0x611b0d61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100a25760003560e01c8062f5b491146100a757806306ac4100146100d05780632d56f323146100f05780634c03fe59146101035780639b02794b14610116578063a0cd70fc14610139578063b0d6b1cb1461015a578063b42da4a21461016d578063c7ce85ac14610180578063facde65614610193578063fea8ba63146101a6575b600080fd5b6100ba6100b53660046114a0565b6101b9565b6040516100c79190611531565b60405180910390f35b6100e36100de3660046115dc565b61049f565b6040516100c7919061162f565b6100e36100fe3660046114a0565b610634565b6100e36101113660046115dc565b610725565b610129610124366004611642565b61088c565b60405190151581526020016100c7565b61014c6101473660046116d8565b6108cf565b6040519081526020016100c7565b6100e36101683660046115dc565b610931565b61012961017b3660046116d8565b610b22565b6100e361018e3660046115dc565b610bbb565b6101296101a13660046116d8565b610ca4565b61014c6101b43660046114a0565b610d8d565b606060048383828181106101cf576101cf611788565b909101356001600160f81b03191615905080156102155750838360058181106101fa576101fa611788565b9050013560f81c60f81b6001600160f81b031916600160f81b145b1561021e575060065b6000806102618387878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610f4692505050565b909250905061027461ffff8216846117b4565b925060008060005b846001600160401b0316816001600160401b03161015610328576102a16024876117b4565b95506102e3868a8a8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610f4692505050565b90935091506102f661ffff8316846117c7565b6103019060046117c7565b610314906001600160401b0316876117b4565b955080610320816117ee565b91505061027c565b5060008061036c878b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610f4692505050565b909250905061037f61ffff8216886117b4565b96506000826001600160401b03166001600160401b038111156103a4576103a46116c2565b6040519080825280602002602001820160405280156103dd57816020015b6103ca61142e565b8152602001906001900390816103c25790505b50905060005b836001600160401b031681101561048e57610434898d8d8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506110ab92505050565b82828151811061044657610446611788565b602002602001018190525081818151811061046357610463611788565b6020026020010151606001518961047a91906117b4565b9850806104868161181c565b9150506103e3565b509750505050505050505b92915050565b60606104e084848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610b2292505050565b6105055760405162461bcd60e51b81526004016104fc90611835565b60405180910390fd5b600061051360146001611879565b60ff166001600160401b0381111561052d5761052d6116c2565b6040519080825280601f01601f191660200182016040528015610557576020820181803683370190505b50905060025b61056960026014611879565b60ff168160ff1610156105ea5785858260ff1681811061058b5761058b611788565b9050013560f81c60f81b826002836105a39190611892565b6105ae906001611879565b60ff16815181106105c1576105c1611788565b60200101906001600160f81b031916908160001a905350806105e2816118ab565b91505061055d565b50826105fa57603160fa1b610600565b600560f81b5b8160008151811061061357610613611788565b60200101906001600160f81b031916908160001a90535090505b9392505050565b6060600182116106755760405162461bcd60e51b815260206004820152600c60248201526b496e76616c69642073697a6560a01b60448201526064016104fc565b603560f91b838360008161068b5761068b611788565b9050013560f81c60f81b6001600160f81b031916146106dc5760405162461bcd60e51b815260206004820152600d60248201526c2737ba1027a82fa922aa2aa92760991b60448201526064016104fc565b6106e982600181866118ca565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929695505050505050565b606061076684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610ca492505050565b6107825760405162461bcd60e51b81526004016104fc90611835565b600061079060146001611879565b60ff166001600160401b038111156107aa576107aa6116c2565b6040519080825280601f01601f1916602001820160405280156107d4576020820181803683370190505b50905060035b6107e660036014611879565b60ff168160ff1610156108675785858260ff1681811061080857610808611788565b9050013560f81c60f81b826003836108209190611892565b61082b906001611879565b60ff168151811061083e5761083e611788565b60200101906001600160f81b031916908160001a9053508061085f816118ab565b9150506107da565b508261087757606f60f81b610600565b60008160008151811061061357610613611788565b60006019851480156108c557506108a4848484610931565b8051906020012086866040516108bb9291906118f4565b6040518091039020145b9695505050505050565b6000815160501461091a5760405162461bcd60e51b8152602060048201526015602482015274092dcecc2d8d2c840d0cac2c8cae440d8cadccee8d605b1b60448201526064016104fc565b610925826044611258565b63ffffffff1692915050565b606060006003600286866040516109499291906118f4565b602060405180830381855afa158015610966573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906109899190611904565b60405160200161099b91815260200190565b60408051601f19818403018152908290526109b59161191d565b602060405180830381855afa1580156109d2573d6000803e3d6000fd5b5050506040515160601b90506000836109ef57603160fa1b6109f5565b600560f81b5b6040516001600160f81b0319821660208201526001600160601b0319841660218201529091506000906035016040516020818303038152906040529050600060028083604051610a45919061191d565b602060405180830381855afa158015610a62573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610a859190611904565b604051602001610a9791815260200190565b60408051601f1981840301815290829052610ab19161191d565b602060405180830381855afa158015610ace573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610af19190611904565b90508181604051602001610b06929190611939565b6040516020818303038152906040529450505050509392505050565b600081516017148015610b5a5750815160a960f81b908390600090610b4957610b49611788565b01602001516001600160f81b031916145b8015610b835750601460ff1682600181518110610b7957610b79611788565b016020015160f81c145b801561049957508151608760f81b9083906016908110610ba557610ba5611788565b01602001516001600160f81b0319161492915050565b6060610bfc84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610ca492505050565b15610c1357610c0c848484610725565b905061062d565b610c5284848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610b2292505050565b15610c6257610c0c84848461049f565b60405162461bcd60e51b8152602060048201526017602482015276556e737570706f7274656420736372697074207479706560481b60448201526064016104fc565b600081516019148015610cdc57508151603b60f91b908390600090610ccb57610ccb611788565b01602001516001600160f81b031916145b8015610d0f5750815160a960f81b9083906001908110610cfe57610cfe611788565b01602001516001600160f81b031916145b8015610d385750601460ff1682600281518110610d2e57610d2e611788565b016020015160f81c145b8015610d6b57508151601160fb1b9083906017908110610d5a57610d5a611788565b01602001516001600160f81b031916145b801561049957508151602b60fa1b9083906018908110610ba557610ba5611788565b6000806002808585604051610da39291906118f4565b602060405180830381855afa158015610dc0573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610de39190611904565b604051602001610df591815260200190565b60408051601f1981840301815290829052610e0f9161191d565b602060405180830381855afa158015610e2c573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610e4f9190611904565b604051602001610e6191815260200190565b60408051601f1981840301815291905290506000805b6010811015610f3957828181518110610e9257610e92611788565b01602001516001600160f81b031916915082610eaf82601f611968565b81518110610ebf57610ebf611788565b602001015160f81c60f81b838281518110610edc57610edc611788565b60200101906001600160f81b031916908160001a9053508183610f0083601f611968565b81518110610f1057610f10611788565b60200101906001600160f81b031916908160001a90535080610f318161181c565b915050610e77565b5050602001519392505050565b60008083835111610faa5760405162461bcd60e51b815260206004820152602860248201527f53697a6520706f736974696f6e2063616e277420626520626967676572207468604482015267616e20617272617960c01b60648201526084016104fc565b6000838581518110610fbe57610fbe611788565b016020015160f81c90506000819003610fdf576000600192509250506110a4565b60fc60ff821611610ff85760ff169150600190506110a4565b600061100560fc83611892565b611010906002611a5f565b905060088111156110635760405162461bcd60e51b815260206004820152601f60248201527f756e737570706f7274656420636f6d706163742073697a65206c656e6774680060448201526064016104fc565b600061108e6110738860016117b4565b61107d848a6117b4565b6110889060016117b4565b88611350565b90508061109c836001611a6e565b945094505050505b9250929050565b6110b361142e565b60408051608081018252600080825282516020818101855282825283015291810182905260608101919091526110f4846110ee6008826117b4565b85611350565b6001600160401b0316815261110a6008856117b4565b93506000806111198686610f46565b909250905061112c61ffff8216876117b4565b95506000826001600160401b03166001600160401b03811115611151576111516116c2565b6040519080825280601f01601f19166020018201604052801561117b576020820181803683370190505b50905060005b836001600160401b0316816001600160401b0316101561120e57866111af6001600160401b0383168a6117b4565b815181106111bf576111bf611788565b602001015160f81c60f81b82826001600160401b0316815181106111e5576111e5611788565b60200101906001600160f81b031916908160001a90535080611206816117ee565b915050611181565b50602084018190526001600160401b038316604085015261ffff82166112358460086117c7565b61123f91906117c7565b6001600160401b03166060850152509195945050505050565b60006112658260046117b4565b835110156112ac5760405162461bcd60e51b8152602060048201526014602482015273536c6963696e67206f7574206f662072616e676560601b60448201526064016104fc565b6018836112ba8460036117b4565b815181106112ca576112ca611788565b016020015160f81c901b6010846112e28560026117b4565b815181106112f2576112f2611788565b016020015160f81c901b60088561130a8660016117b4565b8151811061131a5761131a611788565b0160200151865160f89190911c90911b9086908690811061133d5761133d611788565b016020015160f81c171717905092915050565b60008151841080156113625750815183105b6113ae5760405162461bcd60e51b815260206004820181905260248201527f52616e67652063616e277420626520626967676572207468616e20617272617960448201526064016104fc565b6000845b84811015611425576113c48682611968565b6113cf906008611a89565b6113da906002611aa0565b8482815181106113ec576113ec611788565b01602001516113fe919060f81c611aac565b611411906001600160401b0316836117b4565b91508061141d8161181c565b9150506113b2565b50949350505050565b604051806080016040528060006001600160401b031681526020016060815260200160008152602001600081525090565b60008083601f84011261147157600080fd5b5081356001600160401b0381111561148857600080fd5b6020830191508360208285010111156110a457600080fd5b600080602083850312156114b357600080fd5b82356001600160401b038111156114c957600080fd5b6114d58582860161145f565b90969095509350505050565b60005b838110156114fc5781810151838201526020016114e4565b50506000910152565b6000815180845261151d8160208601602086016114e1565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156115b957888303603f19018552815180516001600160401b031684528781015160808986018190529061159182870182611505565b838a0151878b0152606093840151939096019290925250509386019390860190600101611558565b509098975050505050505050565b803580151581146115d757600080fd5b919050565b6000806000604084860312156115f157600080fd5b83356001600160401b0381111561160757600080fd5b6116138682870161145f565b90945092506116269050602085016115c7565b90509250925092565b60208152600061062d6020830184611505565b60008060008060006060868803121561165a57600080fd5b85356001600160401b038082111561167157600080fd5b61167d89838a0161145f565b9097509550602088013591508082111561169657600080fd5b506116a38882890161145f565b90945092506116b69050604087016115c7565b90509295509295909350565b634e487b7160e01b600052604160045260246000fd5b6000602082840312156116ea57600080fd5b81356001600160401b038082111561170157600080fd5b818401915084601f83011261171557600080fd5b813581811115611727576117276116c2565b604051601f8201601f19908116603f0116810190838211818310171561174f5761174f6116c2565b8160405282815287602084870101111561176857600080fd5b826020860160208301376000928101602001929092525095945050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156104995761049961179e565b6001600160401b038181168382160190808211156117e7576117e761179e565b5092915050565b60006001600160401b038281166002600160401b031981016118125761181261179e565b6001019392505050565b60006001820161182e5761182e61179e565b5060010190565b60208082526024908201527f536372697074206861736e2774207468652072657175697265642073747275636040820152637475726560e01b606082015260800190565b60ff81811683821601908111156104995761049961179e565b60ff82811682821603908111156104995761049961179e565b600060ff821660ff81036118c1576118c161179e565b60010192915050565b600080858511156118da57600080fd5b838611156118e757600080fd5b5050820193919092039150565b8183823760009101908152919050565b60006020828403121561191657600080fd5b5051919050565b6000825161192f8184602087016114e1565b9190910192915050565b6000835161194b8184602088016114e1565b6001600160e01b0319939093169190920190815260040192915050565b818103818111156104995761049961179e565b600181815b808511156119b657816000190482111561199c5761199c61179e565b808516156119a957918102915b93841c9390800290611980565b509250929050565b6000826119cd57506001610499565b816119da57506000610499565b81600181146119f057600281146119fa57611a16565b6001915050610499565b60ff841115611a0b57611a0b61179e565b50506001821b610499565b5060208310610133831016604e8410600b8410161715611a39575081810a610499565b611a43838361197b565b8060001904821115611a5757611a5761179e565b029392505050565b600061062d60ff8416836119be565b61ffff8181168382160190808211156117e7576117e761179e565b80820281158282048414176104995761049961179e565b600061062d83836119be565b6001600160401b03818116838216028082169190828114611acf57611acf61179e565b50509291505056fea264697066735822122038cd147d36fdac118c47cb7e3d85ea4a3d2293f8cec7fdbc3c873350559a1bff64736f6c63430008120033", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100a25760003560e01c8062f5b491146100a757806306ac4100146100d05780632d56f323146100f05780634c03fe59146101035780639b02794b14610116578063a0cd70fc14610139578063b0d6b1cb1461015a578063b42da4a21461016d578063c7ce85ac14610180578063facde65614610193578063fea8ba63146101a6575b600080fd5b6100ba6100b53660046114a0565b6101b9565b6040516100c79190611531565b60405180910390f35b6100e36100de3660046115dc565b61049f565b6040516100c7919061162f565b6100e36100fe3660046114a0565b610634565b6100e36101113660046115dc565b610725565b610129610124366004611642565b61088c565b60405190151581526020016100c7565b61014c6101473660046116d8565b6108cf565b6040519081526020016100c7565b6100e36101683660046115dc565b610931565b61012961017b3660046116d8565b610b22565b6100e361018e3660046115dc565b610bbb565b6101296101a13660046116d8565b610ca4565b61014c6101b43660046114a0565b610d8d565b606060048383828181106101cf576101cf611788565b909101356001600160f81b03191615905080156102155750838360058181106101fa576101fa611788565b9050013560f81c60f81b6001600160f81b031916600160f81b145b1561021e575060065b6000806102618387878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610f4692505050565b909250905061027461ffff8216846117b4565b925060008060005b846001600160401b0316816001600160401b03161015610328576102a16024876117b4565b95506102e3868a8a8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610f4692505050565b90935091506102f661ffff8316846117c7565b6103019060046117c7565b610314906001600160401b0316876117b4565b955080610320816117ee565b91505061027c565b5060008061036c878b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610f4692505050565b909250905061037f61ffff8216886117b4565b96506000826001600160401b03166001600160401b038111156103a4576103a46116c2565b6040519080825280602002602001820160405280156103dd57816020015b6103ca61142e565b8152602001906001900390816103c25790505b50905060005b836001600160401b031681101561048e57610434898d8d8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506110ab92505050565b82828151811061044657610446611788565b602002602001018190525081818151811061046357610463611788565b6020026020010151606001518961047a91906117b4565b9850806104868161181c565b9150506103e3565b509750505050505050505b92915050565b60606104e084848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610b2292505050565b6105055760405162461bcd60e51b81526004016104fc90611835565b60405180910390fd5b600061051360146001611879565b60ff166001600160401b0381111561052d5761052d6116c2565b6040519080825280601f01601f191660200182016040528015610557576020820181803683370190505b50905060025b61056960026014611879565b60ff168160ff1610156105ea5785858260ff1681811061058b5761058b611788565b9050013560f81c60f81b826002836105a39190611892565b6105ae906001611879565b60ff16815181106105c1576105c1611788565b60200101906001600160f81b031916908160001a905350806105e2816118ab565b91505061055d565b50826105fa57603160fa1b610600565b600560f81b5b8160008151811061061357610613611788565b60200101906001600160f81b031916908160001a90535090505b9392505050565b6060600182116106755760405162461bcd60e51b815260206004820152600c60248201526b496e76616c69642073697a6560a01b60448201526064016104fc565b603560f91b838360008161068b5761068b611788565b9050013560f81c60f81b6001600160f81b031916146106dc5760405162461bcd60e51b815260206004820152600d60248201526c2737ba1027a82fa922aa2aa92760991b60448201526064016104fc565b6106e982600181866118ca565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929695505050505050565b606061076684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610ca492505050565b6107825760405162461bcd60e51b81526004016104fc90611835565b600061079060146001611879565b60ff166001600160401b038111156107aa576107aa6116c2565b6040519080825280601f01601f1916602001820160405280156107d4576020820181803683370190505b50905060035b6107e660036014611879565b60ff168160ff1610156108675785858260ff1681811061080857610808611788565b9050013560f81c60f81b826003836108209190611892565b61082b906001611879565b60ff168151811061083e5761083e611788565b60200101906001600160f81b031916908160001a9053508061085f816118ab565b9150506107da565b508261087757606f60f81b610600565b60008160008151811061061357610613611788565b60006019851480156108c557506108a4848484610931565b8051906020012086866040516108bb9291906118f4565b6040518091039020145b9695505050505050565b6000815160501461091a5760405162461bcd60e51b8152602060048201526015602482015274092dcecc2d8d2c840d0cac2c8cae440d8cadccee8d605b1b60448201526064016104fc565b610925826044611258565b63ffffffff1692915050565b606060006003600286866040516109499291906118f4565b602060405180830381855afa158015610966573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906109899190611904565b60405160200161099b91815260200190565b60408051601f19818403018152908290526109b59161191d565b602060405180830381855afa1580156109d2573d6000803e3d6000fd5b5050506040515160601b90506000836109ef57603160fa1b6109f5565b600560f81b5b6040516001600160f81b0319821660208201526001600160601b0319841660218201529091506000906035016040516020818303038152906040529050600060028083604051610a45919061191d565b602060405180830381855afa158015610a62573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610a859190611904565b604051602001610a9791815260200190565b60408051601f1981840301815290829052610ab19161191d565b602060405180830381855afa158015610ace573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610af19190611904565b90508181604051602001610b06929190611939565b6040516020818303038152906040529450505050509392505050565b600081516017148015610b5a5750815160a960f81b908390600090610b4957610b49611788565b01602001516001600160f81b031916145b8015610b835750601460ff1682600181518110610b7957610b79611788565b016020015160f81c145b801561049957508151608760f81b9083906016908110610ba557610ba5611788565b01602001516001600160f81b0319161492915050565b6060610bfc84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610ca492505050565b15610c1357610c0c848484610725565b905061062d565b610c5284848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610b2292505050565b15610c6257610c0c84848461049f565b60405162461bcd60e51b8152602060048201526017602482015276556e737570706f7274656420736372697074207479706560481b60448201526064016104fc565b600081516019148015610cdc57508151603b60f91b908390600090610ccb57610ccb611788565b01602001516001600160f81b031916145b8015610d0f5750815160a960f81b9083906001908110610cfe57610cfe611788565b01602001516001600160f81b031916145b8015610d385750601460ff1682600281518110610d2e57610d2e611788565b016020015160f81c145b8015610d6b57508151601160fb1b9083906017908110610d5a57610d5a611788565b01602001516001600160f81b031916145b801561049957508151602b60fa1b9083906018908110610ba557610ba5611788565b6000806002808585604051610da39291906118f4565b602060405180830381855afa158015610dc0573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610de39190611904565b604051602001610df591815260200190565b60408051601f1981840301815290829052610e0f9161191d565b602060405180830381855afa158015610e2c573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610e4f9190611904565b604051602001610e6191815260200190565b60408051601f1981840301815291905290506000805b6010811015610f3957828181518110610e9257610e92611788565b01602001516001600160f81b031916915082610eaf82601f611968565b81518110610ebf57610ebf611788565b602001015160f81c60f81b838281518110610edc57610edc611788565b60200101906001600160f81b031916908160001a9053508183610f0083601f611968565b81518110610f1057610f10611788565b60200101906001600160f81b031916908160001a90535080610f318161181c565b915050610e77565b5050602001519392505050565b60008083835111610faa5760405162461bcd60e51b815260206004820152602860248201527f53697a6520706f736974696f6e2063616e277420626520626967676572207468604482015267616e20617272617960c01b60648201526084016104fc565b6000838581518110610fbe57610fbe611788565b016020015160f81c90506000819003610fdf576000600192509250506110a4565b60fc60ff821611610ff85760ff169150600190506110a4565b600061100560fc83611892565b611010906002611a5f565b905060088111156110635760405162461bcd60e51b815260206004820152601f60248201527f756e737570706f7274656420636f6d706163742073697a65206c656e6774680060448201526064016104fc565b600061108e6110738860016117b4565b61107d848a6117b4565b6110889060016117b4565b88611350565b90508061109c836001611a6e565b945094505050505b9250929050565b6110b361142e565b60408051608081018252600080825282516020818101855282825283015291810182905260608101919091526110f4846110ee6008826117b4565b85611350565b6001600160401b0316815261110a6008856117b4565b93506000806111198686610f46565b909250905061112c61ffff8216876117b4565b95506000826001600160401b03166001600160401b03811115611151576111516116c2565b6040519080825280601f01601f19166020018201604052801561117b576020820181803683370190505b50905060005b836001600160401b0316816001600160401b0316101561120e57866111af6001600160401b0383168a6117b4565b815181106111bf576111bf611788565b602001015160f81c60f81b82826001600160401b0316815181106111e5576111e5611788565b60200101906001600160f81b031916908160001a90535080611206816117ee565b915050611181565b50602084018190526001600160401b038316604085015261ffff82166112358460086117c7565b61123f91906117c7565b6001600160401b03166060850152509195945050505050565b60006112658260046117b4565b835110156112ac5760405162461bcd60e51b8152602060048201526014602482015273536c6963696e67206f7574206f662072616e676560601b60448201526064016104fc565b6018836112ba8460036117b4565b815181106112ca576112ca611788565b016020015160f81c901b6010846112e28560026117b4565b815181106112f2576112f2611788565b016020015160f81c901b60088561130a8660016117b4565b8151811061131a5761131a611788565b0160200151865160f89190911c90911b9086908690811061133d5761133d611788565b016020015160f81c171717905092915050565b60008151841080156113625750815183105b6113ae5760405162461bcd60e51b815260206004820181905260248201527f52616e67652063616e277420626520626967676572207468616e20617272617960448201526064016104fc565b6000845b84811015611425576113c48682611968565b6113cf906008611a89565b6113da906002611aa0565b8482815181106113ec576113ec611788565b01602001516113fe919060f81c611aac565b611411906001600160401b0316836117b4565b91508061141d8161181c565b9150506113b2565b50949350505050565b604051806080016040528060006001600160401b031681526020016060815260200160008152602001600081525090565b60008083601f84011261147157600080fd5b5081356001600160401b0381111561148857600080fd5b6020830191508360208285010111156110a457600080fd5b600080602083850312156114b357600080fd5b82356001600160401b038111156114c957600080fd5b6114d58582860161145f565b90969095509350505050565b60005b838110156114fc5781810151838201526020016114e4565b50506000910152565b6000815180845261151d8160208601602086016114e1565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156115b957888303603f19018552815180516001600160401b031684528781015160808986018190529061159182870182611505565b838a0151878b0152606093840151939096019290925250509386019390860190600101611558565b509098975050505050505050565b803580151581146115d757600080fd5b919050565b6000806000604084860312156115f157600080fd5b83356001600160401b0381111561160757600080fd5b6116138682870161145f565b90945092506116269050602085016115c7565b90509250925092565b60208152600061062d6020830184611505565b60008060008060006060868803121561165a57600080fd5b85356001600160401b038082111561167157600080fd5b61167d89838a0161145f565b9097509550602088013591508082111561169657600080fd5b506116a38882890161145f565b90945092506116b69050604087016115c7565b90509295509295909350565b634e487b7160e01b600052604160045260246000fd5b6000602082840312156116ea57600080fd5b81356001600160401b038082111561170157600080fd5b818401915084601f83011261171557600080fd5b813581811115611727576117276116c2565b604051601f8201601f19908116603f0116810190838211818310171561174f5761174f6116c2565b8160405282815287602084870101111561176857600080fd5b826020860160208301376000928101602001929092525095945050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156104995761049961179e565b6001600160401b038181168382160190808211156117e7576117e761179e565b5092915050565b60006001600160401b038281166002600160401b031981016118125761181261179e565b6001019392505050565b60006001820161182e5761182e61179e565b5060010190565b60208082526024908201527f536372697074206861736e2774207468652072657175697265642073747275636040820152637475726560e01b606082015260800190565b60ff81811683821601908111156104995761049961179e565b60ff82811682821603908111156104995761049961179e565b600060ff821660ff81036118c1576118c161179e565b60010192915050565b600080858511156118da57600080fd5b838611156118e757600080fd5b5050820193919092039150565b8183823760009101908152919050565b60006020828403121561191657600080fd5b5051919050565b6000825161192f8184602087016114e1565b9190910192915050565b6000835161194b8184602088016114e1565b6001600160e01b0319939093169190920190815260040192915050565b818103818111156104995761049961179e565b600181815b808511156119b657816000190482111561199c5761199c61179e565b808516156119a957918102915b93841c9390800290611980565b509250929050565b6000826119cd57506001610499565b816119da57506000610499565b81600181146119f057600281146119fa57611a16565b6001915050610499565b60ff841115611a0b57611a0b61179e565b50506001821b610499565b5060208310610133831016604e8410600b8410161715611a39575081810a610499565b611a43838361197b565b8060001904821115611a5757611a5761179e565b029392505050565b600061062d60ff8416836119be565b61ffff8181168382160190808211156117e7576117e761179e565b80820281158282048414176104995761049961179e565b600061062d83836119be565b6001600160401b03818116838216028082169190828114611acf57611acf61179e565b50509291505056fea264697066735822122038cd147d36fdac118c47cb7e3d85ea4a3d2293f8cec7fdbc3c873350559a1bff64736f6c63430008120033", + "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"header\",\"type\":\"bytes\"}],\"name\":\"getBtcBlockTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"rawTx\",\"type\":\"bytes\"}],\"name\":\"getOutputs\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"value\",\"type\":\"uint64\"},{\"internalType\":\"bytes\",\"name\":\"pkScript\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"scriptSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"totalSize\",\"type\":\"uint256\"}],\"internalType\":\"struct BtcUtils.TxRawOutput[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"script\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"mainnet\",\"type\":\"bool\"}],\"name\":\"getP2SHAddressFromScript\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"btcTx\",\"type\":\"bytes\"}],\"name\":\"hashBtcTx\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pkScript\",\"type\":\"bytes\"}],\"name\":\"isP2PKHOutput\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pkScript\",\"type\":\"bytes\"}],\"name\":\"isP2SHOutput\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pkScript\",\"type\":\"bytes\"}],\"name\":\"isP2TROutput\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pkScript\",\"type\":\"bytes\"}],\"name\":\"isP2WPKHOutput\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pkScript\",\"type\":\"bytes\"}],\"name\":\"isP2WSHOutput\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"mainnet\",\"type\":\"bool\"}],\"name\":\"outputScriptToAddress\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"}],\"name\":\"parseNullDataScript\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"mainnet\",\"type\":\"bool\"}],\"name\":\"parsePayToPubKeyHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"mainnet\",\"type\":\"bool\"}],\"name\":\"parsePayToScriptHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"}],\"name\":\"parsePayToTaproot\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"}],\"name\":\"parsePayToWitnessPubKeyHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"}],\"name\":\"parsePayToWitnessScriptHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"p2sh\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"script\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"mainnet\",\"type\":\"bool\"}],\"name\":\"validateP2SHAdress\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"getBtcBlockTimestamp(bytes)\":{\"details\":\"Gets the timestamp of a Bitcoin block header\",\"params\":{\"header\":\"The block header\"},\"returns\":{\"_0\":\"The timestamp of the block header\"}},\"getOutputs(bytes)\":{\"params\":{\"rawTx\":\"the raw transaction\"},\"returns\":{\"_0\":\"An array of `TxRawOutput` with the outputs of the transaction\"}},\"getP2SHAddressFromScript(bytes,bool)\":{\"params\":{\"mainnet\":\"flag to specify if the output should be a mainnet address\",\"script\":\"the script to generate the address from\"},\"returns\":{\"_0\":\"The address generate from the script\"}},\"hashBtcTx(bytes)\":{\"params\":{\"btcTx\":\"the transaction to hash\"},\"returns\":{\"_0\":\"The transaction id \"}},\"isP2PKHOutput(bytes)\":{\"params\":{\"pkScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"Whether the script has a pay-to-public-key-hash output structure or not\"}},\"isP2SHOutput(bytes)\":{\"params\":{\"pkScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"Whether the script has a pay-to-script-hash output structure or not\"}},\"isP2TROutput(bytes)\":{\"params\":{\"pkScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"Whether the script has a pay-to-taproot output structure or not\"}},\"isP2WPKHOutput(bytes)\":{\"params\":{\"pkScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"Whether the script has a pay-to-witness-pubkey-hash output structure or not\"}},\"isP2WSHOutput(bytes)\":{\"params\":{\"pkScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"Whether the script has a pay-to-witness-script-hash output structure or not\"}},\"outputScriptToAddress(bytes,bool)\":{\"params\":{\"mainnet\":\"if the address to generate is from mainnet or testnet\",\"outputScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"The address bytes regarless of the output script type\"}},\"parseNullDataScript(bytes)\":{\"params\":{\"outputScript\":\"the fragment of the raw transaction containing the raw output script \"},\"returns\":{\"_0\":\"The content embedded inside the script\"}},\"parsePayToPubKeyHash(bytes,bool)\":{\"params\":{\"mainnet\":\"if the address to generate is from mainnet or testnet \",\"outputScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"The address generated using the receiver's public key hash\"}},\"parsePayToScriptHash(bytes,bool)\":{\"params\":{\"mainnet\":\"if the address to generate is from mainnet or testnet\",\"outputScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"The address generated using the script hash\"}},\"parsePayToTaproot(bytes)\":{\"params\":{\"outputScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"The address bech32m words generated using the taproot pubkey hash\"}},\"parsePayToWitnessPubKeyHash(bytes)\":{\"params\":{\"outputScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"The address bech32 words generated using the pubkey hash\"}},\"parsePayToWitnessScriptHash(bytes)\":{\"params\":{\"outputScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"The address bech32 words generated using the script hash\"}},\"validateP2SHAdress(bytes,bytes,bool)\":{\"params\":{\"mainnet\":\"flag to specify if its a mainnet address\",\"p2sh\":\"the pay-to-script-hash address\",\"script\":\"the script to check\"},\"returns\":{\"_0\":\"Whether the address belongs to the script or not\"}}},\"title\":\"BtcUtils\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"getOutputs(bytes)\":{\"notice\":\"Parse a raw transaction to get an array of its outputs in a structured representation\"},\"getP2SHAddressFromScript(bytes,bool)\":{\"notice\":\"Generate a pay-to-script-hash address from a script, the resulting byte array already contains the 4 checksum bytes at the end of it\"},\"hashBtcTx(bytes)\":{\"notice\":\"Hash a bitcoin raw transaction to get its id (reversed double sha256)\"},\"isP2PKHOutput(bytes)\":{\"notice\":\"Check if a raw output script is a pay-to-public-key-hash output\"},\"isP2SHOutput(bytes)\":{\"notice\":\"Check if a raw output script is a pay-to-script-hash output\"},\"isP2TROutput(bytes)\":{\"notice\":\"Check if a raw output script is a pay-to-taproot outputReference for implementation: https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki \"},\"isP2WPKHOutput(bytes)\":{\"notice\":\"Check if a raw output script is a pay-to-witness-pubkey-hash output\"},\"isP2WSHOutput(bytes)\":{\"notice\":\"Check if a raw output script is a pay-to-witness-script-hash output\"},\"outputScriptToAddress(bytes,bool)\":{\"notice\":\"Parse a raw output script whose type is not known by the consumer. The function will return the corresponding address if the type of the script is supported or an error if not. For the addresses that are encoded with base58check the checksum bytes are not included in the resulting byte array\"},\"parseNullDataScript(bytes)\":{\"notice\":\"Parse a raw null-data output script to get its content\"},\"parsePayToPubKeyHash(bytes,bool)\":{\"notice\":\"Parse a raw pay-to-public-key-hash output script to get the corresponding address, the resulting byte array doesn't include the checksum bytes of the base58check encoding at the end\"},\"parsePayToScriptHash(bytes,bool)\":{\"notice\":\"Parse a raw pay-to-script-hash output script to get the corresponding address, the resulting byte array doesn't include the checksum bytes of the base58check encoding at the end\"},\"parsePayToTaproot(bytes)\":{\"notice\":\"Parse a raw pay-to-taproot output script to get the corresponding address words, the resulting words are only the data part of the bech32m encoding and doesn't include the HRP\"},\"parsePayToWitnessPubKeyHash(bytes)\":{\"notice\":\"Parse a raw pay-to-witness-pubkey-hash output script to get the corresponding address words, the resulting words are only the data part of the bech32 encoding and doesn't include the HRP\"},\"parsePayToWitnessScriptHash(bytes)\":{\"notice\":\"Parse a raw pay-to-witness-script-hash output script to get the corresponding address words, the resulting words are only the data part of the bech32 encoding and doesn't include the HRP\"},\"validateP2SHAdress(bytes,bytes,bool)\":{\"notice\":\"Check if a pay-to-script-hash address belogs to a specific script, expects the address bytes to include the 4 checksum bytes at the end\"}},\"notice\":\"This library contains functionality to make easier to work with Bitcoin transactions in Solidity.This library is based in this document: https://developer.bitcoin.org/reference/transactions.html#raw-transaction-format\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\":\"BtcUtils\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\":{\"keccak256\":\"0x7237a22e0d518b3499d81ca4918c038a168882e57a35af17d57afd61234c8512\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df4acd5a0609e279ddad58d0532a77fdc959688144e5bb7ccfc782db9236251\",\"dweb:/ipfs/QmbjJFBRm6JFPx9Jh34hX8N5rkgBxJ5kbdZsoJ3Tb4UyCa\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":{\"keccak256\":\"0x5996186b53b109f592341cfe164c6673346eafda66a2a496e6d5fcec5c74de5a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8d3073328ce73163fe8088b14bf39ba03f5f233604a0eb329bb64f2be73ff411\",\"dweb:/ipfs/QmScVLft2AL48D1Z93e3TDQbfZNh7sxJaeS23U4KPGsjTY\"]}},\"version\":1}", + "bytecode": "0x61244c61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100ef5760003560e01c8062f5b491146100f457806306ac41001461011d5780632d56f3231461013d5780634c03fe591461015057806354fd4d50146101635780636bdd7563146101845780637ddac3b21461019757806396743c31146101aa5780639b02794b146101bd578063a0cd70fc146101e0578063b0d6b1cb14610201578063b36b029414610214578063b42da4a214610227578063c3d9cc751461023a578063c7ce85ac1461024d578063ed0b4ba014610260578063facde65614610273578063fea8ba6314610286575b600080fd5b610107610102366004611da1565b610299565b6040516101149190611e32565b60405180910390f35b61013061012b366004611edd565b61057f565b6040516101149190611f30565b61013061014b366004611da1565b61070e565b61013061015e366004611edd565b6107ff565b604080518082019091526005815264302e322e3160d81b6020820152610130565b610130610192366004611da1565b610960565b6101306101a5366004611da1565b610b12565b6101306101b8366004611da1565b610c7f565b6101d06101cb366004611f43565b610dec565b6040519015158152602001610114565b6101f36101ee366004611fd9565b610e2f565b604051908152602001610114565b61013061020f366004611edd565b610e91565b6101d0610222366004611fd9565b611082565b6101d0610235366004611fd9565b6110eb565b6101d0610248366004611fd9565b61118b565b61013061025b366004611edd565b6111bc565b6101d061026e366004611fd9565b61138f565b6101d0610281366004611fd9565b6113e9565b6101f3610294366004611da1565b6114d9565b606060048383828181106102af576102af612089565b909101356001600160f81b03191615905080156102f55750838360058181106102da576102da612089565b9050013560f81c60f81b6001600160f81b031916600160f81b145b156102fe575060065b6000806103418387878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061169292505050565b909250905061035461ffff8216846120b5565b925060008060005b846001600160401b0316816001600160401b03161015610408576103816024876120b5565b95506103c3868a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061169292505050565b90935091506103d661ffff8316846120c8565b6103e19060046120c8565b6103f4906001600160401b0316876120b5565b955080610400816120ef565b91505061035c565b5060008061044c878b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061169292505050565b909250905061045f61ffff8216886120b5565b96506000826001600160401b03166001600160401b0381111561048457610484611fc3565b6040519080825280602002602001820160405280156104bd57816020015b6104aa611d2f565b8152602001906001900390816104a25790505b50905060005b836001600160401b031681101561056e57610514898d8d8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506117f792505050565b82828151811061052657610526612089565b602002602001018190525081818151811061054357610543612089565b6020026020010151606001518961055a91906120b5565b9850806105668161211d565b9150506104c3565b509750505050505050505b92915050565b60606105c084848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506110eb92505050565b6105e55760405162461bcd60e51b81526004016105dc90612136565b60405180910390fd5b60006105f3601460016120b5565b6001600160401b0381111561060a5761060a611fc3565b6040519080825280601f01601f191660200182016040528015610634576020820181803683370190505b50905060025b610646600260146120b5565b8160ff1610156106c45785858260ff1681811061066557610665612089565b9050013560f81c60f81b8260028361067d919061217a565b610688906001612193565b60ff168151811061069b5761069b612089565b60200101906001600160f81b031916908160001a905350806106bc816121ac565b91505061063a565b50826106d457603160fa1b6106da565b600560f81b5b816000815181106106ed576106ed612089565b60200101906001600160f81b031916908160001a90535090505b9392505050565b60606001821161074f5760405162461bcd60e51b815260206004820152600c60248201526b496e76616c69642073697a6560a01b60448201526064016105dc565b603560f91b838360008161076557610765612089565b9050013560f81c60f81b6001600160f81b031916146107b65760405162461bcd60e51b815260206004820152600d60248201526c2737ba1027a82fa922aa2aa92760991b60448201526064016105dc565b6107c382600181866121cb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929695505050505050565b606061084084848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506113e992505050565b61085c5760405162461bcd60e51b81526004016105dc90612136565b600061086a601460016120b5565b6001600160401b0381111561088157610881611fc3565b6040519080825280601f01601f1916602001820160405280156108ab576020820181803683370190505b50905060035b6108bd600360146120b5565b8160ff16101561093b5785858260ff168181106108dc576108dc612089565b9050013560f81c60f81b826003836108f4919061217a565b6108ff906001612193565b60ff168151811061091257610912612089565b60200101906001600160f81b031916908160001a90535080610933816121ac565b9150506108b1565b508261094b57606f60f81b6106da565b6000816000815181106106ed576106ed612089565b60606109a183838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061118b92505050565b6109bd5760405162461bcd60e51b81526004016105dc90612136565b60006109c960206119a4565b6109d49060016120b5565b90506000816001600160401b038111156109f0576109f0611fc3565b6040519080825280601f01601f191660200182016040528015610a1a576020820181803683370190505b509050600160f81b81600081518110610a3557610a35612089565b60200101906001600160f81b031916908160001a9053506000610a98610a5e866002818a6121cb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611a0092505050565b905060015b83811015610b075781610ab16001836121f5565b81518110610ac157610ac1612089565b602001015160f81c60f81b838281518110610ade57610ade612089565b60200101906001600160f81b031916908160001a90535080610aff8161211d565b915050610a9d565b509095945050505050565b6060610b5383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061138f92505050565b610b6f5760405162461bcd60e51b81526004016105dc90612136565b6000610b7b60146119a4565b610b869060016120b5565b90506000816001600160401b03811115610ba257610ba2611fc3565b6040519080825280601f01601f191660200182016040528015610bcc576020820181803683370190505b509050600060f81b81600081518110610be757610be7612089565b60200101906001600160f81b031916908160001a9053506000610c10610a5e866002818a6121cb565b905060015b83811015610b075781610c296001836121f5565b81518110610c3957610c39612089565b602001015160f81c60f81b838281518110610c5657610c56612089565b60200101906001600160f81b031916908160001a90535080610c778161211d565b915050610c15565b6060610cc083838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061108292505050565b610cdc5760405162461bcd60e51b81526004016105dc90612136565b6000610ce860206119a4565b610cf39060016120b5565b90506000816001600160401b03811115610d0f57610d0f611fc3565b6040519080825280601f01601f191660200182016040528015610d39576020820181803683370190505b509050600060f81b81600081518110610d5457610d54612089565b60200101906001600160f81b031916908160001a9053506000610d7d610a5e866002818a6121cb565b905060015b83811015610b075781610d966001836121f5565b81518110610da657610da6612089565b602001015160f81c60f81b838281518110610dc357610dc3612089565b60200101906001600160f81b031916908160001a90535080610de48161211d565b915050610d82565b6000601985148015610e255750610e04848484610e91565b805190602001208686604051610e1b929190612208565b6040518091039020145b9695505050505050565b60008151605014610e7a5760405162461bcd60e51b8152602060048201526015602482015274092dcecc2d8d2c840d0cac2c8cae440d8cadccee8d605b1b60448201526064016105dc565b610e85826044611b59565b63ffffffff1692915050565b60606000600360028686604051610ea9929190612208565b602060405180830381855afa158015610ec6573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610ee99190612218565b604051602001610efb91815260200190565b60408051601f1981840301815290829052610f1591612231565b602060405180830381855afa158015610f32573d6000803e3d6000fd5b5050506040515160601b9050600083610f4f57603160fa1b610f55565b600560f81b5b6040516001600160f81b0319821660208201526001600160601b0319841660218201529091506000906035016040516020818303038152906040529050600060028083604051610fa59190612231565b602060405180830381855afa158015610fc2573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610fe59190612218565b604051602001610ff791815260200190565b60408051601f198184030181529082905261101191612231565b602060405180830381855afa15801561102e573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906110519190612218565b9050818160405160200161106692919061224d565b6040516020818303038152906040529450505050509392505050565b6000611090602060026120b5565b82511480156110c057508151600090839082906110af576110af612089565b01602001516001600160f81b031916145b801561057957506020826001815181106110dc576110dc612089565b016020015160f81c1492915050565b60006110f9601460036120b5565b825114801561112d5750815160a960f81b90839060009061111c5761111c612089565b01602001516001600160f81b031916145b8015611153575060148260018151811061114957611149612089565b016020015160f81c145b801561057957508151608760f81b908390601690811061117557611175612089565b01602001516001600160f81b0319161492915050565b6000611199602060026120b5565b82511480156110c057508151605160f81b9083906000906110af576110af612089565b60606111fd84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506113e992505050565b156112145761120d8484846107ff565b9050610707565b61125384848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506110eb92505050565b156112635761120d84848461057f565b6112a284848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061138f92505050565b156112b15761120d8484610b12565b6112f084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061108292505050565b156112ff5761120d8484610c7f565b61133e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061118b92505050565b1561134d5761120d8484610960565b60405162461bcd60e51b8152602060048201526017602482015276556e737570706f7274656420736372697074207479706560481b60448201526064016105dc565b600061139d601460026120b5565b82511480156113cd57508151600090839082906113bc576113bc612089565b01602001516001600160f81b031916145b801561057957506014826001815181106110dc576110dc612089565b60006113f7601460056120b5565b825114801561142b57508151603b60f91b90839060009061141a5761141a612089565b01602001516001600160f81b031916145b801561145e5750815160a960f81b908390600190811061144d5761144d612089565b01602001516001600160f81b031916145b8015611484575060148260028151811061147a5761147a612089565b016020015160f81c145b80156114b757508151601160fb1b90839060179081106114a6576114a6612089565b01602001516001600160f81b031916145b801561057957508151602b60fa1b908390601890811061117557611175612089565b60008060028085856040516114ef929190612208565b602060405180830381855afa15801561150c573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061152f9190612218565b60405160200161154191815260200190565b60408051601f198184030181529082905261155b91612231565b602060405180830381855afa158015611578573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061159b9190612218565b6040516020016115ad91815260200190565b60408051601f1981840301815291905290506000805b6010811015611685578281815181106115de576115de612089565b01602001516001600160f81b0319169150826115fb82601f6121f5565b8151811061160b5761160b612089565b602001015160f81c60f81b83828151811061162857611628612089565b60200101906001600160f81b031916908160001a905350818361164c83601f6121f5565b8151811061165c5761165c612089565b60200101906001600160f81b031916908160001a9053508061167d8161211d565b9150506115c3565b5050602001519392505050565b600080838351116116f65760405162461bcd60e51b815260206004820152602860248201527f53697a6520706f736974696f6e2063616e277420626520626967676572207468604482015267616e20617272617960c01b60648201526084016105dc565b600083858151811061170a5761170a612089565b016020015160f81c9050600081900361172b576000600192509250506117f0565b60fc60ff8216116117445760ff169150600190506117f0565b600061175160fc8361217a565b61175c906002612360565b905060088111156117af5760405162461bcd60e51b815260206004820152601f60248201527f756e737570706f7274656420636f6d706163742073697a65206c656e6774680060448201526064016105dc565b60006117da6117bf8860016120b5565b6117c9848a6120b5565b6117d49060016120b5565b88611c51565b9050806117e883600161236f565b945094505050505b9250929050565b6117ff611d2f565b60408051608081018252600080825282516020818101855282825283015291810182905260608101919091526118408461183a6008826120b5565b85611c51565b6001600160401b031681526118566008856120b5565b93506000806118658686611692565b909250905061187861ffff8216876120b5565b95506000826001600160401b03166001600160401b0381111561189d5761189d611fc3565b6040519080825280601f01601f1916602001820160405280156118c7576020820181803683370190505b50905060005b836001600160401b0316816001600160401b0316101561195a57866118fb6001600160401b0383168a6120b5565b8151811061190b5761190b612089565b602001015160f81c60f81b82826001600160401b03168151811061193157611931612089565b60200101906001600160f81b031916908160001a90535080611952816120ef565b9150506118cd565b50602084018190526001600160401b038316604085015261ffff82166119818460086120c8565b61198b91906120c8565b6001600160401b03166060850152509195945050505050565b60008060056119b460088561238a565b6119be91906123b7565b9050600060056119cf60088661238a565b6119d991906123cb565b159050806119e85760016119eb565b60005b6119f89060ff16836120b5565b949350505050565b60606000601f9050600080600080611a1887516119a4565b6001600160401b03811115611a2f57611a2f611fc3565b6040519080825280601f01601f191660200182016040528015611a59576020820181803683370190505b50905060005b8751811015611b0657878181518110611a7a57611a7a612089565b60209101015160f81c600895861b1794611a9490856120b5565b93505b60058410611af657611aaa6005856121f5565b93508560ff168486901c1660f81b828460ff1681518110611acd57611acd612089565b60200101906001600160f81b031916908160001a90535082611aee816121ac565b935050611a97565b611aff8161211d565b9050611a5f565b508215610e255760ff8516611b1c8460056121f5565b85901b1660f81b818360ff1681518110611b3857611b38612089565b60200101906001600160f81b031916908160001a9053509695505050505050565b6000611b668260046120b5565b83511015611bad5760405162461bcd60e51b8152602060048201526014602482015273536c6963696e67206f7574206f662072616e676560601b60448201526064016105dc565b601883611bbb8460036120b5565b81518110611bcb57611bcb612089565b016020015160f81c901b601084611be38560026120b5565b81518110611bf357611bf3612089565b016020015160f81c901b600885611c0b8660016120b5565b81518110611c1b57611c1b612089565b0160200151865160f89190911c90911b90869086908110611c3e57611c3e612089565b016020015160f81c171717905092915050565b6000815184108015611c635750815183105b611caf5760405162461bcd60e51b815260206004820181905260248201527f52616e67652063616e277420626520626967676572207468616e20617272617960448201526064016105dc565b6000845b84811015611d2657611cc586826121f5565b611cd090600861238a565b611cdb9060026123df565b848281518110611ced57611ced612089565b0160200151611cff919060f81c6123eb565b611d12906001600160401b0316836120b5565b915080611d1e8161211d565b915050611cb3565b50949350505050565b604051806080016040528060006001600160401b031681526020016060815260200160008152602001600081525090565b60008083601f840112611d7257600080fd5b5081356001600160401b03811115611d8957600080fd5b6020830191508360208285010111156117f057600080fd5b60008060208385031215611db457600080fd5b82356001600160401b03811115611dca57600080fd5b611dd685828601611d60565b90969095509350505050565b60005b83811015611dfd578181015183820152602001611de5565b50506000910152565b60008151808452611e1e816020860160208601611de2565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015611eba57888303603f19018552815180516001600160401b0316845287810151608089860181905290611e9282870182611e06565b838a0151878b0152606093840151939096019290925250509386019390860190600101611e59565b509098975050505050505050565b80358015158114611ed857600080fd5b919050565b600080600060408486031215611ef257600080fd5b83356001600160401b03811115611f0857600080fd5b611f1486828701611d60565b9094509250611f27905060208501611ec8565b90509250925092565b6020815260006107076020830184611e06565b600080600080600060608688031215611f5b57600080fd5b85356001600160401b0380821115611f7257600080fd5b611f7e89838a01611d60565b90975095506020880135915080821115611f9757600080fd5b50611fa488828901611d60565b9094509250611fb7905060408701611ec8565b90509295509295909350565b634e487b7160e01b600052604160045260246000fd5b600060208284031215611feb57600080fd5b81356001600160401b038082111561200257600080fd5b818401915084601f83011261201657600080fd5b81358181111561202857612028611fc3565b604051601f8201601f19908116603f0116810190838211818310171561205057612050611fc3565b8160405282815287602084870101111561206957600080fd5b826020860160208301376000928101602001929092525095945050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156105795761057961209f565b6001600160401b038181168382160190808211156120e8576120e861209f565b5092915050565b60006001600160401b038281166002600160401b031981016121135761211361209f565b6001019392505050565b60006001820161212f5761212f61209f565b5060010190565b60208082526024908201527f536372697074206861736e2774207468652072657175697265642073747275636040820152637475726560e01b606082015260800190565b60ff82811682821603908111156105795761057961209f565b60ff81811683821601908111156105795761057961209f565b600060ff821660ff81036121c2576121c261209f565b60010192915050565b600080858511156121db57600080fd5b838611156121e857600080fd5b5050820193919092039150565b818103818111156105795761057961209f565b8183823760009101908152919050565b60006020828403121561222a57600080fd5b5051919050565b60008251612243818460208701611de2565b9190910192915050565b6000835161225f818460208801611de2565b6001600160e01b0319939093169190920190815260040192915050565b600181815b808511156122b757816000190482111561229d5761229d61209f565b808516156122aa57918102915b93841c9390800290612281565b509250929050565b6000826122ce57506001610579565b816122db57506000610579565b81600181146122f157600281146122fb57612317565b6001915050610579565b60ff84111561230c5761230c61209f565b50506001821b610579565b5060208310610133831016604e8410600b841016171561233a575081810a610579565b612344838361227c565b80600019048211156123585761235861209f565b029392505050565b600061070760ff8416836122bf565b61ffff8181168382160190808211156120e8576120e861209f565b80820281158282048414176105795761057961209f565b634e487b7160e01b600052601260045260246000fd5b6000826123c6576123c66123a1565b500490565b6000826123da576123da6123a1565b500690565b600061070783836122bf565b6001600160401b0381811683821602808216919082811461240e5761240e61209f565b50509291505056fea26469706673582212207c217a41888529800be793c549eef013d4d2405f68a570e85371885eaec4fe3064736f6c63430008120033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100ef5760003560e01c8062f5b491146100f457806306ac41001461011d5780632d56f3231461013d5780634c03fe591461015057806354fd4d50146101635780636bdd7563146101845780637ddac3b21461019757806396743c31146101aa5780639b02794b146101bd578063a0cd70fc146101e0578063b0d6b1cb14610201578063b36b029414610214578063b42da4a214610227578063c3d9cc751461023a578063c7ce85ac1461024d578063ed0b4ba014610260578063facde65614610273578063fea8ba6314610286575b600080fd5b610107610102366004611da1565b610299565b6040516101149190611e32565b60405180910390f35b61013061012b366004611edd565b61057f565b6040516101149190611f30565b61013061014b366004611da1565b61070e565b61013061015e366004611edd565b6107ff565b604080518082019091526005815264302e322e3160d81b6020820152610130565b610130610192366004611da1565b610960565b6101306101a5366004611da1565b610b12565b6101306101b8366004611da1565b610c7f565b6101d06101cb366004611f43565b610dec565b6040519015158152602001610114565b6101f36101ee366004611fd9565b610e2f565b604051908152602001610114565b61013061020f366004611edd565b610e91565b6101d0610222366004611fd9565b611082565b6101d0610235366004611fd9565b6110eb565b6101d0610248366004611fd9565b61118b565b61013061025b366004611edd565b6111bc565b6101d061026e366004611fd9565b61138f565b6101d0610281366004611fd9565b6113e9565b6101f3610294366004611da1565b6114d9565b606060048383828181106102af576102af612089565b909101356001600160f81b03191615905080156102f55750838360058181106102da576102da612089565b9050013560f81c60f81b6001600160f81b031916600160f81b145b156102fe575060065b6000806103418387878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061169292505050565b909250905061035461ffff8216846120b5565b925060008060005b846001600160401b0316816001600160401b03161015610408576103816024876120b5565b95506103c3868a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061169292505050565b90935091506103d661ffff8316846120c8565b6103e19060046120c8565b6103f4906001600160401b0316876120b5565b955080610400816120ef565b91505061035c565b5060008061044c878b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061169292505050565b909250905061045f61ffff8216886120b5565b96506000826001600160401b03166001600160401b0381111561048457610484611fc3565b6040519080825280602002602001820160405280156104bd57816020015b6104aa611d2f565b8152602001906001900390816104a25790505b50905060005b836001600160401b031681101561056e57610514898d8d8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506117f792505050565b82828151811061052657610526612089565b602002602001018190525081818151811061054357610543612089565b6020026020010151606001518961055a91906120b5565b9850806105668161211d565b9150506104c3565b509750505050505050505b92915050565b60606105c084848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506110eb92505050565b6105e55760405162461bcd60e51b81526004016105dc90612136565b60405180910390fd5b60006105f3601460016120b5565b6001600160401b0381111561060a5761060a611fc3565b6040519080825280601f01601f191660200182016040528015610634576020820181803683370190505b50905060025b610646600260146120b5565b8160ff1610156106c45785858260ff1681811061066557610665612089565b9050013560f81c60f81b8260028361067d919061217a565b610688906001612193565b60ff168151811061069b5761069b612089565b60200101906001600160f81b031916908160001a905350806106bc816121ac565b91505061063a565b50826106d457603160fa1b6106da565b600560f81b5b816000815181106106ed576106ed612089565b60200101906001600160f81b031916908160001a90535090505b9392505050565b60606001821161074f5760405162461bcd60e51b815260206004820152600c60248201526b496e76616c69642073697a6560a01b60448201526064016105dc565b603560f91b838360008161076557610765612089565b9050013560f81c60f81b6001600160f81b031916146107b65760405162461bcd60e51b815260206004820152600d60248201526c2737ba1027a82fa922aa2aa92760991b60448201526064016105dc565b6107c382600181866121cb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929695505050505050565b606061084084848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506113e992505050565b61085c5760405162461bcd60e51b81526004016105dc90612136565b600061086a601460016120b5565b6001600160401b0381111561088157610881611fc3565b6040519080825280601f01601f1916602001820160405280156108ab576020820181803683370190505b50905060035b6108bd600360146120b5565b8160ff16101561093b5785858260ff168181106108dc576108dc612089565b9050013560f81c60f81b826003836108f4919061217a565b6108ff906001612193565b60ff168151811061091257610912612089565b60200101906001600160f81b031916908160001a90535080610933816121ac565b9150506108b1565b508261094b57606f60f81b6106da565b6000816000815181106106ed576106ed612089565b60606109a183838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061118b92505050565b6109bd5760405162461bcd60e51b81526004016105dc90612136565b60006109c960206119a4565b6109d49060016120b5565b90506000816001600160401b038111156109f0576109f0611fc3565b6040519080825280601f01601f191660200182016040528015610a1a576020820181803683370190505b509050600160f81b81600081518110610a3557610a35612089565b60200101906001600160f81b031916908160001a9053506000610a98610a5e866002818a6121cb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611a0092505050565b905060015b83811015610b075781610ab16001836121f5565b81518110610ac157610ac1612089565b602001015160f81c60f81b838281518110610ade57610ade612089565b60200101906001600160f81b031916908160001a90535080610aff8161211d565b915050610a9d565b509095945050505050565b6060610b5383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061138f92505050565b610b6f5760405162461bcd60e51b81526004016105dc90612136565b6000610b7b60146119a4565b610b869060016120b5565b90506000816001600160401b03811115610ba257610ba2611fc3565b6040519080825280601f01601f191660200182016040528015610bcc576020820181803683370190505b509050600060f81b81600081518110610be757610be7612089565b60200101906001600160f81b031916908160001a9053506000610c10610a5e866002818a6121cb565b905060015b83811015610b075781610c296001836121f5565b81518110610c3957610c39612089565b602001015160f81c60f81b838281518110610c5657610c56612089565b60200101906001600160f81b031916908160001a90535080610c778161211d565b915050610c15565b6060610cc083838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061108292505050565b610cdc5760405162461bcd60e51b81526004016105dc90612136565b6000610ce860206119a4565b610cf39060016120b5565b90506000816001600160401b03811115610d0f57610d0f611fc3565b6040519080825280601f01601f191660200182016040528015610d39576020820181803683370190505b509050600060f81b81600081518110610d5457610d54612089565b60200101906001600160f81b031916908160001a9053506000610d7d610a5e866002818a6121cb565b905060015b83811015610b075781610d966001836121f5565b81518110610da657610da6612089565b602001015160f81c60f81b838281518110610dc357610dc3612089565b60200101906001600160f81b031916908160001a90535080610de48161211d565b915050610d82565b6000601985148015610e255750610e04848484610e91565b805190602001208686604051610e1b929190612208565b6040518091039020145b9695505050505050565b60008151605014610e7a5760405162461bcd60e51b8152602060048201526015602482015274092dcecc2d8d2c840d0cac2c8cae440d8cadccee8d605b1b60448201526064016105dc565b610e85826044611b59565b63ffffffff1692915050565b60606000600360028686604051610ea9929190612208565b602060405180830381855afa158015610ec6573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610ee99190612218565b604051602001610efb91815260200190565b60408051601f1981840301815290829052610f1591612231565b602060405180830381855afa158015610f32573d6000803e3d6000fd5b5050506040515160601b9050600083610f4f57603160fa1b610f55565b600560f81b5b6040516001600160f81b0319821660208201526001600160601b0319841660218201529091506000906035016040516020818303038152906040529050600060028083604051610fa59190612231565b602060405180830381855afa158015610fc2573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610fe59190612218565b604051602001610ff791815260200190565b60408051601f198184030181529082905261101191612231565b602060405180830381855afa15801561102e573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906110519190612218565b9050818160405160200161106692919061224d565b6040516020818303038152906040529450505050509392505050565b6000611090602060026120b5565b82511480156110c057508151600090839082906110af576110af612089565b01602001516001600160f81b031916145b801561057957506020826001815181106110dc576110dc612089565b016020015160f81c1492915050565b60006110f9601460036120b5565b825114801561112d5750815160a960f81b90839060009061111c5761111c612089565b01602001516001600160f81b031916145b8015611153575060148260018151811061114957611149612089565b016020015160f81c145b801561057957508151608760f81b908390601690811061117557611175612089565b01602001516001600160f81b0319161492915050565b6000611199602060026120b5565b82511480156110c057508151605160f81b9083906000906110af576110af612089565b60606111fd84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506113e992505050565b156112145761120d8484846107ff565b9050610707565b61125384848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506110eb92505050565b156112635761120d84848461057f565b6112a284848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061138f92505050565b156112b15761120d8484610b12565b6112f084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061108292505050565b156112ff5761120d8484610c7f565b61133e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061118b92505050565b1561134d5761120d8484610960565b60405162461bcd60e51b8152602060048201526017602482015276556e737570706f7274656420736372697074207479706560481b60448201526064016105dc565b600061139d601460026120b5565b82511480156113cd57508151600090839082906113bc576113bc612089565b01602001516001600160f81b031916145b801561057957506014826001815181106110dc576110dc612089565b60006113f7601460056120b5565b825114801561142b57508151603b60f91b90839060009061141a5761141a612089565b01602001516001600160f81b031916145b801561145e5750815160a960f81b908390600190811061144d5761144d612089565b01602001516001600160f81b031916145b8015611484575060148260028151811061147a5761147a612089565b016020015160f81c145b80156114b757508151601160fb1b90839060179081106114a6576114a6612089565b01602001516001600160f81b031916145b801561057957508151602b60fa1b908390601890811061117557611175612089565b60008060028085856040516114ef929190612208565b602060405180830381855afa15801561150c573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061152f9190612218565b60405160200161154191815260200190565b60408051601f198184030181529082905261155b91612231565b602060405180830381855afa158015611578573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061159b9190612218565b6040516020016115ad91815260200190565b60408051601f1981840301815291905290506000805b6010811015611685578281815181106115de576115de612089565b01602001516001600160f81b0319169150826115fb82601f6121f5565b8151811061160b5761160b612089565b602001015160f81c60f81b83828151811061162857611628612089565b60200101906001600160f81b031916908160001a905350818361164c83601f6121f5565b8151811061165c5761165c612089565b60200101906001600160f81b031916908160001a9053508061167d8161211d565b9150506115c3565b5050602001519392505050565b600080838351116116f65760405162461bcd60e51b815260206004820152602860248201527f53697a6520706f736974696f6e2063616e277420626520626967676572207468604482015267616e20617272617960c01b60648201526084016105dc565b600083858151811061170a5761170a612089565b016020015160f81c9050600081900361172b576000600192509250506117f0565b60fc60ff8216116117445760ff169150600190506117f0565b600061175160fc8361217a565b61175c906002612360565b905060088111156117af5760405162461bcd60e51b815260206004820152601f60248201527f756e737570706f7274656420636f6d706163742073697a65206c656e6774680060448201526064016105dc565b60006117da6117bf8860016120b5565b6117c9848a6120b5565b6117d49060016120b5565b88611c51565b9050806117e883600161236f565b945094505050505b9250929050565b6117ff611d2f565b60408051608081018252600080825282516020818101855282825283015291810182905260608101919091526118408461183a6008826120b5565b85611c51565b6001600160401b031681526118566008856120b5565b93506000806118658686611692565b909250905061187861ffff8216876120b5565b95506000826001600160401b03166001600160401b0381111561189d5761189d611fc3565b6040519080825280601f01601f1916602001820160405280156118c7576020820181803683370190505b50905060005b836001600160401b0316816001600160401b0316101561195a57866118fb6001600160401b0383168a6120b5565b8151811061190b5761190b612089565b602001015160f81c60f81b82826001600160401b03168151811061193157611931612089565b60200101906001600160f81b031916908160001a90535080611952816120ef565b9150506118cd565b50602084018190526001600160401b038316604085015261ffff82166119818460086120c8565b61198b91906120c8565b6001600160401b03166060850152509195945050505050565b60008060056119b460088561238a565b6119be91906123b7565b9050600060056119cf60088661238a565b6119d991906123cb565b159050806119e85760016119eb565b60005b6119f89060ff16836120b5565b949350505050565b60606000601f9050600080600080611a1887516119a4565b6001600160401b03811115611a2f57611a2f611fc3565b6040519080825280601f01601f191660200182016040528015611a59576020820181803683370190505b50905060005b8751811015611b0657878181518110611a7a57611a7a612089565b60209101015160f81c600895861b1794611a9490856120b5565b93505b60058410611af657611aaa6005856121f5565b93508560ff168486901c1660f81b828460ff1681518110611acd57611acd612089565b60200101906001600160f81b031916908160001a90535082611aee816121ac565b935050611a97565b611aff8161211d565b9050611a5f565b508215610e255760ff8516611b1c8460056121f5565b85901b1660f81b818360ff1681518110611b3857611b38612089565b60200101906001600160f81b031916908160001a9053509695505050505050565b6000611b668260046120b5565b83511015611bad5760405162461bcd60e51b8152602060048201526014602482015273536c6963696e67206f7574206f662072616e676560601b60448201526064016105dc565b601883611bbb8460036120b5565b81518110611bcb57611bcb612089565b016020015160f81c901b601084611be38560026120b5565b81518110611bf357611bf3612089565b016020015160f81c901b600885611c0b8660016120b5565b81518110611c1b57611c1b612089565b0160200151865160f89190911c90911b90869086908110611c3e57611c3e612089565b016020015160f81c171717905092915050565b6000815184108015611c635750815183105b611caf5760405162461bcd60e51b815260206004820181905260248201527f52616e67652063616e277420626520626967676572207468616e20617272617960448201526064016105dc565b6000845b84811015611d2657611cc586826121f5565b611cd090600861238a565b611cdb9060026123df565b848281518110611ced57611ced612089565b0160200151611cff919060f81c6123eb565b611d12906001600160401b0316836120b5565b915080611d1e8161211d565b915050611cb3565b50949350505050565b604051806080016040528060006001600160401b031681526020016060815260200160008152602001600081525090565b60008083601f840112611d7257600080fd5b5081356001600160401b03811115611d8957600080fd5b6020830191508360208285010111156117f057600080fd5b60008060208385031215611db457600080fd5b82356001600160401b03811115611dca57600080fd5b611dd685828601611d60565b90969095509350505050565b60005b83811015611dfd578181015183820152602001611de5565b50506000910152565b60008151808452611e1e816020860160208601611de2565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015611eba57888303603f19018552815180516001600160401b0316845287810151608089860181905290611e9282870182611e06565b838a0151878b0152606093840151939096019290925250509386019390860190600101611e59565b509098975050505050505050565b80358015158114611ed857600080fd5b919050565b600080600060408486031215611ef257600080fd5b83356001600160401b03811115611f0857600080fd5b611f1486828701611d60565b9094509250611f27905060208501611ec8565b90509250925092565b6020815260006107076020830184611e06565b600080600080600060608688031215611f5b57600080fd5b85356001600160401b0380821115611f7257600080fd5b611f7e89838a01611d60565b90975095506020880135915080821115611f9757600080fd5b50611fa488828901611d60565b9094509250611fb7905060408701611ec8565b90509295509295909350565b634e487b7160e01b600052604160045260246000fd5b600060208284031215611feb57600080fd5b81356001600160401b038082111561200257600080fd5b818401915084601f83011261201657600080fd5b81358181111561202857612028611fc3565b604051601f8201601f19908116603f0116810190838211818310171561205057612050611fc3565b8160405282815287602084870101111561206957600080fd5b826020860160208301376000928101602001929092525095945050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156105795761057961209f565b6001600160401b038181168382160190808211156120e8576120e861209f565b5092915050565b60006001600160401b038281166002600160401b031981016121135761211361209f565b6001019392505050565b60006001820161212f5761212f61209f565b5060010190565b60208082526024908201527f536372697074206861736e2774207468652072657175697265642073747275636040820152637475726560e01b606082015260800190565b60ff82811682821603908111156105795761057961209f565b60ff81811683821601908111156105795761057961209f565b600060ff821660ff81036121c2576121c261209f565b60010192915050565b600080858511156121db57600080fd5b838611156121e857600080fd5b5050820193919092039150565b818103818111156105795761057961209f565b8183823760009101908152919050565b60006020828403121561222a57600080fd5b5051919050565b60008251612243818460208701611de2565b9190910192915050565b6000835161225f818460208801611de2565b6001600160e01b0319939093169190920190815260040192915050565b600181815b808511156122b757816000190482111561229d5761229d61209f565b808516156122aa57918102915b93841c9390800290612281565b509250929050565b6000826122ce57506001610579565b816122db57506000610579565b81600181146122f157600281146122fb57612317565b6001915050610579565b60ff84111561230c5761230c61209f565b50506001821b610579565b5060208310610133831016604e8410600b841016171561233a575081810a610579565b612344838361227c565b80600019048211156123585761235861209f565b029392505050565b600061070760ff8416836122bf565b61ffff8181168382160190808211156120e8576120e861209f565b80820281158282048414176105795761057961209f565b634e487b7160e01b600052601260045260246000fd5b6000826123c6576123c66123a1565b500490565b6000826123da576123da6123a1565b500690565b600061070783836122bf565b6001600160401b0381811683821602808216919082811461240e5761240e61209f565b50509291505056fea26469706673582212207c217a41888529800be793c549eef013d4d2405f68a570e85371885eaec4fe3064736f6c63430008120033", "immutableReferences": {}, "generatedSources": [], "deployedGeneratedSources": [ { "ast": { "nodeType": "YulBlock", - "src": "0:14823:32", + "src": "0:15429:32", "statements": [ { "nodeType": "YulBlock", @@ -2479,7 +2613,7 @@ } ] }, - "name": "abi_encode_tuple_t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr__fromStack_library_reversed", + "name": "abi_encode_tuple_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr__fromStack_library_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -3146,12 +3280,122 @@ { "body": { "nodeType": "YulBlock", - "src": "3597:646:32", + "src": "3587:98:32", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3604:9:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3615:2:32", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3597:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "3597:21:32" + }, + "nodeType": "YulExpressionStatement", + "src": "3597:21:32" + }, + { + "nodeType": "YulAssignment", + "src": "3627:52:32", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "3652:6:32" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3664:9:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3675:2:32", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3660:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "3660:18:32" + } + ], + "functionName": { + "name": "abi_encode_bytes", + "nodeType": "YulIdentifier", + "src": "3635:16:32" + }, + "nodeType": "YulFunctionCall", + "src": "3635:44:32" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "3627:4:32" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_library_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "3556:9:32", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "3567:6:32", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "3578:4:32", + "type": "" + } + ], + "src": "3458:227:32" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3829:646:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "3643:16:32", + "src": "3875:16:32", "statements": [ { "expression": { @@ -3159,14 +3403,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "3652:1:32", + "src": "3884:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3655:1:32", + "src": "3887:1:32", "type": "", "value": "0" } @@ -3174,13 +3418,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "3645:6:32" + "src": "3877:6:32" }, "nodeType": "YulFunctionCall", - "src": "3645:12:32" + "src": "3877:12:32" }, "nodeType": "YulExpressionStatement", - "src": "3645:12:32" + "src": "3877:12:32" } ] }, @@ -3191,26 +3435,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "3618:7:32" + "src": "3850:7:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3627:9:32" + "src": "3859:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "3614:3:32" + "src": "3846:3:32" }, "nodeType": "YulFunctionCall", - "src": "3614:23:32" + "src": "3846:23:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3639:2:32", + "src": "3871:2:32", "type": "", "value": "96" } @@ -3218,45 +3462,45 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "3610:3:32" + "src": "3842:3:32" }, "nodeType": "YulFunctionCall", - "src": "3610:32:32" + "src": "3842:32:32" }, "nodeType": "YulIf", - "src": "3607:52:32" + "src": "3839:52:32" }, { "nodeType": "YulVariableDeclaration", - "src": "3668:37:32", + "src": "3900:37:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3695:9:32" + "src": "3927:9:32" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "3682:12:32" + "src": "3914:12:32" }, "nodeType": "YulFunctionCall", - "src": "3682:23:32" + "src": "3914:23:32" }, "variables": [ { "name": "offset", "nodeType": "YulTypedName", - "src": "3672:6:32", + "src": "3904:6:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "3714:28:32", + "src": "3946:28:32", "value": { "arguments": [ { @@ -3264,14 +3508,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "3732:2:32", + "src": "3964:2:32", "type": "", "value": "64" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3736:1:32", + "src": "3968:1:32", "type": "", "value": "1" } @@ -3279,15 +3523,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "3728:3:32" + "src": "3960:3:32" }, "nodeType": "YulFunctionCall", - "src": "3728:10:32" + "src": "3960:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3740:1:32", + "src": "3972:1:32", "type": "", "value": "1" } @@ -3295,16 +3539,16 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "3724:3:32" + "src": "3956:3:32" }, "nodeType": "YulFunctionCall", - "src": "3724:18:32" + "src": "3956:18:32" }, "variables": [ { "name": "_1", "nodeType": "YulTypedName", - "src": "3718:2:32", + "src": "3950:2:32", "type": "" } ] @@ -3312,7 +3556,7 @@ { "body": { "nodeType": "YulBlock", - "src": "3769:16:32", + "src": "4001:16:32", "statements": [ { "expression": { @@ -3320,14 +3564,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "3778:1:32", + "src": "4010:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3781:1:32", + "src": "4013:1:32", "type": "", "value": "0" } @@ -3335,13 +3579,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "3771:6:32" + "src": "4003:6:32" }, "nodeType": "YulFunctionCall", - "src": "3771:12:32" + "src": "4003:12:32" }, "nodeType": "YulExpressionStatement", - "src": "3771:12:32" + "src": "4003:12:32" } ] }, @@ -3350,28 +3594,28 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "3757:6:32" + "src": "3989:6:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "3765:2:32" + "src": "3997:2:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "3754:2:32" + "src": "3986:2:32" }, "nodeType": "YulFunctionCall", - "src": "3754:14:32" + "src": "3986:14:32" }, "nodeType": "YulIf", - "src": "3751:34:32" + "src": "3983:34:32" }, { "nodeType": "YulVariableDeclaration", - "src": "3794:84:32", + "src": "4026:84:32", "value": { "arguments": [ { @@ -3379,86 +3623,86 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3850:9:32" + "src": "4082:9:32" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "3861:6:32" + "src": "4093:6:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3846:3:32" + "src": "4078:3:32" }, "nodeType": "YulFunctionCall", - "src": "3846:22:32" + "src": "4078:22:32" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "3870:7:32" + "src": "4102:7:32" } ], "functionName": { "name": "abi_decode_bytes_calldata", "nodeType": "YulIdentifier", - "src": "3820:25:32" + "src": "4052:25:32" }, "nodeType": "YulFunctionCall", - "src": "3820:58:32" + "src": "4052:58:32" }, "variables": [ { "name": "value0_1", "nodeType": "YulTypedName", - "src": "3798:8:32", + "src": "4030:8:32", "type": "" }, { "name": "value1_1", "nodeType": "YulTypedName", - "src": "3808:8:32", + "src": "4040:8:32", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "3887:18:32", + "src": "4119:18:32", "value": { "name": "value0_1", "nodeType": "YulIdentifier", - "src": "3897:8:32" + "src": "4129:8:32" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "3887:6:32" + "src": "4119:6:32" } ] }, { "nodeType": "YulAssignment", - "src": "3914:18:32", + "src": "4146:18:32", "value": { "name": "value1_1", "nodeType": "YulIdentifier", - "src": "3924:8:32" + "src": "4156:8:32" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "3914:6:32" + "src": "4146:6:32" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "3941:48:32", + "src": "4173:48:32", "value": { "arguments": [ { @@ -3466,12 +3710,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3974:9:32" + "src": "4206:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3985:2:32", + "src": "4217:2:32", "type": "", "value": "32" } @@ -3479,25 +3723,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3970:3:32" + "src": "4202:3:32" }, "nodeType": "YulFunctionCall", - "src": "3970:18:32" + "src": "4202:18:32" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "3957:12:32" + "src": "4189:12:32" }, "nodeType": "YulFunctionCall", - "src": "3957:32:32" + "src": "4189:32:32" }, "variables": [ { "name": "offset_1", "nodeType": "YulTypedName", - "src": "3945:8:32", + "src": "4177:8:32", "type": "" } ] @@ -3505,7 +3749,7 @@ { "body": { "nodeType": "YulBlock", - "src": "4018:16:32", + "src": "4250:16:32", "statements": [ { "expression": { @@ -3513,14 +3757,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4027:1:32", + "src": "4259:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4030:1:32", + "src": "4262:1:32", "type": "", "value": "0" } @@ -3528,13 +3772,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "4020:6:32" + "src": "4252:6:32" }, "nodeType": "YulFunctionCall", - "src": "4020:12:32" + "src": "4252:12:32" }, "nodeType": "YulExpressionStatement", - "src": "4020:12:32" + "src": "4252:12:32" } ] }, @@ -3543,28 +3787,28 @@ { "name": "offset_1", "nodeType": "YulIdentifier", - "src": "4004:8:32" + "src": "4236:8:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "4014:2:32" + "src": "4246:2:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "4001:2:32" + "src": "4233:2:32" }, "nodeType": "YulFunctionCall", - "src": "4001:16:32" + "src": "4233:16:32" }, "nodeType": "YulIf", - "src": "3998:36:32" + "src": "4230:36:32" }, { "nodeType": "YulVariableDeclaration", - "src": "4043:86:32", + "src": "4275:86:32", "value": { "arguments": [ { @@ -3572,86 +3816,86 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4099:9:32" + "src": "4331:9:32" }, { "name": "offset_1", "nodeType": "YulIdentifier", - "src": "4110:8:32" + "src": "4342:8:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4095:3:32" + "src": "4327:3:32" }, "nodeType": "YulFunctionCall", - "src": "4095:24:32" + "src": "4327:24:32" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "4121:7:32" + "src": "4353:7:32" } ], "functionName": { "name": "abi_decode_bytes_calldata", "nodeType": "YulIdentifier", - "src": "4069:25:32" + "src": "4301:25:32" }, "nodeType": "YulFunctionCall", - "src": "4069:60:32" + "src": "4301:60:32" }, "variables": [ { "name": "value2_1", "nodeType": "YulTypedName", - "src": "4047:8:32", + "src": "4279:8:32", "type": "" }, { "name": "value3_1", "nodeType": "YulTypedName", - "src": "4057:8:32", + "src": "4289:8:32", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "4138:18:32", + "src": "4370:18:32", "value": { "name": "value2_1", "nodeType": "YulIdentifier", - "src": "4148:8:32" + "src": "4380:8:32" }, "variableNames": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "4138:6:32" + "src": "4370:6:32" } ] }, { "nodeType": "YulAssignment", - "src": "4165:18:32", + "src": "4397:18:32", "value": { "name": "value3_1", "nodeType": "YulIdentifier", - "src": "4175:8:32" + "src": "4407:8:32" }, "variableNames": [ { "name": "value3", "nodeType": "YulIdentifier", - "src": "4165:6:32" + "src": "4397:6:32" } ] }, { "nodeType": "YulAssignment", - "src": "4192:45:32", + "src": "4424:45:32", "value": { "arguments": [ { @@ -3659,12 +3903,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4222:9:32" + "src": "4454:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4233:2:32", + "src": "4465:2:32", "type": "", "value": "64" } @@ -3672,25 +3916,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4218:3:32" + "src": "4450:3:32" }, "nodeType": "YulFunctionCall", - "src": "4218:18:32" + "src": "4450:18:32" } ], "functionName": { "name": "abi_decode_bool", "nodeType": "YulIdentifier", - "src": "4202:15:32" + "src": "4434:15:32" }, "nodeType": "YulFunctionCall", - "src": "4202:35:32" + "src": "4434:35:32" }, "variableNames": [ { "name": "value4", "nodeType": "YulIdentifier", - "src": "4192:6:32" + "src": "4424:6:32" } ] } @@ -3702,13 +3946,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "3531:9:32", + "src": "3763:9:32", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "3542:7:32", + "src": "3774:7:32", "type": "" } ], @@ -3716,55 +3960,55 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "3554:6:32", + "src": "3786:6:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "3562:6:32", + "src": "3794:6:32", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "3570:6:32", + "src": "3802:6:32", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "3578:6:32", + "src": "3810:6:32", "type": "" }, { "name": "value4", "nodeType": "YulTypedName", - "src": "3586:6:32", + "src": "3818:6:32", "type": "" } ], - "src": "3458:785:32" + "src": "3690:785:32" }, { "body": { "nodeType": "YulBlock", - "src": "4351:92:32", + "src": "4583:92:32", "statements": [ { "nodeType": "YulAssignment", - "src": "4361:26:32", + "src": "4593:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4373:9:32" + "src": "4605:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4384:2:32", + "src": "4616:2:32", "type": "", "value": "32" } @@ -3772,16 +4016,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4369:3:32" + "src": "4601:3:32" }, "nodeType": "YulFunctionCall", - "src": "4369:18:32" + "src": "4601:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "4361:4:32" + "src": "4593:4:32" } ] }, @@ -3791,7 +4035,7 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4403:9:32" + "src": "4635:9:32" }, { "arguments": [ @@ -3800,37 +4044,37 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "4428:6:32" + "src": "4660:6:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "4421:6:32" + "src": "4653:6:32" }, "nodeType": "YulFunctionCall", - "src": "4421:14:32" + "src": "4653:14:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "4414:6:32" + "src": "4646:6:32" }, "nodeType": "YulFunctionCall", - "src": "4414:22:32" + "src": "4646:22:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4396:6:32" + "src": "4628:6:32" }, "nodeType": "YulFunctionCall", - "src": "4396:41:32" + "src": "4628:41:32" }, "nodeType": "YulExpressionStatement", - "src": "4396:41:32" + "src": "4628:41:32" } ] }, @@ -3840,13 +4084,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "4320:9:32", + "src": "4552:9:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "4331:6:32", + "src": "4563:6:32", "type": "" } ], @@ -3854,16 +4098,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "4342:4:32", + "src": "4574:4:32", "type": "" } ], - "src": "4248:195:32" + "src": "4480:195:32" }, { "body": { "nodeType": "YulBlock", - "src": "4480:95:32", + "src": "4712:95:32", "statements": [ { "expression": { @@ -3871,7 +4115,7 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4497:1:32", + "src": "4729:1:32", "type": "", "value": "0" }, @@ -3880,14 +4124,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4504:3:32", + "src": "4736:3:32", "type": "", "value": "224" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4509:10:32", + "src": "4741:10:32", "type": "", "value": "0x4e487b71" } @@ -3895,22 +4139,22 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "4500:3:32" + "src": "4732:3:32" }, "nodeType": "YulFunctionCall", - "src": "4500:20:32" + "src": "4732:20:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4490:6:32" + "src": "4722:6:32" }, "nodeType": "YulFunctionCall", - "src": "4490:31:32" + "src": "4722:31:32" }, "nodeType": "YulExpressionStatement", - "src": "4490:31:32" + "src": "4722:31:32" }, { "expression": { @@ -3918,14 +4162,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4537:1:32", + "src": "4769:1:32", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4540:4:32", + "src": "4772:4:32", "type": "", "value": "0x41" } @@ -3933,13 +4177,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4530:6:32" + "src": "4762:6:32" }, "nodeType": "YulFunctionCall", - "src": "4530:15:32" + "src": "4762:15:32" }, "nodeType": "YulExpressionStatement", - "src": "4530:15:32" + "src": "4762:15:32" }, { "expression": { @@ -3947,14 +4191,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4561:1:32", + "src": "4793:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4564:4:32", + "src": "4796:4:32", "type": "", "value": "0x24" } @@ -3962,29 +4206,29 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "4554:6:32" + "src": "4786:6:32" }, "nodeType": "YulFunctionCall", - "src": "4554:15:32" + "src": "4786:15:32" }, "nodeType": "YulExpressionStatement", - "src": "4554:15:32" + "src": "4786:15:32" } ] }, "name": "panic_error_0x41", "nodeType": "YulFunctionDefinition", - "src": "4448:127:32" + "src": "4680:127:32" }, { "body": { "nodeType": "YulBlock", - "src": "4659:842:32", + "src": "4891:842:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "4705:16:32", + "src": "4937:16:32", "statements": [ { "expression": { @@ -3992,14 +4236,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4714:1:32", + "src": "4946:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4717:1:32", + "src": "4949:1:32", "type": "", "value": "0" } @@ -4007,13 +4251,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "4707:6:32" + "src": "4939:6:32" }, "nodeType": "YulFunctionCall", - "src": "4707:12:32" + "src": "4939:12:32" }, "nodeType": "YulExpressionStatement", - "src": "4707:12:32" + "src": "4939:12:32" } ] }, @@ -4024,26 +4268,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "4680:7:32" + "src": "4912:7:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4689:9:32" + "src": "4921:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "4676:3:32" + "src": "4908:3:32" }, "nodeType": "YulFunctionCall", - "src": "4676:23:32" + "src": "4908:23:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4701:2:32", + "src": "4933:2:32", "type": "", "value": "32" } @@ -4051,45 +4295,45 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "4672:3:32" + "src": "4904:3:32" }, "nodeType": "YulFunctionCall", - "src": "4672:32:32" + "src": "4904:32:32" }, "nodeType": "YulIf", - "src": "4669:52:32" + "src": "4901:52:32" }, { "nodeType": "YulVariableDeclaration", - "src": "4730:37:32", + "src": "4962:37:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4757:9:32" + "src": "4989:9:32" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "4744:12:32" + "src": "4976:12:32" }, "nodeType": "YulFunctionCall", - "src": "4744:23:32" + "src": "4976:23:32" }, "variables": [ { "name": "offset", "nodeType": "YulTypedName", - "src": "4734:6:32", + "src": "4966:6:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "4776:28:32", + "src": "5008:28:32", "value": { "arguments": [ { @@ -4097,14 +4341,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4794:2:32", + "src": "5026:2:32", "type": "", "value": "64" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4798:1:32", + "src": "5030:1:32", "type": "", "value": "1" } @@ -4112,15 +4356,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "4790:3:32" + "src": "5022:3:32" }, "nodeType": "YulFunctionCall", - "src": "4790:10:32" + "src": "5022:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4802:1:32", + "src": "5034:1:32", "type": "", "value": "1" } @@ -4128,16 +4372,16 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "4786:3:32" + "src": "5018:3:32" }, "nodeType": "YulFunctionCall", - "src": "4786:18:32" + "src": "5018:18:32" }, "variables": [ { "name": "_1", "nodeType": "YulTypedName", - "src": "4780:2:32", + "src": "5012:2:32", "type": "" } ] @@ -4145,7 +4389,7 @@ { "body": { "nodeType": "YulBlock", - "src": "4831:16:32", + "src": "5063:16:32", "statements": [ { "expression": { @@ -4153,14 +4397,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4840:1:32", + "src": "5072:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4843:1:32", + "src": "5075:1:32", "type": "", "value": "0" } @@ -4168,13 +4412,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "4833:6:32" + "src": "5065:6:32" }, "nodeType": "YulFunctionCall", - "src": "4833:12:32" + "src": "5065:12:32" }, "nodeType": "YulExpressionStatement", - "src": "4833:12:32" + "src": "5065:12:32" } ] }, @@ -4183,54 +4427,54 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "4819:6:32" + "src": "5051:6:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "4827:2:32" + "src": "5059:2:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "4816:2:32" + "src": "5048:2:32" }, "nodeType": "YulFunctionCall", - "src": "4816:14:32" + "src": "5048:14:32" }, "nodeType": "YulIf", - "src": "4813:34:32" + "src": "5045:34:32" }, { "nodeType": "YulVariableDeclaration", - "src": "4856:32:32", + "src": "5088:32:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4870:9:32" + "src": "5102:9:32" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "4881:6:32" + "src": "5113:6:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4866:3:32" + "src": "5098:3:32" }, "nodeType": "YulFunctionCall", - "src": "4866:22:32" + "src": "5098:22:32" }, "variables": [ { "name": "_2", "nodeType": "YulTypedName", - "src": "4860:2:32", + "src": "5092:2:32", "type": "" } ] @@ -4238,7 +4482,7 @@ { "body": { "nodeType": "YulBlock", - "src": "4936:16:32", + "src": "5168:16:32", "statements": [ { "expression": { @@ -4246,14 +4490,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4945:1:32", + "src": "5177:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4948:1:32", + "src": "5180:1:32", "type": "", "value": "0" } @@ -4261,13 +4505,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "4938:6:32" + "src": "5170:6:32" }, "nodeType": "YulFunctionCall", - "src": "4938:12:32" + "src": "5170:12:32" }, "nodeType": "YulExpressionStatement", - "src": "4938:12:32" + "src": "5170:12:32" } ] }, @@ -4280,12 +4524,12 @@ { "name": "_2", "nodeType": "YulIdentifier", - "src": "4915:2:32" + "src": "5147:2:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4919:4:32", + "src": "5151:4:32", "type": "", "value": "0x1f" } @@ -4293,61 +4537,61 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4911:3:32" + "src": "5143:3:32" }, "nodeType": "YulFunctionCall", - "src": "4911:13:32" + "src": "5143:13:32" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "4926:7:32" + "src": "5158:7:32" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "4907:3:32" + "src": "5139:3:32" }, "nodeType": "YulFunctionCall", - "src": "4907:27:32" + "src": "5139:27:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "4900:6:32" + "src": "5132:6:32" }, "nodeType": "YulFunctionCall", - "src": "4900:35:32" + "src": "5132:35:32" }, "nodeType": "YulIf", - "src": "4897:55:32" + "src": "5129:55:32" }, { "nodeType": "YulVariableDeclaration", - "src": "4961:26:32", + "src": "5193:26:32", "value": { "arguments": [ { "name": "_2", "nodeType": "YulIdentifier", - "src": "4984:2:32" + "src": "5216:2:32" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "4971:12:32" + "src": "5203:12:32" }, "nodeType": "YulFunctionCall", - "src": "4971:16:32" + "src": "5203:16:32" }, "variables": [ { "name": "_3", "nodeType": "YulTypedName", - "src": "4965:2:32", + "src": "5197:2:32", "type": "" } ] @@ -4355,7 +4599,7 @@ { "body": { "nodeType": "YulBlock", - "src": "5010:22:32", + "src": "5242:22:32", "statements": [ { "expression": { @@ -4363,13 +4607,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "5012:16:32" + "src": "5244:16:32" }, "nodeType": "YulFunctionCall", - "src": "5012:18:32" + "src": "5244:18:32" }, "nodeType": "YulExpressionStatement", - "src": "5012:18:32" + "src": "5244:18:32" } ] }, @@ -4378,34 +4622,34 @@ { "name": "_3", "nodeType": "YulIdentifier", - "src": "5002:2:32" + "src": "5234:2:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "5006:2:32" + "src": "5238:2:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "4999:2:32" + "src": "5231:2:32" }, "nodeType": "YulFunctionCall", - "src": "4999:10:32" + "src": "5231:10:32" }, "nodeType": "YulIf", - "src": "4996:36:32" + "src": "5228:36:32" }, { "nodeType": "YulVariableDeclaration", - "src": "5041:17:32", + "src": "5273:17:32", "value": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "5055:2:32", + "src": "5287:2:32", "type": "", "value": "31" } @@ -4413,29 +4657,29 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "5051:3:32" + "src": "5283:3:32" }, "nodeType": "YulFunctionCall", - "src": "5051:7:32" + "src": "5283:7:32" }, "variables": [ { "name": "_4", "nodeType": "YulTypedName", - "src": "5045:2:32", + "src": "5277:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "5067:23:32", + "src": "5299:23:32", "value": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "5087:2:32", + "src": "5319:2:32", "type": "", "value": "64" } @@ -4443,29 +4687,29 @@ "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "5081:5:32" + "src": "5313:5:32" }, "nodeType": "YulFunctionCall", - "src": "5081:9:32" + "src": "5313:9:32" }, "variables": [ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "5071:6:32", + "src": "5303:6:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "5099:71:32", + "src": "5331:71:32", "value": { "arguments": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "5121:6:32" + "src": "5353:6:32" }, { "arguments": [ @@ -4478,12 +4722,12 @@ { "name": "_3", "nodeType": "YulIdentifier", - "src": "5145:2:32" + "src": "5377:2:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5149:4:32", + "src": "5381:4:32", "type": "", "value": "0x1f" } @@ -4491,29 +4735,29 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5141:3:32" + "src": "5373:3:32" }, "nodeType": "YulFunctionCall", - "src": "5141:13:32" + "src": "5373:13:32" }, { "name": "_4", "nodeType": "YulIdentifier", - "src": "5156:2:32" + "src": "5388:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "5137:3:32" + "src": "5369:3:32" }, "nodeType": "YulFunctionCall", - "src": "5137:22:32" + "src": "5369:22:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5161:2:32", + "src": "5393:2:32", "type": "", "value": "63" } @@ -4521,39 +4765,39 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5133:3:32" + "src": "5365:3:32" }, "nodeType": "YulFunctionCall", - "src": "5133:31:32" + "src": "5365:31:32" }, { "name": "_4", "nodeType": "YulIdentifier", - "src": "5166:2:32" + "src": "5398:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "5129:3:32" + "src": "5361:3:32" }, "nodeType": "YulFunctionCall", - "src": "5129:40:32" + "src": "5361:40:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5117:3:32" + "src": "5349:3:32" }, "nodeType": "YulFunctionCall", - "src": "5117:53:32" + "src": "5349:53:32" }, "variables": [ { "name": "newFreePtr", "nodeType": "YulTypedName", - "src": "5103:10:32", + "src": "5335:10:32", "type": "" } ] @@ -4561,7 +4805,7 @@ { "body": { "nodeType": "YulBlock", - "src": "5229:22:32", + "src": "5461:22:32", "statements": [ { "expression": { @@ -4569,13 +4813,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "5231:16:32" + "src": "5463:16:32" }, "nodeType": "YulFunctionCall", - "src": "5231:18:32" + "src": "5463:18:32" }, "nodeType": "YulExpressionStatement", - "src": "5231:18:32" + "src": "5463:18:32" } ] }, @@ -4586,54 +4830,54 @@ { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "5188:10:32" + "src": "5420:10:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "5200:2:32" + "src": "5432:2:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "5185:2:32" + "src": "5417:2:32" }, "nodeType": "YulFunctionCall", - "src": "5185:18:32" + "src": "5417:18:32" }, { "arguments": [ { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "5208:10:32" + "src": "5440:10:32" }, { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "5220:6:32" + "src": "5452:6:32" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "5205:2:32" + "src": "5437:2:32" }, "nodeType": "YulFunctionCall", - "src": "5205:22:32" + "src": "5437:22:32" } ], "functionName": { "name": "or", "nodeType": "YulIdentifier", - "src": "5182:2:32" + "src": "5414:2:32" }, "nodeType": "YulFunctionCall", - "src": "5182:46:32" + "src": "5414:46:32" }, "nodeType": "YulIf", - "src": "5179:72:32" + "src": "5411:72:32" }, { "expression": { @@ -4641,26 +4885,26 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "5267:2:32", + "src": "5499:2:32", "type": "", "value": "64" }, { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "5271:10:32" + "src": "5503:10:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "5260:6:32" + "src": "5492:6:32" }, "nodeType": "YulFunctionCall", - "src": "5260:22:32" + "src": "5492:22:32" }, "nodeType": "YulExpressionStatement", - "src": "5260:22:32" + "src": "5492:22:32" }, { "expression": { @@ -4668,29 +4912,29 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "5298:6:32" + "src": "5530:6:32" }, { "name": "_3", "nodeType": "YulIdentifier", - "src": "5306:2:32" + "src": "5538:2:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "5291:6:32" + "src": "5523:6:32" }, "nodeType": "YulFunctionCall", - "src": "5291:18:32" + "src": "5523:18:32" }, "nodeType": "YulExpressionStatement", - "src": "5291:18:32" + "src": "5523:18:32" }, { "body": { "nodeType": "YulBlock", - "src": "5355:16:32", + "src": "5587:16:32", "statements": [ { "expression": { @@ -4698,14 +4942,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "5364:1:32", + "src": "5596:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5367:1:32", + "src": "5599:1:32", "type": "", "value": "0" } @@ -4713,13 +4957,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "5357:6:32" + "src": "5589:6:32" }, "nodeType": "YulFunctionCall", - "src": "5357:12:32" + "src": "5589:12:32" }, "nodeType": "YulExpressionStatement", - "src": "5357:12:32" + "src": "5589:12:32" } ] }, @@ -4732,26 +4976,26 @@ { "name": "_2", "nodeType": "YulIdentifier", - "src": "5332:2:32" + "src": "5564:2:32" }, { "name": "_3", "nodeType": "YulIdentifier", - "src": "5336:2:32" + "src": "5568:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5328:3:32" + "src": "5560:3:32" }, "nodeType": "YulFunctionCall", - "src": "5328:11:32" + "src": "5560:11:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5341:2:32", + "src": "5573:2:32", "type": "", "value": "32" } @@ -4759,27 +5003,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5324:3:32" + "src": "5556:3:32" }, "nodeType": "YulFunctionCall", - "src": "5324:20:32" + "src": "5556:20:32" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "5346:7:32" + "src": "5578:7:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "5321:2:32" + "src": "5553:2:32" }, "nodeType": "YulFunctionCall", - "src": "5321:33:32" + "src": "5553:33:32" }, "nodeType": "YulIf", - "src": "5318:53:32" + "src": "5550:53:32" }, { "expression": { @@ -4789,12 +5033,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "5397:6:32" + "src": "5629:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5405:2:32", + "src": "5637:2:32", "type": "", "value": "32" } @@ -4802,22 +5046,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5393:3:32" + "src": "5625:3:32" }, "nodeType": "YulFunctionCall", - "src": "5393:15:32" + "src": "5625:15:32" }, { "arguments": [ { "name": "_2", "nodeType": "YulIdentifier", - "src": "5414:2:32" + "src": "5646:2:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5418:2:32", + "src": "5650:2:32", "type": "", "value": "32" } @@ -4825,27 +5069,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5410:3:32" + "src": "5642:3:32" }, "nodeType": "YulFunctionCall", - "src": "5410:11:32" + "src": "5642:11:32" }, { "name": "_3", "nodeType": "YulIdentifier", - "src": "5423:2:32" + "src": "5655:2:32" } ], "functionName": { "name": "calldatacopy", "nodeType": "YulIdentifier", - "src": "5380:12:32" + "src": "5612:12:32" }, "nodeType": "YulFunctionCall", - "src": "5380:46:32" + "src": "5612:46:32" }, "nodeType": "YulExpressionStatement", - "src": "5380:46:32" + "src": "5612:46:32" }, { "expression": { @@ -4857,26 +5101,26 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "5450:6:32" + "src": "5682:6:32" }, { "name": "_3", "nodeType": "YulIdentifier", - "src": "5458:2:32" + "src": "5690:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5446:3:32" + "src": "5678:3:32" }, "nodeType": "YulFunctionCall", - "src": "5446:15:32" + "src": "5678:15:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5463:2:32", + "src": "5695:2:32", "type": "", "value": "32" } @@ -4884,15 +5128,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5442:3:32" + "src": "5674:3:32" }, "nodeType": "YulFunctionCall", - "src": "5442:24:32" + "src": "5674:24:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5468:1:32", + "src": "5700:1:32", "type": "", "value": "0" } @@ -4900,27 +5144,27 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "5435:6:32" + "src": "5667:6:32" }, "nodeType": "YulFunctionCall", - "src": "5435:35:32" + "src": "5667:35:32" }, "nodeType": "YulExpressionStatement", - "src": "5435:35:32" + "src": "5667:35:32" }, { "nodeType": "YulAssignment", - "src": "5479:16:32", + "src": "5711:16:32", "value": { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "5489:6:32" + "src": "5721:6:32" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "5479:6:32" + "src": "5711:6:32" } ] } @@ -4932,13 +5176,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "4625:9:32", + "src": "4857:9:32", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "4636:7:32", + "src": "4868:7:32", "type": "" } ], @@ -4946,31 +5190,31 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "4648:6:32", + "src": "4880:6:32", "type": "" } ], - "src": "4580:921:32" + "src": "4812:921:32" }, { "body": { "nodeType": "YulBlock", - "src": "5615:76:32", + "src": "5847:76:32", "statements": [ { "nodeType": "YulAssignment", - "src": "5625:26:32", + "src": "5857:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5637:9:32" + "src": "5869:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5648:2:32", + "src": "5880:2:32", "type": "", "value": "32" } @@ -4978,16 +5222,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5633:3:32" + "src": "5865:3:32" }, "nodeType": "YulFunctionCall", - "src": "5633:18:32" + "src": "5865:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "5625:4:32" + "src": "5857:4:32" } ] }, @@ -4997,24 +5241,24 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5667:9:32" + "src": "5899:9:32" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "5678:6:32" + "src": "5910:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "5660:6:32" + "src": "5892:6:32" }, "nodeType": "YulFunctionCall", - "src": "5660:25:32" + "src": "5892:25:32" }, "nodeType": "YulExpressionStatement", - "src": "5660:25:32" + "src": "5892:25:32" } ] }, @@ -5024,13 +5268,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "5584:9:32", + "src": "5816:9:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "5595:6:32", + "src": "5827:6:32", "type": "" } ], @@ -5038,31 +5282,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "5606:4:32", + "src": "5838:4:32", "type": "" } ], - "src": "5506:185:32" + "src": "5738:185:32" }, { "body": { "nodeType": "YulBlock", - "src": "5805:76:32", + "src": "6037:76:32", "statements": [ { "nodeType": "YulAssignment", - "src": "5815:26:32", + "src": "6047:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5827:9:32" + "src": "6059:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5838:2:32", + "src": "6070:2:32", "type": "", "value": "32" } @@ -5070,16 +5314,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5823:3:32" + "src": "6055:3:32" }, "nodeType": "YulFunctionCall", - "src": "5823:18:32" + "src": "6055:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "5815:4:32" + "src": "6047:4:32" } ] }, @@ -5089,24 +5333,24 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5857:9:32" + "src": "6089:9:32" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "5868:6:32" + "src": "6100:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "5850:6:32" + "src": "6082:6:32" }, "nodeType": "YulFunctionCall", - "src": "5850:25:32" + "src": "6082:25:32" }, "nodeType": "YulExpressionStatement", - "src": "5850:25:32" + "src": "6082:25:32" } ] }, @@ -5116,13 +5360,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "5774:9:32", + "src": "6006:9:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "5785:6:32", + "src": "6017:6:32", "type": "" } ], @@ -5130,16 +5374,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "5796:4:32", + "src": "6028:4:32", "type": "" } ], - "src": "5696:185:32" + "src": "5928:185:32" }, { "body": { "nodeType": "YulBlock", - "src": "5918:95:32", + "src": "6150:95:32", "statements": [ { "expression": { @@ -5147,7 +5391,7 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "5935:1:32", + "src": "6167:1:32", "type": "", "value": "0" }, @@ -5156,14 +5400,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "5942:3:32", + "src": "6174:3:32", "type": "", "value": "224" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5947:10:32", + "src": "6179:10:32", "type": "", "value": "0x4e487b71" } @@ -5171,22 +5415,22 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "5938:3:32" + "src": "6170:3:32" }, "nodeType": "YulFunctionCall", - "src": "5938:20:32" + "src": "6170:20:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "5928:6:32" + "src": "6160:6:32" }, "nodeType": "YulFunctionCall", - "src": "5928:31:32" + "src": "6160:31:32" }, "nodeType": "YulExpressionStatement", - "src": "5928:31:32" + "src": "6160:31:32" }, { "expression": { @@ -5194,14 +5438,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "5975:1:32", + "src": "6207:1:32", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5978:4:32", + "src": "6210:4:32", "type": "", "value": "0x32" } @@ -5209,13 +5453,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "5968:6:32" + "src": "6200:6:32" }, "nodeType": "YulFunctionCall", - "src": "5968:15:32" + "src": "6200:15:32" }, "nodeType": "YulExpressionStatement", - "src": "5968:15:32" + "src": "6200:15:32" }, { "expression": { @@ -5223,14 +5467,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "5999:1:32", + "src": "6231:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6002:4:32", + "src": "6234:4:32", "type": "", "value": "0x24" } @@ -5238,24 +5482,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "5992:6:32" + "src": "6224:6:32" }, "nodeType": "YulFunctionCall", - "src": "5992:15:32" + "src": "6224:15:32" }, "nodeType": "YulExpressionStatement", - "src": "5992:15:32" + "src": "6224:15:32" } ] }, "name": "panic_error_0x32", "nodeType": "YulFunctionDefinition", - "src": "5886:127:32" + "src": "6118:127:32" }, { "body": { "nodeType": "YulBlock", - "src": "6050:95:32", + "src": "6282:95:32", "statements": [ { "expression": { @@ -5263,7 +5507,7 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "6067:1:32", + "src": "6299:1:32", "type": "", "value": "0" }, @@ -5272,14 +5516,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "6074:3:32", + "src": "6306:3:32", "type": "", "value": "224" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6079:10:32", + "src": "6311:10:32", "type": "", "value": "0x4e487b71" } @@ -5287,22 +5531,22 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "6070:3:32" + "src": "6302:3:32" }, "nodeType": "YulFunctionCall", - "src": "6070:20:32" + "src": "6302:20:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "6060:6:32" + "src": "6292:6:32" }, "nodeType": "YulFunctionCall", - "src": "6060:31:32" + "src": "6292:31:32" }, "nodeType": "YulExpressionStatement", - "src": "6060:31:32" + "src": "6292:31:32" }, { "expression": { @@ -5310,14 +5554,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "6107:1:32", + "src": "6339:1:32", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6110:4:32", + "src": "6342:4:32", "type": "", "value": "0x11" } @@ -5325,13 +5569,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "6100:6:32" + "src": "6332:6:32" }, "nodeType": "YulFunctionCall", - "src": "6100:15:32" + "src": "6332:15:32" }, "nodeType": "YulExpressionStatement", - "src": "6100:15:32" + "src": "6332:15:32" }, { "expression": { @@ -5339,14 +5583,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "6131:1:32", + "src": "6363:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6134:4:32", + "src": "6366:4:32", "type": "", "value": "0x24" } @@ -5354,61 +5598,61 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "6124:6:32" + "src": "6356:6:32" }, "nodeType": "YulFunctionCall", - "src": "6124:15:32" + "src": "6356:15:32" }, "nodeType": "YulExpressionStatement", - "src": "6124:15:32" + "src": "6356:15:32" } ] }, "name": "panic_error_0x11", "nodeType": "YulFunctionDefinition", - "src": "6018:127:32" + "src": "6250:127:32" }, { "body": { "nodeType": "YulBlock", - "src": "6198:77:32", + "src": "6430:77:32", "statements": [ { "nodeType": "YulAssignment", - "src": "6208:16:32", + "src": "6440:16:32", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "6219:1:32" + "src": "6451:1:32" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "6222:1:32" + "src": "6454:1:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "6215:3:32" + "src": "6447:3:32" }, "nodeType": "YulFunctionCall", - "src": "6215:9:32" + "src": "6447:9:32" }, "variableNames": [ { "name": "sum", "nodeType": "YulIdentifier", - "src": "6208:3:32" + "src": "6440:3:32" } ] }, { "body": { "nodeType": "YulBlock", - "src": "6247:22:32", + "src": "6479:22:32", "statements": [ { "expression": { @@ -5416,13 +5660,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "6249:16:32" + "src": "6481:16:32" }, "nodeType": "YulFunctionCall", - "src": "6249:18:32" + "src": "6481:18:32" }, "nodeType": "YulExpressionStatement", - "src": "6249:18:32" + "src": "6481:18:32" } ] }, @@ -5431,24 +5675,24 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "6239:1:32" + "src": "6471:1:32" }, { "name": "sum", "nodeType": "YulIdentifier", - "src": "6242:3:32" + "src": "6474:3:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "6236:2:32" + "src": "6468:2:32" }, "nodeType": "YulFunctionCall", - "src": "6236:10:32" + "src": "6468:10:32" }, "nodeType": "YulIf", - "src": "6233:36:32" + "src": "6465:36:32" } ] }, @@ -5458,13 +5702,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "6181:1:32", + "src": "6413:1:32", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "6184:1:32", + "src": "6416:1:32", "type": "" } ], @@ -5472,20 +5716,20 @@ { "name": "sum", "nodeType": "YulTypedName", - "src": "6190:3:32", + "src": "6422:3:32", "type": "" } ], - "src": "6150:125:32" + "src": "6382:125:32" }, { "body": { "nodeType": "YulBlock", - "src": "6327:133:32", + "src": "6559:133:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "6337:28:32", + "src": "6569:28:32", "value": { "arguments": [ { @@ -5493,14 +5737,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "6355:2:32", + "src": "6587:2:32", "type": "", "value": "64" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6359:1:32", + "src": "6591:1:32", "type": "", "value": "1" } @@ -5508,15 +5752,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "6351:3:32" + "src": "6583:3:32" }, "nodeType": "YulFunctionCall", - "src": "6351:10:32" + "src": "6583:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6363:1:32", + "src": "6595:1:32", "type": "", "value": "1" } @@ -5524,23 +5768,23 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "6347:3:32" + "src": "6579:3:32" }, "nodeType": "YulFunctionCall", - "src": "6347:18:32" + "src": "6579:18:32" }, "variables": [ { "name": "_1", "nodeType": "YulTypedName", - "src": "6341:2:32", + "src": "6573:2:32", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "6374:34:32", + "src": "6606:34:32", "value": { "arguments": [ { @@ -5548,64 +5792,64 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "6389:1:32" + "src": "6621:1:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "6392:2:32" + "src": "6624:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "6385:3:32" + "src": "6617:3:32" }, "nodeType": "YulFunctionCall", - "src": "6385:10:32" + "src": "6617:10:32" }, { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "6401:1:32" + "src": "6633:1:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "6404:2:32" + "src": "6636:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "6397:3:32" + "src": "6629:3:32" }, "nodeType": "YulFunctionCall", - "src": "6397:10:32" + "src": "6629:10:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "6381:3:32" + "src": "6613:3:32" }, "nodeType": "YulFunctionCall", - "src": "6381:27:32" + "src": "6613:27:32" }, "variableNames": [ { "name": "sum", "nodeType": "YulIdentifier", - "src": "6374:3:32" + "src": "6606:3:32" } ] }, { "body": { "nodeType": "YulBlock", - "src": "6432:22:32", + "src": "6664:22:32", "statements": [ { "expression": { @@ -5613,13 +5857,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "6434:16:32" + "src": "6666:16:32" }, "nodeType": "YulFunctionCall", - "src": "6434:18:32" + "src": "6666:18:32" }, "nodeType": "YulExpressionStatement", - "src": "6434:18:32" + "src": "6666:18:32" } ] }, @@ -5628,24 +5872,24 @@ { "name": "sum", "nodeType": "YulIdentifier", - "src": "6423:3:32" + "src": "6655:3:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "6428:2:32" + "src": "6660:2:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "6420:2:32" + "src": "6652:2:32" }, "nodeType": "YulFunctionCall", - "src": "6420:11:32" + "src": "6652:11:32" }, "nodeType": "YulIf", - "src": "6417:37:32" + "src": "6649:37:32" } ] }, @@ -5655,13 +5899,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "6310:1:32", + "src": "6542:1:32", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "6313:1:32", + "src": "6545:1:32", "type": "" } ], @@ -5669,20 +5913,20 @@ { "name": "sum", "nodeType": "YulTypedName", - "src": "6319:3:32", + "src": "6551:3:32", "type": "" } ], - "src": "6280:180:32" + "src": "6512:180:32" }, { "body": { "nodeType": "YulBlock", - "src": "6511:163:32", + "src": "6743:163:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "6521:28:32", + "src": "6753:28:32", "value": { "arguments": [ { @@ -5690,14 +5934,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "6539:2:32", + "src": "6771:2:32", "type": "", "value": "64" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6543:1:32", + "src": "6775:1:32", "type": "", "value": "1" } @@ -5705,15 +5949,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "6535:3:32" + "src": "6767:3:32" }, "nodeType": "YulFunctionCall", - "src": "6535:10:32" + "src": "6767:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6547:1:32", + "src": "6779:1:32", "type": "", "value": "1" } @@ -5721,49 +5965,49 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "6531:3:32" + "src": "6763:3:32" }, "nodeType": "YulFunctionCall", - "src": "6531:18:32" + "src": "6763:18:32" }, "variables": [ { "name": "_1", "nodeType": "YulTypedName", - "src": "6525:2:32", + "src": "6757:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "6558:29:32", + "src": "6790:29:32", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "6577:5:32" + "src": "6809:5:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "6584:2:32" + "src": "6816:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "6573:3:32" + "src": "6805:3:32" }, "nodeType": "YulFunctionCall", - "src": "6573:14:32" + "src": "6805:14:32" }, "variables": [ { "name": "value_1", "nodeType": "YulTypedName", - "src": "6562:7:32", + "src": "6794:7:32", "type": "" } ] @@ -5771,7 +6015,7 @@ { "body": { "nodeType": "YulBlock", - "src": "6615:22:32", + "src": "6847:22:32", "statements": [ { "expression": { @@ -5779,13 +6023,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "6617:16:32" + "src": "6849:16:32" }, "nodeType": "YulFunctionCall", - "src": "6617:18:32" + "src": "6849:18:32" }, "nodeType": "YulExpressionStatement", - "src": "6617:18:32" + "src": "6849:18:32" } ] }, @@ -5794,39 +6038,39 @@ { "name": "value_1", "nodeType": "YulIdentifier", - "src": "6602:7:32" + "src": "6834:7:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "6611:2:32" + "src": "6843:2:32" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "6599:2:32" + "src": "6831:2:32" }, "nodeType": "YulFunctionCall", - "src": "6599:15:32" + "src": "6831:15:32" }, "nodeType": "YulIf", - "src": "6596:41:32" + "src": "6828:41:32" }, { "nodeType": "YulAssignment", - "src": "6646:22:32", + "src": "6878:22:32", "value": { "arguments": [ { "name": "value_1", "nodeType": "YulIdentifier", - "src": "6657:7:32" + "src": "6889:7:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6666:1:32", + "src": "6898:1:32", "type": "", "value": "1" } @@ -5834,16 +6078,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "6653:3:32" + "src": "6885:3:32" }, "nodeType": "YulFunctionCall", - "src": "6653:15:32" + "src": "6885:15:32" }, "variableNames": [ { "name": "ret", "nodeType": "YulIdentifier", - "src": "6646:3:32" + "src": "6878:3:32" } ] } @@ -5855,7 +6099,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "6493:5:32", + "src": "6725:5:32", "type": "" } ], @@ -5863,21 +6107,21 @@ { "name": "ret", "nodeType": "YulTypedName", - "src": "6503:3:32", + "src": "6735:3:32", "type": "" } ], - "src": "6465:209:32" + "src": "6697:209:32" }, { "body": { "nodeType": "YulBlock", - "src": "6726:88:32", + "src": "6958:88:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "6757:22:32", + "src": "6989:22:32", "statements": [ { "expression": { @@ -5885,13 +6129,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "6759:16:32" + "src": "6991:16:32" }, "nodeType": "YulFunctionCall", - "src": "6759:18:32" + "src": "6991:18:32" }, "nodeType": "YulExpressionStatement", - "src": "6759:18:32" + "src": "6991:18:32" } ] }, @@ -5900,14 +6144,14 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "6742:5:32" + "src": "6974:5:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "6753:1:32", + "src": "6985:1:32", "type": "", "value": "0" } @@ -5915,37 +6159,37 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "6749:3:32" + "src": "6981:3:32" }, "nodeType": "YulFunctionCall", - "src": "6749:6:32" + "src": "6981:6:32" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "6739:2:32" + "src": "6971:2:32" }, "nodeType": "YulFunctionCall", - "src": "6739:17:32" + "src": "6971:17:32" }, "nodeType": "YulIf", - "src": "6736:43:32" + "src": "6968:43:32" }, { "nodeType": "YulAssignment", - "src": "6788:20:32", + "src": "7020:20:32", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "6799:5:32" + "src": "7031:5:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6806:1:32", + "src": "7038:1:32", "type": "", "value": "1" } @@ -5953,16 +6197,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "6795:3:32" + "src": "7027:3:32" }, "nodeType": "YulFunctionCall", - "src": "6795:13:32" + "src": "7027:13:32" }, "variableNames": [ { "name": "ret", "nodeType": "YulIdentifier", - "src": "6788:3:32" + "src": "7020:3:32" } ] } @@ -5974,7 +6218,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "6708:5:32", + "src": "6940:5:32", "type": "" } ], @@ -5982,16 +6226,16 @@ { "name": "ret", "nodeType": "YulTypedName", - "src": "6718:3:32", + "src": "6950:3:32", "type": "" } ], - "src": "6679:135:32" + "src": "6911:135:32" }, { "body": { "nodeType": "YulBlock", - "src": "6993:226:32", + "src": "7225:226:32", "statements": [ { "expression": { @@ -5999,12 +6243,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7010:9:32" + "src": "7242:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7021:2:32", + "src": "7253:2:32", "type": "", "value": "32" } @@ -6012,13 +6256,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "7003:6:32" + "src": "7235:6:32" }, "nodeType": "YulFunctionCall", - "src": "7003:21:32" + "src": "7235:21:32" }, "nodeType": "YulExpressionStatement", - "src": "7003:21:32" + "src": "7235:21:32" }, { "expression": { @@ -6028,12 +6272,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7044:9:32" + "src": "7276:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7055:2:32", + "src": "7287:2:32", "type": "", "value": "32" } @@ -6041,15 +6285,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "7040:3:32" + "src": "7272:3:32" }, "nodeType": "YulFunctionCall", - "src": "7040:18:32" + "src": "7272:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7060:2:32", + "src": "7292:2:32", "type": "", "value": "36" } @@ -6057,13 +6301,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "7033:6:32" + "src": "7265:6:32" }, "nodeType": "YulFunctionCall", - "src": "7033:30:32" + "src": "7265:30:32" }, "nodeType": "YulExpressionStatement", - "src": "7033:30:32" + "src": "7265:30:32" }, { "expression": { @@ -6073,12 +6317,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7083:9:32" + "src": "7315:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7094:2:32", + "src": "7326:2:32", "type": "", "value": "64" } @@ -6086,16 +6330,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "7079:3:32" + "src": "7311:3:32" }, "nodeType": "YulFunctionCall", - "src": "7079:18:32" + "src": "7311:18:32" }, { "hexValue": "536372697074206861736e277420746865207265717569726564207374727563", "kind": "string", "nodeType": "YulLiteral", - "src": "7099:34:32", + "src": "7331:34:32", "type": "", "value": "Script hasn't the required struc" } @@ -6103,13 +6347,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "7072:6:32" + "src": "7304:6:32" }, "nodeType": "YulFunctionCall", - "src": "7072:62:32" + "src": "7304:62:32" }, "nodeType": "YulExpressionStatement", - "src": "7072:62:32" + "src": "7304:62:32" }, { "expression": { @@ -6119,12 +6363,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7154:9:32" + "src": "7386:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7165:2:32", + "src": "7397:2:32", "type": "", "value": "96" } @@ -6132,16 +6376,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "7150:3:32" + "src": "7382:3:32" }, "nodeType": "YulFunctionCall", - "src": "7150:18:32" + "src": "7382:18:32" }, { "hexValue": "74757265", "kind": "string", "nodeType": "YulLiteral", - "src": "7170:6:32", + "src": "7402:6:32", "type": "", "value": "ture" } @@ -6149,28 +6393,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "7143:6:32" + "src": "7375:6:32" }, "nodeType": "YulFunctionCall", - "src": "7143:34:32" + "src": "7375:34:32" }, "nodeType": "YulExpressionStatement", - "src": "7143:34:32" + "src": "7375:34:32" }, { "nodeType": "YulAssignment", - "src": "7186:27:32", + "src": "7418:27:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7198:9:32" + "src": "7430:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7209:3:32", + "src": "7441:3:32", "type": "", "value": "128" } @@ -6178,16 +6422,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "7194:3:32" + "src": "7426:3:32" }, "nodeType": "YulFunctionCall", - "src": "7194:19:32" + "src": "7426:19:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "7186:4:32" + "src": "7418:4:32" } ] } @@ -6199,7 +6443,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "6970:9:32", + "src": "7202:9:32", "type": "" } ], @@ -6207,20 +6451,20 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "6984:4:32", + "src": "7216:4:32", "type": "" } ], - "src": "6819:400:32" + "src": "7051:400:32" }, { "body": { "nodeType": "YulBlock", - "src": "7270:102:32", + "src": "7503:104:32", "statements": [ { "nodeType": "YulAssignment", - "src": "7280:38:32", + "src": "7513:39:32", "value": { "arguments": [ { @@ -6228,12 +6472,12 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "7295:1:32" + "src": "7529:1:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7298:4:32", + "src": "7532:4:32", "type": "", "value": "0xff" } @@ -6241,22 +6485,22 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "7291:3:32" + "src": "7525:3:32" }, "nodeType": "YulFunctionCall", - "src": "7291:12:32" + "src": "7525:12:32" }, { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "7309:1:32" + "src": "7543:1:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7312:4:32", + "src": "7546:4:32", "type": "", "value": "0xff" } @@ -6264,32 +6508,32 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "7305:3:32" + "src": "7539:3:32" }, "nodeType": "YulFunctionCall", - "src": "7305:12:32" + "src": "7539:12:32" } ], "functionName": { - "name": "add", + "name": "sub", "nodeType": "YulIdentifier", - "src": "7287:3:32" + "src": "7521:3:32" }, "nodeType": "YulFunctionCall", - "src": "7287:31:32" + "src": "7521:31:32" }, "variableNames": [ { - "name": "sum", + "name": "diff", "nodeType": "YulIdentifier", - "src": "7280:3:32" + "src": "7513:4:32" } ] }, { "body": { "nodeType": "YulBlock", - "src": "7344:22:32", + "src": "7579:22:32", "statements": [ { "expression": { @@ -6297,27 +6541,27 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "7346:16:32" + "src": "7581:16:32" }, "nodeType": "YulFunctionCall", - "src": "7346:18:32" + "src": "7581:18:32" }, "nodeType": "YulExpressionStatement", - "src": "7346:18:32" + "src": "7581:18:32" } ] }, "condition": { "arguments": [ { - "name": "sum", + "name": "diff", "nodeType": "YulIdentifier", - "src": "7333:3:32" + "src": "7567:4:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7338:4:32", + "src": "7573:4:32", "type": "", "value": "0xff" } @@ -6325,50 +6569,50 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "7330:2:32" + "src": "7564:2:32" }, "nodeType": "YulFunctionCall", - "src": "7330:13:32" + "src": "7564:14:32" }, "nodeType": "YulIf", - "src": "7327:39:32" + "src": "7561:40:32" } ] }, - "name": "checked_add_t_uint8", + "name": "checked_sub_t_uint8", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "x", "nodeType": "YulTypedName", - "src": "7253:1:32", + "src": "7485:1:32", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "7256:1:32", + "src": "7488:1:32", "type": "" } ], "returnVariables": [ { - "name": "sum", + "name": "diff", "nodeType": "YulTypedName", - "src": "7262:3:32", + "src": "7494:4:32", "type": "" } ], - "src": "7224:148:32" + "src": "7456:151:32" }, { "body": { "nodeType": "YulBlock", - "src": "7424:104:32", + "src": "7658:102:32", "statements": [ { "nodeType": "YulAssignment", - "src": "7434:39:32", + "src": "7668:38:32", "value": { "arguments": [ { @@ -6376,12 +6620,12 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "7450:1:32" + "src": "7683:1:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7453:4:32", + "src": "7686:4:32", "type": "", "value": "0xff" } @@ -6389,22 +6633,22 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "7446:3:32" + "src": "7679:3:32" }, "nodeType": "YulFunctionCall", - "src": "7446:12:32" + "src": "7679:12:32" }, { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "7464:1:32" + "src": "7697:1:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7467:4:32", + "src": "7700:4:32", "type": "", "value": "0xff" } @@ -6412,32 +6656,32 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "7460:3:32" + "src": "7693:3:32" }, "nodeType": "YulFunctionCall", - "src": "7460:12:32" + "src": "7693:12:32" } ], "functionName": { - "name": "sub", + "name": "add", "nodeType": "YulIdentifier", - "src": "7442:3:32" + "src": "7675:3:32" }, "nodeType": "YulFunctionCall", - "src": "7442:31:32" + "src": "7675:31:32" }, "variableNames": [ { - "name": "diff", + "name": "sum", "nodeType": "YulIdentifier", - "src": "7434:4:32" + "src": "7668:3:32" } ] }, { "body": { "nodeType": "YulBlock", - "src": "7500:22:32", + "src": "7732:22:32", "statements": [ { "expression": { @@ -6445,27 +6689,27 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "7502:16:32" + "src": "7734:16:32" }, "nodeType": "YulFunctionCall", - "src": "7502:18:32" + "src": "7734:18:32" }, "nodeType": "YulExpressionStatement", - "src": "7502:18:32" + "src": "7734:18:32" } ] }, "condition": { "arguments": [ { - "name": "diff", + "name": "sum", "nodeType": "YulIdentifier", - "src": "7488:4:32" + "src": "7721:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7494:4:32", + "src": "7726:4:32", "type": "", "value": "0xff" } @@ -6473,61 +6717,61 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "7485:2:32" + "src": "7718:2:32" }, "nodeType": "YulFunctionCall", - "src": "7485:14:32" + "src": "7718:13:32" }, "nodeType": "YulIf", - "src": "7482:40:32" + "src": "7715:39:32" } ] }, - "name": "checked_sub_t_uint8", + "name": "checked_add_t_uint8", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "x", "nodeType": "YulTypedName", - "src": "7406:1:32", + "src": "7641:1:32", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "7409:1:32", + "src": "7644:1:32", "type": "" } ], "returnVariables": [ { - "name": "diff", + "name": "sum", "nodeType": "YulTypedName", - "src": "7415:4:32", + "src": "7650:3:32", "type": "" } ], - "src": "7377:151:32" + "src": "7612:148:32" }, { "body": { "nodeType": "YulBlock", - "src": "7578:130:32", + "src": "7810:130:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "7588:31:32", + "src": "7820:31:32", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "7607:5:32" + "src": "7839:5:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7614:4:32", + "src": "7846:4:32", "type": "", "value": "0xff" } @@ -6535,16 +6779,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "7603:3:32" + "src": "7835:3:32" }, "nodeType": "YulFunctionCall", - "src": "7603:16:32" + "src": "7835:16:32" }, "variables": [ { "name": "value_1", "nodeType": "YulTypedName", - "src": "7592:7:32", + "src": "7824:7:32", "type": "" } ] @@ -6552,7 +6796,7 @@ { "body": { "nodeType": "YulBlock", - "src": "7649:22:32", + "src": "7881:22:32", "statements": [ { "expression": { @@ -6560,13 +6804,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "7651:16:32" + "src": "7883:16:32" }, "nodeType": "YulFunctionCall", - "src": "7651:18:32" + "src": "7883:18:32" }, "nodeType": "YulExpressionStatement", - "src": "7651:18:32" + "src": "7883:18:32" } ] }, @@ -6575,12 +6819,12 @@ { "name": "value_1", "nodeType": "YulIdentifier", - "src": "7634:7:32" + "src": "7866:7:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7643:4:32", + "src": "7875:4:32", "type": "", "value": "0xff" } @@ -6588,28 +6832,28 @@ "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "7631:2:32" + "src": "7863:2:32" }, "nodeType": "YulFunctionCall", - "src": "7631:17:32" + "src": "7863:17:32" }, "nodeType": "YulIf", - "src": "7628:43:32" + "src": "7860:43:32" }, { "nodeType": "YulAssignment", - "src": "7680:22:32", + "src": "7912:22:32", "value": { "arguments": [ { "name": "value_1", "nodeType": "YulIdentifier", - "src": "7691:7:32" + "src": "7923:7:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7700:1:32", + "src": "7932:1:32", "type": "", "value": "1" } @@ -6617,16 +6861,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "7687:3:32" + "src": "7919:3:32" }, "nodeType": "YulFunctionCall", - "src": "7687:15:32" + "src": "7919:15:32" }, "variableNames": [ { "name": "ret", "nodeType": "YulIdentifier", - "src": "7680:3:32" + "src": "7912:3:32" } ] } @@ -6638,7 +6882,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "7560:5:32", + "src": "7792:5:32", "type": "" } ], @@ -6646,16 +6890,16 @@ { "name": "ret", "nodeType": "YulTypedName", - "src": "7570:3:32", + "src": "7802:3:32", "type": "" } ], - "src": "7533:175:32" + "src": "7765:175:32" }, { "body": { "nodeType": "YulBlock", - "src": "7887:162:32", + "src": "8119:162:32", "statements": [ { "expression": { @@ -6663,12 +6907,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7904:9:32" + "src": "8136:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7915:2:32", + "src": "8147:2:32", "type": "", "value": "32" } @@ -6676,13 +6920,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "7897:6:32" + "src": "8129:6:32" }, "nodeType": "YulFunctionCall", - "src": "7897:21:32" + "src": "8129:21:32" }, "nodeType": "YulExpressionStatement", - "src": "7897:21:32" + "src": "8129:21:32" }, { "expression": { @@ -6692,12 +6936,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7938:9:32" + "src": "8170:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7949:2:32", + "src": "8181:2:32", "type": "", "value": "32" } @@ -6705,15 +6949,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "7934:3:32" + "src": "8166:3:32" }, "nodeType": "YulFunctionCall", - "src": "7934:18:32" + "src": "8166:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7954:2:32", + "src": "8186:2:32", "type": "", "value": "12" } @@ -6721,13 +6965,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "7927:6:32" + "src": "8159:6:32" }, "nodeType": "YulFunctionCall", - "src": "7927:30:32" + "src": "8159:30:32" }, "nodeType": "YulExpressionStatement", - "src": "7927:30:32" + "src": "8159:30:32" }, { "expression": { @@ -6737,12 +6981,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7977:9:32" + "src": "8209:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7988:2:32", + "src": "8220:2:32", "type": "", "value": "64" } @@ -6750,16 +6994,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "7973:3:32" + "src": "8205:3:32" }, "nodeType": "YulFunctionCall", - "src": "7973:18:32" + "src": "8205:18:32" }, { "hexValue": "496e76616c69642073697a65", "kind": "string", "nodeType": "YulLiteral", - "src": "7993:14:32", + "src": "8225:14:32", "type": "", "value": "Invalid size" } @@ -6767,28 +7011,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "7966:6:32" + "src": "8198:6:32" }, "nodeType": "YulFunctionCall", - "src": "7966:42:32" + "src": "8198:42:32" }, "nodeType": "YulExpressionStatement", - "src": "7966:42:32" + "src": "8198:42:32" }, { "nodeType": "YulAssignment", - "src": "8017:26:32", + "src": "8249:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8029:9:32" + "src": "8261:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8040:2:32", + "src": "8272:2:32", "type": "", "value": "96" } @@ -6796,16 +7040,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8025:3:32" + "src": "8257:3:32" }, "nodeType": "YulFunctionCall", - "src": "8025:18:32" + "src": "8257:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "8017:4:32" + "src": "8249:4:32" } ] } @@ -6817,7 +7061,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "7864:9:32", + "src": "8096:9:32", "type": "" } ], @@ -6825,16 +7069,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "7878:4:32", + "src": "8110:4:32", "type": "" } ], - "src": "7713:336:32" + "src": "7945:336:32" }, { "body": { "nodeType": "YulBlock", - "src": "8228:163:32", + "src": "8460:163:32", "statements": [ { "expression": { @@ -6842,12 +7086,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8245:9:32" + "src": "8477:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8256:2:32", + "src": "8488:2:32", "type": "", "value": "32" } @@ -6855,13 +7099,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "8238:6:32" + "src": "8470:6:32" }, "nodeType": "YulFunctionCall", - "src": "8238:21:32" + "src": "8470:21:32" }, "nodeType": "YulExpressionStatement", - "src": "8238:21:32" + "src": "8470:21:32" }, { "expression": { @@ -6871,12 +7115,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8279:9:32" + "src": "8511:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8290:2:32", + "src": "8522:2:32", "type": "", "value": "32" } @@ -6884,15 +7128,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8275:3:32" + "src": "8507:3:32" }, "nodeType": "YulFunctionCall", - "src": "8275:18:32" + "src": "8507:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8295:2:32", + "src": "8527:2:32", "type": "", "value": "13" } @@ -6900,13 +7144,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "8268:6:32" + "src": "8500:6:32" }, "nodeType": "YulFunctionCall", - "src": "8268:30:32" + "src": "8500:30:32" }, "nodeType": "YulExpressionStatement", - "src": "8268:30:32" + "src": "8500:30:32" }, { "expression": { @@ -6916,12 +7160,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8318:9:32" + "src": "8550:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8329:2:32", + "src": "8561:2:32", "type": "", "value": "64" } @@ -6929,16 +7173,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8314:3:32" + "src": "8546:3:32" }, "nodeType": "YulFunctionCall", - "src": "8314:18:32" + "src": "8546:18:32" }, { "hexValue": "4e6f74204f505f52455455524e", "kind": "string", "nodeType": "YulLiteral", - "src": "8334:15:32", + "src": "8566:15:32", "type": "", "value": "Not OP_RETURN" } @@ -6946,28 +7190,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "8307:6:32" + "src": "8539:6:32" }, "nodeType": "YulFunctionCall", - "src": "8307:43:32" + "src": "8539:43:32" }, "nodeType": "YulExpressionStatement", - "src": "8307:43:32" + "src": "8539:43:32" }, { "nodeType": "YulAssignment", - "src": "8359:26:32", + "src": "8591:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8371:9:32" + "src": "8603:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8382:2:32", + "src": "8614:2:32", "type": "", "value": "96" } @@ -6975,16 +7219,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8367:3:32" + "src": "8599:3:32" }, "nodeType": "YulFunctionCall", - "src": "8367:18:32" + "src": "8599:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "8359:4:32" + "src": "8591:4:32" } ] } @@ -6996,7 +7240,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "8205:9:32", + "src": "8437:9:32", "type": "" } ], @@ -7004,21 +7248,21 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "8219:4:32", + "src": "8451:4:32", "type": "" } ], - "src": "8054:337:32" + "src": "8286:337:32" }, { "body": { "nodeType": "YulBlock", - "src": "8526:201:32", + "src": "8758:201:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "8564:16:32", + "src": "8796:16:32", "statements": [ { "expression": { @@ -7026,14 +7270,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "8573:1:32", + "src": "8805:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8576:1:32", + "src": "8808:1:32", "type": "", "value": "0" } @@ -7041,13 +7285,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "8566:6:32" + "src": "8798:6:32" }, "nodeType": "YulFunctionCall", - "src": "8566:12:32" + "src": "8798:12:32" }, "nodeType": "YulExpressionStatement", - "src": "8566:12:32" + "src": "8798:12:32" } ] }, @@ -7056,29 +7300,29 @@ { "name": "startIndex", "nodeType": "YulIdentifier", - "src": "8542:10:32" + "src": "8774:10:32" }, { "name": "endIndex", "nodeType": "YulIdentifier", - "src": "8554:8:32" + "src": "8786:8:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "8539:2:32" + "src": "8771:2:32" }, "nodeType": "YulFunctionCall", - "src": "8539:24:32" + "src": "8771:24:32" }, "nodeType": "YulIf", - "src": "8536:44:32" + "src": "8768:44:32" }, { "body": { "nodeType": "YulBlock", - "src": "8613:16:32", + "src": "8845:16:32", "statements": [ { "expression": { @@ -7086,14 +7330,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "8622:1:32", + "src": "8854:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8625:1:32", + "src": "8857:1:32", "type": "", "value": "0" } @@ -7101,13 +7345,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "8615:6:32" + "src": "8847:6:32" }, "nodeType": "YulFunctionCall", - "src": "8615:12:32" + "src": "8847:12:32" }, "nodeType": "YulExpressionStatement", - "src": "8615:12:32" + "src": "8847:12:32" } ] }, @@ -7116,86 +7360,86 @@ { "name": "endIndex", "nodeType": "YulIdentifier", - "src": "8595:8:32" + "src": "8827:8:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "8605:6:32" + "src": "8837:6:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "8592:2:32" + "src": "8824:2:32" }, "nodeType": "YulFunctionCall", - "src": "8592:20:32" + "src": "8824:20:32" }, "nodeType": "YulIf", - "src": "8589:40:32" + "src": "8821:40:32" }, { "nodeType": "YulAssignment", - "src": "8638:36:32", + "src": "8870:36:32", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "8655:6:32" + "src": "8887:6:32" }, { "name": "startIndex", "nodeType": "YulIdentifier", - "src": "8663:10:32" + "src": "8895:10:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8651:3:32" + "src": "8883:3:32" }, "nodeType": "YulFunctionCall", - "src": "8651:23:32" + "src": "8883:23:32" }, "variableNames": [ { "name": "offsetOut", "nodeType": "YulIdentifier", - "src": "8638:9:32" + "src": "8870:9:32" } ] }, { "nodeType": "YulAssignment", - "src": "8683:38:32", + "src": "8915:38:32", "value": { "arguments": [ { "name": "endIndex", "nodeType": "YulIdentifier", - "src": "8700:8:32" + "src": "8932:8:32" }, { "name": "startIndex", "nodeType": "YulIdentifier", - "src": "8710:10:32" + "src": "8942:10:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "8696:3:32" + "src": "8928:3:32" }, "nodeType": "YulFunctionCall", - "src": "8696:25:32" + "src": "8928:25:32" }, "variableNames": [ { "name": "lengthOut", "nodeType": "YulIdentifier", - "src": "8683:9:32" + "src": "8915:9:32" } ] } @@ -7207,25 +7451,25 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "8460:6:32", + "src": "8692:6:32", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "8468:6:32", + "src": "8700:6:32", "type": "" }, { "name": "startIndex", "nodeType": "YulTypedName", - "src": "8476:10:32", + "src": "8708:10:32", "type": "" }, { "name": "endIndex", "nodeType": "YulTypedName", - "src": "8488:8:32", + "src": "8720:8:32", "type": "" } ], @@ -7233,82 +7477,192 @@ { "name": "offsetOut", "nodeType": "YulTypedName", - "src": "8501:9:32", + "src": "8733:9:32", "type": "" }, { "name": "lengthOut", "nodeType": "YulTypedName", - "src": "8512:9:32", + "src": "8744:9:32", "type": "" } ], - "src": "8396:331:32" + "src": "8628:331:32" }, { "body": { "nodeType": "YulBlock", - "src": "8879:124:32", + "src": "9013:79:32", "statements": [ { - "expression": { + "nodeType": "YulAssignment", + "src": "9023:17:32", + "value": { "arguments": [ { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8902:3:32" - }, - { - "name": "value0", + "name": "x", "nodeType": "YulIdentifier", - "src": "8907:6:32" + "src": "9035:1:32" }, { - "name": "value1", + "name": "y", "nodeType": "YulIdentifier", - "src": "8915:6:32" + "src": "9038:1:32" } ], "functionName": { - "name": "calldatacopy", + "name": "sub", "nodeType": "YulIdentifier", - "src": "8889:12:32" + "src": "9031:3:32" }, "nodeType": "YulFunctionCall", - "src": "8889:33:32" + "src": "9031:9:32" }, - "nodeType": "YulExpressionStatement", - "src": "8889:33:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8931:26:32", - "value": { + "variableNames": [ + { + "name": "diff", + "nodeType": "YulIdentifier", + "src": "9023:4:32" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9064:22:32", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "9066:16:32" + }, + "nodeType": "YulFunctionCall", + "src": "9066:18:32" + }, + "nodeType": "YulExpressionStatement", + "src": "9066:18:32" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "diff", + "nodeType": "YulIdentifier", + "src": "9055:4:32" + }, + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "9061:1:32" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "9052:2:32" + }, + "nodeType": "YulFunctionCall", + "src": "9052:11:32" + }, + "nodeType": "YulIf", + "src": "9049:37:32" + } + ] + }, + "name": "checked_sub_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "8995:1:32", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "8998:1:32", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nodeType": "YulTypedName", + "src": "9004:4:32", + "type": "" + } + ], + "src": "8964:128:32" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9244:124:32", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "9267:3:32" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "9272:6:32" + }, + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "9280:6:32" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "9254:12:32" + }, + "nodeType": "YulFunctionCall", + "src": "9254:33:32" + }, + "nodeType": "YulExpressionStatement", + "src": "9254:33:32" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9296:26:32", + "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "8945:3:32" + "src": "9310:3:32" }, { "name": "value1", "nodeType": "YulIdentifier", - "src": "8950:6:32" + "src": "9315:6:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8941:3:32" + "src": "9306:3:32" }, "nodeType": "YulFunctionCall", - "src": "8941:16:32" + "src": "9306:16:32" }, "variables": [ { "name": "_1", "nodeType": "YulTypedName", - "src": "8935:2:32", + "src": "9300:2:32", "type": "" } ] @@ -7319,12 +7673,12 @@ { "name": "_1", "nodeType": "YulIdentifier", - "src": "8973:2:32" + "src": "9338:2:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8977:1:32", + "src": "9342:1:32", "type": "", "value": "0" } @@ -7332,27 +7686,27 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "8966:6:32" + "src": "9331:6:32" }, "nodeType": "YulFunctionCall", - "src": "8966:13:32" + "src": "9331:13:32" }, "nodeType": "YulExpressionStatement", - "src": "8966:13:32" + "src": "9331:13:32" }, { "nodeType": "YulAssignment", - "src": "8988:9:32", + "src": "9353:9:32", "value": { "name": "_1", "nodeType": "YulIdentifier", - "src": "8995:2:32" + "src": "9360:2:32" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "8988:3:32" + "src": "9353:3:32" } ] } @@ -7364,19 +7718,19 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "8847:3:32", + "src": "9212:3:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "8852:6:32", + "src": "9217:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "8860:6:32", + "src": "9225:6:32", "type": "" } ], @@ -7384,16 +7738,16 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "8871:3:32", + "src": "9236:3:32", "type": "" } ], - "src": "8732:271:32" + "src": "9097:271:32" }, { "body": { "nodeType": "YulBlock", - "src": "9182:171:32", + "src": "9547:171:32", "statements": [ { "expression": { @@ -7401,12 +7755,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9199:9:32" + "src": "9564:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9210:2:32", + "src": "9575:2:32", "type": "", "value": "32" } @@ -7414,13 +7768,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "9192:6:32" + "src": "9557:6:32" }, "nodeType": "YulFunctionCall", - "src": "9192:21:32" + "src": "9557:21:32" }, "nodeType": "YulExpressionStatement", - "src": "9192:21:32" + "src": "9557:21:32" }, { "expression": { @@ -7430,12 +7784,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9233:9:32" + "src": "9598:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9244:2:32", + "src": "9609:2:32", "type": "", "value": "32" } @@ -7443,15 +7797,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "9229:3:32" + "src": "9594:3:32" }, "nodeType": "YulFunctionCall", - "src": "9229:18:32" + "src": "9594:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9249:2:32", + "src": "9614:2:32", "type": "", "value": "21" } @@ -7459,13 +7813,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "9222:6:32" + "src": "9587:6:32" }, "nodeType": "YulFunctionCall", - "src": "9222:30:32" + "src": "9587:30:32" }, "nodeType": "YulExpressionStatement", - "src": "9222:30:32" + "src": "9587:30:32" }, { "expression": { @@ -7475,12 +7829,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9272:9:32" + "src": "9637:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9283:2:32", + "src": "9648:2:32", "type": "", "value": "64" } @@ -7488,16 +7842,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "9268:3:32" + "src": "9633:3:32" }, "nodeType": "YulFunctionCall", - "src": "9268:18:32" + "src": "9633:18:32" }, { "hexValue": "496e76616c696420686561646572206c656e677468", "kind": "string", "nodeType": "YulLiteral", - "src": "9288:23:32", + "src": "9653:23:32", "type": "", "value": "Invalid header length" } @@ -7505,28 +7859,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "9261:6:32" + "src": "9626:6:32" }, "nodeType": "YulFunctionCall", - "src": "9261:51:32" + "src": "9626:51:32" }, "nodeType": "YulExpressionStatement", - "src": "9261:51:32" + "src": "9626:51:32" }, { "nodeType": "YulAssignment", - "src": "9321:26:32", + "src": "9686:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9333:9:32" + "src": "9698:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9344:2:32", + "src": "9709:2:32", "type": "", "value": "96" } @@ -7534,16 +7888,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "9329:3:32" + "src": "9694:3:32" }, "nodeType": "YulFunctionCall", - "src": "9329:18:32" + "src": "9694:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "9321:4:32" + "src": "9686:4:32" } ] } @@ -7555,7 +7909,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "9159:9:32", + "src": "9524:9:32", "type": "" } ], @@ -7563,21 +7917,21 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "9173:4:32", + "src": "9538:4:32", "type": "" } ], - "src": "9008:345:32" + "src": "9373:345:32" }, { "body": { "nodeType": "YulBlock", - "src": "9439:103:32", + "src": "9804:103:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "9485:16:32", + "src": "9850:16:32", "statements": [ { "expression": { @@ -7585,14 +7939,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "9494:1:32", + "src": "9859:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9497:1:32", + "src": "9862:1:32", "type": "", "value": "0" } @@ -7600,13 +7954,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "9487:6:32" + "src": "9852:6:32" }, "nodeType": "YulFunctionCall", - "src": "9487:12:32" + "src": "9852:12:32" }, "nodeType": "YulExpressionStatement", - "src": "9487:12:32" + "src": "9852:12:32" } ] }, @@ -7617,26 +7971,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "9460:7:32" + "src": "9825:7:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9469:9:32" + "src": "9834:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "9456:3:32" + "src": "9821:3:32" }, "nodeType": "YulFunctionCall", - "src": "9456:23:32" + "src": "9821:23:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9481:2:32", + "src": "9846:2:32", "type": "", "value": "32" } @@ -7644,38 +7998,38 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "9452:3:32" + "src": "9817:3:32" }, "nodeType": "YulFunctionCall", - "src": "9452:32:32" + "src": "9817:32:32" }, "nodeType": "YulIf", - "src": "9449:52:32" + "src": "9814:52:32" }, { "nodeType": "YulAssignment", - "src": "9510:26:32", + "src": "9875:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9526:9:32" + "src": "9891:9:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "9520:5:32" + "src": "9885:5:32" }, "nodeType": "YulFunctionCall", - "src": "9520:16:32" + "src": "9885:16:32" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "9510:6:32" + "src": "9875:6:32" } ] } @@ -7687,13 +8041,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "9405:9:32", + "src": "9770:9:32", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "9416:7:32", + "src": "9781:7:32", "type": "" } ], @@ -7701,16 +8055,16 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "9428:6:32", + "src": "9793:6:32", "type": "" } ], - "src": "9358:184:32" + "src": "9723:184:32" }, { "body": { "nodeType": "YulBlock", - "src": "9666:63:32", + "src": "10031:63:32", "statements": [ { "expression": { @@ -7718,39 +8072,39 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "9683:3:32" + "src": "10048:3:32" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "9688:6:32" + "src": "10053:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "9676:6:32" + "src": "10041:6:32" }, "nodeType": "YulFunctionCall", - "src": "9676:19:32" + "src": "10041:19:32" }, "nodeType": "YulExpressionStatement", - "src": "9676:19:32" + "src": "10041:19:32" }, { "nodeType": "YulAssignment", - "src": "9704:19:32", + "src": "10069:19:32", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "9715:3:32" + "src": "10080:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9720:2:32", + "src": "10085:2:32", "type": "", "value": "32" } @@ -7758,16 +8112,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "9711:3:32" + "src": "10076:3:32" }, "nodeType": "YulFunctionCall", - "src": "9711:12:32" + "src": "10076:12:32" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "9704:3:32" + "src": "10069:3:32" } ] } @@ -7779,13 +8133,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "9642:3:32", + "src": "10007:3:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "9647:6:32", + "src": "10012:6:32", "type": "" } ], @@ -7793,41 +8147,41 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "9658:3:32", + "src": "10023:3:32", "type": "" } ], - "src": "9547:182:32" + "src": "9912:182:32" }, { "body": { "nodeType": "YulBlock", - "src": "9871:150:32", + "src": "10236:150:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "9881:27:32", + "src": "10246:27:32", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "9901:6:32" + "src": "10266:6:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "9895:5:32" + "src": "10260:5:32" }, "nodeType": "YulFunctionCall", - "src": "9895:13:32" + "src": "10260:13:32" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "9885:6:32", + "src": "10250:6:32", "type": "" } ] @@ -7840,12 +8194,12 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "9956:6:32" + "src": "10321:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9964:4:32", + "src": "10329:4:32", "type": "", "value": "0x20" } @@ -7853,62 +8207,62 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "9952:3:32" + "src": "10317:3:32" }, "nodeType": "YulFunctionCall", - "src": "9952:17:32" + "src": "10317:17:32" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "9971:3:32" + "src": "10336:3:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "9976:6:32" + "src": "10341:6:32" } ], "functionName": { "name": "copy_memory_to_memory_with_cleanup", "nodeType": "YulIdentifier", - "src": "9917:34:32" + "src": "10282:34:32" }, "nodeType": "YulFunctionCall", - "src": "9917:66:32" + "src": "10282:66:32" }, "nodeType": "YulExpressionStatement", - "src": "9917:66:32" + "src": "10282:66:32" }, { "nodeType": "YulAssignment", - "src": "9992:23:32", + "src": "10357:23:32", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "10003:3:32" + "src": "10368:3:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "10008:6:32" + "src": "10373:6:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "9999:3:32" + "src": "10364:3:32" }, "nodeType": "YulFunctionCall", - "src": "9999:16:32" + "src": "10364:16:32" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "9992:3:32" + "src": "10357:3:32" } ] } @@ -7920,13 +8274,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "9847:3:32", + "src": "10212:3:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "9852:6:32", + "src": "10217:6:32", "type": "" } ], @@ -7934,16 +8288,16 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "9863:3:32", + "src": "10228:3:32", "type": "" } ], - "src": "9734:287:32" + "src": "10099:287:32" }, { "body": { "nodeType": "YulBlock", - "src": "10171:149:32", + "src": "10536:149:32", "statements": [ { "expression": { @@ -7951,28 +8305,28 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "10188:3:32" + "src": "10553:3:32" }, { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "10197:6:32" + "src": "10562:6:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "10209:3:32", + "src": "10574:3:32", "type": "", "value": "248" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10214:3:32", + "src": "10579:3:32", "type": "", "value": "255" } @@ -7980,31 +8334,31 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "10205:3:32" + "src": "10570:3:32" }, "nodeType": "YulFunctionCall", - "src": "10205:13:32" + "src": "10570:13:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "10193:3:32" + "src": "10558:3:32" }, "nodeType": "YulFunctionCall", - "src": "10193:26:32" + "src": "10558:26:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "10181:6:32" + "src": "10546:6:32" }, "nodeType": "YulFunctionCall", - "src": "10181:39:32" + "src": "10546:39:32" }, "nodeType": "YulExpressionStatement", - "src": "10181:39:32" + "src": "10546:39:32" }, { "expression": { @@ -8014,12 +8368,12 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "10240:3:32" + "src": "10605:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10245:1:32", + "src": "10610:1:32", "type": "", "value": "1" } @@ -8027,17 +8381,17 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10236:3:32" + "src": "10601:3:32" }, "nodeType": "YulFunctionCall", - "src": "10236:11:32" + "src": "10601:11:32" }, { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "10253:6:32" + "src": "10618:6:32" }, { "arguments": [ @@ -8048,14 +8402,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "10273:2:32", + "src": "10638:2:32", "type": "", "value": "96" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10277:1:32", + "src": "10642:1:32", "type": "", "value": "1" } @@ -8063,15 +8417,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "10269:3:32" + "src": "10634:3:32" }, "nodeType": "YulFunctionCall", - "src": "10269:10:32" + "src": "10634:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10281:1:32", + "src": "10646:1:32", "type": "", "value": "1" } @@ -8079,55 +8433,55 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "10265:3:32" + "src": "10630:3:32" }, "nodeType": "YulFunctionCall", - "src": "10265:18:32" + "src": "10630:18:32" } ], "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "10261:3:32" + "src": "10626:3:32" }, "nodeType": "YulFunctionCall", - "src": "10261:23:32" + "src": "10626:23:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "10249:3:32" + "src": "10614:3:32" }, "nodeType": "YulFunctionCall", - "src": "10249:36:32" + "src": "10614:36:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "10229:6:32" + "src": "10594:6:32" }, "nodeType": "YulFunctionCall", - "src": "10229:57:32" + "src": "10594:57:32" }, "nodeType": "YulExpressionStatement", - "src": "10229:57:32" + "src": "10594:57:32" }, { "nodeType": "YulAssignment", - "src": "10295:19:32", + "src": "10660:19:32", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "10306:3:32" + "src": "10671:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10311:2:32", + "src": "10676:2:32", "type": "", "value": "21" } @@ -8135,16 +8489,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10302:3:32" + "src": "10667:3:32" }, "nodeType": "YulFunctionCall", - "src": "10302:12:32" + "src": "10667:12:32" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "10295:3:32" + "src": "10660:3:32" } ] } @@ -8156,19 +8510,19 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "10139:3:32", + "src": "10504:3:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "10144:6:32", + "src": "10509:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "10152:6:32", + "src": "10517:6:32", "type": "" } ], @@ -8176,41 +8530,41 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "10163:3:32", + "src": "10528:3:32", "type": "" } ], - "src": "10026:294:32" + "src": "10391:294:32" }, { "body": { "nodeType": "YulBlock", - "src": "10488:242:32", + "src": "10853:242:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "10498:27:32", + "src": "10863:27:32", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "10518:6:32" + "src": "10883:6:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "10512:5:32" + "src": "10877:5:32" }, "nodeType": "YulFunctionCall", - "src": "10512:13:32" + "src": "10877:13:32" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "10502:6:32", + "src": "10867:6:32", "type": "" } ] @@ -8223,12 +8577,12 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "10573:6:32" + "src": "10938:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10581:4:32", + "src": "10946:4:32", "type": "", "value": "0x20" } @@ -8236,62 +8590,62 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10569:3:32" + "src": "10934:3:32" }, "nodeType": "YulFunctionCall", - "src": "10569:17:32" + "src": "10934:17:32" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "10588:3:32" + "src": "10953:3:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "10593:6:32" + "src": "10958:6:32" } ], "functionName": { "name": "copy_memory_to_memory_with_cleanup", "nodeType": "YulIdentifier", - "src": "10534:34:32" + "src": "10899:34:32" }, "nodeType": "YulFunctionCall", - "src": "10534:66:32" + "src": "10899:66:32" }, "nodeType": "YulExpressionStatement", - "src": "10534:66:32" + "src": "10899:66:32" }, { "nodeType": "YulVariableDeclaration", - "src": "10609:29:32", + "src": "10974:29:32", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "10626:3:32" + "src": "10991:3:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "10631:6:32" + "src": "10996:6:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10622:3:32" + "src": "10987:3:32" }, "nodeType": "YulFunctionCall", - "src": "10622:16:32" + "src": "10987:16:32" }, "variables": [ { "name": "end_1", "nodeType": "YulTypedName", - "src": "10613:5:32", + "src": "10978:5:32", "type": "" } ] @@ -8302,28 +8656,28 @@ { "name": "end_1", "nodeType": "YulIdentifier", - "src": "10654:5:32" + "src": "11019:5:32" }, { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "10665:6:32" + "src": "11030:6:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "10677:3:32", + "src": "11042:3:32", "type": "", "value": "224" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10682:10:32", + "src": "11047:10:32", "type": "", "value": "0xffffffff" } @@ -8331,46 +8685,46 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "10673:3:32" + "src": "11038:3:32" }, "nodeType": "YulFunctionCall", - "src": "10673:20:32" + "src": "11038:20:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "10661:3:32" + "src": "11026:3:32" }, "nodeType": "YulFunctionCall", - "src": "10661:33:32" + "src": "11026:33:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "10647:6:32" + "src": "11012:6:32" }, "nodeType": "YulFunctionCall", - "src": "10647:48:32" + "src": "11012:48:32" }, "nodeType": "YulExpressionStatement", - "src": "10647:48:32" + "src": "11012:48:32" }, { "nodeType": "YulAssignment", - "src": "10704:20:32", + "src": "11069:20:32", "value": { "arguments": [ { "name": "end_1", "nodeType": "YulIdentifier", - "src": "10715:5:32" + "src": "11080:5:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10722:1:32", + "src": "11087:1:32", "type": "", "value": "4" } @@ -8378,16 +8732,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10711:3:32" + "src": "11076:3:32" }, "nodeType": "YulFunctionCall", - "src": "10711:13:32" + "src": "11076:13:32" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "10704:3:32" + "src": "11069:3:32" } ] } @@ -8399,19 +8753,19 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "10456:3:32", + "src": "10821:3:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "10461:6:32", + "src": "10826:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "10469:6:32", + "src": "10834:6:32", "type": "" } ], @@ -8419,16 +8773,16 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "10480:3:32", + "src": "10845:3:32", "type": "" } ], - "src": "10325:405:32" + "src": "10690:405:32" }, { "body": { "nodeType": "YulBlock", - "src": "10909:173:32", + "src": "11274:173:32", "statements": [ { "expression": { @@ -8436,12 +8790,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10926:9:32" + "src": "11291:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10937:2:32", + "src": "11302:2:32", "type": "", "value": "32" } @@ -8449,13 +8803,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "10919:6:32" + "src": "11284:6:32" }, "nodeType": "YulFunctionCall", - "src": "10919:21:32" + "src": "11284:21:32" }, "nodeType": "YulExpressionStatement", - "src": "10919:21:32" + "src": "11284:21:32" }, { "expression": { @@ -8465,12 +8819,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10960:9:32" + "src": "11325:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10971:2:32", + "src": "11336:2:32", "type": "", "value": "32" } @@ -8478,15 +8832,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10956:3:32" + "src": "11321:3:32" }, "nodeType": "YulFunctionCall", - "src": "10956:18:32" + "src": "11321:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10976:2:32", + "src": "11341:2:32", "type": "", "value": "23" } @@ -8494,13 +8848,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "10949:6:32" + "src": "11314:6:32" }, "nodeType": "YulFunctionCall", - "src": "10949:30:32" + "src": "11314:30:32" }, "nodeType": "YulExpressionStatement", - "src": "10949:30:32" + "src": "11314:30:32" }, { "expression": { @@ -8510,12 +8864,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10999:9:32" + "src": "11364:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11010:2:32", + "src": "11375:2:32", "type": "", "value": "64" } @@ -8523,16 +8877,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10995:3:32" + "src": "11360:3:32" }, "nodeType": "YulFunctionCall", - "src": "10995:18:32" + "src": "11360:18:32" }, { "hexValue": "556e737570706f72746564207363726970742074797065", "kind": "string", "nodeType": "YulLiteral", - "src": "11015:25:32", + "src": "11380:25:32", "type": "", "value": "Unsupported script type" } @@ -8540,28 +8894,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "10988:6:32" + "src": "11353:6:32" }, "nodeType": "YulFunctionCall", - "src": "10988:53:32" + "src": "11353:53:32" }, "nodeType": "YulExpressionStatement", - "src": "10988:53:32" + "src": "11353:53:32" }, { "nodeType": "YulAssignment", - "src": "11050:26:32", + "src": "11415:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11062:9:32" + "src": "11427:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11073:2:32", + "src": "11438:2:32", "type": "", "value": "96" } @@ -8569,16 +8923,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11058:3:32" + "src": "11423:3:32" }, "nodeType": "YulFunctionCall", - "src": "11058:18:32" + "src": "11423:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "11050:4:32" + "src": "11415:4:32" } ] } @@ -8590,7 +8944,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "10886:9:32", + "src": "11251:9:32", "type": "" } ], @@ -8598,126 +8952,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "10900:4:32", - "type": "" - } - ], - "src": "10735:347:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11136:79:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11146:17:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "11158:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "11161:1:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11154:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11154:9:32" - }, - "variableNames": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "11146:4:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11187:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "11189:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "11189:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11189:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "11178:4:32" - }, - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "11184:1:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "11175:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "11175:11:32" - }, - "nodeType": "YulIf", - "src": "11172:37:32" - } - ] - }, - "name": "checked_sub_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "11118:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "11121:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "diff", - "nodeType": "YulTypedName", - "src": "11127:4:32", + "src": "11265:4:32", "type": "" } ], - "src": "11087:128:32" + "src": "11100:347:32" }, { "body": { "nodeType": "YulBlock", - "src": "11394:230:32", + "src": "11626:230:32", "statements": [ { "expression": { @@ -8725,12 +8969,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11411:9:32" + "src": "11643:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11422:2:32", + "src": "11654:2:32", "type": "", "value": "32" } @@ -8738,13 +8982,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "11404:6:32" + "src": "11636:6:32" }, "nodeType": "YulFunctionCall", - "src": "11404:21:32" + "src": "11636:21:32" }, "nodeType": "YulExpressionStatement", - "src": "11404:21:32" + "src": "11636:21:32" }, { "expression": { @@ -8754,12 +8998,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11445:9:32" + "src": "11677:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11456:2:32", + "src": "11688:2:32", "type": "", "value": "32" } @@ -8767,15 +9011,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11441:3:32" + "src": "11673:3:32" }, "nodeType": "YulFunctionCall", - "src": "11441:18:32" + "src": "11673:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11461:2:32", + "src": "11693:2:32", "type": "", "value": "40" } @@ -8783,13 +9027,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "11434:6:32" + "src": "11666:6:32" }, "nodeType": "YulFunctionCall", - "src": "11434:30:32" + "src": "11666:30:32" }, "nodeType": "YulExpressionStatement", - "src": "11434:30:32" + "src": "11666:30:32" }, { "expression": { @@ -8799,12 +9043,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11484:9:32" + "src": "11716:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11495:2:32", + "src": "11727:2:32", "type": "", "value": "64" } @@ -8812,16 +9056,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11480:3:32" + "src": "11712:3:32" }, "nodeType": "YulFunctionCall", - "src": "11480:18:32" + "src": "11712:18:32" }, { "hexValue": "53697a6520706f736974696f6e2063616e277420626520626967676572207468", "kind": "string", "nodeType": "YulLiteral", - "src": "11500:34:32", + "src": "11732:34:32", "type": "", "value": "Size position can't be bigger th" } @@ -8829,13 +9073,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "11473:6:32" + "src": "11705:6:32" }, "nodeType": "YulFunctionCall", - "src": "11473:62:32" + "src": "11705:62:32" }, "nodeType": "YulExpressionStatement", - "src": "11473:62:32" + "src": "11705:62:32" }, { "expression": { @@ -8845,12 +9089,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11555:9:32" + "src": "11787:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11566:2:32", + "src": "11798:2:32", "type": "", "value": "96" } @@ -8858,16 +9102,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11551:3:32" + "src": "11783:3:32" }, "nodeType": "YulFunctionCall", - "src": "11551:18:32" + "src": "11783:18:32" }, { "hexValue": "616e206172726179", "kind": "string", "nodeType": "YulLiteral", - "src": "11571:10:32", + "src": "11803:10:32", "type": "", "value": "an array" } @@ -8875,28 +9119,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "11544:6:32" + "src": "11776:6:32" }, "nodeType": "YulFunctionCall", - "src": "11544:38:32" + "src": "11776:38:32" }, "nodeType": "YulExpressionStatement", - "src": "11544:38:32" + "src": "11776:38:32" }, { "nodeType": "YulAssignment", - "src": "11591:27:32", + "src": "11823:27:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11603:9:32" + "src": "11835:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11614:3:32", + "src": "11846:3:32", "type": "", "value": "128" } @@ -8904,16 +9148,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11599:3:32" + "src": "11831:3:32" }, "nodeType": "YulFunctionCall", - "src": "11599:19:32" + "src": "11831:19:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "11591:4:32" + "src": "11823:4:32" } ] } @@ -8925,7 +9169,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "11371:9:32", + "src": "11603:9:32", "type": "" } ], @@ -8933,24 +9177,24 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "11385:4:32", + "src": "11617:4:32", "type": "" } ], - "src": "11220:404:32" + "src": "11452:404:32" }, { "body": { "nodeType": "YulBlock", - "src": "11693:358:32", + "src": "11925:358:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "11703:16:32", + "src": "11935:16:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "11718:1:32", + "src": "11950:1:32", "type": "", "value": "1" }, @@ -8958,52 +9202,52 @@ { "name": "power_1", "nodeType": "YulTypedName", - "src": "11707:7:32", + "src": "11939:7:32", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "11728:16:32", + "src": "11960:16:32", "value": { "name": "power_1", "nodeType": "YulIdentifier", - "src": "11737:7:32" + "src": "11969:7:32" }, "variableNames": [ { "name": "power", "nodeType": "YulIdentifier", - "src": "11728:5:32" + "src": "11960:5:32" } ] }, { "nodeType": "YulAssignment", - "src": "11753:13:32", + "src": "11985:13:32", "value": { "name": "_base", "nodeType": "YulIdentifier", - "src": "11761:5:32" + "src": "11993:5:32" }, "variableNames": [ { "name": "base", "nodeType": "YulIdentifier", - "src": "11753:4:32" + "src": "11985:4:32" } ] }, { "body": { "nodeType": "YulBlock", - "src": "11817:228:32", + "src": "12049:228:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "11862:22:32", + "src": "12094:22:32", "statements": [ { "expression": { @@ -9011,13 +9255,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "11864:16:32" + "src": "12096:16:32" }, "nodeType": "YulFunctionCall", - "src": "11864:18:32" + "src": "12096:18:32" }, "nodeType": "YulExpressionStatement", - "src": "11864:18:32" + "src": "12096:18:32" } ] }, @@ -9026,7 +9270,7 @@ { "name": "base", "nodeType": "YulIdentifier", - "src": "11837:4:32" + "src": "12069:4:32" }, { "arguments": [ @@ -9035,7 +9279,7 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "11851:1:32", + "src": "12083:1:32", "type": "", "value": "0" } @@ -9043,71 +9287,71 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "11847:3:32" + "src": "12079:3:32" }, "nodeType": "YulFunctionCall", - "src": "11847:6:32" + "src": "12079:6:32" }, { "name": "base", "nodeType": "YulIdentifier", - "src": "11855:4:32" + "src": "12087:4:32" } ], "functionName": { "name": "div", "nodeType": "YulIdentifier", - "src": "11843:3:32" + "src": "12075:3:32" }, "nodeType": "YulFunctionCall", - "src": "11843:17:32" + "src": "12075:17:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "11834:2:32" + "src": "12066:2:32" }, "nodeType": "YulFunctionCall", - "src": "11834:27:32" + "src": "12066:27:32" }, "nodeType": "YulIf", - "src": "11831:53:32" + "src": "12063:53:32" }, { "body": { "nodeType": "YulBlock", - "src": "11923:29:32", + "src": "12155:29:32", "statements": [ { "nodeType": "YulAssignment", - "src": "11925:25:32", + "src": "12157:25:32", "value": { "arguments": [ { "name": "power", "nodeType": "YulIdentifier", - "src": "11938:5:32" + "src": "12170:5:32" }, { "name": "base", "nodeType": "YulIdentifier", - "src": "11945:4:32" + "src": "12177:4:32" } ], "functionName": { "name": "mul", "nodeType": "YulIdentifier", - "src": "11934:3:32" + "src": "12166:3:32" }, "nodeType": "YulFunctionCall", - "src": "11934:16:32" + "src": "12166:16:32" }, "variableNames": [ { "name": "power", "nodeType": "YulIdentifier", - "src": "11925:5:32" + "src": "12157:5:32" } ] } @@ -9118,86 +9362,86 @@ { "name": "exponent", "nodeType": "YulIdentifier", - "src": "11904:8:32" + "src": "12136:8:32" }, { "name": "power_1", "nodeType": "YulIdentifier", - "src": "11914:7:32" + "src": "12146:7:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "11900:3:32" + "src": "12132:3:32" }, "nodeType": "YulFunctionCall", - "src": "11900:22:32" + "src": "12132:22:32" }, "nodeType": "YulIf", - "src": "11897:55:32" + "src": "12129:55:32" }, { "nodeType": "YulAssignment", - "src": "11965:23:32", + "src": "12197:23:32", "value": { "arguments": [ { "name": "base", "nodeType": "YulIdentifier", - "src": "11977:4:32" + "src": "12209:4:32" }, { "name": "base", "nodeType": "YulIdentifier", - "src": "11983:4:32" + "src": "12215:4:32" } ], "functionName": { "name": "mul", "nodeType": "YulIdentifier", - "src": "11973:3:32" + "src": "12205:3:32" }, "nodeType": "YulFunctionCall", - "src": "11973:15:32" + "src": "12205:15:32" }, "variableNames": [ { "name": "base", "nodeType": "YulIdentifier", - "src": "11965:4:32" + "src": "12197:4:32" } ] }, { "nodeType": "YulAssignment", - "src": "12001:34:32", + "src": "12233:34:32", "value": { "arguments": [ { "name": "power_1", "nodeType": "YulIdentifier", - "src": "12017:7:32" + "src": "12249:7:32" }, { "name": "exponent", "nodeType": "YulIdentifier", - "src": "12026:8:32" + "src": "12258:8:32" } ], "functionName": { "name": "shr", "nodeType": "YulIdentifier", - "src": "12013:3:32" + "src": "12245:3:32" }, "nodeType": "YulFunctionCall", - "src": "12013:22:32" + "src": "12245:22:32" }, "variableNames": [ { "name": "exponent", "nodeType": "YulIdentifier", - "src": "12001:8:32" + "src": "12233:8:32" } ] } @@ -9208,34 +9452,34 @@ { "name": "exponent", "nodeType": "YulIdentifier", - "src": "11786:8:32" + "src": "12018:8:32" }, { "name": "power_1", "nodeType": "YulIdentifier", - "src": "11796:7:32" + "src": "12028:7:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "11783:2:32" + "src": "12015:2:32" }, "nodeType": "YulFunctionCall", - "src": "11783:21:32" + "src": "12015:21:32" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "11805:3:32", + "src": "12037:3:32", "statements": [] }, "pre": { "nodeType": "YulBlock", - "src": "11779:3:32", + "src": "12011:3:32", "statements": [] }, - "src": "11775:270:32" + "src": "12007:270:32" } ] }, @@ -9245,13 +9489,13 @@ { "name": "_base", "nodeType": "YulTypedName", - "src": "11657:5:32", + "src": "11889:5:32", "type": "" }, { "name": "exponent", "nodeType": "YulTypedName", - "src": "11664:8:32", + "src": "11896:8:32", "type": "" } ], @@ -9259,35 +9503,35 @@ { "name": "power", "nodeType": "YulTypedName", - "src": "11677:5:32", + "src": "11909:5:32", "type": "" }, { "name": "base", "nodeType": "YulTypedName", - "src": "11684:4:32", + "src": "11916:4:32", "type": "" } ], - "src": "11629:422:32" + "src": "11861:422:32" }, { "body": { "nodeType": "YulBlock", - "src": "12115:747:32", + "src": "12347:747:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "12153:52:32", + "src": "12385:52:32", "statements": [ { "nodeType": "YulAssignment", - "src": "12167:10:32", + "src": "12399:10:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "12176:1:32", + "src": "12408:1:32", "type": "", "value": "1" }, @@ -9295,13 +9539,13 @@ { "name": "power", "nodeType": "YulIdentifier", - "src": "12167:5:32" + "src": "12399:5:32" } ] }, { "nodeType": "YulLeave", - "src": "12190:5:32" + "src": "12422:5:32" } ] }, @@ -9310,32 +9554,32 @@ { "name": "exponent", "nodeType": "YulIdentifier", - "src": "12135:8:32" + "src": "12367:8:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "12128:6:32" + "src": "12360:6:32" }, "nodeType": "YulFunctionCall", - "src": "12128:16:32" + "src": "12360:16:32" }, "nodeType": "YulIf", - "src": "12125:80:32" + "src": "12357:80:32" }, { "body": { "nodeType": "YulBlock", - "src": "12238:52:32", + "src": "12470:52:32", "statements": [ { "nodeType": "YulAssignment", - "src": "12252:10:32", + "src": "12484:10:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "12261:1:32", + "src": "12493:1:32", "type": "", "value": "0" }, @@ -9343,13 +9587,13 @@ { "name": "power", "nodeType": "YulIdentifier", - "src": "12252:5:32" + "src": "12484:5:32" } ] }, { "nodeType": "YulLeave", - "src": "12275:5:32" + "src": "12507:5:32" } ] }, @@ -9358,34 +9602,34 @@ { "name": "base", "nodeType": "YulIdentifier", - "src": "12224:4:32" + "src": "12456:4:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "12217:6:32" + "src": "12449:6:32" }, "nodeType": "YulFunctionCall", - "src": "12217:12:32" + "src": "12449:12:32" }, "nodeType": "YulIf", - "src": "12214:76:32" + "src": "12446:76:32" }, { "cases": [ { "body": { "nodeType": "YulBlock", - "src": "12326:52:32", + "src": "12558:52:32", "statements": [ { "nodeType": "YulAssignment", - "src": "12340:10:32", + "src": "12572:10:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "12349:1:32", + "src": "12581:1:32", "type": "", "value": "1" }, @@ -9393,22 +9637,22 @@ { "name": "power", "nodeType": "YulIdentifier", - "src": "12340:5:32" + "src": "12572:5:32" } ] }, { "nodeType": "YulLeave", - "src": "12363:5:32" + "src": "12595:5:32" } ] }, "nodeType": "YulCase", - "src": "12319:59:32", + "src": "12551:59:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "12324:1:32", + "src": "12556:1:32", "type": "", "value": "1" } @@ -9416,12 +9660,12 @@ { "body": { "nodeType": "YulBlock", - "src": "12394:123:32", + "src": "12626:123:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "12429:22:32", + "src": "12661:22:32", "statements": [ { "expression": { @@ -9429,13 +9673,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "12431:16:32" + "src": "12663:16:32" }, "nodeType": "YulFunctionCall", - "src": "12431:18:32" + "src": "12663:18:32" }, "nodeType": "YulExpressionStatement", - "src": "12431:18:32" + "src": "12663:18:32" } ] }, @@ -9444,12 +9688,12 @@ { "name": "exponent", "nodeType": "YulIdentifier", - "src": "12414:8:32" + "src": "12646:8:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12424:3:32", + "src": "12656:3:32", "type": "", "value": "255" } @@ -9457,28 +9701,28 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "12411:2:32" + "src": "12643:2:32" }, "nodeType": "YulFunctionCall", - "src": "12411:17:32" + "src": "12643:17:32" }, "nodeType": "YulIf", - "src": "12408:43:32" + "src": "12640:43:32" }, { "nodeType": "YulAssignment", - "src": "12464:25:32", + "src": "12696:25:32", "value": { "arguments": [ { "name": "exponent", "nodeType": "YulIdentifier", - "src": "12477:8:32" + "src": "12709:8:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12487:1:32", + "src": "12719:1:32", "type": "", "value": "1" } @@ -9486,31 +9730,31 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "12473:3:32" + "src": "12705:3:32" }, "nodeType": "YulFunctionCall", - "src": "12473:16:32" + "src": "12705:16:32" }, "variableNames": [ { "name": "power", "nodeType": "YulIdentifier", - "src": "12464:5:32" + "src": "12696:5:32" } ] }, { "nodeType": "YulLeave", - "src": "12502:5:32" + "src": "12734:5:32" } ] }, "nodeType": "YulCase", - "src": "12387:130:32", + "src": "12619:130:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "12392:1:32", + "src": "12624:1:32", "type": "", "value": "2" } @@ -9519,51 +9763,51 @@ "expression": { "name": "base", "nodeType": "YulIdentifier", - "src": "12306:4:32" + "src": "12538:4:32" }, "nodeType": "YulSwitch", - "src": "12299:218:32" + "src": "12531:218:32" }, { "body": { "nodeType": "YulBlock", - "src": "12615:70:32", + "src": "12847:70:32", "statements": [ { "nodeType": "YulAssignment", - "src": "12629:28:32", + "src": "12861:28:32", "value": { "arguments": [ { "name": "base", "nodeType": "YulIdentifier", - "src": "12642:4:32" + "src": "12874:4:32" }, { "name": "exponent", "nodeType": "YulIdentifier", - "src": "12648:8:32" + "src": "12880:8:32" } ], "functionName": { "name": "exp", "nodeType": "YulIdentifier", - "src": "12638:3:32" + "src": "12870:3:32" }, "nodeType": "YulFunctionCall", - "src": "12638:19:32" + "src": "12870:19:32" }, "variableNames": [ { "name": "power", "nodeType": "YulIdentifier", - "src": "12629:5:32" + "src": "12861:5:32" } ] }, { "nodeType": "YulLeave", - "src": "12670:5:32" + "src": "12902:5:32" } ] }, @@ -9576,12 +9820,12 @@ { "name": "base", "nodeType": "YulIdentifier", - "src": "12539:4:32" + "src": "12771:4:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12545:2:32", + "src": "12777:2:32", "type": "", "value": "11" } @@ -9589,22 +9833,22 @@ "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "12536:2:32" + "src": "12768:2:32" }, "nodeType": "YulFunctionCall", - "src": "12536:12:32" + "src": "12768:12:32" }, { "arguments": [ { "name": "exponent", "nodeType": "YulIdentifier", - "src": "12553:8:32" + "src": "12785:8:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12563:2:32", + "src": "12795:2:32", "type": "", "value": "78" } @@ -9612,19 +9856,19 @@ "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "12550:2:32" + "src": "12782:2:32" }, "nodeType": "YulFunctionCall", - "src": "12550:16:32" + "src": "12782:16:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "12532:3:32" + "src": "12764:3:32" }, "nodeType": "YulFunctionCall", - "src": "12532:35:32" + "src": "12764:35:32" }, { "arguments": [ @@ -9633,12 +9877,12 @@ { "name": "base", "nodeType": "YulIdentifier", - "src": "12576:4:32" + "src": "12808:4:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12582:3:32", + "src": "12814:3:32", "type": "", "value": "307" } @@ -9646,22 +9890,22 @@ "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "12573:2:32" + "src": "12805:2:32" }, "nodeType": "YulFunctionCall", - "src": "12573:13:32" + "src": "12805:13:32" }, { "arguments": [ { "name": "exponent", "nodeType": "YulIdentifier", - "src": "12591:8:32" + "src": "12823:8:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12601:2:32", + "src": "12833:2:32", "type": "", "value": "32" } @@ -9669,67 +9913,67 @@ "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "12588:2:32" + "src": "12820:2:32" }, "nodeType": "YulFunctionCall", - "src": "12588:16:32" + "src": "12820:16:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "12569:3:32" + "src": "12801:3:32" }, "nodeType": "YulFunctionCall", - "src": "12569:36:32" + "src": "12801:36:32" } ], "functionName": { "name": "or", "nodeType": "YulIdentifier", - "src": "12529:2:32" + "src": "12761:2:32" }, "nodeType": "YulFunctionCall", - "src": "12529:77:32" + "src": "12761:77:32" }, "nodeType": "YulIf", - "src": "12526:159:32" + "src": "12758:159:32" }, { "nodeType": "YulVariableDeclaration", - "src": "12694:57:32", + "src": "12926:57:32", "value": { "arguments": [ { "name": "base", "nodeType": "YulIdentifier", - "src": "12736:4:32" + "src": "12968:4:32" }, { "name": "exponent", "nodeType": "YulIdentifier", - "src": "12742:8:32" + "src": "12974:8:32" } ], "functionName": { "name": "checked_exp_helper", "nodeType": "YulIdentifier", - "src": "12717:18:32" + "src": "12949:18:32" }, "nodeType": "YulFunctionCall", - "src": "12717:34:32" + "src": "12949:34:32" }, "variables": [ { "name": "power_1", "nodeType": "YulTypedName", - "src": "12698:7:32", + "src": "12930:7:32", "type": "" }, { "name": "base_1", "nodeType": "YulTypedName", - "src": "12707:6:32", + "src": "12939:6:32", "type": "" } ] @@ -9737,7 +9981,7 @@ { "body": { "nodeType": "YulBlock", - "src": "12796:22:32", + "src": "13028:22:32", "statements": [ { "expression": { @@ -9745,13 +9989,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "12798:16:32" + "src": "13030:16:32" }, "nodeType": "YulFunctionCall", - "src": "12798:18:32" + "src": "13030:18:32" }, "nodeType": "YulExpressionStatement", - "src": "12798:18:32" + "src": "13030:18:32" } ] }, @@ -9760,7 +10004,7 @@ { "name": "power_1", "nodeType": "YulIdentifier", - "src": "12766:7:32" + "src": "12998:7:32" }, { "arguments": [ @@ -9769,7 +10013,7 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "12783:1:32", + "src": "13015:1:32", "type": "", "value": "0" } @@ -9777,66 +10021,66 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "12779:3:32" + "src": "13011:3:32" }, "nodeType": "YulFunctionCall", - "src": "12779:6:32" + "src": "13011:6:32" }, { "name": "base_1", "nodeType": "YulIdentifier", - "src": "12787:6:32" + "src": "13019:6:32" } ], "functionName": { "name": "div", "nodeType": "YulIdentifier", - "src": "12775:3:32" + "src": "13007:3:32" }, "nodeType": "YulFunctionCall", - "src": "12775:19:32" + "src": "13007:19:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "12763:2:32" + "src": "12995:2:32" }, "nodeType": "YulFunctionCall", - "src": "12763:32:32" + "src": "12995:32:32" }, "nodeType": "YulIf", - "src": "12760:58:32" + "src": "12992:58:32" }, { "nodeType": "YulAssignment", - "src": "12827:29:32", + "src": "13059:29:32", "value": { "arguments": [ { "name": "power_1", "nodeType": "YulIdentifier", - "src": "12840:7:32" + "src": "13072:7:32" }, { "name": "base_1", "nodeType": "YulIdentifier", - "src": "12849:6:32" + "src": "13081:6:32" } ], "functionName": { "name": "mul", "nodeType": "YulIdentifier", - "src": "12836:3:32" + "src": "13068:3:32" }, "nodeType": "YulFunctionCall", - "src": "12836:20:32" + "src": "13068:20:32" }, "variableNames": [ { "name": "power", "nodeType": "YulIdentifier", - "src": "12827:5:32" + "src": "13059:5:32" } ] } @@ -9848,13 +10092,13 @@ { "name": "base", "nodeType": "YulTypedName", - "src": "12086:4:32", + "src": "12318:4:32", "type": "" }, { "name": "exponent", "nodeType": "YulTypedName", - "src": "12092:8:32", + "src": "12324:8:32", "type": "" } ], @@ -9862,38 +10106,38 @@ { "name": "power", "nodeType": "YulTypedName", - "src": "12105:5:32", + "src": "12337:5:32", "type": "" } ], - "src": "12056:806:32" + "src": "12288:806:32" }, { "body": { "nodeType": "YulBlock", - "src": "12935:72:32", + "src": "13167:72:32", "statements": [ { "nodeType": "YulAssignment", - "src": "12945:56:32", + "src": "13177:56:32", "value": { "arguments": [ { "name": "base", "nodeType": "YulIdentifier", - "src": "12975:4:32" + "src": "13207:4:32" }, { "arguments": [ { "name": "exponent", "nodeType": "YulIdentifier", - "src": "12985:8:32" + "src": "13217:8:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12995:4:32", + "src": "13227:4:32", "type": "", "value": "0xff" } @@ -9901,25 +10145,25 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "12981:3:32" + "src": "13213:3:32" }, "nodeType": "YulFunctionCall", - "src": "12981:19:32" + "src": "13213:19:32" } ], "functionName": { "name": "checked_exp_unsigned", "nodeType": "YulIdentifier", - "src": "12954:20:32" + "src": "13186:20:32" }, "nodeType": "YulFunctionCall", - "src": "12954:47:32" + "src": "13186:47:32" }, "variableNames": [ { "name": "power", "nodeType": "YulIdentifier", - "src": "12945:5:32" + "src": "13177:5:32" } ] } @@ -9931,13 +10175,13 @@ { "name": "base", "nodeType": "YulTypedName", - "src": "12906:4:32", + "src": "13138:4:32", "type": "" }, { "name": "exponent", "nodeType": "YulTypedName", - "src": "12912:8:32", + "src": "13144:8:32", "type": "" } ], @@ -9945,16 +10189,16 @@ { "name": "power", "nodeType": "YulTypedName", - "src": "12925:5:32", + "src": "13157:5:32", "type": "" } ], - "src": "12867:140:32" + "src": "13099:140:32" }, { "body": { "nodeType": "YulBlock", - "src": "13186:181:32", + "src": "13418:181:32", "statements": [ { "expression": { @@ -9962,12 +10206,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13203:9:32" + "src": "13435:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13214:2:32", + "src": "13446:2:32", "type": "", "value": "32" } @@ -9975,13 +10219,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13196:6:32" + "src": "13428:6:32" }, "nodeType": "YulFunctionCall", - "src": "13196:21:32" + "src": "13428:21:32" }, "nodeType": "YulExpressionStatement", - "src": "13196:21:32" + "src": "13428:21:32" }, { "expression": { @@ -9991,12 +10235,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13237:9:32" + "src": "13469:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13248:2:32", + "src": "13480:2:32", "type": "", "value": "32" } @@ -10004,15 +10248,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13233:3:32" + "src": "13465:3:32" }, "nodeType": "YulFunctionCall", - "src": "13233:18:32" + "src": "13465:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13253:2:32", + "src": "13485:2:32", "type": "", "value": "31" } @@ -10020,13 +10264,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13226:6:32" + "src": "13458:6:32" }, "nodeType": "YulFunctionCall", - "src": "13226:30:32" + "src": "13458:30:32" }, "nodeType": "YulExpressionStatement", - "src": "13226:30:32" + "src": "13458:30:32" }, { "expression": { @@ -10036,12 +10280,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13276:9:32" + "src": "13508:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13287:2:32", + "src": "13519:2:32", "type": "", "value": "64" } @@ -10049,16 +10293,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13272:3:32" + "src": "13504:3:32" }, "nodeType": "YulFunctionCall", - "src": "13272:18:32" + "src": "13504:18:32" }, { "hexValue": "756e737570706f7274656420636f6d706163742073697a65206c656e677468", "kind": "string", "nodeType": "YulLiteral", - "src": "13292:33:32", + "src": "13524:33:32", "type": "", "value": "unsupported compact size length" } @@ -10066,28 +10310,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13265:6:32" + "src": "13497:6:32" }, "nodeType": "YulFunctionCall", - "src": "13265:61:32" + "src": "13497:61:32" }, "nodeType": "YulExpressionStatement", - "src": "13265:61:32" + "src": "13497:61:32" }, { "nodeType": "YulAssignment", - "src": "13335:26:32", + "src": "13567:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13347:9:32" + "src": "13579:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13358:2:32", + "src": "13590:2:32", "type": "", "value": "96" } @@ -10095,16 +10339,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13343:3:32" + "src": "13575:3:32" }, "nodeType": "YulFunctionCall", - "src": "13343:18:32" + "src": "13575:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "13335:4:32" + "src": "13567:4:32" } ] } @@ -10116,7 +10360,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "13163:9:32", + "src": "13395:9:32", "type": "" } ], @@ -10124,24 +10368,24 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "13177:4:32", + "src": "13409:4:32", "type": "" } ], - "src": "13012:355:32" + "src": "13244:355:32" }, { "body": { "nodeType": "YulBlock", - "src": "13419:121:32", + "src": "13651:121:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "13429:16:32", + "src": "13661:16:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "13439:6:32", + "src": "13671:6:32", "type": "", "value": "0xffff" }, @@ -10149,14 +10393,14 @@ { "name": "_1", "nodeType": "YulTypedName", - "src": "13433:2:32", + "src": "13665:2:32", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "13454:34:32", + "src": "13686:34:32", "value": { "arguments": [ { @@ -10164,64 +10408,64 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "13469:1:32" + "src": "13701:1:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "13472:2:32" + "src": "13704:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "13465:3:32" + "src": "13697:3:32" }, "nodeType": "YulFunctionCall", - "src": "13465:10:32" + "src": "13697:10:32" }, { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "13481:1:32" + "src": "13713:1:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "13484:2:32" + "src": "13716:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "13477:3:32" + "src": "13709:3:32" }, "nodeType": "YulFunctionCall", - "src": "13477:10:32" + "src": "13709:10:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13461:3:32" + "src": "13693:3:32" }, "nodeType": "YulFunctionCall", - "src": "13461:27:32" + "src": "13693:27:32" }, "variableNames": [ { "name": "sum", "nodeType": "YulIdentifier", - "src": "13454:3:32" + "src": "13686:3:32" } ] }, { "body": { "nodeType": "YulBlock", - "src": "13512:22:32", + "src": "13744:22:32", "statements": [ { "expression": { @@ -10229,13 +10473,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "13514:16:32" + "src": "13746:16:32" }, "nodeType": "YulFunctionCall", - "src": "13514:18:32" + "src": "13746:18:32" }, "nodeType": "YulExpressionStatement", - "src": "13514:18:32" + "src": "13746:18:32" } ] }, @@ -10244,24 +10488,24 @@ { "name": "sum", "nodeType": "YulIdentifier", - "src": "13503:3:32" + "src": "13735:3:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "13508:2:32" + "src": "13740:2:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "13500:2:32" + "src": "13732:2:32" }, "nodeType": "YulFunctionCall", - "src": "13500:11:32" + "src": "13732:11:32" }, "nodeType": "YulIf", - "src": "13497:37:32" + "src": "13729:37:32" } ] }, @@ -10271,13 +10515,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "13402:1:32", + "src": "13634:1:32", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "13405:1:32", + "src": "13637:1:32", "type": "" } ], @@ -10285,1306 +10529,1245 @@ { "name": "sum", "nodeType": "YulTypedName", - "src": "13411:3:32", + "src": "13643:3:32", "type": "" } ], - "src": "13372:168:32" + "src": "13604:168:32" }, { "body": { "nodeType": "YulBlock", - "src": "13719:170:32", + "src": "13829:116:32", "statements": [ { - "expression": { + "nodeType": "YulAssignment", + "src": "13839:20:32", + "value": { "arguments": [ { - "name": "headStart", + "name": "x", "nodeType": "YulIdentifier", - "src": "13736:9:32" + "src": "13854:1:32" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13747:2:32", - "type": "", - "value": "32" + "name": "y", + "nodeType": "YulIdentifier", + "src": "13857:1:32" } ], "functionName": { - "name": "mstore", + "name": "mul", "nodeType": "YulIdentifier", - "src": "13729:6:32" + "src": "13850:3:32" }, "nodeType": "YulFunctionCall", - "src": "13729:21:32" + "src": "13850:9:32" }, - "nodeType": "YulExpressionStatement", - "src": "13729:21:32" + "variableNames": [ + { + "name": "product", + "nodeType": "YulIdentifier", + "src": "13839:7:32" + } + ] }, { - "expression": { - "arguments": [ + "body": { + "nodeType": "YulBlock", + "src": "13917:22:32", + "statements": [ { - "arguments": [ - { - "name": "headStart", + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "13770:9:32" + "src": "13919:16:32" }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13781:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13766:3:32" + "nodeType": "YulFunctionCall", + "src": "13919:18:32" }, - "nodeType": "YulFunctionCall", - "src": "13766:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13786:2:32", - "type": "", - "value": "20" + "nodeType": "YulExpressionStatement", + "src": "13919:18:32" } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13759:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13759:30:32" + ] }, - "nodeType": "YulExpressionStatement", - "src": "13759:30:32" - }, - { - "expression": { + "condition": { "arguments": [ { "arguments": [ { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13809:9:32" - }, + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "13888:1:32" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "13881:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "13881:9:32" + }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13820:2:32", - "type": "", - "value": "64" + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "13895:1:32" + }, + { + "arguments": [ + { + "name": "product", + "nodeType": "YulIdentifier", + "src": "13902:7:32" + }, + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "13911:1:32" + } + ], + "functionName": { + "name": "div", + "nodeType": "YulIdentifier", + "src": "13898:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "13898:15:32" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "13892:2:32" + }, + "nodeType": "YulFunctionCall", + "src": "13892:22:32" } ], "functionName": { - "name": "add", + "name": "or", "nodeType": "YulIdentifier", - "src": "13805:3:32" + "src": "13878:2:32" }, "nodeType": "YulFunctionCall", - "src": "13805:18:32" - }, - { - "hexValue": "536c6963696e67206f7574206f662072616e6765", - "kind": "string", - "nodeType": "YulLiteral", - "src": "13825:22:32", - "type": "", - "value": "Slicing out of range" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13798:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13798:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13798:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "13857:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13869:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13880:2:32", - "type": "", - "value": "96" + "src": "13878:37:32" } ], "functionName": { - "name": "add", + "name": "iszero", "nodeType": "YulIdentifier", - "src": "13865:3:32" + "src": "13871:6:32" }, "nodeType": "YulFunctionCall", - "src": "13865:18:32" + "src": "13871:45:32" }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13857:4:32" - } - ] + "nodeType": "YulIf", + "src": "13868:71:32" } ] }, - "name": "abi_encode_tuple_t_stringliteral_0ad8ca266b3c2b0d5c0f93daeb15638ddfa510fccabc652325dc97cf893869fd__to_t_string_memory_ptr__fromStack_reversed", + "name": "checked_mul_t_uint256", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "headStart", + "name": "x", + "nodeType": "YulTypedName", + "src": "13808:1:32", + "type": "" + }, + { + "name": "y", "nodeType": "YulTypedName", - "src": "13696:9:32", + "src": "13811:1:32", "type": "" } ], "returnVariables": [ { - "name": "tail", + "name": "product", "nodeType": "YulTypedName", - "src": "13710:4:32", + "src": "13817:7:32", "type": "" } ], - "src": "13545:344:32" + "src": "13777:168:32" }, { "body": { "nodeType": "YulBlock", - "src": "14068:182:32", + "src": "13982:95:32", "statements": [ { "expression": { "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14085:9:32" - }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14096:2:32", + "src": "13999:1:32", "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14078:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14078:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14078:21:32" - }, - { - "expression": { - "arguments": [ + "value": "0" + }, { "arguments": [ { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14119:9:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "14006:3:32", + "type": "", + "value": "224" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14130:2:32", + "src": "14011:10:32", "type": "", - "value": "32" + "value": "0x4e487b71" } ], "functionName": { - "name": "add", + "name": "shl", "nodeType": "YulIdentifier", - "src": "14115:3:32" + "src": "14002:3:32" }, "nodeType": "YulFunctionCall", - "src": "14115:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14135:2:32", - "type": "", - "value": "32" + "src": "14002:20:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "14108:6:32" + "src": "13992:6:32" }, "nodeType": "YulFunctionCall", - "src": "14108:30:32" + "src": "13992:31:32" }, "nodeType": "YulExpressionStatement", - "src": "14108:30:32" + "src": "13992:31:32" }, { "expression": { "arguments": [ { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14158:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14169:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14154:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14154:18:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "14039:1:32", + "type": "", + "value": "4" }, { - "hexValue": "52616e67652063616e277420626520626967676572207468616e206172726179", - "kind": "string", + "kind": "number", "nodeType": "YulLiteral", - "src": "14174:34:32", + "src": "14042:4:32", "type": "", - "value": "Range can't be bigger than array" + "value": "0x12" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "14147:6:32" + "src": "14032:6:32" }, "nodeType": "YulFunctionCall", - "src": "14147:62:32" + "src": "14032:15:32" }, "nodeType": "YulExpressionStatement", - "src": "14147:62:32" + "src": "14032:15:32" }, { - "nodeType": "YulAssignment", - "src": "14218:26:32", - "value": { + "expression": { "arguments": [ { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14230:9:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "14063:1:32", + "type": "", + "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14241:2:32", + "src": "14066:4:32", "type": "", - "value": "96" + "value": "0x24" } ], "functionName": { - "name": "add", + "name": "revert", "nodeType": "YulIdentifier", - "src": "14226:3:32" + "src": "14056:6:32" }, "nodeType": "YulFunctionCall", - "src": "14226:18:32" + "src": "14056:15:32" }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14218:4:32" - } - ] + "nodeType": "YulExpressionStatement", + "src": "14056:15:32" } ] }, - "name": "abi_encode_tuple_t_stringliteral_b880bf2732d5dc41106d7c9b4d33a7d7359e73ab841c93dd915612cdef84660a__to_t_string_memory_ptr__fromStack_reversed", + "name": "panic_error_0x12", "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14045:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "14059:4:32", - "type": "" - } - ], - "src": "13894:356:32" + "src": "13950:127:32" }, { "body": { "nodeType": "YulBlock", - "src": "14307:116:32", + "src": "14128:74:32", "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "14151:22:32", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x12", + "nodeType": "YulIdentifier", + "src": "14153:16:32" + }, + "nodeType": "YulFunctionCall", + "src": "14153:18:32" + }, + "nodeType": "YulExpressionStatement", + "src": "14153:18:32" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "14148:1:32" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "14141:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "14141:9:32" + }, + "nodeType": "YulIf", + "src": "14138:35:32" + }, { "nodeType": "YulAssignment", - "src": "14317:20:32", + "src": "14182:14:32", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "14332:1:32" + "src": "14191:1:32" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "14335:1:32" + "src": "14194:1:32" } ], "functionName": { - "name": "mul", + "name": "div", "nodeType": "YulIdentifier", - "src": "14328:3:32" + "src": "14187:3:32" }, "nodeType": "YulFunctionCall", - "src": "14328:9:32" + "src": "14187:9:32" }, "variableNames": [ { - "name": "product", + "name": "r", "nodeType": "YulIdentifier", - "src": "14317:7:32" + "src": "14182:1:32" } ] - }, + } + ] + }, + "name": "checked_div_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "14113:1:32", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "14116:1:32", + "type": "" + } + ], + "returnVariables": [ + { + "name": "r", + "nodeType": "YulTypedName", + "src": "14122:1:32", + "type": "" + } + ], + "src": "14082:120:32" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14245:74:32", + "statements": [ { "body": { "nodeType": "YulBlock", - "src": "14395:22:32", + "src": "14268:22:32", "statements": [ { "expression": { "arguments": [], "functionName": { - "name": "panic_error_0x11", + "name": "panic_error_0x12", "nodeType": "YulIdentifier", - "src": "14397:16:32" + "src": "14270:16:32" }, "nodeType": "YulFunctionCall", - "src": "14397:18:32" + "src": "14270:18:32" }, "nodeType": "YulExpressionStatement", - "src": "14397:18:32" + "src": "14270:18:32" } ] }, "condition": { "arguments": [ { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "14366:1:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "14359:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14359:9:32" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "14373:1:32" - }, - { - "arguments": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "14380:7:32" - }, - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "14389:1:32" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "14376:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14376:15:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "14370:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "14370:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "14356:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "14356:37:32" + "name": "y", + "nodeType": "YulIdentifier", + "src": "14265:1:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "14349:6:32" + "src": "14258:6:32" }, "nodeType": "YulFunctionCall", - "src": "14349:45:32" + "src": "14258:9:32" }, "nodeType": "YulIf", - "src": "14346:71:32" - } - ] - }, - "name": "checked_mul_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "14286:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "14289:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "product", - "nodeType": "YulTypedName", - "src": "14295:7:32", - "type": "" - } - ], - "src": "14255:168:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14498:61:32", - "statements": [ + "src": "14255:35:32" + }, { "nodeType": "YulAssignment", - "src": "14508:45:32", + "src": "14299:14:32", "value": { "arguments": [ { - "name": "base", + "name": "x", "nodeType": "YulIdentifier", - "src": "14538:4:32" + "src": "14308:1:32" }, { - "name": "exponent", + "name": "y", "nodeType": "YulIdentifier", - "src": "14544:8:32" + "src": "14311:1:32" } ], "functionName": { - "name": "checked_exp_unsigned", + "name": "mod", "nodeType": "YulIdentifier", - "src": "14517:20:32" + "src": "14304:3:32" }, "nodeType": "YulFunctionCall", - "src": "14517:36:32" + "src": "14304:9:32" }, "variableNames": [ { - "name": "power", + "name": "r", "nodeType": "YulIdentifier", - "src": "14508:5:32" + "src": "14299:1:32" } ] } ] }, - "name": "checked_exp_t_uint256_t_uint256", + "name": "mod_t_uint256", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "base", + "name": "x", "nodeType": "YulTypedName", - "src": "14469:4:32", + "src": "14230:1:32", "type": "" }, { - "name": "exponent", + "name": "y", "nodeType": "YulTypedName", - "src": "14475:8:32", + "src": "14233:1:32", "type": "" } ], "returnVariables": [ { - "name": "power", + "name": "r", "nodeType": "YulTypedName", - "src": "14488:5:32", + "src": "14239:1:32", "type": "" } ], - "src": "14428:131:32" + "src": "14207:112:32" }, { "body": { "nodeType": "YulBlock", - "src": "14615:206:32", + "src": "14498:170:32", "statements": [ { - "nodeType": "YulVariableDeclaration", - "src": "14625:28:32", - "value": { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "14515:9:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14526:2:32", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14508:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "14508:21:32" + }, + "nodeType": "YulExpressionStatement", + "src": "14508:21:32" + }, + { + "expression": { "arguments": [ { "arguments": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14643:2:32", - "type": "", - "value": "64" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "14549:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14647:1:32", + "src": "14560:2:32", "type": "", - "value": "1" + "value": "32" } ], "functionName": { - "name": "shl", + "name": "add", "nodeType": "YulIdentifier", - "src": "14639:3:32" + "src": "14545:3:32" }, "nodeType": "YulFunctionCall", - "src": "14639:10:32" + "src": "14545:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14651:1:32", + "src": "14565:2:32", "type": "", - "value": "1" + "value": "20" } ], "functionName": { - "name": "sub", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "14635:3:32" + "src": "14538:6:32" }, "nodeType": "YulFunctionCall", - "src": "14635:18:32" + "src": "14538:30:32" }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "14629:2:32", - "type": "" - } - ] + "nodeType": "YulExpressionStatement", + "src": "14538:30:32" }, { - "nodeType": "YulVariableDeclaration", - "src": "14662:46:32", - "value": { + "expression": { "arguments": [ { "arguments": [ { - "name": "x", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "14689:1:32" + "src": "14588:9:32" }, { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14692:2:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "14599:2:32", + "type": "", + "value": "64" } ], "functionName": { - "name": "and", + "name": "add", "nodeType": "YulIdentifier", - "src": "14685:3:32" + "src": "14584:3:32" }, "nodeType": "YulFunctionCall", - "src": "14685:10:32" + "src": "14584:18:32" }, { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "14701:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14704:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "14697:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14697:10:32" + "hexValue": "536c6963696e67206f7574206f662072616e6765", + "kind": "string", + "nodeType": "YulLiteral", + "src": "14604:22:32", + "type": "", + "value": "Slicing out of range" } ], "functionName": { - "name": "mul", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "14681:3:32" + "src": "14577:6:32" }, "nodeType": "YulFunctionCall", - "src": "14681:27:32" + "src": "14577:50:32" }, - "variables": [ - { - "name": "product_raw", - "nodeType": "YulTypedName", - "src": "14666:11:32", - "type": "" - } - ] + "nodeType": "YulExpressionStatement", + "src": "14577:50:32" }, { "nodeType": "YulAssignment", - "src": "14717:31:32", + "src": "14636:26:32", "value": { "arguments": [ { - "name": "product_raw", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "14732:11:32" + "src": "14648:9:32" }, { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14745:2:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "14659:2:32", + "type": "", + "value": "96" } ], "functionName": { - "name": "and", + "name": "add", "nodeType": "YulIdentifier", - "src": "14728:3:32" + "src": "14644:3:32" }, "nodeType": "YulFunctionCall", - "src": "14728:20:32" + "src": "14644:18:32" }, "variableNames": [ { - "name": "product", + "name": "tail", "nodeType": "YulIdentifier", - "src": "14717:7:32" + "src": "14636:4:32" } ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14793:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "14795:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "14795:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14795:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "14770:7:32" - }, - { - "name": "product_raw", - "nodeType": "YulIdentifier", - "src": "14779:11:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "14767:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "14767:24:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "14760:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14760:32:32" - }, - "nodeType": "YulIf", - "src": "14757:58:32" } ] }, - "name": "checked_mul_t_uint64", + "name": "abi_encode_tuple_t_stringliteral_0ad8ca266b3c2b0d5c0f93daeb15638ddfa510fccabc652325dc97cf893869fd__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "x", - "nodeType": "YulTypedName", - "src": "14594:1:32", - "type": "" - }, - { - "name": "y", + "name": "headStart", "nodeType": "YulTypedName", - "src": "14597:1:32", + "src": "14475:9:32", "type": "" } ], "returnVariables": [ { - "name": "product", + "name": "tail", "nodeType": "YulTypedName", - "src": "14603:7:32", + "src": "14489:4:32", "type": "" } ], - "src": "14564:257:32" - } - ] - }, - "contents": "{\n { }\n function abi_decode_bytes_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, sub(shl(64, 1), 1)) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, length), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_encode_bytes(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n let tail_1 := add(headStart, _1)\n mstore(headStart, _1)\n let pos := tail_1\n let length := mload(value0)\n mstore(tail_1, length)\n let _2 := 64\n pos := add(headStart, _2)\n let tail_2 := add(add(headStart, shl(5, length)), _2)\n let srcPtr := add(value0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), not(63)))\n let _3 := mload(srcPtr)\n let _4 := 0x80\n mstore(tail_2, and(mload(_3), sub(shl(64, 1), 1)))\n let memberValue0 := mload(add(_3, _1))\n mstore(add(tail_2, _1), _4)\n let tail_3 := abi_encode_bytes(memberValue0, add(tail_2, _4))\n mstore(add(tail_2, _2), mload(add(_3, _2)))\n let _5 := 0x60\n mstore(add(tail_2, _5), mload(add(_3, _5)))\n tail_2 := tail_3\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes_calldata_ptrt_bool(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n value2 := abi_decode_bool(add(headStart, 32))\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_bytes_calldata_ptrt_bytes_calldata_ptrt_bool(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_bytes_calldata(add(headStart, offset_1), dataEnd)\n value2 := value2_1\n value3 := value3_1\n value4 := abi_decode_bool(add(headStart, 64))\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if iszero(slt(add(_2, 0x1f), dataEnd)) { revert(0, 0) }\n let _3 := calldataload(_2)\n if gt(_3, _1) { panic_error_0x41() }\n let _4 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_3, 0x1f), _4), 63), _4))\n if or(gt(newFreePtr, _1), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _3)\n if gt(add(add(_2, _3), 32), dataEnd) { revert(0, 0) }\n calldatacopy(add(memPtr, 32), add(_2, 32), _3)\n mstore(add(add(memPtr, _3), 32), 0)\n value0 := memPtr\n }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_library_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function panic_error_0x32()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function checked_add_t_uint64(x, y) -> sum\n {\n let _1 := sub(shl(64, 1), 1)\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function increment_t_uint64(value) -> ret\n {\n let _1 := sub(shl(64, 1), 1)\n let value_1 := and(value, _1)\n if eq(value_1, _1) { panic_error_0x11() }\n ret := add(value_1, 1)\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, not(0)) { panic_error_0x11() }\n ret := add(value, 1)\n }\n function abi_encode_tuple_t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 36)\n mstore(add(headStart, 64), \"Script hasn't the required struc\")\n mstore(add(headStart, 96), \"ture\")\n tail := add(headStart, 128)\n }\n function checked_add_t_uint8(x, y) -> sum\n {\n sum := add(and(x, 0xff), and(y, 0xff))\n if gt(sum, 0xff) { panic_error_0x11() }\n }\n function checked_sub_t_uint8(x, y) -> diff\n {\n diff := sub(and(x, 0xff), and(y, 0xff))\n if gt(diff, 0xff) { panic_error_0x11() }\n }\n function increment_t_uint8(value) -> ret\n {\n let value_1 := and(value, 0xff)\n if eq(value_1, 0xff) { panic_error_0x11() }\n ret := add(value_1, 1)\n }\n function abi_encode_tuple_t_stringliteral_151b9b932514cffea6d6fb8ef0dc06f3ba8d7fdd73eacee7d06d663fcfd3d8d0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 12)\n mstore(add(headStart, 64), \"Invalid size\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_91402c28d33a78ed08b610916663678b602b8439e472ae56e5b350939be81082__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 13)\n mstore(add(headStart, 64), \"Not OP_RETURN\")\n tail := add(headStart, 96)\n }\n function calldata_array_index_range_access_t_bytes_calldata_ptr(offset, length, startIndex, endIndex) -> offsetOut, lengthOut\n {\n if gt(startIndex, endIndex) { revert(0, 0) }\n if gt(endIndex, length) { revert(0, 0) }\n offsetOut := add(offset, startIndex)\n lengthOut := sub(endIndex, startIndex)\n }\n function abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n calldatacopy(pos, value0, value1)\n let _1 := add(pos, value1)\n mstore(_1, 0)\n end := _1\n }\n function abi_encode_tuple_t_stringliteral_62784c5b4854856e20fdf3da2ed017d8d7ad91e96ee28ef17acb0683953b91b7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 21)\n mstore(add(headStart, 64), \"Invalid header length\")\n tail := add(headStart, 96)\n }\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_packed_t_bytes32__to_t_bytes32__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n mstore(pos, value0)\n end := add(pos, 32)\n }\n function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function abi_encode_tuple_packed_t_bytes1_t_bytes20__to_t_bytes1_t_bytes20__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, and(value0, shl(248, 255)))\n mstore(add(pos, 1), and(value1, not(sub(shl(96, 1), 1))))\n end := add(pos, 21)\n }\n function abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes4__to_t_bytes_memory_ptr_t_bytes4__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n let end_1 := add(pos, length)\n mstore(end_1, and(value1, shl(224, 0xffffffff)))\n end := add(end_1, 4)\n }\n function abi_encode_tuple_t_stringliteral_82bc120954d4025ad83f4cfd56c5f75d5f05a659cc4489ef281377ffa1d8ef8b__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 23)\n mstore(add(headStart, 64), \"Unsupported script type\")\n tail := add(headStart, 96)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_33c6dd8650ffbd109c11f2a50d2c26a90aa65e9c0c8ae6a11ce0114fae017f47__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 40)\n mstore(add(headStart, 64), \"Size position can't be bigger th\")\n mstore(add(headStart, 96), \"an array\")\n tail := add(headStart, 128)\n }\n function checked_exp_helper(_base, exponent) -> power, base\n {\n let power_1 := 1\n power := power_1\n base := _base\n for { } gt(exponent, power_1) { }\n {\n if gt(base, div(not(0), base)) { panic_error_0x11() }\n if and(exponent, power_1) { power := mul(power, base) }\n base := mul(base, base)\n exponent := shr(power_1, exponent)\n }\n }\n function checked_exp_unsigned(base, exponent) -> power\n {\n if iszero(exponent)\n {\n power := 1\n leave\n }\n if iszero(base)\n {\n power := 0\n leave\n }\n switch base\n case 1 {\n power := 1\n leave\n }\n case 2 {\n if gt(exponent, 255) { panic_error_0x11() }\n power := shl(exponent, 1)\n leave\n }\n if or(and(lt(base, 11), lt(exponent, 78)), and(lt(base, 307), lt(exponent, 32)))\n {\n power := exp(base, exponent)\n leave\n }\n let power_1, base_1 := checked_exp_helper(base, exponent)\n if gt(power_1, div(not(0), base_1)) { panic_error_0x11() }\n power := mul(power_1, base_1)\n }\n function checked_exp_t_uint256_t_uint8(base, exponent) -> power\n {\n power := checked_exp_unsigned(base, and(exponent, 0xff))\n }\n function abi_encode_tuple_t_stringliteral_173d55eda06bf2b35eca6401b7d16b17b1fc97b7601de25f26189f5300bf3cb3__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 31)\n mstore(add(headStart, 64), \"unsupported compact size length\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint16(x, y) -> sum\n {\n let _1 := 0xffff\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_0ad8ca266b3c2b0d5c0f93daeb15638ddfa510fccabc652325dc97cf893869fd__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 20)\n mstore(add(headStart, 64), \"Slicing out of range\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b880bf2732d5dc41106d7c9b4d33a7d7359e73ab841c93dd915612cdef84660a__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Range can't be bigger than array\")\n tail := add(headStart, 96)\n }\n function checked_mul_t_uint256(x, y) -> product\n {\n product := mul(x, y)\n if iszero(or(iszero(x), eq(y, div(product, x)))) { panic_error_0x11() }\n }\n function checked_exp_t_uint256_t_uint256(base, exponent) -> power\n {\n power := checked_exp_unsigned(base, exponent)\n }\n function checked_mul_t_uint64(x, y) -> product\n {\n let _1 := sub(shl(64, 1), 1)\n let product_raw := mul(and(x, _1), and(y, _1))\n product := and(product_raw, _1)\n if iszero(eq(product, product_raw)) { panic_error_0x11() }\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "356:12409:17:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;356:12409:17;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "356:12409:17:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1580:1150;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7231:583;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;8044:262::-;;;;;;:::i;:::-;;:::i;6197:584::-;;;;;;:::i;:::-;;:::i;10241:230::-;;;;;;:::i;:::-;;:::i;:::-;;;4421:14:32;;4414:22;4396:41;;4384:2;4369:18;10241:230:17;4248:195:32;9130:303:17;;;;;;:::i;:::-;;:::i;:::-;;;5660:25:32;;;5648:2;5633:18;9130:303:17;5506:185:32;10830:495:17;;;;;;:::i;:::-;;:::i;5459:268::-;;;;;;:::i;:::-;;:::i;4121:440::-;;;;;;:::i;:::-;;:::i;4828:372::-;;;;;;:::i;:::-;;:::i;8479:498::-;;;;;;:::i;:::-;;:::i;1580:1150::-;1643:20;1698:1;1714:5;;1698:1;1714:8;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;1714:8:17;:16;;-1:-1:-1;1714:36:17;;;;;1734:5;;1740:1;1734:8;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;1734:16:17;;1746:4;1734:16;;;1714:36;1710:125;;;-1:-1:-1;1823:1:17;1710:125;1854:17;1873:21;1898:43;1918:15;1935:5;;1898:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1898:19:17;;-1:-1:-1;;;1898:43:17:i;:::-;1853:88;;-1:-1:-1;1853:88:17;-1:-1:-1;1951:33:17;;;;;;:::i;:::-;;;1995:18;2023:22;2060:8;2055:253;2078:10;-1:-1:-1;;;;;2074:14:17;:1;-1:-1:-1;;;;;2074:14:17;;2055:253;;;2109:32;541:2;2109:32;;:::i;:::-;;;2188:43;2208:15;2225:5;;2188:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2188:19:17;;-1:-1:-1;;;2188:43:17:i;:::-;2155:76;;-1:-1:-1;2155:76:17;-1:-1:-1;2264:29:17;;;;2155:76;2264:29;:::i;:::-;:33;;2296:1;2264:33;:::i;:::-;2245:52;;-1:-1:-1;;;;;2245:52:17;;;:::i;:::-;;-1:-1:-1;2090:3:17;;;;:::i;:::-;;;;2055:253;;;;2319:18;2339:22;2365:43;2385:15;2402:5;;2365:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2365:19:17;;-1:-1:-1;;;2365:43:17:i;:::-;2318:90;;-1:-1:-1;2318:90:17;-1:-1:-1;2418:34:17;;;;;;:::i;:::-;;;2463:27;2511:11;-1:-1:-1;;;;;2493:30:17;-1:-1:-1;;;;;2493:30:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;2463:60;;2538:6;2533:168;2554:11;-1:-1:-1;;;;;2550:15:17;:1;:15;2533:168;;;2598:40;2615:15;2632:5;;2598:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2598:16:17;;-1:-1:-1;;;2598:40:17:i;:::-;2586:6;2593:1;2586:9;;;;;;;;:::i;:::-;;;;;;:52;;;;2671:6;2678:1;2671:9;;;;;;;;:::i;:::-;;;;;;;:19;;;2652:38;;;;;:::i;:::-;;-1:-1:-1;2567:3:17;;;;:::i;:::-;;;;2533:168;;;-1:-1:-1;2717:6:17;-1:-1:-1;;;;;;;;1580:1150:17;;;;;:::o;7231:583::-;7325:12;7357:26;7370:12;;7357:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7357:12:17;;-1:-1:-1;;;7357:26:17:i;:::-;7349:75;;;;-1:-1:-1;;;7349:75:17;;;;;;;:::i;:::-;;;;;;;;;7435:31;7479:20;865:2;7498:1;7479:20;:::i;:::-;7469:31;;-1:-1:-1;;;;;7469:31:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7469:31:17;-1:-1:-1;7435:65:17;-1:-1:-1;916:1:17;7510:168;7547:36;916:1;865:2;7547:36;:::i;:::-;7543:40;;:1;:40;;;7510:168;;;7652:12;;7665:1;7652:15;;;;;;;;;:::i;:::-;;;;;;;;;7604:18;916:1;7623;:21;;;;:::i;:::-;:25;;7647:1;7623:25;:::i;:::-;7604:45;;;;;;;;;;:::i;:::-;;;;:63;-1:-1:-1;;;;;7604:63:17;;;;;;;;-1:-1:-1;7585:3:17;;;;:::i;:::-;;;;7510:168;;;;7712:7;:60;;-1:-1:-1;;;7712:60:17;;;-1:-1:-1;;;7712:60:17;7688:18;7707:1;7688:21;;;;;;;;:::i;:::-;;;;:84;-1:-1:-1;;;;;7688:84:17;;;;;;;;-1:-1:-1;7789:18:17;-1:-1:-1;7231:583:17;;;;;;:::o;8044:262::-;8123:12;8177:1;8155:23;;8147:47;;;;-1:-1:-1;;;8147:47:17;;7915:2:32;8147:47:17;;;7897:21:32;7954:2;7934:18;;;7927:30;-1:-1:-1;;;7973:18:32;;;7966:42;8025:18;;8147:47:17;7713:336:32;8147:47:17;-1:-1:-1;;;8212:12:17;;8225:1;8212:15;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;8212:36:17;;;8204:62;;;;-1:-1:-1;;;8204:62:17;;8256:2:32;8204:62:17;;;8238:21:32;8295:2;8275:18;;;8268:30;-1:-1:-1;;;8314:18:32;;;8307:43;8367:18;;8204:62:17;8054:337:32;8204:62:17;8283:16;:12;8296:1;8283:12;;:16;:::i;:::-;8276:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8276:23:17;;8044:262;-1:-1:-1;;;;;;8044:262:17:o;6197:584::-;6291:12;6323:27;6337:12;;6323:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6323:13:17;;-1:-1:-1;;;6323:27:17:i;:::-;6315:76;;;;-1:-1:-1;;;6315:76:17;;;;;;;:::i;:::-;6402:31;6446:20;642:2;6465:1;6446:20;:::i;:::-;6436:31;;-1:-1:-1;;;;;6436:31:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6436:31:17;-1:-1:-1;6402:65:17;-1:-1:-1;693:1:17;6477:168;6514:36;693:1;642:2;6514:36;:::i;:::-;6510:40;;:1;:40;;;6477:168;;;6619:12;;6632:1;6619:15;;;;;;;;;:::i;:::-;;;;;;;;;6571:18;693:1;6590;:21;;;;:::i;:::-;:25;;6614:1;6590:25;:::i;:::-;6571:45;;;;;;;;;;:::i;:::-;;;;:63;-1:-1:-1;;;;;6571:63:17;;;;;;;;-1:-1:-1;6552:3:17;;;;:::i;:::-;;;;6477:168;;;;6679:7;:60;;-1:-1:-1;;;6679:60:17;;;751:4;6655:18;6674:1;6655:21;;;;;;;;:::i;10241:230::-;10348:4;10386:2;10371:17;;:93;;;;;10422:41;10447:6;;10455:7;10422:24;:41::i;:::-;10412:52;;;;;;10402:4;;10392:15;;;;;;;:::i;:::-;;;;;;;;:72;10371:93;10364:100;10241:230;-1:-1:-1;;;;;;10241:230:17:o;9130:303::-;9202:7;9333:6;:13;9350:2;9333:19;9325:53;;;;-1:-1:-1;;;9325:53:17;;9210:2:32;9325:53:17;;;9192:21:32;9249:2;9229:18;;;9222:30;-1:-1:-1;;;9268:18:32;;;9261:51;9329:18;;9325:53:17;9008:345:32;9325:53:17;9396:30;9415:6;9423:2;9396:18;:30::i;:::-;9389:37;;;9130:303;-1:-1:-1;;9130:303:17:o;10830:495::-;10922:12;10946:18;10967:43;10994:14;11001:6;;10994:14;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10977:32;;;;;;9676:19:32;;9720:2;9711:12;;9547:182;10977:32:17;;;;-1:-1:-1;;10977:32:17;;;;;;;;;;10967:43;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10946:64;;11020:18;11041:7;:61;;-1:-1:-1;;;11041:61:17;;;-1:-1:-1;;;11041:61:17;11142:37;;-1:-1:-1;;;;;;10193:26:32;;11142:37:17;;;10181:39:32;-1:-1:-1;;;;;;10249:36:32;;10236:11;;;10229:57;11020:82:17;;-1:-1:-1;11112:27:17;;10302:12:32;;11142:37:17;;;;;;;;;;;;11112:67;;11189:15;11214:48;11238:22;11245:14;11238:22;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11221:40;;;;;;9676:19:32;;9720:2;9711:12;;9547:182;11221:40:17;;;;-1:-1:-1;;11221:40:17;;;;;;;;;;11214:48;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11189:74;;11293:14;11309:8;11280:38;;;;;;;;;:::i;:::-;;;;;;;;;;;;;11273:45;;;;;;10830:495;;;;;:::o;5459:268::-;5525:4;5548:8;:15;5567:2;5548:21;:70;;;;-1:-1:-1;5585:11:17;;-1:-1:-1;;;5600:18:17;5585:8;;5594:1;;5585:11;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;5585:11:17;:33;5548:70;:124;;;;;865:2;5634:38;;5640:8;5649:1;5640:11;;;;;;;;:::i;:::-;;;;;;;5634:38;5548:124;:172;;;;-1:-1:-1;5688:12:17;;-1:-1:-1;;;5704:16:17;5688:8;;5697:2;;5688:12;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;5688:12:17;:32;5541:179;5459:268;-1:-1:-1;;5459:268:17:o;4121:440::-;4216:12;4244:27;4258:12;;4244:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4244:13:17;;-1:-1:-1;;;4244:27:17:i;:::-;4240:108;;;4294:43;4315:12;;4329:7;4294:20;:43::i;:::-;4287:50;;;;4240:108;4361:26;4374:12;;4361:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4361:12:17;;-1:-1:-1;;;4361:26:17:i;:::-;4357:107;;;4410:43;4431:12;;4445:7;4410:20;:43::i;4357:107::-;4521:33;;-1:-1:-1;;;4521:33:17;;10937:2:32;4521:33:17;;;10919:21:32;10976:2;10956:18;;;10949:30;-1:-1:-1;;;10995:18:32;;;10988:53;11058:18;;4521:33:17;10735:347:32;4828:372:17;4895:4;4918:8;:15;4937:2;4918:21;:66;;;;-1:-1:-1;4955:11:17;;-1:-1:-1;;;4970:14:17;4955:8;;4964:1;;4955:11;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;4955:11:17;:29;4918:66;:115;;;;-1:-1:-1;5000:11:17;;-1:-1:-1;;;5015:18:17;5000:8;;5009:1;;5000:11;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;5000:11:17;:33;4918:115;:169;;;;;642:2;5049:38;;5055:8;5064:1;5055:11;;;;;;;;:::i;:::-;;;;;;;5049:38;4918:169;:223;;;;-1:-1:-1;5103:12:17;;-1:-1:-1;;;5119:22:17;5103:8;;5112:2;;5103:12;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;5103:12:17;:38;4918:223;:275;;;;-1:-1:-1;5157:12:17;;-1:-1:-1;;;5174:19:17;5157:8;;5166:2;;5157:12;;;;;;:::i;8479:498::-;8541:7;8560:25;8605:39;8629:13;8636:5;;8629:13;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8612:31;;;;;;9676:19:32;;9720:2;9711:12;;9547:182;8612:31:17;;;;-1:-1:-1;;8612:31:17;;;;;;;;;;8605:39;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8588:57;;;;;;9676:19:32;;9720:2;9711:12;;9547:182;8588:57:17;;;;-1:-1:-1;;8588:57:17;;;;;;;;;;-1:-1:-1;8655:10:17;;8675:168;8696:2;8692:1;:6;8675:168;;;8725:12;8738:1;8725:15;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;8725:15:17;;-1:-1:-1;8772:12:17;8785:6;8790:1;8785:2;:6;:::i;:::-;8772:20;;;;;;;;:::i;:::-;;;;;;;;;8754:12;8767:1;8754:15;;;;;;;;:::i;:::-;;;;:38;-1:-1:-1;;;;;8754:38:17;;;;;;;;-1:-1:-1;8829:3:17;8806:12;8819:6;8824:1;8819:2;:6;:::i;:::-;8806:20;;;;;;;;:::i;:::-;;;;:26;-1:-1:-1;;;;;8806:26:17;;;;;;;;-1:-1:-1;8700:3:17;;;;:::i;:::-;;;;8675:168;;;-1:-1:-1;;8934:2:17;8916:21;8910:28;;8479:498;-1:-1:-1;;;8479:498:17:o;11331:914::-;11420:6;11428;11469:12;11454:5;:12;:27;11446:80;;;;-1:-1:-1;;;11446:80:17;;11422:2:32;11446:80:17;;;11404:21:32;11461:2;11441:18;;;11434:30;11500:34;11480:18;;;11473:62;-1:-1:-1;;;11551:18:32;;;11544:38;11599:19;;11446:80:17;11220:404:32;11446:80:17;11536:13;11558:5;11564:12;11558:19;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;11603:1:17;11592:12;;;11588:146;;11628:1;11631;11620:13;;;;;;;11588:146;428:3;11654:34;;;;11650:84;;11704:19;;;-1:-1:-1;11721:1:17;;-1:-1:-1;11704:19:17;;11650:84;11752:21;11782:33;428:3;11782:7;:33;:::i;:::-;11776:40;;:1;:40;:::i;:::-;11752:64;-1:-1:-1;494:1:17;11834:51;;;11826:95;;;;-1:-1:-1;;;11826:95:17;;13214:2:32;11826:95:17;;;13196:21:32;13253:2;13233:18;;;13226:30;13292:33;13272:18;;;13265:61;13343:18;;11826:95:17;13012:355:32;11826:95:17;12046:13;12082:91;12112:16;:12;12127:1;12112:16;:::i;:::-;12130:31;12145:16;12130:12;:31;:::i;:::-;:35;;12164:1;12130:35;:::i;:::-;12167:5;12082:29;:91::i;:::-;12046:137;-1:-1:-1;12046:137:17;12209:28;12216:16;12236:1;12209:28;:::i;:::-;12193:45;;;;;;;11331:914;;;;;;:::o;2736:802::-;2819:18;;:::i;:::-;2877:24;;;;;;;;2849:25;2877:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2933:76;2963:8;2973:28;592:1;2963:8;2973:28;:::i;:::-;3003:5;2933:29;:76::i;:::-;-1:-1:-1;;;;;2911:99:17;;;3020:29;592:1;3020:29;;:::i;:::-;;;3061:19;3082:23;3109:36;3129:8;3139:5;3109:19;:36::i;:::-;3060:85;;-1:-1:-1;3060:85:17;-1:-1:-1;3155:28:17;;;;;;:::i;:::-;;;3194:21;3228:12;-1:-1:-1;;;;;3218:23:17;-1:-1:-1;;;;;3218:23:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3218:23:17;;3194:47;;3256:8;3251:100;3274:12;-1:-1:-1;;;;;3270:16:17;:1;-1:-1:-1;;;;;3270:16:17;;3251:100;;;3321:5;3327:12;-1:-1:-1;;;;;3327:12:17;;:8;:12;:::i;:::-;3321:19;;;;;;;;:::i;:::-;;;;;;;;;3307:8;3316:1;-1:-1:-1;;;;;3307:11:17;;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;3307:33:17;;;;;;;;-1:-1:-1;3288:3:17;;;;:::i;:::-;;;;3251:100;;;-1:-1:-1;3360:15:17;;;:26;;;-1:-1:-1;;;;;3396:32:17;;:17;;;:32;3457:51;;;:32;3416:12;592:1;3457:32;:::i;:::-;:51;;;;:::i;:::-;-1:-1:-1;;;;;3438:70:17;:16;;;:70;-1:-1:-1;3438:16:17;;2736:802;-1:-1:-1;;;;;2736:802:17:o;9498:355::-;9578:6;9617:10;:6;9626:1;9617:10;:::i;:::-;9604:2;:9;:23;;9596:56;;;;-1:-1:-1;;;9596:56:17;;13747:2:32;9596:56:17;;;13729:21:32;13786:2;13766:18;;;13759:30;-1:-1:-1;;;13805:18:32;;;13798:50;13865:18;;9596:56:17;13545:344:32;9596:56:17;9843:2;9823;9826:10;:6;9835:1;9826:10;:::i;:::-;9823:14;;;;;;;;:::i;:::-;;;;;;;9810:35;;9795:2;9775;9778:10;:6;9787:1;9778:10;:::i;:::-;9775:14;;;;;;;;:::i;:::-;;;;;;;9762:35;;9748:1;9728:2;9731:10;:6;9740:1;9731:10;:::i;:::-;9728:14;;;;;;;;:::i;:::-;;;;;9691:10;;9728:14;;;;;9715:34;;;;9691:2;;9694:6;;9691:10;;;;;;:::i;:::-;;;;;;;9678:72;:120;:168;;-1:-1:-1;9498:355:17;;;;:::o;12251:512::-;12400:4;12453:5;:12;12437:13;:28;:58;;;;;12483:5;:12;12469:11;:26;12437:58;12416:138;;;;-1:-1:-1;;;12416:138:17;;14096:2:32;12416:138:17;;;14078:21:32;;;14115:18;;;14108:30;14174:34;14154:18;;;14147:62;14226:18;;12416:138:17;13894:356:32;12416:138:17;12564:11;12603:13;12589:145;12622:11;12618:1;:15;12589:145;;;12701:19;12706:13;12701:1;:19;:::i;:::-;12696:25;;:1;:25;:::i;:::-;12690:32;;:1;:32;:::i;:::-;12670:5;12676:1;12670:8;;;;;;;;:::i;:::-;;;;;12664:59;;;12670:8;;12664:59;:::i;:::-;12654:69;;-1:-1:-1;;;;;12654:69:17;;;:::i;:::-;;-1:-1:-1;12635:3:17;;;;:::i;:::-;;;;12589:145;;;-1:-1:-1;12750:6:17;12251:512;-1:-1:-1;;;;12251:512:17:o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:347:32:-;65:8;75:6;129:3;122:4;114:6;110:17;106:27;96:55;;147:1;144;137:12;96:55;-1:-1:-1;170:20:32;;-1:-1:-1;;;;;202:30:32;;199:50;;;245:1;242;235:12;199:50;282:4;274:6;270:17;258:29;;334:3;327:4;318:6;310;306:19;302:30;299:39;296:59;;;351:1;348;341:12;366:409;436:6;444;497:2;485:9;476:7;472:23;468:32;465:52;;;513:1;510;503:12;465:52;540:23;;-1:-1:-1;;;;;575:30:32;;572:50;;;618:1;615;608:12;572:50;657:58;707:7;698:6;687:9;683:22;657:58;:::i;:::-;734:8;;631:84;;-1:-1:-1;366:409:32;-1:-1:-1;;;;366:409:32:o;780:250::-;865:1;875:113;889:6;886:1;883:13;875:113;;;965:11;;;959:18;946:11;;;939:39;911:2;904:10;875:113;;;-1:-1:-1;;1022:1:32;1004:16;;997:27;780:250::o;1035:270::-;1076:3;1114:5;1108:12;1141:6;1136:3;1129:19;1157:76;1226:6;1219:4;1214:3;1210:14;1203:4;1196:5;1192:16;1157:76;:::i;:::-;1287:2;1266:15;-1:-1:-1;;1262:29:32;1253:39;;;;1294:4;1249:50;;1035:270;-1:-1:-1;;1035:270:32:o;1310:1266::-;1518:4;1547:2;1587;1576:9;1572:18;1617:2;1606:9;1599:21;1640:6;1675;1669:13;1706:6;1698;1691:22;1732:2;1722:12;;1765:2;1754:9;1750:18;1743:25;;1827:2;1817:6;1814:1;1810:14;1799:9;1795:30;1791:39;1865:2;1857:6;1853:15;1886:1;1896:651;1910:6;1907:1;1904:13;1896:651;;;1975:22;;;-1:-1:-1;;1971:36:32;1959:49;;2031:13;;2103:9;;-1:-1:-1;;;;;2099:34:32;2084:50;;2173:11;;;2167:18;2067:4;2205:15;;;2198:27;;;2067:4;2252:47;2283:15;;;2167:18;2252:47;:::i;:::-;2342:11;;;2336:18;2319:15;;;2312:43;2378:4;2425:11;;;2419:18;2402:15;;;;2395:43;;;;-1:-1:-1;;2525:12:32;;;;2490:15;;;;1932:1;1925:9;1896:651;;;-1:-1:-1;2564:6:32;;1310:1266;-1:-1:-1;;;;;;;;1310:1266:32:o;2581:160::-;2646:20;;2702:13;;2695:21;2685:32;;2675:60;;2731:1;2728;2721:12;2675:60;2581:160;;;:::o;2746:477::-;2822:6;2830;2838;2891:2;2879:9;2870:7;2866:23;2862:32;2859:52;;;2907:1;2904;2897:12;2859:52;2934:23;;-1:-1:-1;;;;;2969:30:32;;2966:50;;;3012:1;3009;3002:12;2966:50;3051:58;3101:7;3092:6;3081:9;3077:22;3051:58;:::i;:::-;3128:8;;-1:-1:-1;3025:84:32;-1:-1:-1;3182:35:32;;-1:-1:-1;3213:2:32;3198:18;;3182:35;:::i;:::-;3172:45;;2746:477;;;;;:::o;3228:225::-;3383:2;3372:9;3365:21;3346:4;3403:44;3443:2;3432:9;3428:18;3420:6;3403:44;:::i;3458:785::-;3554:6;3562;3570;3578;3586;3639:2;3627:9;3618:7;3614:23;3610:32;3607:52;;;3655:1;3652;3645:12;3607:52;3682:23;;-1:-1:-1;;;;;3754:14:32;;;3751:34;;;3781:1;3778;3771:12;3751:34;3820:58;3870:7;3861:6;3850:9;3846:22;3820:58;:::i;:::-;3897:8;;-1:-1:-1;3794:84:32;-1:-1:-1;3985:2:32;3970:18;;3957:32;;-1:-1:-1;4001:16:32;;;3998:36;;;4030:1;4027;4020:12;3998:36;;4069:60;4121:7;4110:8;4099:9;4095:24;4069:60;:::i;:::-;4148:8;;-1:-1:-1;4043:86:32;-1:-1:-1;4202:35:32;;-1:-1:-1;4233:2:32;4218:18;;4202:35;:::i;:::-;4192:45;;3458:785;;;;;;;;:::o;4448:127::-;4509:10;4504:3;4500:20;4497:1;4490:31;4540:4;4537:1;4530:15;4564:4;4561:1;4554:15;4580:921;4648:6;4701:2;4689:9;4680:7;4676:23;4672:32;4669:52;;;4717:1;4714;4707:12;4669:52;4744:23;;-1:-1:-1;;;;;4816:14:32;;;4813:34;;;4843:1;4840;4833:12;4813:34;4881:6;4870:9;4866:22;4856:32;;4926:7;4919:4;4915:2;4911:13;4907:27;4897:55;;4948:1;4945;4938:12;4897:55;4984:2;4971:16;5006:2;5002;4999:10;4996:36;;;5012:18;;:::i;:::-;5087:2;5081:9;5055:2;5141:13;;-1:-1:-1;;5137:22:32;;;5161:2;5133:31;5129:40;5117:53;;;5185:18;;;5205:22;;;5182:46;5179:72;;;5231:18;;:::i;:::-;5271:10;5267:2;5260:22;5306:2;5298:6;5291:18;5346:7;5341:2;5336;5332;5328:11;5324:20;5321:33;5318:53;;;5367:1;5364;5357:12;5318:53;5423:2;5418;5414;5410:11;5405:2;5397:6;5393:15;5380:46;5468:1;5446:15;;;5463:2;5442:24;5435:35;;;;-1:-1:-1;5450:6:32;4580:921;-1:-1:-1;;;;;4580:921:32:o;5886:127::-;5947:10;5942:3;5938:20;5935:1;5928:31;5978:4;5975:1;5968:15;6002:4;5999:1;5992:15;6018:127;6079:10;6074:3;6070:20;6067:1;6060:31;6110:4;6107:1;6100:15;6134:4;6131:1;6124:15;6150:125;6215:9;;;6236:10;;;6233:36;;;6249:18;;:::i;6280:180::-;-1:-1:-1;;;;;6385:10:32;;;6397;;;6381:27;;6420:11;;;6417:37;;;6434:18;;:::i;:::-;6417:37;6280:180;;;;:::o;6465:209::-;6503:3;-1:-1:-1;;;;;6573:14:32;;;-1:-1:-1;;;;;;6599:15:32;;6596:41;;6617:18;;:::i;:::-;6666:1;6653:15;;6465:209;-1:-1:-1;;;6465:209:32:o;6679:135::-;6718:3;6739:17;;;6736:43;;6759:18;;:::i;:::-;-1:-1:-1;6806:1:32;6795:13;;6679:135::o;6819:400::-;7021:2;7003:21;;;7060:2;7040:18;;;7033:30;7099:34;7094:2;7079:18;;7072:62;-1:-1:-1;;;7165:2:32;7150:18;;7143:34;7209:3;7194:19;;6819:400::o;7224:148::-;7312:4;7291:12;;;7305;;;7287:31;;7330:13;;7327:39;;;7346:18;;:::i;7377:151::-;7467:4;7460:12;;;7446;;;7442:31;;7485:14;;7482:40;;;7502:18;;:::i;7533:175::-;7570:3;7614:4;7607:5;7603:16;7643:4;7634:7;7631:17;7628:43;;7651:18;;:::i;:::-;7700:1;7687:15;;7533:175;-1:-1:-1;;7533:175:32:o;8396:331::-;8501:9;8512;8554:8;8542:10;8539:24;8536:44;;;8576:1;8573;8566:12;8536:44;8605:6;8595:8;8592:20;8589:40;;;8625:1;8622;8615:12;8589:40;-1:-1:-1;;8651:23:32;;;8696:25;;;;;-1:-1:-1;8396:331:32:o;8732:271::-;8915:6;8907;8902:3;8889:33;8871:3;8941:16;;8966:13;;;8941:16;8732:271;-1:-1:-1;8732:271:32:o;9358:184::-;9428:6;9481:2;9469:9;9460:7;9456:23;9452:32;9449:52;;;9497:1;9494;9487:12;9449:52;-1:-1:-1;9520:16:32;;9358:184;-1:-1:-1;9358:184:32:o;9734:287::-;9863:3;9901:6;9895:13;9917:66;9976:6;9971:3;9964:4;9956:6;9952:17;9917:66;:::i;:::-;9999:16;;;;;9734:287;-1:-1:-1;;9734:287:32:o;10325:405::-;10480:3;10518:6;10512:13;10534:66;10593:6;10588:3;10581:4;10573:6;10569:17;10534:66;:::i;:::-;-1:-1:-1;;;;;;10661:33:32;;;;10622:16;;;;10647:48;;;10722:1;10711:13;;10325:405;-1:-1:-1;;10325:405:32:o;11087:128::-;11154:9;;;11175:11;;;11172:37;;;11189:18;;:::i;11629:422::-;11718:1;11761:5;11718:1;11775:270;11796:7;11786:8;11783:21;11775:270;;;11855:4;11851:1;11847:6;11843:17;11837:4;11834:27;11831:53;;;11864:18;;:::i;:::-;11914:7;11904:8;11900:22;11897:55;;;11934:16;;;;11897:55;12013:22;;;;11973:15;;;;11775:270;;;11779:3;11629:422;;;;;:::o;12056:806::-;12105:5;12135:8;12125:80;;-1:-1:-1;12176:1:32;12190:5;;12125:80;12224:4;12214:76;;-1:-1:-1;12261:1:32;12275:5;;12214:76;12306:4;12324:1;12319:59;;;;12392:1;12387:130;;;;12299:218;;12319:59;12349:1;12340:10;;12363:5;;;12387:130;12424:3;12414:8;12411:17;12408:43;;;12431:18;;:::i;:::-;-1:-1:-1;;12487:1:32;12473:16;;12502:5;;12299:218;;12601:2;12591:8;12588:16;12582:3;12576:4;12573:13;12569:36;12563:2;12553:8;12550:16;12545:2;12539:4;12536:12;12532:35;12529:77;12526:159;;;-1:-1:-1;12638:19:32;;;12670:5;;12526:159;12717:34;12742:8;12736:4;12717:34;:::i;:::-;12787:6;12783:1;12779:6;12775:19;12766:7;12763:32;12760:58;;;12798:18;;:::i;:::-;12836:20;;12056:806;-1:-1:-1;;;12056:806:32:o;12867:140::-;12925:5;12954:47;12995:4;12985:8;12981:19;12975:4;12954:47;:::i;13372:168::-;13439:6;13465:10;;;13477;;;13461:27;;13500:11;;;13497:37;;;13514:18;;:::i;14255:168::-;14328:9;;;14359;;14376:15;;;14370:22;;14356:37;14346:71;;14397:18;;:::i;14428:131::-;14488:5;14517:36;14544:8;14538:4;14517:36;:::i;14564:257::-;-1:-1:-1;;;;;14685:10:32;;;14697;;;14681:27;14728:20;;;;14635:18;14767:24;;;14757:58;;14795:18;;:::i;:::-;14757:58;;14564:257;;;;:::o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nimport \"./OpCodes.sol\";\n\n/**\n * @title BtcUtils\n * @notice This library contains functionality to make easier to work with Bitcoin transactions in Solidity.\n * @notice This library is based in this document:\n * https://developer.bitcoin.org/reference/transactions.html#raw-transaction-format\n */\nlibrary BtcUtils {\n uint8 private constant MAX_COMPACT_SIZE_LENGTH = 252;\n uint8 private constant MAX_BYTES_USED_FOR_COMPACT_SIZE = 8;\n\n uint8 private constant OUTPOINT_SIZE = 36;\n uint8 private constant OUTPUT_VALUE_SIZE = 8;\n\n uint8 private constant PUBKEY_HASH_SIZE = 20;\n uint8 private constant PUBKEY_HASH_START = 3;\n bytes1 private constant PUBKEY_HASH_MAINNET_BYTE = 0x00;\n bytes1 private constant PUBKEY_HASH_TESTNET_BYTE = 0x6f;\n\n uint8 private constant SCRIPT_HASH_SIZE = 20;\n uint8 private constant SCRIPT_HASH_START = 2;\n bytes1 private constant SCRIPT_HASH_MAINNET_BYTE = 0x05;\n bytes1 private constant SCRIPT_HASH_TESTNET_BYTE = 0xc4;\n\n\n\n /**\n * @notice This struct contains the information of a tx output separated by fields\n * @notice Its just to have a structured representation of the output\n **/\n struct TxRawOutput {\n uint64 value;\n bytes pkScript;\n uint256 scriptSize;\n uint256 totalSize;\n }\n\n /// @notice Parse a raw transaction to get an array of its outputs in a structured representation\n /// @param rawTx the raw transaction\n /// @return An array of `TxRawOutput` with the outputs of the transaction\n function getOutputs(bytes calldata rawTx) public pure returns (TxRawOutput[] memory) {\n uint currentPosition = 4;\n\n if (rawTx[4] == 0x00 && rawTx[5] == 0x01) { // if its segwit, skip marker and flag\n currentPosition = 6;\n }\n \n (uint64 inputCount, uint16 inputCountSize) = parseCompactSizeInt(currentPosition, rawTx);\n currentPosition += inputCountSize;\n\n uint64 scriptLarge;\n uint16 scriptLargeSize;\n for (uint64 i = 0; i < inputCount; i++) {\n currentPosition += OUTPOINT_SIZE;\n (scriptLarge, scriptLargeSize) = parseCompactSizeInt(currentPosition, rawTx);\n currentPosition += scriptLarge + scriptLargeSize + 4;\n }\n\n (uint64 outputCount, uint16 outputCountSize) = parseCompactSizeInt(currentPosition, rawTx);\n currentPosition += outputCountSize;\n\n TxRawOutput[] memory result = new TxRawOutput[](outputCount);\n for (uint i = 0; i < outputCount; i++) {\n result[i] = extractRawOutput(currentPosition, rawTx);\n currentPosition += result[i].totalSize;\n }\n return result;\n }\n\n function extractRawOutput(uint position, bytes memory rawTx) private pure returns (TxRawOutput memory) {\n TxRawOutput memory result = TxRawOutput(0, \"\", 0, 0);\n result.value = uint64(calculateLittleEndianFragment(position, position + OUTPUT_VALUE_SIZE, rawTx));\n position += OUTPUT_VALUE_SIZE;\n\n (uint64 scriptLength, uint16 scriptLengthSize) = parseCompactSizeInt(position, rawTx);\n position += scriptLengthSize;\n\n bytes memory pkScript = new bytes(scriptLength);\n for (uint64 i = 0; i < scriptLength; i++) {\n pkScript[i] = rawTx[position + i];\n }\n result.pkScript = pkScript;\n result.scriptSize = scriptLength;\n result.totalSize = OUTPUT_VALUE_SIZE + scriptLength + scriptLengthSize;\n return result;\n }\n\n /// @notice Parse a raw output script whose type is not known by the consumer. The function will\n /// return the corresponding address if the type of the script is supported or an error if not.\n /// For the addresses that are encoded with base58check the checksum bytes are not included in\n /// the resulting byte array\n /// @param outputScript the fragment of the raw transaction containing the raw output script\n /// @param mainnet if the address to generate is from mainnet or testnet\n /// @return The address bytes regarless of the output script type\n function outputScriptToAddress(bytes calldata outputScript, bool mainnet) public pure returns (bytes memory) {\n if (isP2PKHOutput(outputScript)) {\n return parsePayToPubKeyHash(outputScript, mainnet);\n }\n if (isP2SHOutput(outputScript)) {\n return parsePayToScriptHash(outputScript, mainnet);\n }\n // TODO add here P2WPKH, P2WSH and P2TR\n revert(\"Unsupported script type\");\n }\n\n /// @notice Check if a raw output script is a pay-to-public-key-hash output\n /// @param pkScript the fragment of the raw transaction containing the raw output script\n /// @return Whether the script has a pay-to-public-key-hash output structure or not\n function isP2PKHOutput(bytes memory pkScript) public pure returns (bool) {\n return pkScript.length == 25 &&\n pkScript[0] == OpCodes.OP_DUP &&\n pkScript[1] == OpCodes.OP_HASH160 &&\n uint8(pkScript[2]) == PUBKEY_HASH_SIZE &&\n pkScript[23] == OpCodes.OP_EQUALVERIFY &&\n pkScript[24] == OpCodes.OP_CHECKSIG;\n }\n\n /// @notice Check if a raw output script is a pay-to-script-hash output\n /// @param pkScript the fragment of the raw transaction containing the raw output script\n /// @return Whether the script has a pay-to-script-hash output structure or not\n function isP2SHOutput(bytes memory pkScript) public pure returns (bool) {\n return pkScript.length == 23 &&\n pkScript[0] == OpCodes.OP_HASH160 &&\n uint8(pkScript[1]) == SCRIPT_HASH_SIZE &&\n pkScript[22] == OpCodes.OP_EQUAL;\n }\n\n /// @notice Parse a raw pay-to-public-key-hash output script to get the corresponding address,\n /// the resulting byte array doesn't include the checksum bytes of the base58check encoding at\n /// the end\n /// @param outputScript the fragment of the raw transaction containing the raw output script\n /// @param mainnet if the address to generate is from mainnet or testnet \n /// @return The address generated using the receiver's public key hash\n function parsePayToPubKeyHash(bytes calldata outputScript, bool mainnet) public pure returns (bytes memory) {\n require(isP2PKHOutput(outputScript), \"Script hasn't the required structure\");\n\n bytes memory destinationAddress = new bytes(PUBKEY_HASH_SIZE + 1);\n for(uint8 i = PUBKEY_HASH_START; i < PUBKEY_HASH_SIZE + PUBKEY_HASH_START; i++) {\n destinationAddress[i - PUBKEY_HASH_START + 1] = outputScript[i];\n }\n\n destinationAddress[0] = mainnet? PUBKEY_HASH_MAINNET_BYTE : PUBKEY_HASH_TESTNET_BYTE;\n return destinationAddress;\n }\n\n /// @notice Parse a raw pay-to-script-hash output script to get the corresponding address,\n /// the resulting byte array doesn't include the checksum bytes of the base58check encoding at\n /// the end\n /// @param outputScript the fragment of the raw transaction containing the raw output script\n /// @param mainnet if the address to generate is from mainnet or testnet\n /// @return The address generated using the script hash\n function parsePayToScriptHash(bytes calldata outputScript, bool mainnet) public pure returns (bytes memory) {\n require(isP2SHOutput(outputScript), \"Script hasn't the required structure\");\n\n bytes memory destinationAddress = new bytes(SCRIPT_HASH_SIZE + 1);\n for(uint8 i = SCRIPT_HASH_START; i < SCRIPT_HASH_SIZE + SCRIPT_HASH_START; i++) {\n destinationAddress[i - SCRIPT_HASH_START + 1] = outputScript[i];\n }\n\n destinationAddress[0] = mainnet? SCRIPT_HASH_MAINNET_BYTE : SCRIPT_HASH_TESTNET_BYTE;\n return destinationAddress;\n }\n\n /// @notice Parse a raw null-data output script to get its content\n /// @param outputScript the fragment of the raw transaction containing the raw output script \n /// @return The content embedded inside the script\n function parseNullDataScript(bytes calldata outputScript) public pure returns (bytes memory) {\n require(outputScript.length > 1,\"Invalid size\");\n require(outputScript[0] == OpCodes.OP_RETURN, \"Not OP_RETURN\");\n return outputScript[1:];\n }\n\n /// @notice Hash a bitcoin raw transaction to get its id (reversed double sha256)\n /// @param btcTx the transaction to hash\n /// @return The transaction id \n function hashBtcTx(bytes calldata btcTx) public pure returns (bytes32) {\n bytes memory doubleSha256 = abi.encodePacked(sha256(abi.encodePacked(sha256(btcTx))));\n bytes1 aux;\n for (uint i = 0; i < 16; i++) {\n aux = doubleSha256[i];\n doubleSha256[i] = doubleSha256[31 - i];\n doubleSha256[31 - i] = aux;\n }\n\n bytes32 result;\n assembly {\n result := mload(add(doubleSha256, 32))\n }\n return result;\n }\n\n /// @dev Gets the timestamp of a Bitcoin block header\n /// @param header The block header\n /// @return The timestamp of the block header\n function getBtcBlockTimestamp(bytes memory header) public pure returns (uint256) {\n // bitcoin header is 80 bytes and timestamp is 4 bytes from byte 68 to byte 71 (both inclusive)\n require(header.length == 80, \"Invalid header length\");\n\n return sliceUint32FromLSB(header, 68);\n }\n\n // bytes must have at least 28 bytes before the uint32\n function sliceUint32FromLSB(bytes memory bs, uint offset) private pure returns (uint32) {\n require(bs.length >= offset + 4, \"Slicing out of range\");\n\n return\n uint32(uint8(bs[offset])) |\n (uint32(uint8(bs[offset + 1])) << 8) |\n (uint32(uint8(bs[offset + 2])) << 16) |\n (uint32(uint8(bs[offset + 3])) << 24);\n }\n\n /// @notice Check if a pay-to-script-hash address belogs to a specific script, expects the address\n /// bytes to include the 4 checksum bytes at the end\n /// @param p2sh the pay-to-script-hash address\n /// @param script the script to check\n /// @param mainnet flag to specify if its a mainnet address\n /// @return Whether the address belongs to the script or not\n function validateP2SHAdress(bytes calldata p2sh, bytes calldata script, bool mainnet) public pure returns (bool) {\n return p2sh.length == 25 && keccak256(p2sh) == keccak256(getP2SHAddressFromScript(script, mainnet));\n }\n\n /// @notice Generate a pay-to-script-hash address from a script, the resulting byte array already contains\n /// the 4 checksum bytes at the end of it\n /// @param script the script to generate the address from\n /// @param mainnet flag to specify if the output should be a mainnet address\n /// @return The address generate from the script\n function getP2SHAddressFromScript(bytes calldata script, bool mainnet) public pure returns (bytes memory) {\n bytes20 scriptHash = ripemd160(abi.encodePacked(sha256(script)));\n bytes1 versionByte = mainnet ? SCRIPT_HASH_MAINNET_BYTE : SCRIPT_HASH_TESTNET_BYTE;\n bytes memory versionAndHash = bytes.concat(versionByte, scriptHash);\n bytes4 checksum = bytes4(sha256(abi.encodePacked(sha256(versionAndHash))));\n return bytes.concat(versionAndHash, checksum);\n }\n\n function parseCompactSizeInt(uint sizePosition, bytes memory array) private pure returns(uint64, uint16) {\n require(array.length > sizePosition, \"Size position can't be bigger than array\");\n uint8 maxSize = uint8(array[sizePosition]);\n if (maxSize == 0) {\n return (0, 1);\n } else if (maxSize <= MAX_COMPACT_SIZE_LENGTH) {\n return (maxSize, 1);\n }\n \n uint compactSizeBytes = 2 ** (maxSize - MAX_COMPACT_SIZE_LENGTH);\n require(compactSizeBytes <= MAX_BYTES_USED_FOR_COMPACT_SIZE, \"unsupported compact size length\");\n\n // the adition of 1 is because the first byte is the indicator of the size and its not part of the number\n uint64 result = uint64(\n calculateLittleEndianFragment(sizePosition + 1, sizePosition + compactSizeBytes + 1, array)\n );\n return (result, uint16(compactSizeBytes) + 1);\n }\n\n function calculateLittleEndianFragment(\n uint fragmentStart,\n uint fragmentEnd,\n bytes memory array\n ) private pure returns (uint) {\n require(\n fragmentStart < array.length && fragmentEnd < array.length, \n \"Range can't be bigger than array\"\n );\n uint result = 0;\n for (uint i = fragmentStart; i < fragmentEnd; i++) {\n result += uint8(array[i]) * uint64(2 ** (8 * (i - (fragmentStart))));\n }\n return result;\n }\n}", - "sourcePath": "@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol", - "ast": { - "absolutePath": "@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol", - "exportedSymbols": { - "BtcUtils": [ - 3228 - ], - "OpCodes": [ - 3249 - ] - }, - "id": 3229, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2245, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:17" - }, - { - "absolutePath": "@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol", - "file": "./OpCodes.sol", - "id": 2246, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 3229, - "sourceUnit": 3250, - "src": "58:23:17", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "BtcUtils", - "contractDependencies": [], - "contractKind": "library", - "documentation": { - "id": 2247, - "nodeType": "StructuredDocumentation", - "src": "83:272:17", - "text": " @title BtcUtils\n @notice This library contains functionality to make easier to work with Bitcoin transactions in Solidity.\n @notice This library is based in this document:\n https://developer.bitcoin.org/reference/transactions.html#raw-transaction-format" - }, - "fullyImplemented": true, - "id": 3228, - "linearizedBaseContracts": [ - 3228 - ], - "name": "BtcUtils", - "nameLocation": "364:8:17", - "nodeType": "ContractDefinition", - "nodes": [ + "src": "14324:344:32" + }, { - "constant": true, - "id": 2250, - "mutability": "constant", - "name": "MAX_COMPACT_SIZE_LENGTH", - "nameLocation": "402:23:17", - "nodeType": "VariableDeclaration", - "scope": 3228, - "src": "379:52:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "body": { + "nodeType": "YulBlock", + "src": "14847:182:32", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "14864:9:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14875:2:32", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14857:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "14857:21:32" + }, + "nodeType": "YulExpressionStatement", + "src": "14857:21:32" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "14898:9:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14909:2:32", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14894:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "14894:18:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14914:2:32", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14887:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "14887:30:32" + }, + "nodeType": "YulExpressionStatement", + "src": "14887:30:32" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "14937:9:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14948:2:32", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14933:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "14933:18:32" + }, + { + "hexValue": "52616e67652063616e277420626520626967676572207468616e206172726179", + "kind": "string", + "nodeType": "YulLiteral", + "src": "14953:34:32", + "type": "", + "value": "Range can't be bigger than array" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14926:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "14926:62:32" + }, + "nodeType": "YulExpressionStatement", + "src": "14926:62:32" + }, + { + "nodeType": "YulAssignment", + "src": "14997:26:32", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15009:9:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15020:2:32", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15005:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15005:18:32" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "14997:4:32" + } + ] + } + ] }, - "typeName": { - "id": 2248, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "379:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "name": "abi_encode_tuple_t_stringliteral_b880bf2732d5dc41106d7c9b4d33a7d7359e73ab841c93dd915612cdef84660a__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "14824:9:32", + "type": "" } - }, - "value": { - "hexValue": "323532", - "id": 2249, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "428:3:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_252_by_1", - "typeString": "int_const 252" - }, - "value": "252" - }, - "visibility": "private" + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "14838:4:32", + "type": "" + } + ], + "src": "14673:356:32" }, { - "constant": true, - "id": 2253, - "mutability": "constant", - "name": "MAX_BYTES_USED_FOR_COMPACT_SIZE", - "nameLocation": "460:31:17", - "nodeType": "VariableDeclaration", - "scope": 3228, - "src": "437:58:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 2251, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "437:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": { - "hexValue": "38", - "id": 2252, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "494:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_8_by_1", - "typeString": "int_const 8" - }, - "value": "8" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2256, - "mutability": "constant", - "name": "OUTPOINT_SIZE", - "nameLocation": "525:13:17", - "nodeType": "VariableDeclaration", - "scope": 3228, - "src": "502:41:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 2254, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "502:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": { - "hexValue": "3336", - "id": 2255, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "541:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_36_by_1", - "typeString": "int_const 36" - }, - "value": "36" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2259, - "mutability": "constant", - "name": "OUTPUT_VALUE_SIZE", - "nameLocation": "572:17:17", - "nodeType": "VariableDeclaration", - "scope": 3228, - "src": "549:44:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 2257, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "549:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": { - "hexValue": "38", - "id": 2258, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "592:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_8_by_1", - "typeString": "int_const 8" - }, - "value": "8" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2262, - "mutability": "constant", - "name": "PUBKEY_HASH_SIZE", - "nameLocation": "623:16:17", - "nodeType": "VariableDeclaration", - "scope": 3228, - "src": "600:44:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 2260, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "600:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } + "body": { + "nodeType": "YulBlock", + "src": "15104:61:32", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "15114:45:32", + "value": { + "arguments": [ + { + "name": "base", + "nodeType": "YulIdentifier", + "src": "15144:4:32" + }, + { + "name": "exponent", + "nodeType": "YulIdentifier", + "src": "15150:8:32" + } + ], + "functionName": { + "name": "checked_exp_unsigned", + "nodeType": "YulIdentifier", + "src": "15123:20:32" + }, + "nodeType": "YulFunctionCall", + "src": "15123:36:32" + }, + "variableNames": [ + { + "name": "power", + "nodeType": "YulIdentifier", + "src": "15114:5:32" + } + ] + } + ] }, - "value": { - "hexValue": "3230", - "id": 2261, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "642:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_20_by_1", - "typeString": "int_const 20" + "name": "checked_exp_t_uint256_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "base", + "nodeType": "YulTypedName", + "src": "15075:4:32", + "type": "" }, - "value": "20" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2265, - "mutability": "constant", - "name": "PUBKEY_HASH_START", - "nameLocation": "673:17:17", - "nodeType": "VariableDeclaration", - "scope": 3228, - "src": "650:44:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 2263, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "650:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + { + "name": "exponent", + "nodeType": "YulTypedName", + "src": "15081:8:32", + "type": "" } - }, - "value": { - "hexValue": "33", - "id": 2264, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "693:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_3_by_1", - "typeString": "int_const 3" - }, - "value": "3" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2268, - "mutability": "constant", - "name": "PUBKEY_HASH_MAINNET_BYTE", - "nameLocation": "724:24:17", - "nodeType": "VariableDeclaration", - "scope": 3228, - "src": "700:55:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 2266, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "700:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + ], + "returnVariables": [ + { + "name": "power", + "nodeType": "YulTypedName", + "src": "15094:5:32", + "type": "" } - }, - "value": { - "hexValue": "30783030", - "id": 2267, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "751:4:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0x00" - }, - "visibility": "private" + ], + "src": "15034:131:32" }, { - "constant": true, - "id": 2271, - "mutability": "constant", - "name": "PUBKEY_HASH_TESTNET_BYTE", - "nameLocation": "785:24:17", - "nodeType": "VariableDeclaration", - "scope": 3228, - "src": "761:55:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 2269, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "761:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } + "body": { + "nodeType": "YulBlock", + "src": "15221:206:32", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "15231:28:32", + "value": { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15249:2:32", + "type": "", + "value": "64" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15253:1:32", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "15245:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15245:10:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15257:1:32", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "15241:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15241:18:32" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "15235:2:32", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "15268:46:32", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "15295:1:32" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "15298:2:32" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "15291:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15291:10:32" + }, + { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "15307:1:32" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "15310:2:32" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "15303:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15303:10:32" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "15287:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15287:27:32" + }, + "variables": [ + { + "name": "product_raw", + "nodeType": "YulTypedName", + "src": "15272:11:32", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "15323:31:32", + "value": { + "arguments": [ + { + "name": "product_raw", + "nodeType": "YulIdentifier", + "src": "15338:11:32" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "15351:2:32" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "15334:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15334:20:32" + }, + "variableNames": [ + { + "name": "product", + "nodeType": "YulIdentifier", + "src": "15323:7:32" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15399:22:32", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "15401:16:32" + }, + "nodeType": "YulFunctionCall", + "src": "15401:18:32" + }, + "nodeType": "YulExpressionStatement", + "src": "15401:18:32" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "product", + "nodeType": "YulIdentifier", + "src": "15376:7:32" + }, + { + "name": "product_raw", + "nodeType": "YulIdentifier", + "src": "15385:11:32" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "15373:2:32" + }, + "nodeType": "YulFunctionCall", + "src": "15373:24:32" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "15366:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "15366:32:32" + }, + "nodeType": "YulIf", + "src": "15363:58:32" + } + ] }, - "value": { - "hexValue": "30783666", - "id": 2270, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "812:4:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_111_by_1", - "typeString": "int_const 111" + "name": "checked_mul_t_uint64", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "15200:1:32", + "type": "" }, - "value": "0x6f" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2274, - "mutability": "constant", - "name": "SCRIPT_HASH_SIZE", - "nameLocation": "846:16:17", - "nodeType": "VariableDeclaration", - "scope": 3228, - "src": "823:44:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 2272, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "823:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + { + "name": "y", + "nodeType": "YulTypedName", + "src": "15203:1:32", + "type": "" } - }, - "value": { - "hexValue": "3230", - "id": 2273, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "865:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_20_by_1", - "typeString": "int_const 20" - }, - "value": "20" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2277, + ], + "returnVariables": [ + { + "name": "product", + "nodeType": "YulTypedName", + "src": "15209:7:32", + "type": "" + } + ], + "src": "15170:257:32" + } + ] + }, + "contents": "{\n { }\n function abi_decode_bytes_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, sub(shl(64, 1), 1)) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, length), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_encode_bytes(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n let tail_1 := add(headStart, _1)\n mstore(headStart, _1)\n let pos := tail_1\n let length := mload(value0)\n mstore(tail_1, length)\n let _2 := 64\n pos := add(headStart, _2)\n let tail_2 := add(add(headStart, shl(5, length)), _2)\n let srcPtr := add(value0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), not(63)))\n let _3 := mload(srcPtr)\n let _4 := 0x80\n mstore(tail_2, and(mload(_3), sub(shl(64, 1), 1)))\n let memberValue0 := mload(add(_3, _1))\n mstore(add(tail_2, _1), _4)\n let tail_3 := abi_encode_bytes(memberValue0, add(tail_2, _4))\n mstore(add(tail_2, _2), mload(add(_3, _2)))\n let _5 := 0x60\n mstore(add(tail_2, _5), mload(add(_3, _5)))\n tail_2 := tail_3\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes_calldata_ptrt_bool(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n value2 := abi_decode_bool(add(headStart, 32))\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_bytes_calldata_ptrt_bytes_calldata_ptrt_bool(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_bytes_calldata(add(headStart, offset_1), dataEnd)\n value2 := value2_1\n value3 := value3_1\n value4 := abi_decode_bool(add(headStart, 64))\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if iszero(slt(add(_2, 0x1f), dataEnd)) { revert(0, 0) }\n let _3 := calldataload(_2)\n if gt(_3, _1) { panic_error_0x41() }\n let _4 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_3, 0x1f), _4), 63), _4))\n if or(gt(newFreePtr, _1), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _3)\n if gt(add(add(_2, _3), 32), dataEnd) { revert(0, 0) }\n calldatacopy(add(memPtr, 32), add(_2, 32), _3)\n mstore(add(add(memPtr, _3), 32), 0)\n value0 := memPtr\n }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_library_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function panic_error_0x32()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function checked_add_t_uint64(x, y) -> sum\n {\n let _1 := sub(shl(64, 1), 1)\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function increment_t_uint64(value) -> ret\n {\n let _1 := sub(shl(64, 1), 1)\n let value_1 := and(value, _1)\n if eq(value_1, _1) { panic_error_0x11() }\n ret := add(value_1, 1)\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, not(0)) { panic_error_0x11() }\n ret := add(value, 1)\n }\n function abi_encode_tuple_t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 36)\n mstore(add(headStart, 64), \"Script hasn't the required struc\")\n mstore(add(headStart, 96), \"ture\")\n tail := add(headStart, 128)\n }\n function checked_sub_t_uint8(x, y) -> diff\n {\n diff := sub(and(x, 0xff), and(y, 0xff))\n if gt(diff, 0xff) { panic_error_0x11() }\n }\n function checked_add_t_uint8(x, y) -> sum\n {\n sum := add(and(x, 0xff), and(y, 0xff))\n if gt(sum, 0xff) { panic_error_0x11() }\n }\n function increment_t_uint8(value) -> ret\n {\n let value_1 := and(value, 0xff)\n if eq(value_1, 0xff) { panic_error_0x11() }\n ret := add(value_1, 1)\n }\n function abi_encode_tuple_t_stringliteral_151b9b932514cffea6d6fb8ef0dc06f3ba8d7fdd73eacee7d06d663fcfd3d8d0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 12)\n mstore(add(headStart, 64), \"Invalid size\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_91402c28d33a78ed08b610916663678b602b8439e472ae56e5b350939be81082__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 13)\n mstore(add(headStart, 64), \"Not OP_RETURN\")\n tail := add(headStart, 96)\n }\n function calldata_array_index_range_access_t_bytes_calldata_ptr(offset, length, startIndex, endIndex) -> offsetOut, lengthOut\n {\n if gt(startIndex, endIndex) { revert(0, 0) }\n if gt(endIndex, length) { revert(0, 0) }\n offsetOut := add(offset, startIndex)\n lengthOut := sub(endIndex, startIndex)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n calldatacopy(pos, value0, value1)\n let _1 := add(pos, value1)\n mstore(_1, 0)\n end := _1\n }\n function abi_encode_tuple_t_stringliteral_62784c5b4854856e20fdf3da2ed017d8d7ad91e96ee28ef17acb0683953b91b7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 21)\n mstore(add(headStart, 64), \"Invalid header length\")\n tail := add(headStart, 96)\n }\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_packed_t_bytes32__to_t_bytes32__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n mstore(pos, value0)\n end := add(pos, 32)\n }\n function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function abi_encode_tuple_packed_t_bytes1_t_bytes20__to_t_bytes1_t_bytes20__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, and(value0, shl(248, 255)))\n mstore(add(pos, 1), and(value1, not(sub(shl(96, 1), 1))))\n end := add(pos, 21)\n }\n function abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes4__to_t_bytes_memory_ptr_t_bytes4__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n let end_1 := add(pos, length)\n mstore(end_1, and(value1, shl(224, 0xffffffff)))\n end := add(end_1, 4)\n }\n function abi_encode_tuple_t_stringliteral_82bc120954d4025ad83f4cfd56c5f75d5f05a659cc4489ef281377ffa1d8ef8b__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 23)\n mstore(add(headStart, 64), \"Unsupported script type\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_33c6dd8650ffbd109c11f2a50d2c26a90aa65e9c0c8ae6a11ce0114fae017f47__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 40)\n mstore(add(headStart, 64), \"Size position can't be bigger th\")\n mstore(add(headStart, 96), \"an array\")\n tail := add(headStart, 128)\n }\n function checked_exp_helper(_base, exponent) -> power, base\n {\n let power_1 := 1\n power := power_1\n base := _base\n for { } gt(exponent, power_1) { }\n {\n if gt(base, div(not(0), base)) { panic_error_0x11() }\n if and(exponent, power_1) { power := mul(power, base) }\n base := mul(base, base)\n exponent := shr(power_1, exponent)\n }\n }\n function checked_exp_unsigned(base, exponent) -> power\n {\n if iszero(exponent)\n {\n power := 1\n leave\n }\n if iszero(base)\n {\n power := 0\n leave\n }\n switch base\n case 1 {\n power := 1\n leave\n }\n case 2 {\n if gt(exponent, 255) { panic_error_0x11() }\n power := shl(exponent, 1)\n leave\n }\n if or(and(lt(base, 11), lt(exponent, 78)), and(lt(base, 307), lt(exponent, 32)))\n {\n power := exp(base, exponent)\n leave\n }\n let power_1, base_1 := checked_exp_helper(base, exponent)\n if gt(power_1, div(not(0), base_1)) { panic_error_0x11() }\n power := mul(power_1, base_1)\n }\n function checked_exp_t_uint256_t_uint8(base, exponent) -> power\n {\n power := checked_exp_unsigned(base, and(exponent, 0xff))\n }\n function abi_encode_tuple_t_stringliteral_173d55eda06bf2b35eca6401b7d16b17b1fc97b7601de25f26189f5300bf3cb3__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 31)\n mstore(add(headStart, 64), \"unsupported compact size length\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint16(x, y) -> sum\n {\n let _1 := 0xffff\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function checked_mul_t_uint256(x, y) -> product\n {\n product := mul(x, y)\n if iszero(or(iszero(x), eq(y, div(product, x)))) { panic_error_0x11() }\n }\n function panic_error_0x12()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n function checked_div_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := div(x, y)\n }\n function mod_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := mod(x, y)\n }\n function abi_encode_tuple_t_stringliteral_0ad8ca266b3c2b0d5c0f93daeb15638ddfa510fccabc652325dc97cf893869fd__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 20)\n mstore(add(headStart, 64), \"Slicing out of range\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b880bf2732d5dc41106d7c9b4d33a7d7359e73ab841c93dd915612cdef84660a__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Range can't be bigger than array\")\n tail := add(headStart, 96)\n }\n function checked_exp_t_uint256_t_uint256(base, exponent) -> power\n {\n power := checked_exp_unsigned(base, exponent)\n }\n function checked_mul_t_uint64(x, y) -> product\n {\n let _1 := sub(shl(64, 1), 1)\n let product_raw := mul(and(x, _1), and(y, _1))\n product := and(product_raw, _1)\n if iszero(eq(product, product_raw)) { panic_error_0x11() }\n }\n}", + "id": 32, + "language": "Yul", + "name": "#utility.yul" + } + ], + "sourceMap": "356:18659:17:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;356:18659:17;;;;;;;;;;;;;;;;;", + "deployedSourceMap": "356:18659:17:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1914:1150;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9462:575;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;12962:262::-;;;;;;:::i;:::-;;:::i;8436:576::-;;;;;;:::i;:::-;;:::i;1599:88::-;1666:14;;;;;;;;;;;;-1:-1:-1;;;1666:14:17;;;;1599:88;;12223:509;;;;;;:::i;:::-;;:::i;10424:515::-;;;;;;:::i;:::-;;:::i;11326:512::-;;;;;;:::i;:::-;;:::i;15159:230::-;;;;;;:::i;:::-;;:::i;:::-;;;4653:14:32;;4646:22;4628:41;;4616:2;4601:18;15159:230:17;4480:195:32;14048:303:17;;;;;;:::i;:::-;;:::i;:::-;;;5892:25:32;;;5880:2;5865:18;14048:303:17;5738:185:32;15748:495:17;;;;;;:::i;:::-;;:::i;7144:223::-;;;;;;:::i;:::-;;:::i;6090:278::-;;;;;;:::i;:::-;;:::i;7728:238::-;;;;;;:::i;:::-;;:::i;4455:727::-;;;;;;:::i;:::-;;:::i;6643:226::-;;;;;;:::i;:::-;;:::i;5449:382::-;;;;;;:::i;:::-;;:::i;13397:498::-;;;;;;:::i;:::-;;:::i;1914:1150::-;1977:20;2032:1;2048:5;;2032:1;2048:8;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;2048:8:17;:16;;-1:-1:-1;2048:36:17;;;;;2068:5;;2074:1;2068:8;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;2068:16:17;;2080:4;2068:16;;;2048:36;2044:125;;;-1:-1:-1;2157:1:17;2044:125;2188:17;2207:21;2232:43;2252:15;2269:5;;2232:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2232:19:17;;-1:-1:-1;;;2232:43:17:i;:::-;2187:88;;-1:-1:-1;2187:88:17;-1:-1:-1;2285:33:17;;;;;;:::i;:::-;;;2329:18;2357:22;2394:8;2389:253;2412:10;-1:-1:-1;;;;;2408:14:17;:1;-1:-1:-1;;;;;2408:14:17;;2389:253;;;2443:32;683:2;2443:32;;:::i;:::-;;;2522:43;2542:15;2559:5;;2522:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2522:19:17;;-1:-1:-1;;;2522:43:17:i;:::-;2489:76;;-1:-1:-1;2489:76:17;-1:-1:-1;2598:29:17;;;;2489:76;2598:29;:::i;:::-;:33;;2630:1;2598:33;:::i;:::-;2579:52;;-1:-1:-1;;;;;2579:52:17;;;:::i;:::-;;-1:-1:-1;2424:3:17;;;;:::i;:::-;;;;2389:253;;;;2653:18;2673:22;2699:43;2719:15;2736:5;;2699:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2699:19:17;;-1:-1:-1;;;2699:43:17:i;:::-;2652:90;;-1:-1:-1;2652:90:17;-1:-1:-1;2752:34:17;;;;;;:::i;:::-;;;2797:27;2845:11;-1:-1:-1;;;;;2827:30:17;-1:-1:-1;;;;;2827:30:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;2797:60;;2872:6;2867:168;2888:11;-1:-1:-1;;;;;2884:15:17;:1;:15;2867:168;;;2932:40;2949:15;2966:5;;2932:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2932:16:17;;-1:-1:-1;;;2932:40:17:i;:::-;2920:6;2927:1;2920:9;;;;;;;;:::i;:::-;;;;;;:52;;;;3005:6;3012:1;3005:9;;;;;;;;:::i;:::-;;;;;;;:19;;;2986:38;;;;;:::i;:::-;;-1:-1:-1;2901:3:17;;;;:::i;:::-;;;;2867:168;;;-1:-1:-1;3051:6:17;-1:-1:-1;;;;;;;;1914:1150:17;;;;;:::o;9462:575::-;9556:12;9588:26;9601:12;;9588:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9588:12:17;;-1:-1:-1;;;9588:26:17:i;:::-;9580:75;;;;-1:-1:-1;;;9580:75:17;;;;;;;:::i;:::-;;;;;;;;;9666:31;9710:16;539:2;9725:1;9710:16;:::i;:::-;-1:-1:-1;;;;;9700:27:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9700:27:17;-1:-1:-1;9666:61:17;-1:-1:-1;958:1:17;9737:164;9774:32;958:1;539:2;9774:32;:::i;:::-;9770:1;:36;;;9737:164;;;9875:12;;9888:1;9875:15;;;;;;;;;:::i;:::-;;;;;;;;;9827:18;958:1;9846;:21;;;;:::i;:::-;:25;;9870:1;9846:25;:::i;:::-;9827:45;;;;;;;;;;:::i;:::-;;;;:63;-1:-1:-1;;;;;9827:63:17;;;;;;;;-1:-1:-1;9808:3:17;;;;:::i;:::-;;;;9737:164;;;;9935:7;:60;;-1:-1:-1;;;9935:60:17;;;-1:-1:-1;;;9935:60:17;9911:18;9930:1;9911:21;;;;;;;;:::i;:::-;;;;:84;-1:-1:-1;;;;;9911:84:17;;;;;;;;-1:-1:-1;10012:18:17;-1:-1:-1;9462:575:17;;;;;;:::o;12962:262::-;13041:12;13095:1;13073:23;;13065:47;;;;-1:-1:-1;;;13065:47:17;;8147:2:32;13065:47:17;;;8129:21:32;8186:2;8166:18;;;8159:30;-1:-1:-1;;;8205:18:32;;;8198:42;8257:18;;13065:47:17;7945:336:32;13065:47:17;-1:-1:-1;;;13130:12:17;;13143:1;13130:15;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;13130:36:17;;;13122:62;;;;-1:-1:-1;;;13122:62:17;;8488:2:32;13122:62:17;;;8470:21:32;8527:2;8507:18;;;8500:30;-1:-1:-1;;;8546:18:32;;;8539:43;8599:18;;13122:62:17;8286:337:32;13122:62:17;13201:16;:12;13214:1;13201:12;;:16;:::i;:::-;13194:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13194:23:17;;12962:262;-1:-1:-1;;;;;;12962:262:17:o;8436:576::-;8530:12;8562:27;8576:12;;8562:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8562:13:17;;-1:-1:-1;;;8562:27:17:i;:::-;8554:76;;;;-1:-1:-1;;;8554:76:17;;;;;;;:::i;:::-;8641:31;8685:16;539:2;8700:1;8685:16;:::i;:::-;-1:-1:-1;;;;;8675:27:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8675:27:17;-1:-1:-1;8641:61:17;-1:-1:-1;785:1:17;8712:164;8749:32;785:1;539:2;8749:32;:::i;:::-;8745:1;:36;;;8712:164;;;8850:12;;8863:1;8850:15;;;;;;;;;:::i;:::-;;;;;;;;;8802:18;785:1;8821;:21;;;;:::i;:::-;:25;;8845:1;8821:25;:::i;:::-;8802:45;;;;;;;;;;:::i;:::-;;;;:63;-1:-1:-1;;;;;8802:63:17;;;;;;;;-1:-1:-1;8783:3:17;;;;:::i;:::-;;;;8712:164;;;;8910:7;:60;;-1:-1:-1;;;8910:60:17;;;843:4;8886:18;8905:1;8886:21;;;;;;;;:::i;12223:509::-;12300:12;12332:26;12345:12;;12332:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12332:12:17;;-1:-1:-1;;;12332:26:17:i;:::-;12324:75;;;;-1:-1:-1;;;12324:75:17;;;;;;;:::i;:::-;12409:11;12427:35;635:2;12427:14;:35::i;:::-;12423:39;;:1;:39;:::i;:::-;12409:53;;12472:19;12504:6;-1:-1:-1;;;;;12494:17:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12494:17:17;;12472:39;;1276:4;12533:17;;12521:6;12528:1;12521:9;;;;;;;;:::i;:::-;;;;:29;-1:-1:-1;;;;;12521:29:17;;;;;;;;-1:-1:-1;12560:18:17;12581:29;12593:16;:12;12606:1;12593:12;;:16;:::i;:::-;12581:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12581:11:17;;-1:-1:-1;;;12581:29:17:i;:::-;12560:50;-1:-1:-1;12634:1:17;12620:83;12641:6;12637:1;:10;12620:83;;;12680:5;12686;12690:1;12686;:5;:::i;:::-;12680:12;;;;;;;;:::i;:::-;;;;;;;;;12668:6;12675:1;12668:9;;;;;;;;:::i;:::-;;;;:24;-1:-1:-1;;;;;12668:24:17;;;;;;;;-1:-1:-1;12649:3:17;;;;:::i;:::-;;;;12620:83;;;-1:-1:-1;12719:6:17;;12223:509;-1:-1:-1;;;;;12223:509:17:o;10424:515::-;10511:12;10543:28;10558:12;;10543:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10543:14:17;;-1:-1:-1;;;10543:28:17:i;:::-;10535:77;;;;-1:-1:-1;;;10535:77:17;;;;;;;:::i;:::-;10623:11;10641:28;539:2;10641:14;:28::i;:::-;10637:32;;:1;:32;:::i;:::-;10623:46;;10679:19;10711:6;-1:-1:-1;;;;;10701:17:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10701:17:17;;10679:39;;1222:4;10740:17;;10728:6;10735:1;10728:9;;;;;;;;:::i;:::-;;;;:29;-1:-1:-1;;;;;10728:29:17;;;;;;;;-1:-1:-1;10767:18:17;10788:29;10800:16;:12;10813:1;10800:12;;:16;:::i;10788:29::-;10767:50;-1:-1:-1;10841:1:17;10827:83;10848:6;10844:1;:10;10827:83;;;10887:5;10893;10897:1;10893;:5;:::i;:::-;10887:12;;;;;;;;:::i;:::-;;;;;;;;;10875:6;10882:1;10875:9;;;;;;;;:::i;:::-;;;;:24;-1:-1:-1;;;;;10875:24:17;;;;;;;;-1:-1:-1;10856:3:17;;;;:::i;:::-;;;;10827:83;;11326:512;11413:12;11445:27;11459:12;;11445:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11445:13:17;;-1:-1:-1;;;11445:27:17:i;:::-;11437:76;;;;-1:-1:-1;;;11437:76:17;;;;;;;:::i;:::-;11523:11;11541:27;583:2;11541:14;:27::i;:::-;11537:31;;:1;:31;:::i;:::-;11523:45;;11578:19;11610:6;-1:-1:-1;;;;;11600:17:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11600:17:17;;11578:39;;1222:4;11639:17;;11627:6;11634:1;11627:9;;;;;;;;:::i;:::-;;;;:29;-1:-1:-1;;;;;11627:29:17;;;;;;;;-1:-1:-1;11666:18:17;11687:29;11699:16;:12;11712:1;11699:12;;:16;:::i;11687:29::-;11666:50;-1:-1:-1;11740:1:17;11726:83;11747:6;11743:1;:10;11726:83;;;11786:5;11792;11796:1;11792;:5;:::i;:::-;11786:12;;;;;;;;:::i;:::-;;;;;;;;;11774:6;11781:1;11774:9;;;;;;;;:::i;:::-;;;;:24;-1:-1:-1;;;;;11774:24:17;;;;;;;;-1:-1:-1;11755:3:17;;;;:::i;:::-;;;;11726:83;;15159:230;15266:4;15304:2;15289:17;;:93;;;;;15340:41;15365:6;;15373:7;15340:24;:41::i;:::-;15330:52;;;;;;15320:4;;15310:15;;;;;;;:::i;:::-;;;;;;;;:72;15289:93;15282:100;15159:230;-1:-1:-1;;;;;;15159:230:17:o;14048:303::-;14120:7;14251:6;:13;14268:2;14251:19;14243:53;;;;-1:-1:-1;;;14243:53:17;;9575:2:32;14243:53:17;;;9557:21:32;9614:2;9594:18;;;9587:30;-1:-1:-1;;;9633:18:32;;;9626:51;9694:18;;14243:53:17;9373:345:32;14243:53:17;14314:30;14333:6;14341:2;14314:18;:30::i;:::-;14307:37;;;14048:303;-1:-1:-1;;14048:303:17:o;15748:495::-;15840:12;15864:18;15885:43;15912:14;15919:6;;15912:14;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15895:32;;;;;;10041:19:32;;10085:2;10076:12;;9912:182;15895:32:17;;;;-1:-1:-1;;15895:32:17;;;;;;;;;;15885:43;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15864:64;;15938:18;15959:7;:61;;-1:-1:-1;;;15959:61:17;;;-1:-1:-1;;;15959:61:17;16060:37;;-1:-1:-1;;;;;;10558:26:32;;16060:37:17;;;10546:39:32;-1:-1:-1;;;;;;10614:36:32;;10601:11;;;10594:57;15938:82:17;;-1:-1:-1;16030:27:17;;10667:12:32;;16060:37:17;;;;;;;;;;;;16030:67;;16107:15;16132:48;16156:22;16163:14;16156:22;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16139:40;;;;;;10041:19:32;;10085:2;10076:12;;9912:182;16139:40:17;;;;-1:-1:-1;;16139:40:17;;;;;;;;;;16132:48;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16107:74;;16211:14;16227:8;16198:38;;;;;;;;;:::i;:::-;;;;;;;;;;;;;16191:45;;;;;;15748:495;;;;;:::o;7144:223::-;7211:4;7253:15;583:2;7253:1;:15;:::i;:::-;7234:8;:15;:34;:77;;;;-1:-1:-1;7284:11:17;;386:4:18;;7284:8:17;;386:4:18;;7284:11:17;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;7284:11:17;:27;7234:77;:126;;;;;583:2;7333:8;7342:1;7333:11;;;;;;;;:::i;:::-;;;;;;;7327:33;7227:133;7144:223;-1:-1:-1;;7144:223:17:o;6090:278::-;6156:4;6198:16;539:2;6198:1;:16;:::i;:::-;6179:8;:15;:35;:84;;;;-1:-1:-1;6230:11:17;;-1:-1:-1;;;6245:18:17;6230:8;;6239:1;;6230:11;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;6230:11:17;:33;6179:84;:134;;;;;539:2;6285:8;6294:1;6285:11;;;;;;;;:::i;:::-;;;;;;;6279:34;6179:134;:182;;;;-1:-1:-1;6329:12:17;;-1:-1:-1;;;6345:16:17;6329:8;;6338:2;;6329:12;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;6329:12:17;:32;6172:189;6090:278;-1:-1:-1;;6090:278:17:o;7728:238::-;7794:4;7836:23;635:2;7836:1;:23;:::i;:::-;7817:8;:15;:42;:85;;;;-1:-1:-1;7875:11:17;;-1:-1:-1;;;7890:12:17;7875:8;;7884:1;;7875:11;;;;:::i;4455:727::-;4550:12;4578:27;4592:12;;4578:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4578:13:17;;-1:-1:-1;;;4578:27:17:i;:::-;4574:108;;;4628:43;4649:12;;4663:7;4628:20;:43::i;:::-;4621:50;;;;4574:108;4695:26;4708:12;;4695:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4695:12:17;;-1:-1:-1;;;4695:26:17:i;:::-;4691:107;;;4744:43;4765:12;;4779:7;4744:20;:43::i;4691:107::-;4811:28;4826:12;;4811:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4811:14:17;;-1:-1:-1;;;4811:28:17:i;:::-;4807:107;;;4862:41;4890:12;;4862:27;:41::i;4807:107::-;4927:27;4941:12;;4927:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4927:13:17;;-1:-1:-1;;;4927:27:17:i;:::-;4923:106;;;4977:41;5005:12;;4977:27;:41::i;4923:106::-;5042:26;5055:12;;5042:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5042:12:17;;-1:-1:-1;;;5042:26:17:i;:::-;5038:95;;;5091:31;5109:12;;5091:17;:31::i;5038:95::-;5142:33;;-1:-1:-1;;;5142:33:17;;11302:2:32;5142:33:17;;;11284:21:32;11341:2;11321:18;;;11314:30;-1:-1:-1;;;11360:18:32;;;11353:53;11423:18;;5142:33:17;11100:347:32;6643:226:17;6711:4;6753:16;539:2;6753:1;:16;:::i;:::-;6734:8;:15;:35;:78;;;;-1:-1:-1;6785:11:17;;386:4:18;;6785:8:17;;386:4:18;;6785:11:17;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;6785:11:17;:27;6734:78;:128;;;;;539:2;6834:8;6843:1;6834:11;;;;;;;;:::i;5449:382::-;5516:4;5558:16;539:2;5558:1;:16;:::i;:::-;5539:8;:15;:35;:80;;;;-1:-1:-1;5590:11:17;;-1:-1:-1;;;5605:14:17;5590:8;;5599:1;;5590:11;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;5590:11:17;:29;5539:80;:129;;;;-1:-1:-1;5635:11:17;;-1:-1:-1;;;5650:18:17;5635:8;;5644:1;;5635:11;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;5635:11:17;:33;5539:129;:179;;;;;539:2;5690:8;5699:1;5690:11;;;;;;;;:::i;:::-;;;;;;;5684:34;5539:179;:233;;;;-1:-1:-1;5734:12:17;;-1:-1:-1;;;5750:22:17;5734:8;;5743:2;;5734:12;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;5734:12:17;:38;5539:233;:285;;;;-1:-1:-1;5788:12:17;;-1:-1:-1;;;5805:19:17;5788:8;;5797:2;;5788:12;;;;;;:::i;13397:498::-;13459:7;13478:25;13523:39;13547:13;13554:5;;13547:13;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13530:31;;;;;;10041:19:32;;10085:2;10076:12;;9912:182;13530:31:17;;;;-1:-1:-1;;13530:31:17;;;;;;;;;;13523:39;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13506:57;;;;;;10041:19:32;;10085:2;10076:12;;9912:182;13506:57:17;;;;-1:-1:-1;;13506:57:17;;;;;;;;;;-1:-1:-1;13573:10:17;;13593:168;13614:2;13610:1;:6;13593:168;;;13643:12;13656:1;13643:15;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;13643:15:17;;-1:-1:-1;13690:12:17;13703:6;13708:1;13703:2;:6;:::i;:::-;13690:20;;;;;;;;:::i;:::-;;;;;;;;;13672:12;13685:1;13672:15;;;;;;;;:::i;:::-;;;;:38;-1:-1:-1;;;;;13672:38:17;;;;;;;;-1:-1:-1;13747:3:17;13724:12;13737:6;13742:1;13737:2;:6;:::i;:::-;13724:20;;;;;;;;:::i;:::-;;;;:26;-1:-1:-1;;;;;13724:26:17;;;;;;;;-1:-1:-1;13618:3:17;;;;:::i;:::-;;;;13593:168;;;-1:-1:-1;;13852:2:17;13834:21;13828:28;;13397:498;-1:-1:-1;;;13397:498:17:o;16249:914::-;16338:6;16346;16387:12;16372:5;:12;:27;16364:80;;;;-1:-1:-1;;;16364:80:17;;11654:2:32;16364:80:17;;;11636:21:32;11693:2;11673:18;;;11666:30;11732:34;11712:18;;;11705:62;-1:-1:-1;;;11783:18:32;;;11776:38;11831:19;;16364:80:17;11452:404:32;16364:80:17;16454:13;16476:5;16482:12;16476:19;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;16521:1:17;16510:12;;;16506:146;;16546:1;16549;16538:13;;;;;;;16506:146;428:3;16572:34;;;;16568:84;;16622:19;;;-1:-1:-1;16639:1:17;;-1:-1:-1;16622:19:17;;16568:84;16670:21;16700:33;428:3;16700:7;:33;:::i;:::-;16694:40;;:1;:40;:::i;:::-;16670:64;-1:-1:-1;494:1:17;16752:51;;;16744:95;;;;-1:-1:-1;;;16744:95:17;;13446:2:32;16744:95:17;;;13428:21:32;13485:2;13465:18;;;13458:30;13524:33;13504:18;;;13497:61;13575:18;;16744:95:17;13244:355:32;16744:95:17;16964:13;17000:91;17030:16;:12;17045:1;17030:16;:::i;:::-;17048:31;17063:16;17048:12;:31;:::i;:::-;:35;;17082:1;17048:35;:::i;:::-;17085:5;17000:29;:91::i;:::-;16964:137;-1:-1:-1;16964:137:17;17127:28;17134:16;17154:1;17127:28;:::i;:::-;17111:45;;;;;;;16249:914;;;;;;:::o;3070:802::-;3153:18;;:::i;:::-;3211:24;;;;;;;;3183:25;3211:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3267:76;3297:8;3307:28;734:1;3297:8;3307:28;:::i;:::-;3337:5;3267:29;:76::i;:::-;-1:-1:-1;;;;;3245:99:17;;;3354:29;734:1;3354:29;;:::i;:::-;;;3395:19;3416:23;3443:36;3463:8;3473:5;3443:19;:36::i;:::-;3394:85;;-1:-1:-1;3394:85:17;-1:-1:-1;3489:28:17;;;;;;:::i;:::-;;;3528:21;3562:12;-1:-1:-1;;;;;3552:23:17;-1:-1:-1;;;;;3552:23:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3552:23:17;;3528:47;;3590:8;3585:100;3608:12;-1:-1:-1;;;;;3604:16:17;:1;-1:-1:-1;;;;;3604:16:17;;3585:100;;;3655:5;3661:12;-1:-1:-1;;;;;3661:12:17;;:8;:12;:::i;:::-;3655:19;;;;;;;;:::i;:::-;;;;;;;;;3641:8;3650:1;-1:-1:-1;;;;;3641:11:17;;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;3641:33:17;;;;;;;;-1:-1:-1;3622:3:17;;;;:::i;:::-;;;;3585:100;;;-1:-1:-1;3694:15:17;;;:26;;;-1:-1:-1;;;;;3730:32:17;;:17;;;:32;3791:51;;;:32;3750:12;734:1;3791:32;:::i;:::-;:51;;;;:::i;:::-;-1:-1:-1;;;;;3772:70:17;:16;;;:70;-1:-1:-1;3772:16:17;;3070:802;-1:-1:-1;;;;;3070:802:17:o;18745:268::-;18810:4;;1129:1;18840:25;1170:1;18840:13;:25;:::i;:::-;18839:46;;;;:::i;:::-;18826:59;-1:-1:-1;18895:14:17;1129:1;18913:25;1170:1;18913:13;:25;:::i;:::-;18912:46;;;;:::i;:::-;:51;;-1:-1:-1;18912:51:17;18989:16;;19004:1;18989:16;;;19000:1;18989:16;18980:26;;;;:5;:26;:::i;:::-;18973:33;18745:268;-1:-1:-1;;;;18745:268:17:o;17795:944::-;17861:12;17885:15;17903:2;17885:20;;17916:17;17947:13;17974:17;18005:19;18037:32;18052:9;:16;18037:14;:32::i;:::-;-1:-1:-1;;;;;18027:43:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;18027:43:17;;18005:65;;18086:6;18081:480;18102:9;:16;18098:1;:20;18081:480;;;18190:9;18200:1;18190:12;;;;;;;;:::i;:::-;;;;;;;;1170:1;18155:25;;;18154:49;;18217:21;;;;:::i;:::-;;;18252:299;1129:1;18259:8;:28;18252:299;;18307:28;1129:1;18307:28;;:::i;:::-;;;18494:9;18465:38;;18482:8;18466:12;:24;;18465:38;18452:53;;18430:6;18437:11;18430:19;;;;;;;;;;:::i;:::-;;;;:75;-1:-1:-1;;;;;18430:75:17;;;;;;;;-1:-1:-1;18523:13:17;;;;:::i;:::-;;;;18252:299;;;18120:3;;;:::i;:::-;;;18081:480;;;-1:-1:-1;18575:12:17;;18571:139;;18638:59;;;18656:27;18675:8;1129:1;18656:27;:::i;:::-;18639:12;:45;;18638:59;18625:74;;18603:6;18610:11;18603:19;;;;;;;;;;:::i;:::-;;;;:96;-1:-1:-1;;;;;18603:96:17;;;;;;;;;18726:6;17795:944;-1:-1:-1;;;;;;17795:944:17:o;14416:355::-;14496:6;14535:10;:6;14544:1;14535:10;:::i;:::-;14522:2;:9;:23;;14514:56;;;;-1:-1:-1;;;14514:56:17;;14526:2:32;14514:56:17;;;14508:21:32;14565:2;14545:18;;;14538:30;-1:-1:-1;;;14584:18:32;;;14577:50;14644:18;;14514:56:17;14324:344:32;14514:56:17;14761:2;14741;14744:10;:6;14753:1;14744:10;:::i;:::-;14741:14;;;;;;;;:::i;:::-;;;;;;;14728:35;;14713:2;14693;14696:10;:6;14705:1;14696:10;:::i;:::-;14693:14;;;;;;;;:::i;:::-;;;;;;;14680:35;;14666:1;14646:2;14649:10;:6;14658:1;14649:10;:::i;:::-;14646:14;;;;;;;;:::i;:::-;;;;;14609:10;;14646:14;;;;;14633:34;;;;14609:2;;14612:6;;14609:10;;;;;;:::i;:::-;;;;;;;14596:72;:120;:168;;-1:-1:-1;14416:355:17;;;;:::o;17169:512::-;17318:4;17371:5;:12;17355:13;:28;:58;;;;;17401:5;:12;17387:11;:26;17355:58;17334:138;;;;-1:-1:-1;;;17334:138:17;;14875:2:32;17334:138:17;;;14857:21:32;;;14894:18;;;14887:30;14953:34;14933:18;;;14926:62;15005:18;;17334:138:17;14673:356:32;17334:138:17;17482:11;17521:13;17507:145;17540:11;17536:1;:15;17507:145;;;17619:19;17624:13;17619:1;:19;:::i;:::-;17614:25;;:1;:25;:::i;:::-;17608:32;;:1;:32;:::i;:::-;17588:5;17594:1;17588:8;;;;;;;;:::i;:::-;;;;;17582:59;;;17588:8;;17582:59;:::i;:::-;17572:69;;-1:-1:-1;;;;;17572:69:17;;;:::i;:::-;;-1:-1:-1;17553:3:17;;;;:::i;:::-;;;;17507:145;;;-1:-1:-1;17668:6:17;17169:512;-1:-1:-1;;;;17169:512:17:o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:347:32:-;65:8;75:6;129:3;122:4;114:6;110:17;106:27;96:55;;147:1;144;137:12;96:55;-1:-1:-1;170:20:32;;-1:-1:-1;;;;;202:30:32;;199:50;;;245:1;242;235:12;199:50;282:4;274:6;270:17;258:29;;334:3;327:4;318:6;310;306:19;302:30;299:39;296:59;;;351:1;348;341:12;366:409;436:6;444;497:2;485:9;476:7;472:23;468:32;465:52;;;513:1;510;503:12;465:52;540:23;;-1:-1:-1;;;;;575:30:32;;572:50;;;618:1;615;608:12;572:50;657:58;707:7;698:6;687:9;683:22;657:58;:::i;:::-;734:8;;631:84;;-1:-1:-1;366:409:32;-1:-1:-1;;;;366:409:32:o;780:250::-;865:1;875:113;889:6;886:1;883:13;875:113;;;965:11;;;959:18;946:11;;;939:39;911:2;904:10;875:113;;;-1:-1:-1;;1022:1:32;1004:16;;997:27;780:250::o;1035:270::-;1076:3;1114:5;1108:12;1141:6;1136:3;1129:19;1157:76;1226:6;1219:4;1214:3;1210:14;1203:4;1196:5;1192:16;1157:76;:::i;:::-;1287:2;1266:15;-1:-1:-1;;1262:29:32;1253:39;;;;1294:4;1249:50;;1035:270;-1:-1:-1;;1035:270:32:o;1310:1266::-;1518:4;1547:2;1587;1576:9;1572:18;1617:2;1606:9;1599:21;1640:6;1675;1669:13;1706:6;1698;1691:22;1732:2;1722:12;;1765:2;1754:9;1750:18;1743:25;;1827:2;1817:6;1814:1;1810:14;1799:9;1795:30;1791:39;1865:2;1857:6;1853:15;1886:1;1896:651;1910:6;1907:1;1904:13;1896:651;;;1975:22;;;-1:-1:-1;;1971:36:32;1959:49;;2031:13;;2103:9;;-1:-1:-1;;;;;2099:34:32;2084:50;;2173:11;;;2167:18;2067:4;2205:15;;;2198:27;;;2067:4;2252:47;2283:15;;;2167:18;2252:47;:::i;:::-;2342:11;;;2336:18;2319:15;;;2312:43;2378:4;2425:11;;;2419:18;2402:15;;;;2395:43;;;;-1:-1:-1;;2525:12:32;;;;2490:15;;;;1932:1;1925:9;1896:651;;;-1:-1:-1;2564:6:32;;1310:1266;-1:-1:-1;;;;;;;;1310:1266:32:o;2581:160::-;2646:20;;2702:13;;2695:21;2685:32;;2675:60;;2731:1;2728;2721:12;2675:60;2581:160;;;:::o;2746:477::-;2822:6;2830;2838;2891:2;2879:9;2870:7;2866:23;2862:32;2859:52;;;2907:1;2904;2897:12;2859:52;2934:23;;-1:-1:-1;;;;;2969:30:32;;2966:50;;;3012:1;3009;3002:12;2966:50;3051:58;3101:7;3092:6;3081:9;3077:22;3051:58;:::i;:::-;3128:8;;-1:-1:-1;3025:84:32;-1:-1:-1;3182:35:32;;-1:-1:-1;3213:2:32;3198:18;;3182:35;:::i;:::-;3172:45;;2746:477;;;;;:::o;3228:225::-;3383:2;3372:9;3365:21;3346:4;3403:44;3443:2;3432:9;3428:18;3420:6;3403:44;:::i;3690:785::-;3786:6;3794;3802;3810;3818;3871:2;3859:9;3850:7;3846:23;3842:32;3839:52;;;3887:1;3884;3877:12;3839:52;3914:23;;-1:-1:-1;;;;;3986:14:32;;;3983:34;;;4013:1;4010;4003:12;3983:34;4052:58;4102:7;4093:6;4082:9;4078:22;4052:58;:::i;:::-;4129:8;;-1:-1:-1;4026:84:32;-1:-1:-1;4217:2:32;4202:18;;4189:32;;-1:-1:-1;4233:16:32;;;4230:36;;;4262:1;4259;4252:12;4230:36;;4301:60;4353:7;4342:8;4331:9;4327:24;4301:60;:::i;:::-;4380:8;;-1:-1:-1;4275:86:32;-1:-1:-1;4434:35:32;;-1:-1:-1;4465:2:32;4450:18;;4434:35;:::i;:::-;4424:45;;3690:785;;;;;;;;:::o;4680:127::-;4741:10;4736:3;4732:20;4729:1;4722:31;4772:4;4769:1;4762:15;4796:4;4793:1;4786:15;4812:921;4880:6;4933:2;4921:9;4912:7;4908:23;4904:32;4901:52;;;4949:1;4946;4939:12;4901:52;4976:23;;-1:-1:-1;;;;;5048:14:32;;;5045:34;;;5075:1;5072;5065:12;5045:34;5113:6;5102:9;5098:22;5088:32;;5158:7;5151:4;5147:2;5143:13;5139:27;5129:55;;5180:1;5177;5170:12;5129:55;5216:2;5203:16;5238:2;5234;5231:10;5228:36;;;5244:18;;:::i;:::-;5319:2;5313:9;5287:2;5373:13;;-1:-1:-1;;5369:22:32;;;5393:2;5365:31;5361:40;5349:53;;;5417:18;;;5437:22;;;5414:46;5411:72;;;5463:18;;:::i;:::-;5503:10;5499:2;5492:22;5538:2;5530:6;5523:18;5578:7;5573:2;5568;5564;5560:11;5556:20;5553:33;5550:53;;;5599:1;5596;5589:12;5550:53;5655:2;5650;5646;5642:11;5637:2;5629:6;5625:15;5612:46;5700:1;5678:15;;;5695:2;5674:24;5667:35;;;;-1:-1:-1;5682:6:32;4812:921;-1:-1:-1;;;;;4812:921:32:o;6118:127::-;6179:10;6174:3;6170:20;6167:1;6160:31;6210:4;6207:1;6200:15;6234:4;6231:1;6224:15;6250:127;6311:10;6306:3;6302:20;6299:1;6292:31;6342:4;6339:1;6332:15;6366:4;6363:1;6356:15;6382:125;6447:9;;;6468:10;;;6465:36;;;6481:18;;:::i;6512:180::-;-1:-1:-1;;;;;6617:10:32;;;6629;;;6613:27;;6652:11;;;6649:37;;;6666:18;;:::i;:::-;6649:37;6512:180;;;;:::o;6697:209::-;6735:3;-1:-1:-1;;;;;6805:14:32;;;-1:-1:-1;;;;;;6831:15:32;;6828:41;;6849:18;;:::i;:::-;6898:1;6885:15;;6697:209;-1:-1:-1;;;6697:209:32:o;6911:135::-;6950:3;6971:17;;;6968:43;;6991:18;;:::i;:::-;-1:-1:-1;7038:1:32;7027:13;;6911:135::o;7051:400::-;7253:2;7235:21;;;7292:2;7272:18;;;7265:30;7331:34;7326:2;7311:18;;7304:62;-1:-1:-1;;;7397:2:32;7382:18;;7375:34;7441:3;7426:19;;7051:400::o;7456:151::-;7546:4;7539:12;;;7525;;;7521:31;;7564:14;;7561:40;;;7581:18;;:::i;7612:148::-;7700:4;7679:12;;;7693;;;7675:31;;7718:13;;7715:39;;;7734:18;;:::i;7765:175::-;7802:3;7846:4;7839:5;7835:16;7875:4;7866:7;7863:17;7860:43;;7883:18;;:::i;:::-;7932:1;7919:15;;7765:175;-1:-1:-1;;7765:175:32:o;8628:331::-;8733:9;8744;8786:8;8774:10;8771:24;8768:44;;;8808:1;8805;8798:12;8768:44;8837:6;8827:8;8824:20;8821:40;;;8857:1;8854;8847:12;8821:40;-1:-1:-1;;8883:23:32;;;8928:25;;;;;-1:-1:-1;8628:331:32:o;8964:128::-;9031:9;;;9052:11;;;9049:37;;;9066:18;;:::i;9097:271::-;9280:6;9272;9267:3;9254:33;9236:3;9306:16;;9331:13;;;9306:16;9097:271;-1:-1:-1;9097:271:32:o;9723:184::-;9793:6;9846:2;9834:9;9825:7;9821:23;9817:32;9814:52;;;9862:1;9859;9852:12;9814:52;-1:-1:-1;9885:16:32;;9723:184;-1:-1:-1;9723:184:32:o;10099:287::-;10228:3;10266:6;10260:13;10282:66;10341:6;10336:3;10329:4;10321:6;10317:17;10282:66;:::i;:::-;10364:16;;;;;10099:287;-1:-1:-1;;10099:287:32:o;10690:405::-;10845:3;10883:6;10877:13;10899:66;10958:6;10953:3;10946:4;10938:6;10934:17;10899:66;:::i;:::-;-1:-1:-1;;;;;;11026:33:32;;;;10987:16;;;;11012:48;;;11087:1;11076:13;;10690:405;-1:-1:-1;;10690:405:32:o;11861:422::-;11950:1;11993:5;11950:1;12007:270;12028:7;12018:8;12015:21;12007:270;;;12087:4;12083:1;12079:6;12075:17;12069:4;12066:27;12063:53;;;12096:18;;:::i;:::-;12146:7;12136:8;12132:22;12129:55;;;12166:16;;;;12129:55;12245:22;;;;12205:15;;;;12007:270;;;12011:3;11861:422;;;;;:::o;12288:806::-;12337:5;12367:8;12357:80;;-1:-1:-1;12408:1:32;12422:5;;12357:80;12456:4;12446:76;;-1:-1:-1;12493:1:32;12507:5;;12446:76;12538:4;12556:1;12551:59;;;;12624:1;12619:130;;;;12531:218;;12551:59;12581:1;12572:10;;12595:5;;;12619:130;12656:3;12646:8;12643:17;12640:43;;;12663:18;;:::i;:::-;-1:-1:-1;;12719:1:32;12705:16;;12734:5;;12531:218;;12833:2;12823:8;12820:16;12814:3;12808:4;12805:13;12801:36;12795:2;12785:8;12782:16;12777:2;12771:4;12768:12;12764:35;12761:77;12758:159;;;-1:-1:-1;12870:19:32;;;12902:5;;12758:159;12949:34;12974:8;12968:4;12949:34;:::i;:::-;13019:6;13015:1;13011:6;13007:19;12998:7;12995:32;12992:58;;;13030:18;;:::i;:::-;13068:20;;12288:806;-1:-1:-1;;;12288:806:32:o;13099:140::-;13157:5;13186:47;13227:4;13217:8;13213:19;13207:4;13186:47;:::i;13604:168::-;13671:6;13697:10;;;13709;;;13693:27;;13732:11;;;13729:37;;;13746:18;;:::i;13777:168::-;13850:9;;;13881;;13898:15;;;13892:22;;13878:37;13868:71;;13919:18;;:::i;13950:127::-;14011:10;14006:3;14002:20;13999:1;13992:31;14042:4;14039:1;14032:15;14066:4;14063:1;14056:15;14082:120;14122:1;14148;14138:35;;14153:18;;:::i;:::-;-1:-1:-1;14187:9:32;;14082:120::o;14207:112::-;14239:1;14265;14255:35;;14270:18;;:::i;:::-;-1:-1:-1;14304:9:32;;14207:112::o;15034:131::-;15094:5;15123:36;15150:8;15144:4;15123:36;:::i;15170:257::-;-1:-1:-1;;;;;15291:10:32;;;15303;;;15287:27;15334:20;;;;15241:18;15373:24;;;15363:58;;15401:18;;:::i;:::-;15363:58;;15170:257;;;;:::o", + "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nimport \"./OpCodes.sol\";\n\n/**\n * @title BtcUtils\n * @notice This library contains functionality to make easier to work with Bitcoin transactions in Solidity.\n * @notice This library is based in this document:\n * https://developer.bitcoin.org/reference/transactions.html#raw-transaction-format\n */\nlibrary BtcUtils {\n uint8 private constant MAX_COMPACT_SIZE_LENGTH = 252;\n uint8 private constant MAX_BYTES_USED_FOR_COMPACT_SIZE = 8;\n\n uint private constant HASH160_SIZE = 20;\n uint private constant SHA256_SIZE = 32;\n uint private constant TAPROOT_PUBKEY_SIZE = 32;\n\n uint8 private constant OUTPOINT_SIZE = 36;\n uint8 private constant OUTPUT_VALUE_SIZE = 8;\n\n uint8 private constant PUBKEY_HASH_START = 3;\n bytes1 private constant PUBKEY_HASH_MAINNET_BYTE = 0x00;\n bytes1 private constant PUBKEY_HASH_TESTNET_BYTE = 0x6f;\n\n uint8 private constant SCRIPT_HASH_START = 2;\n bytes1 private constant SCRIPT_HASH_MAINNET_BYTE = 0x05;\n bytes1 private constant SCRIPT_HASH_TESTNET_BYTE = 0xc4;\n\n uint private constant BECH32_WORD_SIZE = 5;\n uint private constant BYTE_SIZE = 8;\n\n bytes1 private constant WITNESS_VERSION_0 = 0x00;\n bytes1 private constant WITNESS_VERSION_1 = 0x01;\n\n\n /**\n * @notice This struct contains the information of a tx output separated by fields\n * @notice Its just to have a structured representation of the output\n **/\n struct TxRawOutput {\n uint64 value;\n bytes pkScript;\n uint256 scriptSize;\n uint256 totalSize;\n }\n\n function version() external pure returns (string memory) {\n return \"0.2.1\";\n }\n\n /// @notice Parse a raw transaction to get an array of its outputs in a structured representation\n /// @param rawTx the raw transaction\n /// @return An array of `TxRawOutput` with the outputs of the transaction\n function getOutputs(bytes calldata rawTx) public pure returns (TxRawOutput[] memory) {\n uint currentPosition = 4;\n\n if (rawTx[4] == 0x00 && rawTx[5] == 0x01) { // if its segwit, skip marker and flag\n currentPosition = 6;\n }\n \n (uint64 inputCount, uint16 inputCountSize) = parseCompactSizeInt(currentPosition, rawTx);\n currentPosition += inputCountSize;\n\n uint64 scriptLarge;\n uint16 scriptLargeSize;\n for (uint64 i = 0; i < inputCount; i++) {\n currentPosition += OUTPOINT_SIZE;\n (scriptLarge, scriptLargeSize) = parseCompactSizeInt(currentPosition, rawTx);\n currentPosition += scriptLarge + scriptLargeSize + 4;\n }\n\n (uint64 outputCount, uint16 outputCountSize) = parseCompactSizeInt(currentPosition, rawTx);\n currentPosition += outputCountSize;\n\n TxRawOutput[] memory result = new TxRawOutput[](outputCount);\n for (uint i = 0; i < outputCount; i++) {\n result[i] = extractRawOutput(currentPosition, rawTx);\n currentPosition += result[i].totalSize;\n }\n return result;\n }\n\n function extractRawOutput(uint position, bytes memory rawTx) private pure returns (TxRawOutput memory) {\n TxRawOutput memory result = TxRawOutput(0, \"\", 0, 0);\n result.value = uint64(calculateLittleEndianFragment(position, position + OUTPUT_VALUE_SIZE, rawTx));\n position += OUTPUT_VALUE_SIZE;\n\n (uint64 scriptLength, uint16 scriptLengthSize) = parseCompactSizeInt(position, rawTx);\n position += scriptLengthSize;\n\n bytes memory pkScript = new bytes(scriptLength);\n for (uint64 i = 0; i < scriptLength; i++) {\n pkScript[i] = rawTx[position + i];\n }\n result.pkScript = pkScript;\n result.scriptSize = scriptLength;\n result.totalSize = OUTPUT_VALUE_SIZE + scriptLength + scriptLengthSize;\n return result;\n }\n\n /// @notice Parse a raw output script whose type is not known by the consumer. The function will\n /// return the corresponding address if the type of the script is supported or an error if not.\n /// For the addresses that are encoded with base58check the checksum bytes are not included in\n /// the resulting byte array\n /// @param outputScript the fragment of the raw transaction containing the raw output script\n /// @param mainnet if the address to generate is from mainnet or testnet\n /// @return The address bytes regarless of the output script type\n function outputScriptToAddress(bytes calldata outputScript, bool mainnet) public pure returns (bytes memory) {\n if (isP2PKHOutput(outputScript)) {\n return parsePayToPubKeyHash(outputScript, mainnet);\n }\n if (isP2SHOutput(outputScript)) {\n return parsePayToScriptHash(outputScript, mainnet);\n }\n if (isP2WPKHOutput(outputScript)) {\n return parsePayToWitnessPubKeyHash(outputScript);\n }\n if (isP2WSHOutput(outputScript)) {\n return parsePayToWitnessScriptHash(outputScript);\n }\n if (isP2TROutput(outputScript)) {\n return parsePayToTaproot(outputScript);\n }\n revert(\"Unsupported script type\");\n }\n\n /// @notice Check if a raw output script is a pay-to-public-key-hash output\n /// @param pkScript the fragment of the raw transaction containing the raw output script\n /// @return Whether the script has a pay-to-public-key-hash output structure or not\n function isP2PKHOutput(bytes memory pkScript) public pure returns (bool) {\n return pkScript.length == 5 + HASH160_SIZE &&\n pkScript[0] == OpCodes.OP_DUP &&\n pkScript[1] == OpCodes.OP_HASH160 &&\n uint8(pkScript[2]) == HASH160_SIZE &&\n pkScript[23] == OpCodes.OP_EQUALVERIFY &&\n pkScript[24] == OpCodes.OP_CHECKSIG;\n }\n\n /// @notice Check if a raw output script is a pay-to-script-hash output\n /// @param pkScript the fragment of the raw transaction containing the raw output script\n /// @return Whether the script has a pay-to-script-hash output structure or not\n function isP2SHOutput(bytes memory pkScript) public pure returns (bool) {\n return pkScript.length == 3 + HASH160_SIZE &&\n pkScript[0] == OpCodes.OP_HASH160 &&\n uint8(pkScript[1]) == HASH160_SIZE &&\n pkScript[22] == OpCodes.OP_EQUAL;\n }\n\n /// @notice Check if a raw output script is a pay-to-witness-pubkey-hash output\n /// @param pkScript the fragment of the raw transaction containing the raw output script\n /// @return Whether the script has a pay-to-witness-pubkey-hash output structure or not\n function isP2WPKHOutput(bytes memory pkScript) public pure returns (bool) {\n return pkScript.length == 2 + HASH160_SIZE &&\n pkScript[0] == OpCodes.OP_0 &&\n uint8(pkScript[1]) == HASH160_SIZE;\n }\n\n /// @notice Check if a raw output script is a pay-to-witness-script-hash output\n /// @param pkScript the fragment of the raw transaction containing the raw output script\n /// @return Whether the script has a pay-to-witness-script-hash output structure or not\n function isP2WSHOutput(bytes memory pkScript) public pure returns (bool) {\n return pkScript.length == 2 + SHA256_SIZE &&\n pkScript[0] == OpCodes.OP_0 &&\n uint8(pkScript[1]) == SHA256_SIZE;\n }\n\n /// @notice Check if a raw output script is a pay-to-taproot output\n /// @notice Reference for implementation: https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki \n /// @param pkScript the fragment of the raw transaction containing the raw output script\n /// @return Whether the script has a pay-to-taproot output structure or not\n function isP2TROutput(bytes memory pkScript) public pure returns (bool) {\n return pkScript.length == 2 + TAPROOT_PUBKEY_SIZE &&\n pkScript[0] == OpCodes.OP_1 &&\n uint8(pkScript[1]) == TAPROOT_PUBKEY_SIZE;\n }\n\n /// @notice Parse a raw pay-to-public-key-hash output script to get the corresponding address,\n /// the resulting byte array doesn't include the checksum bytes of the base58check encoding at\n /// the end\n /// @param outputScript the fragment of the raw transaction containing the raw output script\n /// @param mainnet if the address to generate is from mainnet or testnet \n /// @return The address generated using the receiver's public key hash\n function parsePayToPubKeyHash(bytes calldata outputScript, bool mainnet) public pure returns (bytes memory) {\n require(isP2PKHOutput(outputScript), \"Script hasn't the required structure\");\n\n bytes memory destinationAddress = new bytes(HASH160_SIZE + 1);\n for(uint8 i = PUBKEY_HASH_START; i < HASH160_SIZE + PUBKEY_HASH_START; i++) {\n destinationAddress[i - PUBKEY_HASH_START + 1] = outputScript[i];\n }\n\n destinationAddress[0] = mainnet? PUBKEY_HASH_MAINNET_BYTE : PUBKEY_HASH_TESTNET_BYTE;\n return destinationAddress;\n }\n\n /// @notice Parse a raw pay-to-script-hash output script to get the corresponding address,\n /// the resulting byte array doesn't include the checksum bytes of the base58check encoding at\n /// the end\n /// @param outputScript the fragment of the raw transaction containing the raw output script\n /// @param mainnet if the address to generate is from mainnet or testnet\n /// @return The address generated using the script hash\n function parsePayToScriptHash(bytes calldata outputScript, bool mainnet) public pure returns (bytes memory) {\n require(isP2SHOutput(outputScript), \"Script hasn't the required structure\");\n\n bytes memory destinationAddress = new bytes(HASH160_SIZE + 1);\n for(uint8 i = SCRIPT_HASH_START; i < HASH160_SIZE + SCRIPT_HASH_START; i++) {\n destinationAddress[i - SCRIPT_HASH_START + 1] = outputScript[i];\n }\n\n destinationAddress[0] = mainnet? SCRIPT_HASH_MAINNET_BYTE : SCRIPT_HASH_TESTNET_BYTE;\n return destinationAddress;\n }\n\n /// @notice Parse a raw pay-to-witness-pubkey-hash output script to get the corresponding address words,\n /// the resulting words are only the data part of the bech32 encoding and doesn't include the HRP\n /// @param outputScript the fragment of the raw transaction containing the raw output script\n /// @return The address bech32 words generated using the pubkey hash\n function parsePayToWitnessPubKeyHash(bytes calldata outputScript) public pure returns (bytes memory) {\n require(isP2WPKHOutput(outputScript), \"Script hasn't the required structure\"); \n uint length = 1 + total5BitWords(HASH160_SIZE);\n bytes memory result = new bytes(length);\n result[0] = WITNESS_VERSION_0;\n bytes memory words = to5BitWords(outputScript[2:]);\n for (uint i = 1; i < length; i++) {\n result[i] = words[i - 1];\n }\n return result;\n }\n\n /// @notice Parse a raw pay-to-witness-script-hash output script to get the corresponding address words,\n /// the resulting words are only the data part of the bech32 encoding and doesn't include the HRP\n /// @param outputScript the fragment of the raw transaction containing the raw output script\n /// @return The address bech32 words generated using the script hash\n function parsePayToWitnessScriptHash(bytes calldata outputScript) public pure returns (bytes memory) {\n require(isP2WSHOutput(outputScript), \"Script hasn't the required structure\");\n uint length = 1 + total5BitWords(SHA256_SIZE);\n bytes memory result = new bytes(length);\n result[0] = WITNESS_VERSION_0;\n bytes memory words = to5BitWords(outputScript[2:]);\n for (uint i = 1; i < length; i++) {\n result[i] = words[i - 1];\n }\n return result;\n }\n\n /// @notice Parse a raw pay-to-taproot output script to get the corresponding address words,\n /// the resulting words are only the data part of the bech32m encoding and doesn't include the HRP\n /// @param outputScript the fragment of the raw transaction containing the raw output script\n /// @return The address bech32m words generated using the taproot pubkey hash\n function parsePayToTaproot(bytes calldata outputScript) public pure returns (bytes memory) {\n require(isP2TROutput(outputScript), \"Script hasn't the required structure\");\n uint length = 1 + total5BitWords(TAPROOT_PUBKEY_SIZE);\n bytes memory result = new bytes(length);\n result[0] = WITNESS_VERSION_1;\n bytes memory words = to5BitWords(outputScript[2:]);\n for (uint i = 1; i < length; i++) {\n result[i] = words[i - 1];\n }\n return result;\n }\n\n /// @notice Parse a raw null-data output script to get its content\n /// @param outputScript the fragment of the raw transaction containing the raw output script \n /// @return The content embedded inside the script\n function parseNullDataScript(bytes calldata outputScript) public pure returns (bytes memory) {\n require(outputScript.length > 1,\"Invalid size\");\n require(outputScript[0] == OpCodes.OP_RETURN, \"Not OP_RETURN\");\n return outputScript[1:];\n }\n\n /// @notice Hash a bitcoin raw transaction to get its id (reversed double sha256)\n /// @param btcTx the transaction to hash\n /// @return The transaction id \n function hashBtcTx(bytes calldata btcTx) public pure returns (bytes32) {\n bytes memory doubleSha256 = abi.encodePacked(sha256(abi.encodePacked(sha256(btcTx))));\n bytes1 aux;\n for (uint i = 0; i < 16; i++) {\n aux = doubleSha256[i];\n doubleSha256[i] = doubleSha256[31 - i];\n doubleSha256[31 - i] = aux;\n }\n\n bytes32 result;\n assembly {\n result := mload(add(doubleSha256, 32))\n }\n return result;\n }\n\n /// @dev Gets the timestamp of a Bitcoin block header\n /// @param header The block header\n /// @return The timestamp of the block header\n function getBtcBlockTimestamp(bytes memory header) public pure returns (uint256) {\n // bitcoin header is 80 bytes and timestamp is 4 bytes from byte 68 to byte 71 (both inclusive)\n require(header.length == 80, \"Invalid header length\");\n\n return sliceUint32FromLSB(header, 68);\n }\n\n // bytes must have at least 28 bytes before the uint32\n function sliceUint32FromLSB(bytes memory bs, uint offset) private pure returns (uint32) {\n require(bs.length >= offset + 4, \"Slicing out of range\");\n\n return\n uint32(uint8(bs[offset])) |\n (uint32(uint8(bs[offset + 1])) << 8) |\n (uint32(uint8(bs[offset + 2])) << 16) |\n (uint32(uint8(bs[offset + 3])) << 24);\n }\n\n /// @notice Check if a pay-to-script-hash address belogs to a specific script, expects the address\n /// bytes to include the 4 checksum bytes at the end\n /// @param p2sh the pay-to-script-hash address\n /// @param script the script to check\n /// @param mainnet flag to specify if its a mainnet address\n /// @return Whether the address belongs to the script or not\n function validateP2SHAdress(bytes calldata p2sh, bytes calldata script, bool mainnet) public pure returns (bool) {\n return p2sh.length == 25 && keccak256(p2sh) == keccak256(getP2SHAddressFromScript(script, mainnet));\n }\n\n /// @notice Generate a pay-to-script-hash address from a script, the resulting byte array already contains\n /// the 4 checksum bytes at the end of it\n /// @param script the script to generate the address from\n /// @param mainnet flag to specify if the output should be a mainnet address\n /// @return The address generate from the script\n function getP2SHAddressFromScript(bytes calldata script, bool mainnet) public pure returns (bytes memory) {\n bytes20 scriptHash = ripemd160(abi.encodePacked(sha256(script)));\n bytes1 versionByte = mainnet ? SCRIPT_HASH_MAINNET_BYTE : SCRIPT_HASH_TESTNET_BYTE;\n bytes memory versionAndHash = bytes.concat(versionByte, scriptHash);\n bytes4 checksum = bytes4(sha256(abi.encodePacked(sha256(versionAndHash))));\n return bytes.concat(versionAndHash, checksum);\n }\n\n function parseCompactSizeInt(uint sizePosition, bytes memory array) private pure returns(uint64, uint16) {\n require(array.length > sizePosition, \"Size position can't be bigger than array\");\n uint8 maxSize = uint8(array[sizePosition]);\n if (maxSize == 0) {\n return (0, 1);\n } else if (maxSize <= MAX_COMPACT_SIZE_LENGTH) {\n return (maxSize, 1);\n }\n \n uint compactSizeBytes = 2 ** (maxSize - MAX_COMPACT_SIZE_LENGTH);\n require(compactSizeBytes <= MAX_BYTES_USED_FOR_COMPACT_SIZE, \"unsupported compact size length\");\n\n // the adition of 1 is because the first byte is the indicator of the size and its not part of the number\n uint64 result = uint64(\n calculateLittleEndianFragment(sizePosition + 1, sizePosition + compactSizeBytes + 1, array)\n );\n return (result, uint16(compactSizeBytes) + 1);\n }\n\n function calculateLittleEndianFragment(\n uint fragmentStart,\n uint fragmentEnd,\n bytes memory array\n ) private pure returns (uint) {\n require(\n fragmentStart < array.length && fragmentEnd < array.length, \n \"Range can't be bigger than array\"\n );\n uint result = 0;\n for (uint i = fragmentStart; i < fragmentEnd; i++) {\n result += uint8(array[i]) * uint64(2 ** (8 * (i - (fragmentStart))));\n }\n return result;\n }\n\n /// @notice Referece for implementation: https://github.com/bitcoin/bips/blob/master/bip-0173.mediawiki\n function to5BitWords(bytes memory byteArray) private pure returns(bytes memory) {\n uint8 MAX_VALUE = 31;\n\n uint currentValue = 0;\n uint bitCount = 0;\n uint8 resultIndex = 0;\n bytes memory result = new bytes(total5BitWords(byteArray.length));\n\n for (uint i = 0; i < byteArray.length; ++i) {\n currentValue = (currentValue << BYTE_SIZE) | uint8(byteArray[i]);\n bitCount += BYTE_SIZE;\n while (bitCount >= BECH32_WORD_SIZE) {\n bitCount -= BECH32_WORD_SIZE;\n // this mask ensures that the result will always have 5 bits\n result[resultIndex] = bytes1(uint8((currentValue >> bitCount) & MAX_VALUE));\n resultIndex++;\n }\n }\n\n if (bitCount > 0) {\n result[resultIndex] = bytes1(uint8((currentValue << (BECH32_WORD_SIZE - bitCount)) & MAX_VALUE));\n }\n return result;\n }\n\n function total5BitWords(uint numberOfBytes) private pure returns(uint) {\n uint total = (numberOfBytes * BYTE_SIZE) / BECH32_WORD_SIZE;\n bool extraWord = (numberOfBytes * BYTE_SIZE) % BECH32_WORD_SIZE == 0;\n return total + (extraWord? 0 : 1);\n }\n}", + "sourcePath": "@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol", + "ast": { + "absolutePath": "@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol", + "exportedSymbols": { + "BtcUtils": [ + 3743 + ], + "OpCodes": [ + 3770 + ] + }, + "id": 3744, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2245, + "literals": [ + "solidity", + "^", + "0.8", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "32:24:17" + }, + { + "absolutePath": "@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol", + "file": "./OpCodes.sol", + "id": 2246, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 3744, + "sourceUnit": 3771, + "src": "58:23:17", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "BtcUtils", + "contractDependencies": [], + "contractKind": "library", + "documentation": { + "id": 2247, + "nodeType": "StructuredDocumentation", + "src": "83:272:17", + "text": " @title BtcUtils\n @notice This library contains functionality to make easier to work with Bitcoin transactions in Solidity.\n @notice This library is based in this document:\n https://developer.bitcoin.org/reference/transactions.html#raw-transaction-format" + }, + "fullyImplemented": true, + "id": 3743, + "linearizedBaseContracts": [ + 3743 + ], + "name": "BtcUtils", + "nameLocation": "364:8:17", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": true, + "id": 2250, "mutability": "constant", - "name": "SCRIPT_HASH_START", - "nameLocation": "896:17:17", + "name": "MAX_COMPACT_SIZE_LENGTH", + "nameLocation": "402:23:17", "nodeType": "VariableDeclaration", - "scope": 3228, - "src": "873:44:17", + "scope": 3743, + "src": "379:52:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -11592,637 +11775,4629 @@ "typeString": "uint8" }, "typeName": { - "id": 2275, + "id": 2248, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "873:5:17", + "src": "379:5:17", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, "value": { - "hexValue": "32", - "id": 2276, + "hexValue": "323532", + "id": 2249, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "916:1:17", + "src": "428:3:17", "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" + "typeIdentifier": "t_rational_252_by_1", + "typeString": "int_const 252" }, - "value": "2" + "value": "252" }, "visibility": "private" }, { "constant": true, - "id": 2280, + "id": 2253, "mutability": "constant", - "name": "SCRIPT_HASH_MAINNET_BYTE", - "nameLocation": "947:24:17", + "name": "MAX_BYTES_USED_FOR_COMPACT_SIZE", + "nameLocation": "460:31:17", "nodeType": "VariableDeclaration", - "scope": 3228, - "src": "923:55:17", + "scope": 3743, + "src": "437:58:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_uint8", + "typeString": "uint8" }, "typeName": { - "id": 2278, - "name": "bytes1", + "id": 2251, + "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "923:6:17", + "src": "437:5:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_uint8", + "typeString": "uint8" } }, "value": { - "hexValue": "30783035", - "id": 2279, + "hexValue": "38", + "id": 2252, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "974:4:17", + "src": "494:1:17", "typeDescriptions": { - "typeIdentifier": "t_rational_5_by_1", - "typeString": "int_const 5" + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" }, - "value": "0x05" + "value": "8" }, "visibility": "private" }, { "constant": true, - "id": 2283, + "id": 2256, "mutability": "constant", - "name": "SCRIPT_HASH_TESTNET_BYTE", - "nameLocation": "1008:24:17", + "name": "HASH160_SIZE", + "nameLocation": "524:12:17", "nodeType": "VariableDeclaration", - "scope": 3228, - "src": "984:55:17", + "scope": 3743, + "src": "502:39:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, "typeName": { - "id": 2281, - "name": "bytes1", + "id": 2254, + "name": "uint", "nodeType": "ElementaryTypeName", - "src": "984:6:17", + "src": "502:4:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "value": { - "hexValue": "30786334", - "id": 2282, + "hexValue": "3230", + "id": 2255, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1035:4:17", + "src": "539:2:17", "typeDescriptions": { - "typeIdentifier": "t_rational_196_by_1", - "typeString": "int_const 196" + "typeIdentifier": "t_rational_20_by_1", + "typeString": "int_const 20" }, - "value": "0xc4" + "value": "20" }, "visibility": "private" }, { - "canonicalName": "BtcUtils.TxRawOutput", - "id": 2292, - "members": [ - { - "constant": false, - "id": 2285, - "mutability": "mutable", - "name": "value", - "nameLocation": "1262:5:17", - "nodeType": "VariableDeclaration", - "scope": 2292, - "src": "1255:12:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 2284, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "1255:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2287, - "mutability": "mutable", - "name": "pkScript", - "nameLocation": "1283:8:17", - "nodeType": "VariableDeclaration", - "scope": 2292, - "src": "1277:14:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2286, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1277:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2289, - "mutability": "mutable", - "name": "scriptSize", - "nameLocation": "1309:10:17", - "nodeType": "VariableDeclaration", - "scope": 2292, - "src": "1301:18:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2288, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1301:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2291, - "mutability": "mutable", - "name": "totalSize", - "nameLocation": "1337:9:17", - "nodeType": "VariableDeclaration", - "scope": 2292, - "src": "1329:17:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2290, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1329:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" + "constant": true, + "id": 2259, + "mutability": "constant", + "name": "SHA256_SIZE", + "nameLocation": "569:11:17", + "nodeType": "VariableDeclaration", + "scope": 3743, + "src": "547:38:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2257, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "547:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ], - "name": "TxRawOutput", - "nameLocation": "1233:11:17", - "nodeType": "StructDefinition", - "scope": 3228, - "src": "1226:127:17", - "visibility": "public" + }, + "value": { + "hexValue": "3332", + "id": 2258, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "583:2:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "visibility": "private" }, { - "body": { - "id": 2430, + "constant": true, + "id": 2262, + "mutability": "constant", + "name": "TAPROOT_PUBKEY_SIZE", + "nameLocation": "613:19:17", + "nodeType": "VariableDeclaration", + "scope": 3743, + "src": "591:46:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2260, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "591:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "3332", + "id": 2261, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "635:2:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 2265, + "mutability": "constant", + "name": "OUTPOINT_SIZE", + "nameLocation": "667:13:17", + "nodeType": "VariableDeclaration", + "scope": 3743, + "src": "644:41:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 2263, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "644:5:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": { + "hexValue": "3336", + "id": 2264, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "683:2:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_36_by_1", + "typeString": "int_const 36" + }, + "value": "36" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 2268, + "mutability": "constant", + "name": "OUTPUT_VALUE_SIZE", + "nameLocation": "714:17:17", + "nodeType": "VariableDeclaration", + "scope": 3743, + "src": "691:44:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 2266, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "691:5:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": { + "hexValue": "38", + "id": 2267, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "734:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 2271, + "mutability": "constant", + "name": "PUBKEY_HASH_START", + "nameLocation": "765:17:17", + "nodeType": "VariableDeclaration", + "scope": 3743, + "src": "742:44:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 2269, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "742:5:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": { + "hexValue": "33", + "id": 2270, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "785:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 2274, + "mutability": "constant", + "name": "PUBKEY_HASH_MAINNET_BYTE", + "nameLocation": "816:24:17", + "nodeType": "VariableDeclaration", + "scope": 3743, + "src": "792:55:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "typeName": { + "id": 2272, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "792:6:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "value": { + "hexValue": "30783030", + "id": 2273, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "843:4:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x00" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 2277, + "mutability": "constant", + "name": "PUBKEY_HASH_TESTNET_BYTE", + "nameLocation": "877:24:17", + "nodeType": "VariableDeclaration", + "scope": 3743, + "src": "853:55:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "typeName": { + "id": 2275, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "853:6:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "value": { + "hexValue": "30783666", + "id": 2276, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "904:4:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_111_by_1", + "typeString": "int_const 111" + }, + "value": "0x6f" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 2280, + "mutability": "constant", + "name": "SCRIPT_HASH_START", + "nameLocation": "938:17:17", + "nodeType": "VariableDeclaration", + "scope": 3743, + "src": "915:44:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 2278, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "915:5:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "value": { + "hexValue": "32", + "id": 2279, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "958:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 2283, + "mutability": "constant", + "name": "SCRIPT_HASH_MAINNET_BYTE", + "nameLocation": "989:24:17", + "nodeType": "VariableDeclaration", + "scope": 3743, + "src": "965:55:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "typeName": { + "id": 2281, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "965:6:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "value": { + "hexValue": "30783035", + "id": 2282, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1016:4:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_5_by_1", + "typeString": "int_const 5" + }, + "value": "0x05" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 2286, + "mutability": "constant", + "name": "SCRIPT_HASH_TESTNET_BYTE", + "nameLocation": "1050:24:17", + "nodeType": "VariableDeclaration", + "scope": 3743, + "src": "1026:55:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "typeName": { + "id": 2284, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "1026:6:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "value": { + "hexValue": "30786334", + "id": 2285, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1077:4:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_196_by_1", + "typeString": "int_const 196" + }, + "value": "0xc4" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 2289, + "mutability": "constant", + "name": "BECH32_WORD_SIZE", + "nameLocation": "1110:16:17", + "nodeType": "VariableDeclaration", + "scope": 3743, + "src": "1088:42:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2287, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1088:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "35", + "id": 2288, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1129:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_5_by_1", + "typeString": "int_const 5" + }, + "value": "5" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 2292, + "mutability": "constant", + "name": "BYTE_SIZE", + "nameLocation": "1158:9:17", + "nodeType": "VariableDeclaration", + "scope": 3743, + "src": "1136:35:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2290, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1136:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "38", + "id": 2291, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1170:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 2295, + "mutability": "constant", + "name": "WITNESS_VERSION_0", + "nameLocation": "1202:17:17", + "nodeType": "VariableDeclaration", + "scope": 3743, + "src": "1178:48:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "typeName": { + "id": 2293, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "1178:6:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "value": { + "hexValue": "30783030", + "id": 2294, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1222:4:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x00" + }, + "visibility": "private" + }, + { + "constant": true, + "id": 2298, + "mutability": "constant", + "name": "WITNESS_VERSION_1", + "nameLocation": "1256:17:17", + "nodeType": "VariableDeclaration", + "scope": 3743, + "src": "1232:48:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "typeName": { + "id": 2296, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "1232:6:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "value": { + "hexValue": "30783031", + "id": 2297, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1276:4:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "0x01" + }, + "visibility": "private" + }, + { + "canonicalName": "BtcUtils.TxRawOutput", + "id": 2307, + "members": [ + { + "constant": false, + "id": 2300, + "mutability": "mutable", + "name": "value", + "nameLocation": "1502:5:17", + "nodeType": "VariableDeclaration", + "scope": 2307, + "src": "1495:12:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 2299, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "1495:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2302, + "mutability": "mutable", + "name": "pkScript", + "nameLocation": "1523:8:17", + "nodeType": "VariableDeclaration", + "scope": 2307, + "src": "1517:14:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2301, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1517:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2304, + "mutability": "mutable", + "name": "scriptSize", + "nameLocation": "1549:10:17", + "nodeType": "VariableDeclaration", + "scope": 2307, + "src": "1541:18:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2303, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1541:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2306, + "mutability": "mutable", + "name": "totalSize", + "nameLocation": "1577:9:17", + "nodeType": "VariableDeclaration", + "scope": 2307, + "src": "1569:17:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2305, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1569:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "name": "TxRawOutput", + "nameLocation": "1473:11:17", + "nodeType": "StructDefinition", + "scope": 3743, + "src": "1466:127:17", + "visibility": "public" + }, + { + "body": { + "id": 2314, + "nodeType": "Block", + "src": "1656:31:17", + "statements": [ + { + "expression": { + "hexValue": "302e322e31", + "id": 2312, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1673:7:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5709a9427ab590b580a826677786fd6b206c47e15c9470295fe07eeb734e6893", + "typeString": "literal_string \"0.2.1\"" + }, + "value": "0.2.1" + }, + "functionReturnParameters": 2311, + "id": 2313, + "nodeType": "Return", + "src": "1666:14:17" + } + ] + }, + "functionSelector": "54fd4d50", + "id": 2315, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "version", + "nameLocation": "1608:7:17", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2308, + "nodeType": "ParameterList", + "parameters": [], + "src": "1615:2:17" + }, + "returnParameters": { + "id": 2311, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2310, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2315, + "src": "1641:13:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2309, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1641:6:17", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1640:15:17" + }, + "scope": 3743, + "src": "1599:88:17", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 2453, + "nodeType": "Block", + "src": "1999:1065:17", + "statements": [ + { + "assignments": [ + 2326 + ], + "declarations": [ + { + "constant": false, + "id": 2326, + "mutability": "mutable", + "name": "currentPosition", + "nameLocation": "2014:15:17", + "nodeType": "VariableDeclaration", + "scope": 2453, + "src": "2009:20:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2325, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2009:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2328, + "initialValue": { + "hexValue": "34", + "id": 2327, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2032:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2009:24:17" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2339, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 2333, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 2329, + "name": "rawTx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2318, + "src": "2048:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 2331, + "indexExpression": { + "hexValue": "34", + "id": 2330, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2054:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2048:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30783030", + "id": 2332, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2060:4:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x00" + }, + "src": "2048:16:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 2338, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 2334, + "name": "rawTx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2318, + "src": "2068:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 2336, + "indexExpression": { + "hexValue": "35", + "id": 2335, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2074:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_5_by_1", + "typeString": "int_const 5" + }, + "value": "5" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2068:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30783031", + "id": 2337, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2080:4:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "0x01" + }, + "src": "2068:16:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2048:36:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2345, + "nodeType": "IfStatement", + "src": "2044:125:17", + "trueBody": { + "id": 2344, + "nodeType": "Block", + "src": "2086:83:17", + "statements": [ + { + "expression": { + "id": 2342, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2340, + "name": "currentPosition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2326, + "src": "2139:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "36", + "id": 2341, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2157:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_6_by_1", + "typeString": "int_const 6" + }, + "value": "6" + }, + "src": "2139:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2343, + "nodeType": "ExpressionStatement", + "src": "2139:19:17" + } + ] + } + }, + { + "assignments": [ + 2347, + 2349 + ], + "declarations": [ + { + "constant": false, + "id": 2347, + "mutability": "mutable", + "name": "inputCount", + "nameLocation": "2195:10:17", + "nodeType": "VariableDeclaration", + "scope": 2453, + "src": "2188:17:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 2346, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "2188:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2349, + "mutability": "mutable", + "name": "inputCountSize", + "nameLocation": "2214:14:17", + "nodeType": "VariableDeclaration", + "scope": 2453, + "src": "2207:21:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 2348, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "2207:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + } + ], + "id": 2354, + "initialValue": { + "arguments": [ + { + "id": 2351, + "name": "currentPosition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2326, + "src": "2252:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2352, + "name": "rawTx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2318, + "src": "2269:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 2350, + "name": "parseCompactSizeInt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3518, + "src": "2232:19:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint64_$_t_uint16_$", + "typeString": "function (uint256,bytes memory) pure returns (uint64,uint16)" + } + }, + "id": 2353, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2232:43:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", + "typeString": "tuple(uint64,uint16)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2187:88:17" + }, + { + "expression": { + "id": 2357, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2355, + "name": "currentPosition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2326, + "src": "2285:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "id": 2356, + "name": "inputCountSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2349, + "src": "2304:14:17", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "2285:33:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2358, + "nodeType": "ExpressionStatement", + "src": "2285:33:17" + }, + { + "assignments": [ + 2360 + ], + "declarations": [ + { + "constant": false, + "id": 2360, + "mutability": "mutable", + "name": "scriptLarge", + "nameLocation": "2336:11:17", + "nodeType": "VariableDeclaration", + "scope": 2453, + "src": "2329:18:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 2359, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "2329:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 2361, + "nodeType": "VariableDeclarationStatement", + "src": "2329:18:17" + }, + { + "assignments": [ + 2363 + ], + "declarations": [ + { + "constant": false, + "id": 2363, + "mutability": "mutable", + "name": "scriptLargeSize", + "nameLocation": "2364:15:17", + "nodeType": "VariableDeclaration", + "scope": 2453, + "src": "2357:22:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 2362, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "2357:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + } + ], + "id": 2364, + "nodeType": "VariableDeclarationStatement", + "src": "2357:22:17" + }, + { + "body": { + "id": 2396, + "nodeType": "Block", + "src": "2429:213:17", + "statements": [ + { + "expression": { + "id": 2377, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2375, + "name": "currentPosition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2326, + "src": "2443:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "id": 2376, + "name": "OUTPOINT_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2265, + "src": "2462:13:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "2443:32:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2378, + "nodeType": "ExpressionStatement", + "src": "2443:32:17" + }, + { + "expression": { + "id": 2386, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "id": 2379, + "name": "scriptLarge", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2360, + "src": "2490:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + { + "id": 2380, + "name": "scriptLargeSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2363, + "src": "2503:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + } + ], + "id": 2381, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "2489:30:17", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", + "typeString": "tuple(uint64,uint16)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 2383, + "name": "currentPosition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2326, + "src": "2542:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2384, + "name": "rawTx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2318, + "src": "2559:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 2382, + "name": "parseCompactSizeInt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3518, + "src": "2522:19:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint64_$_t_uint16_$", + "typeString": "function (uint256,bytes memory) pure returns (uint64,uint16)" + } + }, + "id": 2385, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2522:43:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", + "typeString": "tuple(uint64,uint16)" + } + }, + "src": "2489:76:17", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2387, + "nodeType": "ExpressionStatement", + "src": "2489:76:17" + }, + { + "expression": { + "id": 2394, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2388, + "name": "currentPosition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2326, + "src": "2579:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 2393, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 2391, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2389, + "name": "scriptLarge", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2360, + "src": "2598:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2390, + "name": "scriptLargeSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2363, + "src": "2612:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "2598:29:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "34", + "id": 2392, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2630:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "2598:33:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "2579:52:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2395, + "nodeType": "ExpressionStatement", + "src": "2579:52:17" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 2371, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2369, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2366, + "src": "2408:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 2370, + "name": "inputCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2347, + "src": "2412:10:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "2408:14:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2397, + "initializationExpression": { + "assignments": [ + 2366 + ], + "declarations": [ + { + "constant": false, + "id": 2366, + "mutability": "mutable", + "name": "i", + "nameLocation": "2401:1:17", + "nodeType": "VariableDeclaration", + "scope": 2397, + "src": "2394:8:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 2365, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "2394:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 2368, + "initialValue": { + "hexValue": "30", + "id": 2367, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2405:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2394:12:17" + }, + "loopExpression": { + "expression": { + "id": 2373, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "2424:3:17", + "subExpression": { + "id": 2372, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2366, + "src": "2424:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 2374, + "nodeType": "ExpressionStatement", + "src": "2424:3:17" + }, + "nodeType": "ForStatement", + "src": "2389:253:17" + }, + { + "assignments": [ + 2399, + 2401 + ], + "declarations": [ + { + "constant": false, + "id": 2399, + "mutability": "mutable", + "name": "outputCount", + "nameLocation": "2660:11:17", + "nodeType": "VariableDeclaration", + "scope": 2453, + "src": "2653:18:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 2398, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "2653:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2401, + "mutability": "mutable", + "name": "outputCountSize", + "nameLocation": "2680:15:17", + "nodeType": "VariableDeclaration", + "scope": 2453, + "src": "2673:22:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 2400, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "2673:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + } + ], + "id": 2406, + "initialValue": { + "arguments": [ + { + "id": 2403, + "name": "currentPosition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2326, + "src": "2719:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2404, + "name": "rawTx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2318, + "src": "2736:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 2402, + "name": "parseCompactSizeInt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3518, + "src": "2699:19:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint64_$_t_uint16_$", + "typeString": "function (uint256,bytes memory) pure returns (uint64,uint16)" + } + }, + "id": 2405, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2699:43:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", + "typeString": "tuple(uint64,uint16)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2652:90:17" + }, + { + "expression": { + "id": 2409, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2407, + "name": "currentPosition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2326, + "src": "2752:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "id": 2408, + "name": "outputCountSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2401, + "src": "2771:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "2752:34:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2410, + "nodeType": "ExpressionStatement", + "src": "2752:34:17" + }, + { + "assignments": [ + 2415 + ], + "declarations": [ + { + "constant": false, + "id": 2415, + "mutability": "mutable", + "name": "result", + "nameLocation": "2818:6:17", + "nodeType": "VariableDeclaration", + "scope": 2453, + "src": "2797:27:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput[]" + }, + "typeName": { + "baseType": { + "id": 2413, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2412, + "name": "TxRawOutput", + "nameLocations": [ + "2797:11:17" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2307, + "src": "2797:11:17" + }, + "referencedDeclaration": 2307, + "src": "2797:11:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_storage_ptr", + "typeString": "struct BtcUtils.TxRawOutput" + } + }, + "id": 2414, + "nodeType": "ArrayTypeName", + "src": "2797:13:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_storage_$dyn_storage_ptr", + "typeString": "struct BtcUtils.TxRawOutput[]" + } + }, + "visibility": "internal" + } + ], + "id": 2422, + "initialValue": { + "arguments": [ + { + "id": 2420, + "name": "outputCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2399, + "src": "2845:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 2419, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "2827:17:17", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (struct BtcUtils.TxRawOutput memory[] memory)" + }, + "typeName": { + "baseType": { + "id": 2417, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2416, + "name": "TxRawOutput", + "nameLocations": [ + "2831:11:17" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2307, + "src": "2831:11:17" + }, + "referencedDeclaration": 2307, + "src": "2831:11:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_storage_ptr", + "typeString": "struct BtcUtils.TxRawOutput" + } + }, + "id": 2418, + "nodeType": "ArrayTypeName", + "src": "2831:13:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_storage_$dyn_storage_ptr", + "typeString": "struct BtcUtils.TxRawOutput[]" + } + } + }, + "id": 2421, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2827:30:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2797:60:17" + }, + { + "body": { + "id": 2449, + "nodeType": "Block", + "src": "2906:129:17", + "statements": [ + { + "expression": { + "id": 2440, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 2433, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2415, + "src": "2920:6:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput memory[] memory" + } + }, + "id": 2435, + "indexExpression": { + "id": 2434, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2424, + "src": "2927:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2920:9:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 2437, + "name": "currentPosition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2326, + "src": "2949:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2438, + "name": "rawTx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2318, + "src": "2966:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 2436, + "name": "extractRawOutput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2560, + "src": "2932:16:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_struct$_TxRawOutput_$2307_memory_ptr_$", + "typeString": "function (uint256,bytes memory) pure returns (struct BtcUtils.TxRawOutput memory)" + } + }, + "id": 2439, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2932:40:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput memory" + } + }, + "src": "2920:52:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput memory" + } + }, + "id": 2441, + "nodeType": "ExpressionStatement", + "src": "2920:52:17" + }, + { + "expression": { + "id": 2447, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2442, + "name": "currentPosition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2326, + "src": "2986:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "expression": { + "baseExpression": { + "id": 2443, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2415, + "src": "3005:6:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput memory[] memory" + } + }, + "id": 2445, + "indexExpression": { + "id": 2444, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2424, + "src": "3012:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3005:9:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput memory" + } + }, + "id": 2446, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3015:9:17", + "memberName": "totalSize", + "nodeType": "MemberAccess", + "referencedDeclaration": 2306, + "src": "3005:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2986:38:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2448, + "nodeType": "ExpressionStatement", + "src": "2986:38:17" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2429, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2427, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2424, + "src": "2884:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 2428, + "name": "outputCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2399, + "src": "2888:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "2884:15:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2450, + "initializationExpression": { + "assignments": [ + 2424 + ], + "declarations": [ + { + "constant": false, + "id": 2424, + "mutability": "mutable", + "name": "i", + "nameLocation": "2877:1:17", + "nodeType": "VariableDeclaration", + "scope": 2450, + "src": "2872:6:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2423, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "2872:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2426, + "initialValue": { + "hexValue": "30", + "id": 2425, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2881:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2872:10:17" + }, + "loopExpression": { + "expression": { + "id": 2431, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "2901:3:17", + "subExpression": { + "id": 2430, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2424, + "src": "2901:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2432, + "nodeType": "ExpressionStatement", + "src": "2901:3:17" + }, + "nodeType": "ForStatement", + "src": "2867:168:17" + }, + { + "expression": { + "id": 2451, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2415, + "src": "3051:6:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput memory[] memory" + } + }, + "functionReturnParameters": 2324, + "id": 2452, + "nodeType": "Return", + "src": "3044:13:17" + } + ] + }, + "documentation": { + "id": 2316, + "nodeType": "StructuredDocumentation", + "src": "1693:216:17", + "text": "@notice Parse a raw transaction to get an array of its outputs in a structured representation\n @param rawTx the raw transaction\n @return An array of `TxRawOutput` with the outputs of the transaction" + }, + "functionSelector": "00f5b491", + "id": 2454, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getOutputs", + "nameLocation": "1923:10:17", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2319, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2318, + "mutability": "mutable", + "name": "rawTx", + "nameLocation": "1949:5:17", + "nodeType": "VariableDeclaration", + "scope": 2454, + "src": "1934:20:17", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2317, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1934:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1933:22:17" + }, + "returnParameters": { + "id": 2324, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2323, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2454, + "src": "1977:20:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput[]" + }, + "typeName": { + "baseType": { + "id": 2321, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2320, + "name": "TxRawOutput", + "nameLocations": [ + "1977:11:17" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2307, + "src": "1977:11:17" + }, + "referencedDeclaration": 2307, + "src": "1977:11:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_storage_ptr", + "typeString": "struct BtcUtils.TxRawOutput" + } + }, + "id": 2322, + "nodeType": "ArrayTypeName", + "src": "1977:13:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_storage_$dyn_storage_ptr", + "typeString": "struct BtcUtils.TxRawOutput[]" + } + }, + "visibility": "internal" + } + ], + "src": "1976:22:17" + }, + "scope": 3743, + "src": "1914:1150:17", + "stateMutability": "pure", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 2559, "nodeType": "Block", - "src": "1665:1065:17", + "src": "3173:699:17", "statements": [ { - "assignments": [ - 2303 - ], - "declarations": [ - { - "constant": false, - "id": 2303, - "mutability": "mutable", - "name": "currentPosition", - "nameLocation": "1680:15:17", - "nodeType": "VariableDeclaration", - "scope": 2430, - "src": "1675:20:17", - "stateVariable": false, - "storageLocation": "default", + "assignments": [ + 2466 + ], + "declarations": [ + { + "constant": false, + "id": 2466, + "mutability": "mutable", + "name": "result", + "nameLocation": "3202:6:17", + "nodeType": "VariableDeclaration", + "scope": 2559, + "src": "3183:25:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput" + }, + "typeName": { + "id": 2465, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2464, + "name": "TxRawOutput", + "nameLocations": [ + "3183:11:17" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2307, + "src": "3183:11:17" + }, + "referencedDeclaration": 2307, + "src": "3183:11:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_storage_ptr", + "typeString": "struct BtcUtils.TxRawOutput" + } + }, + "visibility": "internal" + } + ], + "id": 2473, + "initialValue": { + "arguments": [ + { + "hexValue": "30", + "id": 2468, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3223:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "hexValue": "", + "id": 2469, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3226:2:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + }, + { + "hexValue": "30", + "id": 2470, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3230:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "hexValue": "30", + "id": 2471, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3233:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 2467, + "name": "TxRawOutput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2307, + "src": "3211:11:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_TxRawOutput_$2307_storage_ptr_$", + "typeString": "type(struct BtcUtils.TxRawOutput storage pointer)" + } + }, + "id": 2472, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "structConstructorCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3211:24:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3183:52:17" + }, + { + "expression": { + "id": 2487, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2474, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2466, + "src": "3245:6:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput memory" + } + }, + "id": 2476, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3252:5:17", + "memberName": "value", + "nodeType": "MemberAccess", + "referencedDeclaration": 2300, + "src": "3245:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "id": 2480, + "name": "position", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2456, + "src": "3297:8:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2483, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2481, + "name": "position", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2456, + "src": "3307:8:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2482, + "name": "OUTPUT_VALUE_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "3318:17:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "3307:28:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2484, + "name": "rawTx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2458, + "src": "3337:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2479, + "name": "calculateLittleEndianFragment", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3584, + "src": "3267:29:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256,bytes memory) pure returns (uint256)" + } + }, + "id": 2485, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3267:76:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2478, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3260:6:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint64_$", + "typeString": "type(uint64)" + }, + "typeName": { + "id": 2477, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "3260:6:17", + "typeDescriptions": {} + } + }, + "id": 2486, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3260:84:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "3245:99:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 2488, + "nodeType": "ExpressionStatement", + "src": "3245:99:17" + }, + { + "expression": { + "id": 2491, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2489, + "name": "position", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2456, + "src": "3354:8:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "id": 2490, + "name": "OUTPUT_VALUE_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "3366:17:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "3354:29:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2492, + "nodeType": "ExpressionStatement", + "src": "3354:29:17" + }, + { + "assignments": [ + 2494, + 2496 + ], + "declarations": [ + { + "constant": false, + "id": 2494, + "mutability": "mutable", + "name": "scriptLength", + "nameLocation": "3402:12:17", + "nodeType": "VariableDeclaration", + "scope": 2559, + "src": "3395:19:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 2493, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "3395:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2496, + "mutability": "mutable", + "name": "scriptLengthSize", + "nameLocation": "3423:16:17", + "nodeType": "VariableDeclaration", + "scope": 2559, + "src": "3416:23:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 2495, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "3416:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + } + ], + "id": 2501, + "initialValue": { + "arguments": [ + { + "id": 2498, + "name": "position", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2456, + "src": "3463:8:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2499, + "name": "rawTx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2458, + "src": "3473:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2497, + "name": "parseCompactSizeInt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3518, + "src": "3443:19:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint64_$_t_uint16_$", + "typeString": "function (uint256,bytes memory) pure returns (uint64,uint16)" + } + }, + "id": 2500, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3443:36:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", + "typeString": "tuple(uint64,uint16)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3394:85:17" + }, + { + "expression": { + "id": 2504, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2502, + "name": "position", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2456, + "src": "3489:8:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "id": 2503, + "name": "scriptLengthSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2496, + "src": "3501:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "3489:28:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2505, + "nodeType": "ExpressionStatement", + "src": "3489:28:17" + }, + { + "assignments": [ + 2507 + ], + "declarations": [ + { + "constant": false, + "id": 2507, + "mutability": "mutable", + "name": "pkScript", + "nameLocation": "3541:8:17", + "nodeType": "VariableDeclaration", + "scope": 2559, + "src": "3528:21:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2506, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3528:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2512, + "initialValue": { + "arguments": [ + { + "id": 2510, + "name": "scriptLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2494, + "src": "3562:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + ], + "id": 2509, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "3552:9:17", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 2508, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3556:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "id": 2511, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3552:23:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3528:47:17" + }, + { + "body": { + "id": 2533, + "nodeType": "Block", + "src": "3627:58:17", + "statements": [ + { + "expression": { + "id": 2531, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 2523, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2507, + "src": "3641:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2525, + "indexExpression": { + "id": 2524, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2514, + "src": "3650:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3641:11:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 2526, + "name": "rawTx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2458, + "src": "3655:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2530, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2529, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2527, + "name": "position", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2456, + "src": "3661:8:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2528, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2514, + "src": "3672:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "3661:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3655:19:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "3641:33:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 2532, + "nodeType": "ExpressionStatement", + "src": "3641:33:17" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 2519, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2517, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2514, + "src": "3604:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 2518, + "name": "scriptLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2494, + "src": "3608:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "3604:16:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2534, + "initializationExpression": { + "assignments": [ + 2514 + ], + "declarations": [ + { + "constant": false, + "id": 2514, + "mutability": "mutable", + "name": "i", + "nameLocation": "3597:1:17", + "nodeType": "VariableDeclaration", + "scope": 2534, + "src": "3590:8:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 2513, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "3590:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "id": 2516, + "initialValue": { + "hexValue": "30", + "id": 2515, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3601:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "3590:12:17" + }, + "loopExpression": { + "expression": { + "id": 2521, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "3622:3:17", + "subExpression": { + "id": 2520, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2514, + "src": "3622:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "id": 2522, + "nodeType": "ExpressionStatement", + "src": "3622:3:17" + }, + "nodeType": "ForStatement", + "src": "3585:100:17" + }, + { + "expression": { + "id": 2539, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2535, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2466, + "src": "3694:6:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput memory" + } + }, + "id": 2537, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3701:8:17", + "memberName": "pkScript", + "nodeType": "MemberAccess", + "referencedDeclaration": 2302, + "src": "3694:15:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2538, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2507, + "src": "3712:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "3694:26:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2540, + "nodeType": "ExpressionStatement", + "src": "3694:26:17" + }, + { + "expression": { + "id": 2545, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2541, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2466, + "src": "3730:6:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput memory" + } + }, + "id": 2543, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3737:10:17", + "memberName": "scriptSize", + "nodeType": "MemberAccess", + "referencedDeclaration": 2304, + "src": "3730:17:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2544, + "name": "scriptLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2494, + "src": "3750:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "3730:32:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2546, + "nodeType": "ExpressionStatement", + "src": "3730:32:17" + }, + { + "expression": { + "id": 2555, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 2547, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2466, + "src": "3772:6:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput memory" + } + }, + "id": 2549, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3779:9:17", + "memberName": "totalSize", + "nodeType": "MemberAccess", + "referencedDeclaration": 2306, + "src": "3772:16:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 2554, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 2552, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2550, + "name": "OUTPUT_VALUE_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "3791:17:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2551, + "name": "scriptLength", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2494, + "src": "3811:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "3791:32:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } }, - "typeName": { - "id": 2302, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1675:4:17", + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2553, + "name": "scriptLengthSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2496, + "src": "3826:16:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_uint16", + "typeString": "uint16" } }, - "visibility": "internal" + "src": "3791:51:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "3772:70:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ], - "id": 2305, - "initialValue": { - "hexValue": "34", - "id": 2304, + }, + "id": 2556, + "nodeType": "ExpressionStatement", + "src": "3772:70:17" + }, + { + "expression": { + "id": 2557, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2466, + "src": "3859:6:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput memory" + } + }, + "functionReturnParameters": 2463, + "id": 2558, + "nodeType": "Return", + "src": "3852:13:17" + } + ] + }, + "id": 2560, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "extractRawOutput", + "nameLocation": "3079:16:17", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2459, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2456, + "mutability": "mutable", + "name": "position", + "nameLocation": "3101:8:17", + "nodeType": "VariableDeclaration", + "scope": 2560, + "src": "3096:13:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2455, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3096:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2458, + "mutability": "mutable", + "name": "rawTx", + "nameLocation": "3124:5:17", + "nodeType": "VariableDeclaration", + "scope": 2560, + "src": "3111:18:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2457, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3111:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "3095:35:17" + }, + "returnParameters": { + "id": 2463, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2462, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2560, + "src": "3153:18:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", + "typeString": "struct BtcUtils.TxRawOutput" + }, + "typeName": { + "id": 2461, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2460, + "name": "TxRawOutput", + "nameLocations": [ + "3153:11:17" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2307, + "src": "3153:11:17" + }, + "referencedDeclaration": 2307, + "src": "3153:11:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_TxRawOutput_$2307_storage_ptr", + "typeString": "struct BtcUtils.TxRawOutput" + } + }, + "visibility": "internal" + } + ], + "src": "3152:20:17" + }, + "scope": 3743, + "src": "3070:802:17", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 2621, + "nodeType": "Block", + "src": "4564:618:17", + "statements": [ + { + "condition": { + "arguments": [ + { + "id": 2571, + "name": "outputScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "4592:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 2570, + "name": "isP2PKHOutput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2675, + "src": "4578:13:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", + "typeString": "function (bytes memory) pure returns (bool)" + } + }, + "id": 2572, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nodeType": "Literal", - "src": "1698:1:17", + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4578:27:17", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" + "typeIdentifier": "t_bool", + "typeString": "bool" + } }, - "nodeType": "VariableDeclarationStatement", - "src": "1675:24:17" + "id": 2579, + "nodeType": "IfStatement", + "src": "4574:108:17", + "trueBody": { + "id": 2578, + "nodeType": "Block", + "src": "4607:75:17", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2574, + "name": "outputScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "4649:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "id": 2575, + "name": "mainnet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2565, + "src": "4663:7:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2573, + "name": "parsePayToPubKeyHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2874, + "src": "4628:20:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$_t_bool_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes calldata,bool) pure returns (bytes memory)" + } + }, + "id": 2576, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4628:43:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 2569, + "id": 2577, + "nodeType": "Return", + "src": "4621:50:17" + } + ] + } }, { "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "arguments": [ + { + "id": 2581, + "name": "outputScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "4708:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 2580, + "name": "isP2SHOutput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2714, + "src": "4695:12:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", + "typeString": "function (bytes memory) pure returns (bool)" + } }, - "id": 2316, + "id": 2582, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 2310, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2306, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2295, - "src": "1714:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 2308, - "indexExpression": { - "hexValue": "34", - "id": 2307, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4695:26:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2589, + "nodeType": "IfStatement", + "src": "4691:107:17", + "trueBody": { + "id": 2588, + "nodeType": "Block", + "src": "4723:75:17", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2584, + "name": "outputScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "4765:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "id": 2585, + "name": "mainnet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2565, + "src": "4779:7:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2583, + "name": "parsePayToScriptHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2938, + "src": "4744:20:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$_t_bool_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes calldata,bool) pure returns (bytes memory)" + } + }, + "id": 2586, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nodeType": "Literal", - "src": "1720:1:17", + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4744:43:17", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1714:8:17", + "functionReturnParameters": 2569, + "id": 2587, + "nodeType": "Return", + "src": "4737:50:17" + } + ] + } + }, + { + "condition": { + "arguments": [ + { + "id": 2591, + "name": "outputScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "4826:12:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30783030", - "id": 2309, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1726:4:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0x00" - }, - "src": "1714:16:17", + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 2590, + "name": "isP2WPKHOutput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2746, + "src": "4811:14:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", + "typeString": "function (bytes memory) pure returns (bool)" } }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 2315, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2311, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2295, - "src": "1734:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 2313, - "indexExpression": { - "hexValue": "35", - "id": 2312, + "id": 2592, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4811:28:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2598, + "nodeType": "IfStatement", + "src": "4807:107:17", + "trueBody": { + "id": 2597, + "nodeType": "Block", + "src": "4841:73:17", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2594, + "name": "outputScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "4890:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 2593, + "name": "parsePayToWitnessPubKeyHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3007, + "src": "4862:27:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes calldata) pure returns (bytes memory)" + } + }, + "id": 2595, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nodeType": "Literal", - "src": "1740:1:17", + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4862:41:17", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_rational_5_by_1", - "typeString": "int_const 5" - }, - "value": "5" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1734:8:17", + "functionReturnParameters": 2569, + "id": 2596, + "nodeType": "Return", + "src": "4855:48:17" + } + ] + } + }, + { + "condition": { + "arguments": [ + { + "id": 2600, + "name": "outputScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "4941:12:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30783031", - "id": 2314, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1746:4:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "0x01" - }, - "src": "1734:16:17", + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 2599, + "name": "isP2WSHOutput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2778, + "src": "4927:13:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", + "typeString": "function (bytes memory) pure returns (bool)" } }, - "src": "1714:36:17", + "id": 2601, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4927:27:17", + "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 2322, + "id": 2607, "nodeType": "IfStatement", - "src": "1710:125:17", + "src": "4923:106:17", "trueBody": { - "id": 2321, + "id": 2606, "nodeType": "Block", - "src": "1752:83:17", + "src": "4956:73:17", "statements": [ { "expression": { - "id": 2319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2317, - "name": "currentPosition", + "arguments": [ + { + "id": 2603, + "name": "outputScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "5005:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 2602, + "name": "parsePayToWitnessScriptHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2303, - "src": "1805:15:17", + "referencedDeclaration": 3076, + "src": "4977:27:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes calldata) pure returns (bytes memory)" } }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "36", - "id": 2318, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1823:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_6_by_1", - "typeString": "int_const 6" - }, - "value": "6" - }, - "src": "1805:19:17", + "id": 2604, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4977:41:17", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } }, - "id": 2320, - "nodeType": "ExpressionStatement", - "src": "1805:19:17" + "functionReturnParameters": 2569, + "id": 2605, + "nodeType": "Return", + "src": "4970:48:17" } ] } }, { - "assignments": [ - 2324, - 2326 - ], - "declarations": [ - { - "constant": false, - "id": 2324, - "mutability": "mutable", - "name": "inputCount", - "nameLocation": "1861:10:17", - "nodeType": "VariableDeclaration", - "scope": 2430, - "src": "1854:17:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 2323, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "1854:6:17", + "condition": { + "arguments": [ + { + "id": 2609, + "name": "outputScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "5055:12:17", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2326, - "mutability": "mutable", - "name": "inputCountSize", - "nameLocation": "1880:14:17", - "nodeType": "VariableDeclaration", - "scope": 2430, - "src": "1873:21:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 2325, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "1873:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" } - }, - "visibility": "internal" + ], + "id": 2608, + "name": "isP2TROutput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2810, + "src": "5042:12:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", + "typeString": "function (bytes memory) pure returns (bool)" + } + }, + "id": 2610, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5042:26:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" } - ], - "id": 2331, - "initialValue": { + }, + "id": 2616, + "nodeType": "IfStatement", + "src": "5038:95:17", + "trueBody": { + "id": 2615, + "nodeType": "Block", + "src": "5070:63:17", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2612, + "name": "outputScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "5109:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 2611, + "name": "parsePayToTaproot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3145, + "src": "5091:17:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes calldata) pure returns (bytes memory)" + } + }, + "id": 2613, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5091:31:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 2569, + "id": 2614, + "nodeType": "Return", + "src": "5084:38:17" + } + ] + } + }, + { + "expression": { "arguments": [ { - "id": 2328, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2303, - "src": "1918:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 2329, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2295, - "src": "1935:5:17", + "hexValue": "556e737570706f72746564207363726970742074797065", + "id": 2618, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5149:25:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } + "typeIdentifier": "t_stringliteral_82bc120954d4025ad83f4cfd56c5f75d5f05a659cc4489ef281377ffa1d8ef8b", + "typeString": "literal_string \"Unsupported script type\"" + }, + "value": "Unsupported script type" } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_stringliteral_82bc120954d4025ad83f4cfd56c5f75d5f05a659cc4489ef281377ffa1d8ef8b", + "typeString": "literal_string \"Unsupported script type\"" } ], - "id": 2327, - "name": "parseCompactSizeInt", + "id": 2617, + "name": "revert", "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3161, - "src": "1898:19:17", + "overloadedDeclarations": [ + 4294967277, + 4294967277 + ], + "referencedDeclaration": 4294967277, + "src": "5142:6:17", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint64_$_t_uint16_$", - "typeString": "function (uint256,bytes memory) pure returns (uint64,uint16)" + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" } }, - "id": 2330, + "id": 2619, "isConstant": false, "isLValue": false, "isPure": false, @@ -12231,1256 +16406,1368 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "1898:43:17", + "src": "5142:33:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", - "typeString": "tuple(uint64,uint16)" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "nodeType": "VariableDeclarationStatement", - "src": "1853:88:17" - }, + "id": 2620, + "nodeType": "ExpressionStatement", + "src": "5142:33:17" + } + ] + }, + "documentation": { + "id": 2561, + "nodeType": "StructuredDocumentation", + "src": "3878:572:17", + "text": "@notice Parse a raw output script whose type is not known by the consumer. The function will\n return the corresponding address if the type of the script is supported or an error if not.\n For the addresses that are encoded with base58check the checksum bytes are not included in\n the resulting byte array\n @param outputScript the fragment of the raw transaction containing the raw output script\n @param mainnet if the address to generate is from mainnet or testnet\n @return The address bytes regarless of the output script type" + }, + "functionSelector": "c7ce85ac", + "id": 2622, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "outputScriptToAddress", + "nameLocation": "4464:21:17", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2566, + "nodeType": "ParameterList", + "parameters": [ { - "expression": { - "id": 2334, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2332, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2303, - "src": "1951:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 2333, - "name": "inputCountSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2326, - "src": "1970:14:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "1951:33:17", + "constant": false, + "id": 2563, + "mutability": "mutable", + "name": "outputScript", + "nameLocation": "4501:12:17", + "nodeType": "VariableDeclaration", + "scope": 2622, + "src": "4486:27:17", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2562, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4486:5:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" } }, - "id": 2335, - "nodeType": "ExpressionStatement", - "src": "1951:33:17" - }, - { - "assignments": [ - 2337 - ], - "declarations": [ - { - "constant": false, - "id": 2337, - "mutability": "mutable", - "name": "scriptLarge", - "nameLocation": "2002:11:17", - "nodeType": "VariableDeclaration", - "scope": 2430, - "src": "1995:18:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 2336, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "1995:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "id": 2338, - "nodeType": "VariableDeclarationStatement", - "src": "1995:18:17" + "visibility": "internal" }, { - "assignments": [ - 2340 - ], - "declarations": [ - { - "constant": false, - "id": 2340, - "mutability": "mutable", - "name": "scriptLargeSize", - "nameLocation": "2030:15:17", - "nodeType": "VariableDeclaration", - "scope": 2430, - "src": "2023:22:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 2339, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "2023:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" + "constant": false, + "id": 2565, + "mutability": "mutable", + "name": "mainnet", + "nameLocation": "4520:7:17", + "nodeType": "VariableDeclaration", + "scope": 2622, + "src": "4515:12:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2564, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4515:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" } - ], - "id": 2341, - "nodeType": "VariableDeclarationStatement", - "src": "2023:22:17" - }, + }, + "visibility": "internal" + } + ], + "src": "4485:43:17" + }, + "returnParameters": { + "id": 2569, + "nodeType": "ParameterList", + "parameters": [ { - "body": { - "id": 2373, - "nodeType": "Block", - "src": "2095:213:17", - "statements": [ - { - "expression": { - "id": 2354, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2352, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2303, - "src": "2109:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 2353, - "name": "OUTPOINT_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2256, - "src": "2128:13:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "2109:32:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2355, - "nodeType": "ExpressionStatement", - "src": "2109:32:17" + "constant": false, + "id": 2568, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2622, + "src": "4550:12:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2567, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4550:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "4549:14:17" + }, + "scope": 3743, + "src": "4455:727:17", + "stateMutability": "pure", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 2674, + "nodeType": "Block", + "src": "5522:309:17", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2672, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" }, - { - "expression": { - "id": 2363, + "id": 2665, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2658, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2649, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftHandSide": { - "components": [ - { - "id": 2356, - "name": "scriptLarge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2337, - "src": "2156:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "id": 2357, - "name": "scriptLargeSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2340, - "src": "2169:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - } - ], - "id": 2358, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2642, "isConstant": false, - "isInlineArray": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "nodeType": "TupleExpression", - "src": "2155:30:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", - "typeString": "tuple(uint64,uint16)" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 2360, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2303, - "src": "2208:15:17", + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2635, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 2630, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2625, + "src": "5539:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2631, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5548:6:17", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5539:15:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - { - "id": 2361, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2295, - "src": "2225:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "id": 2634, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "35", + "id": 2632, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5558:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_5_by_1", + "typeString": "int_const 5" + }, + "value": "5" + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2633, + "name": "HASH160_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2256, + "src": "5562:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5558:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ], - "id": 2359, - "name": "parseCompactSizeInt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3161, - "src": "2188:19:17", + }, + "src": "5539:35:17", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint64_$_t_uint16_$", - "typeString": "function (uint256,bytes memory) pure returns (uint64,uint16)" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 2362, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2188:43:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", - "typeString": "tuple(uint64,uint16)" - } - }, - "src": "2155:76:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2364, - "nodeType": "ExpressionStatement", - "src": "2155:76:17" - }, - { - "expression": { - "id": 2371, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2365, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2303, - "src": "2245:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 2370, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" }, - "id": 2368, + "id": 2641, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2366, - "name": "scriptLarge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2337, - "src": "2264:11:17", + "baseExpression": { + "id": 2636, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2625, + "src": "5590:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2638, + "indexExpression": { + "hexValue": "30", + "id": 2637, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5599:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5590:11:17", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, "nodeType": "BinaryOperation", - "operator": "+", + "operator": "==", "rightExpression": { - "id": 2367, - "name": "scriptLargeSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2340, - "src": "2278:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "2264:29:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "34", - "id": 2369, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2296:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "src": "2264:33:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "2245:52:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2372, - "nodeType": "ExpressionStatement", - "src": "2245:52:17" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 2348, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2346, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2343, - "src": "2074:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 2347, - "name": "inputCount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2324, - "src": "2078:10:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "2074:14:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2374, - "initializationExpression": { - "assignments": [ - 2343 - ], - "declarations": [ - { - "constant": false, - "id": 2343, - "mutability": "mutable", - "name": "i", - "nameLocation": "2067:1:17", - "nodeType": "VariableDeclaration", - "scope": 2374, - "src": "2060:8:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 2342, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2060:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "id": 2345, - "initialValue": { - "hexValue": "30", - "id": 2344, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2071:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "2060:12:17" - }, - "loopExpression": { - "expression": { - "id": 2350, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "2090:3:17", - "subExpression": { - "id": 2349, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2343, - "src": "2090:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 2351, - "nodeType": "ExpressionStatement", - "src": "2090:3:17" - }, - "nodeType": "ForStatement", - "src": "2055:253:17" - }, - { - "assignments": [ - 2376, - 2378 - ], - "declarations": [ - { - "constant": false, - "id": 2376, - "mutability": "mutable", - "name": "outputCount", - "nameLocation": "2326:11:17", - "nodeType": "VariableDeclaration", - "scope": 2430, - "src": "2319:18:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 2375, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2319:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2378, - "mutability": "mutable", - "name": "outputCountSize", - "nameLocation": "2346:15:17", - "nodeType": "VariableDeclaration", - "scope": 2430, - "src": "2339:22:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 2377, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "2339:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" - } - ], - "id": 2383, - "initialValue": { - "arguments": [ - { - "id": 2380, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2303, - "src": "2385:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 2381, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2295, - "src": "2402:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "expression": { + "id": 2639, + "name": "OpCodes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3770, + "src": "5605:7:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", + "typeString": "type(library OpCodes)" + } + }, + "id": 2640, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5613:6:17", + "memberName": "OP_DUP", + "nodeType": "MemberAccess", + "referencedDeclaration": 3748, + "src": "5605:14:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "5590:29:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5539:80:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 2648, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 2643, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2625, + "src": "5635:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2645, + "indexExpression": { + "hexValue": "31", + "id": 2644, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5644:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5635:11:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 2646, + "name": "OpCodes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3770, + "src": "5650:7:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", + "typeString": "type(library OpCodes)" + } + }, + "id": 2647, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5658:10:17", + "memberName": "OP_HASH160", + "nodeType": "MemberAccess", + "referencedDeclaration": 3751, + "src": "5650:18:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "5635:33:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5539:129:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2379, - "name": "parseCompactSizeInt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3161, - "src": "2365:19:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint64_$_t_uint16_$", - "typeString": "function (uint256,bytes memory) pure returns (uint64,uint16)" - } - }, - "id": 2382, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2365:43:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", - "typeString": "tuple(uint64,uint16)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2318:90:17" - }, - { - "expression": { - "id": 2386, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2384, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2303, - "src": "2418:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 2385, - "name": "outputCountSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2378, - "src": "2437:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "2418:34:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2387, - "nodeType": "ExpressionStatement", - "src": "2418:34:17" - }, - { - "assignments": [ - 2392 - ], - "declarations": [ - { - "constant": false, - "id": 2392, - "mutability": "mutable", - "name": "result", - "nameLocation": "2484:6:17", - "nodeType": "VariableDeclaration", - "scope": 2430, - "src": "2463:27:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput[]" - }, - "typeName": { - "baseType": { - "id": 2390, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2389, - "name": "TxRawOutput", - "nameLocations": [ - "2463:11:17" + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2657, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "baseExpression": { + "id": 2652, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2625, + "src": "5690:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2654, + "indexExpression": { + "hexValue": "32", + "id": 2653, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5699:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5690:11:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2292, - "src": "2463:11:17" + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 2651, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5684:5:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 2650, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "5684:5:17", + "typeDescriptions": {} + } + }, + "id": 2655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5684:18:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 2656, + "name": "HASH160_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2256, + "src": "5706:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } }, - "referencedDeclaration": 2292, - "src": "2463:11:17", + "src": "5684:34:17", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 2391, - "nodeType": "ArrayTypeName", - "src": "2463:13:17", + "src": "5539:179:17", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_storage_$dyn_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput[]" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "visibility": "internal" - } - ], - "id": 2399, - "initialValue": { - "arguments": [ - { - "id": 2397, - "name": "outputCount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2376, - "src": "2511:11:17", + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 2664, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 2659, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2625, + "src": "5734:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2661, + "indexExpression": { + "hexValue": "3233", + "id": 2660, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5743:2:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_23_by_1", + "typeString": "int_const 23" + }, + "value": "23" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5734:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 2662, + "name": "OpCodes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3770, + "src": "5750:7:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", + "typeString": "type(library OpCodes)" + } + }, + "id": 2663, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5758:14:17", + "memberName": "OP_EQUALVERIFY", + "nodeType": "MemberAccess", + "referencedDeclaration": 3754, + "src": "5750:22:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "5734:38:17", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_bool", + "typeString": "bool" } + }, + "src": "5539:233:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - ], - "id": 2396, + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 2671, "isConstant": false, "isLValue": false, - "isPure": true, + "isPure": false, "lValueRequested": false, - "nodeType": "NewExpression", - "src": "2493:17:17", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (struct BtcUtils.TxRawOutput memory[] memory)" - }, - "typeName": { - "baseType": { - "id": 2394, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2393, - "name": "TxRawOutput", - "nameLocations": [ - "2497:11:17" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2292, - "src": "2497:11:17" + "leftExpression": { + "baseExpression": { + "id": 2666, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2625, + "src": "5788:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2668, + "indexExpression": { + "hexValue": "3234", + "id": 2667, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5797:2:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_24_by_1", + "typeString": "int_const 24" }, - "referencedDeclaration": 2292, - "src": "2497:11:17", + "value": "24" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5788:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 2669, + "name": "OpCodes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3770, + "src": "5805:7:17", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput" + "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", + "typeString": "type(library OpCodes)" } }, - "id": 2395, - "nodeType": "ArrayTypeName", - "src": "2497:13:17", + "id": 2670, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "5813:11:17", + "memberName": "OP_CHECKSIG", + "nodeType": "MemberAccess", + "referencedDeclaration": 3757, + "src": "5805:19:17", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_storage_$dyn_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput[]" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } + }, + "src": "5788:36:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 2398, + "src": "5539:285:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 2629, + "id": 2673, + "nodeType": "Return", + "src": "5532:292:17" + } + ] + }, + "documentation": { + "id": 2623, + "nodeType": "StructuredDocumentation", + "src": "5188:256:17", + "text": "@notice Check if a raw output script is a pay-to-public-key-hash output\n @param pkScript the fragment of the raw transaction containing the raw output script\n @return Whether the script has a pay-to-public-key-hash output structure or not" + }, + "functionSelector": "facde656", + "id": 2675, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isP2PKHOutput", + "nameLocation": "5458:13:17", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2626, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2625, + "mutability": "mutable", + "name": "pkScript", + "nameLocation": "5485:8:17", + "nodeType": "VariableDeclaration", + "scope": 2675, + "src": "5472:21:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2624, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5472:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5471:23:17" + }, + "returnParameters": { + "id": 2629, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2628, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2675, + "src": "5516:4:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2627, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5516:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "5515:6:17" + }, + "scope": 3743, + "src": "5449:382:17", + "stateMutability": "pure", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 2713, + "nodeType": "Block", + "src": "6162:206:17", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2711, "isConstant": false, "isLValue": false, "isPure": false, - "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2493:30:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2463:60:17" - }, - { - "body": { - "id": 2426, - "nodeType": "Block", - "src": "2572:129:17", - "statements": [ - { - "expression": { - "id": 2417, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2704, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2695, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2688, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2410, - "name": "result", + "leftExpression": { + "expression": { + "id": 2683, + "name": "pkScript", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2392, - "src": "2586:6:17", + "referencedDeclaration": 2678, + "src": "6179:8:17", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } }, - "id": 2412, - "indexExpression": { - "id": 2411, - "name": "i", + "id": 2684, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6188:6:17", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6179:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2687, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "33", + "id": 2685, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6198:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2686, + "name": "HASH160_SIZE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2401, - "src": "2593:1:17", + "referencedDeclaration": 2256, + "src": "6202:12:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, + "src": "6198:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6179:35:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 2694, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 2689, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2678, + "src": "6230:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2691, + "indexExpression": { + "hexValue": "30", + "id": 2690, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6239:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, "isConstant": false, "isLValue": true, "isPure": false, - "lValueRequested": true, + "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2586:9:17", + "src": "6230:11:17", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 2414, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2303, - "src": "2615:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 2415, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2295, - "src": "2632:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2413, - "name": "extractRawOutput", + "id": 2692, + "name": "OpCodes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2537, - "src": "2598:16:17", + "referencedDeclaration": 3770, + "src": "6245:7:17", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_struct$_TxRawOutput_$2292_memory_ptr_$", - "typeString": "function (uint256,bytes memory) pure returns (struct BtcUtils.TxRawOutput memory)" + "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", + "typeString": "type(library OpCodes)" } }, - "id": 2416, + "id": 2693, "isConstant": false, "isLValue": false, - "isPure": false, - "kind": "functionCall", + "isPure": true, "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2598:40:17", - "tryCall": false, + "memberLocation": "6253:10:17", + "memberName": "OP_HASH160", + "nodeType": "MemberAccess", + "referencedDeclaration": 3751, + "src": "6245:18:17", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, - "src": "2586:52:17", + "src": "6230:33:17", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 2418, - "nodeType": "ExpressionStatement", - "src": "2586:52:17" + "src": "6179:84:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } }, - { - "expression": { - "id": 2424, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2419, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2303, - "src": "2652:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "expression": { + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2703, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { "baseExpression": { - "id": 2420, - "name": "result", + "id": 2698, + "name": "pkScript", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2392, - "src": "2671:6:17", + "referencedDeclaration": 2678, + "src": "6285:8:17", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } }, - "id": 2422, + "id": 2700, "indexExpression": { - "id": 2421, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2401, - "src": "2678:1:17", + "hexValue": "31", + "id": 2699, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6294:1:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2671:9:17", + "src": "6285:11:17", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } - }, - "id": 2423, + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 2697, "isConstant": false, - "isLValue": true, - "isPure": false, + "isLValue": false, + "isPure": true, "lValueRequested": false, - "memberLocation": "2681:9:17", - "memberName": "totalSize", - "nodeType": "MemberAccess", - "referencedDeclaration": 2291, - "src": "2671:19:17", + "nodeType": "ElementaryTypeNameExpression", + "src": "6279:5:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 2696, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "6279:5:17", + "typeDescriptions": {} } }, - "src": "2652:38:17", + "id": 2701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6279:18:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 2702, + "name": "HASH160_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2256, + "src": "6301:12:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2425, - "nodeType": "ExpressionStatement", - "src": "2652:38:17" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2406, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2404, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2401, - "src": "2550:1:17", + "src": "6279:34:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6179:134:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, "nodeType": "BinaryOperation", - "operator": "<", + "operator": "&&", "rightExpression": { - "id": 2405, - "name": "outputCount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2376, - "src": "2554:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "2550:15:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2427, - "initializationExpression": { - "assignments": [ - 2401 - ], - "declarations": [ - { - "constant": false, - "id": 2401, - "mutability": "mutable", - "name": "i", - "nameLocation": "2543:1:17", - "nodeType": "VariableDeclaration", - "scope": 2427, - "src": "2538:6:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2400, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2538:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 2403, - "initialValue": { - "hexValue": "30", - "id": 2402, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2547:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "2538:10:17" - }, - "loopExpression": { - "expression": { - "id": 2408, + "id": 2710, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "2567:3:17", - "subExpression": { - "id": 2407, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2401, - "src": "2567:1:17", + "leftExpression": { + "baseExpression": { + "id": 2705, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2678, + "src": "6329:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2707, + "indexExpression": { + "hexValue": "3232", + "id": 2706, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6338:2:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_22_by_1", + "typeString": "int_const 22" + }, + "value": "22" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6329:12:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 2708, + "name": "OpCodes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3770, + "src": "6345:7:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", + "typeString": "type(library OpCodes)" + } + }, + "id": 2709, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6353:8:17", + "memberName": "OP_EQUAL", + "nodeType": "MemberAccess", + "referencedDeclaration": 3763, + "src": "6345:16:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, + "src": "6329:32:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 2409, - "nodeType": "ExpressionStatement", - "src": "2567:3:17" - }, - "nodeType": "ForStatement", - "src": "2533:168:17" - }, - { - "expression": { - "id": 2428, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2392, - "src": "2717:6:17", + "src": "6179:182:17", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "functionReturnParameters": 2301, - "id": 2429, + "functionReturnParameters": 2682, + "id": 2712, "nodeType": "Return", - "src": "2710:13:17" + "src": "6172:189:17" } ] }, "documentation": { - "id": 2293, + "id": 2676, "nodeType": "StructuredDocumentation", - "src": "1359:216:17", - "text": "@notice Parse a raw transaction to get an array of its outputs in a structured representation\n @param rawTx the raw transaction\n @return An array of `TxRawOutput` with the outputs of the transaction" + "src": "5837:248:17", + "text": "@notice Check if a raw output script is a pay-to-script-hash output\n @param pkScript the fragment of the raw transaction containing the raw output script\n @return Whether the script has a pay-to-script-hash output structure or not" }, - "functionSelector": "00f5b491", - "id": 2431, + "functionSelector": "b42da4a2", + "id": 2714, "implemented": true, "kind": "function", "modifiers": [], - "name": "getOutputs", - "nameLocation": "1589:10:17", + "name": "isP2SHOutput", + "nameLocation": "6099:12:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 2296, + "id": 2679, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2295, + "id": 2678, "mutability": "mutable", - "name": "rawTx", - "nameLocation": "1615:5:17", + "name": "pkScript", + "nameLocation": "6125:8:17", "nodeType": "VariableDeclaration", - "scope": 2431, - "src": "1600:20:17", + "scope": 2714, + "src": "6112:21:17", "stateVariable": false, - "storageLocation": "calldata", + "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", + "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { - "id": 2294, + "id": 2677, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1600:5:17", + "src": "6112:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -13489,1315 +17776,1283 @@ "visibility": "internal" } ], - "src": "1599:22:17" + "src": "6111:23:17" }, "returnParameters": { - "id": 2301, + "id": 2682, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2300, + "id": 2681, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2431, - "src": "1643:20:17", + "scope": 2714, + "src": "6156:4:17", "stateVariable": false, - "storageLocation": "memory", + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput[]" + "typeIdentifier": "t_bool", + "typeString": "bool" }, "typeName": { - "baseType": { - "id": 2298, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2297, - "name": "TxRawOutput", - "nameLocations": [ - "1643:11:17" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2292, - "src": "1643:11:17" - }, - "referencedDeclaration": 2292, - "src": "1643:11:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput" - } - }, - "id": 2299, - "nodeType": "ArrayTypeName", - "src": "1643:13:17", + "id": 2680, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6156:4:17", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_storage_$dyn_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput[]" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, "visibility": "internal" } ], - "src": "1642:22:17" + "src": "6155:6:17" }, - "scope": 3228, - "src": "1580:1150:17", + "scope": 3743, + "src": "6090:278:17", "stateMutability": "pure", "virtual": false, "visibility": "public" }, { "body": { - "id": 2536, + "id": 2745, "nodeType": "Block", - "src": "2839:699:17", + "src": "6717:152:17", "statements": [ - { - "assignments": [ - 2443 - ], - "declarations": [ - { - "constant": false, - "id": 2443, - "mutability": "mutable", - "name": "result", - "nameLocation": "2868:6:17", - "nodeType": "VariableDeclaration", - "scope": 2536, - "src": "2849:25:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput" - }, - "typeName": { - "id": 2442, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2441, - "name": "TxRawOutput", - "nameLocations": [ - "2849:11:17" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2292, - "src": "2849:11:17" - }, - "referencedDeclaration": 2292, - "src": "2849:11:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput" - } - }, - "visibility": "internal" - } - ], - "id": 2450, - "initialValue": { - "arguments": [ - { - "hexValue": "30", - "id": 2445, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2889:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - { - "hexValue": "", - "id": 2446, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2892:2:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - { - "hexValue": "30", - "id": 2447, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2896:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - { - "hexValue": "30", - "id": 2448, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2899:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 2444, - "name": "TxRawOutput", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2292, - "src": "2877:11:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_TxRawOutput_$2292_storage_ptr_$", - "typeString": "type(struct BtcUtils.TxRawOutput storage pointer)" - } - }, - "id": 2449, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "structConstructorCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2877:24:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2849:52:17" - }, { "expression": { - "id": 2464, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2743, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 2451, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2443, - "src": "2911:6:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" }, - "id": 2453, + "id": 2734, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "memberLocation": "2918:5:17", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 2285, - "src": "2911:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "arguments": [ - { - "id": 2457, - "name": "position", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2433, - "src": "2963:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2460, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2458, - "name": "position", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2433, - "src": "2973:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2459, - "name": "OUTPUT_VALUE_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2259, - "src": "2984:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "2973:28:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 2461, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2435, - "src": "3003:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2727, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 2456, - "name": "calculateLittleEndianFragment", + "id": 2722, + "name": "pkScript", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3227, - "src": "2933:29:17", + "referencedDeclaration": 2717, + "src": "6734:8:17", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256,bytes memory) pure returns (uint256)" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } }, - "id": 2462, + "id": 2723, "isConstant": false, "isLValue": false, "isPure": false, - "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2933:76:17", - "tryCall": false, + "memberLocation": "6743:6:17", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6734:15:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } - } - ], - "expression": { - "argumentTypes": [ - { + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2726, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 2724, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6753:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2725, + "name": "HASH160_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2256, + "src": "6757:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6753:16:17", + "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } - ], - "id": 2455, + }, + "src": "6734:35:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 2733, "isConstant": false, "isLValue": false, - "isPure": true, + "isPure": false, "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2926:6:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint64_$", - "typeString": "type(uint64)" + "leftExpression": { + "baseExpression": { + "id": 2728, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2717, + "src": "6785:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2730, + "indexExpression": { + "hexValue": "30", + "id": 2729, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6794:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6785:11:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } }, - "typeName": { - "id": 2454, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2926:6:17", - "typeDescriptions": {} + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 2731, + "name": "OpCodes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3770, + "src": "6800:7:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", + "typeString": "type(library OpCodes)" + } + }, + "id": 2732, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "6808:4:17", + "memberName": "OP_0", + "nodeType": "MemberAccess", + "referencedDeclaration": 3766, + "src": "6800:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "6785:27:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 2463, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2926:84:17", - "tryCall": false, + "src": "6734:78:17", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "src": "2911:99:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 2465, - "nodeType": "ExpressionStatement", - "src": "2911:99:17" - }, - { - "expression": { - "id": 2468, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2466, - "name": "position", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2433, - "src": "3020:8:17", - "typeDescriptions": { + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 2467, - "name": "OUTPUT_VALUE_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2259, - "src": "3032:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "3020:29:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2469, - "nodeType": "ExpressionStatement", - "src": "3020:29:17" - }, - { - "assignments": [ - 2471, - 2473 - ], - "declarations": [ - { - "constant": false, - "id": 2471, - "mutability": "mutable", - "name": "scriptLength", - "nameLocation": "3068:12:17", - "nodeType": "VariableDeclaration", - "scope": 2536, - "src": "3061:19:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 2470, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "3061:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2473, - "mutability": "mutable", - "name": "scriptLengthSize", - "nameLocation": "3089:16:17", - "nodeType": "VariableDeclaration", - "scope": 2536, - "src": "3082:23:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" }, - "typeName": { - "id": 2472, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "3082:6:17", + "id": 2742, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "baseExpression": { + "id": 2737, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2717, + "src": "6834:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2739, + "indexExpression": { + "hexValue": "31", + "id": 2738, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6843:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6834:11:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 2736, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6828:5:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 2735, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "6828:5:17", + "typeDescriptions": {} + } + }, + "id": 2740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6828:18:17", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" + "typeIdentifier": "t_uint8", + "typeString": "uint8" } }, - "visibility": "internal" - } - ], - "id": 2478, - "initialValue": { - "arguments": [ - { - "id": 2475, - "name": "position", + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 2741, + "name": "HASH160_SIZE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2433, - "src": "3129:8:17", + "referencedDeclaration": 2256, + "src": "6850:12:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - { - "id": 2476, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2435, - "src": "3139:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 2474, - "name": "parseCompactSizeInt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3161, - "src": "3109:19:17", + "src": "6828:34:17", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint64_$_t_uint16_$", - "typeString": "function (uint256,bytes memory) pure returns (uint64,uint16)" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 2477, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3109:36:17", - "tryCall": false, + "src": "6734:128:17", "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", - "typeString": "tuple(uint64,uint16)" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "nodeType": "VariableDeclarationStatement", - "src": "3060:85:17" - }, + "functionReturnParameters": 2721, + "id": 2744, + "nodeType": "Return", + "src": "6727:135:17" + } + ] + }, + "documentation": { + "id": 2715, + "nodeType": "StructuredDocumentation", + "src": "6374:264:17", + "text": "@notice Check if a raw output script is a pay-to-witness-pubkey-hash output\n @param pkScript the fragment of the raw transaction containing the raw output script\n @return Whether the script has a pay-to-witness-pubkey-hash output structure or not" + }, + "functionSelector": "ed0b4ba0", + "id": 2746, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isP2WPKHOutput", + "nameLocation": "6652:14:17", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2718, + "nodeType": "ParameterList", + "parameters": [ { - "expression": { - "id": 2481, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2479, - "name": "position", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2433, - "src": "3155:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 2480, - "name": "scriptLengthSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2473, - "src": "3167:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "3155:28:17", + "constant": false, + "id": 2717, + "mutability": "mutable", + "name": "pkScript", + "nameLocation": "6680:8:17", + "nodeType": "VariableDeclaration", + "scope": 2746, + "src": "6667:21:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2716, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6667:5:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" } }, - "id": 2482, - "nodeType": "ExpressionStatement", - "src": "3155:28:17" - }, + "visibility": "internal" + } + ], + "src": "6666:23:17" + }, + "returnParameters": { + "id": 2721, + "nodeType": "ParameterList", + "parameters": [ { - "assignments": [ - 2484 - ], - "declarations": [ - { - "constant": false, - "id": 2484, - "mutability": "mutable", - "name": "pkScript", - "nameLocation": "3207:8:17", - "nodeType": "VariableDeclaration", - "scope": 2536, - "src": "3194:21:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2483, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3194:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" + "constant": false, + "id": 2720, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2746, + "src": "6711:4:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2719, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6711:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" } - ], - "id": 2489, - "initialValue": { - "arguments": [ - { - "id": 2487, - "name": "scriptLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2471, - "src": "3228:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - ], - "id": 2486, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "3218:9:17", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) pure returns (bytes memory)" - }, - "typeName": { - "id": 2485, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3222:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } + }, + "visibility": "internal" + } + ], + "src": "6710:6:17" + }, + "scope": 3743, + "src": "6643:226:17", + "stateMutability": "pure", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 2777, + "nodeType": "Block", + "src": "7217:150:17", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" }, - "id": 2488, + "id": 2775, "isConstant": false, "isLValue": false, "isPure": false, - "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3218:23:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3194:47:17" - }, - { - "body": { - "id": 2510, - "nodeType": "Block", - "src": "3293:58:17", - "statements": [ - { - "expression": { - "id": 2508, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2766, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2759, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 2754, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2749, + "src": "7234:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2755, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2500, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2484, - "src": "3307:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2502, - "indexExpression": { - "id": 2501, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2491, - "src": "3316:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } + "memberLocation": "7243:6:17", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "7234:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2758, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 2756, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7253:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2757, + "name": "SHA256_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2259, + "src": "7257:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7253:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7234:34:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 2765, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 2760, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2749, + "src": "7284:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2762, + "indexExpression": { + "hexValue": "30", + "id": 2761, "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "3307:11:17", + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7293:1:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7284:11:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 2763, + "name": "OpCodes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3770, + "src": "7299:7:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", + "typeString": "type(library OpCodes)" } }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { + "id": 2764, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "7307:4:17", + "memberName": "OP_0", + "nodeType": "MemberAccess", + "referencedDeclaration": 3766, + "src": "7299:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "7284:27:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7234:77:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2774, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { "baseExpression": { - "id": 2503, - "name": "rawTx", + "id": 2769, + "name": "pkScript", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2435, - "src": "3321:5:17", + "referencedDeclaration": 2749, + "src": "7333:8:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 2507, + "id": 2771, "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2506, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2504, - "name": "position", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2433, - "src": "3327:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2505, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2491, - "src": "3338:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "3327:12:17", + "hexValue": "31", + "id": 2770, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7342:1:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3321:19:17", + "src": "7333:11:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } - }, - "src": "3307:33:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" } - }, - "id": 2509, - "nodeType": "ExpressionStatement", - "src": "3307:33:17" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 2496, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2494, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2491, - "src": "3270:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 2495, - "name": "scriptLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2471, - "src": "3274:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "3270:16:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2511, - "initializationExpression": { - "assignments": [ - 2491 - ], - "declarations": [ - { - "constant": false, - "id": 2491, - "mutability": "mutable", - "name": "i", - "nameLocation": "3263:1:17", - "nodeType": "VariableDeclaration", - "scope": 2511, - "src": "3256:8:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 2490, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "3256:6:17", + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 2768, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7327:5:17", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 2767, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "7327:5:17", + "typeDescriptions": {} } }, - "visibility": "internal" - } - ], - "id": 2493, - "initialValue": { - "hexValue": "30", - "id": 2492, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3267:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "3256:12:17" - }, - "loopExpression": { - "expression": { - "id": 2498, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "3288:3:17", - "subExpression": { - "id": 2497, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2491, - "src": "3288:1:17", + "id": 2772, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7327:18:17", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_uint8", + "typeString": "uint8" } }, - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 2499, - "nodeType": "ExpressionStatement", - "src": "3288:3:17" - }, - "nodeType": "ForStatement", - "src": "3251:100:17" - }, - { - "expression": { - "id": 2516, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 2512, - "name": "result", + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 2773, + "name": "SHA256_SIZE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2443, - "src": "3360:6:17", + "referencedDeclaration": 2259, + "src": "7349:11:17", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 2514, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "3367:8:17", - "memberName": "pkScript", - "nodeType": "MemberAccess", - "referencedDeclaration": 2287, - "src": "3360:15:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2515, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2484, - "src": "3378:8:17", + "src": "7327:33:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "src": "3360:26:17", + "src": "7234:126:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 2517, - "nodeType": "ExpressionStatement", - "src": "3360:26:17" - }, + "functionReturnParameters": 2753, + "id": 2776, + "nodeType": "Return", + "src": "7227:133:17" + } + ] + }, + "documentation": { + "id": 2747, + "nodeType": "StructuredDocumentation", + "src": "6875:264:17", + "text": "@notice Check if a raw output script is a pay-to-witness-script-hash output\n @param pkScript the fragment of the raw transaction containing the raw output script\n @return Whether the script has a pay-to-witness-script-hash output structure or not" + }, + "functionSelector": "b36b0294", + "id": 2778, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isP2WSHOutput", + "nameLocation": "7153:13:17", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2750, + "nodeType": "ParameterList", + "parameters": [ { - "expression": { - "id": 2522, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 2518, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2443, - "src": "3396:6:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "id": 2520, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "3403:10:17", - "memberName": "scriptSize", - "nodeType": "MemberAccess", - "referencedDeclaration": 2289, - "src": "3396:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2521, - "name": "scriptLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2471, - "src": "3416:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "3396:32:17", + "constant": false, + "id": 2749, + "mutability": "mutable", + "name": "pkScript", + "nameLocation": "7180:8:17", + "nodeType": "VariableDeclaration", + "scope": 2778, + "src": "7167:21:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2748, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7167:5:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" } }, - "id": 2523, - "nodeType": "ExpressionStatement", - "src": "3396:32:17" - }, + "visibility": "internal" + } + ], + "src": "7166:23:17" + }, + "returnParameters": { + "id": 2753, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2752, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2778, + "src": "7211:4:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2751, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7211:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7210:6:17" + }, + "scope": 3743, + "src": "7144:223:17", + "stateMutability": "pure", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 2809, + "nodeType": "Block", + "src": "7800:166:17", + "statements": [ { "expression": { - "id": 2532, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2807, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 2524, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2443, - "src": "3438:6:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" }, - "id": 2526, + "id": 2798, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "memberLocation": "3445:9:17", - "memberName": "totalSize", - "nodeType": "MemberAccess", - "referencedDeclaration": 2291, - "src": "3438:16:17", + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2791, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 2786, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2781, + "src": "7817:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2787, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7826:6:17", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "7817:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2790, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 2788, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7836:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2789, + "name": "TAPROOT_PUBKEY_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2262, + "src": "7840:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7836:23:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7817:42:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 2797, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 2792, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2781, + "src": "7875:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2794, + "indexExpression": { + "hexValue": "30", + "id": 2793, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7884:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7875:11:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 2795, + "name": "OpCodes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3770, + "src": "7890:7:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", + "typeString": "type(library OpCodes)" + } + }, + "id": 2796, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "7898:4:17", + "memberName": "OP_1", + "nodeType": "MemberAccess", + "referencedDeclaration": 3769, + "src": "7890:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "7875:27:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7817:85:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 2531, + "id": 2806, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "arguments": [ + { + "baseExpression": { + "id": 2801, + "name": "pkScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2781, + "src": "7924:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2803, + "indexExpression": { + "hexValue": "31", + "id": 2802, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7933:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7924:11:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 2800, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "7918:5:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 2799, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "7918:5:17", + "typeDescriptions": {} + } }, - "id": 2529, + "id": 2804, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "typeConversion", "lValueRequested": false, - "leftExpression": { - "id": 2527, - "name": "OUTPUT_VALUE_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2259, - "src": "3457:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2528, - "name": "scriptLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2471, - "src": "3477:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "3457:32:17", + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7918:18:17", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_uint8", + "typeString": "uint8" } }, "nodeType": "BinaryOperation", - "operator": "+", + "operator": "==", "rightExpression": { - "id": 2530, - "name": "scriptLengthSize", + "id": 2805, + "name": "TAPROOT_PUBKEY_SIZE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2473, - "src": "3492:16:17", + "referencedDeclaration": 2262, + "src": "7940:19:17", "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "3457:51:17", + "src": "7918:41:17", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "src": "3438:70:17", + "src": "7817:142:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2533, - "nodeType": "ExpressionStatement", - "src": "3438:70:17" - }, - { - "expression": { - "id": 2534, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2443, - "src": "3525:6:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "functionReturnParameters": 2440, - "id": 2535, + "functionReturnParameters": 2785, + "id": 2808, "nodeType": "Return", - "src": "3518:13:17" + "src": "7810:149:17" } ] }, - "id": 2537, + "documentation": { + "id": 2779, + "nodeType": "StructuredDocumentation", + "src": "7373:350:17", + "text": "@notice Check if a raw output script is a pay-to-taproot output\n @notice Reference for implementation: https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki \n @param pkScript the fragment of the raw transaction containing the raw output script\n @return Whether the script has a pay-to-taproot output structure or not" + }, + "functionSelector": "c3d9cc75", + "id": 2810, "implemented": true, "kind": "function", "modifiers": [], - "name": "extractRawOutput", - "nameLocation": "2745:16:17", + "name": "isP2TROutput", + "nameLocation": "7737:12:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 2436, + "id": 2782, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2433, - "mutability": "mutable", - "name": "position", - "nameLocation": "2767:8:17", - "nodeType": "VariableDeclaration", - "scope": 2537, - "src": "2762:13:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2432, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2762:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2435, + "id": 2781, "mutability": "mutable", - "name": "rawTx", - "nameLocation": "2790:5:17", + "name": "pkScript", + "nameLocation": "7763:8:17", "nodeType": "VariableDeclaration", - "scope": 2537, - "src": "2777:18:17", + "scope": 2810, + "src": "7750:21:17", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -14805,10 +19060,10 @@ "typeString": "bytes" }, "typeName": { - "id": 2434, + "id": 2780, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "2777:5:17", + "src": "7750:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -14817,418 +19072,777 @@ "visibility": "internal" } ], - "src": "2761:35:17" + "src": "7749:23:17" }, "returnParameters": { - "id": 2440, + "id": 2785, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2439, + "id": 2784, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2537, - "src": "2819:18:17", + "scope": 2810, + "src": "7794:4:17", "stateVariable": false, - "storageLocation": "memory", + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput" + "typeIdentifier": "t_bool", + "typeString": "bool" }, "typeName": { - "id": 2438, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2437, - "name": "TxRawOutput", - "nameLocations": [ - "2819:11:17" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2292, - "src": "2819:11:17" - }, - "referencedDeclaration": 2292, - "src": "2819:11:17", + "id": 2783, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7794:4:17", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, "visibility": "internal" } ], - "src": "2818:20:17" + "src": "7793:6:17" }, - "scope": 3228, - "src": "2736:802:17", + "scope": 3743, + "src": "7728:238:17", "stateMutability": "pure", "virtual": false, - "visibility": "private" + "visibility": "public" }, { "body": { - "id": 2571, + "id": 2873, "nodeType": "Block", - "src": "4230:331:17", + "src": "8544:468:17", "statements": [ { - "condition": { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 2822, + "name": "outputScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2813, + "src": "8576:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 2821, + "name": "isP2PKHOutput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2675, + "src": "8562:13:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", + "typeString": "function (bytes memory) pure returns (bool)" + } + }, + "id": 2823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8562:27:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "536372697074206861736e27742074686520726571756972656420737472756374757265", + "id": 2824, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8591:38:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", + "typeString": "literal_string \"Script hasn't the required structure\"" + }, + "value": "Script hasn't the required structure" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", + "typeString": "literal_string \"Script hasn't the required structure\"" + } + ], + "id": 2820, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "8554:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 2825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8554:76:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2826, + "nodeType": "ExpressionStatement", + "src": "8554:76:17" + }, + { + "assignments": [ + 2828 + ], + "declarations": [ + { + "constant": false, + "id": 2828, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "8654:18:17", + "nodeType": "VariableDeclaration", + "scope": 2873, + "src": "8641:31:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2827, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8641:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2835, + "initialValue": { "arguments": [ { - "id": 2548, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2540, - "src": "4258:12:17", + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2833, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "id": 2831, + "name": "HASH160_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2256, + "src": "8685:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 2832, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8700:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "8685:16:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } ], - "id": 2547, - "name": "isP2PKHOutput", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2623, - "src": "4244:13:17", + "id": 2830, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "8675:9:17", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (bytes memory) pure returns (bool)" + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 2829, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8679:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } } }, - "id": 2549, + "id": 2834, "isConstant": false, "isLValue": false, - "isPure": false, + "isPure": true, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4244:27:17", + "src": "8675:27:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } }, - "id": 2556, - "nodeType": "IfStatement", - "src": "4240:108:17", - "trueBody": { - "id": 2555, + "nodeType": "VariableDeclarationStatement", + "src": "8641:61:17" + }, + { + "body": { + "id": 2860, "nodeType": "Block", - "src": "4273:75:17", + "src": "8788:88:17", "statements": [ { "expression": { - "arguments": [ - { - "id": 2551, - "name": "outputScript", + "id": 2858, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 2848, + "name": "destinationAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2540, - "src": "4315:12:17", + "referencedDeclaration": 2828, + "src": "8802:18:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } }, - { - "id": 2552, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2542, - "src": "4329:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" + "id": 2854, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" + "id": 2853, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 2851, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2849, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2837, + "src": "8821:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2850, + "name": "PUBKEY_HASH_START", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2271, + "src": "8825:17:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "8821:21:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 2852, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8845:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "8821:25:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" } - ], - "id": 2550, - "name": "parsePayToPubKeyHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2724, - "src": "4294:20:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$_t_bool_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes calldata,bool) pure returns (bytes memory)" - } - }, - "id": 2553, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4294:43:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2546, - "id": 2554, - "nodeType": "Return", - "src": "4287:50:17" - } - ] - } - }, - { - "condition": { - "arguments": [ - { - "id": 2558, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2540, - "src": "4374:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2557, - "name": "isP2SHOutput", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2660, - "src": "4361:12:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (bytes memory) pure returns (bool)" - } - }, - "id": 2559, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4361:26:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2566, - "nodeType": "IfStatement", - "src": "4357:107:17", - "trueBody": { - "id": 2565, - "nodeType": "Block", - "src": "4389:75:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2561, + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "8802:45:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 2855, "name": "outputScript", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2540, - "src": "4431:12:17", + "referencedDeclaration": 2813, + "src": "8850:12:17", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, - { - "id": 2562, - "name": "mainnet", + "id": 2857, + "indexExpression": { + "id": 2856, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2542, - "src": "4445:7:17", + "referencedDeclaration": 2837, + "src": "8863:1:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint8", + "typeString": "uint8" } - ], - "id": 2560, - "name": "parsePayToScriptHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2788, - "src": "4410:20:17", + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8850:15:17", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$_t_bool_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes calldata,bool) pure returns (bytes memory)" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, - "id": 2563, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4410:43:17", - "tryCall": false, + "src": "8802:63:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, - "functionReturnParameters": 2546, - "id": 2564, - "nodeType": "Return", - "src": "4403:50:17" + "id": 2859, + "nodeType": "ExpressionStatement", + "src": "8802:63:17" } ] - } + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2844, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2840, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2837, + "src": "8745:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2843, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "id": 2841, + "name": "HASH160_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2256, + "src": "8749:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2842, + "name": "PUBKEY_HASH_START", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2271, + "src": "8764:17:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "8749:32:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8745:36:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2861, + "initializationExpression": { + "assignments": [ + 2837 + ], + "declarations": [ + { + "constant": false, + "id": 2837, + "mutability": "mutable", + "name": "i", + "nameLocation": "8722:1:17", + "nodeType": "VariableDeclaration", + "scope": 2861, + "src": "8716:7:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 2836, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "8716:5:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "id": 2839, + "initialValue": { + "id": 2838, + "name": "PUBKEY_HASH_START", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2271, + "src": "8726:17:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8716:27:17" + }, + "loopExpression": { + "expression": { + "id": 2846, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "8783:3:17", + "subExpression": { + "id": 2845, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2837, + "src": "8783:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 2847, + "nodeType": "ExpressionStatement", + "src": "8783:3:17" + }, + "nodeType": "ForStatement", + "src": "8712:164:17" }, { "expression": { - "arguments": [ - { - "hexValue": "556e737570706f72746564207363726970742074797065", - "id": 2568, + "id": 2869, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 2862, + "name": "destinationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2828, + "src": "8886:18:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2864, + "indexExpression": { + "hexValue": "30", + "id": 2863, "isConstant": false, "isLValue": false, "isPure": true, - "kind": "string", + "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4528:25:17", + "src": "8905:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "8886:21:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "condition": { + "id": 2865, + "name": "mainnet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2815, + "src": "8910:7:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "id": 2867, + "name": "PUBKEY_HASH_TESTNET_BYTE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2277, + "src": "8946:24:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 2868, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "8910:60:17", + "trueExpression": { + "id": 2866, + "name": "PUBKEY_HASH_MAINNET_BYTE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2274, + "src": "8919:24:17", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_82bc120954d4025ad83f4cfd56c5f75d5f05a659cc4489ef281377ffa1d8ef8b", - "typeString": "literal_string \"Unsupported script type\"" - }, - "value": "Unsupported script type" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_82bc120954d4025ad83f4cfd56c5f75d5f05a659cc4489ef281377ffa1d8ef8b", - "typeString": "literal_string \"Unsupported script type\"" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } - ], - "id": 2567, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967277, - 4294967277 - ], - "referencedDeclaration": 4294967277, - "src": "4521:6:17", + }, "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory) pure" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, - "id": 2569, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4521:33:17", - "tryCall": false, + "src": "8886:84:17", "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, - "id": 2570, + "id": 2870, "nodeType": "ExpressionStatement", - "src": "4521:33:17" + "src": "8886:84:17" + }, + { + "expression": { + "id": 2871, + "name": "destinationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2828, + "src": "8987:18:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 2819, + "id": 2872, + "nodeType": "Return", + "src": "8980:25:17" } ] }, "documentation": { - "id": 2538, + "id": 2811, "nodeType": "StructuredDocumentation", - "src": "3544:572:17", - "text": "@notice Parse a raw output script whose type is not known by the consumer. The function will\n return the corresponding address if the type of the script is supported or an error if not.\n For the addresses that are encoded with base58check the checksum bytes are not included in\n the resulting byte array\n @param outputScript the fragment of the raw transaction containing the raw output script\n @param mainnet if the address to generate is from mainnet or testnet\n @return The address bytes regarless of the output script type" + "src": "7972:459:17", + "text": "@notice Parse a raw pay-to-public-key-hash output script to get the corresponding address,\n the resulting byte array doesn't include the checksum bytes of the base58check encoding at\n the end\n @param outputScript the fragment of the raw transaction containing the raw output script\n @param mainnet if the address to generate is from mainnet or testnet \n @return The address generated using the receiver's public key hash" }, - "functionSelector": "c7ce85ac", - "id": 2572, + "functionSelector": "4c03fe59", + "id": 2874, "implemented": true, "kind": "function", "modifiers": [], - "name": "outputScriptToAddress", - "nameLocation": "4130:21:17", + "name": "parsePayToPubKeyHash", + "nameLocation": "8445:20:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 2543, + "id": 2816, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2540, + "id": 2813, "mutability": "mutable", "name": "outputScript", - "nameLocation": "4167:12:17", + "nameLocation": "8481:12:17", "nodeType": "VariableDeclaration", - "scope": 2572, - "src": "4152:27:17", + "scope": 2874, + "src": "8466:27:17", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -15236,10 +19850,10 @@ "typeString": "bytes" }, "typeName": { - "id": 2539, + "id": 2812, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "4152:5:17", + "src": "8466:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -15249,13 +19863,13 @@ }, { "constant": false, - "id": 2542, + "id": 2815, "mutability": "mutable", "name": "mainnet", - "nameLocation": "4186:7:17", + "nameLocation": "8500:7:17", "nodeType": "VariableDeclaration", - "scope": 2572, - "src": "4181:12:17", + "scope": 2874, + "src": "8495:12:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15263,10 +19877,10 @@ "typeString": "bool" }, "typeName": { - "id": 2541, + "id": 2814, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "4181:4:17", + "src": "8495:4:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15275,21 +19889,21 @@ "visibility": "internal" } ], - "src": "4151:43:17" + "src": "8465:43:17" }, "returnParameters": { - "id": 2546, + "id": 2819, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2545, + "id": 2818, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2572, - "src": "4216:12:17", + "scope": 2874, + "src": "8530:12:17", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -15297,10 +19911,10 @@ "typeString": "bytes" }, "typeName": { - "id": 2544, + "id": 2817, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "4216:5:17", + "src": "8530:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -15309,1188 +19923,1679 @@ "visibility": "internal" } ], - "src": "4215:14:17" + "src": "8529:14:17" }, - "scope": 3228, - "src": "4121:440:17", + "scope": 3743, + "src": "8436:576:17", "stateMutability": "pure", "virtual": false, "visibility": "public" }, { "body": { - "id": 2622, + "id": 2937, "nodeType": "Block", - "src": "4901:299:17", + "src": "9570:467:17", "statements": [ { "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "arguments": [ + { + "arguments": [ + { + "id": 2886, + "name": "outputScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2877, + "src": "9601:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 2885, + "name": "isP2SHOutput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2714, + "src": "9588:12:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", + "typeString": "function (bytes memory) pure returns (bool)" + } + }, + "id": 2887, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9588:26:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "536372697074206861736e27742074686520726571756972656420737472756374757265", + "id": 2888, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9616:38:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", + "typeString": "literal_string \"Script hasn't the required structure\"" + }, + "value": "Script hasn't the required structure" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", + "typeString": "literal_string \"Script hasn't the required structure\"" + } + ], + "id": 2884, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "9580:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } }, - "id": 2620, + "id": 2889, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9580:75:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2890, + "nodeType": "ExpressionStatement", + "src": "9580:75:17" + }, + { + "assignments": [ + 2892 + ], + "declarations": [ + { + "constant": false, + "id": 2892, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "9679:18:17", + "nodeType": "VariableDeclaration", + "scope": 2937, + "src": "9666:31:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" }, - "id": 2613, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "typeName": { + "id": 2891, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "9666:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2899, + "initialValue": { + "arguments": [ + { "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 2606, + "id": 2897, "isConstant": false, "isLValue": false, - "isPure": false, + "isPure": true, "lValueRequested": false, "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "id": 2895, + "name": "HASH160_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2256, + "src": "9710:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 2896, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9725:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" }, - "id": 2597, + "value": "1" + }, + "src": "9710:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2894, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "9700:9:17", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 2893, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "9704:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "id": 2898, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9700:27:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9666:61:17" + }, + { + "body": { + "id": 2924, + "nodeType": "Block", + "src": "9813:88:17", + "statements": [ + { + "expression": { + "id": 2922, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2590, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2583, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2580, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2575, - "src": "4918:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2581, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4927:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "4918:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "3235", - "id": 2582, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4937:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_25_by_1", - "typeString": "int_const 25" - }, - "value": "25" - }, - "src": "4918:21:17", + "leftHandSide": { + "baseExpression": { + "id": 2912, + "name": "destinationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2892, + "src": "9827:18:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { + "id": 2918, + "indexExpression": { "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_uint8", + "typeString": "uint8" }, - "id": 2589, + "id": 2917, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "baseExpression": { - "id": 2584, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2575, - "src": "4955:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2586, - "indexExpression": { - "hexValue": "30", - "id": 2585, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4964:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4955:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 2587, - "name": "OpCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3249, - "src": "4970:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3249_$", - "typeString": "type(library OpCodes)" - } + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" }, - "id": 2588, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4978:6:17", - "memberName": "OP_DUP", - "nodeType": "MemberAccess", - "referencedDeclaration": 3233, - "src": "4970:14:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "4955:29:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4918:66:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 2596, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2591, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2575, - "src": "5000:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2593, - "indexExpression": { - "hexValue": "31", - "id": 2592, + "id": 2915, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5009:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5000:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 2594, - "name": "OpCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3249, - "src": "5015:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3249_$", - "typeString": "type(library OpCodes)" - } - }, - "id": 2595, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5023:10:17", - "memberName": "OP_HASH160", - "nodeType": "MemberAccess", - "referencedDeclaration": 3236, - "src": "5015:18:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "5000:33:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4918:115:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 2605, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "baseExpression": { - "id": 2600, - "name": "pkScript", + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2913, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2575, - "src": "5055:8:17", + "referencedDeclaration": 2901, + "src": "9846:1:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_uint8", + "typeString": "uint8" } }, - "id": 2602, - "indexExpression": { - "hexValue": "32", - "id": 2601, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5064:1:17", + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2914, + "name": "SCRIPT_HASH_START", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2280, + "src": "9850:17:17", "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } }, + "src": "9846:21:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 2916, "isConstant": false, - "isLValue": true, - "isPure": false, + "isLValue": false, + "isPure": true, + "kind": "number", "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5055:11:17", + "nodeType": "Literal", + "src": "9870:1:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 2599, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5049:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" }, - "typeName": { - "id": 2598, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "5049:5:17", - "typeDescriptions": {} + "src": "9846:25:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" } }, - "id": 2603, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5049:18:17", - "tryCall": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "9827:45:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 2604, - "name": "PUBKEY_HASH_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2262, - "src": "5071:16:17", + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 2919, + "name": "outputScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2877, + "src": "9875:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 2921, + "indexExpression": { + "id": 2920, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2901, + "src": "9888:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9875:15:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, - "src": "5049:38:17", + "src": "9827:63:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 2923, + "nodeType": "ExpressionStatement", + "src": "9827:63:17" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2908, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2904, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2901, + "src": "9770:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2907, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "id": 2905, + "name": "HASH160_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2256, + "src": "9774:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2906, + "name": "SCRIPT_HASH_START", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2280, + "src": "9789:17:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "9774:32:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9770:36:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2925, + "initializationExpression": { + "assignments": [ + 2901 + ], + "declarations": [ + { + "constant": false, + "id": 2901, + "mutability": "mutable", + "name": "i", + "nameLocation": "9747:1:17", + "nodeType": "VariableDeclaration", + "scope": 2925, + "src": "9741:7:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 2900, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "9741:5:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" } }, - "src": "4918:169:17", + "visibility": "internal" + } + ], + "id": 2903, + "initialValue": { + "id": 2902, + "name": "SCRIPT_HASH_START", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2280, + "src": "9751:17:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9741:27:17" + }, + "loopExpression": { + "expression": { + "id": 2910, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "9808:3:17", + "subExpression": { + "id": 2909, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2901, + "src": "9808:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 2911, + "nodeType": "ExpressionStatement", + "src": "9808:3:17" + }, + "nodeType": "ForStatement", + "src": "9737:164:17" + }, + { + "expression": { + "id": 2933, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 2926, + "name": "destinationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2892, + "src": "9911:18:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2928, + "indexExpression": { + "hexValue": "30", + "id": 2927, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9930:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "9911:21:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "condition": { + "id": 2929, + "name": "mainnet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2879, + "src": "9935:7:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { + "falseExpression": { + "id": 2931, + "name": "SCRIPT_HASH_TESTNET_BYTE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2286, + "src": "9971:24:17", + "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" - }, - "id": 2612, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2607, - "name": "pkScript", + } + }, + "id": 2932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "9935:60:17", + "trueExpression": { + "id": 2930, + "name": "SCRIPT_HASH_MAINNET_BYTE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "9944:24:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "9911:84:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 2934, + "nodeType": "ExpressionStatement", + "src": "9911:84:17" + }, + { + "expression": { + "id": 2935, + "name": "destinationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2892, + "src": "10012:18:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 2883, + "id": 2936, + "nodeType": "Return", + "src": "10005:25:17" + } + ] + }, + "documentation": { + "id": 2875, + "nodeType": "StructuredDocumentation", + "src": "9018:439:17", + "text": "@notice Parse a raw pay-to-script-hash output script to get the corresponding address,\n the resulting byte array doesn't include the checksum bytes of the base58check encoding at\n the end\n @param outputScript the fragment of the raw transaction containing the raw output script\n @param mainnet if the address to generate is from mainnet or testnet\n @return The address generated using the script hash" + }, + "functionSelector": "06ac4100", + "id": 2938, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "parsePayToScriptHash", + "nameLocation": "9471:20:17", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2880, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2877, + "mutability": "mutable", + "name": "outputScript", + "nameLocation": "9507:12:17", + "nodeType": "VariableDeclaration", + "scope": 2938, + "src": "9492:27:17", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2876, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "9492:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2879, + "mutability": "mutable", + "name": "mainnet", + "nameLocation": "9526:7:17", + "nodeType": "VariableDeclaration", + "scope": 2938, + "src": "9521:12:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2878, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "9521:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "9491:43:17" + }, + "returnParameters": { + "id": 2883, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2882, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2938, + "src": "9556:12:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2881, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "9556:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "9555:14:17" + }, + "scope": 3743, + "src": "9462:575:17", + "stateMutability": "pure", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 3006, + "nodeType": "Block", + "src": "10525:414:17", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 2948, + "name": "outputScript", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2575, - "src": "5103:8:17", + "referencedDeclaration": 2941, + "src": "10558:12:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" } - }, - "id": 2609, - "indexExpression": { - "hexValue": "3233", - "id": 2608, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5112:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_23_by_1", - "typeString": "int_const 23" - }, - "value": "23" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5103:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 2610, - "name": "OpCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3249, - "src": "5119:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3249_$", - "typeString": "type(library OpCodes)" + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" } - }, - "id": 2611, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5127:14:17", - "memberName": "OP_EQUALVERIFY", - "nodeType": "MemberAccess", - "referencedDeclaration": 3239, - "src": "5119:22:17", + ], + "id": 2947, + "name": "isP2WPKHOutput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2746, + "src": "10543:14:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", + "typeString": "function (bytes memory) pure returns (bool)" } }, - "src": "5103:38:17", + "id": 2949, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10543:28:17", + "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "4918:223:17", + { + "hexValue": "536372697074206861736e27742074686520726571756972656420737472756374757265", + "id": 2950, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10573:38:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", + "typeString": "literal_string \"Script hasn't the required structure\"" + }, + "value": "Script hasn't the required structure" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", + "typeString": "literal_string \"Script hasn't the required structure\"" + } + ], + "id": 2946, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "10535:7:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" } }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "id": 2951, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10535:77:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2952, + "nodeType": "ExpressionStatement", + "src": "10535:77:17" + }, + { + "assignments": [ + 2954 + ], + "declarations": [ + { + "constant": false, + "id": 2954, + "mutability": "mutable", + "name": "length", + "nameLocation": "10628:6:17", + "nodeType": "VariableDeclaration", + "scope": 3006, + "src": "10623:11:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 2619, + "typeName": { + "id": 2953, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10623:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2960, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2959, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 2955, "isConstant": false, "isLValue": false, - "isPure": false, + "isPure": true, + "kind": "number", "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2614, - "name": "pkScript", + "nodeType": "Literal", + "src": "10637:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "arguments": [ + { + "id": 2957, + "name": "HASH160_SIZE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2575, - "src": "5157:8:17", + "referencedDeclaration": 2256, + "src": "10656:12:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - }, - "id": 2616, - "indexExpression": { - "hexValue": "3234", - "id": 2615, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5166:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_24_by_1", - "typeString": "int_const 24" - }, - "value": "24" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5157:12:17", + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2956, + "name": "total5BitWords", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3742, + "src": "10641:14:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256) pure returns (uint256)" + } + }, + "id": 2958, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10641:28:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10637:32:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10623:46:17" + }, + { + "assignments": [ + 2962 + ], + "declarations": [ + { + "constant": false, + "id": 2962, + "mutability": "mutable", + "name": "result", + "nameLocation": "10692:6:17", + "nodeType": "VariableDeclaration", + "scope": 3006, + "src": "10679:19:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2961, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "10679:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2967, + "initialValue": { + "arguments": [ + { + "id": 2965, + "name": "length", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2954, + "src": "10711:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2964, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "10701:9:17", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 2963, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "10705:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "id": 2966, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10701:17:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10679:39:17" + }, + { + "expression": { + "id": 2972, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 2968, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "10728:6:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 2617, - "name": "OpCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3249, - "src": "5174:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3249_$", - "typeString": "type(library OpCodes)" - } - }, - "id": 2618, + "id": 2970, + "indexExpression": { + "hexValue": "30", + "id": 2969, "isConstant": false, "isLValue": false, "isPure": true, + "kind": "number", "lValueRequested": false, - "memberLocation": "5182:11:17", - "memberName": "OP_CHECKSIG", - "nodeType": "MemberAccess", - "referencedDeclaration": 3242, - "src": "5174:19:17", + "nodeType": "Literal", + "src": "10735:1:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" }, - "src": "5157:36:17", + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "10728:9:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, - "src": "4918:275:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 2579, - "id": 2621, - "nodeType": "Return", - "src": "4911:282:17" - } - ] - }, - "documentation": { - "id": 2573, - "nodeType": "StructuredDocumentation", - "src": "4567:256:17", - "text": "@notice Check if a raw output script is a pay-to-public-key-hash output\n @param pkScript the fragment of the raw transaction containing the raw output script\n @return Whether the script has a pay-to-public-key-hash output structure or not" - }, - "functionSelector": "facde656", - "id": 2623, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isP2PKHOutput", - "nameLocation": "4837:13:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2576, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2575, - "mutability": "mutable", - "name": "pkScript", - "nameLocation": "4864:8:17", - "nodeType": "VariableDeclaration", - "scope": 2623, - "src": "4851:21:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2574, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4851:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "4850:23:17" - }, - "returnParameters": { - "id": 2579, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2578, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2623, - "src": "4895:4:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2577, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4895:4:17", + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2971, + "name": "WITNESS_VERSION_0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2295, + "src": "10740:17:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "10728:29:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, - "visibility": "internal" - } - ], - "src": "4894:6:17" - }, - "scope": 3228, - "src": "4828:372:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 2659, - "nodeType": "Block", - "src": "5531:196:17", - "statements": [ + "id": 2973, + "nodeType": "ExpressionStatement", + "src": "10728:29:17" + }, { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2657, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "assignments": [ + 2975 + ], + "declarations": [ + { + "constant": false, + "id": 2975, + "mutability": "mutable", + "name": "words", + "nameLocation": "10780:5:17", + "nodeType": "VariableDeclaration", + "scope": 3006, + "src": "10767:18:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" }, - "id": 2650, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeName": { + "id": 2974, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "10767:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2981, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "id": 2977, + "name": "outputScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2941, + "src": "10800:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } }, - "id": 2641, + "id": 2979, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2634, + "nodeType": "IndexRangeAccess", + "src": "10800:16:17", + "startExpression": { + "hexValue": "32", + "id": 2978, "isConstant": false, "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2631, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2626, - "src": "5548:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2632, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5557:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "5548:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "3233", - "id": 2633, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5567:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_23_by_1", - "typeString": "int_const 23" - }, - "value": "23" - }, - "src": "5548:21:17", + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10813:1:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" }, - "id": 2640, + "value": "2" + }, + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr_slice", + "typeString": "bytes calldata slice" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr_slice", + "typeString": "bytes calldata slice" + } + ], + "id": 2976, + "name": "to5BitWords", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3706, + "src": "10788:11:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory) pure returns (bytes memory)" + } + }, + "id": 2980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10788:29:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10767:50:17" + }, + { + "body": { + "id": 3002, + "nodeType": "Block", + "src": "10861:49:17", + "statements": [ + { + "expression": { + "id": 3000, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { + "leftHandSide": { "baseExpression": { - "id": 2635, - "name": "pkScript", + "id": 2992, + "name": "result", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2626, - "src": "5585:8:17", + "referencedDeclaration": 2962, + "src": "10875:6:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 2637, + "id": 2994, "indexExpression": { - "hexValue": "30", - "id": 2636, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5594:1:17", + "id": 2993, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2983, + "src": "10882:1:17", "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } }, "isConstant": false, "isLValue": true, "isPure": false, - "lValueRequested": false, + "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5585:11:17", + "src": "10875:9:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 2638, - "name": "OpCodes", + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 2995, + "name": "words", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3249, - "src": "5600:7:17", + "referencedDeclaration": 2975, + "src": "10887:5:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3249_$", - "typeString": "type(library OpCodes)" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } }, - "id": 2639, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5608:10:17", - "memberName": "OP_HASH160", - "nodeType": "MemberAccess", - "referencedDeclaration": 3236, - "src": "5600:18:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "5585:33:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5548:70:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 2649, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "baseExpression": { - "id": 2644, - "name": "pkScript", + "id": 2999, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2996, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2626, - "src": "5640:8:17", + "referencedDeclaration": 2983, + "src": "10893:1:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 2646, - "indexExpression": { + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { "hexValue": "31", - "id": 2645, + "id": 2997, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5649:1:17", + "src": "10897:1:17", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5640:11:17", + "src": "10893:5:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ], - "id": 2643, + }, "isConstant": false, - "isLValue": false, - "isPure": true, + "isLValue": true, + "isPure": false, "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5634:5:17", + "nodeType": "IndexAccess", + "src": "10887:12:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 2642, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "5634:5:17", - "typeDescriptions": {} + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, - "id": 2647, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5634:18:17", - "tryCall": false, + "src": "10875:24:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 2648, - "name": "SCRIPT_HASH_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2274, - "src": "5656:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "id": 3001, + "nodeType": "ExpressionStatement", + "src": "10875:24:17" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2988, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2986, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2983, + "src": "10844:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 2987, + "name": "length", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2954, + "src": "10848:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10844:10:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3003, + "initializationExpression": { + "assignments": [ + 2983 + ], + "declarations": [ + { + "constant": false, + "id": 2983, + "mutability": "mutable", + "name": "i", + "nameLocation": "10837:1:17", + "nodeType": "VariableDeclaration", + "scope": 3003, + "src": "10832:6:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2982, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10832:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "5634:38:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5548:124:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "visibility": "internal" } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + ], + "id": 2985, + "initialValue": { + "hexValue": "31", + "id": 2984, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10841:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" }, - "id": 2656, + "value": "1" + }, + "nodeType": "VariableDeclarationStatement", + "src": "10832:10:17" + }, + "loopExpression": { + "expression": { + "id": 2990, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2651, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2626, - "src": "5688:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2653, - "indexExpression": { - "hexValue": "3232", - "id": 2652, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5697:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_22_by_1", - "typeString": "int_const 22" - }, - "value": "22" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5688:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 2654, - "name": "OpCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3249, - "src": "5704:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3249_$", - "typeString": "type(library OpCodes)" - } - }, - "id": 2655, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5712:8:17", - "memberName": "OP_EQUAL", - "nodeType": "MemberAccess", - "referencedDeclaration": 3248, - "src": "5704:16:17", + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "10856:3:17", + "subExpression": { + "id": 2989, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2983, + "src": "10856:1:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "5688:32:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "5548:172:17", + "id": 2991, + "nodeType": "ExpressionStatement", + "src": "10856:3:17" + }, + "nodeType": "ForStatement", + "src": "10827:83:17" + }, + { + "expression": { + "id": 3004, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2962, + "src": "10926:6:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } }, - "functionReturnParameters": 2630, - "id": 2658, + "functionReturnParameters": 2945, + "id": 3005, "nodeType": "Return", - "src": "5541:179:17" + "src": "10919:13:17" } ] }, "documentation": { - "id": 2624, + "id": 2939, "nodeType": "StructuredDocumentation", - "src": "5206:248:17", - "text": "@notice Check if a raw output script is a pay-to-script-hash output\n @param pkScript the fragment of the raw transaction containing the raw output script\n @return Whether the script has a pay-to-script-hash output structure or not" + "src": "10043:376:17", + "text": "@notice Parse a raw pay-to-witness-pubkey-hash output script to get the corresponding address words,\n the resulting words are only the data part of the bech32 encoding and doesn't include the HRP\n @param outputScript the fragment of the raw transaction containing the raw output script\n @return The address bech32 words generated using the pubkey hash" }, - "functionSelector": "b42da4a2", - "id": 2660, + "functionSelector": "7ddac3b2", + "id": 3007, "implemented": true, "kind": "function", "modifiers": [], - "name": "isP2SHOutput", - "nameLocation": "5468:12:17", + "name": "parsePayToWitnessPubKeyHash", + "nameLocation": "10433:27:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 2627, + "id": 2942, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2626, + "id": 2941, "mutability": "mutable", - "name": "pkScript", - "nameLocation": "5494:8:17", + "name": "outputScript", + "nameLocation": "10476:12:17", "nodeType": "VariableDeclaration", - "scope": 2660, - "src": "5481:21:17", + "scope": 3007, + "src": "10461:27:17", "stateVariable": false, - "storageLocation": "memory", + "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", + "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes" }, "typeName": { - "id": 2625, + "id": 2940, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "5481:5:17", + "src": "10461:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -16499,53 +21604,53 @@ "visibility": "internal" } ], - "src": "5480:23:17" + "src": "10460:29:17" }, "returnParameters": { - "id": 2630, + "id": 2945, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2629, + "id": 2944, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2660, - "src": "5525:4:17", + "scope": 3007, + "src": "10511:12:17", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" }, "typeName": { - "id": 2628, - "name": "bool", + "id": 2943, + "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "5525:4:17", + "src": "10511:5:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" } }, "visibility": "internal" } ], - "src": "5524:6:17" + "src": "10510:14:17" }, - "scope": 3228, - "src": "5459:268:17", + "scope": 3743, + "src": "10424:515:17", "stateMutability": "pure", "virtual": false, "visibility": "public" }, { "body": { - "id": 2723, + "id": 3075, "nodeType": "Block", - "src": "6305:476:17", + "src": "11427:411:17", "statements": [ { "expression": { @@ -16553,12 +21658,12 @@ { "arguments": [ { - "id": 2672, + "id": 3017, "name": "outputScript", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2663, - "src": "6337:12:17", + "referencedDeclaration": 3010, + "src": "11459:12:17", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" @@ -16572,76 +21677,294 @@ "typeString": "bytes calldata" } ], - "id": 2671, - "name": "isP2PKHOutput", + "id": 3016, + "name": "isP2WSHOutput", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2778, + "src": "11445:13:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", + "typeString": "function (bytes memory) pure returns (bool)" + } + }, + "id": 3018, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11445:27:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "536372697074206861736e27742074686520726571756972656420737472756374757265", + "id": 3019, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11474:38:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", + "typeString": "literal_string \"Script hasn't the required structure\"" + }, + "value": "Script hasn't the required structure" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", + "typeString": "literal_string \"Script hasn't the required structure\"" + } + ], + "id": 3015, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "11437:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3020, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11437:76:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3021, + "nodeType": "ExpressionStatement", + "src": "11437:76:17" + }, + { + "assignments": [ + 3023 + ], + "declarations": [ + { + "constant": false, + "id": 3023, + "mutability": "mutable", + "name": "length", + "nameLocation": "11528:6:17", + "nodeType": "VariableDeclaration", + "scope": 3075, + "src": "11523:11:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3022, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "11523:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3029, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3028, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 3024, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11537:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "arguments": [ + { + "id": 3026, + "name": "SHA256_SIZE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2623, - "src": "6323:13:17", + "referencedDeclaration": 2259, + "src": "11556:11:17", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (bytes memory) pure returns (bool)" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - }, - "id": 2673, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6323:27:17", - "tryCall": false, + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3025, + "name": "total5BitWords", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3742, + "src": "11541:14:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256) pure returns (uint256)" + } + }, + "id": 3027, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11541:27:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11537:31:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11523:45:17" + }, + { + "assignments": [ + 3031 + ], + "declarations": [ + { + "constant": false, + "id": 3031, + "mutability": "mutable", + "name": "result", + "nameLocation": "11591:6:17", + "nodeType": "VariableDeclaration", + "scope": 3075, + "src": "11578:19:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3030, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "11578:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" } }, + "visibility": "internal" + } + ], + "id": 3036, + "initialValue": { + "arguments": [ { - "hexValue": "536372697074206861736e27742074686520726571756972656420737472756374757265", - "id": 2674, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6352:38:17", + "id": 3034, + "name": "length", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3023, + "src": "11610:6:17", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", - "typeString": "literal_string \"Script hasn't the required structure\"" - }, - "value": "Script hasn't the required structure" + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", - "typeString": "literal_string \"Script hasn't the required structure\"" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } ], - "id": 2670, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "6315:7:17", + "id": 3033, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "11600:9:17", "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 3032, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "11604:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } } }, - "id": 2675, + "id": 3035, "isConstant": false, "isLValue": false, "isPure": false, @@ -16650,31 +21973,102 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6315:76:17", + "src": "11600:17:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11578:39:17" + }, + { + "expression": { + "id": 3041, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 3037, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3031, + "src": "11627:6:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3039, + "indexExpression": { + "hexValue": "30", + "id": 3038, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11634:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "11627:9:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3040, + "name": "WITNESS_VERSION_0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2295, + "src": "11639:17:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "11627:29:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, - "id": 2676, + "id": 3042, "nodeType": "ExpressionStatement", - "src": "6315:76:17" + "src": "11627:29:17" }, { "assignments": [ - 2678 + 3044 ], "declarations": [ { "constant": false, - "id": 2678, + "id": 3044, "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "6415:18:17", + "name": "words", + "nameLocation": "11679:5:17", "nodeType": "VariableDeclaration", - "scope": 2723, - "src": "6402:31:17", + "scope": 3075, + "src": "11666:18:17", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -16682,10 +22076,10 @@ "typeString": "bytes" }, "typeName": { - "id": 2677, + "id": 3043, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "6402:5:17", + "src": "11666:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -16694,95 +22088,79 @@ "visibility": "internal" } ], - "id": 2685, + "id": 3050, "initialValue": { "arguments": [ { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 2683, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "id": 2681, - "name": "PUBKEY_HASH_SIZE", + "baseExpression": { + "id": 3046, + "name": "outputScript", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2262, - "src": "6446:16:17", + "referencedDeclaration": 3010, + "src": "11699:12:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" } }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 2682, + "id": 3048, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexRangeAccess", + "src": "11699:16:17", + "startExpression": { + "hexValue": "32", + "id": 3047, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, - "nodeType": "Literal", - "src": "6465:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "6446:20:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 2680, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "6436:9:17", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) pure returns (bytes memory)" - }, - "typeName": { - "id": 2679, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6440:5:17", + "nodeType": "Literal", + "src": "11712:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" + "typeIdentifier": "t_bytes_calldata_ptr_slice", + "typeString": "bytes calldata slice" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr_slice", + "typeString": "bytes calldata slice" } + ], + "id": 3045, + "name": "to5BitWords", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3706, + "src": "11687:11:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory) pure returns (bytes memory)" } }, - "id": 2684, + "id": 3049, "isConstant": false, "isLValue": false, - "isPure": true, + "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6436:31:17", + "src": "11687:29:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -16790,486 +22168,321 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "6402:65:17" + "src": "11666:50:17" }, { "body": { - "id": 2710, + "id": 3071, "nodeType": "Block", - "src": "6557:88:17", + "src": "11760:49:17", "statements": [ { "expression": { - "id": 2708, + "id": 3069, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 2698, - "name": "destinationAddress", + "id": 3061, + "name": "result", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2678, - "src": "6571:18:17", + "referencedDeclaration": 3031, + "src": "11774:6:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3063, + "indexExpression": { + "id": 3062, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3052, + "src": "11781:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "11774:9:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 3064, + "name": "words", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3044, + "src": "11786:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 2704, + "id": 3068, "indexExpression": { "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 2703, + "id": 3067, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 2701, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2699, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2687, - "src": "6590:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 2700, - "name": "PUBKEY_HASH_START", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2265, - "src": "6594:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "6590:21:17", + "id": 3065, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3052, + "src": "11792:1:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "+", + "operator": "-", "rightExpression": { "hexValue": "31", - "id": 2702, + "id": 3066, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6614:1:17", + "src": "11796:1:17", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "6590:25:17", + "src": "11792:5:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "isConstant": false, "isLValue": true, "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "6571:45:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 2705, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2663, - "src": "6619:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 2707, - "indexExpression": { - "id": 2706, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2687, - "src": "6632:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6619:15:17", + "src": "11786:12:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, - "src": "6571:63:17", + "src": "11774:24:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, - "id": 2709, + "id": 3070, "nodeType": "ExpressionStatement", - "src": "6571:63:17" + "src": "11774:24:17" } ] }, "condition": { "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 2694, + "id": 3057, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2690, + "id": 3055, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2687, - "src": "6510:1:17", + "referencedDeclaration": 3052, + "src": "11743:1:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 2693, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "id": 2691, - "name": "PUBKEY_HASH_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2262, - "src": "6514:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2692, - "name": "PUBKEY_HASH_START", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2265, - "src": "6533:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "6514:36:17", + "id": 3056, + "name": "length", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3023, + "src": "11747:6:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "6510:40:17", + "src": "11743:10:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 2711, + "id": 3072, "initializationExpression": { "assignments": [ - 2687 + 3052 ], "declarations": [ { "constant": false, - "id": 2687, + "id": 3052, "mutability": "mutable", "name": "i", - "nameLocation": "6487:1:17", - "nodeType": "VariableDeclaration", - "scope": 2711, - "src": "6481:7:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 2686, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "6481:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "id": 2689, - "initialValue": { - "id": 2688, - "name": "PUBKEY_HASH_START", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2265, - "src": "6491:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6481:27:17" - }, - "loopExpression": { - "expression": { - "id": 2696, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "6552:3:17", - "subExpression": { - "id": 2695, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2687, - "src": "6552:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 2697, - "nodeType": "ExpressionStatement", - "src": "6552:3:17" - }, - "nodeType": "ForStatement", - "src": "6477:168:17" - }, - { - "expression": { - "id": 2719, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2712, - "name": "destinationAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2678, - "src": "6655:18:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2714, - "indexExpression": { - "hexValue": "30", - "id": 2713, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6674:1:17", + "nameLocation": "11736:1:17", + "nodeType": "VariableDeclaration", + "scope": 3072, + "src": "11731:6:17", + "stateVariable": false, + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "value": "0" - }, + "typeName": { + "id": 3051, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "11731:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3054, + "initialValue": { + "hexValue": "31", + "id": 3053, "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "6655:21:17", + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11740:1:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "condition": { - "id": 2715, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2665, - "src": "6679:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseExpression": { - "id": 2717, - "name": "PUBKEY_HASH_TESTNET_BYTE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2271, - "src": "6715:24:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" }, - "id": 2718, + "value": "1" + }, + "nodeType": "VariableDeclarationStatement", + "src": "11731:10:17" + }, + "loopExpression": { + "expression": { + "id": 3059, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "Conditional", - "src": "6679:60:17", - "trueExpression": { - "id": 2716, - "name": "PUBKEY_HASH_MAINNET_BYTE", + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "11755:3:17", + "subExpression": { + "id": 3058, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2268, - "src": "6688:24:17", + "referencedDeclaration": 3052, + "src": "11755:1:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "6655:84:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } + "id": 3060, + "nodeType": "ExpressionStatement", + "src": "11755:3:17" }, - "id": 2720, - "nodeType": "ExpressionStatement", - "src": "6655:84:17" + "nodeType": "ForStatement", + "src": "11726:83:17" }, { "expression": { - "id": 2721, - "name": "destinationAddress", + "id": 3073, + "name": "result", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2678, - "src": "6756:18:17", + "referencedDeclaration": 3031, + "src": "11825:6:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 2669, - "id": 2722, + "functionReturnParameters": 3014, + "id": 3074, "nodeType": "Return", - "src": "6749:25:17" + "src": "11818:13:17" } ] }, "documentation": { - "id": 2661, + "id": 3008, "nodeType": "StructuredDocumentation", - "src": "5733:459:17", - "text": "@notice Parse a raw pay-to-public-key-hash output script to get the corresponding address,\n the resulting byte array doesn't include the checksum bytes of the base58check encoding at\n the end\n @param outputScript the fragment of the raw transaction containing the raw output script\n @param mainnet if the address to generate is from mainnet or testnet \n @return The address generated using the receiver's public key hash" + "src": "10945:376:17", + "text": "@notice Parse a raw pay-to-witness-script-hash output script to get the corresponding address words,\n the resulting words are only the data part of the bech32 encoding and doesn't include the HRP\n @param outputScript the fragment of the raw transaction containing the raw output script\n @return The address bech32 words generated using the script hash" }, - "functionSelector": "4c03fe59", - "id": 2724, + "functionSelector": "96743c31", + "id": 3076, "implemented": true, "kind": "function", "modifiers": [], - "name": "parsePayToPubKeyHash", - "nameLocation": "6206:20:17", + "name": "parsePayToWitnessScriptHash", + "nameLocation": "11335:27:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 2666, + "id": 3011, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2663, + "id": 3010, "mutability": "mutable", "name": "outputScript", - "nameLocation": "6242:12:17", + "nameLocation": "11378:12:17", "nodeType": "VariableDeclaration", - "scope": 2724, - "src": "6227:27:17", + "scope": 3076, + "src": "11363:27:17", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -17277,60 +22490,33 @@ "typeString": "bytes" }, "typeName": { - "id": 2662, + "id": 3009, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "6227:5:17", + "src": "11363:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" - }, - { - "constant": false, - "id": 2665, - "mutability": "mutable", - "name": "mainnet", - "nameLocation": "6261:7:17", - "nodeType": "VariableDeclaration", - "scope": 2724, - "src": "6256:12:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2664, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "6256:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" } ], - "src": "6226:43:17" + "src": "11362:29:17" }, "returnParameters": { - "id": 2669, + "id": 3014, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2668, + "id": 3013, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2724, - "src": "6291:12:17", + "scope": 3076, + "src": "11413:12:17", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -17338,10 +22524,10 @@ "typeString": "bytes" }, "typeName": { - "id": 2667, + "id": 3012, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "6291:5:17", + "src": "11413:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -17350,19 +22536,19 @@ "visibility": "internal" } ], - "src": "6290:14:17" + "src": "11412:14:17" }, - "scope": 3228, - "src": "6197:584:17", + "scope": 3743, + "src": "11326:512:17", "stateMutability": "pure", "virtual": false, "visibility": "public" }, { "body": { - "id": 2787, + "id": 3144, "nodeType": "Block", - "src": "7339:475:17", + "src": "12314:418:17", "statements": [ { "expression": { @@ -17370,12 +22556,12 @@ { "arguments": [ { - "id": 2736, + "id": 3086, "name": "outputScript", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2727, - "src": "7370:12:17", + "referencedDeclaration": 3079, + "src": "12345:12:17", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" @@ -17389,76 +22575,294 @@ "typeString": "bytes calldata" } ], - "id": 2735, - "name": "isP2SHOutput", + "id": 3085, + "name": "isP2TROutput", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2660, - "src": "7357:12:17", + "referencedDeclaration": 2810, + "src": "12332:12:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", "typeString": "function (bytes memory) pure returns (bool)" } - }, - "id": 2737, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7357:26:17", - "tryCall": false, + }, + "id": 3087, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12332:26:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "536372697074206861736e27742074686520726571756972656420737472756374757265", + "id": 3088, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12360:38:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", + "typeString": "literal_string \"Script hasn't the required structure\"" + }, + "value": "Script hasn't the required structure" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", + "typeString": "literal_string \"Script hasn't the required structure\"" + } + ], + "id": 3084, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "12324:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12324:75:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3090, + "nodeType": "ExpressionStatement", + "src": "12324:75:17" + }, + { + "assignments": [ + 3092 + ], + "declarations": [ + { + "constant": false, + "id": 3092, + "mutability": "mutable", + "name": "length", + "nameLocation": "12414:6:17", + "nodeType": "VariableDeclaration", + "scope": 3144, + "src": "12409:11:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3091, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "12409:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3098, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 3093, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12423:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "arguments": [ + { + "id": 3095, + "name": "TAPROOT_PUBKEY_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2262, + "src": "12442:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3094, + "name": "total5BitWords", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3742, + "src": "12427:14:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256) pure returns (uint256)" + } + }, + "id": 3096, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "12427:35:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12423:39:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "12409:53:17" + }, + { + "assignments": [ + 3100 + ], + "declarations": [ + { + "constant": false, + "id": 3100, + "mutability": "mutable", + "name": "result", + "nameLocation": "12485:6:17", + "nodeType": "VariableDeclaration", + "scope": 3144, + "src": "12472:19:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3099, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "12472:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" } }, + "visibility": "internal" + } + ], + "id": 3105, + "initialValue": { + "arguments": [ { - "hexValue": "536372697074206861736e27742074686520726571756972656420737472756374757265", - "id": 2738, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7385:38:17", + "id": 3103, + "name": "length", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3092, + "src": "12504:6:17", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", - "typeString": "literal_string \"Script hasn't the required structure\"" - }, - "value": "Script hasn't the required structure" + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", - "typeString": "literal_string \"Script hasn't the required structure\"" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } ], - "id": 2734, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7349:7:17", + "id": 3102, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "12494:9:17", "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 3101, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "12498:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } } }, - "id": 2739, + "id": 3104, "isConstant": false, "isLValue": false, "isPure": false, @@ -17467,31 +22871,102 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7349:75:17", + "src": "12494:17:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } }, - "id": 2740, + "nodeType": "VariableDeclarationStatement", + "src": "12472:39:17" + }, + { + "expression": { + "id": 3110, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 3106, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3100, + "src": "12521:6:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3108, + "indexExpression": { + "hexValue": "30", + "id": 3107, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12528:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "12521:9:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3109, + "name": "WITNESS_VERSION_1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2298, + "src": "12533:17:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "12521:29:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 3111, "nodeType": "ExpressionStatement", - "src": "7349:75:17" + "src": "12521:29:17" }, { "assignments": [ - 2742 + 3113 ], "declarations": [ { "constant": false, - "id": 2742, + "id": 3113, "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "7448:18:17", + "name": "words", + "nameLocation": "12573:5:17", "nodeType": "VariableDeclaration", - "scope": 2787, - "src": "7435:31:17", + "scope": 3144, + "src": "12560:18:17", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -17499,10 +22974,10 @@ "typeString": "bytes" }, "typeName": { - "id": 2741, + "id": 3112, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "7435:5:17", + "src": "12560:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -17511,95 +22986,79 @@ "visibility": "internal" } ], - "id": 2749, + "id": 3119, "initialValue": { "arguments": [ { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 2747, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "id": 2745, - "name": "SCRIPT_HASH_SIZE", + "baseExpression": { + "id": 3115, + "name": "outputScript", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2274, - "src": "7479:16:17", + "referencedDeclaration": 3079, + "src": "12593:12:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" } }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 2746, + "id": 3117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexRangeAccess", + "src": "12593:16:17", + "startExpression": { + "hexValue": "32", + "id": 3116, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7498:1:17", + "src": "12606:1:17", "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" }, - "value": "1" + "value": "2" }, - "src": "7479:20:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_bytes_calldata_ptr_slice", + "typeString": "bytes calldata slice" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_bytes_calldata_ptr_slice", + "typeString": "bytes calldata slice" } ], - "id": 2744, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "7469:9:17", + "id": 3114, + "name": "to5BitWords", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3706, + "src": "12581:11:17", "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) pure returns (bytes memory)" - }, - "typeName": { - "id": 2743, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7473:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory) pure returns (bytes memory)" } }, - "id": 2748, + "id": 3118, "isConstant": false, "isLValue": false, - "isPure": true, + "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7469:31:17", + "src": "12581:29:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -17607,298 +23066,242 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "7435:65:17" + "src": "12560:50:17" }, { "body": { - "id": 2774, + "id": 3140, "nodeType": "Block", - "src": "7590:88:17", + "src": "12654:49:17", "statements": [ { "expression": { - "id": 2772, + "id": 3138, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 2762, - "name": "destinationAddress", + "id": 3130, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3100, + "src": "12668:6:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3132, + "indexExpression": { + "id": 3131, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3121, + "src": "12675:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "12668:9:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 3133, + "name": "words", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2742, - "src": "7604:18:17", + "referencedDeclaration": 3113, + "src": "12680:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 2768, + "id": 3137, "indexExpression": { "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 2767, + "id": 3136, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 2765, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2763, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2751, - "src": "7623:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 2764, - "name": "SCRIPT_HASH_START", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2277, - "src": "7627:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "7623:21:17", + "id": 3134, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3121, + "src": "12686:1:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "+", + "operator": "-", "rightExpression": { "hexValue": "31", - "id": 2766, + "id": 3135, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7647:1:17", + "src": "12690:1:17", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "7623:25:17", + "src": "12686:5:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "isConstant": false, "isLValue": true, "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "7604:45:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 2769, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2727, - "src": "7652:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 2771, - "indexExpression": { - "id": 2770, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2751, - "src": "7665:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7652:15:17", + "src": "12680:12:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, - "src": "7604:63:17", + "src": "12668:24:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, - "id": 2773, + "id": 3139, "nodeType": "ExpressionStatement", - "src": "7604:63:17" + "src": "12668:24:17" } ] }, "condition": { "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 2758, + "id": 3126, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2754, + "id": 3124, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2751, - "src": "7543:1:17", + "referencedDeclaration": 3121, + "src": "12637:1:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 2757, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "id": 2755, - "name": "SCRIPT_HASH_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2274, - "src": "7547:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2756, - "name": "SCRIPT_HASH_START", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2277, - "src": "7566:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "7547:36:17", + "id": 3125, + "name": "length", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3092, + "src": "12641:6:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "7543:40:17", + "src": "12637:10:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 2775, + "id": 3141, "initializationExpression": { "assignments": [ - 2751 + 3121 ], "declarations": [ { "constant": false, - "id": 2751, + "id": 3121, "mutability": "mutable", "name": "i", - "nameLocation": "7520:1:17", + "nameLocation": "12630:1:17", "nodeType": "VariableDeclaration", - "scope": 2775, - "src": "7514:7:17", + "scope": 3141, + "src": "12625:6:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, "typeName": { - "id": 2750, - "name": "uint8", + "id": 3120, + "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7514:5:17", + "src": "12625:4:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "visibility": "internal" } ], - "id": 2753, + "id": 3123, "initialValue": { - "id": 2752, - "name": "SCRIPT_HASH_START", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2277, - "src": "7524:17:17", + "hexValue": "31", + "id": 3122, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12634:1:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" }, "nodeType": "VariableDeclarationStatement", - "src": "7514:27:17" + "src": "12625:10:17" }, "loopExpression": { "expression": { - "id": 2760, + "id": 3128, "isConstant": false, "isLValue": false, "isPure": false, @@ -17906,187 +23309,78 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "7585:3:17", + "src": "12649:3:17", "subExpression": { - "id": 2759, + "id": 3127, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2751, - "src": "7585:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 2761, - "nodeType": "ExpressionStatement", - "src": "7585:3:17" - }, - "nodeType": "ForStatement", - "src": "7510:168:17" - }, - { - "expression": { - "id": 2783, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2776, - "name": "destinationAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2742, - "src": "7688:18:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2778, - "indexExpression": { - "hexValue": "30", - "id": 2777, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7707: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": "7688:21:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "condition": { - "id": 2779, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2729, - "src": "7712:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseExpression": { - "id": 2781, - "name": "SCRIPT_HASH_TESTNET_BYTE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2283, - "src": "7748:24:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 2782, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "Conditional", - "src": "7712:60:17", - "trueExpression": { - "id": 2780, - "name": "SCRIPT_HASH_MAINNET_BYTE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2280, - "src": "7721:24:17", + "referencedDeclaration": 3121, + "src": "12649:1:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "7688:84:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } + "id": 3129, + "nodeType": "ExpressionStatement", + "src": "12649:3:17" }, - "id": 2784, - "nodeType": "ExpressionStatement", - "src": "7688:84:17" + "nodeType": "ForStatement", + "src": "12620:83:17" }, { "expression": { - "id": 2785, - "name": "destinationAddress", + "id": 3142, + "name": "result", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2742, - "src": "7789:18:17", + "referencedDeclaration": 3100, + "src": "12719:6:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 2733, - "id": 2786, + "functionReturnParameters": 3083, + "id": 3143, "nodeType": "Return", - "src": "7782:25:17" + "src": "12712:13:17" } ] }, "documentation": { - "id": 2725, + "id": 3077, "nodeType": "StructuredDocumentation", - "src": "6787:439:17", - "text": "@notice Parse a raw pay-to-script-hash output script to get the corresponding address,\n the resulting byte array doesn't include the checksum bytes of the base58check encoding at\n the end\n @param outputScript the fragment of the raw transaction containing the raw output script\n @param mainnet if the address to generate is from mainnet or testnet\n @return The address generated using the script hash" + "src": "11844:374:17", + "text": "@notice Parse a raw pay-to-taproot output script to get the corresponding address words,\n the resulting words are only the data part of the bech32m encoding and doesn't include the HRP\n @param outputScript the fragment of the raw transaction containing the raw output script\n @return The address bech32m words generated using the taproot pubkey hash" }, - "functionSelector": "06ac4100", - "id": 2788, + "functionSelector": "6bdd7563", + "id": 3145, "implemented": true, "kind": "function", "modifiers": [], - "name": "parsePayToScriptHash", - "nameLocation": "7240:20:17", + "name": "parsePayToTaproot", + "nameLocation": "12232:17:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 2730, + "id": 3080, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2727, + "id": 3079, "mutability": "mutable", "name": "outputScript", - "nameLocation": "7276:12:17", + "nameLocation": "12265:12:17", "nodeType": "VariableDeclaration", - "scope": 2788, - "src": "7261:27:17", + "scope": 3145, + "src": "12250:27:17", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -18094,60 +23388,33 @@ "typeString": "bytes" }, "typeName": { - "id": 2726, + "id": 3078, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "7261:5:17", + "src": "12250:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" - }, - { - "constant": false, - "id": 2729, - "mutability": "mutable", - "name": "mainnet", - "nameLocation": "7295:7:17", - "nodeType": "VariableDeclaration", - "scope": 2788, - "src": "7290:12:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2728, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7290:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" } ], - "src": "7260:43:17" + "src": "12249:29:17" }, "returnParameters": { - "id": 2733, + "id": 3083, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2732, + "id": 3082, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2788, - "src": "7325:12:17", + "scope": 3145, + "src": "12300:12:17", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -18155,10 +23422,10 @@ "typeString": "bytes" }, "typeName": { - "id": 2731, + "id": 3081, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "7325:5:17", + "src": "12300:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -18167,19 +23434,19 @@ "visibility": "internal" } ], - "src": "7324:14:17" + "src": "12299:14:17" }, - "scope": 3228, - "src": "7231:583:17", + "scope": 3743, + "src": "12223:509:17", "stateMutability": "pure", "virtual": false, "visibility": "public" }, { "body": { - "id": 2818, + "id": 3175, "nodeType": "Block", - "src": "8137:169:17", + "src": "13055:169:17", "statements": [ { "expression": { @@ -18189,33 +23456,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2800, + "id": 3157, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 2797, + "id": 3154, "name": "outputScript", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2791, - "src": "8155:12:17", + "referencedDeclaration": 3148, + "src": "13073:12:17", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, - "id": 2798, + "id": 3155, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8168:6:17", + "memberLocation": "13086:6:17", "memberName": "length", "nodeType": "MemberAccess", - "src": "8155:19:17", + "src": "13073:19:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18225,21 +23492,21 @@ "operator": ">", "rightExpression": { "hexValue": "31", - "id": 2799, + "id": 3156, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8177:1:17", + "src": "13095:1:17", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "8155:23:17", + "src": "13073:23:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18247,14 +23514,14 @@ }, { "hexValue": "496e76616c69642073697a65", - "id": 2801, + "id": 3158, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8179:14:17", + "src": "13097:14:17", "typeDescriptions": { "typeIdentifier": "t_stringliteral_151b9b932514cffea6d6fb8ef0dc06f3ba8d7fdd73eacee7d06d663fcfd3d8d0", "typeString": "literal_string \"Invalid size\"" @@ -18273,7 +23540,7 @@ "typeString": "literal_string \"Invalid size\"" } ], - "id": 2796, + "id": 3153, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -18281,13 +23548,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "8147:7:17", + "src": "13065:7:17", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2802, + "id": 3159, "isConstant": false, "isLValue": false, "isPure": false, @@ -18296,16 +23563,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8147:47:17", + "src": "13065:47:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2803, + "id": 3160, "nodeType": "ExpressionStatement", - "src": "8147:47:17" + "src": "13065:47:17" }, { "expression": { @@ -18315,35 +23582,35 @@ "typeIdentifier": "t_bytes1", "typeString": "bytes1" }, - "id": 2810, + "id": 3167, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 2805, + "id": 3162, "name": "outputScript", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2791, - "src": "8212:12:17", + "referencedDeclaration": 3148, + "src": "13130:12:17", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, - "id": 2807, + "id": 3164, "indexExpression": { "hexValue": "30", - "id": 2806, + "id": 3163, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8225:1:17", + "src": "13143:1:17", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -18355,7 +23622,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8212:15:17", + "src": "13130:15:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" @@ -18365,33 +23632,33 @@ "operator": "==", "rightExpression": { "expression": { - "id": 2808, + "id": 3165, "name": "OpCodes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3249, - "src": "8231:7:17", + "referencedDeclaration": 3770, + "src": "13149:7:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3249_$", + "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", "typeString": "type(library OpCodes)" } }, - "id": 2809, + "id": 3166, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8239:9:17", + "memberLocation": "13157:9:17", "memberName": "OP_RETURN", "nodeType": "MemberAccess", - "referencedDeclaration": 3245, - "src": "8231:17:17", + "referencedDeclaration": 3760, + "src": "13149:17:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, - "src": "8212:36:17", + "src": "13130:36:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18399,14 +23666,14 @@ }, { "hexValue": "4e6f74204f505f52455455524e", - "id": 2811, + "id": 3168, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8250:15:17", + "src": "13168:15:17", "typeDescriptions": { "typeIdentifier": "t_stringliteral_91402c28d33a78ed08b610916663678b602b8439e472ae56e5b350939be81082", "typeString": "literal_string \"Not OP_RETURN\"" @@ -18425,7 +23692,7 @@ "typeString": "literal_string \"Not OP_RETURN\"" } ], - "id": 2804, + "id": 3161, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -18433,13 +23700,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "8204:7:17", + "src": "13122:7:17", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2812, + "id": 3169, "isConstant": false, "isLValue": false, "isPure": false, @@ -18448,48 +23715,48 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8204:62:17", + "src": "13122:62:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2813, + "id": 3170, "nodeType": "ExpressionStatement", - "src": "8204:62:17" + "src": "13122:62:17" }, { "expression": { "baseExpression": { - "id": 2814, + "id": 3171, "name": "outputScript", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2791, - "src": "8283:12:17", + "referencedDeclaration": 3148, + "src": "13201:12:17", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, - "id": 2816, + "id": 3173, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexRangeAccess", - "src": "8283:16:17", + "src": "13201:16:17", "startExpression": { "hexValue": "31", - "id": 2815, + "id": 3172, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8296:1:17", + "src": "13214:1:17", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -18501,40 +23768,40 @@ "typeString": "bytes calldata slice" } }, - "functionReturnParameters": 2795, - "id": 2817, + "functionReturnParameters": 3152, + "id": 3174, "nodeType": "Return", - "src": "8276:23:17" + "src": "13194:23:17" } ] }, "documentation": { - "id": 2789, + "id": 3146, "nodeType": "StructuredDocumentation", - "src": "7820:219:17", + "src": "12738:219:17", "text": "@notice Parse a raw null-data output script to get its content\n @param outputScript the fragment of the raw transaction containing the raw output script \n @return The content embedded inside the script" }, "functionSelector": "2d56f323", - "id": 2819, + "id": 3176, "implemented": true, "kind": "function", "modifiers": [], "name": "parseNullDataScript", - "nameLocation": "8053:19:17", + "nameLocation": "12971:19:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 2792, + "id": 3149, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2791, + "id": 3148, "mutability": "mutable", "name": "outputScript", - "nameLocation": "8088:12:17", + "nameLocation": "13006:12:17", "nodeType": "VariableDeclaration", - "scope": 2819, - "src": "8073:27:17", + "scope": 3176, + "src": "12991:27:17", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -18542,10 +23809,10 @@ "typeString": "bytes" }, "typeName": { - "id": 2790, + "id": 3147, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "8073:5:17", + "src": "12991:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -18554,21 +23821,21 @@ "visibility": "internal" } ], - "src": "8072:29:17" + "src": "12990:29:17" }, "returnParameters": { - "id": 2795, + "id": 3152, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2794, + "id": 3151, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2819, - "src": "8123:12:17", + "scope": 3176, + "src": "13041:12:17", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -18576,10 +23843,10 @@ "typeString": "bytes" }, "typeName": { - "id": 2793, + "id": 3150, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "8123:5:17", + "src": "13041:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -18588,34 +23855,34 @@ "visibility": "internal" } ], - "src": "8122:14:17" + "src": "13040:14:17" }, - "scope": 3228, - "src": "8044:262:17", + "scope": 3743, + "src": "12962:262:17", "stateMutability": "pure", "virtual": false, "visibility": "public" }, { "body": { - "id": 2886, + "id": 3243, "nodeType": "Block", - "src": "8550:427:17", + "src": "13468:427:17", "statements": [ { "assignments": [ - 2828 + 3185 ], "declarations": [ { "constant": false, - "id": 2828, + "id": 3185, "mutability": "mutable", "name": "doubleSha256", - "nameLocation": "8573:12:17", + "nameLocation": "13491:12:17", "nodeType": "VariableDeclaration", - "scope": 2886, - "src": "8560:25:17", + "scope": 3243, + "src": "13478:25:17", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -18623,10 +23890,10 @@ "typeString": "bytes" }, "typeName": { - "id": 2827, + "id": 3184, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "8560:5:17", + "src": "13478:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -18635,7 +23902,7 @@ "visibility": "internal" } ], - "id": 2840, + "id": 3197, "initialValue": { "arguments": [ { @@ -18645,12 +23912,12 @@ { "arguments": [ { - "id": 2835, + "id": 3192, "name": "btcTx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2822, - "src": "8636:5:17", + "referencedDeclaration": 3179, + "src": "13554:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" @@ -18664,18 +23931,18 @@ "typeString": "bytes calldata" } ], - "id": 2834, + "id": 3191, "name": "sha256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967274, - "src": "8629:6:17", + "src": "13547:6:17", "typeDescriptions": { "typeIdentifier": "t_function_sha256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 2836, + "id": 3193, "isConstant": false, "isLValue": false, "isPure": false, @@ -18684,7 +23951,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8629:13:17", + "src": "13547:13:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -18700,32 +23967,32 @@ } ], "expression": { - "id": 2832, + "id": 3189, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967295, - "src": "8612:3:17", + "src": "13530:3:17", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 2833, + "id": 3190, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8616:12:17", + "memberLocation": "13534:12:17", "memberName": "encodePacked", "nodeType": "MemberAccess", - "src": "8612:16:17", + "src": "13530:16:17", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 2837, + "id": 3194, "isConstant": false, "isLValue": false, "isPure": false, @@ -18734,7 +24001,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8612:31:17", + "src": "13530:31:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -18749,18 +24016,18 @@ "typeString": "bytes memory" } ], - "id": 2831, + "id": 3188, "name": "sha256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967274, - "src": "8605:6:17", + "src": "13523:6:17", "typeDescriptions": { "typeIdentifier": "t_function_sha256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 2838, + "id": 3195, "isConstant": false, "isLValue": false, "isPure": false, @@ -18769,7 +24036,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8605:39:17", + "src": "13523:39:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -18785,32 +24052,32 @@ } ], "expression": { - "id": 2829, + "id": 3186, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967295, - "src": "8588:3:17", + "src": "13506:3:17", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 2830, + "id": 3187, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8592:12:17", + "memberLocation": "13510:12:17", "memberName": "encodePacked", "nodeType": "MemberAccess", - "src": "8588:16:17", + "src": "13506:16:17", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 2839, + "id": 3196, "isConstant": false, "isLValue": false, "isPure": false, @@ -18819,7 +24086,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8588:57:17", + "src": "13506:57:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -18827,22 +24094,22 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "8560:85:17" + "src": "13478:85:17" }, { "assignments": [ - 2842 + 3199 ], "declarations": [ { "constant": false, - "id": 2842, + "id": 3199, "mutability": "mutable", "name": "aux", - "nameLocation": "8662:3:17", + "nameLocation": "13580:3:17", "nodeType": "VariableDeclaration", - "scope": 2886, - "src": "8655:10:17", + "scope": 3243, + "src": "13573:10:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18850,10 +24117,10 @@ "typeString": "bytes1" }, "typeName": { - "id": 2841, + "id": 3198, "name": "bytes1", "nodeType": "ElementaryTypeName", - "src": "8655:6:17", + "src": "13573:6:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" @@ -18862,30 +24129,30 @@ "visibility": "internal" } ], - "id": 2843, + "id": 3200, "nodeType": "VariableDeclarationStatement", - "src": "8655:10:17" + "src": "13573:10:17" }, { "body": { - "id": 2878, + "id": 3235, "nodeType": "Block", - "src": "8705:138:17", + "src": "13623:138:17", "statements": [ { "expression": { - "id": 2858, + "id": 3215, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 2854, + "id": 3211, "name": "aux", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2842, - "src": "8719:3:17", + "referencedDeclaration": 3199, + "src": "13637:3:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" @@ -18895,25 +24162,25 @@ "operator": "=", "rightHandSide": { "baseExpression": { - "id": 2855, + "id": 3212, "name": "doubleSha256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2828, - "src": "8725:12:17", + "referencedDeclaration": 3185, + "src": "13643:12:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 2857, + "id": 3214, "indexExpression": { - "id": 2856, + "id": 3213, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2845, - "src": "8738:1:17", + "referencedDeclaration": 3202, + "src": "13656:1:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18924,50 +24191,50 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8725:15:17", + "src": "13643:15:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, - "src": "8719:21:17", + "src": "13637:21:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, - "id": 2859, + "id": 3216, "nodeType": "ExpressionStatement", - "src": "8719:21:17" + "src": "13637:21:17" }, { "expression": { - "id": 2868, + "id": 3225, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 2860, + "id": 3217, "name": "doubleSha256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2828, - "src": "8754:12:17", + "referencedDeclaration": 3185, + "src": "13672:12:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 2862, + "id": 3219, "indexExpression": { - "id": 2861, + "id": 3218, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2845, - "src": "8767:1:17", + "referencedDeclaration": 3202, + "src": "13685:1:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18978,7 +24245,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "8754:15:17", + "src": "13672:15:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" @@ -18988,38 +24255,38 @@ "operator": "=", "rightHandSide": { "baseExpression": { - "id": 2863, + "id": 3220, "name": "doubleSha256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2828, - "src": "8772:12:17", + "referencedDeclaration": 3185, + "src": "13690:12:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 2867, + "id": 3224, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2866, + "id": 3223, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "hexValue": "3331", - "id": 2864, + "id": 3221, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8785:2:17", + "src": "13703:2:17", "typeDescriptions": { "typeIdentifier": "t_rational_31_by_1", "typeString": "int_const 31" @@ -19029,18 +24296,18 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 2865, + "id": 3222, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2845, - "src": "8790:1:17", + "referencedDeclaration": 3202, + "src": "13708:1:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8785:6:17", + "src": "13703:6:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19051,63 +24318,63 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8772:20:17", + "src": "13690:20:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, - "src": "8754:38:17", + "src": "13672:38:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, - "id": 2869, + "id": 3226, "nodeType": "ExpressionStatement", - "src": "8754:38:17" + "src": "13672:38:17" }, { "expression": { - "id": 2876, + "id": 3233, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 2870, + "id": 3227, "name": "doubleSha256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2828, - "src": "8806:12:17", + "referencedDeclaration": 3185, + "src": "13724:12:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 2874, + "id": 3231, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2873, + "id": 3230, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "hexValue": "3331", - "id": 2871, + "id": 3228, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8819:2:17", + "src": "13737:2:17", "typeDescriptions": { "typeIdentifier": "t_rational_31_by_1", "typeString": "int_const 31" @@ -19117,18 +24384,18 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 2872, + "id": 3229, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2845, - "src": "8824:1:17", + "referencedDeclaration": 3202, + "src": "13742:1:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8819:6:17", + "src": "13737:6:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19139,7 +24406,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "8806:20:17", + "src": "13724:20:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" @@ -19148,26 +24415,26 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 2875, + "id": 3232, "name": "aux", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2842, - "src": "8829:3:17", + "referencedDeclaration": 3199, + "src": "13747:3:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, - "src": "8806:26:17", + "src": "13724:26:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, - "id": 2877, + "id": 3234, "nodeType": "ExpressionStatement", - "src": "8806:26:17" + "src": "13724:26:17" } ] }, @@ -19176,18 +24443,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2850, + "id": 3207, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2848, + "id": 3205, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2845, - "src": "8692:1:17", + "referencedDeclaration": 3202, + "src": "13610:1:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19197,41 +24464,41 @@ "operator": "<", "rightExpression": { "hexValue": "3136", - "id": 2849, + "id": 3206, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8696:2:17", + "src": "13614:2:17", "typeDescriptions": { "typeIdentifier": "t_rational_16_by_1", "typeString": "int_const 16" }, "value": "16" }, - "src": "8692:6:17", + "src": "13610:6:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 2879, + "id": 3236, "initializationExpression": { "assignments": [ - 2845 + 3202 ], "declarations": [ { "constant": false, - "id": 2845, + "id": 3202, "mutability": "mutable", "name": "i", - "nameLocation": "8685:1:17", + "nameLocation": "13603:1:17", "nodeType": "VariableDeclaration", - "scope": 2879, - "src": "8680:6:17", + "scope": 3236, + "src": "13598:6:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19239,10 +24506,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2844, + "id": 3201, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8680:4:17", + "src": "13598:4:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19251,17 +24518,17 @@ "visibility": "internal" } ], - "id": 2847, + "id": 3204, "initialValue": { "hexValue": "30", - "id": 2846, + "id": 3203, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8689:1:17", + "src": "13607:1:17", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -19269,11 +24536,11 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "8680:10:17" + "src": "13598:10:17" }, "loopExpression": { "expression": { - "id": 2852, + "id": 3209, "isConstant": false, "isLValue": false, "isPure": false, @@ -19281,14 +24548,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "8700:3:17", + "src": "13618:3:17", "subExpression": { - "id": 2851, + "id": 3208, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2845, - "src": "8700:1:17", + "referencedDeclaration": 3202, + "src": "13618:1:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19299,27 +24566,27 @@ "typeString": "uint256" } }, - "id": 2853, + "id": 3210, "nodeType": "ExpressionStatement", - "src": "8700:3:17" + "src": "13618:3:17" }, "nodeType": "ForStatement", - "src": "8675:168:17" + "src": "13593:168:17" }, { "assignments": [ - 2881 + 3238 ], "declarations": [ { "constant": false, - "id": 2881, + "id": 3238, "mutability": "mutable", "name": "result", - "nameLocation": "8861:6:17", + "nameLocation": "13779:6:17", "nodeType": "VariableDeclaration", - "scope": 2886, - "src": "8853:14:17", + "scope": 3243, + "src": "13771:14:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19327,10 +24594,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2880, + "id": 3237, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "8853:7:17", + "src": "13771:7:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19339,18 +24606,18 @@ "visibility": "internal" } ], - "id": 2882, + "id": 3239, "nodeType": "VariableDeclarationStatement", - "src": "8853:14:17" + "src": "13771:14:17" }, { "AST": { "nodeType": "YulBlock", - "src": "8886:62:17", + "src": "13804:62:17", "statements": [ { "nodeType": "YulAssignment", - "src": "8900:38:17", + "src": "13818:38:17", "value": { "arguments": [ { @@ -19358,12 +24625,12 @@ { "name": "doubleSha256", "nodeType": "YulIdentifier", - "src": "8920:12:17" + "src": "13838:12:17" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8934:2:17", + "src": "13852:2:17", "type": "", "value": "32" } @@ -19371,25 +24638,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8916:3:17" + "src": "13834:3:17" }, "nodeType": "YulFunctionCall", - "src": "8916:21:17" + "src": "13834:21:17" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "8910:5:17" + "src": "13828:5:17" }, "nodeType": "YulFunctionCall", - "src": "8910:28:17" + "src": "13828:28:17" }, "variableNames": [ { "name": "result", "nodeType": "YulIdentifier", - "src": "8900:6:17" + "src": "13818:6:17" } ] } @@ -19398,71 +24665,71 @@ "evmVersion": "paris", "externalReferences": [ { - "declaration": 2828, + "declaration": 3185, "isOffset": false, "isSlot": false, - "src": "8920:12:17", + "src": "13838:12:17", "valueSize": 1 }, { - "declaration": 2881, + "declaration": 3238, "isOffset": false, "isSlot": false, - "src": "8900:6:17", + "src": "13818:6:17", "valueSize": 1 } ], - "id": 2883, + "id": 3240, "nodeType": "InlineAssembly", - "src": "8877:71:17" + "src": "13795:71:17" }, { "expression": { - "id": 2884, + "id": 3241, "name": "result", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2881, - "src": "8964:6:17", + "referencedDeclaration": 3238, + "src": "13882:6:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "functionReturnParameters": 2826, - "id": 2885, + "functionReturnParameters": 3183, + "id": 3242, "nodeType": "Return", - "src": "8957:13:17" + "src": "13875:13:17" } ] }, "documentation": { - "id": 2820, + "id": 3177, "nodeType": "StructuredDocumentation", - "src": "8312:162:17", + "src": "13230:162:17", "text": "@notice Hash a bitcoin raw transaction to get its id (reversed double sha256)\n @param btcTx the transaction to hash\n @return The transaction id " }, "functionSelector": "fea8ba63", - "id": 2887, + "id": 3244, "implemented": true, "kind": "function", "modifiers": [], "name": "hashBtcTx", - "nameLocation": "8488:9:17", + "nameLocation": "13406:9:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 2823, + "id": 3180, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2822, + "id": 3179, "mutability": "mutable", "name": "btcTx", - "nameLocation": "8513:5:17", + "nameLocation": "13431:5:17", "nodeType": "VariableDeclaration", - "scope": 2887, - "src": "8498:20:17", + "scope": 3244, + "src": "13416:20:17", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -19470,10 +24737,10 @@ "typeString": "bytes" }, "typeName": { - "id": 2821, + "id": 3178, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "8498:5:17", + "src": "13416:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -19482,21 +24749,21 @@ "visibility": "internal" } ], - "src": "8497:22:17" + "src": "13415:22:17" }, "returnParameters": { - "id": 2826, + "id": 3183, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2825, + "id": 3182, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2887, - "src": "8541:7:17", + "scope": 3244, + "src": "13459:7:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19504,10 +24771,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2824, + "id": 3181, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "8541:7:17", + "src": "13459:7:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19516,19 +24783,19 @@ "visibility": "internal" } ], - "src": "8540:9:17" + "src": "13458:9:17" }, - "scope": 3228, - "src": "8479:498:17", + "scope": 3743, + "src": "13397:498:17", "stateMutability": "pure", "virtual": false, "visibility": "public" }, { "body": { - "id": 2908, + "id": 3265, "nodeType": "Block", - "src": "9211:222:17", + "src": "14129:222:17", "statements": [ { "expression": { @@ -19538,33 +24805,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2899, + "id": 3256, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 2896, + "id": 3253, "name": "header", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2890, - "src": "9333:6:17", + "referencedDeclaration": 3247, + "src": "14251:6:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 2897, + "id": 3254, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9340:6:17", + "memberLocation": "14258:6:17", "memberName": "length", "nodeType": "MemberAccess", - "src": "9333:13:17", + "src": "14251:13:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19574,21 +24841,21 @@ "operator": "==", "rightExpression": { "hexValue": "3830", - "id": 2898, + "id": 3255, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9350:2:17", + "src": "14268:2:17", "typeDescriptions": { "typeIdentifier": "t_rational_80_by_1", "typeString": "int_const 80" }, "value": "80" }, - "src": "9333:19:17", + "src": "14251:19:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19596,14 +24863,14 @@ }, { "hexValue": "496e76616c696420686561646572206c656e677468", - "id": 2900, + "id": 3257, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "9354:23:17", + "src": "14272:23:17", "typeDescriptions": { "typeIdentifier": "t_stringliteral_62784c5b4854856e20fdf3da2ed017d8d7ad91e96ee28ef17acb0683953b91b7", "typeString": "literal_string \"Invalid header length\"" @@ -19622,7 +24889,7 @@ "typeString": "literal_string \"Invalid header length\"" } ], - "id": 2895, + "id": 3252, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -19630,13 +24897,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "9325:7:17", + "src": "14243:7:17", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2901, + "id": 3258, "isConstant": false, "isLValue": false, "isPure": false, @@ -19645,27 +24912,27 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9325:53:17", + "src": "14243:53:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2902, + "id": 3259, "nodeType": "ExpressionStatement", - "src": "9325:53:17" + "src": "14243:53:17" }, { "expression": { "arguments": [ { - "id": 2904, + "id": 3261, "name": "header", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2890, - "src": "9415:6:17", + "referencedDeclaration": 3247, + "src": "14333:6:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -19673,14 +24940,14 @@ }, { "hexValue": "3638", - "id": 2905, + "id": 3262, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9423:2:17", + "src": "14341:2:17", "typeDescriptions": { "typeIdentifier": "t_rational_68_by_1", "typeString": "int_const 68" @@ -19699,18 +24966,18 @@ "typeString": "int_const 68" } ], - "id": 2903, + "id": 3260, "name": "sliceUint32FromLSB", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2984, - "src": "9396:18:17", + "referencedDeclaration": 3341, + "src": "14314:18:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint32_$", "typeString": "function (bytes memory,uint256) pure returns (uint32)" } }, - "id": 2906, + "id": 3263, "isConstant": false, "isLValue": false, "isPure": false, @@ -19719,47 +24986,47 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9396:30:17", + "src": "14314:30:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "functionReturnParameters": 2894, - "id": 2907, + "functionReturnParameters": 3251, + "id": 3264, "nodeType": "Return", - "src": "9389:37:17" + "src": "14307:37:17" } ] }, "documentation": { - "id": 2888, + "id": 3245, "nodeType": "StructuredDocumentation", - "src": "8983:142:17", + "src": "13901:142:17", "text": "@dev Gets the timestamp of a Bitcoin block header\n @param header The block header\n @return The timestamp of the block header" }, "functionSelector": "a0cd70fc", - "id": 2909, + "id": 3266, "implemented": true, "kind": "function", "modifiers": [], "name": "getBtcBlockTimestamp", - "nameLocation": "9139:20:17", + "nameLocation": "14057:20:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 2891, + "id": 3248, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2890, + "id": 3247, "mutability": "mutable", "name": "header", - "nameLocation": "9173:6:17", + "nameLocation": "14091:6:17", "nodeType": "VariableDeclaration", - "scope": 2909, - "src": "9160:19:17", + "scope": 3266, + "src": "14078:19:17", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -19767,10 +25034,10 @@ "typeString": "bytes" }, "typeName": { - "id": 2889, + "id": 3246, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "9160:5:17", + "src": "14078:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -19779,21 +25046,21 @@ "visibility": "internal" } ], - "src": "9159:21:17" + "src": "14077:21:17" }, "returnParameters": { - "id": 2894, + "id": 3251, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2893, + "id": 3250, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2909, - "src": "9202:7:17", + "scope": 3266, + "src": "14120:7:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19801,10 +25068,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2892, + "id": 3249, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9202:7:17", + "src": "14120:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19813,19 +25080,19 @@ "visibility": "internal" } ], - "src": "9201:9:17" + "src": "14119:9:17" }, - "scope": 3228, - "src": "9130:303:17", + "scope": 3743, + "src": "14048:303:17", "stateMutability": "pure", "virtual": false, "visibility": "public" }, { "body": { - "id": 2983, + "id": 3340, "nodeType": "Block", - "src": "9586:267:17", + "src": "14504:267:17", "statements": [ { "expression": { @@ -19835,33 +25102,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2924, + "id": 3281, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 2919, + "id": 3276, "name": "bs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2911, - "src": "9604:2:17", + "referencedDeclaration": 3268, + "src": "14522:2:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 2920, + "id": 3277, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9607:6:17", + "memberLocation": "14525:6:17", "memberName": "length", "nodeType": "MemberAccess", - "src": "9604:9:17", + "src": "14522:9:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19874,18 +25141,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2923, + "id": 3280, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2921, + "id": 3278, "name": "offset", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2913, - "src": "9617:6:17", + "referencedDeclaration": 3270, + "src": "14535:6:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19895,27 +25162,27 @@ "operator": "+", "rightExpression": { "hexValue": "34", - "id": 2922, + "id": 3279, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9626:1:17", + "src": "14544:1:17", "typeDescriptions": { "typeIdentifier": "t_rational_4_by_1", "typeString": "int_const 4" }, "value": "4" }, - "src": "9617:10:17", + "src": "14535:10:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9604:23:17", + "src": "14522:23:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19923,14 +25190,14 @@ }, { "hexValue": "536c6963696e67206f7574206f662072616e6765", - "id": 2925, + "id": 3282, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "9629:22:17", + "src": "14547:22:17", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0ad8ca266b3c2b0d5c0f93daeb15638ddfa510fccabc652325dc97cf893869fd", "typeString": "literal_string \"Slicing out of range\"" @@ -19949,7 +25216,7 @@ "typeString": "literal_string \"Slicing out of range\"" } ], - "id": 2918, + "id": 3275, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -19957,13 +25224,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "9596:7:17", + "src": "14514:7:17", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 2926, + "id": 3283, "isConstant": false, "isLValue": false, "isPure": false, @@ -19972,16 +25239,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9596:56:17", + "src": "14514:56:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2927, + "id": 3284, "nodeType": "ExpressionStatement", - "src": "9596:56:17" + "src": "14514:56:17" }, { "expression": { @@ -19989,7 +25256,7 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 2981, + "id": 3338, "isConstant": false, "isLValue": false, "isPure": false, @@ -19999,7 +25266,7 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 2966, + "id": 3323, "isConstant": false, "isLValue": false, "isPure": false, @@ -20009,7 +25276,7 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 2951, + "id": 3308, "isConstant": false, "isLValue": false, "isPure": false, @@ -20020,25 +25287,25 @@ "arguments": [ { "baseExpression": { - "id": 2932, + "id": 3289, "name": "bs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2911, - "src": "9691:2:17", + "referencedDeclaration": 3268, + "src": "14609:2:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 2934, + "id": 3291, "indexExpression": { - "id": 2933, + "id": 3290, "name": "offset", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2913, - "src": "9694:6:17", + "referencedDeclaration": 3270, + "src": "14612:6:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20049,7 +25316,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9691:10:17", + "src": "14609:10:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" @@ -20063,26 +25330,26 @@ "typeString": "bytes1" } ], - "id": 2931, + "id": 3288, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9685:5:17", + "src": "14603:5:17", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint8_$", "typeString": "type(uint8)" }, "typeName": { - "id": 2930, + "id": 3287, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "9685:5:17", + "src": "14603:5:17", "typeDescriptions": {} } }, - "id": 2935, + "id": 3292, "isConstant": false, "isLValue": false, "isPure": false, @@ -20091,7 +25358,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9685:17:17", + "src": "14603:17:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -20106,26 +25373,26 @@ "typeString": "uint8" } ], - "id": 2929, + "id": 3286, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9678:6:17", + "src": "14596:6:17", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint32_$", "typeString": "type(uint32)" }, "typeName": { - "id": 2928, + "id": 3285, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "9678:6:17", + "src": "14596:6:17", "typeDescriptions": {} } }, - "id": 2936, + "id": 3293, "isConstant": false, "isLValue": false, "isPure": false, @@ -20134,7 +25401,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9678:25:17", + "src": "14596:25:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -20150,7 +25417,7 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 2949, + "id": 3306, "isConstant": false, "isLValue": false, "isPure": false, @@ -20161,35 +25428,35 @@ "arguments": [ { "baseExpression": { - "id": 2941, + "id": 3298, "name": "bs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2911, - "src": "9728:2:17", + "referencedDeclaration": 3268, + "src": "14646:2:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 2945, + "id": 3302, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2944, + "id": 3301, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2942, + "id": 3299, "name": "offset", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2913, - "src": "9731:6:17", + "referencedDeclaration": 3270, + "src": "14649:6:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20199,21 +25466,21 @@ "operator": "+", "rightExpression": { "hexValue": "31", - "id": 2943, + "id": 3300, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9740:1:17", + "src": "14658:1:17", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "9731:10:17", + "src": "14649:10:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20224,7 +25491,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9728:14:17", + "src": "14646:14:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" @@ -20238,26 +25505,26 @@ "typeString": "bytes1" } ], - "id": 2940, + "id": 3297, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9722:5:17", + "src": "14640:5:17", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint8_$", "typeString": "type(uint8)" }, "typeName": { - "id": 2939, + "id": 3296, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "9722:5:17", + "src": "14640:5:17", "typeDescriptions": {} } }, - "id": 2946, + "id": 3303, "isConstant": false, "isLValue": false, "isPure": false, @@ -20266,7 +25533,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9722:21:17", + "src": "14640:21:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -20281,26 +25548,26 @@ "typeString": "uint8" } ], - "id": 2938, + "id": 3295, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9715:6:17", + "src": "14633:6:17", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint32_$", "typeString": "type(uint32)" }, "typeName": { - "id": 2937, + "id": 3294, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "9715:6:17", + "src": "14633:6:17", "typeDescriptions": {} } }, - "id": 2947, + "id": 3304, "isConstant": false, "isLValue": false, "isPure": false, @@ -20309,7 +25576,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9715:29:17", + "src": "14633:29:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -20320,41 +25587,41 @@ "operator": "<<", "rightExpression": { "hexValue": "38", - "id": 2948, + "id": 3305, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9748:1:17", + "src": "14666:1:17", "typeDescriptions": { "typeIdentifier": "t_rational_8_by_1", "typeString": "int_const 8" }, "value": "8" }, - "src": "9715:34:17", + "src": "14633:34:17", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } } ], - "id": 2950, + "id": 3307, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "9714:36:17", + "src": "14632:36:17", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "9678:72:17", + "src": "14596:72:17", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -20369,7 +25636,7 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 2964, + "id": 3321, "isConstant": false, "isLValue": false, "isPure": false, @@ -20380,35 +25647,35 @@ "arguments": [ { "baseExpression": { - "id": 2956, + "id": 3313, "name": "bs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2911, - "src": "9775:2:17", + "referencedDeclaration": 3268, + "src": "14693:2:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 2960, + "id": 3317, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2959, + "id": 3316, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2957, + "id": 3314, "name": "offset", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2913, - "src": "9778:6:17", + "referencedDeclaration": 3270, + "src": "14696:6:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20418,21 +25685,21 @@ "operator": "+", "rightExpression": { "hexValue": "32", - "id": 2958, + "id": 3315, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9787:1:17", + "src": "14705:1:17", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" }, "value": "2" }, - "src": "9778:10:17", + "src": "14696:10:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20443,7 +25710,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9775:14:17", + "src": "14693:14:17", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" @@ -20457,385 +25724,762 @@ "typeString": "bytes1" } ], - "id": 2955, + "id": 3312, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "9769:5:17", + "src": "14687:5:17", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint8_$", "typeString": "type(uint8)" }, "typeName": { - "id": 2954, + "id": 3311, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "9769:5:17", + "src": "14687:5:17", "typeDescriptions": {} } - }, - "id": 2961, + }, + "id": 3318, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14687:21:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 3310, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14680:6:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint32_$", + "typeString": "type(uint32)" + }, + "typeName": { + "id": 3309, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "14680:6:17", + "typeDescriptions": {} + } + }, + "id": 3319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14680:29:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "3136", + "id": 3320, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14713:2:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_16_by_1", + "typeString": "int_const 16" + }, + "value": "16" + }, + "src": "14680:35:17", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + } + ], + "id": 3322, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "14679:37:17", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "14596:120:17", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "id": 3336, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "baseExpression": { + "id": 3328, + "name": "bs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3268, + "src": "14741:2:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3332, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3331, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3329, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3270, + "src": "14744:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "33", + "id": 3330, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14753:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + }, + "src": "14744:10:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "14741:14:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 3327, "isConstant": false, "isLValue": false, - "isPure": false, - "kind": "typeConversion", + "isPure": true, "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9769:21:17", - "tryCall": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14735:5:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 3326, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "14735:5:17", + "typeDescriptions": {} } - ], - "id": 2953, + }, + "id": 3333, "isConstant": false, "isLValue": false, - "isPure": true, + "isPure": false, + "kind": "typeConversion", "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9762:6:17", + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14735:21:17", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 2952, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "9762:6:17", - "typeDescriptions": {} + "typeIdentifier": "t_uint8", + "typeString": "uint8" } - }, - "id": 2962, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9762:29:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" } - }, - "nodeType": "BinaryOperation", - "operator": "<<", - "rightExpression": { - "hexValue": "3136", - "id": 2963, + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 3325, "isConstant": false, "isLValue": false, "isPure": true, - "kind": "number", "lValueRequested": false, - "nodeType": "Literal", - "src": "9795:2:17", + "nodeType": "ElementaryTypeNameExpression", + "src": "14728:6:17", "typeDescriptions": { - "typeIdentifier": "t_rational_16_by_1", - "typeString": "int_const 16" + "typeIdentifier": "t_type$_t_uint32_$", + "typeString": "type(uint32)" }, - "value": "16" + "typeName": { + "id": 3324, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "14728:6:17", + "typeDescriptions": {} + } }, - "src": "9762:35:17", + "id": 3334, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14728:29:17", + "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "3234", + "id": 3335, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14761:2:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_24_by_1", + "typeString": "int_const 24" + }, + "value": "24" + }, + "src": "14728:35:17", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" } - ], - "id": 2965, + } + ], + "id": 3337, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "14727:37:17", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "src": "14596:168:17", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "functionReturnParameters": 3274, + "id": 3339, + "nodeType": "Return", + "src": "14581:183:17" + } + ] + }, + "id": 3341, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sliceUint32FromLSB", + "nameLocation": "14425:18:17", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3271, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3268, + "mutability": "mutable", + "name": "bs", + "nameLocation": "14457:2:17", + "nodeType": "VariableDeclaration", + "scope": 3341, + "src": "14444:15:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3267, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14444:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3270, + "mutability": "mutable", + "name": "offset", + "nameLocation": "14466:6:17", + "nodeType": "VariableDeclaration", + "scope": 3341, + "src": "14461:11:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3269, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "14461:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14443:30:17" + }, + "returnParameters": { + "id": 3274, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3273, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3341, + "src": "14496:6:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 3272, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "14496:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "14495:8:17" + }, + "scope": 3743, + "src": "14416:355:17", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 3369, + "nodeType": "Block", + "src": "15272:117:17", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 3367, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3356, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3353, + "name": "p2sh", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "15289:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 3354, "isConstant": false, - "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "9761:37:17", + "memberLocation": "15294:6:17", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "15289:11:17", "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "9678:120:17", + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "3235", + "id": 3355, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15304:2:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_25_by_1", + "typeString": "int_const 25" + }, + "value": "25" + }, + "src": "15289:17:17", "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, "nodeType": "BinaryOperation", - "operator": "|", + "operator": "&&", "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 2979, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3366, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 3358, + "name": "p2sh", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3344, + "src": "15320:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 3357, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967288, + "src": "15310:9:17", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3359, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15310:15:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { "arguments": [ { - "arguments": [ - { - "baseExpression": { - "id": 2971, - "name": "bs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2911, - "src": "9823:2:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2975, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2974, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2972, - "name": "offset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2913, - "src": "9826:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "33", - "id": 2973, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9835:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_3_by_1", - "typeString": "int_const 3" - }, - "value": "3" - }, - "src": "9826:10:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9823:14:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 2970, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9817:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 2969, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "9817:5:17", - "typeDescriptions": {} - } - }, - "id": 2976, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9817:21:17", - "tryCall": false, + "id": 3362, + "name": "script", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3346, + "src": "15365:6:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "id": 3363, + "name": "mainnet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3348, + "src": "15373:7:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" } ], - "id": 2968, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9810:6:17", + "id": 3361, + "name": "getP2SHAddressFromScript", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3429, + "src": "15340:24:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 2967, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "9810:6:17", - "typeDescriptions": {} + "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$_t_bool_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes calldata,bool) pure returns (bytes memory)" } }, - "id": 2977, + "id": 3364, "isConstant": false, "isLValue": false, "isPure": false, - "kind": "typeConversion", + "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9810:29:17", + "src": "15340:41:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } - }, - "nodeType": "BinaryOperation", - "operator": "<<", - "rightExpression": { - "hexValue": "3234", - "id": 2978, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9843:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_24_by_1", - "typeString": "int_const 24" - }, - "value": "24" - }, - "src": "9810:35:17", + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3360, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967288, + "src": "15330:9:17", "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" } + }, + "id": 3365, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15330:52:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" } - ], - "id": 2980, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "9809:37:17", + }, + "src": "15310:72:17", "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "src": "9678:168:17", + "src": "15289:93:17", "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "functionReturnParameters": 2917, - "id": 2982, + "functionReturnParameters": 3352, + "id": 3368, "nodeType": "Return", - "src": "9663:183:17" + "src": "15282:100:17" } ] }, - "id": 2984, + "documentation": { + "id": 3342, + "nodeType": "StructuredDocumentation", + "src": "14777:377:17", + "text": "@notice Check if a pay-to-script-hash address belogs to a specific script, expects the address\n bytes to include the 4 checksum bytes at the end\n @param p2sh the pay-to-script-hash address\n @param script the script to check\n @param mainnet flag to specify if its a mainnet address\n @return Whether the address belongs to the script or not" + }, + "functionSelector": "9b02794b", + "id": 3370, "implemented": true, "kind": "function", "modifiers": [], - "name": "sliceUint32FromLSB", - "nameLocation": "9507:18:17", + "name": "validateP2SHAdress", + "nameLocation": "15168:18:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 2914, + "id": 3349, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2911, + "id": 3344, "mutability": "mutable", - "name": "bs", - "nameLocation": "9539:2:17", + "name": "p2sh", + "nameLocation": "15202:4:17", "nodeType": "VariableDeclaration", - "scope": 2984, - "src": "9526:15:17", + "scope": 3370, + "src": "15187:19:17", "stateVariable": false, - "storageLocation": "memory", + "storageLocation": "calldata", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", + "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes" }, "typeName": { - "id": 2910, + "id": 3343, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "9526:5:17", + "src": "15187:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -20845,267 +26489,617 @@ }, { "constant": false, - "id": 2913, + "id": 3346, "mutability": "mutable", - "name": "offset", - "nameLocation": "9548:6:17", + "name": "script", + "nameLocation": "15223:6:17", + "nodeType": "VariableDeclaration", + "scope": 3370, + "src": "15208:21:17", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3345, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "15208:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3348, + "mutability": "mutable", + "name": "mainnet", + "nameLocation": "15236:7:17", "nodeType": "VariableDeclaration", - "scope": 2984, - "src": "9543:11:17", + "scope": 3370, + "src": "15231:12:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" }, "typeName": { - "id": 2912, - "name": "uint", + "id": 3347, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15231:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "15186:58:17" + }, + "returnParameters": { + "id": 3352, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3351, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3370, + "src": "15266:4:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3350, + "name": "bool", "nodeType": "ElementaryTypeName", - "src": "9543:4:17", + "src": "15266:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "15265:6:17" + }, + "scope": 3743, + "src": "15159:230:17", + "stateMutability": "pure", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 3428, + "nodeType": "Block", + "src": "15854:389:17", + "statements": [ + { + "assignments": [ + 3381 + ], + "declarations": [ + { + "constant": false, + "id": 3381, + "mutability": "mutable", + "name": "scriptHash", + "nameLocation": "15872:10:17", + "nodeType": "VariableDeclaration", + "scope": 3428, + "src": "15864:18:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + }, + "typeName": { + "id": 3380, + "name": "bytes20", + "nodeType": "ElementaryTypeName", + "src": "15864:7:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + }, + "visibility": "internal" + } + ], + "id": 3390, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 3386, + "name": "script", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3373, + "src": "15919:6:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 3385, + "name": "sha256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967274, + "src": "15912:6:17", + "typeDescriptions": { + "typeIdentifier": "t_function_sha256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15912:14:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3383, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967295, + "src": "15895:3:17", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3384, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "15899:12:17", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "15895:16:17", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3388, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15895:32:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3382, + "name": "ripemd160", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967276, + "src": "15885:9:17", + "typeDescriptions": { + "typeIdentifier": "t_function_ripemd160_pure$_t_bytes_memory_ptr_$returns$_t_bytes20_$", + "typeString": "function (bytes memory) pure returns (bytes20)" + } + }, + "id": 3389, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "15885:43:17", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" } }, - "visibility": "internal" - } - ], - "src": "9525:30:17" - }, - "returnParameters": { - "id": 2917, - "nodeType": "ParameterList", - "parameters": [ + "nodeType": "VariableDeclarationStatement", + "src": "15864:64:17" + }, { - "constant": false, - "id": 2916, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2984, - "src": "9578:6:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 2915, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "9578:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" + "assignments": [ + 3392 + ], + "declarations": [ + { + "constant": false, + "id": 3392, + "mutability": "mutable", + "name": "versionByte", + "nameLocation": "15945:11:17", + "nodeType": "VariableDeclaration", + "scope": 3428, + "src": "15938:18:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "typeName": { + "id": 3391, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "15938:6:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "visibility": "internal" } - }, - "visibility": "internal" - } - ], - "src": "9577:8:17" - }, - "scope": 3228, - "src": "9498:355:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 3012, - "nodeType": "Block", - "src": "10354:117:17", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + ], + "id": 3397, + "initialValue": { + "condition": { + "id": 3393, + "name": "mainnet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3375, + "src": "15959:7:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "id": 3395, + "name": "SCRIPT_HASH_TESTNET_BYTE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2286, + "src": "15996:24:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } }, - "id": 3010, + "id": 3396, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "nodeType": "Conditional", + "src": "15959:61:17", + "trueExpression": { + "id": 3394, + "name": "SCRIPT_HASH_MAINNET_BYTE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "15969:24:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "15938:82:17" + }, + { + "assignments": [ + 3399 + ], + "declarations": [ + { + "constant": false, + "id": 3399, + "mutability": "mutable", + "name": "versionAndHash", + "nameLocation": "16043:14:17", + "nodeType": "VariableDeclaration", + "scope": 3428, + "src": "16030:27:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" }, - "id": 2999, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2996, - "name": "p2sh", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2987, - "src": "10371:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 2997, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10376:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "10371:11:17", + "typeName": { + "id": 3398, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "16030:5:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" } }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "3235", - "id": 2998, + "visibility": "internal" + } + ], + "id": 3406, + "initialValue": { + "arguments": [ + { + "id": 3403, + "name": "versionByte", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3392, + "src": "16073:11:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + { + "id": 3404, + "name": "scriptHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3381, + "src": "16086:10:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + ], + "expression": { + "id": 3401, "isConstant": false, "isLValue": false, "isPure": true, - "kind": "number", "lValueRequested": false, - "nodeType": "Literal", - "src": "10386:2:17", + "nodeType": "ElementaryTypeNameExpression", + "src": "16060:5:17", "typeDescriptions": { - "typeIdentifier": "t_rational_25_by_1", - "typeString": "int_const 25" + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" }, - "value": "25" + "typeName": { + "id": 3400, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "16060:5:17", + "typeDescriptions": {} + } }, - "src": "10371:17:17", + "id": 3402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "16066:6:17", + "memberName": "concat", + "nodeType": "MemberAccess", + "src": "16060:12:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_function_bytesconcat_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" } }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "id": 3405, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16060:37:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16030:67:17" + }, + { + "assignments": [ + 3408 + ], + "declarations": [ + { + "constant": false, + "id": 3408, + "mutability": "mutable", + "name": "checksum", + "nameLocation": "16114:8:17", + "nodeType": "VariableDeclaration", + "scope": 3428, + "src": "16107:15:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" }, - "id": 3009, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 3001, - "name": "p2sh", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2987, - "src": "10402:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 3000, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "10392:9:17", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 3002, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10392:15:17", - "tryCall": false, + "typeName": { + "id": 3407, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "16107:6:17", "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" } }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { + "visibility": "internal" + } + ], + "id": 3420, + "initialValue": { + "arguments": [ + { "arguments": [ { "arguments": [ { - "id": 3005, - "name": "script", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2989, - "src": "10447:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - { - "id": 3006, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2991, - "src": "10455:7:17", + "arguments": [ + { + "id": 3415, + "name": "versionAndHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3399, + "src": "16163:14:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3414, + "name": "sha256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967274, + "src": "16156:6:17", + "typeDescriptions": { + "typeIdentifier": "t_function_sha256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3416, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16156:22:17", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" } ], - "id": 3004, - "name": "getP2SHAddressFromScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3072, - "src": "10422:24:17", + "expression": { + "id": 3412, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967295, + "src": "16139:3:17", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3413, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "16143:12:17", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "16139:16:17", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$_t_bool_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes calldata,bool) pure returns (bytes memory)" + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" } }, - "id": 3007, + "id": 3417, "isConstant": false, "isLValue": false, "isPure": false, @@ -21114,7 +27108,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10422:41:17", + "src": "16139:40:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -21129,18 +27123,18 @@ "typeString": "bytes memory" } ], - "id": 3003, - "name": "keccak256", + "id": 3411, + "name": "sha256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "10412:9:17", + "referencedDeclaration": 4294967274, + "src": "16132:6:17", "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeIdentifier": "t_function_sha256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 3008, + "id": 3418, "isConstant": false, "isLValue": false, "isPure": false, @@ -21149,86 +27143,182 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10412:52:17", + "src": "16132:48:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3410, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16125:6:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 3409, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "16125:6:17", + "typeDescriptions": {} + } + }, + "id": 3419, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16125:56:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16107:74:17" + }, + { + "expression": { + "arguments": [ + { + "id": 3424, + "name": "versionAndHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3399, + "src": "16211:14:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 3425, + "name": "checksum", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3408, + "src": "16227:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 3422, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16198:5:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 3421, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "16198:5:17", + "typeDescriptions": {} + } }, - "src": "10392:72:17", + "id": 3423, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "16204:6:17", + "memberName": "concat", + "nodeType": "MemberAccess", + "src": "16198:12:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_function_bytesconcat_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" } }, - "src": "10371:93:17", + "id": 3426, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16198:38:17", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } }, - "functionReturnParameters": 2995, - "id": 3011, + "functionReturnParameters": 3379, + "id": 3427, "nodeType": "Return", - "src": "10364:100:17" + "src": "16191:45:17" } ] }, "documentation": { - "id": 2985, + "id": 3371, "nodeType": "StructuredDocumentation", - "src": "9859:377:17", - "text": "@notice Check if a pay-to-script-hash address belogs to a specific script, expects the address\n bytes to include the 4 checksum bytes at the end\n @param p2sh the pay-to-script-hash address\n @param script the script to check\n @param mainnet flag to specify if its a mainnet address\n @return Whether the address belongs to the script or not" + "src": "15395:348:17", + "text": "@notice Generate a pay-to-script-hash address from a script, the resulting byte array already contains\n the 4 checksum bytes at the end of it\n @param script the script to generate the address from\n @param mainnet flag to specify if the output should be a mainnet address\n @return The address generate from the script" }, - "functionSelector": "9b02794b", - "id": 3013, + "functionSelector": "b0d6b1cb", + "id": 3429, "implemented": true, "kind": "function", "modifiers": [], - "name": "validateP2SHAdress", - "nameLocation": "10250:18:17", + "name": "getP2SHAddressFromScript", + "nameLocation": "15757:24:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 2992, + "id": 3376, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2987, - "mutability": "mutable", - "name": "p2sh", - "nameLocation": "10284:4:17", - "nodeType": "VariableDeclaration", - "scope": 3013, - "src": "10269:19:17", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2986, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "10269:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2989, + "id": 3373, "mutability": "mutable", "name": "script", - "nameLocation": "10305:6:17", + "nameLocation": "15797:6:17", "nodeType": "VariableDeclaration", - "scope": 3013, - "src": "10290:21:17", + "scope": 3429, + "src": "15782:21:17", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -21236,10 +27326,10 @@ "typeString": "bytes" }, "typeName": { - "id": 2988, + "id": 3372, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "10290:5:17", + "src": "15782:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -21249,13 +27339,13 @@ }, { "constant": false, - "id": 2991, + "id": 3375, "mutability": "mutable", "name": "mainnet", - "nameLocation": "10318:7:17", + "nameLocation": "15810:7:17", "nodeType": "VariableDeclaration", - "scope": 3013, - "src": "10313:12:17", + "scope": 3429, + "src": "15805:12:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21263,10 +27353,10 @@ "typeString": "bool" }, "typeName": { - "id": 2990, + "id": 3374, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "10313:4:17", + "src": "15805:4:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21275,422 +27365,728 @@ "visibility": "internal" } ], - "src": "10268:58:17" + "src": "15781:37:17" }, "returnParameters": { - "id": 2995, + "id": 3379, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2994, + "id": 3378, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3013, - "src": "10348:4:17", + "scope": 3429, + "src": "15840:12:17", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" }, "typeName": { - "id": 2993, - "name": "bool", + "id": 3377, + "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "10348:4:17", + "src": "15840:5:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" } }, "visibility": "internal" } ], - "src": "10347:6:17" + "src": "15839:14:17" }, - "scope": 3228, - "src": "10241:230:17", + "scope": 3743, + "src": "15748:495:17", "stateMutability": "pure", "virtual": false, "visibility": "public" }, { "body": { - "id": 3071, + "id": 3517, "nodeType": "Block", - "src": "10936:389:17", + "src": "16354:809:17", "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3441, + "name": "array", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3433, + "src": "16372:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3442, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "16378:6:17", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16372:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3443, + "name": "sizePosition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3431, + "src": "16387:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "16372:27:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "53697a6520706f736974696f6e2063616e277420626520626967676572207468616e206172726179", + "id": 3445, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16401:42:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_33c6dd8650ffbd109c11f2a50d2c26a90aa65e9c0c8ae6a11ce0114fae017f47", + "typeString": "literal_string \"Size position can't be bigger than array\"" + }, + "value": "Size position can't be bigger than array" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_33c6dd8650ffbd109c11f2a50d2c26a90aa65e9c0c8ae6a11ce0114fae017f47", + "typeString": "literal_string \"Size position can't be bigger than array\"" + } + ], + "id": 3440, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "16364:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3446, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "16364:80:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3447, + "nodeType": "ExpressionStatement", + "src": "16364:80:17" + }, { "assignments": [ - 3024 + 3449 ], "declarations": [ { "constant": false, - "id": 3024, + "id": 3449, "mutability": "mutable", - "name": "scriptHash", - "nameLocation": "10954:10:17", + "name": "maxSize", + "nameLocation": "16460:7:17", "nodeType": "VariableDeclaration", - "scope": 3071, - "src": "10946:18:17", + "scope": 3517, + "src": "16454:13:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" + "typeIdentifier": "t_uint8", + "typeString": "uint8" }, "typeName": { - "id": 3023, - "name": "bytes20", + "id": 3448, + "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "10946:7:17", + "src": "16454:5:17", "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" + "typeIdentifier": "t_uint8", + "typeString": "uint8" } }, "visibility": "internal" } ], - "id": 3033, + "id": 3456, "initialValue": { "arguments": [ { - "arguments": [ - { - "arguments": [ - { - "id": 3029, - "name": "script", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3016, - "src": "11001:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 3028, - "name": "sha256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967274, - "src": "10994:6:17", - "typeDescriptions": { - "typeIdentifier": "t_function_sha256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 3030, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10994:14:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } + "baseExpression": { + "id": 3452, + "name": "array", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3433, + "src": "16476:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 3026, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "10977:3:17", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 3027, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "10981:12:17", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "10977:16:17", + }, + "id": 3454, + "indexExpression": { + "id": 3453, + "name": "sizePosition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3431, + "src": "16482:12:17", "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 3031, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10977:32:17", - "tryCall": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16476:19:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } ], - "id": 3025, - "name": "ripemd160", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967276, - "src": "10967:9:17", + "id": 3451, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16470:5:17", "typeDescriptions": { - "typeIdentifier": "t_function_ripemd160_pure$_t_bytes_memory_ptr_$returns$_t_bytes20_$", - "typeString": "function (bytes memory) pure returns (bytes20)" + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 3450, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "16470:5:17", + "typeDescriptions": {} } }, - "id": 3032, + "id": 3455, "isConstant": false, "isLValue": false, "isPure": false, - "kind": "functionCall", + "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10967:43:17", + "src": "16470:26:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" + "typeIdentifier": "t_uint8", + "typeString": "uint8" } }, "nodeType": "VariableDeclarationStatement", - "src": "10946:64:17" + "src": "16454:42:17" }, { - "assignments": [ - 3035 - ], - "declarations": [ - { - "constant": false, - "id": 3035, - "mutability": "mutable", - "name": "versionByte", - "nameLocation": "11027:11:17", - "nodeType": "VariableDeclaration", - "scope": 3071, - "src": "11020:18:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 3034, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "11020:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "visibility": "internal" - } - ], - "id": 3040, - "initialValue": { - "condition": { - "id": 3036, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3018, - "src": "11041:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseExpression": { - "id": 3038, - "name": "SCRIPT_HASH_TESTNET_BYTE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2283, - "src": "11078:24:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } + "condition": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" }, - "id": 3039, + "id": 3459, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "Conditional", - "src": "11041:61:17", - "trueExpression": { - "id": 3037, - "name": "SCRIPT_HASH_MAINNET_BYTE", + "leftExpression": { + "id": 3457, + "name": "maxSize", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2280, - "src": "11051:24:17", + "referencedDeclaration": 3449, + "src": "16510:7:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_uint8", + "typeString": "uint8" } }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 3458, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16521:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "16510:12:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "nodeType": "VariableDeclarationStatement", - "src": "11020:82:17" + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 3467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3465, + "name": "maxSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3449, + "src": "16572:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 3466, + "name": "MAX_COMPACT_SIZE_LENGTH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2250, + "src": "16583:23:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "16572:34:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3473, + "nodeType": "IfStatement", + "src": "16568:84:17", + "trueBody": { + "id": 3472, + "nodeType": "Block", + "src": "16608:44:17", + "statements": [ + { + "expression": { + "components": [ + { + "id": 3468, + "name": "maxSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3449, + "src": "16630:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + { + "hexValue": "31", + "id": 3469, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16639:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + } + ], + "id": 3470, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "16629:12:17", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint8_$_t_rational_1_by_1_$", + "typeString": "tuple(uint8,int_const 1)" + } + }, + "functionReturnParameters": 3439, + "id": 3471, + "nodeType": "Return", + "src": "16622:19:17" + } + ] + } + }, + "id": 3474, + "nodeType": "IfStatement", + "src": "16506:146:17", + "trueBody": { + "id": 3464, + "nodeType": "Block", + "src": "16524:38:17", + "statements": [ + { + "expression": { + "components": [ + { + "hexValue": "30", + "id": 3460, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16546:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + { + "hexValue": "31", + "id": 3461, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16549:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + } + ], + "id": 3462, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "16545:6:17", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_rational_0_by_1_$_t_rational_1_by_1_$", + "typeString": "tuple(int_const 0,int_const 1)" + } + }, + "functionReturnParameters": 3439, + "id": 3463, + "nodeType": "Return", + "src": "16538:13:17" + } + ] + } }, { "assignments": [ - 3042 + 3476 ], "declarations": [ { "constant": false, - "id": 3042, + "id": 3476, "mutability": "mutable", - "name": "versionAndHash", - "nameLocation": "11125:14:17", + "name": "compactSizeBytes", + "nameLocation": "16675:16:17", "nodeType": "VariableDeclaration", - "scope": 3071, - "src": "11112:27:17", + "scope": 3517, + "src": "16670:21:17", "stateVariable": false, - "storageLocation": "memory", + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, "typeName": { - "id": 3041, - "name": "bytes", + "id": 3475, + "name": "uint", "nodeType": "ElementaryTypeName", - "src": "11112:5:17", + "src": "16670:4:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "visibility": "internal" } ], - "id": 3049, + "id": 3483, "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3482, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 3477, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16694:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 3480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3478, + "name": "maxSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3449, + "src": "16700:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 3479, + "name": "MAX_COMPACT_SIZE_LENGTH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2250, + "src": "16710:23:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "16700:33:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "id": 3481, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "16699:35:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "16694:40:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16670:64:17" + }, + { + "expression": { "arguments": [ { - "id": 3046, - "name": "versionByte", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3035, - "src": "11155:11:17", + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3487, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3485, + "name": "compactSizeBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3476, + "src": "16752:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 3486, + "name": "MAX_BYTES_USED_FOR_COMPACT_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2253, + "src": "16772:31:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "16752:51:17", "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, { - "id": 3047, - "name": "scriptHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3024, - "src": "11168:10:17", + "hexValue": "756e737570706f7274656420636f6d706163742073697a65206c656e677468", + "id": 3488, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16805:33:17", "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - } + "typeIdentifier": "t_stringliteral_173d55eda06bf2b35eca6401b7d16b17b1fc97b7601de25f26189f5300bf3cb3", + "typeString": "literal_string \"unsupported compact size length\"" + }, + "value": "unsupported compact size length" } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" + "typeIdentifier": "t_bool", + "typeString": "bool" }, { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" + "typeIdentifier": "t_stringliteral_173d55eda06bf2b35eca6401b7d16b17b1fc97b7601de25f26189f5300bf3cb3", + "typeString": "literal_string \"unsupported compact size length\"" } ], - "expression": { - "id": 3044, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "11142:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 3043, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "11142:5:17", - "typeDescriptions": {} - } - }, - "id": 3045, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11148:6:17", - "memberName": "concat", - "nodeType": "MemberAccess", - "src": "11142:12:17", + "id": 3484, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "16744:7:17", "typeDescriptions": { - "typeIdentifier": "t_function_bytesconcat_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" } }, - "id": 3048, + "id": 3489, "isConstant": false, "isLValue": false, "isPure": false, @@ -21699,150 +28095,184 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11142:37:17", + "src": "16744:95:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "nodeType": "VariableDeclarationStatement", - "src": "11112:67:17" + "id": 3490, + "nodeType": "ExpressionStatement", + "src": "16744:95:17" }, { "assignments": [ - 3051 + 3492 ], "declarations": [ { "constant": false, - "id": 3051, + "id": 3492, "mutability": "mutable", - "name": "checksum", - "nameLocation": "11196:8:17", + "name": "result", + "nameLocation": "16971:6:17", "nodeType": "VariableDeclaration", - "scope": 3071, - "src": "11189:15:17", + "scope": 3517, + "src": "16964:13:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" + "typeIdentifier": "t_uint64", + "typeString": "uint64" }, "typeName": { - "id": 3050, - "name": "bytes4", + "id": 3491, + "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "11189:6:17", + "src": "16964:6:17", "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" + "typeIdentifier": "t_uint64", + "typeString": "uint64" } }, "visibility": "internal" } ], - "id": 3063, + "id": 3507, "initialValue": { "arguments": [ { "arguments": [ { - "arguments": [ - { - "arguments": [ - { - "id": 3058, - "name": "versionAndHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3042, - "src": "11245:14:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 3057, - "name": "sha256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967274, - "src": "11238:6:17", - "typeDescriptions": { - "typeIdentifier": "t_function_sha256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 3059, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11238:22:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3498, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3496, + "name": "sizePosition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3431, + "src": "17030:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 3497, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17045:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "17030:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3503, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3501, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3499, + "name": "sizePosition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3431, + "src": "17048:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ], - "expression": { - "id": 3055, - "name": "abi", + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 3500, + "name": "compactSizeBytes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "11221:3:17", + "referencedDeclaration": 3476, + "src": "17063:16:17", "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 3056, + "src": "17048:31:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 3502, "isConstant": false, "isLValue": false, "isPure": true, + "kind": "number", "lValueRequested": false, - "memberLocation": "11225:12:17", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "11221:16:17", + "nodeType": "Literal", + "src": "17082:1:17", "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" }, - "id": 3060, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11221:40:17", - "tryCall": false, + "src": "17048:35:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3504, + "name": "array", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3433, + "src": "17085:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -21851,23 +28281,31 @@ ], "expression": { "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } ], - "id": 3054, - "name": "sha256", + "id": 3495, + "name": "calculateLittleEndianFragment", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4294967274, - "src": "11214:6:17", + "referencedDeclaration": 3584, + "src": "17000:29:17", "typeDescriptions": { - "typeIdentifier": "t_function_sha256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256,bytes memory) pure returns (uint256)" } }, - "id": 3061, + "id": 3505, "isConstant": false, "isLValue": false, "isPure": false, @@ -21876,41 +28314,41 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11214:48:17", + "src": "17000:91:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } ], - "id": 3053, + "id": 3494, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "11207:6:17", + "src": "16980:6:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes4_$", - "typeString": "type(bytes4)" + "typeIdentifier": "t_type$_t_uint64_$", + "typeString": "type(uint64)" }, "typeName": { - "id": 3052, - "name": "bytes4", + "id": 3493, + "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "11207:6:17", + "src": "16980:6:17", "typeDescriptions": {} } }, - "id": 3062, + "id": 3506, "isConstant": false, "isLValue": false, "isPure": false, @@ -21919,704 +28357,1231 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11207:56:17", + "src": "16980:121:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" + "typeIdentifier": "t_uint64", + "typeString": "uint64" } }, "nodeType": "VariableDeclarationStatement", - "src": "11189:74:17" + "src": "16964:137:17" }, { "expression": { - "arguments": [ + "components": [ { - "id": 3067, - "name": "versionAndHash", + "id": 3508, + "name": "result", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3042, - "src": "11293:14:17", + "referencedDeclaration": 3492, + "src": "17119:6:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_uint64", + "typeString": "uint64" } }, { - "id": 3068, - "name": "checksum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3051, - "src": "11309:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "commonType": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" }, - { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - ], - "expression": { - "id": 3065, + "id": 3514, "isConstant": false, "isLValue": false, - "isPure": true, + "isPure": false, "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "11280:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" + "leftExpression": { + "arguments": [ + { + "id": 3511, + "name": "compactSizeBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3476, + "src": "17134:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3510, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17127:6:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint16_$", + "typeString": "type(uint16)" + }, + "typeName": { + "id": 3509, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "17127:6:17", + "typeDescriptions": {} + } + }, + "id": 3512, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17127:24:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } }, - "typeName": { - "id": 3064, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "11280:5:17", - "typeDescriptions": {} - } - }, - "id": 3066, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11286:6:17", - "memberName": "concat", - "nodeType": "MemberAccess", - "src": "11280:12:17", - "typeDescriptions": { - "typeIdentifier": "t_function_bytesconcat_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 3513, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17154:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "17127:28:17", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } } - }, - "id": 3069, + ], + "id": 3515, "isConstant": false, + "isInlineArray": false, "isLValue": false, "isPure": false, - "kind": "functionCall", "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11280:38:17", - "tryCall": false, + "nodeType": "TupleExpression", + "src": "17118:38:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", + "typeString": "tuple(uint64,uint16)" } }, - "functionReturnParameters": 3022, - "id": 3070, + "functionReturnParameters": 3439, + "id": 3516, "nodeType": "Return", - "src": "11273:45:17" + "src": "17111:45:17" } ] }, - "documentation": { - "id": 3014, - "nodeType": "StructuredDocumentation", - "src": "10477:348:17", - "text": "@notice Generate a pay-to-script-hash address from a script, the resulting byte array already contains\n the 4 checksum bytes at the end of it\n @param script the script to generate the address from\n @param mainnet flag to specify if the output should be a mainnet address\n @return The address generate from the script" - }, - "functionSelector": "b0d6b1cb", - "id": 3072, + "id": 3518, "implemented": true, "kind": "function", "modifiers": [], - "name": "getP2SHAddressFromScript", - "nameLocation": "10839:24:17", + "name": "parseCompactSizeInt", + "nameLocation": "16258:19:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 3019, + "id": 3434, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3016, + "id": 3431, "mutability": "mutable", - "name": "script", - "nameLocation": "10879:6:17", + "name": "sizePosition", + "nameLocation": "16283:12:17", "nodeType": "VariableDeclaration", - "scope": 3072, - "src": "10864:21:17", + "scope": 3518, + "src": "16278:17:17", "stateVariable": false, - "storageLocation": "calldata", + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3430, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "16278:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3433, + "mutability": "mutable", + "name": "array", + "nameLocation": "16310:5:17", + "nodeType": "VariableDeclaration", + "scope": 3518, + "src": "16297:18:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { - "id": 3015, + "id": 3432, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "10864:5:17", + "src": "16297:5:17", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" + } + ], + "src": "16277:39:17" + }, + "returnParameters": { + "id": 3439, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3436, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3518, + "src": "16338:6:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 3435, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "16338:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" }, { "constant": false, - "id": 3018, + "id": 3438, "mutability": "mutable", - "name": "mainnet", - "nameLocation": "10892:7:17", + "name": "", + "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3072, - "src": "10887:12:17", + "scope": 3518, + "src": "16346:6:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint16", + "typeString": "uint16" }, "typeName": { - "id": 3017, - "name": "bool", + "id": 3437, + "name": "uint16", "nodeType": "ElementaryTypeName", - "src": "10887:4:17", + "src": "16346:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + } + ], + "src": "16337:16:17" + }, + "scope": 3743, + "src": "16249:914:17", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 3583, + "nodeType": "Block", + "src": "17324:357:17", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 3538, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3533, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3530, + "name": "fragmentStart", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3520, + "src": "17355:13:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 3531, + "name": "array", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3524, + "src": "17371:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3532, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "17377:6:17", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "17371:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "17355:28:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3537, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3534, + "name": "fragmentEnd", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3522, + "src": "17387:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 3535, + "name": "array", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3524, + "src": "17401:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3536, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "17407:6:17", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "17401:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "17387:26:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "17355:58:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "52616e67652063616e277420626520626967676572207468616e206172726179", + "id": 3539, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17428:34:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b880bf2732d5dc41106d7c9b4d33a7d7359e73ab841c93dd915612cdef84660a", + "typeString": "literal_string \"Range can't be bigger than array\"" + }, + "value": "Range can't be bigger than array" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b880bf2732d5dc41106d7c9b4d33a7d7359e73ab841c93dd915612cdef84660a", + "typeString": "literal_string \"Range can't be bigger than array\"" + } + ], + "id": 3529, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "17334:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3540, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17334:138:17", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "visibility": "internal" - } - ], - "src": "10863:37:17" - }, - "returnParameters": { - "id": 3022, - "nodeType": "ParameterList", - "parameters": [ + "id": 3541, + "nodeType": "ExpressionStatement", + "src": "17334:138:17" + }, { - "constant": false, - "id": 3021, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3072, - "src": "10922:12:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3020, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "10922:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" + "assignments": [ + 3543 + ], + "declarations": [ + { + "constant": false, + "id": 3543, + "mutability": "mutable", + "name": "result", + "nameLocation": "17487:6:17", + "nodeType": "VariableDeclaration", + "scope": 3583, + "src": "17482:11:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3542, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "17482:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" } + ], + "id": 3545, + "initialValue": { + "hexValue": "30", + "id": 3544, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17496:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" }, - "visibility": "internal" - } - ], - "src": "10921:14:17" - }, - "scope": 3228, - "src": "10830:495:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 3160, - "nodeType": "Block", - "src": "11436:809:17", - "statements": [ + "nodeType": "VariableDeclarationStatement", + "src": "17482:15:17" + }, { - "expression": { - "arguments": [ + "body": { + "id": 3579, + "nodeType": "Block", + "src": "17558:94:17", + "statements": [ { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3087, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 3084, - "name": "array", + "expression": { + "id": 3577, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3556, + "name": "result", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3076, - "src": "11454:5:17", + "referencedDeclaration": 3543, + "src": "17572:6:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "id": 3576, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "baseExpression": { + "id": 3559, + "name": "array", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3524, + "src": "17588:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3561, + "indexExpression": { + "id": 3560, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3547, + "src": "17594:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17588:8:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 3558, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17582:5:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 3557, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "17582:5:17", + "typeDescriptions": {} + } + }, + "id": 3562, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17582:15:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3574, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 3565, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17608:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3572, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "38", + "id": 3566, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17614:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3570, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3567, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3547, + "src": "17619:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "components": [ + { + "id": 3568, + "name": "fragmentStart", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3520, + "src": "17624:13:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3569, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "17623:15:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "17619:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3571, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "17618:21:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "17614:25:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3573, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "17613:27:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "17608:32:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3564, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17601:6:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint64_$", + "typeString": "type(uint64)" + }, + "typeName": { + "id": 3563, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "17601:6:17", + "typeDescriptions": {} + } + }, + "id": 3575, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "17601:40:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "17582:59:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3085, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11460:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "11454:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 3086, - "name": "sizePosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3074, - "src": "11469:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "11454:27:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "53697a6520706f736974696f6e2063616e277420626520626967676572207468616e206172726179", - "id": 3088, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11483:42:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_33c6dd8650ffbd109c11f2a50d2c26a90aa65e9c0c8ae6a11ce0114fae017f47", - "typeString": "literal_string \"Size position can't be bigger than array\"" - }, - "value": "Size position can't be bigger than array" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_33c6dd8650ffbd109c11f2a50d2c26a90aa65e9c0c8ae6a11ce0114fae017f47", - "typeString": "literal_string \"Size position can't be bigger than array\"" - } - ], - "id": 3083, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "11446:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3089, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11446:80:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3090, - "nodeType": "ExpressionStatement", - "src": "11446:80:17" - }, - { - "assignments": [ - 3092 - ], - "declarations": [ - { - "constant": false, - "id": 3092, - "mutability": "mutable", - "name": "maxSize", - "nameLocation": "11542:7:17", - "nodeType": "VariableDeclaration", - "scope": 3160, - "src": "11536:13:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 3091, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "11536:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "id": 3099, - "initialValue": { - "arguments": [ - { - "baseExpression": { - "id": 3095, - "name": "array", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3076, - "src": "11558:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3097, - "indexExpression": { - "id": 3096, - "name": "sizePosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3074, - "src": "11564:12:17", + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "src": "17572:69:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11558:19:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 3094, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "11552:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 3093, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "11552:5:17", - "typeDescriptions": {} + "id": 3578, + "nodeType": "ExpressionStatement", + "src": "17572:69:17" } - }, - "id": 3098, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11552:26:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } + ] }, - "nodeType": "VariableDeclarationStatement", - "src": "11536:42:17" - }, - { "condition": { "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 3102, + "id": 3552, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 3100, - "name": "maxSize", + "id": 3550, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3092, - "src": "11592:7:17", + "referencedDeclaration": 3547, + "src": "17536:1:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "==", + "operator": "<", "rightExpression": { - "hexValue": "30", - "id": 3101, + "id": 3551, + "name": "fragmentEnd", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3522, + "src": "17540:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "17536:15:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3580, + "initializationExpression": { + "assignments": [ + 3547 + ], + "declarations": [ + { + "constant": false, + "id": 3547, + "mutability": "mutable", + "name": "i", + "nameLocation": "17517:1:17", + "nodeType": "VariableDeclaration", + "scope": 3580, + "src": "17512:6:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3546, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "17512:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3549, + "initialValue": { + "id": 3548, + "name": "fragmentStart", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3520, + "src": "17521:13:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "17512:22:17" + }, + "loopExpression": { + "expression": { + "id": 3554, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, "lValueRequested": false, - "nodeType": "Literal", - "src": "11603:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "17553:3:17", + "subExpression": { + "id": 3553, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3547, + "src": "17553:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } }, - "value": "0" + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } }, - "src": "11592:12:17", + "id": 3555, + "nodeType": "ExpressionStatement", + "src": "17553:3:17" + }, + "nodeType": "ForStatement", + "src": "17507:145:17" + }, + { + "expression": { + "id": 3581, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3543, + "src": "17668:6:17", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3528, + "id": 3582, + "nodeType": "Return", + "src": "17661:13:17" + } + ] + }, + "id": 3584, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "calculateLittleEndianFragment", + "nameLocation": "17178:29:17", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3525, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3520, + "mutability": "mutable", + "name": "fragmentStart", + "nameLocation": "17222:13:17", + "nodeType": "VariableDeclaration", + "scope": 3584, + "src": "17217:18:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3519, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "17217:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3522, + "mutability": "mutable", + "name": "fragmentEnd", + "nameLocation": "17250:11:17", + "nodeType": "VariableDeclaration", + "scope": 3584, + "src": "17245:16:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3521, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "17245:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3524, + "mutability": "mutable", + "name": "array", + "nameLocation": "17284:5:17", + "nodeType": "VariableDeclaration", + "scope": 3584, + "src": "17271:18:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3523, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "17271:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "17207:88:17" + }, + "returnParameters": { + "id": 3528, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3527, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3584, + "src": "17318:4:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3526, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "17318:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "falseBody": { - "condition": { - "commonType": { + "visibility": "internal" + } + ], + "src": "17317:6:17" + }, + "scope": 3743, + "src": "17169:512:17", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 3705, + "nodeType": "Block", + "src": "17875:864:17", + "statements": [ + { + "assignments": [ + 3593 + ], + "declarations": [ + { + "constant": false, + "id": 3593, + "mutability": "mutable", + "name": "MAX_VALUE", + "nameLocation": "17891:9:17", + "nodeType": "VariableDeclaration", + "scope": 3705, + "src": "17885:15:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" }, - "id": 3110, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3108, - "name": "maxSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3092, - "src": "11654:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 3109, - "name": "MAX_COMPACT_SIZE_LENGTH", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2250, - "src": "11665:23:17", + "typeName": { + "id": 3592, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "17885:5:17", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, - "src": "11654:34:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3116, - "nodeType": "IfStatement", - "src": "11650:84:17", - "trueBody": { - "id": 3115, - "nodeType": "Block", - "src": "11690:44:17", - "statements": [ - { - "expression": { - "components": [ - { - "id": 3111, - "name": "maxSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3092, - "src": "11712:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "hexValue": "31", - "id": 3112, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11721:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - } - ], - "id": 3113, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "11711:12:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint8_$_t_rational_1_by_1_$", - "typeString": "tuple(uint8,int_const 1)" - } - }, - "functionReturnParameters": 3082, - "id": 3114, - "nodeType": "Return", - "src": "11704:19:17" - } - ] + "visibility": "internal" } + ], + "id": 3595, + "initialValue": { + "hexValue": "3331", + "id": 3594, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17903:2:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_31_by_1", + "typeString": "int_const 31" + }, + "value": "31" }, - "id": 3117, - "nodeType": "IfStatement", - "src": "11588:146:17", - "trueBody": { - "id": 3107, - "nodeType": "Block", - "src": "11606:38:17", - "statements": [ - { - "expression": { - "components": [ - { - "hexValue": "30", - "id": 3103, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11628:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - { - "hexValue": "31", - "id": 3104, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11631:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - } - ], - "id": 3105, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "11627:6:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_rational_0_by_1_$_t_rational_1_by_1_$", - "typeString": "tuple(int_const 0,int_const 1)" - } - }, - "functionReturnParameters": 3082, - "id": 3106, - "nodeType": "Return", - "src": "11620:13:17" - } - ] - } + "nodeType": "VariableDeclarationStatement", + "src": "17885:20:17" }, { "assignments": [ - 3119 + 3597 ], "declarations": [ { "constant": false, - "id": 3119, + "id": 3597, "mutability": "mutable", - "name": "compactSizeBytes", - "nameLocation": "11757:16:17", + "name": "currentValue", + "nameLocation": "17921:12:17", "nodeType": "VariableDeclaration", - "scope": 3160, - "src": "11752:21:17", + "scope": 3705, + "src": "17916:17:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22624,10 +29589,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3118, + "id": 3596, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "11752:4:17", + "src": "17916:4:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22636,379 +29601,195 @@ "visibility": "internal" } ], - "id": 3126, + "id": 3599, "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3125, + "hexValue": "30", + "id": 3598, "isConstant": false, "isLValue": false, - "isPure": false, + "isPure": true, + "kind": "number", "lValueRequested": false, - "leftExpression": { - "hexValue": "32", - "id": 3120, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11776:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "BinaryOperation", - "operator": "**", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 3123, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3121, - "name": "maxSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3092, - "src": "11782:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 3122, - "name": "MAX_COMPACT_SIZE_LENGTH", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2250, - "src": "11792:23:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "11782:33:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "id": 3124, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "11781:35:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "11776:40:17", + "nodeType": "Literal", + "src": "17936:1:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "17916:21:17" + }, + { + "assignments": [ + 3601 + ], + "declarations": [ + { + "constant": false, + "id": 3601, + "mutability": "mutable", + "name": "bitCount", + "nameLocation": "17952:8:17", + "nodeType": "VariableDeclaration", + "scope": 3705, + "src": "17947:13:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3600, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "17947:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" } + ], + "id": 3603, + "initialValue": { + "hexValue": "30", + "id": 3602, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17963:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "11752:64:17" + "src": "17947:17:17" }, { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3130, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3128, - "name": "compactSizeBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3119, - "src": "11834:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 3129, - "name": "MAX_BYTES_USED_FOR_COMPACT_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2253, - "src": "11854:31:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "11834:51:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } + "assignments": [ + 3605 + ], + "declarations": [ + { + "constant": false, + "id": 3605, + "mutability": "mutable", + "name": "resultIndex", + "nameLocation": "17980:11:17", + "nodeType": "VariableDeclaration", + "scope": 3705, + "src": "17974:17:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" }, - { - "hexValue": "756e737570706f7274656420636f6d706163742073697a65206c656e677468", - "id": 3131, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11887:33:17", + "typeName": { + "id": 3604, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "17974:5:17", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_173d55eda06bf2b35eca6401b7d16b17b1fc97b7601de25f26189f5300bf3cb3", - "typeString": "literal_string \"unsupported compact size length\"" - }, - "value": "unsupported compact size length" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_173d55eda06bf2b35eca6401b7d16b17b1fc97b7601de25f26189f5300bf3cb3", - "typeString": "literal_string \"unsupported compact size length\"" + "typeIdentifier": "t_uint8", + "typeString": "uint8" } - ], - "id": 3127, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "11826:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3132, + }, + "visibility": "internal" + } + ], + "id": 3607, + "initialValue": { + "hexValue": "30", + "id": 3606, "isConstant": false, "isLValue": false, - "isPure": false, - "kind": "functionCall", + "isPure": true, + "kind": "number", "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11826:95:17", - "tryCall": false, + "nodeType": "Literal", + "src": "17994:1:17", "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" }, - "id": 3133, - "nodeType": "ExpressionStatement", - "src": "11826:95:17" + "nodeType": "VariableDeclarationStatement", + "src": "17974:21:17" }, { "assignments": [ - 3135 + 3609 ], "declarations": [ { "constant": false, - "id": 3135, + "id": 3609, "mutability": "mutable", "name": "result", - "nameLocation": "12053:6:17", + "nameLocation": "18018:6:17", "nodeType": "VariableDeclaration", - "scope": 3160, - "src": "12046:13:17", + "scope": 3705, + "src": "18005:19:17", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" }, "typeName": { - "id": 3134, - "name": "uint64", + "id": 3608, + "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "12046:6:17", + "src": "18005:5:17", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" } }, "visibility": "internal" } ], - "id": 3150, + "id": 3617, "initialValue": { "arguments": [ { "arguments": [ { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3141, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3139, - "name": "sizePosition", + "expression": { + "id": 3613, + "name": "byteArray", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3074, - "src": "12112:12:17", + "referencedDeclaration": 3587, + "src": "18052:9:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 3140, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12127:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "12112:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3146, + "id": 3614, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3144, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3142, - "name": "sizePosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3074, - "src": "12130:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 3143, - "name": "compactSizeBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3119, - "src": "12145:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12130:31:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 3145, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12164:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "12130:35:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 3147, - "name": "array", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3076, - "src": "12167:5:17", + "memberLocation": "18062:6:17", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18052:16:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } } ], @@ -23017,28 +29798,20 @@ { "typeIdentifier": "t_uint256", "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" } ], - "id": 3138, - "name": "calculateLittleEndianFragment", + "id": 3612, + "name": "total5BitWords", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3227, - "src": "12082:29:17", + "referencedDeclaration": 3742, + "src": "18037:14:17", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256,bytes memory) pure returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256) pure returns (uint256)" } }, - "id": 3148, + "id": 3615, "isConstant": false, "isLValue": false, "isPure": false, @@ -23047,7 +29820,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12082:91:17", + "src": "18037:32:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -23062,523 +29835,1261 @@ "typeString": "uint256" } ], - "id": 3137, + "id": 3611, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "12062:6:17", + "nodeType": "NewExpression", + "src": "18027:9:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint64_$", - "typeString": "type(uint64)" + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" }, "typeName": { - "id": 3136, - "name": "uint64", + "id": 3610, + "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "12062:6:17", - "typeDescriptions": {} + "src": "18031:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } } }, - "id": 3149, + "id": 3616, "isConstant": false, "isLValue": false, "isPure": false, - "kind": "typeConversion", + "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12062:121:17", + "src": "18027:43:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } }, "nodeType": "VariableDeclarationStatement", - "src": "12046:137:17" + "src": "18005:65:17" }, { - "expression": { - "components": [ - { - "id": 3151, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3135, - "src": "12201:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, + "body": { + "id": 3676, + "nodeType": "Block", + "src": "18125:436:17", + "statements": [ { - "commonType": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "id": 3157, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 3154, - "name": "compactSizeBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3119, - "src": "12216:16:17", + "expression": { + "id": 3641, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3629, + "name": "currentValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3597, + "src": "18139:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3640, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3632, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3630, + "name": "currentValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3597, + "src": "18155:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "id": 3631, + "name": "BYTE_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2292, + "src": "18171:9:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18155:25:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3633, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "18154:27:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "arguments": [ + { + "baseExpression": { + "id": 3636, + "name": "byteArray", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3587, + "src": "18190:9:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3638, + "indexExpression": { + "id": 3637, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3619, + "src": "18200:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18190:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 3635, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18184:5:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 3634, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "18184:5:17", + "typeDescriptions": {} + } + }, + "id": 3639, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18184:19:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" } - ], - "id": 3153, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "12209:6:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint16_$", - "typeString": "type(uint16)" }, - "typeName": { - "id": 3152, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "12209:6:17", - "typeDescriptions": {} + "src": "18154:49:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 3155, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12209:24:17", - "tryCall": false, + "src": "18139:64:17", "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 3156, + "id": 3642, + "nodeType": "ExpressionStatement", + "src": "18139:64:17" + }, + { + "expression": { + "id": 3645, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, "lValueRequested": false, - "nodeType": "Literal", - "src": "12236:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" + "leftHandSide": { + "id": 3643, + "name": "bitCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3601, + "src": "18217:8:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "id": 3644, + "name": "BYTE_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2292, + "src": "18229:9:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } }, - "value": "1" + "src": "18217:21:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } }, - "src": "12209:28:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - } - ], - "id": 3158, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "12200:38:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", - "typeString": "tuple(uint64,uint16)" - } - }, - "functionReturnParameters": 3082, - "id": 3159, - "nodeType": "Return", - "src": "12193:45:17" - } - ] - }, - "id": 3161, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "parseCompactSizeInt", - "nameLocation": "11340:19:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3077, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3074, - "mutability": "mutable", - "name": "sizePosition", - "nameLocation": "11365:12:17", - "nodeType": "VariableDeclaration", - "scope": 3161, - "src": "11360:17:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3073, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "11360:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3076, - "mutability": "mutable", - "name": "array", - "nameLocation": "11392:5:17", - "nodeType": "VariableDeclaration", - "scope": 3161, - "src": "11379:18:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3075, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "11379:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "11359:39:17" - }, - "returnParameters": { - "id": 3082, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3079, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3161, - "src": "11420:6:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 3078, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "11420:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3081, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3161, - "src": "11428:6:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 3080, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "11428:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" - } - ], - "src": "11419:16:17" - }, - "scope": 3228, - "src": "11331:914:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 3226, - "nodeType": "Block", - "src": "12406:357:17", - "statements": [ - { - "expression": { - "arguments": [ + "id": 3646, + "nodeType": "ExpressionStatement", + "src": "18217:21:17" + }, { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "body": { + "id": 3674, + "nodeType": "Block", + "src": "18289:262:17", + "statements": [ + { + "expression": { + "id": 3652, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3650, + "name": "bitCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3601, + "src": "18307:8:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "id": 3651, + "name": "BECH32_WORD_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2289, + "src": "18319:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18307:28:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3653, + "nodeType": "ExpressionStatement", + "src": "18307:28:17" + }, + { + "expression": { + "id": 3669, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 3654, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3609, + "src": "18430:6:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3656, + "indexExpression": { + "id": 3655, + "name": "resultIndex", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3605, + "src": "18437:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "18430:19:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3666, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3663, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3661, + "name": "currentValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3597, + "src": "18466:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "id": 3662, + "name": "bitCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3601, + "src": "18482:8:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18466:24:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3664, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "18465:26:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 3665, + "name": "MAX_VALUE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3593, + "src": "18494:9:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "18465:38:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3660, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18459:5:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 3659, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "18459:5:17", + "typeDescriptions": {} + } + }, + "id": 3667, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18459:45:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 3658, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18452:6:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes1_$", + "typeString": "type(bytes1)" + }, + "typeName": { + "id": 3657, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "18452:6:17", + "typeDescriptions": {} + } + }, + "id": 3668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18452:53:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "18430:75:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 3670, + "nodeType": "ExpressionStatement", + "src": "18430:75:17" + }, + { + "expression": { + "id": 3672, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "18523:13:17", + "subExpression": { + "id": 3671, + "name": "resultIndex", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3605, + "src": "18523:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 3673, + "nodeType": "ExpressionStatement", + "src": "18523:13:17" + } + ] }, - "id": 3181, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3176, + "id": 3649, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 3173, - "name": "fragmentStart", + "id": 3647, + "name": "bitCount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3163, - "src": "12437:13:17", + "referencedDeclaration": 3601, + "src": "18259:8:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "<", + "operator": ">=", "rightExpression": { - "expression": { - "id": 3174, - "name": "array", + "id": 3648, + "name": "BECH32_WORD_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2289, + "src": "18271:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18259:28:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3675, + "nodeType": "WhileStatement", + "src": "18252:299:17" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3625, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3622, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3619, + "src": "18098:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 3623, + "name": "byteArray", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3587, + "src": "18102:9:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 3624, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "18112:6:17", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18102:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18098:20:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3677, + "initializationExpression": { + "assignments": [ + 3619 + ], + "declarations": [ + { + "constant": false, + "id": 3619, + "mutability": "mutable", + "name": "i", + "nameLocation": "18091:1:17", + "nodeType": "VariableDeclaration", + "scope": 3677, + "src": "18086:6:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3618, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "18086:4:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3621, + "initialValue": { + "hexValue": "30", + "id": 3620, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18095:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "18086:10:17" + }, + "loopExpression": { + "expression": { + "id": 3627, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": true, + "src": "18120:3:17", + "subExpression": { + "id": 3626, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3619, + "src": "18122:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3628, + "nodeType": "ExpressionStatement", + "src": "18120:3:17" + }, + "nodeType": "ForStatement", + "src": "18081:480:17" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3680, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3678, + "name": "bitCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3601, + "src": "18575:8:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 3679, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18586:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "18575:12:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3702, + "nodeType": "IfStatement", + "src": "18571:139:17", + "trueBody": { + "id": 3701, + "nodeType": "Block", + "src": "18589:121:17", + "statements": [ + { + "expression": { + "id": 3699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 3681, + "name": "result", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3167, - "src": "12453:5:17", + "referencedDeclaration": 3609, + "src": "18603:6:17", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 3175, + "id": 3683, + "indexExpression": { + "id": 3682, + "name": "resultIndex", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3605, + "src": "18610:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "lValueRequested": false, - "memberLocation": "12459:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "12453:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12437:28:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3180, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3177, - "name": "fragmentEnd", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3165, - "src": "12469:11:17", + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "18603:19:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" } }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3696, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3693, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3688, + "name": "currentValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3597, + "src": "18639:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3691, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3689, + "name": "BECH32_WORD_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2289, + "src": "18656:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 3690, + "name": "bitCount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3601, + "src": "18675:8:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18656:27:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3692, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "18655:29:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18639:45:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3694, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "18638:47:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "id": 3695, + "name": "MAX_VALUE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3593, + "src": "18688:9:17", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "18638:59:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3687, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18632:5:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 3686, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "18632:5:17", + "typeDescriptions": {} + } + }, + "id": 3697, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18632:66:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], "expression": { - "id": 3178, - "name": "array", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3167, - "src": "12483:5:17", + "argumentTypes": [ + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 3685, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18625:6:17", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_type$_t_bytes1_$", + "typeString": "type(bytes1)" + }, + "typeName": { + "id": 3684, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "18625:6:17", + "typeDescriptions": {} } }, - "id": 3179, + "id": 3698, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "typeConversion", "lValueRequested": false, - "memberLocation": "12489:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "12483:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12469:26:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "12437:58:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "52616e67652063616e277420626520626967676572207468616e206172726179", - "id": 3182, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12510:34:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b880bf2732d5dc41106d7c9b4d33a7d7359e73ab841c93dd915612cdef84660a", - "typeString": "literal_string \"Range can't be bigger than array\"" - }, - "value": "Range can't be bigger than array" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b880bf2732d5dc41106d7c9b4d33a7d7359e73ab841c93dd915612cdef84660a", - "typeString": "literal_string \"Range can't be bigger than array\"" - } - ], - "id": 3172, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "12416:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "18625:74:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "18603:96:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 3700, + "nodeType": "ExpressionStatement", + "src": "18603:96:17" } - }, - "id": 3183, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12416:138:17", - "tryCall": false, + ] + } + }, + { + "expression": { + "id": 3703, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3609, + "src": "18726:6:17", "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } }, - "id": 3184, - "nodeType": "ExpressionStatement", - "src": "12416:138:17" - }, + "functionReturnParameters": 3591, + "id": 3704, + "nodeType": "Return", + "src": "18719:13:17" + } + ] + }, + "documentation": { + "id": 3585, + "nodeType": "StructuredDocumentation", + "src": "17687:103:17", + "text": "@notice Referece for implementation: https://github.com/bitcoin/bips/blob/master/bip-0173.mediawiki" + }, + "id": 3706, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "to5BitWords", + "nameLocation": "17804:11:17", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3588, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3587, + "mutability": "mutable", + "name": "byteArray", + "nameLocation": "17829:9:17", + "nodeType": "VariableDeclaration", + "scope": 3706, + "src": "17816:22:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3586, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "17816:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "17815:24:17" + }, + "returnParameters": { + "id": 3591, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3590, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3706, + "src": "17861:12:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3589, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "17861:5:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "17860:14:17" + }, + "scope": 3743, + "src": "17795:944:17", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 3741, + "nodeType": "Block", + "src": "18816:197:17", + "statements": [ { "assignments": [ - 3186 + 3714 ], "declarations": [ { "constant": false, - "id": 3186, + "id": 3714, "mutability": "mutable", - "name": "result", - "nameLocation": "12569:6:17", + "name": "total", + "nameLocation": "18831:5:17", "nodeType": "VariableDeclaration", - "scope": 3226, - "src": "12564:11:17", + "scope": 3741, + "src": "18826:10:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23586,10 +31097,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3185, + "id": 3713, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12564:4:17", + "src": "18826:4:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23598,562 +31109,388 @@ "visibility": "internal" } ], - "id": 3188, + "id": 3721, "initialValue": { - "hexValue": "30", - "id": 3187, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3720, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, "lValueRequested": false, - "nodeType": "Literal", - "src": "12578:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "12564:15:17" - }, - { - "body": { - "id": 3222, - "nodeType": "Block", - "src": "12640:94:17", - "statements": [ - { - "expression": { - "id": 3220, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3717, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftHandSide": { - "id": 3199, - "name": "result", + "leftExpression": { + "id": 3715, + "name": "numberOfBytes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3186, - "src": "12654:6:17", + "referencedDeclaration": 3708, + "src": "18840:13:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 3219, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "baseExpression": { - "id": 3202, - "name": "array", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3167, - "src": "12670:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3204, - "indexExpression": { - "id": 3203, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3190, - "src": "12676:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12670:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 3201, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "12664:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 3200, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "12664:5:17", - "typeDescriptions": {} - } - }, - "id": 3205, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12664:15:17", - "tryCall": false, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 3716, + "name": "BYTE_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2292, + "src": "18856:9:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18840:25:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3718, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "18839:27:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 3719, + "name": "BECH32_WORD_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2289, + "src": "18869:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18839:46:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "18826:59:17" + }, + { + "assignments": [ + 3723 + ], + "declarations": [ + { + "constant": false, + "id": 3723, + "mutability": "mutable", + "name": "extraWord", + "nameLocation": "18900:9:17", + "nodeType": "VariableDeclaration", + "scope": 3741, + "src": "18895:14:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3722, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18895:4:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 3732, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3731, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3729, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3726, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3724, + "name": "numberOfBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3708, + "src": "18913:13:17", "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3217, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "32", - "id": 3208, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12690:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "BinaryOperation", - "operator": "**", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3215, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "38", - "id": 3209, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12696:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_8_by_1", - "typeString": "int_const 8" - }, - "value": "8" - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3213, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3210, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3190, - "src": "12701:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "components": [ - { - "id": 3211, - "name": "fragmentStart", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3163, - "src": "12706:13:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 3212, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "12705:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12701:19:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 3214, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "12700:21:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12696:25:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 3216, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "12695:27:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12690:32:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3207, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "12683:6:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint64_$", - "typeString": "type(uint64)" - }, - "typeName": { - "id": 3206, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "12683:6:17", - "typeDescriptions": {} - } - }, - "id": 3218, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12683:40:17", - "tryCall": false, + "id": 3725, + "name": "BYTE_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2292, + "src": "18929:9:17", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "12664:59:17", + "src": "18913:25:17", "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - }, - "src": "12654:69:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" } - }, - "id": 3221, - "nodeType": "ExpressionStatement", - "src": "12654:69:17" + ], + "id": 3727, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "18912:27:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "id": 3728, + "name": "BECH32_WORD_SIZE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2289, + "src": "18942:16:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18912:46:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ] + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 3730, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18962:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "18912:51:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } }, - "condition": { + "nodeType": "VariableDeclarationStatement", + "src": "18895:68:17" + }, + { + "expression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3195, + "id": 3739, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 3193, - "name": "i", + "id": 3733, + "name": "total", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3190, - "src": "12618:1:17", + "referencedDeclaration": 3714, + "src": "18980:5:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "<", + "operator": "+", "rightExpression": { - "id": 3194, - "name": "fragmentEnd", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3165, - "src": "12622:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12618:15:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3223, - "initializationExpression": { - "assignments": [ - 3190 - ], - "declarations": [ - { - "constant": false, - "id": 3190, - "mutability": "mutable", - "name": "i", - "nameLocation": "12599:1:17", - "nodeType": "VariableDeclaration", - "scope": 3223, - "src": "12594:6:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3189, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "12594:4:17", + "components": [ + { + "condition": { + "id": 3734, + "name": "extraWord", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3723, + "src": "18989:9:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "hexValue": "31", + "id": 3736, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19004:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "id": 3737, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "18989:16:17", + "trueExpression": { + "hexValue": "30", + "id": 3735, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19000:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_uint8", + "typeString": "uint8" } - }, - "visibility": "internal" - } - ], - "id": 3192, - "initialValue": { - "id": 3191, - "name": "fragmentStart", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3163, - "src": "12603:13:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "12594:22:17" - }, - "loopExpression": { - "expression": { - "id": 3197, + } + ], + "id": 3738, "isConstant": false, + "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "12635:3:17", - "subExpression": { - "id": 3196, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3190, - "src": "12635:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, + "nodeType": "TupleExpression", + "src": "18988:18:17", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_uint8", + "typeString": "uint8" } }, - "id": 3198, - "nodeType": "ExpressionStatement", - "src": "12635:3:17" - }, - "nodeType": "ForStatement", - "src": "12589:145:17" - }, - { - "expression": { - "id": 3224, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3186, - "src": "12750:6:17", + "src": "18980:26:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3171, - "id": 3225, + "functionReturnParameters": 3712, + "id": 3740, "nodeType": "Return", - "src": "12743:13:17" + "src": "18973:33:17" } ] }, - "id": 3227, + "id": 3742, "implemented": true, "kind": "function", "modifiers": [], - "name": "calculateLittleEndianFragment", - "nameLocation": "12260:29:17", + "name": "total5BitWords", + "nameLocation": "18754:14:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 3168, + "id": 3709, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3163, - "mutability": "mutable", - "name": "fragmentStart", - "nameLocation": "12304:13:17", - "nodeType": "VariableDeclaration", - "scope": 3227, - "src": "12299:18:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3162, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "12299:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3165, + "id": 3708, "mutability": "mutable", - "name": "fragmentEnd", - "nameLocation": "12332:11:17", + "name": "numberOfBytes", + "nameLocation": "18774:13:17", "nodeType": "VariableDeclaration", - "scope": 3227, - "src": "12327:16:17", + "scope": 3742, + "src": "18769:18:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24161,60 +31498,33 @@ "typeString": "uint256" }, "typeName": { - "id": 3164, + "id": 3707, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12327:4:17", + "src": "18769:4:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" - }, - { - "constant": false, - "id": 3167, - "mutability": "mutable", - "name": "array", - "nameLocation": "12366:5:17", - "nodeType": "VariableDeclaration", - "scope": 3227, - "src": "12353:18:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3166, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "12353:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" } ], - "src": "12289:88:17" + "src": "18768:20:17" }, "returnParameters": { - "id": 3171, + "id": 3712, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3170, + "id": 3711, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 3227, - "src": "12400:4:17", + "scope": 3742, + "src": "18810:4:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24222,10 +31532,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3169, + "id": 3710, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12400:4:17", + "src": "18810:4:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24234,21 +31544,21 @@ "visibility": "internal" } ], - "src": "12399:6:17" + "src": "18809:6:17" }, - "scope": 3228, - "src": "12251:512:17", + "scope": 3743, + "src": "18745:268:17", "stateMutability": "pure", "virtual": false, "visibility": "private" } ], - "scope": 3229, - "src": "356:12409:17", + "scope": 3744, + "src": "356:18659:17", "usedErrors": [] } ], - "src": "32:12733:17" + "src": "32:18983:17" }, "compiler": { "name": "solc", @@ -24260,10 +31570,16 @@ "links": {}, "address": "0x48841b09CD720355F8EE5164DEeFbB30535d825a", "transactionHash": "0xff5efdc24fd1707cb15f10d5b08997aa52a9eaab38d3c5a953f19458188bb707" + }, + "31": { + "events": {}, + "links": {}, + "address": "0x368233164bd877B075E3492e49FE8b4F5360F3B6", + "transactionHash": "0x634efb8fc7847309d02b16f8aee217b4a1ea319bd8ef04c7e686e124edb6a3c1" } }, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:56:36.768Z", + "updatedAt": "2024-08-13T18:16:26.133Z", "networkType": "ethereum", "devdoc": { "kind": "dev", @@ -24318,6 +31634,30 @@ "_0": "Whether the script has a pay-to-script-hash output structure or not" } }, + "isP2TROutput(bytes)": { + "params": { + "pkScript": "the fragment of the raw transaction containing the raw output script" + }, + "returns": { + "_0": "Whether the script has a pay-to-taproot output structure or not" + } + }, + "isP2WPKHOutput(bytes)": { + "params": { + "pkScript": "the fragment of the raw transaction containing the raw output script" + }, + "returns": { + "_0": "Whether the script has a pay-to-witness-pubkey-hash output structure or not" + } + }, + "isP2WSHOutput(bytes)": { + "params": { + "pkScript": "the fragment of the raw transaction containing the raw output script" + }, + "returns": { + "_0": "Whether the script has a pay-to-witness-script-hash output structure or not" + } + }, "outputScriptToAddress(bytes,bool)": { "params": { "mainnet": "if the address to generate is from mainnet or testnet", @@ -24353,6 +31693,30 @@ "_0": "The address generated using the script hash" } }, + "parsePayToTaproot(bytes)": { + "params": { + "outputScript": "the fragment of the raw transaction containing the raw output script" + }, + "returns": { + "_0": "The address bech32m words generated using the taproot pubkey hash" + } + }, + "parsePayToWitnessPubKeyHash(bytes)": { + "params": { + "outputScript": "the fragment of the raw transaction containing the raw output script" + }, + "returns": { + "_0": "The address bech32 words generated using the pubkey hash" + } + }, + "parsePayToWitnessScriptHash(bytes)": { + "params": { + "outputScript": "the fragment of the raw transaction containing the raw output script" + }, + "returns": { + "_0": "The address bech32 words generated using the script hash" + } + }, "validateP2SHAdress(bytes,bytes,bool)": { "params": { "mainnet": "flag to specify if its a mainnet address", @@ -24385,6 +31749,15 @@ "isP2SHOutput(bytes)": { "notice": "Check if a raw output script is a pay-to-script-hash output" }, + "isP2TROutput(bytes)": { + "notice": "Check if a raw output script is a pay-to-taproot outputReference for implementation: https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki " + }, + "isP2WPKHOutput(bytes)": { + "notice": "Check if a raw output script is a pay-to-witness-pubkey-hash output" + }, + "isP2WSHOutput(bytes)": { + "notice": "Check if a raw output script is a pay-to-witness-script-hash output" + }, "outputScriptToAddress(bytes,bool)": { "notice": "Parse a raw output script whose type is not known by the consumer. The function will return the corresponding address if the type of the script is supported or an error if not. For the addresses that are encoded with base58check the checksum bytes are not included in the resulting byte array" }, @@ -24397,6 +31770,15 @@ "parsePayToScriptHash(bytes,bool)": { "notice": "Parse a raw pay-to-script-hash output script to get the corresponding address, the resulting byte array doesn't include the checksum bytes of the base58check encoding at the end" }, + "parsePayToTaproot(bytes)": { + "notice": "Parse a raw pay-to-taproot output script to get the corresponding address words, the resulting words are only the data part of the bech32m encoding and doesn't include the HRP" + }, + "parsePayToWitnessPubKeyHash(bytes)": { + "notice": "Parse a raw pay-to-witness-pubkey-hash output script to get the corresponding address words, the resulting words are only the data part of the bech32 encoding and doesn't include the HRP" + }, + "parsePayToWitnessScriptHash(bytes)": { + "notice": "Parse a raw pay-to-witness-script-hash output script to get the corresponding address words, the resulting words are only the data part of the bech32 encoding and doesn't include the HRP" + }, "validateP2SHAdress(bytes,bytes,bool)": { "notice": "Check if a pay-to-script-hash address belogs to a specific script, expects the address bytes to include the 4 checksum bytes at the end" } diff --git a/build/contracts/Context.json b/build/contracts/Context.json index 7823772..2de1c1e 100644 --- a/build/contracts/Context.json +++ b/build/contracts/Context.json @@ -340,7 +340,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.116Z", + "updatedAt": "2024-08-13T18:10:00.972Z", "devdoc": { "details": "Provides information about the current execution context, including the sender of the transaction and its data. While these are generally available via msg.sender and msg.data, they should not be accessed in such a direct manner, since when dealing with meta-transactions the account sending and paying for execution may not be the actual sender (as far as an application is concerned). This contract is only required for intermediate, library-like contracts.", "kind": "dev", diff --git a/build/contracts/ContextUpgradeable.json b/build/contracts/ContextUpgradeable.json index 4d7fbde..9225f22 100644 --- a/build/contracts/ContextUpgradeable.json +++ b/build/contracts/ContextUpgradeable.json @@ -555,7 +555,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.107Z", + "updatedAt": "2024-08-13T18:10:00.946Z", "devdoc": { "details": "Provides information about the current execution context, including the sender of the transaction and its data. While these are generally available via msg.sender and msg.data, they should not be accessed in such a direct manner, since when dealing with meta-transactions the account sending and paying for execution may not be the actual sender (as far as an application is concerned). This contract is only required for intermediate, library-like contracts.", "events": { diff --git a/build/contracts/ERC1967Proxy.json b/build/contracts/ERC1967Proxy.json index 050f30a..282e195 100644 --- a/build/contracts/ERC1967Proxy.json +++ b/build/contracts/ERC1967Proxy.json @@ -3719,7 +3719,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.108Z", + "updatedAt": "2024-08-13T18:10:00.951Z", "devdoc": { "details": "This contract implements an upgradeable proxy. It is upgradeable because calls are delegated to an implementation address that can be changed. This address is stored in storage in the location specified by https://eips.ethereum.org/EIPS/eip-1967[EIP1967], so that it doesn't conflict with the storage layout of the implementation behind the proxy.", "events": { diff --git a/build/contracts/ERC1967Upgrade.json b/build/contracts/ERC1967Upgrade.json index 0a5a232..d7d7608 100644 --- a/build/contracts/ERC1967Upgrade.json +++ b/build/contracts/ERC1967Upgrade.json @@ -3943,7 +3943,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.109Z", + "updatedAt": "2024-08-13T18:10:00.955Z", "devdoc": { "details": "This abstract contract provides getters and event emitting update functions for https://eips.ethereum.org/EIPS/eip-1967[EIP1967] slots. _Available since v4.1._", "events": { diff --git a/build/contracts/IBeacon.json b/build/contracts/IBeacon.json index a9ca26c..34855bf 100644 --- a/build/contracts/IBeacon.json +++ b/build/contracts/IBeacon.json @@ -144,7 +144,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.110Z", + "updatedAt": "2024-08-13T18:10:00.959Z", "devdoc": { "details": "This is the interface that {BeaconProxy} expects of its beacon.", "kind": "dev", diff --git a/build/contracts/IERC1822Proxiable.json b/build/contracts/IERC1822Proxiable.json index e1b391a..f5ed1e9 100644 --- a/build/contracts/IERC1822Proxiable.json +++ b/build/contracts/IERC1822Proxiable.json @@ -143,7 +143,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.108Z", + "updatedAt": "2024-08-13T18:10:00.949Z", "devdoc": { "details": "ERC1822: Universal Upgradeable Proxy Standard (UUPS) documents a method for upgradeability through a simplified proxy whose upgrades are fully controlled by the current implementation.", "kind": "dev", diff --git a/build/contracts/IERC1967.json b/build/contracts/IERC1967.json index d331ec4..b47544c 100644 --- a/build/contracts/IERC1967.json +++ b/build/contracts/IERC1967.json @@ -296,7 +296,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.107Z", + "updatedAt": "2024-08-13T18:10:00.949Z", "devdoc": { "details": "ERC-1967: Proxy Storage Slots. This interface contains the events defined in the ERC. _Available since v4.8.3._", "events": { diff --git a/build/contracts/ITransparentUpgradeableProxy.json b/build/contracts/ITransparentUpgradeableProxy.json index e852d5f..8f1ede8 100644 --- a/build/contracts/ITransparentUpgradeableProxy.json +++ b/build/contracts/ITransparentUpgradeableProxy.json @@ -4124,7 +4124,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.112Z", + "updatedAt": "2024-08-13T18:10:00.963Z", "devdoc": { "details": "Interface for {TransparentUpgradeableProxy}. In order to implement transparency, {TransparentUpgradeableProxy} does not implement this interface directly, and some of its functions are implemented by an internal dispatch mechanism. The compiler is unaware that these functions are implemented by {TransparentUpgradeableProxy} and will not include them in the ABI so this interface must be used to interact with it.", "events": { diff --git a/build/contracts/Initializable.json b/build/contracts/Initializable.json index 241858c..34a9e4f 100644 --- a/build/contracts/Initializable.json +++ b/build/contracts/Initializable.json @@ -2083,7 +2083,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.103Z", + "updatedAt": "2024-08-13T18:10:00.940Z", "devdoc": { "custom:oz-upgrades-unsafe-allow": "constructor constructor() { _disableInitializers(); } ``` ====", "details": "This is a base contract to aid in writing upgradeable contracts, or any kind of contract that will be deployed behind a proxy. Since proxied contracts do not make use of a constructor, it's common to move constructor logic to an external initializer function, usually called `initialize`. It then becomes necessary to protect this initializer function so it can only be called once. The {initializer} modifier provided by this contract will have this effect. The initialization functions use a version number. Once a version number is used, it is consumed and cannot be reused. This mechanism prevents re-execution of each \"step\" but allows the creation of new initialization steps in case an upgrade adds a module that needs to be initialized. For example: [.hljs-theme-light.nopadding] ```solidity contract MyToken is ERC20Upgradeable { function initialize() initializer public { __ERC20_init(\"MyToken\", \"MTK\"); } } contract MyTokenV2 is MyToken, ERC20PermitUpgradeable { function initializeV2() reinitializer(2) public { __ERC20Permit_init(\"MyToken\"); } } ``` TIP: To avoid leaving the proxy in an uninitialized state, the initializer function should be called as early as possible by providing the encoded function call as the `_data` argument to {ERC1967Proxy-constructor}. CAUTION: When used with inheritance, manual care must be taken to not invoke a parent initializer twice, or to ensure that all initializers are idempotent. This is not verified automatically as constructors are by Solidity. [CAUTION] ==== Avoid leaving a contract uninitialized. An uninitialized contract can be taken over by an attacker. This applies to both a proxy and its implementation contract, which may impact the proxy. To prevent the implementation contract from being used, you should invoke the {_disableInitializers} function in the constructor to automatically lock it when it is deployed: [.hljs-theme-light.nopadding] ```", diff --git a/build/contracts/LiquidityBridgeContract.json b/build/contracts/LiquidityBridgeContract.json index a7166f8..68dd730 100644 --- a/build/contracts/LiquidityBridgeContract.json +++ b/build/contracts/LiquidityBridgeContract.json @@ -2013,9 +2013,9 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BalanceDecrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BalanceIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"errorCode\",\"type\":\"int256\"}],\"name\":\"BridgeCapExceeded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"CallForUser\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CollateralIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Deposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"transferredAmount\",\"type\":\"int256\"}],\"name\":\"PegInRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quotehash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"processed\",\"type\":\"uint256\"}],\"name\":\"PegOut\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"PegOutDeposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"PegOutRefunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"userAddress\",\"type\":\"address\"}],\"name\":\"PegOutUserRefunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PegoutCollateralIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PegoutWithdrawCollateral\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"liquidityProvider\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"penalty\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"Penalized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"Refund\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Register\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"Resigned\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"WithdrawCollateral\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Withdrawal\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"BRIDGE_GENERIC_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_REFUNDED_LP_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_REFUNDED_USER_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"CALL_DONE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_CALL_GAS_COST\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_REFUND_GAS_LIMIT\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_UINT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PAY_TO_ADDRESS_OUTPUT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PROCESSED_QUOTE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"QUOTE_HASH_OUTPUT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UNPROCESSED_QUOTE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"addCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"addPegoutCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"bridge\",\"outputs\":[{\"internalType\":\"contract Bridge\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"}],\"internalType\":\"struct Quotes.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"callForUser\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"}],\"internalType\":\"struct Quotes.PegOutQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"name\":\"depositPegout\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBridgeAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"header\",\"type\":\"bytes\"}],\"name\":\"getBtcBlockTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDustThreshold\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinPegIn\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getPegoutCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getProviderIds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"providerIds\",\"type\":\"uint256[]\"}],\"name\":\"getProviders\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"provider\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"apiBaseUrl\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"providerType\",\"type\":\"string\"}],\"internalType\":\"struct LiquidityBridgeContract.LiquidityProvider[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"getRegisteredPegOutQuote\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"}],\"internalType\":\"struct Quotes.PegOutQuote\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getResignDelayBlocks\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRewardPercentage\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"}],\"internalType\":\"struct Quotes.PegOutQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"hashPegoutQuote\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"}],\"internalType\":\"struct Quotes.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"hashQuote\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_bridgeAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_minimumCollateral\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minimumPegIn\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_rewardPercentage\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"_resignDelayBlocks\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_dustThreshold\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_btcBlockTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"_mainnet\",\"type\":\"bool\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isOperational\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isOperationalForPegout\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"isPegOutQuoteCompleted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"providerId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"btcTx\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"btcBlockHeaderHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"partialMerkleTree\",\"type\":\"uint256\"},{\"internalType\":\"bytes32[]\",\"name\":\"merkleBranchHashes\",\"type\":\"bytes32[]\"}],\"name\":\"refundPegOut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"refundUserPegOut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_apiBaseUrl\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"_providerType\",\"type\":\"string\"}],\"name\":\"register\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"}],\"internalType\":\"struct Quotes.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"btcRawTransaction\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"partialMerkleTree\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"}],\"name\":\"registerPegIn\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"resign\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_providerId\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"setProviderStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"}],\"internalType\":\"struct Quotes.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"depositAddress\",\"type\":\"bytes\"}],\"name\":\"validatePeginDepositAddress\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawCollateral\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawPegoutCollateral\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"events\":{\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"}},\"kind\":\"dev\",\"methods\":{\"addCollateral()\":{\"details\":\"Increases the amount of collateral of the sender\"},\"callForUser((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool))\":{\"details\":\"Performs a call on behalf of a user\",\"params\":{\"quote\":\"The quote that identifies the service\"},\"returns\":{\"_0\":\"Boolean indicating whether the call was successful\"}},\"deposit()\":{\"details\":\"Increases the balance of the sender\"},\"getBalance(address)\":{\"details\":\"Returns the amount of funds of a liquidity provider\",\"params\":{\"addr\":\"The address of the liquidity provider\"},\"returns\":{\"_0\":\"The balance of the liquidity provider\"}},\"getBtcBlockTimestamp(bytes)\":{\"details\":\"Gets the timestamp of a Bitcoin block header\",\"params\":{\"header\":\"The block header\"},\"returns\":{\"_0\":\"The timestamp of the block header\"}},\"getCollateral(address)\":{\"details\":\"Returns the amount of collateral of a liquidity provider\",\"params\":{\"addr\":\"The address of the liquidity provider\"},\"returns\":{\"_0\":\"The amount of locked collateral\"}},\"hashQuote((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool))\":{\"details\":\"Calculates hash of a quote. Note: besides calculation this function also validates the quote.\",\"params\":{\"quote\":\"The quote of the service\"},\"returns\":{\"_0\":\"The hash of a quote\"}},\"initialize(address,uint256,uint256,uint32,uint32,uint256,uint256,bool)\":{\"params\":{\"_bridgeAddress\":\"The address of the bridge contract\",\"_dustThreshold\":\"Amount that is considered dust\",\"_minimumCollateral\":\"The minimum required collateral for liquidity providers\",\"_minimumPegIn\":\"The minimum peg-in amount\",\"_resignDelayBlocks\":\"The number of block confirmations that a liquidity // provider needs to wait before it can withdraw its collateral\",\"_rewardPercentage\":\"The percentage of the penalty fee that an honest party // receives when calling registerPegIn in case of a liquidity provider misbehaving\"}},\"isOperational(address)\":{\"details\":\"Checks whether a liquidity provider can deliver a pegin service\",\"returns\":{\"_0\":\"Whether the liquidity provider is registered and has enough locked collateral\"}},\"isOperationalForPegout(address)\":{\"details\":\"Checks whether a liquidity provider can deliver a pegout service\",\"returns\":{\"_0\":\"Whether the liquidity provider is registered and has enough locked collateral\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"register(string,string,bool,string)\":{\"details\":\"Registers msg.sender as a liquidity provider with msg.value as collateral\"},\"registerPegIn((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool),bytes,bytes,bytes,uint256)\":{\"details\":\"Registers a peg-in transaction with the bridge and pays to the involved parties\",\"params\":{\"btcRawTransaction\":\"The peg-in transaction\",\"height\":\"The block that contains the peg-in transaction\",\"partialMerkleTree\":\"The merkle tree path that proves transaction inclusion\",\"quote\":\"The quote of the service\",\"signature\":\"The signature of the quote\"},\"returns\":{\"_0\":\"The total peg-in amount received from the bridge contract or an error code\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"resign()\":{\"details\":\"Used to resign as a liquidity provider\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"withdraw(uint256)\":{\"details\":\"Used to withdraw funds\",\"params\":{\"amount\":\"The amount to withdraw\"}},\"withdrawCollateral()\":{\"details\":\"Used to withdraw the locked collateral\"}},\"title\":\"Contract that assists with the Flyover protocol\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/LiquidityBridgeContract.sol\":\"LiquidityBridgeContract\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\":{\"keccak256\":\"0x0dc781715e8c751a32cc8a6cb062c0aa315dac2d14f9e00cf93d3aec0ae295e8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1dc434f8cc19e5ddf589ec5bab31427e9b0a0eb990e00a217fdfeca7223cf4f9\",\"dweb:/ipfs/QmUpkMKeG7ncvyxpye4Z1izF2NvRK4rJ2nt6fof9TbPsvc\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":{\"keccak256\":\"0x74d384b5e0ce7b5be1cb5d1446b40e788a0b3e13522aaa583d73a554c835c4d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e94fc123058c5e2cc8cd4635f12bcba195b8b57fef895980c519130f44aa5d17\",\"dweb:/ipfs/QmVhqvcmMhvwYeuYgheTFVBo3EHBKuyYpthdhQRwTdBfx4\"]},\"project:/contracts/Bridge.sol\":{\"keccak256\":\"0xae192fa4fc0d6d395fd0c3912bc3affe86ddd4869f04501fbae0afe234d1becd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://309436cba07567a3ee76e71d6a751023b436a17f7d83e291ef731318287756e6\",\"dweb:/ipfs/QmZTjw3hbY4ofptJmQwnLRGrBTQcv6yPgbY4WvMAwgkzGS\"]},\"project:/contracts/LiquidityBridgeContract.sol\":{\"keccak256\":\"0xffd1e9632f97e8d0a1daac7a5db03b7f5c345e80e08ecc2d2a113d36969fef7a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d95ff6c407622ceab5e821eb0ae0e1984812e5e517180c56f57f2891840d79a3\",\"dweb:/ipfs/QmS9sYi998BahXLHLW74qrf45icdLGmxXuNm7Y2SN9VZnF\"]},\"project:/contracts/Quotes.sol\":{\"keccak256\":\"0x28948b37d73f110d9cfc6cc3505fa7f2309b2d8d588d90c4069df45b4acbe399\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f2a824971a2421b56127e048a6b8a2d4ef4945b13e5f40cb266a19462c954e7f\",\"dweb:/ipfs/QmWm8YpQUwvqu4erUbsUZ1xz4PoVtJQiAX1Kh5Gezi32c1\"]},\"project:/contracts/SignatureValidator.sol\":{\"keccak256\":\"0x9d72920dd5ff2891c8dd3b3a814c1b108e82fcc6dfd849c96842e88c01d25b2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df1167e9def35ced4a620e3fa1e6d148bc7c1fb995378bf12dabef250b3be65\",\"dweb:/ipfs/QmZJJchWvzUeMb68VPHFGnMXBx7aMhK5GqJy8ECDx2rf58\"]}},\"version\":1}", - "bytecode": "0x608060405234801561001057600080fd5b50615eee80620000216000396000f3fe60806040526004361061027f5760003560e01c806304ade855146102d35780630a7bf57a146102ff5780630a9cb4a7146103145780631b032188146103335780632e1a7d4d1461035357806333f07ad31461037357806335510a7d14610388578063417055181461039d578063418663a2146103b05780634198687e146103da5780634533ac1c146103e2578063457385f2146104025780634d0ec9711461043257806354015ee01461045257806359c153be14610485578063668dbd831461049a57806369023235146104c757806369652fcf146104e75780636e2e8c70146104fc578063715018a61461051c57806372cbf4e8146105315780637b78837f146105515780638490a8df146105645780638d5979391461057a5780638da5cb5b146105915780638f91797d146105b35780639b56d6c9146105d35780639cd6557f146106095780639d79b59b1461061e5780639e81699914610647578063a0cd70fc1461064f578063a0d250371461066f578063a4a5ba501461068f578063a93bb247146106a4578063ac29d744146106bb578063ae76ce86146106ce578063ae93b67b146106e5578063bd519eff146106fc578063bd5798c314610732578063be6de4eb14610754578063c525cdd814610769578063c721316314610780578063cfb92f0a1461079b578063d0e30db0146107b2578063d6c70de8146107ba578063e1de16c6146107da578063e30e6ea3146107f0578063e5b5019a14610806578063e78cea921461081c578063e830b6901461083c578063e8fcce7114610851578063e90d2ddb14610867578063f2fde38b14610894578063f8b2cb4f146108b4578063fa88dcde146108ea578063fb32c508146108ff57600080fd5b366102ce576097546001600160a01b031633146102cc5760405162461bcd60e51b81526020600482015260066024820152654c424330303760d01b60448201526064015b60405180910390fd5b005b600080fd5b3480156102df57600080fd5b506102e8600181565b60405160ff90911681526020015b60405180910390f35b34801561030b57600080fd5b506102e8600281565b34801561032057600080fd5b5060a2545b6040519081526020016102f6565b34801561033f57600080fd5b5061032561034e366004614ae9565b61091d565b34801561035f57600080fd5b506102cc61036e366004614b1d565b61092e565b34801561037f57600080fd5b5060a154610325565b34801561039457600080fd5b506102cc610a26565b6103256103ab366004614b36565b610b54565b3480156103bc57600080fd5b506103c76101301981565b60405160019190910b81526020016102f6565b6102cc610eef565b3480156103ee57600080fd5b506102cc6103fd366004614bd2565b610f74565b34801561040e57600080fd5b5061042261041d366004614c53565b6111b3565b60405190151581526020016102f6565b34801561043e57600080fd5b5061042261044d366004614c53565b6111e9565b34801561045e57600080fd5b5061042261046d366004614b1d565b600090815260a7602052604090206001015460ff1690565b34801561049157600080fd5b506102cc61121f565b3480156104a657600080fd5b506104ba6104b5366004614c93565b61134d565b6040516102f69190614d80565b3480156104d357600080fd5b506103256104e2366004614fbd565b6116ce565b3480156104f357600080fd5b506102cc6116d9565b34801561050857600080fd5b50610325610517366004614ff1565b611784565b34801561052857600080fd5b506102cc611f6b565b34801561053d57600080fd5b506102cc61054c3660046150a5565b611f7f565b6102cc61055f3660046150d5565b612019565b34801561057057600080fd5b5061032560a25481565b34801561058657600080fd5b506103c761012c1981565b34801561059d57600080fd5b506105a661249f565b6040516102f69190615138565b3480156105bf57600080fd5b506102cc6105ce366004614b1d565b6124ae565b3480156105df57600080fd5b506103256105ee366004614c53565b6001600160a01b031660009081526099602052604090205490565b34801561061557600080fd5b506102e8600081565b34801561062a57600080fd5b506106346188b881565b60405161ffff90911681526020016102f6565b6102cc6127af565b34801561065b57600080fd5b5061032561066a36600461514c565b61282a565b34801561067b57600080fd5b5061042261068a366004615180565b61287d565b34801561069b57600080fd5b50610325600181565b3480156106b057600080fd5b506103c761012d1981565b6104226106c9366004614ae9565b6129e9565b3480156106da57600080fd5b506103c761012b1981565b3480156106f157600080fd5b506103c76103831981565b34801561070857600080fd5b50610325610717366004614c53565b6001600160a01b03166000908152609a602052604090205490565b34801561073e57600080fd5b5060a054600160201b900463ffffffff16610325565b34801561076057600080fd5b50610325600081565b34801561077557600080fd5b506103c761012e1981565b34801561078c57600080fd5b5060a05463ffffffff16610325565b3480156107a757600080fd5b506103c761012f1981565b6102cc612cfb565b3480156107c657600080fd5b506102cc6107d53660046151b6565b612d2a565b3480156107e657600080fd5b506106346108fc81565b3480156107fc57600080fd5b506103c760c71981565b34801561081257600080fd5b5061032560001981565b34801561082857600080fd5b506097546105a6906001600160a01b031681565b34801561084857600080fd5b50609e54610325565b34801561085d57600080fd5b506103c760631981565b34801561087357600080fd5b50610887610882366004614b1d565b6136f6565b6040516102f6919061528c565b3480156108a057600080fd5b506102cc6108af366004614c53565b613a21565b3480156108c057600080fd5b506103256108cf366004614c53565b6001600160a01b031660009081526098602052604090205490565b3480156108f657600080fd5b50609f54610325565b34801561090b57600080fd5b506097546001600160a01b03166105a6565b600061092882613a97565b92915050565b3360009081526098602052604090205481111561095d5760405162461bcd60e51b81526004016102c39061540b565b336000908152609860205260408120805483929061097c908490615441565b9091555050604051600090339083908381818185875af1925050503d80600081146109c3576040519150601f19603f3d011682016040523d82523d6000602084013e6109c8565b606091505b50509050806109e95760405162461bcd60e51b81526004016102c390615454565b7f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b653383604051610a1a929190615474565b60405180910390a15050565b336000908152609d6020526040902054610a525760405162461bcd60e51b81526004016102c39061548d565b60a054336000908152609d6020526040902054600160201b90910463ffffffff1690610a7e9043615441565b1015610a9c5760405162461bcd60e51b81526004016102c3906154ad565b336000818152609a60209081526040808320805490849055609d9092528083208390555190929083908381818185875af1925050503d8060008114610afd576040519150601f19603f3d011682016040523d82523d6000602084013e610b02565b606091505b5050905080610b235760405162461bcd60e51b81526004016102c390615454565b7ffc72299650b405e7b0480ca8fb0fb3948fb10a77ac02f797cc9de1f4aaa55db73383604051610a1a929190615474565b6000323314610b8e5760405162461bcd60e51b81526020600482015260066024820152654c424330303360d01b60448201526064016102c3565b610b99858584613cff565b33600090815260996020526040902054158015610bc35750336000908152609a6020526040902054155b610bf85760405162461bcd60e51b815260206004820152600660248201526504c42433037360d41b60448201526064016102c3565b336000908152609d602052604090205415610c3e5760405162461bcd60e51b81526020600482015260066024820152654c424330303960d01b60448201526064016102c3565b604051602001610c4d906154cd565b6040516020818303038152906040528051906020012082604051602001610c7491906154de565b6040516020818303038152906040528051906020012003610cc857609e54341015610cb15760405162461bcd60e51b81526004016102c3906154fa565b336000908152609960205260409020349055610dcd565b604051602001610cd79061551a565b6040516020818303038152906040528051906020012082604051602001610cfe91906154de565b6040516020818303038152906040528051906020012003610d5257609e54341015610d3b5760405162461bcd60e51b81526004016102c3906154fa565b336000908152609a60205260409020349055610dcd565b609e54610d6090600261552c565b341015610d7f5760405162461bcd60e51b81526004016102c3906154fa565b6000610d8c600234615559565b9050610d9960023461556d565b15610dae57610da9816001615581565b610db0565b805b33600090815260996020908152604080832093909355609a905220555b60a28054906000610ddd83615594565b90915550506040805160c08101825260a2548082523360208084019182528385018a8152606085018a9052881515608086015260a085018890526000938452609b909152939091208251815590516001820180546001600160a01b0319166001600160a01b0390921691909117905591519091906002820190610e609082615635565b5060608201516003820190610e759082615635565b50608082015160048201805460ff191691151591909117905560a08201516005820190610ea29082615635565b505060a254604080519182523460208301523392507fa9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e910160405180910390a25060a2545b949350505050565b610ef833613ea6565b610f145760405162461bcd60e51b81526004016102c3906156f4565b336000908152609a602052604081208054349290610f33908490615581565b90915550506040517f873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa990610f6a9033903490615474565b60405180910390a1565b600054610100900460ff1615808015610f945750600054600160ff909116105b80610fae5750303b158015610fae575060005460ff166001145b6110115760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016102c3565b6000805460ff191660011790558015611034576000805461ff0019166101001790555b60648663ffffffff1611156110745760405162461bcd60e51b8152602060048201526006602482015265131090cc0c0d60d21b60448201526064016102c3565b666a94d74f4300008810156110b45760405162461bcd60e51b8152602060048201526006602482015265262121981b9960d11b60448201526064016102c3565b603c8563ffffffff1610156110f45760405162461bcd60e51b81526020600482015260066024820152654c424330373360d01b60448201526064016102c3565b6110fc613ee5565b609780546001600160a01b038b166001600160a01b0319909116179055609e889055609f87905560a0805463ffffffff878116600160201b026001600160401b03199092169089161717905560a184905560a383905560a4805483151560ff1990911617905580156111a8576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050505050565b60006111be82613f59565b80156109285750609e546001600160a01b038316600090815260996020526040902054101592915050565b60006111f482613ea6565b80156109285750609e546001600160a01b0383166000908152609a6020526040902054101592915050565b336000908152609d602052604090205461124b5760405162461bcd60e51b81526004016102c39061548d565b60a054336000908152609d6020526040902054600160201b90910463ffffffff16906112779043615441565b10156112955760405162461bcd60e51b81526004016102c3906154ad565b336000818152609960209081526040808320805490849055609d9092528083208390555190929083908381818185875af1925050503d80600081146112f6576040519150601f19603f3d011682016040523d82523d6000602084013e6112fb565b606091505b505090508061131c5760405162461bcd60e51b81526004016102c390615454565b7fa8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d23383604051610a1a929190615474565b6060600082516001600160401b0381111561136a5761136a6147a4565b6040519080825280602002602001820160405280156113df57816020015b6113cc6040518060c001604052806000815260200160006001600160a01b031681526020016060815260200160608152602001600015158152602001606081525090565b8152602001906001900390816113885790505b5090506000805b84518110156116c557600085828151811061140357611403615714565b6020908102919091018101516000818152609b909252604090912060010154909150611437906001600160a01b0316613f59565b8061146157506000818152609b6020526040902060010154611461906001600160a01b0316613ea6565b801561147e57506000818152609b602052604090206004015460ff165b156116b2576000818152609b6020908152604091829020825160c0810184528154815260018201546001600160a01b03169281019290925260028101805492939192918401916114cd906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546114f9906155ad565b80156115465780601f1061151b57610100808354040283529160200191611546565b820191906000526020600020905b81548152906001019060200180831161152957829003601f168201915b5050505050815260200160038201805461155f906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461158b906155ad565b80156115d85780601f106115ad576101008083540402835291602001916115d8565b820191906000526020600020905b8154815290600101906020018083116115bb57829003601f168201915b5050509183525050600482015460ff1615156020820152600582018054604090920191611604906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054611630906155ad565b801561167d5780601f106116525761010080835404028352916020019161167d565b820191906000526020600020905b81548152906001019060200180831161166057829003601f168201915b50505050508152505084848151811061169857611698615714565b602002602001018190525082806116ae90615594565b9350505b50806116bd81615594565b9150506113e6565b50909392505050565b600061092882613f98565b6116e233613f59565b6116fe5760405162461bcd60e51b81526004016102c3906156f4565b336000908152609d6020526040902054156117445760405162461bcd60e51b81526020600482015260066024820152654c424330323360d01b60448201526064016102c3565b336000818152609d602052604090819020439055517fa6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d8691610f6a91615138565b600061178e614014565b600061179987613a97565b600081815260a56020526040902054909150600160ff90911611156117d05760405162461bcd60e51b81526004016102c39061572a565b60408088015190516301a86b5560e41b815273__SignatureValidator____________________91631a86b5509161180f919085908b9060040161574a565b602060405180830381865af415801561182c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118509190615771565b61186c5760405162461bcd60e51b81526004016102c39061578e565b637fffffff83106118a85760405162461bcd60e51b815260206004820152600660248201526504c42433033360d41b60448201526064016102c3565b60006118b7888787878661406d565b905061012f81016118f35760405162461bcd60e51b81526020600482015260066024820152654c424330333160d01b60448201526064016102c3565b61012e810161192d5760405162461bcd60e51b815260206004820152600660248201526526212198199960d11b60448201526064016102c3565b61013081016119675760405162461bcd60e51b81526020600482015260066024820152654c424330333360d01b60448201526064016102c3565b61013181016119a15760405162461bcd60e51b8152602060048201526006602482015265131090cc0ccd60d21b60448201526064016102c3565b61038481016119db5760405162461bcd60e51b81526020600482015260066024820152654c424330333560d01b60448201526064016102c3565b60008113806119eb575060c71981145b806119f7575060631981145b611a2c5760405162461bcd60e51b815260206004820152600660248201526526212198199b60d11b60448201526064016102c3565b6000828152609c6020526040902054611a4f908990839063ffffffff168761413f565b15611b205760e08801516040808a01516001600160a01b031660009081526099602052908120549091611a81916143a0565b905080609960008b604001516001600160a01b03166001600160a01b031681526020019081526020016000206000828254611abc9190615441565b90915550506040808a01519051600080516020615e7983398151915291611ae691849087906157ae565b60405180910390a160a054600090606490611b079063ffffffff168461552c565b611b119190615559565b9050611b1d33826143b8565b50505b60c719811480611b31575060631981145b15611ba557600082815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff1916905581518481529081018390527ffb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe910160405180910390a19150611f589050565b60405162e7a37960e21b8152819073__Quotes________________________________9063039e8de490611bdf908c908590600401615923565b60006040518083038186803b158015611bf757600080fd5b505af4158015611c0b573d6000803e3d6000fd5b5050506000848152609c602052604090205463ffffffff16159050611d4c576000838152609c6020526040812054600160201b900460ff1615611c6d57611c66828b60c001518c6101800151611c619190615581565b6143a0565b9050611c7e565b611c7b828b60c001516143a0565b90505b611c8c8a60400151826143b8565b6000611c988284615441565b905060a154811115611d455760808b01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611cf8576040519150601f19603f3d011682016040523d82523d6000602084013e611cfd565b606091505b50509050600080516020615e598339815191528c60800151838389604051611d289493929190615945565b60405180910390a180611d4357611d438c60400151836143b8565b505b5050611ef1565b61022089015181908015611d6557508961018001518110155b15611e575760008a61010001516001600160a01b03168b610140015163ffffffff168c61018001518d6101200151604051611da091906154de565b600060405180830381858888f193505050503d8060008114611dde576040519150601f19603f3d011682016040523d82523d6000602084013e611de3565b606091505b505090508a61010001516001600160a01b0316336001600160a01b0316600080516020615e998339815191528d61014001518e61018001518f6101200151868b604051611e3495949392919061596d565b60405180910390a38015611e55576101808b0151611e529083615441565b91505b505b60a154811115611eef5760808a01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611eb5576040519150601f19603f3d011682016040523d82523d6000602084013e611eba565b606091505b50509050600080516020615e598339815191528b60800151838388604051611ee59493929190615945565b60405180910390a1505b505b600083815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff19169055905183815284917f0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2910160405180910390a2509150505b611f626001606555565b95945050505050565b611f73614417565b611f7d6000614476565b565b81611f8861249f565b6001600160a01b0316336001600160a01b03161480611fc057506000818152609b60205260409020600101546001600160a01b031633145b611ff55760405162461bcd60e51b81526020600482015260066024820152654c424330303560d01b60448201526064016102c3565b506000918252609b6020526040909120600401805460ff1916911515919091179055565b6120268260200151613ea6565b61205b5760405162461bcd60e51b81526020600482015260066024820152654c424330333760d01b60448201526064016102c3565b348260a001518361012001516120719190615581565b11156120a85760405162461bcd60e51b81526020600482015260066024820152654c424330363360d01b60448201526064016102c3565b81610160015163ffffffff164211156120ec5760405162461bcd60e51b81526020600482015260066024820152654c424330363560d01b60448201526064016102c3565b816101e0015163ffffffff164211156121305760405162461bcd60e51b8152602060048201526006602482015265262121981a1b60d11b60448201526064016102c3565b81610200015163ffffffff164311156121745760405162461bcd60e51b81526020600482015260066024820152654c424330343760d01b60448201526064016102c3565b600061217f836116ce565b60208401516040516301a86b5560e41b815291925073__SignatureValidator____________________91631a86b550916121c0918590879060040161574a565b602060405180830381865af41580156121dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122019190615771565b61221d5760405162461bcd60e51b81526004016102c39061578e565b600081815260a66020908152604080832060a79092529091206001015460ff161561225a5760405162461bcd60e51b81526004016102c3906159a6565b80546001600160a01b0316156122825760405162461bcd60e51b81526004016102c39061572a565b600082815260a66020908152604091829020865181546001600160a01b03199081166001600160a01b03928316178355928801516001830180549094169116179091559085015185919060028201906122db9082615635565b5060608201516003820180546001600160a01b0319166001600160a01b03909216919091179055608082015160048201906123169082615635565b5060a0820151600582015560c0820151600682015560e08201516007820180546001600160401b0319166001600160401b0390921691909117905561010082015160088201906123669082615635565b506101208201516009820155610140820151600a90910180546101608401516101808501516101a08601516101c08701516101e08801516102009098015163ffffffff9788166001600160401b031990961695909517600160201b948816949094029390931763ffffffff60401b1916600160401b61ffff9384160261ffff60501b191617600160501b929091169190910217600160601b600160a01b031916600160601b9185169190910263ffffffff60801b191617600160801b948416949094029390931763ffffffff60a01b1916600160a01b9290931691909102919091179055600082815260a760209081526040918290204290819055825134815291820152339184917fb1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f910160405180910390a350505050565b6033546001600160a01b031690565b6124b6614014565b600081815260a66020526040902080546001600160a01b03166124eb5760405162461bcd60e51b81526004016102c3906159c6565b600a810154600160801b900463ffffffff164211801561251b5750600a810154600160a01b900463ffffffff1643115b6125505760405162461bcd60e51b81526020600482015260066024820152654c424330343160d01b60448201526064016102c3565b6000816005015482600901546125669190615581565b6003830154600684015460018501546001600160a01b039081166000908152609a602052604081205494955092169261259f91906143a0565b60018501546001600160a01b03166000908152609a60205260408120805492935083929091906125d0908490615441565b90915550506001840154604051600080516020615e7983398151915291612606916001600160a01b0390911690849089906157ae565b60405180910390a16003840154604080518581526001600160a01b03909216602083015286917f9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41910160405180910390a2600085815260a66020526040812080546001600160a01b0319908116825560018201805490911690559061268e6002830182614756565b6003820180546001600160a01b03191690556126ae600483016000614756565b600060058301819055600683018190556007830180546001600160401b03191690556126de906008840190614756565b50600060098201819055600a90910180546001600160c01b031916905585815260a760205260408082206001908101805460ff19169091179055516001600160a01b0384169085908381818185875af1925050503d806000811461275e576040519150601f19603f3d011682016040523d82523d6000602084013e612763565b606091505b505090508061279d5760405162461bcd60e51b8152602060048201526006602482015265131090cc0d0d60d21b60448201526064016102c3565b50505050506127ac6001606555565b50565b6127b833613f59565b6127d45760405162461bcd60e51b81526004016102c3906156f4565b33600090815260996020526040812080543492906127f3908490615581565b90915550506040517f456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af8490610f6a9033903490615474565b600081516050146128665760405162461bcd60e51b81526020600482015260066024820152654c424330363160d01b60448201526064016102c3565b6128718260446144c8565b63ffffffff1692915050565b6000806128898461091d565b8460600151856020015160601b8660a001516040516020016128ae94939291906159e6565b604051602081830303815290604052805190602001209050600081609760009054906101000a90046001600160a01b03166001600160a01b0316631d73d5dd6040518163ffffffff1660e01b8152600401600060405180830381865afa15801561291c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526129449190810190615a78565b604051602001612955929190615aac565b60408051601f198184030181529082905260a454639b02794b60e01b835290925073__BtcUtils______________________________91639b02794b916129a8918891869160ff90911690600401615ae6565b602060405180830381865af41580156129c5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f629190615771565b60006129f433613f59565b612a105760405162461bcd60e51b81526004016102c3906156f4565b612a18614014565b81604001516001600160a01b0316336001600160a01b031614612a665760405162461bcd60e51b8152602060048201526006602482015265131090cc0c8d60d21b60448201526064016102c3565b6101808201516040808401516001600160a01b0316600090815260986020522054612a92903490615581565b1015612ab05760405162461bcd60e51b81526004016102c39061540b565b6000612abb83613a97565b600081815260a5602052604090205490915060ff1615612b065760405162461bcd60e51b81526020600482015260066024820152654c424330323560d01b60448201526064016102c3565b612b148360400151346143b8565b610140830151612b27906188b890615b1e565b63ffffffff165a1015612b655760405162461bcd60e51b815260206004820152600660248201526526212198191b60d11b60448201526064016102c3565b60008361010001516001600160a01b031684610140015163ffffffff16856101800151866101200151604051612b9b91906154de565b600060405180830381858888f193505050503d8060008114612bd9576040519150601f19603f3d011682016040523d82523d6000602084013e612bde565b606091505b509091505063ffffffff421115612c205760405162461bcd60e51b81526020600482015260066024820152654c424330323760d01b60448201526064016102c3565b6000828152609c60205260409020805463ffffffff19164263ffffffff161790558015612c7b576000828152609c602052604090819020805460ff60201b1916600160201b179055840151610180850151612c7b91906145b2565b8361010001516001600160a01b0316336001600160a01b0316600080516020615e998339815191528661014001518761018001518861012001518688604051612cc895949392919061596d565b60405180910390a3600091825260a56020526040909120805460ff191660011790559050612cf66001606555565b919050565b612d0433613f59565b612d205760405162461bcd60e51b81526004016102c3906156f4565b611f7d33346143b8565b612d32614014565b612d3b33613ea6565b612d575760405162461bcd60e51b81526004016102c3906156f4565b600085815260a7602052604090206001015460ff1615612d895760405162461bcd60e51b81526004016102c3906159a6565b600085815260a66020526040902080546001600160a01b0316612dbe5760405162461bcd60e51b81526004016102c3906159c6565b60405162f5b49160e01b815260009073__BtcUtils______________________________9062f5b49190612df6908990600401615b42565b600060405180830381865af4158015612e13573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612e3b9190810190615b55565b9050600073__BtcUtils______________________________632d56f32383600181518110612e6c57612e6c615714565b6020026020010151602001516040518263ffffffff1660e01b8152600401612e949190615b42565b600060405180830381865af4158015612eb1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612ed99190810190615a78565b806020019051810190612eec9190615c68565b9050808814612f265760405162461bcd60e51b81526020600482015260066024820152654c424330363960d01b60448201526064016102c3565b60018301546001600160a01b03163314612f6b5760405162461bcd60e51b815260206004820152600660248201526509884866068760d31b60448201526064016102c3565b600a83015460975460405163fea8ba6360e01b8152600160501b90920461ffff16916001600160a01b0390911690635b6445879073__BtcUtils______________________________9063fea8ba6390612fc9908d90600401615b42565b602060405180830381865af4158015612fe6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061300a9190615c68565b8989896040518563ffffffff1660e01b815260040161302c9493929190615c81565b602060405180830381865afa158015613049573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061306d9190615c68565b12156130a45760405162461bcd60e51b81526020600482015260066024820152654c424330343960d01b60448201526064016102c3565b816000815181106130b7576130b7615714565b6020026020010151600001516402540be4006130d39190615cdd565b6001600160401b0316836009015411156131185760405162461bcd60e51b81526020600482015260066024820152654c424330363760d01b60448201526064016102c3565b600073__BtcUtils______________________________634c03fe598460008151811061314757613147615714565b602090810291909101810151015160a4546040516001600160e01b031960e085901b16815261317d929160ff1690600401615d08565b600060405180830381865af415801561319a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131c29190810190615a78565b90508080519060200120846008016040516131dd9190615d2c565b60405180910390201461321b5760405162461bcd60e51b81526020600482015260066024820152650988486606c760d31b60448201526064016102c3565b604080516102208101825285546001600160a01b03908116825260018701541660208201526002860180546134b693889290840191613259906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054613285906155ad565b80156132d25780601f106132a7576101008083540402835291602001916132d2565b820191906000526020600020905b8154815290600101906020018083116132b557829003601f168201915b505050918352505060038201546001600160a01b03166020820152600482018054604090920191613302906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461332e906155ad565b801561337b5780601f106133505761010080835404028352916020019161337b565b820191906000526020600020905b81548152906001019060200180831161335e57829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b60608201526008820180546080909201916133b9906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546133e5906155ad565b80156134325780601f1061340757610100808354040283529160200191613432565b820191906000526020600020905b81548152906001019060200180831161341557829003601f168201915b505050918352505060098201546020820152600a9091015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b90910416610100909101528389614611565b1561355957600684015460018501546001600160a01b03166000908152609a602052604081205490916134e8916143a0565b60018601546001600160a01b03166000908152609a6020526040812080549293508392909190613519908490615441565b90915550506001850154604051600080516020615e798339815191529161354f916001600160a01b0390911690849087906157ae565b60405180910390a1505b6001840154600585015460098601546000926001600160a01b03169161357e91615581565b604051600081818185875af1925050503d80600081146135ba576040519150601f19603f3d011682016040523d82523d6000602084013e6135bf565b606091505b50509050806135f95760405162461bcd60e51b815260206004820152600660248201526504c42433035360d41b60448201526064016102c3565b600083815260a66020526040812080546001600160a01b031990811682556001820180549091169055906136306002830182614756565b6003820180546001600160a01b0319169055613650600483016000614756565b600060058301819055600683018190556007830180546001600160401b0319169055613680906008840190614756565b50600060098201819055600a90910180546001600160c01b031916905583815260a760205260408082206001908101805460ff191690911790555184917fb781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb38491a250505050506136ef6001606555565b5050505050565b6040805161022080820183526000808352602080840182905260608486018190528085018390526080850181905260a0850183905260c0850183905260e0850183905261010085015261012084018290526101408401829052610160840182905261018084018290526101a084018290526101c084018290526101e08401829052610200840182905285825260a68152908490208451928301855280546001600160a01b039081168452600182015416918301919091526002810180549394929391928401916137c5906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546137f1906155ad565b801561383e5780601f106138135761010080835404028352916020019161383e565b820191906000526020600020905b81548152906001019060200180831161382157829003601f168201915b505050918352505060038201546001600160a01b0316602082015260048201805460409092019161386e906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461389a906155ad565b80156138e75780601f106138bc576101008083540402835291602001916138e7565b820191906000526020600020905b8154815290600101906020018083116138ca57829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b6060820152600882018054608090920191613925906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054613951906155ad565b801561399e5780601f106139735761010080835404028352916020019161399e565b820191906000526020600020905b81548152906001019060200180831161398157829003601f168201915b505050918352505060098201546020820152600a9091015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b909104166101009091015292915050565b613a29614417565b6001600160a01b038116613a8e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102c3565b6127ac81614476565b600081602001516001600160a01b0316306001600160a01b031614613ae75760405162461bcd60e51b81526020600482015260066024820152654c424330353160d01b60448201526064016102c3565b6101008201516097546001600160a01b03918216911603613b335760405162461bcd60e51b8152602060048201526006602482015265262121981a9960d11b60448201526064016102c3565b81606001515160151480613b4c57508160600151516021145b613b815760405162461bcd60e51b81526020600482015260066024820152654c424330353360d01b60448201526064016102c3565b8160a0015151601514613bbf5760405162461bcd60e51b8152602060048201526006602482015265131090cc0d4d60d21b60448201526064016102c3565b609f548260c00151836101800151613bd79190615581565b1015613c0e5760405162461bcd60e51b81526020600482015260066024820152654c424330353560d01b60448201526064016102c3565b816101c0015163ffffffff16826101a0015163ffffffff16613c309190615da2565b6001600160401b031663ffffffff1015613c755760405162461bcd60e51b81526020600482015260066024820152654c424330373160d01b60448201526064016102c3565b604051630fdeb30b60e21b815273__Quotes________________________________90633f7acc2c90613cac908590600401615dc2565b600060405180830381865af4158015613cc9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613cf19190810190615a78565b805190602001209050919050565b6000835111613d395760405162461bcd60e51b815260206004820152600660248201526504c42433031360d41b60448201526064016102c3565b6000825111613d735760405162461bcd60e51b81526020600482015260066024820152654c424330313760d01b60448201526064016102c3565b604051602001613d82906154cd565b6040516020818303038152906040528051906020012081604051602001613da991906154de565b604051602081830303815290604052805190602001201480613e145750604051602001613dd59061551a565b6040516020818303038152906040528051906020012081604051602001613dfc91906154de565b60405160208183030381529060405280519060200120145b80613e6c5750604051630c4dee8d60e31b60208201526024016040516020818303038152906040528051906020012081604051602001613e5491906154de565b60405160208183030381529060405280519060200120145b613ea15760405162461bcd60e51b815260206004820152600660248201526509884866062760d31b60448201526064016102c3565b505050565b6001600160a01b0381166000908152609a6020526040812054158015906109285750506001600160a01b03166000908152609d60205260409020541590565b600054610100900460ff16613f505760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016102c3565b611f7d33614476565b6001600160a01b038116600090815260996020526040812054158015906109285750506001600160a01b03166000908152609d60205260409020541590565b80516000906001600160a01b03163014613fdd5760405162461bcd60e51b8152602060048201526006602482015265262121981a9b60d11b60448201526064016102c3565b60405163fb19b88b60e01b815273__Quotes________________________________9063fb19b88b90613cac90859060040161528c565b6002606554036140665760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016102c3565b6002606555565b609754606086015160a08701516000848152609c602052604081205490936001600160a01b031692636adc013392899288928a92899230919063ffffffff16158015906140cf575060008b8152609c6020526040902054600160201b900460ff165b6040518963ffffffff1660e01b81526004016140f2989796959493929190615dd5565b6020604051808303816000875af1158015614111573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141359190615c68565b9695505050505050565b6000808413801561416357508460c001518561018001516141609190615581565b84105b1561417057506000610ee7565b60975460405163bd0c1fff60e01b8152600481018490526000916001600160a01b03169063bd0c1fff90602401600060405180830381865afa1580156141ba573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526141e29190810190615a78565b9050600081511161422c5760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a5908189b1bd8dac81a195a59da1d60621b60448201526064016102c3565b60006142378261282a565b90506000876101c00151886101a001516142519190615b1e565b63ffffffff1690508082111561426d5760009350505050610ee7565b856000036142815760019350505050610ee7565b6097546102008901516000916001600160a01b03169063bd0c1fff906001906142ae9061ffff168a615581565b6142b89190615441565b6040518263ffffffff1660e01b81526004016142d691815260200190565b600060405180830381865afa1580156142f3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261431b9190810190615a78565b905060008151116143575760405162461bcd60e51b81526020600482015260066024820152650988486606a760d31b60448201526064016102c3565b60006143628261282a565b9050896101e0015163ffffffff168161437b9190615581565b88111561439057600195505050505050610ee7565b5060009998505050505050505050565b60008183106143af57816143b1565b825b9392505050565b6001600160a01b038216600090815260986020526040812080548392906143e0908490615581565b90915550506040517f42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f5390610a1a9084908490615474565b3361442061249f565b6001600160a01b031614611f7d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102c3565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006144d5826004615581565b8351101561450e5760405162461bcd60e51b8152602060048201526006602482015265262121981b1960d11b60448201526064016102c3565b60188361451c846003615581565b8151811061452c5761452c615714565b016020015160f81c901b601084614544856002615581565b8151811061455457614554615714565b016020015160f81c901b60088561456c866001615581565b8151811061457c5761457c615714565b0160200151865160f89190911c90911b9086908690811061459f5761459f615714565b016020015160f81c171717905092915050565b6001600160a01b038216600090815260986020526040812080548392906145da908490615441565b90915550506040517f8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc006458790610a1a9084908490615474565b6097546040516339cf1b2560e11b81526004810183905260009182916001600160a01b039091169063739e364a90602401600060405180830381865afa15801561465f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526146879190810190615a78565b905060008151116146c35760405162461bcd60e51b81526020600482015260066024820152654c424330353960d01b60448201526064016102c3565b60006146ce8261282a565b60a3546101c0880151600088815260a7602052604090205492935090916146fb9163ffffffff1690615581565b6147059190615581565b811115614717576001925050506143b1565b856101e0015163ffffffff1642118061473a575085610200015163ffffffff1643115b1561474a576001925050506143b1565b50600095945050505050565b508054614762906155ad565b6000825580601f10614772575050565b601f0160209004906000526020600020908101906127ac91905b808211156147a0576000815560010161478c565b5090565b634e487b7160e01b600052604160045260246000fd5b60405161024081016001600160401b03811182821017156147dd576147dd6147a4565b60405290565b60405161022081016001600160401b03811182821017156147dd576147dd6147a4565b604051608081016001600160401b03811182821017156147dd576147dd6147a4565b604051601f8201601f191681016001600160401b0381118282101715614850576148506147a4565b604052919050565b80356001600160601b031981168114612cf657600080fd5b6001600160a01b03811681146127ac57600080fd5b8035612cf681614870565b60006001600160401b038211156148a9576148a96147a4565b50601f01601f191660200190565b600082601f8301126148c857600080fd5b81356148db6148d682614890565b614828565b8181528460208386010111156148f057600080fd5b816020850160208301376000918101602001919091529392505050565b803563ffffffff81168114612cf657600080fd5b8035600781900b8114612cf657600080fd5b803561ffff81168114612cf657600080fd5b80151581146127ac57600080fd5b8035612cf681614945565b6000610240828403121561497157600080fd5b6149796147ba565b905061498482614858565b815261499260208301614885565b60208201526149a360408301614885565b604082015260608201356001600160401b03808211156149c257600080fd5b6149ce858386016148b7565b60608401526149df60808501614885565b608084015260a08401359150808211156149f857600080fd5b614a04858386016148b7565b60a084015260c084013560c084015260e084013560e08401526101009150614a2d828501614885565b8284015261012091508184013581811115614a4757600080fd5b614a53868287016148b7565b83850152505050610140614a6881840161490d565b90820152610160614a7a838201614921565b9082015261018082810135908201526101a0614a9781840161490d565b908201526101c0614aa983820161490d565b908201526101e0614abb83820161490d565b90820152610200614acd838201614933565b90820152610220614adf838201614953565b9082015292915050565b600060208284031215614afb57600080fd5b81356001600160401b03811115614b1157600080fd5b610ee78482850161495e565b600060208284031215614b2f57600080fd5b5035919050565b60008060008060808587031215614b4c57600080fd5b84356001600160401b0380821115614b6357600080fd5b614b6f888389016148b7565b95506020870135915080821115614b8557600080fd5b614b91888389016148b7565b945060408701359150614ba382614945565b90925060608601359080821115614bb957600080fd5b50614bc6878288016148b7565b91505092959194509250565b600080600080600080600080610100898b031215614bef57600080fd5b8835614bfa81614870565b97506020890135965060408901359550614c1660608a0161490d565b9450614c2460808a0161490d565b935060a0890135925060c0890135915060e0890135614c4281614945565b809150509295985092959890939650565b600060208284031215614c6557600080fd5b81356143b181614870565b60006001600160401b03821115614c8957614c896147a4565b5060051b60200190565b60006020808385031215614ca657600080fd5b82356001600160401b03811115614cbc57600080fd5b8301601f81018513614ccd57600080fd5b8035614cdb6148d682614c70565b81815260059190911b82018301908381019087831115614cfa57600080fd5b928401925b82841015614d1857833582529284019290840190614cff565b979650505050505050565b6001600160a01b03169052565b60005b83811015614d4b578181015183820152602001614d33565b50506000910152565b60008151808452614d6c816020860160208601614d30565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015614e4157888303603f19018552815180518452878101516001600160a01b0316888501528681015160c088860181905290614de882870182614d54565b91505060608083015186830382880152614e028382614d54565b925050506080808301511515818701525060a08083015192508582038187015250614e2d8183614d54565b968901969450505090860190600101614da7565b509098975050505050505050565b60006102208284031215614e6257600080fd5b614e6a6147e3565b9050614e7582614885565b8152614e8360208301614885565b602082015260408201356001600160401b0380821115614ea257600080fd5b614eae858386016148b7565b6040840152614ebf60608501614885565b60608401526080840135915080821115614ed857600080fd5b614ee4858386016148b7565b608084015260a084013560a084015260c084013560c0840152614f0960e08501614921565b60e084015261010091508184013581811115614f2457600080fd5b614f30868287016148b7565b83850152505050610120808301358183015250610140614f5181840161490d565b90820152610160614f6383820161490d565b90820152610180614f75838201614933565b908201526101a0614f87838201614933565b908201526101c0614f9983820161490d565b908201526101e0614fab83820161490d565b90820152610200614adf83820161490d565b600060208284031215614fcf57600080fd5b81356001600160401b03811115614fe557600080fd5b610ee784828501614e4f565b600080600080600060a0868803121561500957600080fd5b85356001600160401b038082111561502057600080fd5b61502c89838a0161495e565b9650602088013591508082111561504257600080fd5b61504e89838a016148b7565b9550604088013591508082111561506457600080fd5b61507089838a016148b7565b9450606088013591508082111561508657600080fd5b50615093888289016148b7565b95989497509295608001359392505050565b600080604083850312156150b857600080fd5b8235915060208301356150ca81614945565b809150509250929050565b600080604083850312156150e857600080fd5b82356001600160401b03808211156150ff57600080fd5b61510b86838701614e4f565b9350602085013591508082111561512157600080fd5b5061512e858286016148b7565b9150509250929050565b6001600160a01b0391909116815260200190565b60006020828403121561515e57600080fd5b81356001600160401b0381111561517457600080fd5b610ee7848285016148b7565b6000806040838503121561519357600080fd5b82356001600160401b03808211156151aa57600080fd5b61510b8683870161495e565b600080600080600060a086880312156151ce57600080fd5b853594506020808701356001600160401b03808211156151ed57600080fd5b6151f98a838b016148b7565b96506040890135955060608901359450608089013591508082111561521d57600080fd5b508701601f8101891361522f57600080fd5b803561523d6148d682614c70565b81815260059190911b8201830190838101908b83111561525c57600080fd5b928401925b8284101561527a57833582529284019290840190615261565b80955050505050509295509295909350565b6020815261529e602082018351614d23565b600060208301516152b26040840182614d23565b5060408301516102208060608501526152cf610240850183614d54565b915060608501516152e36080860182614d23565b506080850151601f19808685030160a08701526153008483614d54565b935060a087015160c087015260c087015160e087015260e0870151915061010061532e8188018460070b9052565b8088015192505061012081878603018188015261534b8584614d54565b9088015161014088810191909152880151909450915061016090506153778187018363ffffffff169052565b86015190506101806153908682018363ffffffff169052565b86015190506101a06153a78682018361ffff169052565b86015190506101c06153be8682018361ffff169052565b86015190506101e06153d78682018363ffffffff169052565b86015190506102006153f08682018363ffffffff169052565b86015163ffffffff81168387015290505b5090949350505050565b6020808252600690820152654c424330313960d01b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b818103818111156109285761092861542b565b60208082526006908201526504c42433032360d41b604082015260600190565b6001600160a01b03929092168252602082015260400190565b6020808252600690820152654c424330323160d01b604082015260600190565b60208082526006908201526526212198191960d11b604082015260600190565b643832b3b4b760d91b815260050190565b600082516154f0818460208701614d30565b9190910192915050565b60208082526006908201526509884866060760d31b604082015260600190565b651c1959dbdd5d60d21b815260060190565b80820281158282048414176109285761092861542b565b634e487b7160e01b600052601260045260246000fd5b60008261556857615568615543565b500490565b60008261557c5761557c615543565b500690565b808201808211156109285761092861542b565b6000600182016155a6576155a661542b565b5060010190565b600181811c908216806155c157607f821691505b6020821081036155e157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115613ea157600081815260208120601f850160051c8101602086101561560e5750805b601f850160051c820191505b8181101561562d5782815560010161561a565b505050505050565b81516001600160401b0381111561564e5761564e6147a4565b6156628161565c84546155ad565b846155e7565b602080601f831160018114615697576000841561567f5750858301515b600019600386901b1c1916600185901b17855561562d565b600085815260208120601f198616915b828110156156c6578886015182559484019460019091019084016156a7565b50858210156156e45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020808252600690820152654c424330303160d01b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b60208082526006908201526509884866064760d31b604082015260600190565b60018060a01b0384168152826020820152606060408201526000611f626060830184614d54565b60006020828403121561578357600080fd5b81516143b181614945565b6020808252600690820152654c424330323960d01b604082015260600190565b6001600160a01b039390931683526020830191909152604082015260600190565b80516001600160601b0319168252600061024060208301516157f46020860182614d23565b5060408301516158076040860182614d23565b50606083015181606086015261581f82860182614d54565b91505060808301516158346080860182614d23565b5060a083015184820360a086015261584c8282614d54565b91505060c083015160c085015260e083015160e08501526101008084015161587682870182614d23565b505061012080840151858303828701526158908382614d54565b92505050610140808401516158ac8287018263ffffffff169052565b5050610160808401516158c38287018260070b9052565b505061018083810151908501526101a08084015163ffffffff908116918601919091526101c0808501518216908601526101e080850151909116908501526102008084015161ffff16908501526102208084015180151582870152615401565b60408152600061593660408301856157cf565b90508260208301529392505050565b6001600160a01b03949094168452602084019290925215156040830152606082015260800190565b63ffffffff8616815284602082015260a06040820152600061599260a0830186614d54565b931515606083015250608001529392505050565b602080825260069082015265131090cc0d8d60d21b604082015260600190565b602080825260069082015265262121981a1960d11b604082015260600190565b848152600084516159fe816020850160208901614d30565b808301905060018060601b0319851660208201528351615a25816034840160208801614d30565b016034019695505050505050565b600082601f830112615a4457600080fd5b8151615a526148d682614890565b818152846020838601011115615a6757600080fd5b610ee7826020830160208701614d30565b600060208284031215615a8a57600080fd5b81516001600160401b03811115615aa057600080fd5b610ee784828501615a33565b600160fd1b8152826001820152607560f81b602182015260008251615ad8816022850160208701614d30565b919091016022019392505050565b606081526000615af96060830186614d54565b8281036020840152615b0b8186614d54565b9150508215156040830152949350505050565b63ffffffff818116838216019080821115615b3b57615b3b61542b565b5092915050565b6020815260006143b16020830184614d54565b60006020808385031215615b6857600080fd5b82516001600160401b0380821115615b7f57600080fd5b818501915085601f830112615b9357600080fd5b8151615ba16148d682614c70565b81815260059190911b83018401908481019088831115615bc057600080fd5b8585015b83811015615c5b57805185811115615bdc5760008081fd5b86016080818c03601f1901811315615bf45760008081fd5b615bfc614806565b898301518881168114615c0f5760008081fd5b815260408381015189811115615c255760008081fd5b615c338f8d83880101615a33565b838d015250606084810151918301919091529190920151908201528352918601918601615bc4565b5098975050505050505050565b600060208284031215615c7a57600080fd5b5051919050565b600060808201868352602086818501528560408501526080606085015281855180845260a086019150828701935060005b81811015615cce57845183529383019391830191600101615cb2565b50909998505050505050505050565b6001600160401b03818116838216028082169190828114615d0057615d0061542b565b505092915050565b604081526000615d1b6040830185614d54565b905082151560208301529392505050565b6000808354615d3a816155ad565b60018281168015615d525760018114615d6757615d96565b60ff1984168752821515830287019450615d96565b8760005260208060002060005b85811015615d8d5781548a820152908401908201615d74565b50505082870194505b50929695505050505050565b6001600160401b03818116838216019080821115615b3b57615b3b61542b565b6020815260006143b160208301846157cf565b6000610100808352615de98184018c614d54565b90508960208401528281036040840152615e03818a614d54565b90508760608401528281036080840152615e1d8188614d54565b6001600160a01b03871660a085015283810360c08501529050615e408186614d54565b91505082151560e0830152999850505050505050505056fe3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f69685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80da2646970667358221220697d8d7ebd4a7dbec942bd6b46164f7af9474dfc0e1d0a9fa2077cc1e0f04bd064736f6c63430008120033", - "deployedBytecode": "0x60806040526004361061027f5760003560e01c806304ade855146102d35780630a7bf57a146102ff5780630a9cb4a7146103145780631b032188146103335780632e1a7d4d1461035357806333f07ad31461037357806335510a7d14610388578063417055181461039d578063418663a2146103b05780634198687e146103da5780634533ac1c146103e2578063457385f2146104025780634d0ec9711461043257806354015ee01461045257806359c153be14610485578063668dbd831461049a57806369023235146104c757806369652fcf146104e75780636e2e8c70146104fc578063715018a61461051c57806372cbf4e8146105315780637b78837f146105515780638490a8df146105645780638d5979391461057a5780638da5cb5b146105915780638f91797d146105b35780639b56d6c9146105d35780639cd6557f146106095780639d79b59b1461061e5780639e81699914610647578063a0cd70fc1461064f578063a0d250371461066f578063a4a5ba501461068f578063a93bb247146106a4578063ac29d744146106bb578063ae76ce86146106ce578063ae93b67b146106e5578063bd519eff146106fc578063bd5798c314610732578063be6de4eb14610754578063c525cdd814610769578063c721316314610780578063cfb92f0a1461079b578063d0e30db0146107b2578063d6c70de8146107ba578063e1de16c6146107da578063e30e6ea3146107f0578063e5b5019a14610806578063e78cea921461081c578063e830b6901461083c578063e8fcce7114610851578063e90d2ddb14610867578063f2fde38b14610894578063f8b2cb4f146108b4578063fa88dcde146108ea578063fb32c508146108ff57600080fd5b366102ce576097546001600160a01b031633146102cc5760405162461bcd60e51b81526020600482015260066024820152654c424330303760d01b60448201526064015b60405180910390fd5b005b600080fd5b3480156102df57600080fd5b506102e8600181565b60405160ff90911681526020015b60405180910390f35b34801561030b57600080fd5b506102e8600281565b34801561032057600080fd5b5060a2545b6040519081526020016102f6565b34801561033f57600080fd5b5061032561034e366004614ae9565b61091d565b34801561035f57600080fd5b506102cc61036e366004614b1d565b61092e565b34801561037f57600080fd5b5060a154610325565b34801561039457600080fd5b506102cc610a26565b6103256103ab366004614b36565b610b54565b3480156103bc57600080fd5b506103c76101301981565b60405160019190910b81526020016102f6565b6102cc610eef565b3480156103ee57600080fd5b506102cc6103fd366004614bd2565b610f74565b34801561040e57600080fd5b5061042261041d366004614c53565b6111b3565b60405190151581526020016102f6565b34801561043e57600080fd5b5061042261044d366004614c53565b6111e9565b34801561045e57600080fd5b5061042261046d366004614b1d565b600090815260a7602052604090206001015460ff1690565b34801561049157600080fd5b506102cc61121f565b3480156104a657600080fd5b506104ba6104b5366004614c93565b61134d565b6040516102f69190614d80565b3480156104d357600080fd5b506103256104e2366004614fbd565b6116ce565b3480156104f357600080fd5b506102cc6116d9565b34801561050857600080fd5b50610325610517366004614ff1565b611784565b34801561052857600080fd5b506102cc611f6b565b34801561053d57600080fd5b506102cc61054c3660046150a5565b611f7f565b6102cc61055f3660046150d5565b612019565b34801561057057600080fd5b5061032560a25481565b34801561058657600080fd5b506103c761012c1981565b34801561059d57600080fd5b506105a661249f565b6040516102f69190615138565b3480156105bf57600080fd5b506102cc6105ce366004614b1d565b6124ae565b3480156105df57600080fd5b506103256105ee366004614c53565b6001600160a01b031660009081526099602052604090205490565b34801561061557600080fd5b506102e8600081565b34801561062a57600080fd5b506106346188b881565b60405161ffff90911681526020016102f6565b6102cc6127af565b34801561065b57600080fd5b5061032561066a36600461514c565b61282a565b34801561067b57600080fd5b5061042261068a366004615180565b61287d565b34801561069b57600080fd5b50610325600181565b3480156106b057600080fd5b506103c761012d1981565b6104226106c9366004614ae9565b6129e9565b3480156106da57600080fd5b506103c761012b1981565b3480156106f157600080fd5b506103c76103831981565b34801561070857600080fd5b50610325610717366004614c53565b6001600160a01b03166000908152609a602052604090205490565b34801561073e57600080fd5b5060a054600160201b900463ffffffff16610325565b34801561076057600080fd5b50610325600081565b34801561077557600080fd5b506103c761012e1981565b34801561078c57600080fd5b5060a05463ffffffff16610325565b3480156107a757600080fd5b506103c761012f1981565b6102cc612cfb565b3480156107c657600080fd5b506102cc6107d53660046151b6565b612d2a565b3480156107e657600080fd5b506106346108fc81565b3480156107fc57600080fd5b506103c760c71981565b34801561081257600080fd5b5061032560001981565b34801561082857600080fd5b506097546105a6906001600160a01b031681565b34801561084857600080fd5b50609e54610325565b34801561085d57600080fd5b506103c760631981565b34801561087357600080fd5b50610887610882366004614b1d565b6136f6565b6040516102f6919061528c565b3480156108a057600080fd5b506102cc6108af366004614c53565b613a21565b3480156108c057600080fd5b506103256108cf366004614c53565b6001600160a01b031660009081526098602052604090205490565b3480156108f657600080fd5b50609f54610325565b34801561090b57600080fd5b506097546001600160a01b03166105a6565b600061092882613a97565b92915050565b3360009081526098602052604090205481111561095d5760405162461bcd60e51b81526004016102c39061540b565b336000908152609860205260408120805483929061097c908490615441565b9091555050604051600090339083908381818185875af1925050503d80600081146109c3576040519150601f19603f3d011682016040523d82523d6000602084013e6109c8565b606091505b50509050806109e95760405162461bcd60e51b81526004016102c390615454565b7f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b653383604051610a1a929190615474565b60405180910390a15050565b336000908152609d6020526040902054610a525760405162461bcd60e51b81526004016102c39061548d565b60a054336000908152609d6020526040902054600160201b90910463ffffffff1690610a7e9043615441565b1015610a9c5760405162461bcd60e51b81526004016102c3906154ad565b336000818152609a60209081526040808320805490849055609d9092528083208390555190929083908381818185875af1925050503d8060008114610afd576040519150601f19603f3d011682016040523d82523d6000602084013e610b02565b606091505b5050905080610b235760405162461bcd60e51b81526004016102c390615454565b7ffc72299650b405e7b0480ca8fb0fb3948fb10a77ac02f797cc9de1f4aaa55db73383604051610a1a929190615474565b6000323314610b8e5760405162461bcd60e51b81526020600482015260066024820152654c424330303360d01b60448201526064016102c3565b610b99858584613cff565b33600090815260996020526040902054158015610bc35750336000908152609a6020526040902054155b610bf85760405162461bcd60e51b815260206004820152600660248201526504c42433037360d41b60448201526064016102c3565b336000908152609d602052604090205415610c3e5760405162461bcd60e51b81526020600482015260066024820152654c424330303960d01b60448201526064016102c3565b604051602001610c4d906154cd565b6040516020818303038152906040528051906020012082604051602001610c7491906154de565b6040516020818303038152906040528051906020012003610cc857609e54341015610cb15760405162461bcd60e51b81526004016102c3906154fa565b336000908152609960205260409020349055610dcd565b604051602001610cd79061551a565b6040516020818303038152906040528051906020012082604051602001610cfe91906154de565b6040516020818303038152906040528051906020012003610d5257609e54341015610d3b5760405162461bcd60e51b81526004016102c3906154fa565b336000908152609a60205260409020349055610dcd565b609e54610d6090600261552c565b341015610d7f5760405162461bcd60e51b81526004016102c3906154fa565b6000610d8c600234615559565b9050610d9960023461556d565b15610dae57610da9816001615581565b610db0565b805b33600090815260996020908152604080832093909355609a905220555b60a28054906000610ddd83615594565b90915550506040805160c08101825260a2548082523360208084019182528385018a8152606085018a9052881515608086015260a085018890526000938452609b909152939091208251815590516001820180546001600160a01b0319166001600160a01b0390921691909117905591519091906002820190610e609082615635565b5060608201516003820190610e759082615635565b50608082015160048201805460ff191691151591909117905560a08201516005820190610ea29082615635565b505060a254604080519182523460208301523392507fa9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e910160405180910390a25060a2545b949350505050565b610ef833613ea6565b610f145760405162461bcd60e51b81526004016102c3906156f4565b336000908152609a602052604081208054349290610f33908490615581565b90915550506040517f873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa990610f6a9033903490615474565b60405180910390a1565b600054610100900460ff1615808015610f945750600054600160ff909116105b80610fae5750303b158015610fae575060005460ff166001145b6110115760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016102c3565b6000805460ff191660011790558015611034576000805461ff0019166101001790555b60648663ffffffff1611156110745760405162461bcd60e51b8152602060048201526006602482015265131090cc0c0d60d21b60448201526064016102c3565b666a94d74f4300008810156110b45760405162461bcd60e51b8152602060048201526006602482015265262121981b9960d11b60448201526064016102c3565b603c8563ffffffff1610156110f45760405162461bcd60e51b81526020600482015260066024820152654c424330373360d01b60448201526064016102c3565b6110fc613ee5565b609780546001600160a01b038b166001600160a01b0319909116179055609e889055609f87905560a0805463ffffffff878116600160201b026001600160401b03199092169089161717905560a184905560a383905560a4805483151560ff1990911617905580156111a8576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050505050565b60006111be82613f59565b80156109285750609e546001600160a01b038316600090815260996020526040902054101592915050565b60006111f482613ea6565b80156109285750609e546001600160a01b0383166000908152609a6020526040902054101592915050565b336000908152609d602052604090205461124b5760405162461bcd60e51b81526004016102c39061548d565b60a054336000908152609d6020526040902054600160201b90910463ffffffff16906112779043615441565b10156112955760405162461bcd60e51b81526004016102c3906154ad565b336000818152609960209081526040808320805490849055609d9092528083208390555190929083908381818185875af1925050503d80600081146112f6576040519150601f19603f3d011682016040523d82523d6000602084013e6112fb565b606091505b505090508061131c5760405162461bcd60e51b81526004016102c390615454565b7fa8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d23383604051610a1a929190615474565b6060600082516001600160401b0381111561136a5761136a6147a4565b6040519080825280602002602001820160405280156113df57816020015b6113cc6040518060c001604052806000815260200160006001600160a01b031681526020016060815260200160608152602001600015158152602001606081525090565b8152602001906001900390816113885790505b5090506000805b84518110156116c557600085828151811061140357611403615714565b6020908102919091018101516000818152609b909252604090912060010154909150611437906001600160a01b0316613f59565b8061146157506000818152609b6020526040902060010154611461906001600160a01b0316613ea6565b801561147e57506000818152609b602052604090206004015460ff165b156116b2576000818152609b6020908152604091829020825160c0810184528154815260018201546001600160a01b03169281019290925260028101805492939192918401916114cd906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546114f9906155ad565b80156115465780601f1061151b57610100808354040283529160200191611546565b820191906000526020600020905b81548152906001019060200180831161152957829003601f168201915b5050505050815260200160038201805461155f906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461158b906155ad565b80156115d85780601f106115ad576101008083540402835291602001916115d8565b820191906000526020600020905b8154815290600101906020018083116115bb57829003601f168201915b5050509183525050600482015460ff1615156020820152600582018054604090920191611604906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054611630906155ad565b801561167d5780601f106116525761010080835404028352916020019161167d565b820191906000526020600020905b81548152906001019060200180831161166057829003601f168201915b50505050508152505084848151811061169857611698615714565b602002602001018190525082806116ae90615594565b9350505b50806116bd81615594565b9150506113e6565b50909392505050565b600061092882613f98565b6116e233613f59565b6116fe5760405162461bcd60e51b81526004016102c3906156f4565b336000908152609d6020526040902054156117445760405162461bcd60e51b81526020600482015260066024820152654c424330323360d01b60448201526064016102c3565b336000818152609d602052604090819020439055517fa6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d8691610f6a91615138565b600061178e614014565b600061179987613a97565b600081815260a56020526040902054909150600160ff90911611156117d05760405162461bcd60e51b81526004016102c39061572a565b60408088015190516301a86b5560e41b815273__SignatureValidator____________________91631a86b5509161180f919085908b9060040161574a565b602060405180830381865af415801561182c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118509190615771565b61186c5760405162461bcd60e51b81526004016102c39061578e565b637fffffff83106118a85760405162461bcd60e51b815260206004820152600660248201526504c42433033360d41b60448201526064016102c3565b60006118b7888787878661406d565b905061012f81016118f35760405162461bcd60e51b81526020600482015260066024820152654c424330333160d01b60448201526064016102c3565b61012e810161192d5760405162461bcd60e51b815260206004820152600660248201526526212198199960d11b60448201526064016102c3565b61013081016119675760405162461bcd60e51b81526020600482015260066024820152654c424330333360d01b60448201526064016102c3565b61013181016119a15760405162461bcd60e51b8152602060048201526006602482015265131090cc0ccd60d21b60448201526064016102c3565b61038481016119db5760405162461bcd60e51b81526020600482015260066024820152654c424330333560d01b60448201526064016102c3565b60008113806119eb575060c71981145b806119f7575060631981145b611a2c5760405162461bcd60e51b815260206004820152600660248201526526212198199b60d11b60448201526064016102c3565b6000828152609c6020526040902054611a4f908990839063ffffffff168761413f565b15611b205760e08801516040808a01516001600160a01b031660009081526099602052908120549091611a81916143a0565b905080609960008b604001516001600160a01b03166001600160a01b031681526020019081526020016000206000828254611abc9190615441565b90915550506040808a01519051600080516020615e7983398151915291611ae691849087906157ae565b60405180910390a160a054600090606490611b079063ffffffff168461552c565b611b119190615559565b9050611b1d33826143b8565b50505b60c719811480611b31575060631981145b15611ba557600082815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff1916905581518481529081018390527ffb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe910160405180910390a19150611f589050565b60405162e7a37960e21b8152819073__Quotes________________________________9063039e8de490611bdf908c908590600401615923565b60006040518083038186803b158015611bf757600080fd5b505af4158015611c0b573d6000803e3d6000fd5b5050506000848152609c602052604090205463ffffffff16159050611d4c576000838152609c6020526040812054600160201b900460ff1615611c6d57611c66828b60c001518c6101800151611c619190615581565b6143a0565b9050611c7e565b611c7b828b60c001516143a0565b90505b611c8c8a60400151826143b8565b6000611c988284615441565b905060a154811115611d455760808b01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611cf8576040519150601f19603f3d011682016040523d82523d6000602084013e611cfd565b606091505b50509050600080516020615e598339815191528c60800151838389604051611d289493929190615945565b60405180910390a180611d4357611d438c60400151836143b8565b505b5050611ef1565b61022089015181908015611d6557508961018001518110155b15611e575760008a61010001516001600160a01b03168b610140015163ffffffff168c61018001518d6101200151604051611da091906154de565b600060405180830381858888f193505050503d8060008114611dde576040519150601f19603f3d011682016040523d82523d6000602084013e611de3565b606091505b505090508a61010001516001600160a01b0316336001600160a01b0316600080516020615e998339815191528d61014001518e61018001518f6101200151868b604051611e3495949392919061596d565b60405180910390a38015611e55576101808b0151611e529083615441565b91505b505b60a154811115611eef5760808a01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611eb5576040519150601f19603f3d011682016040523d82523d6000602084013e611eba565b606091505b50509050600080516020615e598339815191528b60800151838388604051611ee59493929190615945565b60405180910390a1505b505b600083815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff19169055905183815284917f0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2910160405180910390a2509150505b611f626001606555565b95945050505050565b611f73614417565b611f7d6000614476565b565b81611f8861249f565b6001600160a01b0316336001600160a01b03161480611fc057506000818152609b60205260409020600101546001600160a01b031633145b611ff55760405162461bcd60e51b81526020600482015260066024820152654c424330303560d01b60448201526064016102c3565b506000918252609b6020526040909120600401805460ff1916911515919091179055565b6120268260200151613ea6565b61205b5760405162461bcd60e51b81526020600482015260066024820152654c424330333760d01b60448201526064016102c3565b348260a001518361012001516120719190615581565b11156120a85760405162461bcd60e51b81526020600482015260066024820152654c424330363360d01b60448201526064016102c3565b81610160015163ffffffff164211156120ec5760405162461bcd60e51b81526020600482015260066024820152654c424330363560d01b60448201526064016102c3565b816101e0015163ffffffff164211156121305760405162461bcd60e51b8152602060048201526006602482015265262121981a1b60d11b60448201526064016102c3565b81610200015163ffffffff164311156121745760405162461bcd60e51b81526020600482015260066024820152654c424330343760d01b60448201526064016102c3565b600061217f836116ce565b60208401516040516301a86b5560e41b815291925073__SignatureValidator____________________91631a86b550916121c0918590879060040161574a565b602060405180830381865af41580156121dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122019190615771565b61221d5760405162461bcd60e51b81526004016102c39061578e565b600081815260a66020908152604080832060a79092529091206001015460ff161561225a5760405162461bcd60e51b81526004016102c3906159a6565b80546001600160a01b0316156122825760405162461bcd60e51b81526004016102c39061572a565b600082815260a66020908152604091829020865181546001600160a01b03199081166001600160a01b03928316178355928801516001830180549094169116179091559085015185919060028201906122db9082615635565b5060608201516003820180546001600160a01b0319166001600160a01b03909216919091179055608082015160048201906123169082615635565b5060a0820151600582015560c0820151600682015560e08201516007820180546001600160401b0319166001600160401b0390921691909117905561010082015160088201906123669082615635565b506101208201516009820155610140820151600a90910180546101608401516101808501516101a08601516101c08701516101e08801516102009098015163ffffffff9788166001600160401b031990961695909517600160201b948816949094029390931763ffffffff60401b1916600160401b61ffff9384160261ffff60501b191617600160501b929091169190910217600160601b600160a01b031916600160601b9185169190910263ffffffff60801b191617600160801b948416949094029390931763ffffffff60a01b1916600160a01b9290931691909102919091179055600082815260a760209081526040918290204290819055825134815291820152339184917fb1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f910160405180910390a350505050565b6033546001600160a01b031690565b6124b6614014565b600081815260a66020526040902080546001600160a01b03166124eb5760405162461bcd60e51b81526004016102c3906159c6565b600a810154600160801b900463ffffffff164211801561251b5750600a810154600160a01b900463ffffffff1643115b6125505760405162461bcd60e51b81526020600482015260066024820152654c424330343160d01b60448201526064016102c3565b6000816005015482600901546125669190615581565b6003830154600684015460018501546001600160a01b039081166000908152609a602052604081205494955092169261259f91906143a0565b60018501546001600160a01b03166000908152609a60205260408120805492935083929091906125d0908490615441565b90915550506001840154604051600080516020615e7983398151915291612606916001600160a01b0390911690849089906157ae565b60405180910390a16003840154604080518581526001600160a01b03909216602083015286917f9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41910160405180910390a2600085815260a66020526040812080546001600160a01b0319908116825560018201805490911690559061268e6002830182614756565b6003820180546001600160a01b03191690556126ae600483016000614756565b600060058301819055600683018190556007830180546001600160401b03191690556126de906008840190614756565b50600060098201819055600a90910180546001600160c01b031916905585815260a760205260408082206001908101805460ff19169091179055516001600160a01b0384169085908381818185875af1925050503d806000811461275e576040519150601f19603f3d011682016040523d82523d6000602084013e612763565b606091505b505090508061279d5760405162461bcd60e51b8152602060048201526006602482015265131090cc0d0d60d21b60448201526064016102c3565b50505050506127ac6001606555565b50565b6127b833613f59565b6127d45760405162461bcd60e51b81526004016102c3906156f4565b33600090815260996020526040812080543492906127f3908490615581565b90915550506040517f456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af8490610f6a9033903490615474565b600081516050146128665760405162461bcd60e51b81526020600482015260066024820152654c424330363160d01b60448201526064016102c3565b6128718260446144c8565b63ffffffff1692915050565b6000806128898461091d565b8460600151856020015160601b8660a001516040516020016128ae94939291906159e6565b604051602081830303815290604052805190602001209050600081609760009054906101000a90046001600160a01b03166001600160a01b0316631d73d5dd6040518163ffffffff1660e01b8152600401600060405180830381865afa15801561291c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526129449190810190615a78565b604051602001612955929190615aac565b60408051601f198184030181529082905260a454639b02794b60e01b835290925073__BtcUtils______________________________91639b02794b916129a8918891869160ff90911690600401615ae6565b602060405180830381865af41580156129c5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f629190615771565b60006129f433613f59565b612a105760405162461bcd60e51b81526004016102c3906156f4565b612a18614014565b81604001516001600160a01b0316336001600160a01b031614612a665760405162461bcd60e51b8152602060048201526006602482015265131090cc0c8d60d21b60448201526064016102c3565b6101808201516040808401516001600160a01b0316600090815260986020522054612a92903490615581565b1015612ab05760405162461bcd60e51b81526004016102c39061540b565b6000612abb83613a97565b600081815260a5602052604090205490915060ff1615612b065760405162461bcd60e51b81526020600482015260066024820152654c424330323560d01b60448201526064016102c3565b612b148360400151346143b8565b610140830151612b27906188b890615b1e565b63ffffffff165a1015612b655760405162461bcd60e51b815260206004820152600660248201526526212198191b60d11b60448201526064016102c3565b60008361010001516001600160a01b031684610140015163ffffffff16856101800151866101200151604051612b9b91906154de565b600060405180830381858888f193505050503d8060008114612bd9576040519150601f19603f3d011682016040523d82523d6000602084013e612bde565b606091505b509091505063ffffffff421115612c205760405162461bcd60e51b81526020600482015260066024820152654c424330323760d01b60448201526064016102c3565b6000828152609c60205260409020805463ffffffff19164263ffffffff161790558015612c7b576000828152609c602052604090819020805460ff60201b1916600160201b179055840151610180850151612c7b91906145b2565b8361010001516001600160a01b0316336001600160a01b0316600080516020615e998339815191528661014001518761018001518861012001518688604051612cc895949392919061596d565b60405180910390a3600091825260a56020526040909120805460ff191660011790559050612cf66001606555565b919050565b612d0433613f59565b612d205760405162461bcd60e51b81526004016102c3906156f4565b611f7d33346143b8565b612d32614014565b612d3b33613ea6565b612d575760405162461bcd60e51b81526004016102c3906156f4565b600085815260a7602052604090206001015460ff1615612d895760405162461bcd60e51b81526004016102c3906159a6565b600085815260a66020526040902080546001600160a01b0316612dbe5760405162461bcd60e51b81526004016102c3906159c6565b60405162f5b49160e01b815260009073__BtcUtils______________________________9062f5b49190612df6908990600401615b42565b600060405180830381865af4158015612e13573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612e3b9190810190615b55565b9050600073__BtcUtils______________________________632d56f32383600181518110612e6c57612e6c615714565b6020026020010151602001516040518263ffffffff1660e01b8152600401612e949190615b42565b600060405180830381865af4158015612eb1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612ed99190810190615a78565b806020019051810190612eec9190615c68565b9050808814612f265760405162461bcd60e51b81526020600482015260066024820152654c424330363960d01b60448201526064016102c3565b60018301546001600160a01b03163314612f6b5760405162461bcd60e51b815260206004820152600660248201526509884866068760d31b60448201526064016102c3565b600a83015460975460405163fea8ba6360e01b8152600160501b90920461ffff16916001600160a01b0390911690635b6445879073__BtcUtils______________________________9063fea8ba6390612fc9908d90600401615b42565b602060405180830381865af4158015612fe6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061300a9190615c68565b8989896040518563ffffffff1660e01b815260040161302c9493929190615c81565b602060405180830381865afa158015613049573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061306d9190615c68565b12156130a45760405162461bcd60e51b81526020600482015260066024820152654c424330343960d01b60448201526064016102c3565b816000815181106130b7576130b7615714565b6020026020010151600001516402540be4006130d39190615cdd565b6001600160401b0316836009015411156131185760405162461bcd60e51b81526020600482015260066024820152654c424330363760d01b60448201526064016102c3565b600073__BtcUtils______________________________634c03fe598460008151811061314757613147615714565b602090810291909101810151015160a4546040516001600160e01b031960e085901b16815261317d929160ff1690600401615d08565b600060405180830381865af415801561319a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131c29190810190615a78565b90508080519060200120846008016040516131dd9190615d2c565b60405180910390201461321b5760405162461bcd60e51b81526020600482015260066024820152650988486606c760d31b60448201526064016102c3565b604080516102208101825285546001600160a01b03908116825260018701541660208201526002860180546134b693889290840191613259906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054613285906155ad565b80156132d25780601f106132a7576101008083540402835291602001916132d2565b820191906000526020600020905b8154815290600101906020018083116132b557829003601f168201915b505050918352505060038201546001600160a01b03166020820152600482018054604090920191613302906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461332e906155ad565b801561337b5780601f106133505761010080835404028352916020019161337b565b820191906000526020600020905b81548152906001019060200180831161335e57829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b60608201526008820180546080909201916133b9906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546133e5906155ad565b80156134325780601f1061340757610100808354040283529160200191613432565b820191906000526020600020905b81548152906001019060200180831161341557829003601f168201915b505050918352505060098201546020820152600a9091015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b90910416610100909101528389614611565b1561355957600684015460018501546001600160a01b03166000908152609a602052604081205490916134e8916143a0565b60018601546001600160a01b03166000908152609a6020526040812080549293508392909190613519908490615441565b90915550506001850154604051600080516020615e798339815191529161354f916001600160a01b0390911690849087906157ae565b60405180910390a1505b6001840154600585015460098601546000926001600160a01b03169161357e91615581565b604051600081818185875af1925050503d80600081146135ba576040519150601f19603f3d011682016040523d82523d6000602084013e6135bf565b606091505b50509050806135f95760405162461bcd60e51b815260206004820152600660248201526504c42433035360d41b60448201526064016102c3565b600083815260a66020526040812080546001600160a01b031990811682556001820180549091169055906136306002830182614756565b6003820180546001600160a01b0319169055613650600483016000614756565b600060058301819055600683018190556007830180546001600160401b0319169055613680906008840190614756565b50600060098201819055600a90910180546001600160c01b031916905583815260a760205260408082206001908101805460ff191690911790555184917fb781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb38491a250505050506136ef6001606555565b5050505050565b6040805161022080820183526000808352602080840182905260608486018190528085018390526080850181905260a0850183905260c0850183905260e0850183905261010085015261012084018290526101408401829052610160840182905261018084018290526101a084018290526101c084018290526101e08401829052610200840182905285825260a68152908490208451928301855280546001600160a01b039081168452600182015416918301919091526002810180549394929391928401916137c5906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546137f1906155ad565b801561383e5780601f106138135761010080835404028352916020019161383e565b820191906000526020600020905b81548152906001019060200180831161382157829003601f168201915b505050918352505060038201546001600160a01b0316602082015260048201805460409092019161386e906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461389a906155ad565b80156138e75780601f106138bc576101008083540402835291602001916138e7565b820191906000526020600020905b8154815290600101906020018083116138ca57829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b6060820152600882018054608090920191613925906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054613951906155ad565b801561399e5780601f106139735761010080835404028352916020019161399e565b820191906000526020600020905b81548152906001019060200180831161398157829003601f168201915b505050918352505060098201546020820152600a9091015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b909104166101009091015292915050565b613a29614417565b6001600160a01b038116613a8e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102c3565b6127ac81614476565b600081602001516001600160a01b0316306001600160a01b031614613ae75760405162461bcd60e51b81526020600482015260066024820152654c424330353160d01b60448201526064016102c3565b6101008201516097546001600160a01b03918216911603613b335760405162461bcd60e51b8152602060048201526006602482015265262121981a9960d11b60448201526064016102c3565b81606001515160151480613b4c57508160600151516021145b613b815760405162461bcd60e51b81526020600482015260066024820152654c424330353360d01b60448201526064016102c3565b8160a0015151601514613bbf5760405162461bcd60e51b8152602060048201526006602482015265131090cc0d4d60d21b60448201526064016102c3565b609f548260c00151836101800151613bd79190615581565b1015613c0e5760405162461bcd60e51b81526020600482015260066024820152654c424330353560d01b60448201526064016102c3565b816101c0015163ffffffff16826101a0015163ffffffff16613c309190615da2565b6001600160401b031663ffffffff1015613c755760405162461bcd60e51b81526020600482015260066024820152654c424330373160d01b60448201526064016102c3565b604051630fdeb30b60e21b815273__Quotes________________________________90633f7acc2c90613cac908590600401615dc2565b600060405180830381865af4158015613cc9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613cf19190810190615a78565b805190602001209050919050565b6000835111613d395760405162461bcd60e51b815260206004820152600660248201526504c42433031360d41b60448201526064016102c3565b6000825111613d735760405162461bcd60e51b81526020600482015260066024820152654c424330313760d01b60448201526064016102c3565b604051602001613d82906154cd565b6040516020818303038152906040528051906020012081604051602001613da991906154de565b604051602081830303815290604052805190602001201480613e145750604051602001613dd59061551a565b6040516020818303038152906040528051906020012081604051602001613dfc91906154de565b60405160208183030381529060405280519060200120145b80613e6c5750604051630c4dee8d60e31b60208201526024016040516020818303038152906040528051906020012081604051602001613e5491906154de565b60405160208183030381529060405280519060200120145b613ea15760405162461bcd60e51b815260206004820152600660248201526509884866062760d31b60448201526064016102c3565b505050565b6001600160a01b0381166000908152609a6020526040812054158015906109285750506001600160a01b03166000908152609d60205260409020541590565b600054610100900460ff16613f505760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016102c3565b611f7d33614476565b6001600160a01b038116600090815260996020526040812054158015906109285750506001600160a01b03166000908152609d60205260409020541590565b80516000906001600160a01b03163014613fdd5760405162461bcd60e51b8152602060048201526006602482015265262121981a9b60d11b60448201526064016102c3565b60405163fb19b88b60e01b815273__Quotes________________________________9063fb19b88b90613cac90859060040161528c565b6002606554036140665760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016102c3565b6002606555565b609754606086015160a08701516000848152609c602052604081205490936001600160a01b031692636adc013392899288928a92899230919063ffffffff16158015906140cf575060008b8152609c6020526040902054600160201b900460ff165b6040518963ffffffff1660e01b81526004016140f2989796959493929190615dd5565b6020604051808303816000875af1158015614111573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141359190615c68565b9695505050505050565b6000808413801561416357508460c001518561018001516141609190615581565b84105b1561417057506000610ee7565b60975460405163bd0c1fff60e01b8152600481018490526000916001600160a01b03169063bd0c1fff90602401600060405180830381865afa1580156141ba573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526141e29190810190615a78565b9050600081511161422c5760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a5908189b1bd8dac81a195a59da1d60621b60448201526064016102c3565b60006142378261282a565b90506000876101c00151886101a001516142519190615b1e565b63ffffffff1690508082111561426d5760009350505050610ee7565b856000036142815760019350505050610ee7565b6097546102008901516000916001600160a01b03169063bd0c1fff906001906142ae9061ffff168a615581565b6142b89190615441565b6040518263ffffffff1660e01b81526004016142d691815260200190565b600060405180830381865afa1580156142f3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261431b9190810190615a78565b905060008151116143575760405162461bcd60e51b81526020600482015260066024820152650988486606a760d31b60448201526064016102c3565b60006143628261282a565b9050896101e0015163ffffffff168161437b9190615581565b88111561439057600195505050505050610ee7565b5060009998505050505050505050565b60008183106143af57816143b1565b825b9392505050565b6001600160a01b038216600090815260986020526040812080548392906143e0908490615581565b90915550506040517f42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f5390610a1a9084908490615474565b3361442061249f565b6001600160a01b031614611f7d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102c3565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006144d5826004615581565b8351101561450e5760405162461bcd60e51b8152602060048201526006602482015265262121981b1960d11b60448201526064016102c3565b60188361451c846003615581565b8151811061452c5761452c615714565b016020015160f81c901b601084614544856002615581565b8151811061455457614554615714565b016020015160f81c901b60088561456c866001615581565b8151811061457c5761457c615714565b0160200151865160f89190911c90911b9086908690811061459f5761459f615714565b016020015160f81c171717905092915050565b6001600160a01b038216600090815260986020526040812080548392906145da908490615441565b90915550506040517f8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc006458790610a1a9084908490615474565b6097546040516339cf1b2560e11b81526004810183905260009182916001600160a01b039091169063739e364a90602401600060405180830381865afa15801561465f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526146879190810190615a78565b905060008151116146c35760405162461bcd60e51b81526020600482015260066024820152654c424330353960d01b60448201526064016102c3565b60006146ce8261282a565b60a3546101c0880151600088815260a7602052604090205492935090916146fb9163ffffffff1690615581565b6147059190615581565b811115614717576001925050506143b1565b856101e0015163ffffffff1642118061473a575085610200015163ffffffff1643115b1561474a576001925050506143b1565b50600095945050505050565b508054614762906155ad565b6000825580601f10614772575050565b601f0160209004906000526020600020908101906127ac91905b808211156147a0576000815560010161478c565b5090565b634e487b7160e01b600052604160045260246000fd5b60405161024081016001600160401b03811182821017156147dd576147dd6147a4565b60405290565b60405161022081016001600160401b03811182821017156147dd576147dd6147a4565b604051608081016001600160401b03811182821017156147dd576147dd6147a4565b604051601f8201601f191681016001600160401b0381118282101715614850576148506147a4565b604052919050565b80356001600160601b031981168114612cf657600080fd5b6001600160a01b03811681146127ac57600080fd5b8035612cf681614870565b60006001600160401b038211156148a9576148a96147a4565b50601f01601f191660200190565b600082601f8301126148c857600080fd5b81356148db6148d682614890565b614828565b8181528460208386010111156148f057600080fd5b816020850160208301376000918101602001919091529392505050565b803563ffffffff81168114612cf657600080fd5b8035600781900b8114612cf657600080fd5b803561ffff81168114612cf657600080fd5b80151581146127ac57600080fd5b8035612cf681614945565b6000610240828403121561497157600080fd5b6149796147ba565b905061498482614858565b815261499260208301614885565b60208201526149a360408301614885565b604082015260608201356001600160401b03808211156149c257600080fd5b6149ce858386016148b7565b60608401526149df60808501614885565b608084015260a08401359150808211156149f857600080fd5b614a04858386016148b7565b60a084015260c084013560c084015260e084013560e08401526101009150614a2d828501614885565b8284015261012091508184013581811115614a4757600080fd5b614a53868287016148b7565b83850152505050610140614a6881840161490d565b90820152610160614a7a838201614921565b9082015261018082810135908201526101a0614a9781840161490d565b908201526101c0614aa983820161490d565b908201526101e0614abb83820161490d565b90820152610200614acd838201614933565b90820152610220614adf838201614953565b9082015292915050565b600060208284031215614afb57600080fd5b81356001600160401b03811115614b1157600080fd5b610ee78482850161495e565b600060208284031215614b2f57600080fd5b5035919050565b60008060008060808587031215614b4c57600080fd5b84356001600160401b0380821115614b6357600080fd5b614b6f888389016148b7565b95506020870135915080821115614b8557600080fd5b614b91888389016148b7565b945060408701359150614ba382614945565b90925060608601359080821115614bb957600080fd5b50614bc6878288016148b7565b91505092959194509250565b600080600080600080600080610100898b031215614bef57600080fd5b8835614bfa81614870565b97506020890135965060408901359550614c1660608a0161490d565b9450614c2460808a0161490d565b935060a0890135925060c0890135915060e0890135614c4281614945565b809150509295985092959890939650565b600060208284031215614c6557600080fd5b81356143b181614870565b60006001600160401b03821115614c8957614c896147a4565b5060051b60200190565b60006020808385031215614ca657600080fd5b82356001600160401b03811115614cbc57600080fd5b8301601f81018513614ccd57600080fd5b8035614cdb6148d682614c70565b81815260059190911b82018301908381019087831115614cfa57600080fd5b928401925b82841015614d1857833582529284019290840190614cff565b979650505050505050565b6001600160a01b03169052565b60005b83811015614d4b578181015183820152602001614d33565b50506000910152565b60008151808452614d6c816020860160208601614d30565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015614e4157888303603f19018552815180518452878101516001600160a01b0316888501528681015160c088860181905290614de882870182614d54565b91505060608083015186830382880152614e028382614d54565b925050506080808301511515818701525060a08083015192508582038187015250614e2d8183614d54565b968901969450505090860190600101614da7565b509098975050505050505050565b60006102208284031215614e6257600080fd5b614e6a6147e3565b9050614e7582614885565b8152614e8360208301614885565b602082015260408201356001600160401b0380821115614ea257600080fd5b614eae858386016148b7565b6040840152614ebf60608501614885565b60608401526080840135915080821115614ed857600080fd5b614ee4858386016148b7565b608084015260a084013560a084015260c084013560c0840152614f0960e08501614921565b60e084015261010091508184013581811115614f2457600080fd5b614f30868287016148b7565b83850152505050610120808301358183015250610140614f5181840161490d565b90820152610160614f6383820161490d565b90820152610180614f75838201614933565b908201526101a0614f87838201614933565b908201526101c0614f9983820161490d565b908201526101e0614fab83820161490d565b90820152610200614adf83820161490d565b600060208284031215614fcf57600080fd5b81356001600160401b03811115614fe557600080fd5b610ee784828501614e4f565b600080600080600060a0868803121561500957600080fd5b85356001600160401b038082111561502057600080fd5b61502c89838a0161495e565b9650602088013591508082111561504257600080fd5b61504e89838a016148b7565b9550604088013591508082111561506457600080fd5b61507089838a016148b7565b9450606088013591508082111561508657600080fd5b50615093888289016148b7565b95989497509295608001359392505050565b600080604083850312156150b857600080fd5b8235915060208301356150ca81614945565b809150509250929050565b600080604083850312156150e857600080fd5b82356001600160401b03808211156150ff57600080fd5b61510b86838701614e4f565b9350602085013591508082111561512157600080fd5b5061512e858286016148b7565b9150509250929050565b6001600160a01b0391909116815260200190565b60006020828403121561515e57600080fd5b81356001600160401b0381111561517457600080fd5b610ee7848285016148b7565b6000806040838503121561519357600080fd5b82356001600160401b03808211156151aa57600080fd5b61510b8683870161495e565b600080600080600060a086880312156151ce57600080fd5b853594506020808701356001600160401b03808211156151ed57600080fd5b6151f98a838b016148b7565b96506040890135955060608901359450608089013591508082111561521d57600080fd5b508701601f8101891361522f57600080fd5b803561523d6148d682614c70565b81815260059190911b8201830190838101908b83111561525c57600080fd5b928401925b8284101561527a57833582529284019290840190615261565b80955050505050509295509295909350565b6020815261529e602082018351614d23565b600060208301516152b26040840182614d23565b5060408301516102208060608501526152cf610240850183614d54565b915060608501516152e36080860182614d23565b506080850151601f19808685030160a08701526153008483614d54565b935060a087015160c087015260c087015160e087015260e0870151915061010061532e8188018460070b9052565b8088015192505061012081878603018188015261534b8584614d54565b9088015161014088810191909152880151909450915061016090506153778187018363ffffffff169052565b86015190506101806153908682018363ffffffff169052565b86015190506101a06153a78682018361ffff169052565b86015190506101c06153be8682018361ffff169052565b86015190506101e06153d78682018363ffffffff169052565b86015190506102006153f08682018363ffffffff169052565b86015163ffffffff81168387015290505b5090949350505050565b6020808252600690820152654c424330313960d01b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b818103818111156109285761092861542b565b60208082526006908201526504c42433032360d41b604082015260600190565b6001600160a01b03929092168252602082015260400190565b6020808252600690820152654c424330323160d01b604082015260600190565b60208082526006908201526526212198191960d11b604082015260600190565b643832b3b4b760d91b815260050190565b600082516154f0818460208701614d30565b9190910192915050565b60208082526006908201526509884866060760d31b604082015260600190565b651c1959dbdd5d60d21b815260060190565b80820281158282048414176109285761092861542b565b634e487b7160e01b600052601260045260246000fd5b60008261556857615568615543565b500490565b60008261557c5761557c615543565b500690565b808201808211156109285761092861542b565b6000600182016155a6576155a661542b565b5060010190565b600181811c908216806155c157607f821691505b6020821081036155e157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115613ea157600081815260208120601f850160051c8101602086101561560e5750805b601f850160051c820191505b8181101561562d5782815560010161561a565b505050505050565b81516001600160401b0381111561564e5761564e6147a4565b6156628161565c84546155ad565b846155e7565b602080601f831160018114615697576000841561567f5750858301515b600019600386901b1c1916600185901b17855561562d565b600085815260208120601f198616915b828110156156c6578886015182559484019460019091019084016156a7565b50858210156156e45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020808252600690820152654c424330303160d01b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b60208082526006908201526509884866064760d31b604082015260600190565b60018060a01b0384168152826020820152606060408201526000611f626060830184614d54565b60006020828403121561578357600080fd5b81516143b181614945565b6020808252600690820152654c424330323960d01b604082015260600190565b6001600160a01b039390931683526020830191909152604082015260600190565b80516001600160601b0319168252600061024060208301516157f46020860182614d23565b5060408301516158076040860182614d23565b50606083015181606086015261581f82860182614d54565b91505060808301516158346080860182614d23565b5060a083015184820360a086015261584c8282614d54565b91505060c083015160c085015260e083015160e08501526101008084015161587682870182614d23565b505061012080840151858303828701526158908382614d54565b92505050610140808401516158ac8287018263ffffffff169052565b5050610160808401516158c38287018260070b9052565b505061018083810151908501526101a08084015163ffffffff908116918601919091526101c0808501518216908601526101e080850151909116908501526102008084015161ffff16908501526102208084015180151582870152615401565b60408152600061593660408301856157cf565b90508260208301529392505050565b6001600160a01b03949094168452602084019290925215156040830152606082015260800190565b63ffffffff8616815284602082015260a06040820152600061599260a0830186614d54565b931515606083015250608001529392505050565b602080825260069082015265131090cc0d8d60d21b604082015260600190565b602080825260069082015265262121981a1960d11b604082015260600190565b848152600084516159fe816020850160208901614d30565b808301905060018060601b0319851660208201528351615a25816034840160208801614d30565b016034019695505050505050565b600082601f830112615a4457600080fd5b8151615a526148d682614890565b818152846020838601011115615a6757600080fd5b610ee7826020830160208701614d30565b600060208284031215615a8a57600080fd5b81516001600160401b03811115615aa057600080fd5b610ee784828501615a33565b600160fd1b8152826001820152607560f81b602182015260008251615ad8816022850160208701614d30565b919091016022019392505050565b606081526000615af96060830186614d54565b8281036020840152615b0b8186614d54565b9150508215156040830152949350505050565b63ffffffff818116838216019080821115615b3b57615b3b61542b565b5092915050565b6020815260006143b16020830184614d54565b60006020808385031215615b6857600080fd5b82516001600160401b0380821115615b7f57600080fd5b818501915085601f830112615b9357600080fd5b8151615ba16148d682614c70565b81815260059190911b83018401908481019088831115615bc057600080fd5b8585015b83811015615c5b57805185811115615bdc5760008081fd5b86016080818c03601f1901811315615bf45760008081fd5b615bfc614806565b898301518881168114615c0f5760008081fd5b815260408381015189811115615c255760008081fd5b615c338f8d83880101615a33565b838d015250606084810151918301919091529190920151908201528352918601918601615bc4565b5098975050505050505050565b600060208284031215615c7a57600080fd5b5051919050565b600060808201868352602086818501528560408501526080606085015281855180845260a086019150828701935060005b81811015615cce57845183529383019391830191600101615cb2565b50909998505050505050505050565b6001600160401b03818116838216028082169190828114615d0057615d0061542b565b505092915050565b604081526000615d1b6040830185614d54565b905082151560208301529392505050565b6000808354615d3a816155ad565b60018281168015615d525760018114615d6757615d96565b60ff1984168752821515830287019450615d96565b8760005260208060002060005b85811015615d8d5781548a820152908401908201615d74565b50505082870194505b50929695505050505050565b6001600160401b03818116838216019080821115615b3b57615b3b61542b565b6020815260006143b160208301846157cf565b6000610100808352615de98184018c614d54565b90508960208401528281036040840152615e03818a614d54565b90508760608401528281036080840152615e1d8188614d54565b6001600160a01b03871660a085015283810360c08501529050615e408186614d54565b91505082151560e0830152999850505050505050505056fe3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f69685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80da2646970667358221220697d8d7ebd4a7dbec942bd6b46164f7af9474dfc0e1d0a9fa2077cc1e0f04bd064736f6c63430008120033", + "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BalanceDecrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BalanceIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"errorCode\",\"type\":\"int256\"}],\"name\":\"BridgeCapExceeded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"CallForUser\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CollateralIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Deposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"transferredAmount\",\"type\":\"int256\"}],\"name\":\"PegInRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quotehash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"processed\",\"type\":\"uint256\"}],\"name\":\"PegOut\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"PegOutDeposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"PegOutRefunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"userAddress\",\"type\":\"address\"}],\"name\":\"PegOutUserRefunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PegoutCollateralIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PegoutWithdrawCollateral\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"liquidityProvider\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"penalty\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"Penalized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"Refund\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Register\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"Resigned\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"WithdrawCollateral\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Withdrawal\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"BRIDGE_GENERIC_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_REFUNDED_LP_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_REFUNDED_USER_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"CALL_DONE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_CALL_GAS_COST\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_REFUND_GAS_LIMIT\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_UINT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PAY_TO_ADDRESS_OUTPUT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PROCESSED_QUOTE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"QUOTE_HASH_OUTPUT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UNPROCESSED_QUOTE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"addCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"addPegoutCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"bridge\",\"outputs\":[{\"internalType\":\"contract Bridge\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"}],\"internalType\":\"struct Quotes.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"callForUser\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"}],\"internalType\":\"struct Quotes.PegOutQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"name\":\"depositPegout\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBridgeAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"header\",\"type\":\"bytes\"}],\"name\":\"getBtcBlockTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDustThreshold\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinPegIn\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getPegoutCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getProviderIds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"providerIds\",\"type\":\"uint256[]\"}],\"name\":\"getProviders\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"provider\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"apiBaseUrl\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"providerType\",\"type\":\"string\"}],\"internalType\":\"struct LiquidityBridgeContract.LiquidityProvider[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"getRegisteredPegOutQuote\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"}],\"internalType\":\"struct Quotes.PegOutQuote\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getResignDelayBlocks\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRewardPercentage\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"}],\"internalType\":\"struct Quotes.PegOutQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"hashPegoutQuote\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"}],\"internalType\":\"struct Quotes.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"hashQuote\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_bridgeAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_minimumCollateral\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minimumPegIn\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_rewardPercentage\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"_resignDelayBlocks\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_dustThreshold\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_btcBlockTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"_mainnet\",\"type\":\"bool\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isOperational\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isOperationalForPegout\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"isPegOutQuoteCompleted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"providerId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"btcTx\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"btcBlockHeaderHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"partialMerkleTree\",\"type\":\"uint256\"},{\"internalType\":\"bytes32[]\",\"name\":\"merkleBranchHashes\",\"type\":\"bytes32[]\"}],\"name\":\"refundPegOut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"refundUserPegOut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_apiBaseUrl\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"_providerType\",\"type\":\"string\"}],\"name\":\"register\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"}],\"internalType\":\"struct Quotes.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"btcRawTransaction\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"partialMerkleTree\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"}],\"name\":\"registerPegIn\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"resign\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_providerId\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"setProviderStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"}],\"internalType\":\"struct Quotes.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"depositAddress\",\"type\":\"bytes\"}],\"name\":\"validatePeginDepositAddress\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawCollateral\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawPegoutCollateral\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"events\":{\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"}},\"kind\":\"dev\",\"methods\":{\"addCollateral()\":{\"details\":\"Increases the amount of collateral of the sender\"},\"callForUser((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool))\":{\"details\":\"Performs a call on behalf of a user\",\"params\":{\"quote\":\"The quote that identifies the service\"},\"returns\":{\"_0\":\"Boolean indicating whether the call was successful\"}},\"deposit()\":{\"details\":\"Increases the balance of the sender\"},\"getBalance(address)\":{\"details\":\"Returns the amount of funds of a liquidity provider\",\"params\":{\"addr\":\"The address of the liquidity provider\"},\"returns\":{\"_0\":\"The balance of the liquidity provider\"}},\"getBtcBlockTimestamp(bytes)\":{\"details\":\"Gets the timestamp of a Bitcoin block header\",\"params\":{\"header\":\"The block header\"},\"returns\":{\"_0\":\"The timestamp of the block header\"}},\"getCollateral(address)\":{\"details\":\"Returns the amount of collateral of a liquidity provider\",\"params\":{\"addr\":\"The address of the liquidity provider\"},\"returns\":{\"_0\":\"The amount of locked collateral\"}},\"hashQuote((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool))\":{\"details\":\"Calculates hash of a quote. Note: besides calculation this function also validates the quote.\",\"params\":{\"quote\":\"The quote of the service\"},\"returns\":{\"_0\":\"The hash of a quote\"}},\"initialize(address,uint256,uint256,uint32,uint32,uint256,uint256,bool)\":{\"params\":{\"_bridgeAddress\":\"The address of the bridge contract\",\"_dustThreshold\":\"Amount that is considered dust\",\"_minimumCollateral\":\"The minimum required collateral for liquidity providers\",\"_minimumPegIn\":\"The minimum peg-in amount\",\"_resignDelayBlocks\":\"The number of block confirmations that a liquidity // provider needs to wait before it can withdraw its collateral\",\"_rewardPercentage\":\"The percentage of the penalty fee that an honest party // receives when calling registerPegIn in case of a liquidity provider misbehaving\"}},\"isOperational(address)\":{\"details\":\"Checks whether a liquidity provider can deliver a pegin service\",\"returns\":{\"_0\":\"Whether the liquidity provider is registered and has enough locked collateral\"}},\"isOperationalForPegout(address)\":{\"details\":\"Checks whether a liquidity provider can deliver a pegout service\",\"returns\":{\"_0\":\"Whether the liquidity provider is registered and has enough locked collateral\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"register(string,string,bool,string)\":{\"details\":\"Registers msg.sender as a liquidity provider with msg.value as collateral\"},\"registerPegIn((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool),bytes,bytes,bytes,uint256)\":{\"details\":\"Registers a peg-in transaction with the bridge and pays to the involved parties\",\"params\":{\"btcRawTransaction\":\"The peg-in transaction\",\"height\":\"The block that contains the peg-in transaction\",\"partialMerkleTree\":\"The merkle tree path that proves transaction inclusion\",\"quote\":\"The quote of the service\",\"signature\":\"The signature of the quote\"},\"returns\":{\"_0\":\"The total peg-in amount received from the bridge contract or an error code\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"resign()\":{\"details\":\"Used to resign as a liquidity provider\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"withdraw(uint256)\":{\"details\":\"Used to withdraw funds\",\"params\":{\"amount\":\"The amount to withdraw\"}},\"withdrawCollateral()\":{\"details\":\"Used to withdraw the locked collateral\"}},\"title\":\"Contract that assists with the Flyover protocol\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/LiquidityBridgeContract.sol\":\"LiquidityBridgeContract\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\":{\"keccak256\":\"0x7237a22e0d518b3499d81ca4918c038a168882e57a35af17d57afd61234c8512\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df4acd5a0609e279ddad58d0532a77fdc959688144e5bb7ccfc782db9236251\",\"dweb:/ipfs/QmbjJFBRm6JFPx9Jh34hX8N5rkgBxJ5kbdZsoJ3Tb4UyCa\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":{\"keccak256\":\"0x5996186b53b109f592341cfe164c6673346eafda66a2a496e6d5fcec5c74de5a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8d3073328ce73163fe8088b14bf39ba03f5f233604a0eb329bb64f2be73ff411\",\"dweb:/ipfs/QmScVLft2AL48D1Z93e3TDQbfZNh7sxJaeS23U4KPGsjTY\"]},\"project:/contracts/Bridge.sol\":{\"keccak256\":\"0x1eb986f1f28ace76b72425a2617eaeb89a54c765dc7b16689cb1105a7e6c0f2f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://255860b4bfb0bed73723349493307106fb54fcaf5839a7b0c012fc1a03d0b8ce\",\"dweb:/ipfs/QmUoWjWVkXpUWjaiWQXQVNKEJmCnPtKXXTgFq7kkcTuGMs\"]},\"project:/contracts/LiquidityBridgeContract.sol\":{\"keccak256\":\"0xffd1e9632f97e8d0a1daac7a5db03b7f5c345e80e08ecc2d2a113d36969fef7a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d95ff6c407622ceab5e821eb0ae0e1984812e5e517180c56f57f2891840d79a3\",\"dweb:/ipfs/QmS9sYi998BahXLHLW74qrf45icdLGmxXuNm7Y2SN9VZnF\"]},\"project:/contracts/Quotes.sol\":{\"keccak256\":\"0x28948b37d73f110d9cfc6cc3505fa7f2309b2d8d588d90c4069df45b4acbe399\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f2a824971a2421b56127e048a6b8a2d4ef4945b13e5f40cb266a19462c954e7f\",\"dweb:/ipfs/QmWm8YpQUwvqu4erUbsUZ1xz4PoVtJQiAX1Kh5Gezi32c1\"]},\"project:/contracts/SignatureValidator.sol\":{\"keccak256\":\"0x9d72920dd5ff2891c8dd3b3a814c1b108e82fcc6dfd849c96842e88c01d25b2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df1167e9def35ced4a620e3fa1e6d148bc7c1fb995378bf12dabef250b3be65\",\"dweb:/ipfs/QmZJJchWvzUeMb68VPHFGnMXBx7aMhK5GqJy8ECDx2rf58\"]}},\"version\":1}", + "bytecode": "0x608060405234801561001057600080fd5b50615eee80620000216000396000f3fe60806040526004361061027f5760003560e01c806304ade855146102d35780630a7bf57a146102ff5780630a9cb4a7146103145780631b032188146103335780632e1a7d4d1461035357806333f07ad31461037357806335510a7d14610388578063417055181461039d578063418663a2146103b05780634198687e146103da5780634533ac1c146103e2578063457385f2146104025780634d0ec9711461043257806354015ee01461045257806359c153be14610485578063668dbd831461049a57806369023235146104c757806369652fcf146104e75780636e2e8c70146104fc578063715018a61461051c57806372cbf4e8146105315780637b78837f146105515780638490a8df146105645780638d5979391461057a5780638da5cb5b146105915780638f91797d146105b35780639b56d6c9146105d35780639cd6557f146106095780639d79b59b1461061e5780639e81699914610647578063a0cd70fc1461064f578063a0d250371461066f578063a4a5ba501461068f578063a93bb247146106a4578063ac29d744146106bb578063ae76ce86146106ce578063ae93b67b146106e5578063bd519eff146106fc578063bd5798c314610732578063be6de4eb14610754578063c525cdd814610769578063c721316314610780578063cfb92f0a1461079b578063d0e30db0146107b2578063d6c70de8146107ba578063e1de16c6146107da578063e30e6ea3146107f0578063e5b5019a14610806578063e78cea921461081c578063e830b6901461083c578063e8fcce7114610851578063e90d2ddb14610867578063f2fde38b14610894578063f8b2cb4f146108b4578063fa88dcde146108ea578063fb32c508146108ff57600080fd5b366102ce576097546001600160a01b031633146102cc5760405162461bcd60e51b81526020600482015260066024820152654c424330303760d01b60448201526064015b60405180910390fd5b005b600080fd5b3480156102df57600080fd5b506102e8600181565b60405160ff90911681526020015b60405180910390f35b34801561030b57600080fd5b506102e8600281565b34801561032057600080fd5b5060a2545b6040519081526020016102f6565b34801561033f57600080fd5b5061032561034e366004614ae9565b61091d565b34801561035f57600080fd5b506102cc61036e366004614b1d565b61092e565b34801561037f57600080fd5b5060a154610325565b34801561039457600080fd5b506102cc610a26565b6103256103ab366004614b36565b610b54565b3480156103bc57600080fd5b506103c76101301981565b60405160019190910b81526020016102f6565b6102cc610eef565b3480156103ee57600080fd5b506102cc6103fd366004614bd2565b610f74565b34801561040e57600080fd5b5061042261041d366004614c53565b6111b3565b60405190151581526020016102f6565b34801561043e57600080fd5b5061042261044d366004614c53565b6111e9565b34801561045e57600080fd5b5061042261046d366004614b1d565b600090815260a7602052604090206001015460ff1690565b34801561049157600080fd5b506102cc61121f565b3480156104a657600080fd5b506104ba6104b5366004614c93565b61134d565b6040516102f69190614d80565b3480156104d357600080fd5b506103256104e2366004614fbd565b6116ce565b3480156104f357600080fd5b506102cc6116d9565b34801561050857600080fd5b50610325610517366004614ff1565b611784565b34801561052857600080fd5b506102cc611f6b565b34801561053d57600080fd5b506102cc61054c3660046150a5565b611f7f565b6102cc61055f3660046150d5565b612019565b34801561057057600080fd5b5061032560a25481565b34801561058657600080fd5b506103c761012c1981565b34801561059d57600080fd5b506105a661249f565b6040516102f69190615138565b3480156105bf57600080fd5b506102cc6105ce366004614b1d565b6124ae565b3480156105df57600080fd5b506103256105ee366004614c53565b6001600160a01b031660009081526099602052604090205490565b34801561061557600080fd5b506102e8600081565b34801561062a57600080fd5b506106346188b881565b60405161ffff90911681526020016102f6565b6102cc6127af565b34801561065b57600080fd5b5061032561066a36600461514c565b61282a565b34801561067b57600080fd5b5061042261068a366004615180565b61287d565b34801561069b57600080fd5b50610325600181565b3480156106b057600080fd5b506103c761012d1981565b6104226106c9366004614ae9565b6129e9565b3480156106da57600080fd5b506103c761012b1981565b3480156106f157600080fd5b506103c76103831981565b34801561070857600080fd5b50610325610717366004614c53565b6001600160a01b03166000908152609a602052604090205490565b34801561073e57600080fd5b5060a054600160201b900463ffffffff16610325565b34801561076057600080fd5b50610325600081565b34801561077557600080fd5b506103c761012e1981565b34801561078c57600080fd5b5060a05463ffffffff16610325565b3480156107a757600080fd5b506103c761012f1981565b6102cc612cfb565b3480156107c657600080fd5b506102cc6107d53660046151b6565b612d2a565b3480156107e657600080fd5b506106346108fc81565b3480156107fc57600080fd5b506103c760c71981565b34801561081257600080fd5b5061032560001981565b34801561082857600080fd5b506097546105a6906001600160a01b031681565b34801561084857600080fd5b50609e54610325565b34801561085d57600080fd5b506103c760631981565b34801561087357600080fd5b50610887610882366004614b1d565b6136f6565b6040516102f6919061528c565b3480156108a057600080fd5b506102cc6108af366004614c53565b613a21565b3480156108c057600080fd5b506103256108cf366004614c53565b6001600160a01b031660009081526098602052604090205490565b3480156108f657600080fd5b50609f54610325565b34801561090b57600080fd5b506097546001600160a01b03166105a6565b600061092882613a97565b92915050565b3360009081526098602052604090205481111561095d5760405162461bcd60e51b81526004016102c39061540b565b336000908152609860205260408120805483929061097c908490615441565b9091555050604051600090339083908381818185875af1925050503d80600081146109c3576040519150601f19603f3d011682016040523d82523d6000602084013e6109c8565b606091505b50509050806109e95760405162461bcd60e51b81526004016102c390615454565b7f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b653383604051610a1a929190615474565b60405180910390a15050565b336000908152609d6020526040902054610a525760405162461bcd60e51b81526004016102c39061548d565b60a054336000908152609d6020526040902054600160201b90910463ffffffff1690610a7e9043615441565b1015610a9c5760405162461bcd60e51b81526004016102c3906154ad565b336000818152609a60209081526040808320805490849055609d9092528083208390555190929083908381818185875af1925050503d8060008114610afd576040519150601f19603f3d011682016040523d82523d6000602084013e610b02565b606091505b5050905080610b235760405162461bcd60e51b81526004016102c390615454565b7ffc72299650b405e7b0480ca8fb0fb3948fb10a77ac02f797cc9de1f4aaa55db73383604051610a1a929190615474565b6000323314610b8e5760405162461bcd60e51b81526020600482015260066024820152654c424330303360d01b60448201526064016102c3565b610b99858584613cff565b33600090815260996020526040902054158015610bc35750336000908152609a6020526040902054155b610bf85760405162461bcd60e51b815260206004820152600660248201526504c42433037360d41b60448201526064016102c3565b336000908152609d602052604090205415610c3e5760405162461bcd60e51b81526020600482015260066024820152654c424330303960d01b60448201526064016102c3565b604051602001610c4d906154cd565b6040516020818303038152906040528051906020012082604051602001610c7491906154de565b6040516020818303038152906040528051906020012003610cc857609e54341015610cb15760405162461bcd60e51b81526004016102c3906154fa565b336000908152609960205260409020349055610dcd565b604051602001610cd79061551a565b6040516020818303038152906040528051906020012082604051602001610cfe91906154de565b6040516020818303038152906040528051906020012003610d5257609e54341015610d3b5760405162461bcd60e51b81526004016102c3906154fa565b336000908152609a60205260409020349055610dcd565b609e54610d6090600261552c565b341015610d7f5760405162461bcd60e51b81526004016102c3906154fa565b6000610d8c600234615559565b9050610d9960023461556d565b15610dae57610da9816001615581565b610db0565b805b33600090815260996020908152604080832093909355609a905220555b60a28054906000610ddd83615594565b90915550506040805160c08101825260a2548082523360208084019182528385018a8152606085018a9052881515608086015260a085018890526000938452609b909152939091208251815590516001820180546001600160a01b0319166001600160a01b0390921691909117905591519091906002820190610e609082615635565b5060608201516003820190610e759082615635565b50608082015160048201805460ff191691151591909117905560a08201516005820190610ea29082615635565b505060a254604080519182523460208301523392507fa9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e910160405180910390a25060a2545b949350505050565b610ef833613ea6565b610f145760405162461bcd60e51b81526004016102c3906156f4565b336000908152609a602052604081208054349290610f33908490615581565b90915550506040517f873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa990610f6a9033903490615474565b60405180910390a1565b600054610100900460ff1615808015610f945750600054600160ff909116105b80610fae5750303b158015610fae575060005460ff166001145b6110115760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016102c3565b6000805460ff191660011790558015611034576000805461ff0019166101001790555b60648663ffffffff1611156110745760405162461bcd60e51b8152602060048201526006602482015265131090cc0c0d60d21b60448201526064016102c3565b666a94d74f4300008810156110b45760405162461bcd60e51b8152602060048201526006602482015265262121981b9960d11b60448201526064016102c3565b603c8563ffffffff1610156110f45760405162461bcd60e51b81526020600482015260066024820152654c424330373360d01b60448201526064016102c3565b6110fc613ee5565b609780546001600160a01b038b166001600160a01b0319909116179055609e889055609f87905560a0805463ffffffff878116600160201b026001600160401b03199092169089161717905560a184905560a383905560a4805483151560ff1990911617905580156111a8576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050505050565b60006111be82613f59565b80156109285750609e546001600160a01b038316600090815260996020526040902054101592915050565b60006111f482613ea6565b80156109285750609e546001600160a01b0383166000908152609a6020526040902054101592915050565b336000908152609d602052604090205461124b5760405162461bcd60e51b81526004016102c39061548d565b60a054336000908152609d6020526040902054600160201b90910463ffffffff16906112779043615441565b10156112955760405162461bcd60e51b81526004016102c3906154ad565b336000818152609960209081526040808320805490849055609d9092528083208390555190929083908381818185875af1925050503d80600081146112f6576040519150601f19603f3d011682016040523d82523d6000602084013e6112fb565b606091505b505090508061131c5760405162461bcd60e51b81526004016102c390615454565b7fa8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d23383604051610a1a929190615474565b6060600082516001600160401b0381111561136a5761136a6147a4565b6040519080825280602002602001820160405280156113df57816020015b6113cc6040518060c001604052806000815260200160006001600160a01b031681526020016060815260200160608152602001600015158152602001606081525090565b8152602001906001900390816113885790505b5090506000805b84518110156116c557600085828151811061140357611403615714565b6020908102919091018101516000818152609b909252604090912060010154909150611437906001600160a01b0316613f59565b8061146157506000818152609b6020526040902060010154611461906001600160a01b0316613ea6565b801561147e57506000818152609b602052604090206004015460ff165b156116b2576000818152609b6020908152604091829020825160c0810184528154815260018201546001600160a01b03169281019290925260028101805492939192918401916114cd906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546114f9906155ad565b80156115465780601f1061151b57610100808354040283529160200191611546565b820191906000526020600020905b81548152906001019060200180831161152957829003601f168201915b5050505050815260200160038201805461155f906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461158b906155ad565b80156115d85780601f106115ad576101008083540402835291602001916115d8565b820191906000526020600020905b8154815290600101906020018083116115bb57829003601f168201915b5050509183525050600482015460ff1615156020820152600582018054604090920191611604906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054611630906155ad565b801561167d5780601f106116525761010080835404028352916020019161167d565b820191906000526020600020905b81548152906001019060200180831161166057829003601f168201915b50505050508152505084848151811061169857611698615714565b602002602001018190525082806116ae90615594565b9350505b50806116bd81615594565b9150506113e6565b50909392505050565b600061092882613f98565b6116e233613f59565b6116fe5760405162461bcd60e51b81526004016102c3906156f4565b336000908152609d6020526040902054156117445760405162461bcd60e51b81526020600482015260066024820152654c424330323360d01b60448201526064016102c3565b336000818152609d602052604090819020439055517fa6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d8691610f6a91615138565b600061178e614014565b600061179987613a97565b600081815260a56020526040902054909150600160ff90911611156117d05760405162461bcd60e51b81526004016102c39061572a565b60408088015190516301a86b5560e41b815273__SignatureValidator____________________91631a86b5509161180f919085908b9060040161574a565b602060405180830381865af415801561182c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118509190615771565b61186c5760405162461bcd60e51b81526004016102c39061578e565b637fffffff83106118a85760405162461bcd60e51b815260206004820152600660248201526504c42433033360d41b60448201526064016102c3565b60006118b7888787878661406d565b905061012f81016118f35760405162461bcd60e51b81526020600482015260066024820152654c424330333160d01b60448201526064016102c3565b61012e810161192d5760405162461bcd60e51b815260206004820152600660248201526526212198199960d11b60448201526064016102c3565b61013081016119675760405162461bcd60e51b81526020600482015260066024820152654c424330333360d01b60448201526064016102c3565b61013181016119a15760405162461bcd60e51b8152602060048201526006602482015265131090cc0ccd60d21b60448201526064016102c3565b61038481016119db5760405162461bcd60e51b81526020600482015260066024820152654c424330333560d01b60448201526064016102c3565b60008113806119eb575060c71981145b806119f7575060631981145b611a2c5760405162461bcd60e51b815260206004820152600660248201526526212198199b60d11b60448201526064016102c3565b6000828152609c6020526040902054611a4f908990839063ffffffff168761413f565b15611b205760e08801516040808a01516001600160a01b031660009081526099602052908120549091611a81916143a0565b905080609960008b604001516001600160a01b03166001600160a01b031681526020019081526020016000206000828254611abc9190615441565b90915550506040808a01519051600080516020615e7983398151915291611ae691849087906157ae565b60405180910390a160a054600090606490611b079063ffffffff168461552c565b611b119190615559565b9050611b1d33826143b8565b50505b60c719811480611b31575060631981145b15611ba557600082815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff1916905581518481529081018390527ffb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe910160405180910390a19150611f589050565b60405162e7a37960e21b8152819073__Quotes________________________________9063039e8de490611bdf908c908590600401615923565b60006040518083038186803b158015611bf757600080fd5b505af4158015611c0b573d6000803e3d6000fd5b5050506000848152609c602052604090205463ffffffff16159050611d4c576000838152609c6020526040812054600160201b900460ff1615611c6d57611c66828b60c001518c6101800151611c619190615581565b6143a0565b9050611c7e565b611c7b828b60c001516143a0565b90505b611c8c8a60400151826143b8565b6000611c988284615441565b905060a154811115611d455760808b01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611cf8576040519150601f19603f3d011682016040523d82523d6000602084013e611cfd565b606091505b50509050600080516020615e598339815191528c60800151838389604051611d289493929190615945565b60405180910390a180611d4357611d438c60400151836143b8565b505b5050611ef1565b61022089015181908015611d6557508961018001518110155b15611e575760008a61010001516001600160a01b03168b610140015163ffffffff168c61018001518d6101200151604051611da091906154de565b600060405180830381858888f193505050503d8060008114611dde576040519150601f19603f3d011682016040523d82523d6000602084013e611de3565b606091505b505090508a61010001516001600160a01b0316336001600160a01b0316600080516020615e998339815191528d61014001518e61018001518f6101200151868b604051611e3495949392919061596d565b60405180910390a38015611e55576101808b0151611e529083615441565b91505b505b60a154811115611eef5760808a01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611eb5576040519150601f19603f3d011682016040523d82523d6000602084013e611eba565b606091505b50509050600080516020615e598339815191528b60800151838388604051611ee59493929190615945565b60405180910390a1505b505b600083815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff19169055905183815284917f0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2910160405180910390a2509150505b611f626001606555565b95945050505050565b611f73614417565b611f7d6000614476565b565b81611f8861249f565b6001600160a01b0316336001600160a01b03161480611fc057506000818152609b60205260409020600101546001600160a01b031633145b611ff55760405162461bcd60e51b81526020600482015260066024820152654c424330303560d01b60448201526064016102c3565b506000918252609b6020526040909120600401805460ff1916911515919091179055565b6120268260200151613ea6565b61205b5760405162461bcd60e51b81526020600482015260066024820152654c424330333760d01b60448201526064016102c3565b348260a001518361012001516120719190615581565b11156120a85760405162461bcd60e51b81526020600482015260066024820152654c424330363360d01b60448201526064016102c3565b81610160015163ffffffff164211156120ec5760405162461bcd60e51b81526020600482015260066024820152654c424330363560d01b60448201526064016102c3565b816101e0015163ffffffff164211156121305760405162461bcd60e51b8152602060048201526006602482015265262121981a1b60d11b60448201526064016102c3565b81610200015163ffffffff164311156121745760405162461bcd60e51b81526020600482015260066024820152654c424330343760d01b60448201526064016102c3565b600061217f836116ce565b60208401516040516301a86b5560e41b815291925073__SignatureValidator____________________91631a86b550916121c0918590879060040161574a565b602060405180830381865af41580156121dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122019190615771565b61221d5760405162461bcd60e51b81526004016102c39061578e565b600081815260a66020908152604080832060a79092529091206001015460ff161561225a5760405162461bcd60e51b81526004016102c3906159a6565b80546001600160a01b0316156122825760405162461bcd60e51b81526004016102c39061572a565b600082815260a66020908152604091829020865181546001600160a01b03199081166001600160a01b03928316178355928801516001830180549094169116179091559085015185919060028201906122db9082615635565b5060608201516003820180546001600160a01b0319166001600160a01b03909216919091179055608082015160048201906123169082615635565b5060a0820151600582015560c0820151600682015560e08201516007820180546001600160401b0319166001600160401b0390921691909117905561010082015160088201906123669082615635565b506101208201516009820155610140820151600a90910180546101608401516101808501516101a08601516101c08701516101e08801516102009098015163ffffffff9788166001600160401b031990961695909517600160201b948816949094029390931763ffffffff60401b1916600160401b61ffff9384160261ffff60501b191617600160501b929091169190910217600160601b600160a01b031916600160601b9185169190910263ffffffff60801b191617600160801b948416949094029390931763ffffffff60a01b1916600160a01b9290931691909102919091179055600082815260a760209081526040918290204290819055825134815291820152339184917fb1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f910160405180910390a350505050565b6033546001600160a01b031690565b6124b6614014565b600081815260a66020526040902080546001600160a01b03166124eb5760405162461bcd60e51b81526004016102c3906159c6565b600a810154600160801b900463ffffffff164211801561251b5750600a810154600160a01b900463ffffffff1643115b6125505760405162461bcd60e51b81526020600482015260066024820152654c424330343160d01b60448201526064016102c3565b6000816005015482600901546125669190615581565b6003830154600684015460018501546001600160a01b039081166000908152609a602052604081205494955092169261259f91906143a0565b60018501546001600160a01b03166000908152609a60205260408120805492935083929091906125d0908490615441565b90915550506001840154604051600080516020615e7983398151915291612606916001600160a01b0390911690849089906157ae565b60405180910390a16003840154604080518581526001600160a01b03909216602083015286917f9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41910160405180910390a2600085815260a66020526040812080546001600160a01b0319908116825560018201805490911690559061268e6002830182614756565b6003820180546001600160a01b03191690556126ae600483016000614756565b600060058301819055600683018190556007830180546001600160401b03191690556126de906008840190614756565b50600060098201819055600a90910180546001600160c01b031916905585815260a760205260408082206001908101805460ff19169091179055516001600160a01b0384169085908381818185875af1925050503d806000811461275e576040519150601f19603f3d011682016040523d82523d6000602084013e612763565b606091505b505090508061279d5760405162461bcd60e51b8152602060048201526006602482015265131090cc0d0d60d21b60448201526064016102c3565b50505050506127ac6001606555565b50565b6127b833613f59565b6127d45760405162461bcd60e51b81526004016102c3906156f4565b33600090815260996020526040812080543492906127f3908490615581565b90915550506040517f456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af8490610f6a9033903490615474565b600081516050146128665760405162461bcd60e51b81526020600482015260066024820152654c424330363160d01b60448201526064016102c3565b6128718260446144c8565b63ffffffff1692915050565b6000806128898461091d565b8460600151856020015160601b8660a001516040516020016128ae94939291906159e6565b604051602081830303815290604052805190602001209050600081609760009054906101000a90046001600160a01b03166001600160a01b0316631d73d5dd6040518163ffffffff1660e01b8152600401600060405180830381865afa15801561291c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526129449190810190615a78565b604051602001612955929190615aac565b60408051601f198184030181529082905260a454639b02794b60e01b835290925073__BtcUtils______________________________91639b02794b916129a8918891869160ff90911690600401615ae6565b602060405180830381865af41580156129c5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f629190615771565b60006129f433613f59565b612a105760405162461bcd60e51b81526004016102c3906156f4565b612a18614014565b81604001516001600160a01b0316336001600160a01b031614612a665760405162461bcd60e51b8152602060048201526006602482015265131090cc0c8d60d21b60448201526064016102c3565b6101808201516040808401516001600160a01b0316600090815260986020522054612a92903490615581565b1015612ab05760405162461bcd60e51b81526004016102c39061540b565b6000612abb83613a97565b600081815260a5602052604090205490915060ff1615612b065760405162461bcd60e51b81526020600482015260066024820152654c424330323560d01b60448201526064016102c3565b612b148360400151346143b8565b610140830151612b27906188b890615b1e565b63ffffffff165a1015612b655760405162461bcd60e51b815260206004820152600660248201526526212198191b60d11b60448201526064016102c3565b60008361010001516001600160a01b031684610140015163ffffffff16856101800151866101200151604051612b9b91906154de565b600060405180830381858888f193505050503d8060008114612bd9576040519150601f19603f3d011682016040523d82523d6000602084013e612bde565b606091505b509091505063ffffffff421115612c205760405162461bcd60e51b81526020600482015260066024820152654c424330323760d01b60448201526064016102c3565b6000828152609c60205260409020805463ffffffff19164263ffffffff161790558015612c7b576000828152609c602052604090819020805460ff60201b1916600160201b179055840151610180850151612c7b91906145b2565b8361010001516001600160a01b0316336001600160a01b0316600080516020615e998339815191528661014001518761018001518861012001518688604051612cc895949392919061596d565b60405180910390a3600091825260a56020526040909120805460ff191660011790559050612cf66001606555565b919050565b612d0433613f59565b612d205760405162461bcd60e51b81526004016102c3906156f4565b611f7d33346143b8565b612d32614014565b612d3b33613ea6565b612d575760405162461bcd60e51b81526004016102c3906156f4565b600085815260a7602052604090206001015460ff1615612d895760405162461bcd60e51b81526004016102c3906159a6565b600085815260a66020526040902080546001600160a01b0316612dbe5760405162461bcd60e51b81526004016102c3906159c6565b60405162f5b49160e01b815260009073__BtcUtils______________________________9062f5b49190612df6908990600401615b42565b600060405180830381865af4158015612e13573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612e3b9190810190615b55565b9050600073__BtcUtils______________________________632d56f32383600181518110612e6c57612e6c615714565b6020026020010151602001516040518263ffffffff1660e01b8152600401612e949190615b42565b600060405180830381865af4158015612eb1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612ed99190810190615a78565b806020019051810190612eec9190615c68565b9050808814612f265760405162461bcd60e51b81526020600482015260066024820152654c424330363960d01b60448201526064016102c3565b60018301546001600160a01b03163314612f6b5760405162461bcd60e51b815260206004820152600660248201526509884866068760d31b60448201526064016102c3565b600a83015460975460405163fea8ba6360e01b8152600160501b90920461ffff16916001600160a01b0390911690635b6445879073__BtcUtils______________________________9063fea8ba6390612fc9908d90600401615b42565b602060405180830381865af4158015612fe6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061300a9190615c68565b8989896040518563ffffffff1660e01b815260040161302c9493929190615c81565b602060405180830381865afa158015613049573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061306d9190615c68565b12156130a45760405162461bcd60e51b81526020600482015260066024820152654c424330343960d01b60448201526064016102c3565b816000815181106130b7576130b7615714565b6020026020010151600001516402540be4006130d39190615cdd565b6001600160401b0316836009015411156131185760405162461bcd60e51b81526020600482015260066024820152654c424330363760d01b60448201526064016102c3565b600073__BtcUtils______________________________634c03fe598460008151811061314757613147615714565b602090810291909101810151015160a4546040516001600160e01b031960e085901b16815261317d929160ff1690600401615d08565b600060405180830381865af415801561319a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131c29190810190615a78565b90508080519060200120846008016040516131dd9190615d2c565b60405180910390201461321b5760405162461bcd60e51b81526020600482015260066024820152650988486606c760d31b60448201526064016102c3565b604080516102208101825285546001600160a01b03908116825260018701541660208201526002860180546134b693889290840191613259906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054613285906155ad565b80156132d25780601f106132a7576101008083540402835291602001916132d2565b820191906000526020600020905b8154815290600101906020018083116132b557829003601f168201915b505050918352505060038201546001600160a01b03166020820152600482018054604090920191613302906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461332e906155ad565b801561337b5780601f106133505761010080835404028352916020019161337b565b820191906000526020600020905b81548152906001019060200180831161335e57829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b60608201526008820180546080909201916133b9906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546133e5906155ad565b80156134325780601f1061340757610100808354040283529160200191613432565b820191906000526020600020905b81548152906001019060200180831161341557829003601f168201915b505050918352505060098201546020820152600a9091015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b90910416610100909101528389614611565b1561355957600684015460018501546001600160a01b03166000908152609a602052604081205490916134e8916143a0565b60018601546001600160a01b03166000908152609a6020526040812080549293508392909190613519908490615441565b90915550506001850154604051600080516020615e798339815191529161354f916001600160a01b0390911690849087906157ae565b60405180910390a1505b6001840154600585015460098601546000926001600160a01b03169161357e91615581565b604051600081818185875af1925050503d80600081146135ba576040519150601f19603f3d011682016040523d82523d6000602084013e6135bf565b606091505b50509050806135f95760405162461bcd60e51b815260206004820152600660248201526504c42433035360d41b60448201526064016102c3565b600083815260a66020526040812080546001600160a01b031990811682556001820180549091169055906136306002830182614756565b6003820180546001600160a01b0319169055613650600483016000614756565b600060058301819055600683018190556007830180546001600160401b0319169055613680906008840190614756565b50600060098201819055600a90910180546001600160c01b031916905583815260a760205260408082206001908101805460ff191690911790555184917fb781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb38491a250505050506136ef6001606555565b5050505050565b6040805161022080820183526000808352602080840182905260608486018190528085018390526080850181905260a0850183905260c0850183905260e0850183905261010085015261012084018290526101408401829052610160840182905261018084018290526101a084018290526101c084018290526101e08401829052610200840182905285825260a68152908490208451928301855280546001600160a01b039081168452600182015416918301919091526002810180549394929391928401916137c5906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546137f1906155ad565b801561383e5780601f106138135761010080835404028352916020019161383e565b820191906000526020600020905b81548152906001019060200180831161382157829003601f168201915b505050918352505060038201546001600160a01b0316602082015260048201805460409092019161386e906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461389a906155ad565b80156138e75780601f106138bc576101008083540402835291602001916138e7565b820191906000526020600020905b8154815290600101906020018083116138ca57829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b6060820152600882018054608090920191613925906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054613951906155ad565b801561399e5780601f106139735761010080835404028352916020019161399e565b820191906000526020600020905b81548152906001019060200180831161398157829003601f168201915b505050918352505060098201546020820152600a9091015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b909104166101009091015292915050565b613a29614417565b6001600160a01b038116613a8e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102c3565b6127ac81614476565b600081602001516001600160a01b0316306001600160a01b031614613ae75760405162461bcd60e51b81526020600482015260066024820152654c424330353160d01b60448201526064016102c3565b6101008201516097546001600160a01b03918216911603613b335760405162461bcd60e51b8152602060048201526006602482015265262121981a9960d11b60448201526064016102c3565b81606001515160151480613b4c57508160600151516021145b613b815760405162461bcd60e51b81526020600482015260066024820152654c424330353360d01b60448201526064016102c3565b8160a0015151601514613bbf5760405162461bcd60e51b8152602060048201526006602482015265131090cc0d4d60d21b60448201526064016102c3565b609f548260c00151836101800151613bd79190615581565b1015613c0e5760405162461bcd60e51b81526020600482015260066024820152654c424330353560d01b60448201526064016102c3565b816101c0015163ffffffff16826101a0015163ffffffff16613c309190615da2565b6001600160401b031663ffffffff1015613c755760405162461bcd60e51b81526020600482015260066024820152654c424330373160d01b60448201526064016102c3565b604051630fdeb30b60e21b815273__Quotes________________________________90633f7acc2c90613cac908590600401615dc2565b600060405180830381865af4158015613cc9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613cf19190810190615a78565b805190602001209050919050565b6000835111613d395760405162461bcd60e51b815260206004820152600660248201526504c42433031360d41b60448201526064016102c3565b6000825111613d735760405162461bcd60e51b81526020600482015260066024820152654c424330313760d01b60448201526064016102c3565b604051602001613d82906154cd565b6040516020818303038152906040528051906020012081604051602001613da991906154de565b604051602081830303815290604052805190602001201480613e145750604051602001613dd59061551a565b6040516020818303038152906040528051906020012081604051602001613dfc91906154de565b60405160208183030381529060405280519060200120145b80613e6c5750604051630c4dee8d60e31b60208201526024016040516020818303038152906040528051906020012081604051602001613e5491906154de565b60405160208183030381529060405280519060200120145b613ea15760405162461bcd60e51b815260206004820152600660248201526509884866062760d31b60448201526064016102c3565b505050565b6001600160a01b0381166000908152609a6020526040812054158015906109285750506001600160a01b03166000908152609d60205260409020541590565b600054610100900460ff16613f505760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016102c3565b611f7d33614476565b6001600160a01b038116600090815260996020526040812054158015906109285750506001600160a01b03166000908152609d60205260409020541590565b80516000906001600160a01b03163014613fdd5760405162461bcd60e51b8152602060048201526006602482015265262121981a9b60d11b60448201526064016102c3565b60405163fb19b88b60e01b815273__Quotes________________________________9063fb19b88b90613cac90859060040161528c565b6002606554036140665760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016102c3565b6002606555565b609754606086015160a08701516000848152609c602052604081205490936001600160a01b031692636adc013392899288928a92899230919063ffffffff16158015906140cf575060008b8152609c6020526040902054600160201b900460ff165b6040518963ffffffff1660e01b81526004016140f2989796959493929190615dd5565b6020604051808303816000875af1158015614111573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141359190615c68565b9695505050505050565b6000808413801561416357508460c001518561018001516141609190615581565b84105b1561417057506000610ee7565b60975460405163bd0c1fff60e01b8152600481018490526000916001600160a01b03169063bd0c1fff90602401600060405180830381865afa1580156141ba573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526141e29190810190615a78565b9050600081511161422c5760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a5908189b1bd8dac81a195a59da1d60621b60448201526064016102c3565b60006142378261282a565b90506000876101c00151886101a001516142519190615b1e565b63ffffffff1690508082111561426d5760009350505050610ee7565b856000036142815760019350505050610ee7565b6097546102008901516000916001600160a01b03169063bd0c1fff906001906142ae9061ffff168a615581565b6142b89190615441565b6040518263ffffffff1660e01b81526004016142d691815260200190565b600060405180830381865afa1580156142f3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261431b9190810190615a78565b905060008151116143575760405162461bcd60e51b81526020600482015260066024820152650988486606a760d31b60448201526064016102c3565b60006143628261282a565b9050896101e0015163ffffffff168161437b9190615581565b88111561439057600195505050505050610ee7565b5060009998505050505050505050565b60008183106143af57816143b1565b825b9392505050565b6001600160a01b038216600090815260986020526040812080548392906143e0908490615581565b90915550506040517f42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f5390610a1a9084908490615474565b3361442061249f565b6001600160a01b031614611f7d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102c3565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006144d5826004615581565b8351101561450e5760405162461bcd60e51b8152602060048201526006602482015265262121981b1960d11b60448201526064016102c3565b60188361451c846003615581565b8151811061452c5761452c615714565b016020015160f81c901b601084614544856002615581565b8151811061455457614554615714565b016020015160f81c901b60088561456c866001615581565b8151811061457c5761457c615714565b0160200151865160f89190911c90911b9086908690811061459f5761459f615714565b016020015160f81c171717905092915050565b6001600160a01b038216600090815260986020526040812080548392906145da908490615441565b90915550506040517f8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc006458790610a1a9084908490615474565b6097546040516339cf1b2560e11b81526004810183905260009182916001600160a01b039091169063739e364a90602401600060405180830381865afa15801561465f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526146879190810190615a78565b905060008151116146c35760405162461bcd60e51b81526020600482015260066024820152654c424330353960d01b60448201526064016102c3565b60006146ce8261282a565b60a3546101c0880151600088815260a7602052604090205492935090916146fb9163ffffffff1690615581565b6147059190615581565b811115614717576001925050506143b1565b856101e0015163ffffffff1642118061473a575085610200015163ffffffff1643115b1561474a576001925050506143b1565b50600095945050505050565b508054614762906155ad565b6000825580601f10614772575050565b601f0160209004906000526020600020908101906127ac91905b808211156147a0576000815560010161478c565b5090565b634e487b7160e01b600052604160045260246000fd5b60405161024081016001600160401b03811182821017156147dd576147dd6147a4565b60405290565b60405161022081016001600160401b03811182821017156147dd576147dd6147a4565b604051608081016001600160401b03811182821017156147dd576147dd6147a4565b604051601f8201601f191681016001600160401b0381118282101715614850576148506147a4565b604052919050565b80356001600160601b031981168114612cf657600080fd5b6001600160a01b03811681146127ac57600080fd5b8035612cf681614870565b60006001600160401b038211156148a9576148a96147a4565b50601f01601f191660200190565b600082601f8301126148c857600080fd5b81356148db6148d682614890565b614828565b8181528460208386010111156148f057600080fd5b816020850160208301376000918101602001919091529392505050565b803563ffffffff81168114612cf657600080fd5b8035600781900b8114612cf657600080fd5b803561ffff81168114612cf657600080fd5b80151581146127ac57600080fd5b8035612cf681614945565b6000610240828403121561497157600080fd5b6149796147ba565b905061498482614858565b815261499260208301614885565b60208201526149a360408301614885565b604082015260608201356001600160401b03808211156149c257600080fd5b6149ce858386016148b7565b60608401526149df60808501614885565b608084015260a08401359150808211156149f857600080fd5b614a04858386016148b7565b60a084015260c084013560c084015260e084013560e08401526101009150614a2d828501614885565b8284015261012091508184013581811115614a4757600080fd5b614a53868287016148b7565b83850152505050610140614a6881840161490d565b90820152610160614a7a838201614921565b9082015261018082810135908201526101a0614a9781840161490d565b908201526101c0614aa983820161490d565b908201526101e0614abb83820161490d565b90820152610200614acd838201614933565b90820152610220614adf838201614953565b9082015292915050565b600060208284031215614afb57600080fd5b81356001600160401b03811115614b1157600080fd5b610ee78482850161495e565b600060208284031215614b2f57600080fd5b5035919050565b60008060008060808587031215614b4c57600080fd5b84356001600160401b0380821115614b6357600080fd5b614b6f888389016148b7565b95506020870135915080821115614b8557600080fd5b614b91888389016148b7565b945060408701359150614ba382614945565b90925060608601359080821115614bb957600080fd5b50614bc6878288016148b7565b91505092959194509250565b600080600080600080600080610100898b031215614bef57600080fd5b8835614bfa81614870565b97506020890135965060408901359550614c1660608a0161490d565b9450614c2460808a0161490d565b935060a0890135925060c0890135915060e0890135614c4281614945565b809150509295985092959890939650565b600060208284031215614c6557600080fd5b81356143b181614870565b60006001600160401b03821115614c8957614c896147a4565b5060051b60200190565b60006020808385031215614ca657600080fd5b82356001600160401b03811115614cbc57600080fd5b8301601f81018513614ccd57600080fd5b8035614cdb6148d682614c70565b81815260059190911b82018301908381019087831115614cfa57600080fd5b928401925b82841015614d1857833582529284019290840190614cff565b979650505050505050565b6001600160a01b03169052565b60005b83811015614d4b578181015183820152602001614d33565b50506000910152565b60008151808452614d6c816020860160208601614d30565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015614e4157888303603f19018552815180518452878101516001600160a01b0316888501528681015160c088860181905290614de882870182614d54565b91505060608083015186830382880152614e028382614d54565b925050506080808301511515818701525060a08083015192508582038187015250614e2d8183614d54565b968901969450505090860190600101614da7565b509098975050505050505050565b60006102208284031215614e6257600080fd5b614e6a6147e3565b9050614e7582614885565b8152614e8360208301614885565b602082015260408201356001600160401b0380821115614ea257600080fd5b614eae858386016148b7565b6040840152614ebf60608501614885565b60608401526080840135915080821115614ed857600080fd5b614ee4858386016148b7565b608084015260a084013560a084015260c084013560c0840152614f0960e08501614921565b60e084015261010091508184013581811115614f2457600080fd5b614f30868287016148b7565b83850152505050610120808301358183015250610140614f5181840161490d565b90820152610160614f6383820161490d565b90820152610180614f75838201614933565b908201526101a0614f87838201614933565b908201526101c0614f9983820161490d565b908201526101e0614fab83820161490d565b90820152610200614adf83820161490d565b600060208284031215614fcf57600080fd5b81356001600160401b03811115614fe557600080fd5b610ee784828501614e4f565b600080600080600060a0868803121561500957600080fd5b85356001600160401b038082111561502057600080fd5b61502c89838a0161495e565b9650602088013591508082111561504257600080fd5b61504e89838a016148b7565b9550604088013591508082111561506457600080fd5b61507089838a016148b7565b9450606088013591508082111561508657600080fd5b50615093888289016148b7565b95989497509295608001359392505050565b600080604083850312156150b857600080fd5b8235915060208301356150ca81614945565b809150509250929050565b600080604083850312156150e857600080fd5b82356001600160401b03808211156150ff57600080fd5b61510b86838701614e4f565b9350602085013591508082111561512157600080fd5b5061512e858286016148b7565b9150509250929050565b6001600160a01b0391909116815260200190565b60006020828403121561515e57600080fd5b81356001600160401b0381111561517457600080fd5b610ee7848285016148b7565b6000806040838503121561519357600080fd5b82356001600160401b03808211156151aa57600080fd5b61510b8683870161495e565b600080600080600060a086880312156151ce57600080fd5b853594506020808701356001600160401b03808211156151ed57600080fd5b6151f98a838b016148b7565b96506040890135955060608901359450608089013591508082111561521d57600080fd5b508701601f8101891361522f57600080fd5b803561523d6148d682614c70565b81815260059190911b8201830190838101908b83111561525c57600080fd5b928401925b8284101561527a57833582529284019290840190615261565b80955050505050509295509295909350565b6020815261529e602082018351614d23565b600060208301516152b26040840182614d23565b5060408301516102208060608501526152cf610240850183614d54565b915060608501516152e36080860182614d23565b506080850151601f19808685030160a08701526153008483614d54565b935060a087015160c087015260c087015160e087015260e0870151915061010061532e8188018460070b9052565b8088015192505061012081878603018188015261534b8584614d54565b9088015161014088810191909152880151909450915061016090506153778187018363ffffffff169052565b86015190506101806153908682018363ffffffff169052565b86015190506101a06153a78682018361ffff169052565b86015190506101c06153be8682018361ffff169052565b86015190506101e06153d78682018363ffffffff169052565b86015190506102006153f08682018363ffffffff169052565b86015163ffffffff81168387015290505b5090949350505050565b6020808252600690820152654c424330313960d01b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b818103818111156109285761092861542b565b60208082526006908201526504c42433032360d41b604082015260600190565b6001600160a01b03929092168252602082015260400190565b6020808252600690820152654c424330323160d01b604082015260600190565b60208082526006908201526526212198191960d11b604082015260600190565b643832b3b4b760d91b815260050190565b600082516154f0818460208701614d30565b9190910192915050565b60208082526006908201526509884866060760d31b604082015260600190565b651c1959dbdd5d60d21b815260060190565b80820281158282048414176109285761092861542b565b634e487b7160e01b600052601260045260246000fd5b60008261556857615568615543565b500490565b60008261557c5761557c615543565b500690565b808201808211156109285761092861542b565b6000600182016155a6576155a661542b565b5060010190565b600181811c908216806155c157607f821691505b6020821081036155e157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115613ea157600081815260208120601f850160051c8101602086101561560e5750805b601f850160051c820191505b8181101561562d5782815560010161561a565b505050505050565b81516001600160401b0381111561564e5761564e6147a4565b6156628161565c84546155ad565b846155e7565b602080601f831160018114615697576000841561567f5750858301515b600019600386901b1c1916600185901b17855561562d565b600085815260208120601f198616915b828110156156c6578886015182559484019460019091019084016156a7565b50858210156156e45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020808252600690820152654c424330303160d01b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b60208082526006908201526509884866064760d31b604082015260600190565b60018060a01b0384168152826020820152606060408201526000611f626060830184614d54565b60006020828403121561578357600080fd5b81516143b181614945565b6020808252600690820152654c424330323960d01b604082015260600190565b6001600160a01b039390931683526020830191909152604082015260600190565b80516001600160601b0319168252600061024060208301516157f46020860182614d23565b5060408301516158076040860182614d23565b50606083015181606086015261581f82860182614d54565b91505060808301516158346080860182614d23565b5060a083015184820360a086015261584c8282614d54565b91505060c083015160c085015260e083015160e08501526101008084015161587682870182614d23565b505061012080840151858303828701526158908382614d54565b92505050610140808401516158ac8287018263ffffffff169052565b5050610160808401516158c38287018260070b9052565b505061018083810151908501526101a08084015163ffffffff908116918601919091526101c0808501518216908601526101e080850151909116908501526102008084015161ffff16908501526102208084015180151582870152615401565b60408152600061593660408301856157cf565b90508260208301529392505050565b6001600160a01b03949094168452602084019290925215156040830152606082015260800190565b63ffffffff8616815284602082015260a06040820152600061599260a0830186614d54565b931515606083015250608001529392505050565b602080825260069082015265131090cc0d8d60d21b604082015260600190565b602080825260069082015265262121981a1960d11b604082015260600190565b848152600084516159fe816020850160208901614d30565b808301905060018060601b0319851660208201528351615a25816034840160208801614d30565b016034019695505050505050565b600082601f830112615a4457600080fd5b8151615a526148d682614890565b818152846020838601011115615a6757600080fd5b610ee7826020830160208701614d30565b600060208284031215615a8a57600080fd5b81516001600160401b03811115615aa057600080fd5b610ee784828501615a33565b600160fd1b8152826001820152607560f81b602182015260008251615ad8816022850160208701614d30565b919091016022019392505050565b606081526000615af96060830186614d54565b8281036020840152615b0b8186614d54565b9150508215156040830152949350505050565b63ffffffff818116838216019080821115615b3b57615b3b61542b565b5092915050565b6020815260006143b16020830184614d54565b60006020808385031215615b6857600080fd5b82516001600160401b0380821115615b7f57600080fd5b818501915085601f830112615b9357600080fd5b8151615ba16148d682614c70565b81815260059190911b83018401908481019088831115615bc057600080fd5b8585015b83811015615c5b57805185811115615bdc5760008081fd5b86016080818c03601f1901811315615bf45760008081fd5b615bfc614806565b898301518881168114615c0f5760008081fd5b815260408381015189811115615c255760008081fd5b615c338f8d83880101615a33565b838d015250606084810151918301919091529190920151908201528352918601918601615bc4565b5098975050505050505050565b600060208284031215615c7a57600080fd5b5051919050565b600060808201868352602086818501528560408501526080606085015281855180845260a086019150828701935060005b81811015615cce57845183529383019391830191600101615cb2565b50909998505050505050505050565b6001600160401b03818116838216028082169190828114615d0057615d0061542b565b505092915050565b604081526000615d1b6040830185614d54565b905082151560208301529392505050565b6000808354615d3a816155ad565b60018281168015615d525760018114615d6757615d96565b60ff1984168752821515830287019450615d96565b8760005260208060002060005b85811015615d8d5781548a820152908401908201615d74565b50505082870194505b50929695505050505050565b6001600160401b03818116838216019080821115615b3b57615b3b61542b565b6020815260006143b160208301846157cf565b6000610100808352615de98184018c614d54565b90508960208401528281036040840152615e03818a614d54565b90508760608401528281036080840152615e1d8188614d54565b6001600160a01b03871660a085015283810360c08501529050615e408186614d54565b91505082151560e0830152999850505050505050505056fe3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f69685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80da2646970667358221220529ecc3983548e4c0de367c561e09d1b7592e7cde5b4e080f8f0ef92f43d315064736f6c63430008120033", + "deployedBytecode": "0x60806040526004361061027f5760003560e01c806304ade855146102d35780630a7bf57a146102ff5780630a9cb4a7146103145780631b032188146103335780632e1a7d4d1461035357806333f07ad31461037357806335510a7d14610388578063417055181461039d578063418663a2146103b05780634198687e146103da5780634533ac1c146103e2578063457385f2146104025780634d0ec9711461043257806354015ee01461045257806359c153be14610485578063668dbd831461049a57806369023235146104c757806369652fcf146104e75780636e2e8c70146104fc578063715018a61461051c57806372cbf4e8146105315780637b78837f146105515780638490a8df146105645780638d5979391461057a5780638da5cb5b146105915780638f91797d146105b35780639b56d6c9146105d35780639cd6557f146106095780639d79b59b1461061e5780639e81699914610647578063a0cd70fc1461064f578063a0d250371461066f578063a4a5ba501461068f578063a93bb247146106a4578063ac29d744146106bb578063ae76ce86146106ce578063ae93b67b146106e5578063bd519eff146106fc578063bd5798c314610732578063be6de4eb14610754578063c525cdd814610769578063c721316314610780578063cfb92f0a1461079b578063d0e30db0146107b2578063d6c70de8146107ba578063e1de16c6146107da578063e30e6ea3146107f0578063e5b5019a14610806578063e78cea921461081c578063e830b6901461083c578063e8fcce7114610851578063e90d2ddb14610867578063f2fde38b14610894578063f8b2cb4f146108b4578063fa88dcde146108ea578063fb32c508146108ff57600080fd5b366102ce576097546001600160a01b031633146102cc5760405162461bcd60e51b81526020600482015260066024820152654c424330303760d01b60448201526064015b60405180910390fd5b005b600080fd5b3480156102df57600080fd5b506102e8600181565b60405160ff90911681526020015b60405180910390f35b34801561030b57600080fd5b506102e8600281565b34801561032057600080fd5b5060a2545b6040519081526020016102f6565b34801561033f57600080fd5b5061032561034e366004614ae9565b61091d565b34801561035f57600080fd5b506102cc61036e366004614b1d565b61092e565b34801561037f57600080fd5b5060a154610325565b34801561039457600080fd5b506102cc610a26565b6103256103ab366004614b36565b610b54565b3480156103bc57600080fd5b506103c76101301981565b60405160019190910b81526020016102f6565b6102cc610eef565b3480156103ee57600080fd5b506102cc6103fd366004614bd2565b610f74565b34801561040e57600080fd5b5061042261041d366004614c53565b6111b3565b60405190151581526020016102f6565b34801561043e57600080fd5b5061042261044d366004614c53565b6111e9565b34801561045e57600080fd5b5061042261046d366004614b1d565b600090815260a7602052604090206001015460ff1690565b34801561049157600080fd5b506102cc61121f565b3480156104a657600080fd5b506104ba6104b5366004614c93565b61134d565b6040516102f69190614d80565b3480156104d357600080fd5b506103256104e2366004614fbd565b6116ce565b3480156104f357600080fd5b506102cc6116d9565b34801561050857600080fd5b50610325610517366004614ff1565b611784565b34801561052857600080fd5b506102cc611f6b565b34801561053d57600080fd5b506102cc61054c3660046150a5565b611f7f565b6102cc61055f3660046150d5565b612019565b34801561057057600080fd5b5061032560a25481565b34801561058657600080fd5b506103c761012c1981565b34801561059d57600080fd5b506105a661249f565b6040516102f69190615138565b3480156105bf57600080fd5b506102cc6105ce366004614b1d565b6124ae565b3480156105df57600080fd5b506103256105ee366004614c53565b6001600160a01b031660009081526099602052604090205490565b34801561061557600080fd5b506102e8600081565b34801561062a57600080fd5b506106346188b881565b60405161ffff90911681526020016102f6565b6102cc6127af565b34801561065b57600080fd5b5061032561066a36600461514c565b61282a565b34801561067b57600080fd5b5061042261068a366004615180565b61287d565b34801561069b57600080fd5b50610325600181565b3480156106b057600080fd5b506103c761012d1981565b6104226106c9366004614ae9565b6129e9565b3480156106da57600080fd5b506103c761012b1981565b3480156106f157600080fd5b506103c76103831981565b34801561070857600080fd5b50610325610717366004614c53565b6001600160a01b03166000908152609a602052604090205490565b34801561073e57600080fd5b5060a054600160201b900463ffffffff16610325565b34801561076057600080fd5b50610325600081565b34801561077557600080fd5b506103c761012e1981565b34801561078c57600080fd5b5060a05463ffffffff16610325565b3480156107a757600080fd5b506103c761012f1981565b6102cc612cfb565b3480156107c657600080fd5b506102cc6107d53660046151b6565b612d2a565b3480156107e657600080fd5b506106346108fc81565b3480156107fc57600080fd5b506103c760c71981565b34801561081257600080fd5b5061032560001981565b34801561082857600080fd5b506097546105a6906001600160a01b031681565b34801561084857600080fd5b50609e54610325565b34801561085d57600080fd5b506103c760631981565b34801561087357600080fd5b50610887610882366004614b1d565b6136f6565b6040516102f6919061528c565b3480156108a057600080fd5b506102cc6108af366004614c53565b613a21565b3480156108c057600080fd5b506103256108cf366004614c53565b6001600160a01b031660009081526098602052604090205490565b3480156108f657600080fd5b50609f54610325565b34801561090b57600080fd5b506097546001600160a01b03166105a6565b600061092882613a97565b92915050565b3360009081526098602052604090205481111561095d5760405162461bcd60e51b81526004016102c39061540b565b336000908152609860205260408120805483929061097c908490615441565b9091555050604051600090339083908381818185875af1925050503d80600081146109c3576040519150601f19603f3d011682016040523d82523d6000602084013e6109c8565b606091505b50509050806109e95760405162461bcd60e51b81526004016102c390615454565b7f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b653383604051610a1a929190615474565b60405180910390a15050565b336000908152609d6020526040902054610a525760405162461bcd60e51b81526004016102c39061548d565b60a054336000908152609d6020526040902054600160201b90910463ffffffff1690610a7e9043615441565b1015610a9c5760405162461bcd60e51b81526004016102c3906154ad565b336000818152609a60209081526040808320805490849055609d9092528083208390555190929083908381818185875af1925050503d8060008114610afd576040519150601f19603f3d011682016040523d82523d6000602084013e610b02565b606091505b5050905080610b235760405162461bcd60e51b81526004016102c390615454565b7ffc72299650b405e7b0480ca8fb0fb3948fb10a77ac02f797cc9de1f4aaa55db73383604051610a1a929190615474565b6000323314610b8e5760405162461bcd60e51b81526020600482015260066024820152654c424330303360d01b60448201526064016102c3565b610b99858584613cff565b33600090815260996020526040902054158015610bc35750336000908152609a6020526040902054155b610bf85760405162461bcd60e51b815260206004820152600660248201526504c42433037360d41b60448201526064016102c3565b336000908152609d602052604090205415610c3e5760405162461bcd60e51b81526020600482015260066024820152654c424330303960d01b60448201526064016102c3565b604051602001610c4d906154cd565b6040516020818303038152906040528051906020012082604051602001610c7491906154de565b6040516020818303038152906040528051906020012003610cc857609e54341015610cb15760405162461bcd60e51b81526004016102c3906154fa565b336000908152609960205260409020349055610dcd565b604051602001610cd79061551a565b6040516020818303038152906040528051906020012082604051602001610cfe91906154de565b6040516020818303038152906040528051906020012003610d5257609e54341015610d3b5760405162461bcd60e51b81526004016102c3906154fa565b336000908152609a60205260409020349055610dcd565b609e54610d6090600261552c565b341015610d7f5760405162461bcd60e51b81526004016102c3906154fa565b6000610d8c600234615559565b9050610d9960023461556d565b15610dae57610da9816001615581565b610db0565b805b33600090815260996020908152604080832093909355609a905220555b60a28054906000610ddd83615594565b90915550506040805160c08101825260a2548082523360208084019182528385018a8152606085018a9052881515608086015260a085018890526000938452609b909152939091208251815590516001820180546001600160a01b0319166001600160a01b0390921691909117905591519091906002820190610e609082615635565b5060608201516003820190610e759082615635565b50608082015160048201805460ff191691151591909117905560a08201516005820190610ea29082615635565b505060a254604080519182523460208301523392507fa9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e910160405180910390a25060a2545b949350505050565b610ef833613ea6565b610f145760405162461bcd60e51b81526004016102c3906156f4565b336000908152609a602052604081208054349290610f33908490615581565b90915550506040517f873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa990610f6a9033903490615474565b60405180910390a1565b600054610100900460ff1615808015610f945750600054600160ff909116105b80610fae5750303b158015610fae575060005460ff166001145b6110115760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016102c3565b6000805460ff191660011790558015611034576000805461ff0019166101001790555b60648663ffffffff1611156110745760405162461bcd60e51b8152602060048201526006602482015265131090cc0c0d60d21b60448201526064016102c3565b666a94d74f4300008810156110b45760405162461bcd60e51b8152602060048201526006602482015265262121981b9960d11b60448201526064016102c3565b603c8563ffffffff1610156110f45760405162461bcd60e51b81526020600482015260066024820152654c424330373360d01b60448201526064016102c3565b6110fc613ee5565b609780546001600160a01b038b166001600160a01b0319909116179055609e889055609f87905560a0805463ffffffff878116600160201b026001600160401b03199092169089161717905560a184905560a383905560a4805483151560ff1990911617905580156111a8576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050505050565b60006111be82613f59565b80156109285750609e546001600160a01b038316600090815260996020526040902054101592915050565b60006111f482613ea6565b80156109285750609e546001600160a01b0383166000908152609a6020526040902054101592915050565b336000908152609d602052604090205461124b5760405162461bcd60e51b81526004016102c39061548d565b60a054336000908152609d6020526040902054600160201b90910463ffffffff16906112779043615441565b10156112955760405162461bcd60e51b81526004016102c3906154ad565b336000818152609960209081526040808320805490849055609d9092528083208390555190929083908381818185875af1925050503d80600081146112f6576040519150601f19603f3d011682016040523d82523d6000602084013e6112fb565b606091505b505090508061131c5760405162461bcd60e51b81526004016102c390615454565b7fa8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d23383604051610a1a929190615474565b6060600082516001600160401b0381111561136a5761136a6147a4565b6040519080825280602002602001820160405280156113df57816020015b6113cc6040518060c001604052806000815260200160006001600160a01b031681526020016060815260200160608152602001600015158152602001606081525090565b8152602001906001900390816113885790505b5090506000805b84518110156116c557600085828151811061140357611403615714565b6020908102919091018101516000818152609b909252604090912060010154909150611437906001600160a01b0316613f59565b8061146157506000818152609b6020526040902060010154611461906001600160a01b0316613ea6565b801561147e57506000818152609b602052604090206004015460ff165b156116b2576000818152609b6020908152604091829020825160c0810184528154815260018201546001600160a01b03169281019290925260028101805492939192918401916114cd906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546114f9906155ad565b80156115465780601f1061151b57610100808354040283529160200191611546565b820191906000526020600020905b81548152906001019060200180831161152957829003601f168201915b5050505050815260200160038201805461155f906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461158b906155ad565b80156115d85780601f106115ad576101008083540402835291602001916115d8565b820191906000526020600020905b8154815290600101906020018083116115bb57829003601f168201915b5050509183525050600482015460ff1615156020820152600582018054604090920191611604906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054611630906155ad565b801561167d5780601f106116525761010080835404028352916020019161167d565b820191906000526020600020905b81548152906001019060200180831161166057829003601f168201915b50505050508152505084848151811061169857611698615714565b602002602001018190525082806116ae90615594565b9350505b50806116bd81615594565b9150506113e6565b50909392505050565b600061092882613f98565b6116e233613f59565b6116fe5760405162461bcd60e51b81526004016102c3906156f4565b336000908152609d6020526040902054156117445760405162461bcd60e51b81526020600482015260066024820152654c424330323360d01b60448201526064016102c3565b336000818152609d602052604090819020439055517fa6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d8691610f6a91615138565b600061178e614014565b600061179987613a97565b600081815260a56020526040902054909150600160ff90911611156117d05760405162461bcd60e51b81526004016102c39061572a565b60408088015190516301a86b5560e41b815273__SignatureValidator____________________91631a86b5509161180f919085908b9060040161574a565b602060405180830381865af415801561182c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118509190615771565b61186c5760405162461bcd60e51b81526004016102c39061578e565b637fffffff83106118a85760405162461bcd60e51b815260206004820152600660248201526504c42433033360d41b60448201526064016102c3565b60006118b7888787878661406d565b905061012f81016118f35760405162461bcd60e51b81526020600482015260066024820152654c424330333160d01b60448201526064016102c3565b61012e810161192d5760405162461bcd60e51b815260206004820152600660248201526526212198199960d11b60448201526064016102c3565b61013081016119675760405162461bcd60e51b81526020600482015260066024820152654c424330333360d01b60448201526064016102c3565b61013181016119a15760405162461bcd60e51b8152602060048201526006602482015265131090cc0ccd60d21b60448201526064016102c3565b61038481016119db5760405162461bcd60e51b81526020600482015260066024820152654c424330333560d01b60448201526064016102c3565b60008113806119eb575060c71981145b806119f7575060631981145b611a2c5760405162461bcd60e51b815260206004820152600660248201526526212198199b60d11b60448201526064016102c3565b6000828152609c6020526040902054611a4f908990839063ffffffff168761413f565b15611b205760e08801516040808a01516001600160a01b031660009081526099602052908120549091611a81916143a0565b905080609960008b604001516001600160a01b03166001600160a01b031681526020019081526020016000206000828254611abc9190615441565b90915550506040808a01519051600080516020615e7983398151915291611ae691849087906157ae565b60405180910390a160a054600090606490611b079063ffffffff168461552c565b611b119190615559565b9050611b1d33826143b8565b50505b60c719811480611b31575060631981145b15611ba557600082815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff1916905581518481529081018390527ffb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe910160405180910390a19150611f589050565b60405162e7a37960e21b8152819073__Quotes________________________________9063039e8de490611bdf908c908590600401615923565b60006040518083038186803b158015611bf757600080fd5b505af4158015611c0b573d6000803e3d6000fd5b5050506000848152609c602052604090205463ffffffff16159050611d4c576000838152609c6020526040812054600160201b900460ff1615611c6d57611c66828b60c001518c6101800151611c619190615581565b6143a0565b9050611c7e565b611c7b828b60c001516143a0565b90505b611c8c8a60400151826143b8565b6000611c988284615441565b905060a154811115611d455760808b01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611cf8576040519150601f19603f3d011682016040523d82523d6000602084013e611cfd565b606091505b50509050600080516020615e598339815191528c60800151838389604051611d289493929190615945565b60405180910390a180611d4357611d438c60400151836143b8565b505b5050611ef1565b61022089015181908015611d6557508961018001518110155b15611e575760008a61010001516001600160a01b03168b610140015163ffffffff168c61018001518d6101200151604051611da091906154de565b600060405180830381858888f193505050503d8060008114611dde576040519150601f19603f3d011682016040523d82523d6000602084013e611de3565b606091505b505090508a61010001516001600160a01b0316336001600160a01b0316600080516020615e998339815191528d61014001518e61018001518f6101200151868b604051611e3495949392919061596d565b60405180910390a38015611e55576101808b0151611e529083615441565b91505b505b60a154811115611eef5760808a01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611eb5576040519150601f19603f3d011682016040523d82523d6000602084013e611eba565b606091505b50509050600080516020615e598339815191528b60800151838388604051611ee59493929190615945565b60405180910390a1505b505b600083815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff19169055905183815284917f0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2910160405180910390a2509150505b611f626001606555565b95945050505050565b611f73614417565b611f7d6000614476565b565b81611f8861249f565b6001600160a01b0316336001600160a01b03161480611fc057506000818152609b60205260409020600101546001600160a01b031633145b611ff55760405162461bcd60e51b81526020600482015260066024820152654c424330303560d01b60448201526064016102c3565b506000918252609b6020526040909120600401805460ff1916911515919091179055565b6120268260200151613ea6565b61205b5760405162461bcd60e51b81526020600482015260066024820152654c424330333760d01b60448201526064016102c3565b348260a001518361012001516120719190615581565b11156120a85760405162461bcd60e51b81526020600482015260066024820152654c424330363360d01b60448201526064016102c3565b81610160015163ffffffff164211156120ec5760405162461bcd60e51b81526020600482015260066024820152654c424330363560d01b60448201526064016102c3565b816101e0015163ffffffff164211156121305760405162461bcd60e51b8152602060048201526006602482015265262121981a1b60d11b60448201526064016102c3565b81610200015163ffffffff164311156121745760405162461bcd60e51b81526020600482015260066024820152654c424330343760d01b60448201526064016102c3565b600061217f836116ce565b60208401516040516301a86b5560e41b815291925073__SignatureValidator____________________91631a86b550916121c0918590879060040161574a565b602060405180830381865af41580156121dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122019190615771565b61221d5760405162461bcd60e51b81526004016102c39061578e565b600081815260a66020908152604080832060a79092529091206001015460ff161561225a5760405162461bcd60e51b81526004016102c3906159a6565b80546001600160a01b0316156122825760405162461bcd60e51b81526004016102c39061572a565b600082815260a66020908152604091829020865181546001600160a01b03199081166001600160a01b03928316178355928801516001830180549094169116179091559085015185919060028201906122db9082615635565b5060608201516003820180546001600160a01b0319166001600160a01b03909216919091179055608082015160048201906123169082615635565b5060a0820151600582015560c0820151600682015560e08201516007820180546001600160401b0319166001600160401b0390921691909117905561010082015160088201906123669082615635565b506101208201516009820155610140820151600a90910180546101608401516101808501516101a08601516101c08701516101e08801516102009098015163ffffffff9788166001600160401b031990961695909517600160201b948816949094029390931763ffffffff60401b1916600160401b61ffff9384160261ffff60501b191617600160501b929091169190910217600160601b600160a01b031916600160601b9185169190910263ffffffff60801b191617600160801b948416949094029390931763ffffffff60a01b1916600160a01b9290931691909102919091179055600082815260a760209081526040918290204290819055825134815291820152339184917fb1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f910160405180910390a350505050565b6033546001600160a01b031690565b6124b6614014565b600081815260a66020526040902080546001600160a01b03166124eb5760405162461bcd60e51b81526004016102c3906159c6565b600a810154600160801b900463ffffffff164211801561251b5750600a810154600160a01b900463ffffffff1643115b6125505760405162461bcd60e51b81526020600482015260066024820152654c424330343160d01b60448201526064016102c3565b6000816005015482600901546125669190615581565b6003830154600684015460018501546001600160a01b039081166000908152609a602052604081205494955092169261259f91906143a0565b60018501546001600160a01b03166000908152609a60205260408120805492935083929091906125d0908490615441565b90915550506001840154604051600080516020615e7983398151915291612606916001600160a01b0390911690849089906157ae565b60405180910390a16003840154604080518581526001600160a01b03909216602083015286917f9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41910160405180910390a2600085815260a66020526040812080546001600160a01b0319908116825560018201805490911690559061268e6002830182614756565b6003820180546001600160a01b03191690556126ae600483016000614756565b600060058301819055600683018190556007830180546001600160401b03191690556126de906008840190614756565b50600060098201819055600a90910180546001600160c01b031916905585815260a760205260408082206001908101805460ff19169091179055516001600160a01b0384169085908381818185875af1925050503d806000811461275e576040519150601f19603f3d011682016040523d82523d6000602084013e612763565b606091505b505090508061279d5760405162461bcd60e51b8152602060048201526006602482015265131090cc0d0d60d21b60448201526064016102c3565b50505050506127ac6001606555565b50565b6127b833613f59565b6127d45760405162461bcd60e51b81526004016102c3906156f4565b33600090815260996020526040812080543492906127f3908490615581565b90915550506040517f456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af8490610f6a9033903490615474565b600081516050146128665760405162461bcd60e51b81526020600482015260066024820152654c424330363160d01b60448201526064016102c3565b6128718260446144c8565b63ffffffff1692915050565b6000806128898461091d565b8460600151856020015160601b8660a001516040516020016128ae94939291906159e6565b604051602081830303815290604052805190602001209050600081609760009054906101000a90046001600160a01b03166001600160a01b0316631d73d5dd6040518163ffffffff1660e01b8152600401600060405180830381865afa15801561291c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526129449190810190615a78565b604051602001612955929190615aac565b60408051601f198184030181529082905260a454639b02794b60e01b835290925073__BtcUtils______________________________91639b02794b916129a8918891869160ff90911690600401615ae6565b602060405180830381865af41580156129c5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f629190615771565b60006129f433613f59565b612a105760405162461bcd60e51b81526004016102c3906156f4565b612a18614014565b81604001516001600160a01b0316336001600160a01b031614612a665760405162461bcd60e51b8152602060048201526006602482015265131090cc0c8d60d21b60448201526064016102c3565b6101808201516040808401516001600160a01b0316600090815260986020522054612a92903490615581565b1015612ab05760405162461bcd60e51b81526004016102c39061540b565b6000612abb83613a97565b600081815260a5602052604090205490915060ff1615612b065760405162461bcd60e51b81526020600482015260066024820152654c424330323560d01b60448201526064016102c3565b612b148360400151346143b8565b610140830151612b27906188b890615b1e565b63ffffffff165a1015612b655760405162461bcd60e51b815260206004820152600660248201526526212198191b60d11b60448201526064016102c3565b60008361010001516001600160a01b031684610140015163ffffffff16856101800151866101200151604051612b9b91906154de565b600060405180830381858888f193505050503d8060008114612bd9576040519150601f19603f3d011682016040523d82523d6000602084013e612bde565b606091505b509091505063ffffffff421115612c205760405162461bcd60e51b81526020600482015260066024820152654c424330323760d01b60448201526064016102c3565b6000828152609c60205260409020805463ffffffff19164263ffffffff161790558015612c7b576000828152609c602052604090819020805460ff60201b1916600160201b179055840151610180850151612c7b91906145b2565b8361010001516001600160a01b0316336001600160a01b0316600080516020615e998339815191528661014001518761018001518861012001518688604051612cc895949392919061596d565b60405180910390a3600091825260a56020526040909120805460ff191660011790559050612cf66001606555565b919050565b612d0433613f59565b612d205760405162461bcd60e51b81526004016102c3906156f4565b611f7d33346143b8565b612d32614014565b612d3b33613ea6565b612d575760405162461bcd60e51b81526004016102c3906156f4565b600085815260a7602052604090206001015460ff1615612d895760405162461bcd60e51b81526004016102c3906159a6565b600085815260a66020526040902080546001600160a01b0316612dbe5760405162461bcd60e51b81526004016102c3906159c6565b60405162f5b49160e01b815260009073__BtcUtils______________________________9062f5b49190612df6908990600401615b42565b600060405180830381865af4158015612e13573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612e3b9190810190615b55565b9050600073__BtcUtils______________________________632d56f32383600181518110612e6c57612e6c615714565b6020026020010151602001516040518263ffffffff1660e01b8152600401612e949190615b42565b600060405180830381865af4158015612eb1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612ed99190810190615a78565b806020019051810190612eec9190615c68565b9050808814612f265760405162461bcd60e51b81526020600482015260066024820152654c424330363960d01b60448201526064016102c3565b60018301546001600160a01b03163314612f6b5760405162461bcd60e51b815260206004820152600660248201526509884866068760d31b60448201526064016102c3565b600a83015460975460405163fea8ba6360e01b8152600160501b90920461ffff16916001600160a01b0390911690635b6445879073__BtcUtils______________________________9063fea8ba6390612fc9908d90600401615b42565b602060405180830381865af4158015612fe6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061300a9190615c68565b8989896040518563ffffffff1660e01b815260040161302c9493929190615c81565b602060405180830381865afa158015613049573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061306d9190615c68565b12156130a45760405162461bcd60e51b81526020600482015260066024820152654c424330343960d01b60448201526064016102c3565b816000815181106130b7576130b7615714565b6020026020010151600001516402540be4006130d39190615cdd565b6001600160401b0316836009015411156131185760405162461bcd60e51b81526020600482015260066024820152654c424330363760d01b60448201526064016102c3565b600073__BtcUtils______________________________634c03fe598460008151811061314757613147615714565b602090810291909101810151015160a4546040516001600160e01b031960e085901b16815261317d929160ff1690600401615d08565b600060405180830381865af415801561319a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131c29190810190615a78565b90508080519060200120846008016040516131dd9190615d2c565b60405180910390201461321b5760405162461bcd60e51b81526020600482015260066024820152650988486606c760d31b60448201526064016102c3565b604080516102208101825285546001600160a01b03908116825260018701541660208201526002860180546134b693889290840191613259906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054613285906155ad565b80156132d25780601f106132a7576101008083540402835291602001916132d2565b820191906000526020600020905b8154815290600101906020018083116132b557829003601f168201915b505050918352505060038201546001600160a01b03166020820152600482018054604090920191613302906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461332e906155ad565b801561337b5780601f106133505761010080835404028352916020019161337b565b820191906000526020600020905b81548152906001019060200180831161335e57829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b60608201526008820180546080909201916133b9906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546133e5906155ad565b80156134325780601f1061340757610100808354040283529160200191613432565b820191906000526020600020905b81548152906001019060200180831161341557829003601f168201915b505050918352505060098201546020820152600a9091015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b90910416610100909101528389614611565b1561355957600684015460018501546001600160a01b03166000908152609a602052604081205490916134e8916143a0565b60018601546001600160a01b03166000908152609a6020526040812080549293508392909190613519908490615441565b90915550506001850154604051600080516020615e798339815191529161354f916001600160a01b0390911690849087906157ae565b60405180910390a1505b6001840154600585015460098601546000926001600160a01b03169161357e91615581565b604051600081818185875af1925050503d80600081146135ba576040519150601f19603f3d011682016040523d82523d6000602084013e6135bf565b606091505b50509050806135f95760405162461bcd60e51b815260206004820152600660248201526504c42433035360d41b60448201526064016102c3565b600083815260a66020526040812080546001600160a01b031990811682556001820180549091169055906136306002830182614756565b6003820180546001600160a01b0319169055613650600483016000614756565b600060058301819055600683018190556007830180546001600160401b0319169055613680906008840190614756565b50600060098201819055600a90910180546001600160c01b031916905583815260a760205260408082206001908101805460ff191690911790555184917fb781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb38491a250505050506136ef6001606555565b5050505050565b6040805161022080820183526000808352602080840182905260608486018190528085018390526080850181905260a0850183905260c0850183905260e0850183905261010085015261012084018290526101408401829052610160840182905261018084018290526101a084018290526101c084018290526101e08401829052610200840182905285825260a68152908490208451928301855280546001600160a01b039081168452600182015416918301919091526002810180549394929391928401916137c5906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546137f1906155ad565b801561383e5780601f106138135761010080835404028352916020019161383e565b820191906000526020600020905b81548152906001019060200180831161382157829003601f168201915b505050918352505060038201546001600160a01b0316602082015260048201805460409092019161386e906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461389a906155ad565b80156138e75780601f106138bc576101008083540402835291602001916138e7565b820191906000526020600020905b8154815290600101906020018083116138ca57829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b6060820152600882018054608090920191613925906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054613951906155ad565b801561399e5780601f106139735761010080835404028352916020019161399e565b820191906000526020600020905b81548152906001019060200180831161398157829003601f168201915b505050918352505060098201546020820152600a9091015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b909104166101009091015292915050565b613a29614417565b6001600160a01b038116613a8e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102c3565b6127ac81614476565b600081602001516001600160a01b0316306001600160a01b031614613ae75760405162461bcd60e51b81526020600482015260066024820152654c424330353160d01b60448201526064016102c3565b6101008201516097546001600160a01b03918216911603613b335760405162461bcd60e51b8152602060048201526006602482015265262121981a9960d11b60448201526064016102c3565b81606001515160151480613b4c57508160600151516021145b613b815760405162461bcd60e51b81526020600482015260066024820152654c424330353360d01b60448201526064016102c3565b8160a0015151601514613bbf5760405162461bcd60e51b8152602060048201526006602482015265131090cc0d4d60d21b60448201526064016102c3565b609f548260c00151836101800151613bd79190615581565b1015613c0e5760405162461bcd60e51b81526020600482015260066024820152654c424330353560d01b60448201526064016102c3565b816101c0015163ffffffff16826101a0015163ffffffff16613c309190615da2565b6001600160401b031663ffffffff1015613c755760405162461bcd60e51b81526020600482015260066024820152654c424330373160d01b60448201526064016102c3565b604051630fdeb30b60e21b815273__Quotes________________________________90633f7acc2c90613cac908590600401615dc2565b600060405180830381865af4158015613cc9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613cf19190810190615a78565b805190602001209050919050565b6000835111613d395760405162461bcd60e51b815260206004820152600660248201526504c42433031360d41b60448201526064016102c3565b6000825111613d735760405162461bcd60e51b81526020600482015260066024820152654c424330313760d01b60448201526064016102c3565b604051602001613d82906154cd565b6040516020818303038152906040528051906020012081604051602001613da991906154de565b604051602081830303815290604052805190602001201480613e145750604051602001613dd59061551a565b6040516020818303038152906040528051906020012081604051602001613dfc91906154de565b60405160208183030381529060405280519060200120145b80613e6c5750604051630c4dee8d60e31b60208201526024016040516020818303038152906040528051906020012081604051602001613e5491906154de565b60405160208183030381529060405280519060200120145b613ea15760405162461bcd60e51b815260206004820152600660248201526509884866062760d31b60448201526064016102c3565b505050565b6001600160a01b0381166000908152609a6020526040812054158015906109285750506001600160a01b03166000908152609d60205260409020541590565b600054610100900460ff16613f505760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016102c3565b611f7d33614476565b6001600160a01b038116600090815260996020526040812054158015906109285750506001600160a01b03166000908152609d60205260409020541590565b80516000906001600160a01b03163014613fdd5760405162461bcd60e51b8152602060048201526006602482015265262121981a9b60d11b60448201526064016102c3565b60405163fb19b88b60e01b815273__Quotes________________________________9063fb19b88b90613cac90859060040161528c565b6002606554036140665760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016102c3565b6002606555565b609754606086015160a08701516000848152609c602052604081205490936001600160a01b031692636adc013392899288928a92899230919063ffffffff16158015906140cf575060008b8152609c6020526040902054600160201b900460ff165b6040518963ffffffff1660e01b81526004016140f2989796959493929190615dd5565b6020604051808303816000875af1158015614111573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141359190615c68565b9695505050505050565b6000808413801561416357508460c001518561018001516141609190615581565b84105b1561417057506000610ee7565b60975460405163bd0c1fff60e01b8152600481018490526000916001600160a01b03169063bd0c1fff90602401600060405180830381865afa1580156141ba573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526141e29190810190615a78565b9050600081511161422c5760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a5908189b1bd8dac81a195a59da1d60621b60448201526064016102c3565b60006142378261282a565b90506000876101c00151886101a001516142519190615b1e565b63ffffffff1690508082111561426d5760009350505050610ee7565b856000036142815760019350505050610ee7565b6097546102008901516000916001600160a01b03169063bd0c1fff906001906142ae9061ffff168a615581565b6142b89190615441565b6040518263ffffffff1660e01b81526004016142d691815260200190565b600060405180830381865afa1580156142f3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261431b9190810190615a78565b905060008151116143575760405162461bcd60e51b81526020600482015260066024820152650988486606a760d31b60448201526064016102c3565b60006143628261282a565b9050896101e0015163ffffffff168161437b9190615581565b88111561439057600195505050505050610ee7565b5060009998505050505050505050565b60008183106143af57816143b1565b825b9392505050565b6001600160a01b038216600090815260986020526040812080548392906143e0908490615581565b90915550506040517f42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f5390610a1a9084908490615474565b3361442061249f565b6001600160a01b031614611f7d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102c3565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006144d5826004615581565b8351101561450e5760405162461bcd60e51b8152602060048201526006602482015265262121981b1960d11b60448201526064016102c3565b60188361451c846003615581565b8151811061452c5761452c615714565b016020015160f81c901b601084614544856002615581565b8151811061455457614554615714565b016020015160f81c901b60088561456c866001615581565b8151811061457c5761457c615714565b0160200151865160f89190911c90911b9086908690811061459f5761459f615714565b016020015160f81c171717905092915050565b6001600160a01b038216600090815260986020526040812080548392906145da908490615441565b90915550506040517f8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc006458790610a1a9084908490615474565b6097546040516339cf1b2560e11b81526004810183905260009182916001600160a01b039091169063739e364a90602401600060405180830381865afa15801561465f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526146879190810190615a78565b905060008151116146c35760405162461bcd60e51b81526020600482015260066024820152654c424330353960d01b60448201526064016102c3565b60006146ce8261282a565b60a3546101c0880151600088815260a7602052604090205492935090916146fb9163ffffffff1690615581565b6147059190615581565b811115614717576001925050506143b1565b856101e0015163ffffffff1642118061473a575085610200015163ffffffff1643115b1561474a576001925050506143b1565b50600095945050505050565b508054614762906155ad565b6000825580601f10614772575050565b601f0160209004906000526020600020908101906127ac91905b808211156147a0576000815560010161478c565b5090565b634e487b7160e01b600052604160045260246000fd5b60405161024081016001600160401b03811182821017156147dd576147dd6147a4565b60405290565b60405161022081016001600160401b03811182821017156147dd576147dd6147a4565b604051608081016001600160401b03811182821017156147dd576147dd6147a4565b604051601f8201601f191681016001600160401b0381118282101715614850576148506147a4565b604052919050565b80356001600160601b031981168114612cf657600080fd5b6001600160a01b03811681146127ac57600080fd5b8035612cf681614870565b60006001600160401b038211156148a9576148a96147a4565b50601f01601f191660200190565b600082601f8301126148c857600080fd5b81356148db6148d682614890565b614828565b8181528460208386010111156148f057600080fd5b816020850160208301376000918101602001919091529392505050565b803563ffffffff81168114612cf657600080fd5b8035600781900b8114612cf657600080fd5b803561ffff81168114612cf657600080fd5b80151581146127ac57600080fd5b8035612cf681614945565b6000610240828403121561497157600080fd5b6149796147ba565b905061498482614858565b815261499260208301614885565b60208201526149a360408301614885565b604082015260608201356001600160401b03808211156149c257600080fd5b6149ce858386016148b7565b60608401526149df60808501614885565b608084015260a08401359150808211156149f857600080fd5b614a04858386016148b7565b60a084015260c084013560c084015260e084013560e08401526101009150614a2d828501614885565b8284015261012091508184013581811115614a4757600080fd5b614a53868287016148b7565b83850152505050610140614a6881840161490d565b90820152610160614a7a838201614921565b9082015261018082810135908201526101a0614a9781840161490d565b908201526101c0614aa983820161490d565b908201526101e0614abb83820161490d565b90820152610200614acd838201614933565b90820152610220614adf838201614953565b9082015292915050565b600060208284031215614afb57600080fd5b81356001600160401b03811115614b1157600080fd5b610ee78482850161495e565b600060208284031215614b2f57600080fd5b5035919050565b60008060008060808587031215614b4c57600080fd5b84356001600160401b0380821115614b6357600080fd5b614b6f888389016148b7565b95506020870135915080821115614b8557600080fd5b614b91888389016148b7565b945060408701359150614ba382614945565b90925060608601359080821115614bb957600080fd5b50614bc6878288016148b7565b91505092959194509250565b600080600080600080600080610100898b031215614bef57600080fd5b8835614bfa81614870565b97506020890135965060408901359550614c1660608a0161490d565b9450614c2460808a0161490d565b935060a0890135925060c0890135915060e0890135614c4281614945565b809150509295985092959890939650565b600060208284031215614c6557600080fd5b81356143b181614870565b60006001600160401b03821115614c8957614c896147a4565b5060051b60200190565b60006020808385031215614ca657600080fd5b82356001600160401b03811115614cbc57600080fd5b8301601f81018513614ccd57600080fd5b8035614cdb6148d682614c70565b81815260059190911b82018301908381019087831115614cfa57600080fd5b928401925b82841015614d1857833582529284019290840190614cff565b979650505050505050565b6001600160a01b03169052565b60005b83811015614d4b578181015183820152602001614d33565b50506000910152565b60008151808452614d6c816020860160208601614d30565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015614e4157888303603f19018552815180518452878101516001600160a01b0316888501528681015160c088860181905290614de882870182614d54565b91505060608083015186830382880152614e028382614d54565b925050506080808301511515818701525060a08083015192508582038187015250614e2d8183614d54565b968901969450505090860190600101614da7565b509098975050505050505050565b60006102208284031215614e6257600080fd5b614e6a6147e3565b9050614e7582614885565b8152614e8360208301614885565b602082015260408201356001600160401b0380821115614ea257600080fd5b614eae858386016148b7565b6040840152614ebf60608501614885565b60608401526080840135915080821115614ed857600080fd5b614ee4858386016148b7565b608084015260a084013560a084015260c084013560c0840152614f0960e08501614921565b60e084015261010091508184013581811115614f2457600080fd5b614f30868287016148b7565b83850152505050610120808301358183015250610140614f5181840161490d565b90820152610160614f6383820161490d565b90820152610180614f75838201614933565b908201526101a0614f87838201614933565b908201526101c0614f9983820161490d565b908201526101e0614fab83820161490d565b90820152610200614adf83820161490d565b600060208284031215614fcf57600080fd5b81356001600160401b03811115614fe557600080fd5b610ee784828501614e4f565b600080600080600060a0868803121561500957600080fd5b85356001600160401b038082111561502057600080fd5b61502c89838a0161495e565b9650602088013591508082111561504257600080fd5b61504e89838a016148b7565b9550604088013591508082111561506457600080fd5b61507089838a016148b7565b9450606088013591508082111561508657600080fd5b50615093888289016148b7565b95989497509295608001359392505050565b600080604083850312156150b857600080fd5b8235915060208301356150ca81614945565b809150509250929050565b600080604083850312156150e857600080fd5b82356001600160401b03808211156150ff57600080fd5b61510b86838701614e4f565b9350602085013591508082111561512157600080fd5b5061512e858286016148b7565b9150509250929050565b6001600160a01b0391909116815260200190565b60006020828403121561515e57600080fd5b81356001600160401b0381111561517457600080fd5b610ee7848285016148b7565b6000806040838503121561519357600080fd5b82356001600160401b03808211156151aa57600080fd5b61510b8683870161495e565b600080600080600060a086880312156151ce57600080fd5b853594506020808701356001600160401b03808211156151ed57600080fd5b6151f98a838b016148b7565b96506040890135955060608901359450608089013591508082111561521d57600080fd5b508701601f8101891361522f57600080fd5b803561523d6148d682614c70565b81815260059190911b8201830190838101908b83111561525c57600080fd5b928401925b8284101561527a57833582529284019290840190615261565b80955050505050509295509295909350565b6020815261529e602082018351614d23565b600060208301516152b26040840182614d23565b5060408301516102208060608501526152cf610240850183614d54565b915060608501516152e36080860182614d23565b506080850151601f19808685030160a08701526153008483614d54565b935060a087015160c087015260c087015160e087015260e0870151915061010061532e8188018460070b9052565b8088015192505061012081878603018188015261534b8584614d54565b9088015161014088810191909152880151909450915061016090506153778187018363ffffffff169052565b86015190506101806153908682018363ffffffff169052565b86015190506101a06153a78682018361ffff169052565b86015190506101c06153be8682018361ffff169052565b86015190506101e06153d78682018363ffffffff169052565b86015190506102006153f08682018363ffffffff169052565b86015163ffffffff81168387015290505b5090949350505050565b6020808252600690820152654c424330313960d01b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b818103818111156109285761092861542b565b60208082526006908201526504c42433032360d41b604082015260600190565b6001600160a01b03929092168252602082015260400190565b6020808252600690820152654c424330323160d01b604082015260600190565b60208082526006908201526526212198191960d11b604082015260600190565b643832b3b4b760d91b815260050190565b600082516154f0818460208701614d30565b9190910192915050565b60208082526006908201526509884866060760d31b604082015260600190565b651c1959dbdd5d60d21b815260060190565b80820281158282048414176109285761092861542b565b634e487b7160e01b600052601260045260246000fd5b60008261556857615568615543565b500490565b60008261557c5761557c615543565b500690565b808201808211156109285761092861542b565b6000600182016155a6576155a661542b565b5060010190565b600181811c908216806155c157607f821691505b6020821081036155e157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115613ea157600081815260208120601f850160051c8101602086101561560e5750805b601f850160051c820191505b8181101561562d5782815560010161561a565b505050505050565b81516001600160401b0381111561564e5761564e6147a4565b6156628161565c84546155ad565b846155e7565b602080601f831160018114615697576000841561567f5750858301515b600019600386901b1c1916600185901b17855561562d565b600085815260208120601f198616915b828110156156c6578886015182559484019460019091019084016156a7565b50858210156156e45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020808252600690820152654c424330303160d01b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b60208082526006908201526509884866064760d31b604082015260600190565b60018060a01b0384168152826020820152606060408201526000611f626060830184614d54565b60006020828403121561578357600080fd5b81516143b181614945565b6020808252600690820152654c424330323960d01b604082015260600190565b6001600160a01b039390931683526020830191909152604082015260600190565b80516001600160601b0319168252600061024060208301516157f46020860182614d23565b5060408301516158076040860182614d23565b50606083015181606086015261581f82860182614d54565b91505060808301516158346080860182614d23565b5060a083015184820360a086015261584c8282614d54565b91505060c083015160c085015260e083015160e08501526101008084015161587682870182614d23565b505061012080840151858303828701526158908382614d54565b92505050610140808401516158ac8287018263ffffffff169052565b5050610160808401516158c38287018260070b9052565b505061018083810151908501526101a08084015163ffffffff908116918601919091526101c0808501518216908601526101e080850151909116908501526102008084015161ffff16908501526102208084015180151582870152615401565b60408152600061593660408301856157cf565b90508260208301529392505050565b6001600160a01b03949094168452602084019290925215156040830152606082015260800190565b63ffffffff8616815284602082015260a06040820152600061599260a0830186614d54565b931515606083015250608001529392505050565b602080825260069082015265131090cc0d8d60d21b604082015260600190565b602080825260069082015265262121981a1960d11b604082015260600190565b848152600084516159fe816020850160208901614d30565b808301905060018060601b0319851660208201528351615a25816034840160208801614d30565b016034019695505050505050565b600082601f830112615a4457600080fd5b8151615a526148d682614890565b818152846020838601011115615a6757600080fd5b610ee7826020830160208701614d30565b600060208284031215615a8a57600080fd5b81516001600160401b03811115615aa057600080fd5b610ee784828501615a33565b600160fd1b8152826001820152607560f81b602182015260008251615ad8816022850160208701614d30565b919091016022019392505050565b606081526000615af96060830186614d54565b8281036020840152615b0b8186614d54565b9150508215156040830152949350505050565b63ffffffff818116838216019080821115615b3b57615b3b61542b565b5092915050565b6020815260006143b16020830184614d54565b60006020808385031215615b6857600080fd5b82516001600160401b0380821115615b7f57600080fd5b818501915085601f830112615b9357600080fd5b8151615ba16148d682614c70565b81815260059190911b83018401908481019088831115615bc057600080fd5b8585015b83811015615c5b57805185811115615bdc5760008081fd5b86016080818c03601f1901811315615bf45760008081fd5b615bfc614806565b898301518881168114615c0f5760008081fd5b815260408381015189811115615c255760008081fd5b615c338f8d83880101615a33565b838d015250606084810151918301919091529190920151908201528352918601918601615bc4565b5098975050505050505050565b600060208284031215615c7a57600080fd5b5051919050565b600060808201868352602086818501528560408501526080606085015281855180845260a086019150828701935060005b81811015615cce57845183529383019391830191600101615cb2565b50909998505050505050505050565b6001600160401b03818116838216028082169190828114615d0057615d0061542b565b505092915050565b604081526000615d1b6040830185614d54565b905082151560208301529392505050565b6000808354615d3a816155ad565b60018281168015615d525760018114615d6757615d96565b60ff1984168752821515830287019450615d96565b8760005260208060002060005b85811015615d8d5781548a820152908401908201615d74565b50505082870194505b50929695505050505050565b6001600160401b03818116838216019080821115615b3b57615b3b61542b565b6020815260006143b160208301846157cf565b6000610100808352615de98184018c614d54565b90508960208401528281036040840152615e03818a614d54565b90508760608401528281036080840152615e1d8188614d54565b6001600160a01b03871660a085015283810360c08501529050615e408186614d54565b91505082151560e0830152999850505050505050505056fe3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f69685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80da2646970667358221220529ecc3983548e4c0de367c561e09d1b7592e7cde5b4e080f8f0ef92f43d315064736f6c63430008120033", "immutableReferences": {}, "generatedSources": [], "deployedGeneratedSources": [ @@ -7327,7 +7327,7 @@ } ] }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$10328_memory_ptr", + "name": "abi_decode_tuple_t_struct$_PeginQuote_$10924_memory_ptr", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -12361,7 +12361,7 @@ } ] }, - "name": "abi_encode_tuple_t_array$_t_struct$_LiquidityProvider_$4613_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_LiquidityProvider_$4613_memory_ptr_$dyn_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -14483,7 +14483,7 @@ } ] }, - "name": "abi_decode_tuple_t_struct$_PegOutQuote_$10363_memory_ptr", + "name": "abi_decode_tuple_t_struct$_PegOutQuote_$10959_memory_ptr", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -15292,7 +15292,7 @@ } ] }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$10328_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_uint256", + "name": "abi_decode_tuple_t_struct$_PeginQuote_$10924_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_uint256", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -16090,7 +16090,7 @@ } ] }, - "name": "abi_decode_tuple_t_struct$_PegOutQuote_$10363_memory_ptrt_bytes_memory_ptr", + "name": "abi_decode_tuple_t_struct$_PegOutQuote_$10959_memory_ptrt_bytes_memory_ptr", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -17161,7 +17161,7 @@ } ] }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$10328_memory_ptrt_bytes_memory_ptr", + "name": "abi_decode_tuple_t_struct$_PeginQuote_$10924_memory_ptrt_bytes_memory_ptr", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -18478,7 +18478,7 @@ } ] }, - "name": "abi_encode_tuple_t_contract$_Bridge_$3652__to_t_address_payable__fromStack_reversed", + "name": "abi_encode_tuple_t_contract$_Bridge_$4173__to_t_address_payable__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -20497,7 +20497,7 @@ } ] }, - "name": "abi_encode_tuple_t_struct$_PegOutQuote_$10363_memory_ptr__to_t_struct$_PegOutQuote_$10363_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_struct$_PegOutQuote_$10959_memory_ptr__to_t_struct$_PegOutQuote_$10959_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -31442,7 +31442,7 @@ } ] }, - "name": "abi_encode_tuple_t_struct$_PeginQuote_$10328_memory_ptr_t_uint256__to_t_struct$_PeginQuote_$10328_memory_ptr_t_uint256__fromStack_library_reversed", + "name": "abi_encode_tuple_t_struct$_PeginQuote_$10924_memory_ptr_t_uint256__to_t_struct$_PeginQuote_$10924_memory_ptr_t_uint256__fromStack_library_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -39756,7 +39756,7 @@ } ] }, - "name": "abi_decode_tuple_t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr_fromMemory", + "name": "abi_decode_tuple_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr_fromMemory", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -44359,7 +44359,7 @@ } ] }, - "name": "abi_encode_tuple_t_struct$_PeginQuote_$10328_memory_ptr__to_t_struct$_PeginQuote_$10328_memory_ptr__fromStack_library_reversed", + "name": "abi_encode_tuple_t_struct$_PeginQuote_$10924_memory_ptr__to_t_struct$_PeginQuote_$10924_memory_ptr__fromStack_library_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -47272,7 +47272,7 @@ } ] }, - "name": "abi_encode_tuple_t_struct$_PegOutQuote_$10363_memory_ptr__to_t_struct$_PegOutQuote_$10363_memory_ptr__fromStack_library_reversed", + "name": "abi_encode_tuple_t_struct$_PegOutQuote_$10959_memory_ptr__to_t_struct$_PegOutQuote_$10959_memory_ptr__fromStack_library_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -49065,7 +49065,7 @@ } ] }, - "contents": "{\n { }\n function abi_encode_tuple_t_stringliteral_a23daf30bd1e42cc69e3bea751166702f08d640860ab6f4c84d6bacb970360da__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC007\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xff))\n }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function allocate_memory_9157() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0240)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory_9158() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0220)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory_9162() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x80)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory(size) -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(size, 31), not(31)))\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function abi_decode_bytes20(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, not(sub(shl(96, 1), 1))))) { revert(0, 0) }\n }\n function validator_revert_address(value)\n {\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n validator_revert_address(value)\n }\n function array_allocation_size_bytes(length) -> size\n {\n if gt(length, sub(shl(64, 1), 1)) { panic_error_0x41() }\n size := add(and(add(length, 31), not(31)), 0x20)\n }\n function abi_decode_bytes(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let array_1 := allocate_memory(array_allocation_size_bytes(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(array_1, 0x20), add(offset, 0x20), _1)\n mstore(add(add(array_1, _1), 0x20), 0)\n array := array_1\n }\n function abi_decode_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_int64(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, signextend(7, value))) { revert(0, 0) }\n }\n function abi_decode_uint16(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n }\n function validator_revert_bool(value)\n {\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n validator_revert_bool(value)\n }\n function abi_decode_struct_PeginQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0240) { revert(0, 0) }\n value := allocate_memory_9157()\n mstore(value, abi_decode_bytes20(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n mstore(add(value, 64), abi_decode_address(add(headStart, 64)))\n let offset := calldataload(add(headStart, 96))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 96), abi_decode_bytes(add(headStart, offset), end))\n mstore(add(value, 128), abi_decode_address(add(headStart, 128)))\n let offset_1 := calldataload(add(headStart, 160))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 160), abi_decode_bytes(add(headStart, offset_1), end))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), calldataload(add(headStart, 224)))\n let _2 := 256\n mstore(add(value, _2), abi_decode_address(add(headStart, _2)))\n let _3 := 288\n let offset_2 := calldataload(add(headStart, _3))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_bytes(add(headStart, offset_2), end))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_int64(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), calldataload(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint32(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint16(add(headStart, _10)))\n let _11 := 544\n mstore(add(value, _11), abi_decode_bool(add(headStart, _11)))\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10328_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function abi_decode_tuple_t_string_memory_ptrt_string_memory_ptrt_boolt_string_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_bytes(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_bytes(add(headStart, offset_1), dataEnd)\n let value := calldataload(add(headStart, 64))\n validator_revert_bool(value)\n value2 := value\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n value3 := abi_decode_bytes(add(headStart, offset_2), dataEnd)\n }\n function abi_encode_tuple_t_int16__to_t_int16__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, signextend(1, value0))\n }\n function abi_decode_tuple_t_address_payablet_uint256t_uint256t_uint32t_uint32t_uint256t_uint256t_bool(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6, value7\n {\n if slt(sub(dataEnd, headStart), 256) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n value1 := calldataload(add(headStart, 32))\n value2 := calldataload(add(headStart, 64))\n value3 := abi_decode_uint32(add(headStart, 96))\n value4 := abi_decode_uint32(add(headStart, 128))\n value5 := calldataload(add(headStart, 160))\n value6 := calldataload(add(headStart, 192))\n let value_1 := calldataload(add(headStart, 224))\n validator_revert_bool(value_1)\n value7 := value_1\n }\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_encode_bool(value, pos)\n {\n mstore(pos, iszero(iszero(value)))\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function array_allocation_size_array_uint256_dyn(length) -> size\n {\n if gt(length, sub(shl(64, 1), 1)) { panic_error_0x41() }\n size := add(shl(5, length), 0x20)\n }\n function abi_decode_tuple_t_array$_t_uint256_$dyn_memory_ptr(headStart, dataEnd) -> value0\n {\n let _1 := 32\n if slt(sub(dataEnd, headStart), _1) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if iszero(slt(add(_2, 0x1f), dataEnd)) { revert(0, 0) }\n let _3 := calldataload(_2)\n let dst := allocate_memory(array_allocation_size_array_uint256_dyn(_3))\n let dst_1 := dst\n mstore(dst, _3)\n dst := add(dst, _1)\n let srcEnd := add(add(_2, shl(5, _3)), _1)\n if gt(srcEnd, dataEnd) { revert(0, 0) }\n let src := add(_2, _1)\n for { } lt(src, srcEnd) { src := add(src, _1) }\n {\n mstore(dst, calldataload(src))\n dst := add(dst, _1)\n }\n value0 := dst_1\n }\n function abi_encode_address(value, pos)\n {\n mstore(pos, and(value, sub(shl(160, 1), 1)))\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_encode_string(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_array$_t_struct$_LiquidityProvider_$4613_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_LiquidityProvider_$4613_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n let tail_1 := add(headStart, _1)\n mstore(headStart, _1)\n let pos := tail_1\n let length := mload(value0)\n mstore(tail_1, length)\n let _2 := 64\n pos := add(headStart, _2)\n let tail_2 := add(add(headStart, shl(5, length)), _2)\n let srcPtr := add(value0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), not(63)))\n let _3 := mload(srcPtr)\n let _4 := 0xc0\n mstore(tail_2, mload(_3))\n mstore(add(tail_2, _1), and(mload(add(_3, _1)), sub(shl(160, 1), 1)))\n let memberValue0 := mload(add(_3, _2))\n mstore(add(tail_2, _2), _4)\n let tail_3 := abi_encode_string(memberValue0, add(tail_2, _4))\n let _5 := 0x60\n let memberValue0_1 := mload(add(_3, _5))\n mstore(add(tail_2, _5), sub(tail_3, tail_2))\n let tail_4 := abi_encode_string(memberValue0_1, tail_3)\n let _6 := 0x80\n mstore(add(tail_2, _6), iszero(iszero(mload(add(_3, _6)))))\n let _7 := 0xa0\n let memberValue0_2 := mload(add(_3, _7))\n mstore(add(tail_2, _7), sub(tail_4, tail_2))\n tail_2 := abi_encode_string(memberValue0_2, tail_4)\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_decode_struct_PegOutQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0220) { revert(0, 0) }\n value := allocate_memory_9158()\n mstore(value, abi_decode_address(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n let offset := calldataload(add(headStart, 64))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 64), abi_decode_bytes(add(headStart, offset), end))\n mstore(add(value, 96), abi_decode_address(add(headStart, 96)))\n let offset_1 := calldataload(add(headStart, 128))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 128), abi_decode_bytes(add(headStart, offset_1), end))\n mstore(add(value, 160), calldataload(add(headStart, 160)))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), abi_decode_int64(add(headStart, 224)))\n let _2 := 256\n let offset_2 := calldataload(add(headStart, _2))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _2), abi_decode_bytes(add(headStart, offset_2), end))\n let _3 := 288\n mstore(add(value, _3), calldataload(add(headStart, _3)))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_uint32(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), abi_decode_uint16(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint16(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint32(add(headStart, _10)))\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$10363_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PegOutQuote(add(headStart, offset), dataEnd)\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10328_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_bytes(add(headStart, offset_1), dataEnd)\n let offset_2 := calldataload(add(headStart, 64))\n if gt(offset_2, _1) { revert(0, 0) }\n value2 := abi_decode_bytes(add(headStart, offset_2), dataEnd)\n let offset_3 := calldataload(add(headStart, 96))\n if gt(offset_3, _1) { revert(0, 0) }\n value3 := abi_decode_bytes(add(headStart, offset_3), dataEnd)\n value4 := calldataload(add(headStart, 128))\n }\n function abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_tuple_t_uint256t_bool(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := calldataload(headStart)\n let value := calldataload(add(headStart, 32))\n validator_revert_bool(value)\n value1 := value\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$10363_memory_ptrt_bytes_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PegOutQuote(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_bytes(add(headStart, offset_1), dataEnd)\n }\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n }\n function abi_encode_uint16(value, pos)\n {\n mstore(pos, and(value, 0xffff))\n }\n function abi_encode_tuple_t_uint16__to_t_uint16__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffff))\n }\n function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_bytes(add(headStart, offset), dataEnd)\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10328_memory_ptrt_bytes_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_bytes(add(headStart, offset_1), dataEnd)\n }\n function abi_decode_tuple_t_bytes32t_bytes_memory_ptrt_bytes32t_uint256t_array$_t_bytes32_$dyn_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n value0 := calldataload(headStart)\n let _1 := 32\n let offset := calldataload(add(headStart, _1))\n let _2 := sub(shl(64, 1), 1)\n if gt(offset, _2) { revert(0, 0) }\n value1 := abi_decode_bytes(add(headStart, offset), dataEnd)\n value2 := calldataload(add(headStart, 64))\n value3 := calldataload(add(headStart, 96))\n let offset_1 := calldataload(add(headStart, 128))\n if gt(offset_1, _2) { revert(0, 0) }\n let _3 := add(headStart, offset_1)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := calldataload(_3)\n let dst := allocate_memory(array_allocation_size_array_uint256_dyn(_4))\n let dst_1 := dst\n mstore(dst, _4)\n dst := add(dst, _1)\n let srcEnd := add(add(_3, shl(5, _4)), _1)\n if gt(srcEnd, dataEnd) { revert(0, 0) }\n let src := add(_3, _1)\n for { } lt(src, srcEnd) { src := add(src, _1) }\n {\n mstore(dst, calldataload(src))\n dst := add(dst, _1)\n }\n value4 := dst_1\n }\n function abi_encode_tuple_t_contract$_Bridge_$3652__to_t_address_payable__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n }\n function abi_encode_int64(value, pos)\n {\n mstore(pos, signextend(7, value))\n }\n function abi_encode_uint32(value, pos)\n {\n mstore(pos, and(value, 0xffffffff))\n }\n function abi_encode_tuple_t_struct$_PegOutQuote_$10363_memory_ptr__to_t_struct$_PegOutQuote_$10363_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n abi_encode_address(mload(value0), add(headStart, 32))\n let memberValue0 := mload(add(value0, 32))\n abi_encode_address(memberValue0, add(headStart, 64))\n let memberValue0_1 := mload(add(value0, 64))\n let _1 := 0x0220\n mstore(add(headStart, 96), _1)\n let tail_1 := abi_encode_string(memberValue0_1, add(headStart, 576))\n let memberValue0_2 := mload(add(value0, 96))\n abi_encode_address(memberValue0_2, add(headStart, 128))\n let memberValue0_3 := mload(add(value0, 128))\n let _2 := not(31)\n mstore(add(headStart, 160), add(sub(tail_1, headStart), _2))\n let tail_2 := abi_encode_string(memberValue0_3, tail_1)\n mstore(add(headStart, 192), mload(add(value0, 160)))\n mstore(add(headStart, 224), mload(add(value0, 192)))\n let memberValue0_4 := mload(add(value0, 224))\n let _3 := 256\n abi_encode_int64(memberValue0_4, add(headStart, _3))\n let memberValue0_5 := mload(add(value0, _3))\n let _4 := 288\n mstore(add(headStart, _4), add(sub(tail_2, headStart), _2))\n let tail_3 := abi_encode_string(memberValue0_5, tail_2)\n let _5 := mload(add(value0, _4))\n let _6 := 320\n mstore(add(headStart, _6), _5)\n let memberValue0_6 := mload(add(value0, _6))\n let _7 := 352\n abi_encode_uint32(memberValue0_6, add(headStart, _7))\n let memberValue0_7 := mload(add(value0, _7))\n let _8 := 384\n abi_encode_uint32(memberValue0_7, add(headStart, _8))\n let memberValue0_8 := mload(add(value0, _8))\n let _9 := 416\n abi_encode_uint16(memberValue0_8, add(headStart, _9))\n let memberValue0_9 := mload(add(value0, _9))\n let _10 := 448\n abi_encode_uint16(memberValue0_9, add(headStart, _10))\n let memberValue0_10 := mload(add(value0, _10))\n let _11 := 480\n abi_encode_uint32(memberValue0_10, add(headStart, _11))\n let memberValue0_11 := mload(add(value0, _11))\n let _12 := 512\n abi_encode_uint32(memberValue0_11, add(headStart, _12))\n let memberValue0_12 := mload(add(value0, _12))\n abi_encode_uint32(memberValue0_12, add(headStart, _1))\n tail := tail_3\n }\n function abi_encode_tuple_t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC019\")\n tail := add(headStart, 96)\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_packed_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n { end := pos }\n function abi_encode_tuple_t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC020\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_stringliteral_ccfdeeda37cff52b8b53c7f459ead001a00858d8cd279133dc1e599c6257c485__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC021\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ae5a5bd2536c79a56736074670f517df1b8a17deb822b59dfa1648888074b4cc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC022\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_7e21a7b13292bf184f2fc166cca229506aa89a730258f15cdce6a2f8dc225415__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC003\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_a80fe4c2764b7c4b52829ebb2b1bb3117b2b8ffa6a6401dbe00248ec851a73a8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC070\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_f838e22b544c153329abcc9856d1b1f7e7f6c83118dc13d7a0606e65edb3cdd8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC009\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"pegin\")\n end := add(pos, 5)\n }\n function abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function abi_encode_tuple_t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC008\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"pegout\")\n end := add(pos, 6)\n }\n function checked_mul_t_uint256(x, y) -> product\n {\n product := mul(x, y)\n if iszero(or(iszero(x), eq(y, div(product, x)))) { panic_error_0x11() }\n }\n function panic_error_0x12()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n function checked_div_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := div(x, y)\n }\n function mod_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := mod(x, y)\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, not(0)) { panic_error_0x11() }\n ret := add(value, 1)\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), not(0)))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC001\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_7a2a4e26842155ea933fe6eb6e3137eb5a296dcdf55721c552be7b4c3cc23759__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 46)\n mstore(add(headStart, 64), \"Initializable: contract is alrea\")\n mstore(add(headStart, 96), \"dy initialized\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_b08af29ae9ab6d901d6564b35ffdb791cf633ea45a36ea23bf660bfada2612fe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC004\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_aef7c38006d01c174c6b5b14fe8e6059baae2f7a6dd6bce99907771d261c0abd__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC072\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b87a2fdd3e8805c862b0b631e2cf43b048cd2e48956f7516ed8be20eb14ec931__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC073\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_rational_1_by_1__to_t_uint8__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xff))\n }\n function panic_error_0x32()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_stringliteral_1e153c8413fa71b1dc88c42214ae3211e20bbd7d323adc3a7cb82fb90c05d672__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC023\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC028\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_address_t_bytes32_t_bytes_memory_ptr__to_t_address_t_bytes32_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), 96)\n tail := abi_encode_string(value2, add(headStart, 96))\n }\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_bool(value)\n value0 := value\n }\n function abi_encode_tuple_t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC029\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_6b987c2142a6ed89e76021f4d9a60f3cbfc2f7110bd81bc33ff58ad7cf27befa__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC030\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b9f5a33cea5e5738277827f2f81faa92d1d3c73cf030e2542a7b80c6f7bdc8a7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC031\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5d8d108d93a53583cf1949d2287cc7f0af5603bd102faf9db90e7e6bbc90ade8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC032\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_e976d8a3febca36c67dcd5b38ae845ffd2f248a24eaf2d7a97f208ffd80ff125__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC033\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_745436b16371784f7b451bf4bed6f0978e2f007f74e71dfa0c49414b3a522759__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC034\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_37570ea73114ff69cb8aab9e09d6f5beb11b36ce1a2ae19ee6f5de28dc42d754__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC035\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5ccb4449252c316623411606962515c0966208bcce5fe352c2e850b058d1077c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC036\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_address_t_uint256_t_bytes32__to_t_address_t_uint256_t_bytes32__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n tail := add(headStart, 96)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), value2)\n }\n function abi_encode_tuple_t_bytes32_t_int256__to_t_bytes32_t_int256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_bytes20(value, pos)\n {\n mstore(pos, and(value, not(sub(shl(96, 1), 1))))\n }\n function abi_encode_struct_PeginQuote(value, pos) -> end\n {\n let _1 := 0x0240\n abi_encode_bytes20(mload(value), pos)\n let memberValue0 := mload(add(value, 0x20))\n abi_encode_address(memberValue0, add(pos, 0x20))\n let memberValue0_1 := mload(add(value, 0x40))\n abi_encode_address(memberValue0_1, add(pos, 0x40))\n let memberValue0_2 := mload(add(value, 0x60))\n mstore(add(pos, 0x60), _1)\n let tail := abi_encode_string(memberValue0_2, add(pos, _1))\n let memberValue0_3 := mload(add(value, 0x80))\n abi_encode_address(memberValue0_3, add(pos, 0x80))\n let memberValue0_4 := mload(add(value, 0xa0))\n mstore(add(pos, 0xa0), sub(tail, pos))\n let tail_1 := abi_encode_string(memberValue0_4, tail)\n mstore(add(pos, 0xc0), mload(add(value, 0xc0)))\n mstore(add(pos, 0xe0), mload(add(value, 0xe0)))\n let _2 := 0x0100\n let memberValue0_5 := mload(add(value, _2))\n abi_encode_address(memberValue0_5, add(pos, _2))\n let _3 := 0x0120\n let memberValue0_6 := mload(add(value, _3))\n mstore(add(pos, _3), sub(tail_1, pos))\n let tail_2 := abi_encode_string(memberValue0_6, tail_1)\n let _4 := 0x0140\n let memberValue0_7 := mload(add(value, _4))\n abi_encode_uint32(memberValue0_7, add(pos, _4))\n let _5 := 0x0160\n let memberValue0_8 := mload(add(value, _5))\n abi_encode_int64(memberValue0_8, add(pos, _5))\n let _6 := 0x0180\n mstore(add(pos, _6), mload(add(value, _6)))\n let _7 := 0x01a0\n let memberValue0_9 := mload(add(value, _7))\n abi_encode_uint32(memberValue0_9, add(pos, _7))\n let _8 := 0x01c0\n let memberValue0_10 := mload(add(value, _8))\n abi_encode_uint32(memberValue0_10, add(pos, _8))\n let _9 := 0x01e0\n let memberValue0_11 := mload(add(value, _9))\n abi_encode_uint32(memberValue0_11, add(pos, _9))\n let _10 := 0x0200\n let memberValue0_12 := mload(add(value, _10))\n abi_encode_uint16(memberValue0_12, add(pos, _10))\n let _11 := 0x0220\n let memberValue0_13 := mload(add(value, _11))\n abi_encode_bool(memberValue0_13, add(pos, _11))\n end := tail_2\n }\n function abi_encode_tuple_t_struct$_PeginQuote_$10328_memory_ptr_t_uint256__to_t_struct$_PeginQuote_$10328_memory_ptr_t_uint256__fromStack_library_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n tail := abi_encode_struct_PeginQuote(value0, add(headStart, 64))\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_address_payable_t_uint256_t_bool_t_bytes32__to_t_address_t_uint256_t_bool_t_bytes32__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 128)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), iszero(iszero(value2)))\n mstore(add(headStart, 96), value3)\n }\n function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function abi_encode_tuple_t_uint32_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__to_t_uint256_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__fromStack_reversed(headStart, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, and(value0, 0xffffffff))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), 160)\n tail := abi_encode_string(value2, add(headStart, 160))\n mstore(add(headStart, 96), iszero(iszero(value3)))\n mstore(add(headStart, 128), value4)\n }\n function abi_encode_tuple_t_stringliteral_0a36b25bf1b768acf545d4a7d22e9fceeba3414a7a19dc34973fc2e1be01a831__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC005\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ecc75ee801269ba7670799af84ad7f1d968d59315783a708807424c72ec63d04__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC037\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_0267b5bcac1113eea8a4dc81e170e6fe59336df7f2c6a4d2ae7ad240f894a2f9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC063\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_39eacc26aa588693c014f46e6dd86f6cac22eb3287098210ddf746f1a6af8214__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC065\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_c8999eb883ba6531127283b89d3773d87761ac547946da55d1f52c5931d8838f__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC046\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b400745c4fd650850c2059b2d13f12980ca63b7ccd87c008204992f11af559c2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC047\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC064\")\n tail := add(headStart, 96)\n }\n function copy_byte_array_to_storage_from_t_bytes_memory_ptr_to_t_bytes_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function abi_encode_tuple_t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC042\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_476e33256b298fee7fc3dab0c339427caa3a9a4a44654f7f02b328083d44ca74__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC041\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, sub(shl(160, 1), 1)))\n }\n function abi_encode_tuple_t_stringliteral_0a7ff570d31f7e351d06bf5b8d0ef26a9275a9d32a7dffd7981a6c6ac58227c6__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC044\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_438c5a176571afee566b78f09f63757218623602a6c98e887399fe40429f63df__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC061\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__to_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value3, value2, value1, value0) -> end\n {\n mstore(pos, value0)\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 32), add(pos, 32), length)\n let _1 := add(pos, length)\n mstore(add(_1, 32), and(value2, not(sub(shl(96, 1), 1))))\n let length_1 := mload(value3)\n copy_memory_to_memory_with_cleanup(add(value3, 32), add(_1, 52), length_1)\n end := add(add(_1, length_1), 52)\n }\n function abi_decode_bytes_fromMemory(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := mload(offset)\n let array_1 := allocate_memory(array_allocation_size_bytes(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n copy_memory_to_memory_with_cleanup(add(offset, 0x20), add(array_1, 0x20), _1)\n array := array_1\n }\n function abi_decode_tuple_t_bytes_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := mload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_bytes_fromMemory(add(headStart, offset), dataEnd)\n }\n function abi_encode_tuple_packed_t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a_t_bytes32_t_stringliteral_32cefdcd8e794145c9af8dd1f4b1fbd92d6e547ae855553080fc8bd19c4883a0_t_bytes_memory_ptr__to_t_bytes1_t_bytes32_t_bytes1_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, \" \")\n mstore(add(pos, 1), value0)\n mstore(add(pos, 33), \"u\")\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 0x20), add(pos, 34), length)\n end := add(add(pos, length), 34)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__fromStack_library_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, 96)\n let tail_1 := abi_encode_string(value0, add(headStart, 96))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_string(value1, tail_1)\n mstore(add(headStart, 64), iszero(iszero(value2)))\n }\n function abi_encode_tuple_t_stringliteral_9c6c58d5603e5b2aab0d13c183f0136466f0ce13826630d90e079bf910078715__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC024\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ceda09d74f8a59745bfad5393e75482469dc6db77c24fde6f52df4409a3f744c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC025\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint32(x, y) -> sum\n {\n let _1 := 0xffffffff\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_2d63cc93f65e3c34ca5cba24271c3d6869155fb2ffc83f083d82378f26d56cb0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC026\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5a937cad92792f08abdaf15eed65a070909c29d924f856ec65923c138fd39a48__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC027\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_string(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n let _1 := 32\n if slt(sub(dataEnd, headStart), _1) { revert(0, 0) }\n let offset := mload(headStart)\n let _2 := sub(shl(64, 1), 1)\n if gt(offset, _2) { revert(0, 0) }\n let _3 := add(headStart, offset)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := mload(_3)\n let dst := allocate_memory(array_allocation_size_array_uint256_dyn(_4))\n let dst_1 := dst\n mstore(dst, _4)\n dst := add(dst, _1)\n let srcEnd := add(add(_3, shl(5, _4)), _1)\n if gt(srcEnd, dataEnd) { revert(0, 0) }\n let src := add(_3, _1)\n for { } lt(src, srcEnd) { src := add(src, _1) }\n {\n let innerOffset := mload(src)\n if gt(innerOffset, _2)\n {\n let _5 := 0\n revert(_5, _5)\n }\n let _6 := add(_3, innerOffset)\n let _7 := 0x80\n if slt(add(sub(dataEnd, _6), not(31)), _7)\n {\n let _8 := 0\n revert(_8, _8)\n }\n let value := allocate_memory_9162()\n let value_1 := mload(add(_6, _1))\n if iszero(eq(value_1, and(value_1, _2)))\n {\n let _9 := 0\n revert(_9, _9)\n }\n mstore(value, value_1)\n let _10 := 64\n let offset_1 := mload(add(_6, _10))\n if gt(offset_1, _2)\n {\n let _11 := 0\n revert(_11, _11)\n }\n mstore(add(value, _1), abi_decode_bytes_fromMemory(add(add(_6, offset_1), _1), dataEnd))\n let _12 := 96\n mstore(add(value, _10), mload(add(_6, _12)))\n mstore(add(value, _12), mload(add(_6, _7)))\n mstore(dst, value)\n dst := add(dst, _1)\n }\n value0 := dst_1\n }\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_5cf5f7c75a2357c5697933702fe9f20c432f8f5205def7bf18572d390cea5cc1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC069\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3c14ff4570332247d29826742fdf7f014a86ddbee2c49b0252a79ef49351f196__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC048\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__to_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n let tail_1 := add(headStart, 128)\n mstore(headStart, value0)\n let _1 := 32\n mstore(add(headStart, _1), value1)\n mstore(add(headStart, 64), value2)\n mstore(add(headStart, 96), 128)\n let pos := tail_1\n let length := mload(value3)\n mstore(tail_1, length)\n pos := add(headStart, 160)\n let srcPtr := add(value3, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, mload(srcPtr))\n pos := add(pos, _1)\n srcPtr := add(srcPtr, _1)\n }\n tail := pos\n }\n function abi_decode_tuple_t_int256_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_41cc9877d5a72c2a0ef0c602e024ddc86a1f279ef7306bab75dd3c5447ffb6e0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC049\")\n tail := add(headStart, 96)\n }\n function checked_mul_t_uint64(x, y) -> product\n {\n let _1 := sub(shl(64, 1), 1)\n let product_raw := mul(and(x, _1), and(y, _1))\n product := and(product_raw, _1)\n if iszero(eq(product, product_raw)) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_94643b69f05d64f660a022cd48046be494c1ed271b5d9ae602f6fdadc77976be__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC067\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bool__fromStack_library_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n tail := abi_encode_string(value0, add(headStart, 64))\n mstore(add(headStart, 32), iszero(iszero(value1)))\n }\n function abi_encode_tuple_packed_t_bytes_storage__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let ret := 0\n let slotValue := sload(value0)\n let length := extract_byte_array_length(slotValue)\n let _1 := 1\n switch and(slotValue, _1)\n case 0 {\n mstore(pos, and(slotValue, not(255)))\n ret := add(pos, mul(length, iszero(iszero(length))))\n }\n case 1 {\n mstore(0, value0)\n let _2 := 0x20\n let dataPos := keccak256(0, _2)\n let i := 0\n for { } lt(i, length) { i := add(i, _2) }\n {\n mstore(add(pos, i), sload(dataPos))\n dataPos := add(dataPos, _1)\n }\n ret := add(pos, length)\n }\n end := ret\n }\n function abi_encode_tuple_t_stringliteral_7cd3d68dd2419ceccbacf2f69bda9c4c2f3bdb0c0535db4bbef90be788c8f7de__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC068\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3dcf1159943f9eee729b997e5df9acd0f1771321696b1fb47efa6e54bee2f352__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC050\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"Ownable: new owner is the zero a\")\n mstore(add(headStart, 96), \"ddress\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_ed7029e52dbf10ed9f0aafb2c33265c713a3f4dfd10cc113f22ba3c1270e1ddb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC051\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_a1a398356814e2eac3017ce127db7657cbb8e2f1d90a78bc426eaa92c56969eb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC052\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_923b965409721a83cf4ae76f34fa52de6eb09679d5b7141d2c0fc518a94192db__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC053\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_472231c5f3abacc190b5fd56153fbfc4b6c39c18040d443b29faee14791d54d9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC054\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_1bdc71792e300c3b19739ad62e7651b4b49de502b7d1b6227970563bffaad71e__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC055\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint64(x, y) -> sum\n {\n let _1 := sub(shl(64, 1), 1)\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_79d3c6c4bda42d819072ed97d83e6147bd9ad75bd5415529ecb6a41984271fb2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC071\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_struct$_PeginQuote_$10328_memory_ptr__to_t_struct$_PeginQuote_$10328_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_struct_PeginQuote(value0, add(headStart, 32))\n }\n function abi_encode_tuple_t_stringliteral_b91014d5c812b217b1f7abf06d04044851a14f3d4efa9b6795d3964c23897cc9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC010\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_849663c0a27b21987cfc03f3233af0a7a46b23f0af09d39a18720d9610bcba81__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC017\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"both\")\n end := add(pos, 4)\n }\n function abi_encode_tuple_t_stringliteral_c8a2f96b1c149a2cda2dda6db9bbdafbecddac69bce104e31ad4dd14842e4820__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC018\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_d688db918bb9dd50354922faa108595679886fe9ff08046ad1ffe30aaea55f8b__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 43)\n mstore(add(headStart, 64), \"Initializable: contract is not i\")\n mstore(add(headStart, 96), \"nitializing\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_5004352c178489e456f74ee0937a3403e68ee3fa72f6afa5bff20fe549075132__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC056\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_struct$_PegOutQuote_$10363_memory_ptr__to_t_struct$_PegOutQuote_$10363_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n abi_encode_address(mload(value0), add(headStart, 32))\n let memberValue0 := mload(add(value0, 32))\n abi_encode_address(memberValue0, add(headStart, 64))\n let memberValue0_1 := mload(add(value0, 64))\n let _1 := 0x0220\n mstore(add(headStart, 96), _1)\n let tail_1 := abi_encode_string(memberValue0_1, add(headStart, 576))\n let memberValue0_2 := mload(add(value0, 96))\n abi_encode_address(memberValue0_2, add(headStart, 128))\n let memberValue0_3 := mload(add(value0, 128))\n let _2 := not(31)\n mstore(add(headStart, 160), add(sub(tail_1, headStart), _2))\n let tail_2 := abi_encode_string(memberValue0_3, tail_1)\n mstore(add(headStart, 192), mload(add(value0, 160)))\n mstore(add(headStart, 224), mload(add(value0, 192)))\n let memberValue0_4 := mload(add(value0, 224))\n let _3 := 256\n abi_encode_int64(memberValue0_4, add(headStart, _3))\n let memberValue0_5 := mload(add(value0, _3))\n let _4 := 288\n mstore(add(headStart, _4), add(sub(tail_2, headStart), _2))\n let tail_3 := abi_encode_string(memberValue0_5, tail_2)\n let _5 := mload(add(value0, _4))\n let _6 := 320\n mstore(add(headStart, _6), _5)\n let memberValue0_6 := mload(add(value0, _6))\n let _7 := 352\n abi_encode_uint32(memberValue0_6, add(headStart, _7))\n let memberValue0_7 := mload(add(value0, _7))\n let _8 := 384\n abi_encode_uint32(memberValue0_7, add(headStart, _8))\n let memberValue0_8 := mload(add(value0, _8))\n let _9 := 416\n abi_encode_uint16(memberValue0_8, add(headStart, _9))\n let memberValue0_9 := mload(add(value0, _9))\n let _10 := 448\n abi_encode_uint16(memberValue0_9, add(headStart, _10))\n let memberValue0_10 := mload(add(value0, _10))\n let _11 := 480\n abi_encode_uint32(memberValue0_10, add(headStart, _11))\n let memberValue0_11 := mload(add(value0, _11))\n let _12 := 512\n abi_encode_uint32(memberValue0_11, add(headStart, _12))\n let memberValue0_12 := mload(add(value0, _12))\n abi_encode_uint32(memberValue0_12, add(headStart, _1))\n tail := tail_3\n }\n function abi_encode_tuple_t_stringliteral_ebf73bba305590e4764d5cb53b69bffd6d4d092d1a67551cb346f8cfcdab8619__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 31)\n mstore(add(headStart, 64), \"ReentrancyGuard: reentrant call\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__fromStack_reversed(headStart, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 256\n mstore(headStart, _1)\n let tail_1 := abi_encode_string(value0, add(headStart, _1))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string(value2, tail_1)\n mstore(add(headStart, 96), value3)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n let tail_3 := abi_encode_string(value4, tail_2)\n mstore(add(headStart, 160), and(value5, sub(shl(160, 1), 1)))\n mstore(add(headStart, 192), sub(tail_3, headStart))\n tail := abi_encode_string(value6, tail_3)\n mstore(add(headStart, 224), iszero(iszero(value7)))\n }\n function abi_encode_tuple_t_stringliteral_b13cbe420d932534b4c4c376e19a45f25e0ca05c6f1a458489ccb0574b26a6d9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 20)\n mstore(add(headStart, 64), \"Invalid block height\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_bac19bb4c4dce4ec87196bdccebfa1c4310f60332f1259cdc0bb93303ee1c2a0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC058\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Ownable: caller is not the owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_670f3ba0b2ca6f986efb9f8a498a40315443c3d4e263cc5de65e37011508c7c9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC062\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_319f398ccb7cc8c2c2304e07f301f618437c863aa2ff561ced1eaa40fcd3df63__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC059\")\n tail := add(headStart, 96)\n }\n}", + "contents": "{\n { }\n function abi_encode_tuple_t_stringliteral_a23daf30bd1e42cc69e3bea751166702f08d640860ab6f4c84d6bacb970360da__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC007\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xff))\n }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function allocate_memory_9157() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0240)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory_9158() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0220)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory_9162() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x80)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory(size) -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(size, 31), not(31)))\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function abi_decode_bytes20(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, not(sub(shl(96, 1), 1))))) { revert(0, 0) }\n }\n function validator_revert_address(value)\n {\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n validator_revert_address(value)\n }\n function array_allocation_size_bytes(length) -> size\n {\n if gt(length, sub(shl(64, 1), 1)) { panic_error_0x41() }\n size := add(and(add(length, 31), not(31)), 0x20)\n }\n function abi_decode_bytes(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let array_1 := allocate_memory(array_allocation_size_bytes(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(array_1, 0x20), add(offset, 0x20), _1)\n mstore(add(add(array_1, _1), 0x20), 0)\n array := array_1\n }\n function abi_decode_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_int64(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, signextend(7, value))) { revert(0, 0) }\n }\n function abi_decode_uint16(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n }\n function validator_revert_bool(value)\n {\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n validator_revert_bool(value)\n }\n function abi_decode_struct_PeginQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0240) { revert(0, 0) }\n value := allocate_memory_9157()\n mstore(value, abi_decode_bytes20(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n mstore(add(value, 64), abi_decode_address(add(headStart, 64)))\n let offset := calldataload(add(headStart, 96))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 96), abi_decode_bytes(add(headStart, offset), end))\n mstore(add(value, 128), abi_decode_address(add(headStart, 128)))\n let offset_1 := calldataload(add(headStart, 160))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 160), abi_decode_bytes(add(headStart, offset_1), end))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), calldataload(add(headStart, 224)))\n let _2 := 256\n mstore(add(value, _2), abi_decode_address(add(headStart, _2)))\n let _3 := 288\n let offset_2 := calldataload(add(headStart, _3))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_bytes(add(headStart, offset_2), end))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_int64(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), calldataload(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint32(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint16(add(headStart, _10)))\n let _11 := 544\n mstore(add(value, _11), abi_decode_bool(add(headStart, _11)))\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10924_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function abi_decode_tuple_t_string_memory_ptrt_string_memory_ptrt_boolt_string_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_bytes(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_bytes(add(headStart, offset_1), dataEnd)\n let value := calldataload(add(headStart, 64))\n validator_revert_bool(value)\n value2 := value\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n value3 := abi_decode_bytes(add(headStart, offset_2), dataEnd)\n }\n function abi_encode_tuple_t_int16__to_t_int16__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, signextend(1, value0))\n }\n function abi_decode_tuple_t_address_payablet_uint256t_uint256t_uint32t_uint32t_uint256t_uint256t_bool(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6, value7\n {\n if slt(sub(dataEnd, headStart), 256) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n value1 := calldataload(add(headStart, 32))\n value2 := calldataload(add(headStart, 64))\n value3 := abi_decode_uint32(add(headStart, 96))\n value4 := abi_decode_uint32(add(headStart, 128))\n value5 := calldataload(add(headStart, 160))\n value6 := calldataload(add(headStart, 192))\n let value_1 := calldataload(add(headStart, 224))\n validator_revert_bool(value_1)\n value7 := value_1\n }\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_encode_bool(value, pos)\n {\n mstore(pos, iszero(iszero(value)))\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function array_allocation_size_array_uint256_dyn(length) -> size\n {\n if gt(length, sub(shl(64, 1), 1)) { panic_error_0x41() }\n size := add(shl(5, length), 0x20)\n }\n function abi_decode_tuple_t_array$_t_uint256_$dyn_memory_ptr(headStart, dataEnd) -> value0\n {\n let _1 := 32\n if slt(sub(dataEnd, headStart), _1) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if iszero(slt(add(_2, 0x1f), dataEnd)) { revert(0, 0) }\n let _3 := calldataload(_2)\n let dst := allocate_memory(array_allocation_size_array_uint256_dyn(_3))\n let dst_1 := dst\n mstore(dst, _3)\n dst := add(dst, _1)\n let srcEnd := add(add(_2, shl(5, _3)), _1)\n if gt(srcEnd, dataEnd) { revert(0, 0) }\n let src := add(_2, _1)\n for { } lt(src, srcEnd) { src := add(src, _1) }\n {\n mstore(dst, calldataload(src))\n dst := add(dst, _1)\n }\n value0 := dst_1\n }\n function abi_encode_address(value, pos)\n {\n mstore(pos, and(value, sub(shl(160, 1), 1)))\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_encode_string(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n let tail_1 := add(headStart, _1)\n mstore(headStart, _1)\n let pos := tail_1\n let length := mload(value0)\n mstore(tail_1, length)\n let _2 := 64\n pos := add(headStart, _2)\n let tail_2 := add(add(headStart, shl(5, length)), _2)\n let srcPtr := add(value0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), not(63)))\n let _3 := mload(srcPtr)\n let _4 := 0xc0\n mstore(tail_2, mload(_3))\n mstore(add(tail_2, _1), and(mload(add(_3, _1)), sub(shl(160, 1), 1)))\n let memberValue0 := mload(add(_3, _2))\n mstore(add(tail_2, _2), _4)\n let tail_3 := abi_encode_string(memberValue0, add(tail_2, _4))\n let _5 := 0x60\n let memberValue0_1 := mload(add(_3, _5))\n mstore(add(tail_2, _5), sub(tail_3, tail_2))\n let tail_4 := abi_encode_string(memberValue0_1, tail_3)\n let _6 := 0x80\n mstore(add(tail_2, _6), iszero(iszero(mload(add(_3, _6)))))\n let _7 := 0xa0\n let memberValue0_2 := mload(add(_3, _7))\n mstore(add(tail_2, _7), sub(tail_4, tail_2))\n tail_2 := abi_encode_string(memberValue0_2, tail_4)\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_decode_struct_PegOutQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0220) { revert(0, 0) }\n value := allocate_memory_9158()\n mstore(value, abi_decode_address(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n let offset := calldataload(add(headStart, 64))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 64), abi_decode_bytes(add(headStart, offset), end))\n mstore(add(value, 96), abi_decode_address(add(headStart, 96)))\n let offset_1 := calldataload(add(headStart, 128))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 128), abi_decode_bytes(add(headStart, offset_1), end))\n mstore(add(value, 160), calldataload(add(headStart, 160)))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), abi_decode_int64(add(headStart, 224)))\n let _2 := 256\n let offset_2 := calldataload(add(headStart, _2))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _2), abi_decode_bytes(add(headStart, offset_2), end))\n let _3 := 288\n mstore(add(value, _3), calldataload(add(headStart, _3)))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_uint32(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), abi_decode_uint16(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint16(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint32(add(headStart, _10)))\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$10959_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PegOutQuote(add(headStart, offset), dataEnd)\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10924_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_bytes(add(headStart, offset_1), dataEnd)\n let offset_2 := calldataload(add(headStart, 64))\n if gt(offset_2, _1) { revert(0, 0) }\n value2 := abi_decode_bytes(add(headStart, offset_2), dataEnd)\n let offset_3 := calldataload(add(headStart, 96))\n if gt(offset_3, _1) { revert(0, 0) }\n value3 := abi_decode_bytes(add(headStart, offset_3), dataEnd)\n value4 := calldataload(add(headStart, 128))\n }\n function abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_tuple_t_uint256t_bool(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := calldataload(headStart)\n let value := calldataload(add(headStart, 32))\n validator_revert_bool(value)\n value1 := value\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$10959_memory_ptrt_bytes_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PegOutQuote(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_bytes(add(headStart, offset_1), dataEnd)\n }\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n }\n function abi_encode_uint16(value, pos)\n {\n mstore(pos, and(value, 0xffff))\n }\n function abi_encode_tuple_t_uint16__to_t_uint16__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffff))\n }\n function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_bytes(add(headStart, offset), dataEnd)\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10924_memory_ptrt_bytes_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_bytes(add(headStart, offset_1), dataEnd)\n }\n function abi_decode_tuple_t_bytes32t_bytes_memory_ptrt_bytes32t_uint256t_array$_t_bytes32_$dyn_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n value0 := calldataload(headStart)\n let _1 := 32\n let offset := calldataload(add(headStart, _1))\n let _2 := sub(shl(64, 1), 1)\n if gt(offset, _2) { revert(0, 0) }\n value1 := abi_decode_bytes(add(headStart, offset), dataEnd)\n value2 := calldataload(add(headStart, 64))\n value3 := calldataload(add(headStart, 96))\n let offset_1 := calldataload(add(headStart, 128))\n if gt(offset_1, _2) { revert(0, 0) }\n let _3 := add(headStart, offset_1)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := calldataload(_3)\n let dst := allocate_memory(array_allocation_size_array_uint256_dyn(_4))\n let dst_1 := dst\n mstore(dst, _4)\n dst := add(dst, _1)\n let srcEnd := add(add(_3, shl(5, _4)), _1)\n if gt(srcEnd, dataEnd) { revert(0, 0) }\n let src := add(_3, _1)\n for { } lt(src, srcEnd) { src := add(src, _1) }\n {\n mstore(dst, calldataload(src))\n dst := add(dst, _1)\n }\n value4 := dst_1\n }\n function abi_encode_tuple_t_contract$_Bridge_$4173__to_t_address_payable__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n }\n function abi_encode_int64(value, pos)\n {\n mstore(pos, signextend(7, value))\n }\n function abi_encode_uint32(value, pos)\n {\n mstore(pos, and(value, 0xffffffff))\n }\n function abi_encode_tuple_t_struct$_PegOutQuote_$10959_memory_ptr__to_t_struct$_PegOutQuote_$10959_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n abi_encode_address(mload(value0), add(headStart, 32))\n let memberValue0 := mload(add(value0, 32))\n abi_encode_address(memberValue0, add(headStart, 64))\n let memberValue0_1 := mload(add(value0, 64))\n let _1 := 0x0220\n mstore(add(headStart, 96), _1)\n let tail_1 := abi_encode_string(memberValue0_1, add(headStart, 576))\n let memberValue0_2 := mload(add(value0, 96))\n abi_encode_address(memberValue0_2, add(headStart, 128))\n let memberValue0_3 := mload(add(value0, 128))\n let _2 := not(31)\n mstore(add(headStart, 160), add(sub(tail_1, headStart), _2))\n let tail_2 := abi_encode_string(memberValue0_3, tail_1)\n mstore(add(headStart, 192), mload(add(value0, 160)))\n mstore(add(headStart, 224), mload(add(value0, 192)))\n let memberValue0_4 := mload(add(value0, 224))\n let _3 := 256\n abi_encode_int64(memberValue0_4, add(headStart, _3))\n let memberValue0_5 := mload(add(value0, _3))\n let _4 := 288\n mstore(add(headStart, _4), add(sub(tail_2, headStart), _2))\n let tail_3 := abi_encode_string(memberValue0_5, tail_2)\n let _5 := mload(add(value0, _4))\n let _6 := 320\n mstore(add(headStart, _6), _5)\n let memberValue0_6 := mload(add(value0, _6))\n let _7 := 352\n abi_encode_uint32(memberValue0_6, add(headStart, _7))\n let memberValue0_7 := mload(add(value0, _7))\n let _8 := 384\n abi_encode_uint32(memberValue0_7, add(headStart, _8))\n let memberValue0_8 := mload(add(value0, _8))\n let _9 := 416\n abi_encode_uint16(memberValue0_8, add(headStart, _9))\n let memberValue0_9 := mload(add(value0, _9))\n let _10 := 448\n abi_encode_uint16(memberValue0_9, add(headStart, _10))\n let memberValue0_10 := mload(add(value0, _10))\n let _11 := 480\n abi_encode_uint32(memberValue0_10, add(headStart, _11))\n let memberValue0_11 := mload(add(value0, _11))\n let _12 := 512\n abi_encode_uint32(memberValue0_11, add(headStart, _12))\n let memberValue0_12 := mload(add(value0, _12))\n abi_encode_uint32(memberValue0_12, add(headStart, _1))\n tail := tail_3\n }\n function abi_encode_tuple_t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC019\")\n tail := add(headStart, 96)\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_packed_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n { end := pos }\n function abi_encode_tuple_t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC020\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_stringliteral_ccfdeeda37cff52b8b53c7f459ead001a00858d8cd279133dc1e599c6257c485__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC021\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ae5a5bd2536c79a56736074670f517df1b8a17deb822b59dfa1648888074b4cc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC022\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_7e21a7b13292bf184f2fc166cca229506aa89a730258f15cdce6a2f8dc225415__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC003\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_a80fe4c2764b7c4b52829ebb2b1bb3117b2b8ffa6a6401dbe00248ec851a73a8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC070\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_f838e22b544c153329abcc9856d1b1f7e7f6c83118dc13d7a0606e65edb3cdd8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC009\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"pegin\")\n end := add(pos, 5)\n }\n function abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function abi_encode_tuple_t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC008\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"pegout\")\n end := add(pos, 6)\n }\n function checked_mul_t_uint256(x, y) -> product\n {\n product := mul(x, y)\n if iszero(or(iszero(x), eq(y, div(product, x)))) { panic_error_0x11() }\n }\n function panic_error_0x12()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n function checked_div_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := div(x, y)\n }\n function mod_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := mod(x, y)\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, not(0)) { panic_error_0x11() }\n ret := add(value, 1)\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), not(0)))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC001\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_7a2a4e26842155ea933fe6eb6e3137eb5a296dcdf55721c552be7b4c3cc23759__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 46)\n mstore(add(headStart, 64), \"Initializable: contract is alrea\")\n mstore(add(headStart, 96), \"dy initialized\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_b08af29ae9ab6d901d6564b35ffdb791cf633ea45a36ea23bf660bfada2612fe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC004\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_aef7c38006d01c174c6b5b14fe8e6059baae2f7a6dd6bce99907771d261c0abd__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC072\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b87a2fdd3e8805c862b0b631e2cf43b048cd2e48956f7516ed8be20eb14ec931__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC073\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_rational_1_by_1__to_t_uint8__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xff))\n }\n function panic_error_0x32()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_stringliteral_1e153c8413fa71b1dc88c42214ae3211e20bbd7d323adc3a7cb82fb90c05d672__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC023\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC028\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_address_t_bytes32_t_bytes_memory_ptr__to_t_address_t_bytes32_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), 96)\n tail := abi_encode_string(value2, add(headStart, 96))\n }\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_bool(value)\n value0 := value\n }\n function abi_encode_tuple_t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC029\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_6b987c2142a6ed89e76021f4d9a60f3cbfc2f7110bd81bc33ff58ad7cf27befa__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC030\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b9f5a33cea5e5738277827f2f81faa92d1d3c73cf030e2542a7b80c6f7bdc8a7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC031\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5d8d108d93a53583cf1949d2287cc7f0af5603bd102faf9db90e7e6bbc90ade8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC032\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_e976d8a3febca36c67dcd5b38ae845ffd2f248a24eaf2d7a97f208ffd80ff125__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC033\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_745436b16371784f7b451bf4bed6f0978e2f007f74e71dfa0c49414b3a522759__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC034\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_37570ea73114ff69cb8aab9e09d6f5beb11b36ce1a2ae19ee6f5de28dc42d754__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC035\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5ccb4449252c316623411606962515c0966208bcce5fe352c2e850b058d1077c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC036\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_address_t_uint256_t_bytes32__to_t_address_t_uint256_t_bytes32__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n tail := add(headStart, 96)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), value2)\n }\n function abi_encode_tuple_t_bytes32_t_int256__to_t_bytes32_t_int256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_bytes20(value, pos)\n {\n mstore(pos, and(value, not(sub(shl(96, 1), 1))))\n }\n function abi_encode_struct_PeginQuote(value, pos) -> end\n {\n let _1 := 0x0240\n abi_encode_bytes20(mload(value), pos)\n let memberValue0 := mload(add(value, 0x20))\n abi_encode_address(memberValue0, add(pos, 0x20))\n let memberValue0_1 := mload(add(value, 0x40))\n abi_encode_address(memberValue0_1, add(pos, 0x40))\n let memberValue0_2 := mload(add(value, 0x60))\n mstore(add(pos, 0x60), _1)\n let tail := abi_encode_string(memberValue0_2, add(pos, _1))\n let memberValue0_3 := mload(add(value, 0x80))\n abi_encode_address(memberValue0_3, add(pos, 0x80))\n let memberValue0_4 := mload(add(value, 0xa0))\n mstore(add(pos, 0xa0), sub(tail, pos))\n let tail_1 := abi_encode_string(memberValue0_4, tail)\n mstore(add(pos, 0xc0), mload(add(value, 0xc0)))\n mstore(add(pos, 0xe0), mload(add(value, 0xe0)))\n let _2 := 0x0100\n let memberValue0_5 := mload(add(value, _2))\n abi_encode_address(memberValue0_5, add(pos, _2))\n let _3 := 0x0120\n let memberValue0_6 := mload(add(value, _3))\n mstore(add(pos, _3), sub(tail_1, pos))\n let tail_2 := abi_encode_string(memberValue0_6, tail_1)\n let _4 := 0x0140\n let memberValue0_7 := mload(add(value, _4))\n abi_encode_uint32(memberValue0_7, add(pos, _4))\n let _5 := 0x0160\n let memberValue0_8 := mload(add(value, _5))\n abi_encode_int64(memberValue0_8, add(pos, _5))\n let _6 := 0x0180\n mstore(add(pos, _6), mload(add(value, _6)))\n let _7 := 0x01a0\n let memberValue0_9 := mload(add(value, _7))\n abi_encode_uint32(memberValue0_9, add(pos, _7))\n let _8 := 0x01c0\n let memberValue0_10 := mload(add(value, _8))\n abi_encode_uint32(memberValue0_10, add(pos, _8))\n let _9 := 0x01e0\n let memberValue0_11 := mload(add(value, _9))\n abi_encode_uint32(memberValue0_11, add(pos, _9))\n let _10 := 0x0200\n let memberValue0_12 := mload(add(value, _10))\n abi_encode_uint16(memberValue0_12, add(pos, _10))\n let _11 := 0x0220\n let memberValue0_13 := mload(add(value, _11))\n abi_encode_bool(memberValue0_13, add(pos, _11))\n end := tail_2\n }\n function abi_encode_tuple_t_struct$_PeginQuote_$10924_memory_ptr_t_uint256__to_t_struct$_PeginQuote_$10924_memory_ptr_t_uint256__fromStack_library_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n tail := abi_encode_struct_PeginQuote(value0, add(headStart, 64))\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_address_payable_t_uint256_t_bool_t_bytes32__to_t_address_t_uint256_t_bool_t_bytes32__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 128)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), iszero(iszero(value2)))\n mstore(add(headStart, 96), value3)\n }\n function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function abi_encode_tuple_t_uint32_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__to_t_uint256_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__fromStack_reversed(headStart, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, and(value0, 0xffffffff))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), 160)\n tail := abi_encode_string(value2, add(headStart, 160))\n mstore(add(headStart, 96), iszero(iszero(value3)))\n mstore(add(headStart, 128), value4)\n }\n function abi_encode_tuple_t_stringliteral_0a36b25bf1b768acf545d4a7d22e9fceeba3414a7a19dc34973fc2e1be01a831__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC005\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ecc75ee801269ba7670799af84ad7f1d968d59315783a708807424c72ec63d04__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC037\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_0267b5bcac1113eea8a4dc81e170e6fe59336df7f2c6a4d2ae7ad240f894a2f9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC063\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_39eacc26aa588693c014f46e6dd86f6cac22eb3287098210ddf746f1a6af8214__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC065\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_c8999eb883ba6531127283b89d3773d87761ac547946da55d1f52c5931d8838f__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC046\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b400745c4fd650850c2059b2d13f12980ca63b7ccd87c008204992f11af559c2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC047\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC064\")\n tail := add(headStart, 96)\n }\n function copy_byte_array_to_storage_from_t_bytes_memory_ptr_to_t_bytes_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function abi_encode_tuple_t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC042\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_476e33256b298fee7fc3dab0c339427caa3a9a4a44654f7f02b328083d44ca74__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC041\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, sub(shl(160, 1), 1)))\n }\n function abi_encode_tuple_t_stringliteral_0a7ff570d31f7e351d06bf5b8d0ef26a9275a9d32a7dffd7981a6c6ac58227c6__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC044\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_438c5a176571afee566b78f09f63757218623602a6c98e887399fe40429f63df__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC061\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__to_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value3, value2, value1, value0) -> end\n {\n mstore(pos, value0)\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 32), add(pos, 32), length)\n let _1 := add(pos, length)\n mstore(add(_1, 32), and(value2, not(sub(shl(96, 1), 1))))\n let length_1 := mload(value3)\n copy_memory_to_memory_with_cleanup(add(value3, 32), add(_1, 52), length_1)\n end := add(add(_1, length_1), 52)\n }\n function abi_decode_bytes_fromMemory(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := mload(offset)\n let array_1 := allocate_memory(array_allocation_size_bytes(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n copy_memory_to_memory_with_cleanup(add(offset, 0x20), add(array_1, 0x20), _1)\n array := array_1\n }\n function abi_decode_tuple_t_bytes_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := mload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_bytes_fromMemory(add(headStart, offset), dataEnd)\n }\n function abi_encode_tuple_packed_t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a_t_bytes32_t_stringliteral_32cefdcd8e794145c9af8dd1f4b1fbd92d6e547ae855553080fc8bd19c4883a0_t_bytes_memory_ptr__to_t_bytes1_t_bytes32_t_bytes1_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, \" \")\n mstore(add(pos, 1), value0)\n mstore(add(pos, 33), \"u\")\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 0x20), add(pos, 34), length)\n end := add(add(pos, length), 34)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__fromStack_library_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, 96)\n let tail_1 := abi_encode_string(value0, add(headStart, 96))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_string(value1, tail_1)\n mstore(add(headStart, 64), iszero(iszero(value2)))\n }\n function abi_encode_tuple_t_stringliteral_9c6c58d5603e5b2aab0d13c183f0136466f0ce13826630d90e079bf910078715__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC024\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ceda09d74f8a59745bfad5393e75482469dc6db77c24fde6f52df4409a3f744c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC025\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint32(x, y) -> sum\n {\n let _1 := 0xffffffff\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_2d63cc93f65e3c34ca5cba24271c3d6869155fb2ffc83f083d82378f26d56cb0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC026\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5a937cad92792f08abdaf15eed65a070909c29d924f856ec65923c138fd39a48__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC027\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_string(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n let _1 := 32\n if slt(sub(dataEnd, headStart), _1) { revert(0, 0) }\n let offset := mload(headStart)\n let _2 := sub(shl(64, 1), 1)\n if gt(offset, _2) { revert(0, 0) }\n let _3 := add(headStart, offset)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := mload(_3)\n let dst := allocate_memory(array_allocation_size_array_uint256_dyn(_4))\n let dst_1 := dst\n mstore(dst, _4)\n dst := add(dst, _1)\n let srcEnd := add(add(_3, shl(5, _4)), _1)\n if gt(srcEnd, dataEnd) { revert(0, 0) }\n let src := add(_3, _1)\n for { } lt(src, srcEnd) { src := add(src, _1) }\n {\n let innerOffset := mload(src)\n if gt(innerOffset, _2)\n {\n let _5 := 0\n revert(_5, _5)\n }\n let _6 := add(_3, innerOffset)\n let _7 := 0x80\n if slt(add(sub(dataEnd, _6), not(31)), _7)\n {\n let _8 := 0\n revert(_8, _8)\n }\n let value := allocate_memory_9162()\n let value_1 := mload(add(_6, _1))\n if iszero(eq(value_1, and(value_1, _2)))\n {\n let _9 := 0\n revert(_9, _9)\n }\n mstore(value, value_1)\n let _10 := 64\n let offset_1 := mload(add(_6, _10))\n if gt(offset_1, _2)\n {\n let _11 := 0\n revert(_11, _11)\n }\n mstore(add(value, _1), abi_decode_bytes_fromMemory(add(add(_6, offset_1), _1), dataEnd))\n let _12 := 96\n mstore(add(value, _10), mload(add(_6, _12)))\n mstore(add(value, _12), mload(add(_6, _7)))\n mstore(dst, value)\n dst := add(dst, _1)\n }\n value0 := dst_1\n }\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_5cf5f7c75a2357c5697933702fe9f20c432f8f5205def7bf18572d390cea5cc1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC069\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3c14ff4570332247d29826742fdf7f014a86ddbee2c49b0252a79ef49351f196__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC048\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__to_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n let tail_1 := add(headStart, 128)\n mstore(headStart, value0)\n let _1 := 32\n mstore(add(headStart, _1), value1)\n mstore(add(headStart, 64), value2)\n mstore(add(headStart, 96), 128)\n let pos := tail_1\n let length := mload(value3)\n mstore(tail_1, length)\n pos := add(headStart, 160)\n let srcPtr := add(value3, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, mload(srcPtr))\n pos := add(pos, _1)\n srcPtr := add(srcPtr, _1)\n }\n tail := pos\n }\n function abi_decode_tuple_t_int256_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_41cc9877d5a72c2a0ef0c602e024ddc86a1f279ef7306bab75dd3c5447ffb6e0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC049\")\n tail := add(headStart, 96)\n }\n function checked_mul_t_uint64(x, y) -> product\n {\n let _1 := sub(shl(64, 1), 1)\n let product_raw := mul(and(x, _1), and(y, _1))\n product := and(product_raw, _1)\n if iszero(eq(product, product_raw)) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_94643b69f05d64f660a022cd48046be494c1ed271b5d9ae602f6fdadc77976be__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC067\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bool__fromStack_library_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n tail := abi_encode_string(value0, add(headStart, 64))\n mstore(add(headStart, 32), iszero(iszero(value1)))\n }\n function abi_encode_tuple_packed_t_bytes_storage__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let ret := 0\n let slotValue := sload(value0)\n let length := extract_byte_array_length(slotValue)\n let _1 := 1\n switch and(slotValue, _1)\n case 0 {\n mstore(pos, and(slotValue, not(255)))\n ret := add(pos, mul(length, iszero(iszero(length))))\n }\n case 1 {\n mstore(0, value0)\n let _2 := 0x20\n let dataPos := keccak256(0, _2)\n let i := 0\n for { } lt(i, length) { i := add(i, _2) }\n {\n mstore(add(pos, i), sload(dataPos))\n dataPos := add(dataPos, _1)\n }\n ret := add(pos, length)\n }\n end := ret\n }\n function abi_encode_tuple_t_stringliteral_7cd3d68dd2419ceccbacf2f69bda9c4c2f3bdb0c0535db4bbef90be788c8f7de__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC068\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3dcf1159943f9eee729b997e5df9acd0f1771321696b1fb47efa6e54bee2f352__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC050\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"Ownable: new owner is the zero a\")\n mstore(add(headStart, 96), \"ddress\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_ed7029e52dbf10ed9f0aafb2c33265c713a3f4dfd10cc113f22ba3c1270e1ddb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC051\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_a1a398356814e2eac3017ce127db7657cbb8e2f1d90a78bc426eaa92c56969eb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC052\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_923b965409721a83cf4ae76f34fa52de6eb09679d5b7141d2c0fc518a94192db__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC053\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_472231c5f3abacc190b5fd56153fbfc4b6c39c18040d443b29faee14791d54d9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC054\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_1bdc71792e300c3b19739ad62e7651b4b49de502b7d1b6227970563bffaad71e__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC055\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint64(x, y) -> sum\n {\n let _1 := sub(shl(64, 1), 1)\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_79d3c6c4bda42d819072ed97d83e6147bd9ad75bd5415529ecb6a41984271fb2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC071\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_struct$_PeginQuote_$10924_memory_ptr__to_t_struct$_PeginQuote_$10924_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_struct_PeginQuote(value0, add(headStart, 32))\n }\n function abi_encode_tuple_t_stringliteral_b91014d5c812b217b1f7abf06d04044851a14f3d4efa9b6795d3964c23897cc9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC010\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_849663c0a27b21987cfc03f3233af0a7a46b23f0af09d39a18720d9610bcba81__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC017\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"both\")\n end := add(pos, 4)\n }\n function abi_encode_tuple_t_stringliteral_c8a2f96b1c149a2cda2dda6db9bbdafbecddac69bce104e31ad4dd14842e4820__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC018\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_d688db918bb9dd50354922faa108595679886fe9ff08046ad1ffe30aaea55f8b__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 43)\n mstore(add(headStart, 64), \"Initializable: contract is not i\")\n mstore(add(headStart, 96), \"nitializing\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_5004352c178489e456f74ee0937a3403e68ee3fa72f6afa5bff20fe549075132__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC056\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_struct$_PegOutQuote_$10959_memory_ptr__to_t_struct$_PegOutQuote_$10959_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n abi_encode_address(mload(value0), add(headStart, 32))\n let memberValue0 := mload(add(value0, 32))\n abi_encode_address(memberValue0, add(headStart, 64))\n let memberValue0_1 := mload(add(value0, 64))\n let _1 := 0x0220\n mstore(add(headStart, 96), _1)\n let tail_1 := abi_encode_string(memberValue0_1, add(headStart, 576))\n let memberValue0_2 := mload(add(value0, 96))\n abi_encode_address(memberValue0_2, add(headStart, 128))\n let memberValue0_3 := mload(add(value0, 128))\n let _2 := not(31)\n mstore(add(headStart, 160), add(sub(tail_1, headStart), _2))\n let tail_2 := abi_encode_string(memberValue0_3, tail_1)\n mstore(add(headStart, 192), mload(add(value0, 160)))\n mstore(add(headStart, 224), mload(add(value0, 192)))\n let memberValue0_4 := mload(add(value0, 224))\n let _3 := 256\n abi_encode_int64(memberValue0_4, add(headStart, _3))\n let memberValue0_5 := mload(add(value0, _3))\n let _4 := 288\n mstore(add(headStart, _4), add(sub(tail_2, headStart), _2))\n let tail_3 := abi_encode_string(memberValue0_5, tail_2)\n let _5 := mload(add(value0, _4))\n let _6 := 320\n mstore(add(headStart, _6), _5)\n let memberValue0_6 := mload(add(value0, _6))\n let _7 := 352\n abi_encode_uint32(memberValue0_6, add(headStart, _7))\n let memberValue0_7 := mload(add(value0, _7))\n let _8 := 384\n abi_encode_uint32(memberValue0_7, add(headStart, _8))\n let memberValue0_8 := mload(add(value0, _8))\n let _9 := 416\n abi_encode_uint16(memberValue0_8, add(headStart, _9))\n let memberValue0_9 := mload(add(value0, _9))\n let _10 := 448\n abi_encode_uint16(memberValue0_9, add(headStart, _10))\n let memberValue0_10 := mload(add(value0, _10))\n let _11 := 480\n abi_encode_uint32(memberValue0_10, add(headStart, _11))\n let memberValue0_11 := mload(add(value0, _11))\n let _12 := 512\n abi_encode_uint32(memberValue0_11, add(headStart, _12))\n let memberValue0_12 := mload(add(value0, _12))\n abi_encode_uint32(memberValue0_12, add(headStart, _1))\n tail := tail_3\n }\n function abi_encode_tuple_t_stringliteral_ebf73bba305590e4764d5cb53b69bffd6d4d092d1a67551cb346f8cfcdab8619__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 31)\n mstore(add(headStart, 64), \"ReentrancyGuard: reentrant call\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__fromStack_reversed(headStart, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 256\n mstore(headStart, _1)\n let tail_1 := abi_encode_string(value0, add(headStart, _1))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string(value2, tail_1)\n mstore(add(headStart, 96), value3)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n let tail_3 := abi_encode_string(value4, tail_2)\n mstore(add(headStart, 160), and(value5, sub(shl(160, 1), 1)))\n mstore(add(headStart, 192), sub(tail_3, headStart))\n tail := abi_encode_string(value6, tail_3)\n mstore(add(headStart, 224), iszero(iszero(value7)))\n }\n function abi_encode_tuple_t_stringliteral_b13cbe420d932534b4c4c376e19a45f25e0ca05c6f1a458489ccb0574b26a6d9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 20)\n mstore(add(headStart, 64), \"Invalid block height\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_bac19bb4c4dce4ec87196bdccebfa1c4310f60332f1259cdc0bb93303ee1c2a0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC058\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Ownable: caller is not the owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_670f3ba0b2ca6f986efb9f8a498a40315443c3d4e263cc5de65e37011508c7c9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC062\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_319f398ccb7cc8c2c2304e07f301f618437c863aa2ff561ced1eaa40fcd3df63__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC059\")\n tail := add(headStart, 96)\n }\n}", "id": 32, "language": "Yul", "name": "#utility.yul" @@ -49074,15 +49074,15 @@ "sourceMap": "479:35588:21:-:0;;;;;;;;;;;;;;;;;;;", "deployedSourceMap": "479:35588:21:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6609:6;;-1:-1:-1;;;;;6609:6:21;6587:10;:29;6579:48;;;;-1:-1:-1;;;6579:48:21;;216:2:32;6579:48:21;;;198:21:32;255:1;235:18;;;228:29;-1:-1:-1;;;273:18:32;;;266:36;319:18;;6579:48:21;;;;;;;;;479:35588;;;;;748:40;;;;;;;;;;;;787:1;748:40;;;;;520:4:32;508:17;;;490:36;;478:2;463:18;748:40:21;;;;;;;;794:46;;;;;;;;;;;;839:1;794:46;;6640:89;;;;;;;;;;-1:-1:-1;6712:10:21;;6640:89;;;683:25:32;;;671:2;656:18;6640:89:21;537:177:32;28870:132:21;;;;;;;;;;-1:-1:-1;28870:132:21;;;;;:::i;:::-;;:::i;12429:292::-;;;;;;;;;;-1:-1:-1;12429:292:21;;;;;:::i;:::-;;:::i;7235:85::-;;;;;;;;;;-1:-1:-1;7309:4:21;;7235:85;;13333:556;;;;;;;;;;;;;:::i;8471:1660::-;;;;;;:::i;:::-;;:::i;1388:94::-;;;;;;;;;;;;-1:-1:-1;;1388:94:21;;;;;7557:1:32;7546:21;;;;7528:40;;7516:2;7501:18;1388:94:21;7386:188:32;11957:192:21;;;:::i;5305:814::-;;;;;;;;;;-1:-1:-1;5305:814:21;;;;;:::i;:::-;;:::i;7838:145::-;;;;;;;;;;-1:-1:-1;7838:145:21;;;;;:::i;:::-;;:::i;:::-;;;8908:14:32;;8901:22;8883:41;;8871:2;8856:18;7838:145:21;8743:187:32;8177:185:21;;;;;;;;;;-1:-1:-1;8177:185:21;;;;;:::i;:::-;;:::i;7506:139::-;;;;;;;;;;-1:-1:-1;7506:139:21;;;;;:::i;:::-;7580:4;7603:25;;;:14;:25;;;;;:35;;;;;;7506:139;12795:532;;;;;;;;;;;;;:::i;10970:732::-;;;;;;;;;;-1:-1:-1;10970:732:21;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;29008:159::-;;;;;;;;;;-1:-1:-1;29008:159:21;;;;;:::i;:::-;;:::i;13963:205::-;;;;;;;;;;;;;:::i;17208:6399::-;;;;;;;;;;-1:-1:-1;17208:6399:21;;;;;:::i;:::-;;:::i;2085:101:0:-;;;;;;;;;;;;;:::i;6351:185:21:-;;;;;;;;;;-1:-1:-1;6351:185:21;;;;;:::i;:::-;;:::i;23613:1139::-;;;;;;:::i;:::-;;:::i;4084:22::-;;;;;;;;;;;;;;;;1062:79;;;;;;;;;;;;-1:-1:-1;;1062:79:21;;1462:85:0;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;24758:1040:21:-;;;;;;;;;;-1:-1:-1;24758:1040:21;;;;;:::i;:::-;;:::i;14366:109::-;;;;;;;;;;-1:-1:-1;14366:109:21;;;;;:::i;:::-;-1:-1:-1;;;;;14452:16:21;14426:7;14452:16;;;:10;:16;;;;;;;14366:109;694:48;;;;;;;;;;;;741:1;694:48;;583;;;;;;;;;;;;626:5;583:48;;;;;17380:6:32;17368:19;;;17350:38;;17338:2;17323:18;583:48:21;17206:188:32;11786:165:21;;;:::i;35334:302::-;;;;;;;;;;-1:-1:-1;35334:302:21;;;;;:::i;:::-;;:::i;27962:697::-;;;;;;;;;;-1:-1:-1;27962:697:21;;;;;:::i;:::-;;:::i;1646:42::-;;;;;;;;;;;;1687:1;1646:42;;1147:82;;;;;;;;;;;;-1:-1:-1;;1147:82:21;;15102:1589;;;;;;:::i;:::-;;:::i;979:77::-;;;;;;;;;;;;-1:-1:-1;;979:77:21;;1488:50;;;;;;;;;;;;-1:-1:-1;;1488:50:21;;14481:121;;;;;;;;;;-1:-1:-1;14481:121:21;;;;;:::i;:::-;-1:-1:-1;;;;;14573:22:21;14547:7;14573:22;;;:16;:22;;;;;;;14481:121;7125:104;;;;;;;;;;-1:-1:-1;7203:19:21;;-1:-1:-1;;;7203:19:21;;;;7125:104;;1594:46;;;;;;;;;;;;1639:1;1594:46;;1235:71;;;;;;;;;;;;-1:-1:-1;;1235:71:21;;7028:91;;;;;;;;;;-1:-1:-1;7105:7:21;;;;7028:91;;1312:70;;;;;;;;;;;;-1:-1:-1;;1312:70:21;;12220:106;;;:::i;25804:2153::-;;;;;;;;;;-1:-1:-1;25804:2153:21;;;;;:::i;:::-;;:::i;637:50::-;;;;;;;;;;;;683:4;637:50;;914:59;;;;;;;;;;;;-1:-1:-1;;914:59:21;;1544:44;;;;;;;;;;;;-1:-1:-1;;1544:44:21;;3557:20;;;;;;;;;;-1:-1:-1;3557:20:21;;;;-1:-1:-1;;;;;3557:20:21;;;6840:92;;;;;;;;;;-1:-1:-1;6912:13:21;;6840:92;;847:61;;;;;;;;;;;;-1:-1:-1;;847:61:21;;7326:174;;;;;;;;;;-1:-1:-1;7326:174:21;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;2335:198:0:-;;;;;;;;;;-1:-1:-1;2335:198:0;;;;;:::i;:::-;;:::i;14801:104:21:-;;;;;;;;;;-1:-1:-1;14801:104:21;;;;;:::i;:::-;-1:-1:-1;;;;;14884:14:21;14858:7;14884:14;;;:8;:14;;;;;;;14801:104;6938:84;;;;;;;;;;-1:-1:-1;7007:8:21;;6938:84;;6735:99;;;;;;;;;;-1:-1:-1;6820:6:21;;-1:-1:-1;;;;;6820:6:21;6735:99;;28870:132;28942:7;28968:27;28989:5;28968:20;:27::i;:::-;28961:34;28870:132;-1:-1:-1;;28870:132:21:o;12429:292::-;12499:10;12490:20;;;;:8;:20;;;;;;:30;-1:-1:-1;12490:30:21;12482:49;;;;-1:-1:-1;;;12482:49:21;;;;;;;:::i;:::-;12550:10;12541:20;;;;:8;:20;;;;;:30;;12565:6;;12541:20;:30;;12565:6;;12541:30;:::i;:::-;;;;-1:-1:-1;;12599:34:21;;12582:12;;12599:10;;12622:6;;12582:12;12599:34;12582:12;12599:34;12622:6;12599:10;:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12581:52;;;12651:7;12643:26;;;;-1:-1:-1;;;12643:26:21;;;;;;;:::i;:::-;12684:30;12695:10;12707:6;12684:30;;;;;;;:::i;:::-;;;;;;;;12472:249;12429:292;:::o;13333:556::-;13416:10;13430:1;13396:31;;;:19;:31;;;;;;13388:54;;;;-1:-1:-1;;;13388:54:21;;;;;;;:::i;:::-;13535:19;;13508:10;13488:31;;;;:19;:31;;;;;;-1:-1:-1;;;13535:19:21;;;;;;13473:46;;:12;:46;:::i;:::-;:81;;13452:134;;;;-1:-1:-1;;;13452:134:21;;;;;;;:::i;:::-;13627:10;13596:11;13610:28;;;:16;:28;;;;;;;;;;13648:32;;;;13690:19;:31;;;;;;:35;;;13753:34;13610:28;;13627:10;13610:28;;13596:11;13753:34;13596:11;13753:34;13610:28;13627:10;13753:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13735:52;;;13805:7;13797:26;;;;-1:-1:-1;;;13797:26:21;;;;;;;:::i;:::-;13838:44;13863:10;13875:6;13838:44;;;;;;;:::i;8471:1660::-;8652:4;4624:9;4637:10;4624:23;4616:42;;;;-1:-1:-1;;;4616:42:21;;24783:2:32;4616:42:21;;;24765:21:32;24822:1;24802:18;;;24795:29;-1:-1:-1;;;24840:18:32;;;24833:36;24886:18;;4616:42:21;24581:329:32;4616:42:21;8738:107:::1;8778:5;8797:11;8822:13;8738:26;:107::i;:::-;8875:10;8864:22;::::0;;;:10:::1;:22;::::0;;;;;:27;:64;::::1;;;-1:-1:-1::0;8912:10:21::1;8895:28;::::0;;;:16:::1;:28;::::0;;;;;:33;8864:64:::1;8856:83;;;::::0;-1:-1:-1;;;8856:83:21;;25117:2:32;8856:83:21::1;::::0;::::1;25099:21:32::0;25156:1;25136:18;;;25129:29;-1:-1:-1;;;25174:18:32;;;25167:36;25220:18;;8856:83:21::1;24915:329:32::0;8856:83:21::1;8990:10;8970:31;::::0;;;:19:::1;:31;::::0;;;;;:36;8949:89:::1;;;::::0;-1:-1:-1;;;8949:89:21;;25451:2:32;8949:89:21::1;::::0;::::1;25433:21:32::0;25490:1;25470:18;;;25463:29;-1:-1:-1;;;25508:18:32;;;25501:36;25554:18;;8949:89:21::1;25249:329:32::0;8949:89:21::1;9109:25;;;;;;;:::i;:::-;;;;;;;;;;;;;9099:36;;;;;;9080:13;9063:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;9053:42;;;;;;:82:::0;9049:700:::1;;9172:13;;9159:9;:26;;9151:45;;;;-1:-1:-1::0;;;9151:45:21::1;;;;;;;:::i;:::-;9221:10;9210:22;::::0;;;:10:::1;:22;::::0;;;;9235:9:::1;9210:34:::0;;9049:700:::1;;;9321:26;;;;;;;:::i;:::-;;;;;;;;;;;;;9311:37;;;;;;9292:13;9275:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;9265:42;;;;;;:83:::0;9261:488:::1;;9385:13;;9372:9;:26;;9364:45;;;;-1:-1:-1::0;;;9364:45:21::1;;;;;;;:::i;:::-;9440:10;9423:28;::::0;;;:16:::1;:28;::::0;;;;9454:9:::1;9423:40:::0;;9261:488:::1;;;9515:13;::::0;:17:::1;::::0;9531:1:::1;9515:17;:::i;:::-;9502:9;:30;;9494:49;;;;-1:-1:-1::0;;;9494:49:21::1;;;;;;;:::i;:::-;9557:17;9577:13;9589:1;9577:9;:13;:::i;:::-;9557:33:::0;-1:-1:-1;9629:13:21::1;9641:1;9629:9;:13;:::i;:::-;:18:::0;:52:::1;;9665:16;:12:::0;9680:1:::1;9665:16;:::i;:::-;9629:52;;;9650:12;9629:52;9615:10;9604:22;::::0;;;:10:::1;:22;::::0;;;;;;;:77;;;;9695:16:::1;:28:::0;;;:43;9261:488:::1;9759:10;:12:::0;;;:10:::1;:12;::::0;::::1;:::i;:::-;::::0;;;-1:-1:-1;;9814:223:21::1;::::0;;::::1;::::0;::::1;::::0;;9850:10:::1;::::0;9814:223;;;9884:10:::1;9814:223;::::0;;::::1;::::0;;;;;;;;;;;;;;;;::::1;;::::0;;;;;;;;;;-1:-1:-1;9781:30:21;;;:18:::1;:30:::0;;;;;;;:256;;;;;;::::1;::::0;::::1;::::0;;-1:-1:-1;;;;;;9781:256:21::1;-1:-1:-1::0;;;;;9781:256:21;;::::1;::::0;;;::::1;::::0;;;;9814:223;;9781:30;:256:::1;::::0;::::1;::::0;::::1;::::0;;::::1;:::i;:::-;-1:-1:-1::0;9781:256:21::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;:::i;:::-;-1:-1:-1::0;9781:256:21::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;;-1:-1:-1;;9781:256:21::1;::::0;::::1;;::::0;;;::::1;::::0;;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;:::i;:::-;-1:-1:-1::0;;10061:10:21::1;::::0;10052:43:::1;::::0;;30312:25:32;;;10085:9:21::1;30368:2:32::0;30353:18;;30346:34;10073:10:21::1;::::0;-1:-1:-1;10052:43:21::1;::::0;30285:18:32;10052:43:21::1;;;;;;;-1:-1:-1::0;10113:10:21::1;::::0;4668:1:::1;8471:1660:::0;;;;;;:::o;11957:192::-;4519:33;4541:10;4519:21;:33::i;:::-;4511:52;;;;-1:-1:-1;;;4511:52:21;;;;;;;:::i;:::-;12056:10:::1;12039:28;::::0;;;:16:::1;:28;::::0;;;;:41;;12071:9:::1;::::0;12039:28;:41:::1;::::0;12071:9;;12039:41:::1;:::i;:::-;::::0;;;-1:-1:-1;;12095:47:21::1;::::0;::::1;::::0;::::1;::::0;12120:10:::1;::::0;12132:9:::1;::::0;12095:47:::1;:::i;:::-;;;;;;;;11957:192::o:0;5305:814::-;3279:19:1;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:1;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;-1:-1:-1;3426:4:1;1713:19:3;:23;;;3387:66:1;;-1:-1:-1;3436:12:1;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:1;;30927:2:32;3325:201:1;;;30909:21:32;30966:2;30946:18;;;30939:30;31005:34;30985:18;;;30978:62;-1:-1:-1;;;31056:18:32;;;31049:44;31110:19;;3325:201:1;30725:410:32;3325:201:1;3536:12;:16;;-1:-1:-1;;3536:16:1;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:1;;;;;3562:65;5645:3:21::1;5624:17;:24;;;;5616:43;;;::::0;-1:-1:-1;;;5616:43:21;;31342:2:32;5616:43:21::1;::::0;::::1;31324:21:32::0;31381:1;31361:18;;;31354:29;-1:-1:-1;;;31399:18:32;;;31392:36;31445:18;;5616:43:21::1;31140:329:32::0;5616:43:21::1;5699:10;5677:18;:32;;5669:51;;;::::0;-1:-1:-1;;;5669:51:21;;31676:2:32;5669:51:21::1;::::0;::::1;31658:21:32::0;31715:1;31695:18;;;31688:29;-1:-1:-1;;;31733:18:32;;;31726:36;31779:18;;5669:51:21::1;31474:329:32::0;5669:51:21::1;5760:2;5738:18;:24;;;;5730:43;;;::::0;-1:-1:-1;;;5730:43:21;;32010:2:32;5730:43:21::1;::::0;::::1;31992:21:32::0;32049:1;32029:18;;;32022:29;-1:-1:-1;;;32067:18:32;;;32060:36;32113:18;;5730:43:21::1;31808:329:32::0;5730:43:21::1;5783:26;:24;:26::i;:::-;5819:6;:31:::0;;-1:-1:-1;;;;;5819:31:21;::::1;-1:-1:-1::0;;;;;;5819:31:21;;::::1;;::::0;;5860:13:::1;:34:::0;;;5904:8:::1;:24:::0;;;5938:7:::1;:27:::0;;::::1;5975:40:::0;;::::1;-1:-1:-1::0;;;5975:40:21::1;-1:-1:-1::0;;;;;;5975:40:21;;;5938:27;;::::1;5975:40:::0;::::1;::::0;;6025:4:::1;:21:::0;;;6056:12:::1;:28:::0;;;6094:7:::1;:18:::0;;;::::1;;-1:-1:-1::0;;6094:18:21;;::::1;;::::0;;3647:99:1;;;;3697:5;3681:21;;-1:-1:-1;;3681:21:1;;;3721:14;;-1:-1:-1;490:36:32;;3721:14:1;;478:2:32;463:18;3721:14:1;;;;;;;3647:99;3269:483;5305:814:21;;;;;;;;:::o;7838:145::-;7898:4;7921:18;7934:4;7921:12;:18::i;:::-;:55;;;;-1:-1:-1;7963:13:21;;-1:-1:-1;;;;;7943:16:21;;;;;;:10;:16;;;;;;:33;;7914:62;7838:145;-1:-1:-1;;7838:145:21:o;8177:185::-;8246:4;8277:27;8299:4;8277:21;:27::i;:::-;:78;;;;-1:-1:-1;8342:13:21;;-1:-1:-1;;;;;8316:22:21;;;;;;:16;:22;;;;;;:39;;8262:93;8177:185;-1:-1:-1;;8177:185:21:o;12795:532::-;12872:10;12886:1;12852:31;;;:19;:31;;;;;;12844:54;;;;-1:-1:-1;;;12844:54:21;;;;;;;:::i;:::-;12991:19;;12964:10;12944:31;;;;:19;:31;;;;;;-1:-1:-1;;;12991:19:21;;;;;;12929:46;;:12;:46;:::i;:::-;:81;;12908:134;;;;-1:-1:-1;;;12908:134:21;;;;;;;:::i;:::-;13077:10;13052:11;13066:22;;;:10;:22;;;;;;;;;;13098:26;;;;13134:19;:31;;;;;;:35;;;13197:34;13066:22;;13077:10;13066:22;;13052:11;13197:34;13052:11;13197:34;13066:22;13077:10;13197:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13179:52;;;13249:7;13241:26;;;;-1:-1:-1;;;13241:26:21;;;;;;;:::i;:::-;13282:38;13301:10;13313:6;13282:38;;;;;;;:::i;10970:732::-;11056:26;11094:44;11178:11;:18;-1:-1:-1;;;;;11141:65:21;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11141:65:21;;;;;;;;;;;;;;;;;11094:112;;11216:10;11246:6;11241:421;11262:11;:18;11258:1;:22;11241:421;;;11301:7;11311:11;11323:1;11311:14;;;;;;;;:::i;:::-;;;;;;;;;;;;11374:22;;;;:18;:22;;;;;;;:31;;;11311:14;;-1:-1:-1;11361:45:21;;-1:-1:-1;;;;;11374:31:21;11361:12;:45::i;:::-;:119;;;-1:-1:-1;11448:22:21;;;;:18;:22;;;;;:31;;;11426:54;;-1:-1:-1;;;;;11448:31:21;11426:21;:54::i;:::-;11360:170;;;;-1:-1:-1;11501:22:21;;;;:18;:22;;;;;:29;;;;;11360:170;11339:313;;;11590:22;;;;:18;:22;;;;;;;;;11563:49;;;;;;;;;;;;;;;-1:-1:-1;;;;;11563:49:21;;;;;;;;;;;;;;;11590:22;;11563:49;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;11563:49:21;;;-1:-1:-1;;11563:49:21;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:17;11581:5;11563:24;;;;;;;;:::i;:::-;;;;;;:49;;;;11630:7;;;;;:::i;:::-;;;;11339:313;-1:-1:-1;11282:3:21;;;;:::i;:::-;;;;11241:421;;;-1:-1:-1;11678:17:21;;10970:732;-1:-1:-1;;;10970:732:21:o;29008:159::-;29101:7;29127:33;29154:5;29127:26;:33::i;13963:205::-;4407:24;4420:10;4407:12;:24::i;:::-;4399:43;;;;-1:-1:-1;;;4399:43:21;;;;;;;:::i;:::-;14043:10:::1;14023:31;::::0;;;:19:::1;:31;::::0;;;;;:36;14015:55:::1;;;::::0;-1:-1:-1;;;14015:55:21;;32675:2:32;14015:55:21::1;::::0;::::1;32657:21:32::0;32714:1;32694:18;;;32687:29;-1:-1:-1;;;32732:18:32;;;32725:36;32778:18;;14015:55:21::1;32473:329:32::0;14015:55:21::1;14100:10;14080:31;::::0;;;:19:::1;:31;::::0;;;;;;14114:12:::1;14080:46:::0;;14141:20;::::1;::::0;::::1;::::0;::::1;:::i;17208:6399::-:0;17442:6;2526:21:2;:19;:21::i;:::-;17460:17:21::1;17480:27;17501:5;17480:20;:27::i;:::-;17633:26;::::0;;;:15:::1;:26;::::0;;;;;;;-1:-1:-1;787:1:21::1;17633:44;:26:::0;;::::1;:44;;17612:97;;;;-1:-1:-1::0;;;17612:97:21::1;;;;;;;:::i;:::-;17783:33;::::0;;::::1;::::0;17740:144;;-1:-1:-1;;;17740:144:21;;:18:::1;::::0;:25:::1;::::0;:144:::1;::::0;17783:33;17834:9;;17861;;17740:144:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17719:197;;;;-1:-1:-1::0;;;17719:197:21::1;;;;;;;:::i;:::-;17958:15;17934:41:::0;::::1;17926:60;;;::::0;-1:-1:-1;;;17926:60:21;;34326:2:32;17926:60:21::1;::::0;::::1;34308:21:32::0;34365:1;34345:18;;;34338:29;-1:-1:-1;;;34383:18:32;;;34376:36;34429:18;;17926:60:21::1;34124:329:32::0;17926:60:21::1;17997:35;18035:148;18063:5;18082:17;18113;18144:6;18164:9;18035:14;:148::i;:::-;17997:186:::0;-1:-1:-1;18215:85:21;;;18194:138:::1;;;::::0;-1:-1:-1;;;18194:138:21;;34660:2:32;18194:138:21::1;::::0;::::1;34642:21:32::0;34699:1;34679:18;;;34672:29;-1:-1:-1;;;34717:18:32;;;34710:36;34763:18;;18194:138:21::1;34458:329:32::0;18194:138:21::1;18363:96:::0;;;18342:149:::1;;;::::0;-1:-1:-1;;;18342:149:21;;34994:2:32;18342:149:21::1;::::0;::::1;34976:21:32::0;35033:1;35013:18;;;35006:29;-1:-1:-1;;;35051:18:32;;;35044:36;35097:18;;18342:149:21::1;34792:329:32::0;18342:149:21::1;18522:84:::0;;;18501:137:::1;;;::::0;-1:-1:-1;;;18501:137:21;;35328:2:32;18501:137:21::1;::::0;::::1;35310:21:32::0;35367:1;35347:18;;;35340:29;-1:-1:-1;;;35385:18:32;;;35378:36;35431:18;;18501:137:21::1;35126:329:32::0;18501:137:21::1;18669:104:::0;;;18648:157:::1;;;::::0;-1:-1:-1;;;18648:157:21;;35662:2:32;18648:157:21::1;::::0;::::1;35644:21:32::0;35701:1;35681:18;;;35674:29;-1:-1:-1;;;35719:18:32;;;35712:36;35765:18;;18648:157:21::1;35460:329:32::0;18648:157:21::1;18836:52:::0;;;18815:105:::1;;;::::0;-1:-1:-1;;;18815:105:21;;35996:2:32;18815:105:21::1;::::0;::::1;35978:21:32::0;36035:1;36015:18;;;36008:29;-1:-1:-1;;;36053:18:32;;;36046:36;36099:18;;18815:105:21::1;35794:329:32::0;18815:105:21::1;18982:1;18951:28;:32;:109;;;-1:-1:-1::0;;;18999:61:21;::::1;18951:109;:188;;;-1:-1:-1::0;;;19076:63:21;::::1;18951:188;18930:241;;;::::0;-1:-1:-1;;;18930:241:21;;36330:2:32;18930:241:21::1;::::0;::::1;36312:21:32::0;36369:1;36349:18;;;36342:29;-1:-1:-1;;;36387:18:32;;;36380:36;36433:18;;18930:241:21::1;36128:329:32::0;18930:241:21::1;19290:23;::::0;;;:12:::1;:23;::::0;;;;:33;19199:154:::1;::::0;19229:5;;19248:28;;19290:33:::1;;19337:6:::0;19199:16:::1;:154::i;:::-;19182:816;;;19425:16;::::0;::::1;::::0;19470:33:::1;::::0;;::::1;::::0;-1:-1:-1;;;;;19459:45:21::1;19378:23;19459:45:::0;;;:10:::1;:45;::::0;;;;;19378:23;;19404:114:::1;::::0;:3:::1;:114::i;:::-;19378:140;;19644:18;19595:10;:45;19606:5;:33;;;-1:-1:-1::0;;;;;19595:45:21::1;-1:-1:-1::0;;;;;19595:45:21::1;;;;;;;;;;;;;:67;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;19708:33:21::1;::::0;;::::1;::::0;19681:137;;-1:-1:-1;;;;;;;;;;;19681:137:21;::::1;::::0;19759:18;;19795:9;;19681:137:::1;:::i;:::-;;;;;;;;19916:7;::::0;19869:22:::1;::::0;19927:3:::1;::::0;19895:28:::1;::::0;19916:7:::1;;19895:18:::0;:28:::1;:::i;:::-;19894:36;;;;:::i;:::-;19869:61;;19944:43;19960:10;19972:14;19944:15;:43::i;:::-;19364:634;;19182:816;-1:-1:-1::0;;20025:61:21;::::1;::::0;:140:::1;;-1:-1:-1::0;;;20102:63:21;::::1;20025:140;20008:447;;;20225:26;::::0;;;:15:::1;:26;::::0;;;;;;;:49;;-1:-1:-1;;20225:49:21::1;839:1;20225:49;::::0;;20295:12:::1;:23:::0;;;;;;20288:30;;-1:-1:-1;;20288:30:21;;;20337:58;;30312:25:32;;;30353:18;;;30346:34;;;20337:58:21::1;::::0;30285:18:32;20337:58:21::1;;;;;;;20416:28:::0;-1:-1:-1;20409:35:21::1;::::0;-1:-1:-1;20409:35:21::1;20008:447;20711:50;::::0;-1:-1:-1;;;20711:50:21;;20671:28;;20711:6:::1;::::0;:24:::1;::::0;:50:::1;::::0;20736:5;;20671:28;;20711:50:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;;20812:1:21::1;20776:23:::0;;;:12:::1;:23;::::0;;;;:33;::::1;;:37:::0;;-1:-1:-1;20772:2614:21::1;;20829:17;20865:23:::0;;;:12:::1;:23;::::0;;;;:31;-1:-1:-1;;;20865:31:21;::::1;;;20861:285;;;20931:109;20956:17;21009:5;:13;;;20995:5;:11;;;:27;;;;:::i;:::-;20931:3;:109::i;:::-;20916:124;;20861:285;;;21094:37;21098:17;21117:5;:13;;;21094:3;:37::i;:::-;21079:52;;20861:285;21159:64;21175:5;:33;;;21210:12;21159:15;:64::i;:::-;21237:20;21260:32;21280:12:::0;21260:17;:32:::1;:::i;:::-;21237:55;;21329:4;;21311:15;:22;21307:829;;;21453:22;::::0;::::1;::::0;:152:::1;::::0;21436:12:::1;::::0;-1:-1:-1;;;;;21453:27:21::1;::::0;683:4:::1;::::0;21564:15;;21436:12;21453:152;21436:12;21453:152;21564:15;21453:27;683:4;21453:152:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21435:170;;;-1:-1:-1::0;;;;;;;;;;;21656:5:21::1;:22;;;21700:15;21737:7;21766:9;21628:165;;;;;;;;;:::i;:::-;;;;;;;;21817:7;21812:310;;21966:137;22007:5;:33;;;22066:15;21966;:137::i;:::-;21335:801;21307:829;20815:1331;;20772:2614;;;22222:20;::::0;::::1;::::0;22186:17;;22222:51;::::1;;;;22262:5;:11;;;22246:12;:27;;22222:51;22218:656;;;22294:16;22315:5;:21;;;-1:-1:-1::0;;;;;22315:26:21::1;22372:5;:14;;;22315:149;;22419:5;:11;;;22453:5;:10;;;22315:149;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22293:171;;;22552:5;:21;;;-1:-1:-1::0;;;;;22487:269:21::1;22520:10;-1:-1:-1::0;;;;;22487:269:21::1;-1:-1:-1::0;;;;;;;;;;;22595:5:21::1;:14;;;22631:5;:11;;;22664:5;:10;;;22696:11;22729:9;22487:269;;;;;;;;;;:::i;:::-;;;;;;;;22779:11;22775:85;;;22830:11;::::0;::::1;::::0;22814:27:::1;::::0;;::::1;:::i;:::-;;;22775:85;22275:599;22218:656;22906:4;;22891:12;:19;22887:489;;;23027:22;::::0;::::1;::::0;:149:::1;::::0;23010:12:::1;::::0;-1:-1:-1;;;;;23027:27:21::1;::::0;683:4:::1;::::0;23138:12;;23010;23027:149;23010:12;23027:149;23138:12;23027:27;683:4;23027:149:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23009:167;;;-1:-1:-1::0;;;;;;;;;;;23227:5:21::1;:22;;;23271:12;23305:7;23334:9;23199:162;;;;;;;;;:::i;:::-;;;;;;;;22912:464;22887:489;22152:1234;20772:2614;23395:26;::::0;;;:15:::1;:26;::::0;;;;;;;:49;;-1:-1:-1;;23395:49:21::1;839:1;23395:49;::::0;;23461:12:::1;:23:::0;;;;;;23454:30;;-1:-1:-1;;23454:30:21;;;23499:56;;683:25:32;;;23395:26:21;;23499:56:::1;::::0;656:18:32;23499:56:21::1;;;;;;;-1:-1:-1::0;23572:28:21;-1:-1:-1;;2557:1:2::1;2568:20:::0;1808:1;3074:7;:22;2894:209;2568:20;17208:6399:21;;;;;;;:::o;2085:101:0:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;6351:185:21:-;6459:11;6218:7;:5;:7::i;:::-;-1:-1:-1;;;;;6204:21:21;:10;-1:-1:-1;;;;;6204:21:21;;:91;;;-1:-1:-1;6255:31:21;;;;:18;:31;;;;;:40;;;-1:-1:-1;;;;;6255:40:21;6241:10;:54;6204:91;6183:144;;;;-1:-1:-1;;;6183:144:21;;41273:2:32;6183:144:21;;;41255:21:32;41312:1;41292:18;;;41285:29;-1:-1:-1;;;41330:18:32;;;41323:36;41376:18;;6183:144:21;41071:329:32;6183:144:21;-1:-1:-1;6482:31:21::1;::::0;;;:18:::1;:31;::::0;;;;;:38:::1;;:47:::0;;-1:-1:-1;;6482:47:21::1;::::0;::::1;;::::0;;;::::1;::::0;;6351:185::o;23613:1139::-;23814:41;23836:5;:18;;;23814:21;:41::i;:::-;23806:60;;;;-1:-1:-1;;;23806:60:21;;41607:2:32;23806:60:21;;;41589:21:32;41646:1;41626:18;;;41619:29;-1:-1:-1;;;41664:18:32;;;41657:36;41710:18;;23806:60:21;41405:329:32;23806:60:21;23915:9;23898:5;:13;;;23884:5;:11;;;:27;;;;:::i;:::-;:40;;23876:59;;;;-1:-1:-1;;;23876:59:21;;41941:2:32;23876:59:21;;;41923:21:32;41980:1;41960:18;;;41953:29;-1:-1:-1;;;41998:18:32;;;41991:36;42044:18;;23876:59:21;41739:329:32;23876:59:21;23972:5;:22;;;23953:41;;:15;:41;;23945:60;;;;-1:-1:-1;;;23945:60:21;;42275:2:32;23945:60:21;;;42257:21:32;42314:1;42294:18;;;42287:29;-1:-1:-1;;;42332:18:32;;;42325:36;42378:18;;23945:60:21;42073:329:32;23945:60:21;24042:5;:16;;;24023:35;;:15;:35;;24015:54;;;;-1:-1:-1;;;24015:54:21;;42609:2:32;24015:54:21;;;42591:21:32;42648:1;42628:18;;;42621:29;-1:-1:-1;;;42666:18:32;;;42659:36;42712:18;;24015:54:21;42407:329:32;24015:54:21;24103:5;:17;;;24087:33;;:12;:33;;24079:52;;;;-1:-1:-1;;;24079:52:21;;42943:2:32;24079:52:21;;;42925:21:32;42982:1;42962:18;;;42955:29;-1:-1:-1;;;43000:18:32;;;42993:36;43046:18;;24079:52:21;42741:329:32;24079:52:21;24141:17;24161:22;24177:5;24161:15;:22::i;:::-;24240:18;;;;24214:67;;-1:-1:-1;;;24214:67:21;;24141:42;;-1:-1:-1;24214:18:21;;:25;;:67;;24141:42;;24271:9;;24214:67;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;24193:120;;;;-1:-1:-1;;;24193:120:21;;;;;;;:::i;:::-;24324:42;24369:33;;;:22;:33;;;;;;;;24421:14;:25;;;;;;:35;;;;;:44;24413:63;;;;-1:-1:-1;;;24413:63:21;;;;;;;:::i;:::-;24494:26;;-1:-1:-1;;;;;24494:26:21;:40;24486:59;;;;-1:-1:-1;;;24486:59:21;;;;;;;:::i;:::-;24555:33;;;;:22;:33;;;;;;;;;:41;;;;-1:-1:-1;;;;;;24555:41:21;;;-1:-1:-1;;;;;24555:41:21;;;;;;;;;;-1:-1:-1;24555:41:21;;;;;;;;;;;;;;;;;;;:33;:41;;;;;;;;:::i;:::-;-1:-1:-1;24555:41:21;;;;;;;;;-1:-1:-1;;;;;;24555:41:21;-1:-1:-1;;;;;24555:41:21;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;24555:41:21;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;24555:41:21;-1:-1:-1;;;;;24555:41:21;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;24555:41:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;24555:41:21;;;;;;;-1:-1:-1;;;24555:41:21;;;;;;;;;;;-1:-1:-1;;;;24555:41:21;-1:-1:-1;;;24555:41:21;;;;;-1:-1:-1;;;;24555:41:21;;-1:-1:-1;;;24555:41:21;;;;;;;;;-1:-1:-1;;;;;;;;24555:41:21;-1:-1:-1;;;24555:41:21;;;;;;;-1:-1:-1;;;;24555:41:21;;-1:-1:-1;;;24555:41:21;;;;;;;;;;;-1:-1:-1;;;;24555:41:21;-1:-1:-1;;;24555:41:21;;;;;;;;;;;;;;-1:-1:-1;24606:25:21;;;:14;:25;;;;;;;;;24651:15;24606:60;;;;24681:64;;24718:9;30312:25:32;;30353:18;;;30346:34;24706:10:21;;24606:25;;24681:64;;30285:18:32;24681:64:21;;;;;;;23796:956;;23613:1139;;:::o;1462:85:0:-;1534:6;;-1:-1:-1;;;;;1534:6:0;;1462:85::o;24758:1040:21:-;2526:21:2;:19;:21::i;:::-;24847:32:21::1;24882:33:::0;;;:22:::1;:33;::::0;;;;24934:16;;-1:-1:-1;;;;;24934:16:21::1;24926:49;;;;-1:-1:-1::0;;;24926:49:21::1;;;;;;;:::i;:::-;25024:16;::::0;::::1;::::0;-1:-1:-1;;;25024:16:21;::::1;;;25006:15;:34;:82:::0;::::1;;;-1:-1:-1::0;25071:17:21::1;::::0;::::1;::::0;-1:-1:-1;;;25071:17:21;::::1;;;25056:12;:32;25006:82;24985:135;;;::::0;-1:-1:-1;;;24985:135:21;;45300:2:32;24985:135:21::1;::::0;::::1;45282:21:32::0;45339:1;45319:18;;;45312:29;-1:-1:-1;;;45357:18:32;;;45350:36;45403:18;;24985:135:21::1;45098:329:32::0;24985:135:21::1;25131:20;25168:5;:13;;;25154:5;:11;;;:27;;;;:::i;:::-;25219:22;::::0;::::1;::::0;25271:16:::1;::::0;::::1;::::0;25219:22;25306:18;::::1;::::0;-1:-1:-1;;;;;25306:18:21;;::::1;25191:25;25289:36:::0;;;:16:::1;:36;::::0;;;;;25131:50;;-1:-1:-1;25219:22:21;::::1;::::0;25267:59:::1;::::0;25271:16;25267:3:::1;:59::i;:::-;25353:18;::::0;::::1;::::0;-1:-1:-1;;;;;25353:18:21::1;25336:36;::::0;;;:16:::1;:36;::::0;;;;:47;;25252:74;;-1:-1:-1;25252:74:21;;25336:36;;;:47:::1;::::0;25252:74;;25336:47:::1;:::i;:::-;::::0;;;-1:-1:-1;;25409:18:21::1;::::0;::::1;::::0;25399:49:::1;::::0;-1:-1:-1;;;;;;;;;;;25399:49:21;::::1;::::0;-1:-1:-1;;;;;25409:18:21;;::::1;::::0;25429:7;;25438:9;;25399:49:::1;:::i;:::-;;;;;;;;25547:22;::::0;::::1;::::0;25463:116:::1;::::0;;45606:25:32;;;-1:-1:-1;;;;;25547:22:21;;::::1;45662:2:32::0;45647:18;;45640:60;25495:9:21;;25463:116:::1;::::0;45579:18:32;25463:116:21::1;;;;;;;25597:33;::::0;;;:22:::1;:33;::::0;;;;25590:40;;-1:-1:-1;;;;;;25590:40:21;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;25597:33;25590:40:::1;;::::0;::::1;25597:33:::0;25590:40:::1;:::i;:::-;;::::0;::::1;::::0;;-1:-1:-1;;;;;;25590:40:21::1;::::0;;::::1;;::::0;::::1;;;:::i;:::-;;;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;;-1:-1:-1;;;;;;25590:40:21::1;::::0;;::::1;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;25590:40:21::1;;::::0;::::1;::::0;;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;;;;;25590:40:21;;;25640:25;;;:14:::1;:25;::::0;;;;;-1:-1:-1;25640:35:21;;::::1;:42:::0;;-1:-1:-1;;25640:42:21::1;::::0;;::::1;::::0;;25708:50;-1:-1:-1;;;;;25708:22:21;::::1;::::0;25738:15;;25590:40;25708:50;25590:40;25708:50;25738:15;25708:22;:50:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25693:65;;;25776:4;25768:23;;;::::0;-1:-1:-1;;;25768:23:21;;45913:2:32;25768:23:21::1;::::0;::::1;45895:21:32::0;45952:1;45932:18;;;45925:29;-1:-1:-1;;;45970:18:32;;;45963:36;46016:18;;25768:23:21::1;45711:329:32::0;25768:23:21::1;24837:961;;;;;2568:20:2::0;1808:1;3074:7;:22;2894:209;2568:20;24758:1040:21;:::o;11786:165::-;4407:24;4420:10;4407:12;:24::i;:::-;4399:43;;;;-1:-1:-1;;;4399:43:21;;;;;;;:::i;:::-;11864:10:::1;11853:22;::::0;;;:10:::1;:22;::::0;;;;:35;;11879:9:::1;::::0;11853:22;:35:::1;::::0;11879:9;;11853:35:::1;:::i;:::-;::::0;;;-1:-1:-1;;11903:41:21::1;::::0;::::1;::::0;::::1;::::0;11922:10:::1;::::0;11934:9:::1;::::0;11903:41:::1;:::i;35334:302::-:0;35420:7;35551:6;:13;35568:2;35551:19;35543:38;;;;-1:-1:-1;;;35543:38:21;;46247:2:32;35543:38:21;;;46229:21:32;46286:1;46266:18;;;46259:29;-1:-1:-1;;;46304:18:32;;;46297:36;46350:18;;35543:38:21;46045:329:32;35543:38:21;35599:30;35618:6;35626:2;35599:18;:30::i;:::-;35592:37;;;35334:302;-1:-1:-1;;35334:302:21:o;27962:697::-;28105:4;28121:23;28200:16;28210:5;28200:9;:16::i;:::-;28234:5;:22;;;28282:5;:16;;;28274:25;;28317:5;:33;;;28170:194;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;28147:227;;;;;;28121:253;;28384:32;28466:15;28516:6;;;;;;;;;-1:-1:-1;;;;;28516:6:21;-1:-1:-1;;;;;28516:34:21;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;28516:36:21;;;;;;;;;;;;:::i;:::-;28419:143;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;28419:143:21;;;;;;;;;;28644:7;;-1:-1:-1;;;28579:73:21;;28419:143;;-1:-1:-1;28579:8:21;;:27;;:73;;28607:14;;28419:143;;28644:7;;;;;28579:73;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;15102:1589::-;15223:4;4407:24;4420:10;4407:12;:24::i;:::-;4399:43;;;;-1:-1:-1;;;4399:43:21;;;;;;;:::i;:::-;2526:21:2::1;:19;:21::i;:::-;15274:5:21::2;:33;;;-1:-1:-1::0;;;;;15260:47:21::2;:10;-1:-1:-1::0;;;;;15260:47:21::2;;15239:100;;;::::0;-1:-1:-1;;;15239:100:21;;49114:2:32;15239:100:21::2;::::0;::::2;49096:21:32::0;49153:1;49133:18;;;49126:29;-1:-1:-1;;;49171:18:32;;;49164:36;49217:18;;15239:100:21::2;48912:329:32::0;15239:100:21::2;15441:11;::::0;::::2;::::0;15379:33:::2;::::0;;::::2;::::0;-1:-1:-1;;;;;15370:43:21::2;;::::0;;;:8:::2;:43;::::0;;;:55:::2;::::0;15416:9:::2;::::0;15370:55:::2;:::i;:::-;:82;;15349:135;;;;-1:-1:-1::0;;;15349:135:21::2;;;;;;;:::i;:::-;15495:17;15515:27;15536:5;15515:20;:27::i;:::-;741:1;15573:26:::0;;;:15:::2;:26;::::0;;;;;15495:47;;-1:-1:-1;15573:52:21::2;:26;:52:::0;15552:105:::2;;;::::0;-1:-1:-1;;;15552:105:21;;49448:2:32;15552:105:21::2;::::0;::::2;49430:21:32::0;49487:1;49467:18;;;49460:29;-1:-1:-1;;;49505:18:32;;;49498:36;49551:18;;15552:105:21::2;49246:329:32::0;15552:105:21::2;15668:61;15684:5;:33;;;15719:9;15668:15;:61::i;:::-;15875:14;::::0;::::2;::::0;:34:::2;::::0;626:5:::2;::::0;15875:34:::2;:::i;:::-;15862:47;;:9;:47;;15841:100;;;::::0;-1:-1:-1;;;15841:100:21;;49959:2:32;15841:100:21::2;::::0;::::2;49941:21:32::0;49998:1;49978:18;;;49971:29;-1:-1:-1;;;50016:18:32;;;50009:36;50062:18;;15841:100:21::2;49757:329:32::0;15841:100:21::2;15952:12;15969:5;:21;;;-1:-1:-1::0;;;;;15969:26:21::2;16018:5;:14;;;15969:125;;16057:5;:11;;;16083:5;:10;;;15969:125;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;15951:143:21;;-1:-1:-1;;16132:16:21::2;16113:15;:35;;16105:54;;;::::0;-1:-1:-1;;;16105:54:21;;50293:2:32;16105:54:21::2;::::0;::::2;50275:21:32::0;50332:1;50312:18;;;50305:29;-1:-1:-1;;;50350:18:32;;;50343:36;50396:18;;16105:54:21::2;50091:329:32::0;16105:54:21::2;16169:23;::::0;;;:12:::2;:23;::::0;;;;:59;;-1:-1:-1;;16169:59:21::2;16212:15;16169:59;;;::::0;;16239:153;::::2;;;16266:23;::::0;;;:12:::2;:23;::::0;;;;;;:38;;-1:-1:-1;;;;16266:38:21::2;-1:-1:-1::0;;;16266:38:21::2;::::0;;16334:33;::::2;::::0;16369:11:::2;::::0;::::2;::::0;16318:63:::2;::::0;16334:33;16318:15:::2;:63::i;:::-;16455:5;:21;;;-1:-1:-1::0;;;;;16406:201:21::2;16431:10;-1:-1:-1::0;;;;;16406:201:21::2;-1:-1:-1::0;;;;;;;;;;;16490:5:21::2;:14;;;16518:5;:11;;;16543:5;:10;;;16567:7;16588:9;16406:201;;;;;;;;;;:::i;:::-;;;;;;;;16617:26;::::0;;;:15:::2;:26;::::0;;;;;:43;;-1:-1:-1;;16617:43:21::2;787:1;16617:43;::::0;;16677:7;-1:-1:-1;2568:20:2::1;1808:1:::0;3074:7;:22;2894:209;2568:20:::1;15102:1589:21::0;;;:::o;12220:106::-;4407:24;4420:10;4407:12;:24::i;:::-;4399:43;;;;-1:-1:-1;;;4399:43:21;;;;;;;:::i;:::-;12281:38:::1;12297:10;12309:9;12281:15;:38::i;25804:2153::-:0;2526:21:2;:19;:21::i;:::-;4519:33:21::1;4541:10;4519:21;:33::i;:::-;4511:52;;;;-1:-1:-1::0;;;4511:52:21::1;;;;;;;:::i;:::-;26065:25:::2;::::0;;;:14:::2;:25;::::0;;;;:35:::2;;::::0;::::2;;:44;26057:63;;;;-1:-1:-1::0;;;26057:63:21::2;;;;;;;:::i;:::-;26130:32;26165:33:::0;;;:22:::2;:33;::::0;;;;26216:16;;-1:-1:-1;;;;;26216:16:21::2;26208:49;;;;-1:-1:-1::0;;;26208:49:21::2;;;;;;;:::i;:::-;26307:26;::::0;-1:-1:-1;;;26307:26:21;;26267:37:::2;::::0;26307:8:::2;::::0;:19:::2;::::0;:26:::2;::::0;26327:5;;26307:26:::2;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;::::0;;::::2;-1:-1:-1::0;;26307:26:21::2;::::0;::::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;:::i;:::-;26267:66;;26343:19;26376:8;:28;26405:7;1687:1;26405:26;;;;;;;;:::i;:::-;;;;;;;:35;;;26376:65;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;::::0;;::::2;-1:-1:-1::0;;26376:65:21::2;::::0;::::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;:::i;:::-;26365:88;;;;;;;;;;;;:::i;:::-;26343:110;;26484:11;26471:9;:24;26463:43;;;::::0;-1:-1:-1;;;26463:43:21;;53059:2:32;26463:43:21::2;::::0;::::2;53041:21:32::0;53098:1;53078:18;;;53071:29;-1:-1:-1;;;53116:18:32;;;53109:36;53162:18;;26463:43:21::2;52857:329:32::0;26463:43:21::2;26538:18;::::0;::::2;::::0;-1:-1:-1;;;;;26538:18:21::2;26524:10;:32;26516:51;;;::::0;-1:-1:-1;;;26516:51:21;;53393:2:32;26516:51:21::2;::::0;::::2;53375:21:32::0;53432:1;53412:18;;;53405:29;-1:-1:-1;;;53450:18:32;;;53443:36;53496:18;;26516:51:21::2;53191:329:32::0;26516:51:21::2;26815:27;::::0;::::2;::::0;26598:6:::2;::::0;26653:25:::2;::::0;-1:-1:-1;;;26653:25:21;;-1:-1:-1;;;26815:27:21;;::::2;;;::::0;-1:-1:-1;;;;;26598:6:21;;::::2;::::0;:37:::2;::::0;26653:8:::2;::::0;:18:::2;::::0;:25:::2;::::0;26672:5;;26653:25:::2;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;26696:18;26732:17;26767:18;26598:201;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:246;;26577:299;;;::::0;-1:-1:-1;;;26577:299:21;;54768:2:32;26577:299:21::2;::::0;::::2;54750:21:32::0;54807:1;54787:18;;;54780:29;-1:-1:-1;;;54825:18:32;;;54818:36;54871:18;;26577:299:21::2;54566:329:32::0;26577:299:21::2;26909:7;1639:1;26909:30;;;;;;;;:::i;:::-;;;;;;;:36;;;26949:6;26909:47;;;;:::i;:::-;-1:-1:-1::0;;;;;26894:62:21::2;:5;:11;;;:62;;26886:81;;;::::0;-1:-1:-1;;;26886:81:21;;55364:2:32;26886:81:21::2;::::0;::::2;55346:21:32::0;55403:1;55383:18;;;55376:29;-1:-1:-1;;;55421:18:32;;;55414:36;55467:18;;26886:81:21::2;55162:329:32::0;26886:81:21::2;26995:29;27027:8;:29;27057:7;1639:1;27057:30;;;;;;;;:::i;:::-;;::::0;;::::2;::::0;;;;;;;:52:::2;::::0;27111:7:::2;::::0;27027:92:::2;::::0;-1:-1:-1;;;;;;27027:92:21::2;::::0;;;;;;::::2;::::0;27057:52;27111:7:::2;;::::0;27027:92:::2;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;::::0;;::::2;-1:-1:-1::0;;27027:92:21::2;::::0;::::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;:::i;:::-;26995:124;;27183:16;27173:27;;;;;;27147:5;:21;;27137:32;;;;;;:::i;:::-;;;;;;;;:63;27129:82;;;::::0;-1:-1:-1;;;27129:82:21;;56855:2:32;27129:82:21::2;::::0;::::2;56837:21:32::0;56894:1;56874:18;;;56867:29;-1:-1:-1;;;56912:18:32;;;56905:36;56958:18;;27129:82:21::2;56653:329:32::0;27129:82:21::2;27239:124;::::0;;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;;;27239:124:21;;::::2;::::0;;;;::::2;::::0;::::2;;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;::::2;::::0;27279:5;;27239:124;;;;::::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;27239:124:21;;;-1:-1:-1;;27239:124:21::2;::::0;::::2;::::0;-1:-1:-1;;;;;27239:124:21::2;;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;;;;;;::::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;27239:124:21;;;-1:-1:-1;;27239:124:21::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;;;;::::2;::::0;;::::2;::::0;;::::2;::::0;;;;::::2;::::0;::::2;::::0;;;;;;;::::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;27239:124:21;;;-1:-1:-1;;27239:124:21::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;::::2;::::0;::::2;::::0;;::::2;::::0;;;;-1:-1:-1;;;27239:124:21;::::2;::::0;::::2;::::0;;;;::::2;-1:-1:-1::0;;;27239:124:21;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;27239:124:21;::::2;;::::0;;;;-1:-1:-1;;;27239:124:21;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;27239:124:21;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;27239:124:21;;::::2;;;::::0;;;;27302:11;27331:18;27239:22:::2;:124::i;:::-;27222:428;;;27424:16;::::0;::::2;::::0;27475:18:::2;::::0;::::2;::::0;-1:-1:-1;;;;;27475:18:21::2;27388:12;27458:36:::0;;;:16:::2;:36;::::0;;;;;27388:12;;27403:105:::2;::::0;:3:::2;:105::i;:::-;27539:18;::::0;::::2;::::0;-1:-1:-1;;;;;27539:18:21::2;27522:36;::::0;;;:16:::2;:36;::::0;;;;:47;;27388:120;;-1:-1:-1;27388:120:21;;27522:36;;;:47:::2;::::0;27388:120;;27522:47:::2;:::i;:::-;::::0;;;-1:-1:-1;;27598:18:21::2;::::0;::::2;::::0;27588:51:::2;::::0;-1:-1:-1;;;;;;;;;;;27588:51:21;::::2;::::0;-1:-1:-1;;;;;27598:18:21;;::::2;::::0;27618:7;;27627:11;;27588:51:::2;:::i;:::-;;;;;;;;27374:276;27222:428;27675:18;::::0;::::2;::::0;27737:13:::2;::::0;::::2;::::0;27723:11:::2;::::0;::::2;::::0;27661:9:::2;::::0;-1:-1:-1;;;;;27675:18:21::2;::::0;27723:27:::2;::::0;::::2;:::i;:::-;27675:93;::::0;::::2;::::0;;;;;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27660:108;;;27786:4;27778:23;;;::::0;-1:-1:-1;;;27778:23:21;;57189:2:32;27778:23:21::2;::::0;::::2;57171:21:32::0;57228:1;57208:18;;;57201:29;-1:-1:-1;;;57246:18:32;;;57239:36;57292:18;;27778:23:21::2;56987:329:32::0;27778:23:21::2;27819:35;::::0;;;:22:::2;:35;::::0;;;;27812:42;;-1:-1:-1;;;;;;27812:42:21;;::::2;::::0;;;;::::2;::::0;;;;::::2;::::0;;27819:35;27812:42:::2;;::::0;::::2;27819:35:::0;27812:42:::2;:::i;:::-;;::::0;::::2;::::0;;-1:-1:-1;;;;;;27812:42:21::2;::::0;;::::2;;::::0;::::2;;;:::i;:::-;;;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;;-1:-1:-1;;;;;;27812:42:21::2;::::0;;::::2;::::0;::::2;::::0;::::2;::::0;::::2;:::i;:::-;-1:-1:-1::0;27812:42:21::2;;::::0;::::2;::::0;;;::::2;::::0;;::::2;::::0;;-1:-1:-1;;;;;;27812:42:21;;;27864:27;;;:14:::2;:27;::::0;;;;;27812:42;27864:37;;::::2;:44:::0;;-1:-1:-1;;27864:44:21::2;::::0;;::::2;::::0;;27923:27;27879:11;;27923:27:::2;::::0;::::2;26047:1910;;;;;2568:20:2::0;1808:1;3074:7;:22;2894:209;2568:20;25804:2153:21;;;;;:::o;7326:174::-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7460:33:21;;;:22;:33;;;;;;7453:40;;;;;;;;;-1:-1:-1;;;;;7453:40:21;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7453:40:21;;7460:33;;7453:40;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7453:40:21;;;-1:-1:-1;;7453:40:21;;;;-1:-1:-1;;;;;7453:40:21;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7453:40:21;;;-1:-1:-1;;7453:40:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7453:40:21;;;-1:-1:-1;;7453:40:21;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7453:40:21;;;;;;;;;-1:-1:-1;;;7453:40:21;;;;;;;;-1:-1:-1;;;7453:40:21;;;;;;;-1:-1:-1;;;7453:40:21;;;;;;;;-1:-1:-1;;;7453:40:21;;;;;;;;-1:-1:-1;;;7453:40:21;;;;;;;;;;7326:174;-1:-1:-1;;7326:174:21:o;2335:198:0:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:0;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:0;;57523:2:32;2415:73:0::1;::::0;::::1;57505:21:32::0;57562:2;57542:18;;;57535:30;57601:34;57581:18;;;57574:62;-1:-1:-1;;;57652:18:32;;;57645:36;57698:19;;2415:73:0::1;57321:402:32::0;2415:73:0::1;2498:28;2517:8;2498:18;:28::i;29173:839:21:-:0;29271:7;29315:5;:16;;;-1:-1:-1;;;;;29298:33:21;29306:4;-1:-1:-1;;;;;29298:33:21;;29290:52;;;;-1:-1:-1;;;29290:52:21;;57930:2:32;29290:52:21;;;57912:21:32;57969:1;57949:18;;;57942:29;-1:-1:-1;;;57987:18:32;;;57980:36;58033:18;;29290:52:21;57728:329:32;29290:52:21;29392:21;;;;29381:6;;-1:-1:-1;;;;;29373:40:21;;;29381:6;;29373:40;29352:93;;;;-1:-1:-1;;;29352:93:21;;58264:2:32;29352:93:21;;;58246:21:32;58303:1;58283:18;;;58276:29;-1:-1:-1;;;58321:18:32;;;58314:36;58367:18;;29352:93:21;58062:329:32;29352:93:21;29476:5;:22;;;:29;29509:2;29476:35;:86;;;;29527:5;:22;;;:29;29560:2;29527:35;29476:86;29455:139;;;;-1:-1:-1;;;29455:139:21;;58598:2:32;29455:139:21;;;58580:21:32;58637:1;58617:18;;;58610:29;-1:-1:-1;;;58655:18:32;;;58648:36;58701:18;;29455:139:21;58396:329:32;29455:139:21;29625:5;:33;;;:40;29669:2;29625:46;29604:99;;;;-1:-1:-1;;;29604:99:21;;58932:2:32;29604:99:21;;;58914:21:32;58971:1;58951:18;;;58944:29;-1:-1:-1;;;58989:18:32;;;58982:36;59035:18;;29604:99:21;58730:329:32;29604:99:21;29765:8;;29748:5;:13;;;29734:5;:11;;;:27;;;;:::i;:::-;:39;;29713:92;;;;-1:-1:-1;;;29713:92:21;;59266:2:32;29713:92:21;;;59248:21:32;59305:1;59285:18;;;59278:29;-1:-1:-1;;;59323:18:32;;;59316:36;59369:18;;29713:92:21;59064:329:32;29713:92:21;29898:5;:20;;;29891:28;;29863:5;:24;;;29856:32;;:63;;;;:::i;:::-;-1:-1:-1;;;;;29836:83:21;:16;:83;;29815:136;;;;-1:-1:-1;;;29815:136:21;;59785:2:32;29815:136:21;;;59767:21:32;59824:1;59804:18;;;59797:29;-1:-1:-1;;;59842:18:32;;;59835:36;59888:18;;29815:136:21;59583:329:32;29815:136:21;29979:25;;-1:-1:-1;;;29979:25:21;;:6;;:18;;:25;;29998:5;;29979:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;29979:25:21;;;;;;;;;;;;:::i;:::-;29969:36;;;;;;29962:43;;29173:839;;;:::o;10216:748::-;10413:1;10397:5;10391:19;:23;10383:42;;;;-1:-1:-1;;;10383:42:21;;60401:2:32;10383:42:21;;;60383:21:32;60440:1;60420:18;;;60413:29;-1:-1:-1;;;60458:18:32;;;60451:36;60504:18;;10383:42:21;60199:329:32;10383:42:21;10484:1;10462:11;10456:25;:29;10435:82;;;;-1:-1:-1;;;10435:82:21;;60735:2:32;10435:82:21;;;60717:21:32;60774:1;60754:18;;;60747:29;-1:-1:-1;;;60792:18:32;;;60785:36;60838:18;;10435:82:21;60533:329:32;10435:82:21;10679:25;;;;;;;:::i;:::-;;;;;;;;;;;;;10669:36;;;;;;10638:13;10621:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;10611:42;;;;;;:94;:205;;;;10789:26;;;;;;;:::i;:::-;;;;;;;;;;;;;10779:37;;;;;;10748:13;10731:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;10721:42;;;;;;:95;10611:205;:314;;;-1:-1:-1;10900:24:21;;-1:-1:-1;;;10900:24:21;;;61069:19:32;61104:11;;10900:24:21;;;;;;;;;;;;10890:35;;;;;;10859:13;10842:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;10832:42;;;;;;:93;10611:314;10590:367;;;;-1:-1:-1;;;10590:367:21;;61328:2:32;10590:367:21;;;61310:21:32;61367:1;61347:18;;;61340:29;-1:-1:-1;;;61385:18:32;;;61378:36;61431:18;;10590:367:21;61126:329:32;10590:367:21;10216:748;;;:::o;31096:157::-;-1:-1:-1;;;;;31186:22:21;;31163:4;31186:22;;;:16;:22;;;;;;:26;;;;:60;;-1:-1:-1;;;;;;;31216:25:21;;;;;:19;:25;;;;;;:30;;31096:157::o;1125:111:0:-;5374:13:1;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:1;;61662:2:32;5366:69:1;;;61644:21:32;61701:2;61681:18;;;61674:30;61740:34;61720:18;;;61713:62;-1:-1:-1;;;61791:18:32;;;61784:41;61842:19;;5366:69:1;61460:407:32;5366:69:1;1197:32:0::1;965:10:4::0;1197:18:0::1;:32::i;30948:142:21:-:0;-1:-1:-1;;;;;31029:16:21;;31006:4;31029:16;;;:10;:16;;;;;;:20;;;;:54;;-1:-1:-1;;;;;;;31053:25:21;;;;;:19;:25;;;;;;:30;;30948:142::o;30018:243::-;30167:16;;30123:7;;-1:-1:-1;;;;;30150:33:21;30158:4;30150:33;30142:52;;;;-1:-1:-1;;;30142:52:21;;62074:2:32;30142:52:21;;;62056:21:32;62113:1;62093:18;;;62086:29;-1:-1:-1;;;62131:18:32;;;62124:36;62177:18;;30142:52:21;61872:329:32;30142:52:21;30222:31;;-1:-1:-1;;;30222:31:21;;:6;;:24;;:31;;30247:5;;30222:31;;;:::i;2601:287:2:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:2;;64860:2:32;2725:63:2;;;64842:21:32;64899:2;64879:18;;;64872:30;64938:33;64918:18;;;64911:61;64989:18;;2725:63:2;64658:355:32;2725:63:2;1851:1;2863:7;:18;2601:287::o;31680:628:21:-;31936:6;;32099:22;;;;32162:33;;;;31903:6;32209:28;;;:12;:28;;;;;:38;31903:6;;-1:-1:-1;;;;;31936:6:21;;:39;;31989:17;;32020:6;;32040:17;;32071:14;;32143:4;;32162:33;32209:38;;:42;;;;:82;;-1:-1:-1;32255:28:21;;;;:12;:28;;;;;:36;-1:-1:-1;;;32255:36:21;;;;32209:82;31936:365;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;31921:380;31680:628;-1:-1:-1;;;;;;31680:628:21:o;32730:1576::-;32902:4;32992:1;32983:6;:10;:59;;;;;33029:5;:13;;;33015:5;:11;;;:27;;;;:::i;:::-;33005:6;32997:45;32983:59;32979:102;;;-1:-1:-1;33065:5:21;33058:12;;32979:102;33130:6;;:59;;-1:-1:-1;;;33130:59:21;;;;;683:25:32;;;33091:36:21;;-1:-1:-1;;;;;33130:6:21;;:51;;656:18:32;;33130:59:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;33130:59:21;;;;;;;;;;;;:::i;:::-;33091:98;;33240:1;33207:23;:30;:34;33199:67;;;;-1:-1:-1;;;33199:67:21;;66288:2:32;33199:67:21;;;66270:21:32;66327:2;66307:18;;;66300:30;-1:-1:-1;;;66346:18:32;;;66339:50;66406:18;;33199:67:21;66086:344:32;33199:67:21;33277:34;33314:67;33348:23;33314:20;:67::i;:::-;33277:104;;33521:14;33565:5;:20;;;33538:5;:24;;;:47;;;;:::i;:::-;33521:64;;;;33628:9;33599:26;:38;33595:81;;;33660:5;33653:12;;;;;;;33595:81;33731:13;33748:1;33731:18;33727:60;;33772:4;33765:11;;;;;;;33727:60;33833:6;;33907:26;;;;33797:33;;-1:-1:-1;;;;;33833:6:21;;:51;;:6;;33898:35;;;;:6;:35;:::i;:::-;:39;;;;:::i;:::-;33833:114;;;;;;;;;;;;;683:25:32;;671:2;656:18;;537:177;33833:114:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;33833:114:21;;;;;;;;;;;;:::i;:::-;33797:150;;33995:1;33965:20;:27;:31;33957:50;;;;-1:-1:-1;;;33957:50:21;;66637:2:32;33957:50:21;;;66619:21:32;66676:1;66656:18;;;66649:29;-1:-1:-1;;;66694:18:32;;;66687:36;66740:18;;33957:50:21;66435:329:32;33957:50:21;34018:31;34052:64;34086:20;34052;:64::i;:::-;34018:98;;34226:5;:14;;;34200:40;;:23;:40;;;;:::i;:::-;34184:13;:56;34180:98;;;34263:4;34256:11;;;;;;;;;34180:98;-1:-1:-1;34294:5:21;;32730:1576;-1:-1:-1;;;;;;;;;32730:1576:21:o;30267:94::-;30318:4;30345:1;30341;:5;:13;;30353:1;30341:13;;;30349:1;30341:13;30334:20;30267:94;-1:-1:-1;;;30267:94:21:o;30434:145::-;-1:-1:-1;;;;;30504:14:21;;;;;;:8;:14;;;;;:24;;30522:6;;30504:14;:24;;30522:6;;30504:24;:::i;:::-;;;;-1:-1:-1;;30543:29:21;;;;;;30559:4;;30565:6;;30543:29;:::i;1620:130:0:-;965:10:4;1683:7:0;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:0;;1675:68;;;;-1:-1:-1;;;1675:68:0;;66971:2:32;1675:68:0;;;66953:21:32;;;66990:18;;;66983:30;67049:34;67029:18;;;67022:62;67101:18;;1675:68:0;66769:356:32;2687:187:0;2779:6;;;-1:-1:-1;;;;;2795:17:0;;;-1:-1:-1;;;;;;2795:17:0;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;35701:364:21:-;35804:6;35843:10;:6;35852:1;35843:10;:::i;:::-;35830:2;:9;:23;;35822:42;;;;-1:-1:-1;;;35822:42:21;;67332:2:32;35822:42:21;;;67314:21:32;67371:1;67351:18;;;67344:29;-1:-1:-1;;;67389:18:32;;;67382:36;67435:18;;35822:42:21;67130:329:32;35822:42:21;36055:2;36035;36038:10;:6;36047:1;36038:10;:::i;:::-;36035:14;;;;;;;;:::i;:::-;;;;;;;36022:35;;36007:2;35987;35990:10;:6;35999:1;35990:10;:::i;:::-;35987:14;;;;;;;;:::i;:::-;;;;;;;35974:35;;35960:1;35940:2;35943:10;:6;35952:1;35943:10;:::i;:::-;35940:14;;;;;;;;:::i;:::-;;;;;35903:10;;35940:14;;;;;35927:34;;;;35903:2;;35906:6;;35903:10;;;;;;:::i;:::-;;;;;;;35890:72;:120;:168;;-1:-1:-1;35701:364:21;;;;:::o;30585:145::-;-1:-1:-1;;;;;30655:14:21;;;;;;:8;:14;;;;;:24;;30673:6;;30655:14;:24;;30673:6;;30655:24;:::i;:::-;;;;-1:-1:-1;;30694:29:21;;;;;;30710:4;;30716:6;;30694:29;:::i;34312:853::-;34522:6;;:51;;-1:-1:-1;;;34522:51:21;;;;;683:25:32;;;34467:4:21;;;;-1:-1:-1;;;;;34522:6:21;;;;:40;;656:18:32;;34522:51:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;34522:51:21;;;;;;;;;;;;:::i;:::-;34483:90;;34624:1;34591:23;:30;:34;34583:53;;;;-1:-1:-1;;;34583:53:21;;67666:2:32;34583:53:21;;;67648:21:32;67705:1;67685:18;;;67678:29;-1:-1:-1;;;67723:18:32;;;67716:36;67769:18;;34583:53:21;67464:329:32;34583:53:21;34647:34;34684:45;34705:23;34684:20;:45::i;:::-;34908:12;;34887:18;;;;34830:25;;;;:14;:25;;;;;:42;34647:82;;-1:-1:-1;34908:12:21;;34830:75;;;;;;:::i;:::-;:90;;;;:::i;:::-;34801:26;:119;34797:161;;;34943:4;34936:11;;;;;;34797:161;35046:5;:16;;;35028:34;;:15;:34;:70;;;;35081:5;:17;;;35066:32;;:12;:32;35028:70;35024:112;;;35121:4;35114:11;;;;;;35024:112;-1:-1:-1;35153:5:21;;34312:853;-1:-1:-1;;;;;34312:853:21:o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;719:127:32:-;780:10;775:3;771:20;768:1;761:31;811:4;808:1;801:15;835:4;832:1;825:15;851:255;923:2;917:9;965:6;953:19;;-1:-1:-1;;;;;987:34:32;;1023:22;;;984:62;981:88;;;1049:18;;:::i;:::-;1085:2;1078:22;851:255;:::o;1111:::-;1183:2;1177:9;1225:6;1213:19;;-1:-1:-1;;;;;1247:34:32;;1283:22;;;1244:62;1241:88;;;1309:18;;:::i;1371:253::-;1443:2;1437:9;1485:4;1473:17;;-1:-1:-1;;;;;1505:34:32;;1541:22;;;1502:62;1499:88;;;1567:18;;:::i;1629:275::-;1700:2;1694:9;1765:2;1746:13;;-1:-1:-1;;1742:27:32;1730:40;;-1:-1:-1;;;;;1785:34:32;;1821:22;;;1782:62;1779:88;;;1847:18;;:::i;:::-;1883:2;1876:22;1629:275;;-1:-1:-1;1629:275:32:o;1909:177::-;1977:20;;-1:-1:-1;;;;;;2026:35:32;;2016:46;;2006:74;;2076:1;2073;2066:12;2091:131;-1:-1:-1;;;;;2166:31:32;;2156:42;;2146:70;;2212:1;2209;2202:12;2227:134;2295:20;;2324:31;2295:20;2324:31;:::i;2366:186::-;2414:4;-1:-1:-1;;;;;2436:30:32;;2433:56;;;2469:18;;:::i;:::-;-1:-1:-1;2535:2:32;2514:15;-1:-1:-1;;2510:29:32;2541:4;2506:40;;2366:186::o;2557:462::-;2599:5;2652:3;2645:4;2637:6;2633:17;2629:27;2619:55;;2670:1;2667;2660:12;2619:55;2706:6;2693:20;2737:48;2753:31;2781:2;2753:31;:::i;:::-;2737:48;:::i;:::-;2810:2;2801:7;2794:19;2856:3;2849:4;2844:2;2836:6;2832:15;2828:26;2825:35;2822:55;;;2873:1;2870;2863:12;2822:55;2938:2;2931:4;2923:6;2919:17;2912:4;2903:7;2899:18;2886:55;2986:1;2961:16;;;2979:4;2957:27;2950:38;;;;2965:7;2557:462;-1:-1:-1;;;2557:462:32:o;3024:163::-;3091:20;;3151:10;3140:22;;3130:33;;3120:61;;3177:1;3174;3167:12;3192:160;3258:20;;3318:1;3307:20;;;3297:31;;3287:59;;3342:1;3339;3332:12;3357:159;3424:20;;3484:6;3473:18;;3463:29;;3453:57;;3506:1;3503;3496:12;3521:118;3607:5;3600:13;3593:21;3586:5;3583:32;3573:60;;3629:1;3626;3619:12;3644:128;3709:20;;3738:28;3709:20;3738:28;:::i;3777:2005::-;3834:5;3882:6;3870:9;3865:3;3861:19;3857:32;3854:52;;;3902:1;3899;3892:12;3854:52;3924:22;;:::i;:::-;3915:31;;3969:29;3988:9;3969:29;:::i;:::-;3962:5;3955:44;4031:38;4065:2;4054:9;4050:18;4031:38;:::i;:::-;4026:2;4019:5;4015:14;4008:62;4102:38;4136:2;4125:9;4121:18;4102:38;:::i;:::-;4097:2;4086:14;;4079:62;4192:2;4177:18;;4164:32;-1:-1:-1;;;;;4245:14:32;;;4242:34;;;4272:1;4269;4262:12;4242:34;4308:45;4349:3;4340:6;4329:9;4325:22;4308:45;:::i;:::-;4303:2;4296:5;4292:14;4285:69;4387:39;4421:3;4410:9;4406:19;4387:39;:::i;:::-;4381:3;4374:5;4370:15;4363:64;4480:3;4469:9;4465:19;4452:33;4436:49;;4510:2;4500:8;4497:16;4494:36;;;4526:1;4523;4516:12;4494:36;4563:47;4606:3;4595:8;4584:9;4580:24;4563:47;:::i;:::-;4557:3;4550:5;4546:15;4539:72;4672:3;4661:9;4657:19;4644:33;4638:3;4631:5;4627:15;4620:58;4739:3;4728:9;4724:19;4711:33;4705:3;4698:5;4694:15;4687:58;4764:3;4754:13;;4799:38;4833:2;4822:9;4818:18;4799:38;:::i;:::-;4794:2;4787:5;4783:14;4776:62;4857:3;4847:13;;4913:2;4902:9;4898:18;4885:32;4942:2;4932:8;4929:16;4926:36;;;4958:1;4955;4948:12;4926:36;4994:47;5037:3;5026:8;5015:9;5011:24;4994:47;:::i;:::-;4989:2;4982:5;4978:14;4971:71;;;;5061:3;5096:37;5129:2;5118:9;5114:18;5096:37;:::i;:::-;5080:14;;;5073:61;5153:3;5188:36;5205:18;;;5188:36;:::i;:::-;5172:14;;;5165:60;5244:3;5292:18;;;5279:32;5263:14;;;5256:56;5331:3;5366:37;5384:18;;;5366:37;:::i;:::-;5350:14;;;5343:61;5423:3;5458:37;5476:18;;;5458:37;:::i;:::-;5442:14;;;5435:61;5515:3;5550:37;5568:18;;;5550:37;:::i;:::-;5534:14;;;5527:61;5608:3;5644:38;5662:19;;;5644:38;:::i;:::-;5627:15;;;5620:63;5703:3;5739:36;5755:19;;;5739:36;:::i;:::-;5722:15;;;5715:61;5726:5;3777:2005;-1:-1:-1;;3777:2005:32:o;5787:352::-;5875:6;5928:2;5916:9;5907:7;5903:23;5899:32;5896:52;;;5944:1;5941;5934:12;5896:52;5971:23;;-1:-1:-1;;;;;6006:30:32;;6003:50;;;6049:1;6046;6039:12;6003:50;6072:61;6125:7;6116:6;6105:9;6101:22;6072:61;:::i;6326:180::-;6385:6;6438:2;6426:9;6417:7;6413:23;6409:32;6406:52;;;6454:1;6451;6444:12;6406:52;-1:-1:-1;6477:23:32;;6326:180;-1:-1:-1;6326:180:32:o;6511:870::-;6624:6;6632;6640;6648;6701:3;6689:9;6680:7;6676:23;6672:33;6669:53;;;6718:1;6715;6708:12;6669:53;6745:23;;-1:-1:-1;;;;;6817:14:32;;;6814:34;;;6844:1;6841;6834:12;6814:34;6867:49;6908:7;6899:6;6888:9;6884:22;6867:49;:::i;:::-;6857:59;;6969:2;6958:9;6954:18;6941:32;6925:48;;6998:2;6988:8;6985:16;6982:36;;;7014:1;7011;7004:12;6982:36;7037:51;7080:7;7069:8;7058:9;7054:24;7037:51;:::i;:::-;7027:61;;7138:2;7127:9;7123:18;7110:32;7097:45;;7151:28;7173:5;7151:28;:::i;:::-;7198:5;;-1:-1:-1;7256:2:32;7241:18;;7228:32;;7272:16;;;7269:36;;;7301:1;7298;7291:12;7269:36;;7324:51;7367:7;7356:8;7345:9;7341:24;7324:51;:::i;:::-;7314:61;;;6511:870;;;;;;;:::o;7579:811::-;7704:6;7712;7720;7728;7736;7744;7752;7760;7813:3;7801:9;7792:7;7788:23;7784:33;7781:53;;;7830:1;7827;7820:12;7781:53;7869:9;7856:23;7888:31;7913:5;7888:31;:::i;:::-;7938:5;-1:-1:-1;7990:2:32;7975:18;;7962:32;;-1:-1:-1;8041:2:32;8026:18;;8013:32;;-1:-1:-1;8064:37:32;8097:2;8082:18;;8064:37;:::i;:::-;8054:47;;8120:38;8153:3;8142:9;8138:19;8120:38;:::i;:::-;8110:48;;8205:3;8194:9;8190:19;8177:33;8167:43;;8257:3;8246:9;8242:19;8229:33;8219:43;;8314:3;8303:9;8299:19;8286:33;8328:30;8350:7;8328:30;:::i;:::-;8377:7;8367:17;;;7579:811;;;;;;;;;;;:::o;8395:247::-;8454:6;8507:2;8495:9;8486:7;8482:23;8478:32;8475:52;;;8523:1;8520;8513:12;8475:52;8562:9;8549:23;8581:31;8606:5;8581:31;:::i;9120:183::-;9180:4;-1:-1:-1;;;;;9202:30:32;;9199:56;;;9235:18;;:::i;:::-;-1:-1:-1;9280:1:32;9276:14;9292:4;9272:25;;9120:183::o;9308:891::-;9392:6;9423:2;9466;9454:9;9445:7;9441:23;9437:32;9434:52;;;9482:1;9479;9472:12;9434:52;9509:23;;-1:-1:-1;;;;;9544:30:32;;9541:50;;;9587:1;9584;9577:12;9541:50;9610:22;;9663:4;9655:13;;9651:27;-1:-1:-1;9641:55:32;;9692:1;9689;9682:12;9641:55;9728:2;9715:16;9751:60;9767:43;9807:2;9767:43;:::i;9751:60::-;9845:15;;;9927:1;9923:10;;;;9915:19;;9911:28;;;9876:12;;;;9951:19;;;9948:39;;;9983:1;9980;9973:12;9948:39;10007:11;;;;10027:142;10043:6;10038:3;10035:15;10027:142;;;10109:17;;10097:30;;10060:12;;;;10147;;;;10027:142;;;10188:5;9308:891;-1:-1:-1;;;;;;;9308:891:32:o;10204:104::-;-1:-1:-1;;;;;10270:31:32;10258:44;;10204:104::o;10313:250::-;10398:1;10408:113;10422:6;10419:1;10416:13;10408:113;;;10498:11;;;10492:18;10479:11;;;10472:39;10444:2;10437:10;10408:113;;;-1:-1:-1;;10555:1:32;10537:16;;10530:27;10313:250::o;10568:271::-;10610:3;10648:5;10642:12;10675:6;10670:3;10663:19;10691:76;10760:6;10753:4;10748:3;10744:14;10737:4;10730:5;10726:16;10691:76;:::i;:::-;10821:2;10800:15;-1:-1:-1;;10796:29:32;10787:39;;;;10828:4;10783:50;;10568:271;-1:-1:-1;;10568:271:32:o;10844:1665::-;11056:4;11085:2;11125;11114:9;11110:18;11155:2;11144:9;11137:21;11178:6;11213;11207:13;11244:6;11236;11229:22;11270:2;11260:12;;11303:2;11292:9;11288:18;11281:25;;11365:2;11355:6;11352:1;11348:14;11337:9;11333:30;11329:39;11403:2;11395:6;11391:15;11424:1;11434:1046;11448:6;11445:1;11442:13;11434:1046;;;11513:22;;;-1:-1:-1;;11509:36:32;11497:49;;11569:13;;11637:9;;11622:25;;11694:11;;;11688:18;-1:-1:-1;;;;;11684:44:32;11667:15;;;11660:69;11768:11;;;11762:18;11605:4;11800:15;;;11793:27;;;11605:4;11847:48;11879:15;;;11762:18;11847:48;:::i;:::-;11833:62;;;11918:4;11971:2;11967;11963:11;11957:18;12024:6;12016;12012:19;12007:2;11999:6;11995:15;11988:44;12059:41;12093:6;12077:14;12059:41;:::i;:::-;12045:55;;;;12123:4;12192:2;12188;12184:11;12178:18;12171:26;12164:34;12159:2;12151:6;12147:15;12140:59;;12222:4;12275:2;12271;12267:11;12261:18;12239:40;;12328:6;12320;12316:19;12311:2;12303:6;12299:15;12292:44;;12359:41;12393:6;12377:14;12359:41;:::i;:::-;12458:12;;;;12349:51;-1:-1:-1;;;12423:15:32;;;;11470:1;11463:9;11434:1046;;;-1:-1:-1;12497:6:32;;10844:1665;-1:-1:-1;;;;;;;;10844:1665:32:o;12514:1911::-;12572:5;12620:6;12608:9;12603:3;12599:19;12595:32;12592:52;;;12640:1;12637;12630:12;12592:52;12662:22;;:::i;:::-;12653:31;;12707:29;12726:9;12707:29;:::i;:::-;12700:5;12693:44;12769:38;12803:2;12792:9;12788:18;12769:38;:::i;:::-;12764:2;12753:14;;12746:62;12859:2;12844:18;;12831:32;-1:-1:-1;;;;;12912:14:32;;;12909:34;;;12939:1;12936;12929:12;12909:34;12975:45;13016:3;13007:6;12996:9;12992:22;12975:45;:::i;:::-;12970:2;12963:5;12959:14;12952:69;13053:38;13087:2;13076:9;13072:18;13053:38;:::i;:::-;13048:2;13041:5;13037:14;13030:62;13145:3;13134:9;13130:19;13117:33;13101:49;;13175:2;13165:8;13162:16;13159:36;;;13191:1;13188;13181:12;13159:36;13228:47;13271:3;13260:8;13249:9;13245:24;13228:47;:::i;:::-;13222:3;13215:5;13211:15;13204:72;13337:3;13326:9;13322:19;13309:33;13303:3;13296:5;13292:15;13285:58;13404:3;13393:9;13389:19;13376:33;13370:3;13363:5;13359:15;13352:58;13443:37;13475:3;13464:9;13460:19;13443:37;:::i;:::-;13437:3;13430:5;13426:15;13419:62;13500:3;13490:13;;13556:2;13545:9;13541:18;13528:32;13585:2;13575:8;13572:16;13569:36;;;13601:1;13598;13591:12;13569:36;13637:47;13680:3;13669:8;13658:9;13654:24;13637:47;:::i;:::-;13632:2;13625:5;13621:14;13614:71;;;;13704:3;13767:2;13756:9;13752:18;13739:32;13734:2;13727:5;13723:14;13716:56;;13791:3;13826:37;13859:2;13848:9;13844:18;13826:37;:::i;:::-;13810:14;;;13803:61;13883:3;13918:37;13936:18;;;13918:37;:::i;:::-;13902:14;;;13895:61;13975:3;14010:37;14028:18;;;14010:37;:::i;:::-;13994:14;;;13987:61;14067:3;14102:37;14120:18;;;14102:37;:::i;:::-;14086:14;;;14079:61;14159:3;14194:37;14212:18;;;14194:37;:::i;:::-;14178:14;;;14171:61;14251:3;14286:37;14304:18;;;14286:37;:::i;:::-;14270:14;;;14263:61;14344:3;14380:38;14398:19;;;14380:38;:::i;14430:354::-;14519:6;14572:2;14560:9;14551:7;14547:23;14543:32;14540:52;;;14588:1;14585;14578:12;14540:52;14615:23;;-1:-1:-1;;;;;14650:30:32;;14647:50;;;14693:1;14690;14683:12;14647:50;14716:62;14770:7;14761:6;14750:9;14746:22;14716:62;:::i;14789:1037::-;14940:6;14948;14956;14964;14972;15025:3;15013:9;15004:7;15000:23;14996:33;14993:53;;;15042:1;15039;15032:12;14993:53;15069:23;;-1:-1:-1;;;;;15141:14:32;;;15138:34;;;15168:1;15165;15158:12;15138:34;15191:61;15244:7;15235:6;15224:9;15220:22;15191:61;:::i;:::-;15181:71;;15305:2;15294:9;15290:18;15277:32;15261:48;;15334:2;15324:8;15321:16;15318:36;;;15350:1;15347;15340:12;15318:36;15373:51;15416:7;15405:8;15394:9;15390:24;15373:51;:::i;:::-;15363:61;;15477:2;15466:9;15462:18;15449:32;15433:48;;15506:2;15496:8;15493:16;15490:36;;;15522:1;15519;15512:12;15490:36;15545:51;15588:7;15577:8;15566:9;15562:24;15545:51;:::i;:::-;15535:61;;15649:2;15638:9;15634:18;15621:32;15605:48;;15678:2;15668:8;15665:16;15662:36;;;15694:1;15691;15684:12;15662:36;;15717:51;15760:7;15749:8;15738:9;15734:24;15717:51;:::i;:::-;14789:1037;;;;-1:-1:-1;14789:1037:32;;15815:3;15800:19;15787:33;;14789:1037;-1:-1:-1;;;14789:1037:32:o;16011:309::-;16076:6;16084;16137:2;16125:9;16116:7;16112:23;16108:32;16105:52;;;16153:1;16150;16143:12;16105:52;16189:9;16176:23;16166:33;;16249:2;16238:9;16234:18;16221:32;16262:28;16284:5;16262:28;:::i;:::-;16309:5;16299:15;;;16011:309;;;;;:::o;16325:573::-;16432:6;16440;16493:2;16481:9;16472:7;16468:23;16464:32;16461:52;;;16509:1;16506;16499:12;16461:52;16536:23;;-1:-1:-1;;;;;16608:14:32;;;16605:34;;;16635:1;16632;16625:12;16605:34;16658:62;16712:7;16703:6;16692:9;16688:22;16658:62;:::i;:::-;16648:72;;16773:2;16762:9;16758:18;16745:32;16729:48;;16802:2;16792:8;16789:16;16786:36;;;16818:1;16815;16808:12;16786:36;;16841:51;16884:7;16873:8;16862:9;16858:24;16841:51;:::i;:::-;16831:61;;;16325:573;;;;;:::o;16903:203::-;-1:-1:-1;;;;;17067:32:32;;;;17049:51;;17037:2;17022:18;;16903:203::o;17399:320::-;17467:6;17520:2;17508:9;17499:7;17495:23;17491:32;17488:52;;;17536:1;17533;17526:12;17488:52;17563:23;;-1:-1:-1;;;;;17598:30:32;;17595:50;;;17641:1;17638;17631:12;17595:50;17664:49;17705:7;17696:6;17685:9;17681:22;17664:49;:::i;17724:571::-;17830:6;17838;17891:2;17879:9;17870:7;17866:23;17862:32;17859:52;;;17907:1;17904;17897:12;17859:52;17934:23;;-1:-1:-1;;;;;18006:14:32;;;18003:34;;;18033:1;18030;18023:12;18003:34;18056:61;18109:7;18100:6;18089:9;18085:22;18056:61;:::i;18300:1316::-;18429:6;18437;18445;18453;18461;18514:3;18502:9;18493:7;18489:23;18485:33;18482:53;;;18531:1;18528;18521:12;18482:53;18554:23;;;-1:-1:-1;18596:2:32;18634:18;;;18621:32;-1:-1:-1;;;;;18702:14:32;;;18699:34;;;18729:1;18726;18719:12;18699:34;18752:49;18793:7;18784:6;18773:9;18769:22;18752:49;:::i;:::-;18742:59;;18848:2;18837:9;18833:18;18820:32;18810:42;;18899:2;18888:9;18884:18;18871:32;18861:42;;18956:3;18945:9;18941:19;18928:33;18912:49;;18986:2;18976:8;18973:16;18970:36;;;19002:1;18999;18992:12;18970:36;-1:-1:-1;19025:24:32;;19080:4;19072:13;;19068:27;-1:-1:-1;19058:55:32;;19109:1;19106;19099:12;19058:55;19145:2;19132:16;19168:60;19184:43;19224:2;19184:43;:::i;19168:60::-;19262:15;;;19344:1;19340:10;;;;19332:19;;19328:28;;;19293:12;;;;19368:19;;;19365:39;;;19400:1;19397;19390:12;19365:39;19424:11;;;;19444:142;19460:6;19455:3;19452:15;19444:142;;;19526:17;;19514:30;;19477:12;;;;19564;;;;19444:142;;;19605:5;19595:15;;;;;;;18300:1316;;;;;;;;:::o;20047:2439::-;20236:2;20225:9;20218:21;20248:53;20297:2;20286:9;20282:18;20273:6;20267:13;20248:53;:::i;:::-;20199:4;20348:2;20340:6;20336:15;20330:22;20361:52;20409:2;20398:9;20394:18;20380:12;20361:52;:::i;:::-;;20462:2;20454:6;20450:15;20444:22;20485:6;20527:2;20522;20511:9;20507:18;20500:30;20553:54;20602:3;20591:9;20587:19;20571:14;20553:54;:::i;:::-;20539:68;;20656:2;20648:6;20644:15;20638:22;20669:55;20719:3;20708:9;20704:19;20688:14;20669:55;:::i;:::-;;20773:3;20765:6;20761:16;20755:23;20801:2;20797:7;20869:2;20857:9;20849:6;20845:22;20841:31;20835:3;20824:9;20820:19;20813:60;20896:41;20930:6;20914:14;20896:41;:::i;:::-;20882:55;;20992:3;20984:6;20980:16;20974:23;20968:3;20957:9;20953:19;20946:52;21053:3;21045:6;21041:16;21035:23;21029:3;21018:9;21014:19;21007:52;21108:3;21100:6;21096:16;21090:23;21068:45;;21132:3;21144:52;21192:2;21181:9;21177:18;21161:14;19927:1;19916:20;19904:33;;19852:91;21144:52;21245:2;21237:6;21233:15;21227:22;21205:44;;;21268:3;21335:2;21323:9;21315:6;21311:22;21307:31;21302:2;21291:9;21287:18;21280:59;21362:41;21396:6;21380:14;21362:41;:::i;:::-;21428:15;;;21422:22;21463:3;21482:18;;;21475:30;;;;21542:15;;21536:22;21348:55;;-1:-1:-1;21536:22:32;-1:-1:-1;21577:3:32;;-1:-1:-1;21589:53:32;21623:18;;;21536:22;20024:10;20013:22;20001:35;;19948:94;21589:53;21679:15;;21673:22;;-1:-1:-1;21714:3:32;21726:53;21760:18;;;21673:22;20024:10;20013:22;20001:35;;19948:94;21726:53;21816:15;;21810:22;;-1:-1:-1;21851:3:32;21863:53;21897:18;;;21810:22;17187:6;17176:18;17164:31;;17111:90;21863:53;21953:15;;21947:22;;-1:-1:-1;21989:3:32;22001:54;22035:19;;;21947:22;17187:6;17176:18;17164:31;;17111:90;22001:54;22093:16;;22087:23;;-1:-1:-1;22130:3:32;22142:55;22177:19;;;22087:23;20024:10;20013:22;20001:35;;19948:94;22142:55;22235:16;;22229:23;;-1:-1:-1;22272:3:32;22284:55;22319:19;;;22229:23;20024:10;20013:22;20001:35;;19948:94;22284:55;22377:16;;22371:23;20024:10;20013:22;;22438:18;;;20001:35;22371:23;-1:-1:-1;22403:54:32;-1:-1:-1;22474:6:32;;20047:2439;-1:-1:-1;;;;20047:2439:32:o;22491:329::-;22693:2;22675:21;;;22732:1;22712:18;;;22705:29;-1:-1:-1;;;22765:2:32;22750:18;;22743:36;22811:2;22796:18;;22491:329::o;22825:127::-;22886:10;22881:3;22877:20;22874:1;22867:31;22917:4;22914:1;22907:15;22941:4;22938:1;22931:15;22957:128;23024:9;;;23045:11;;;23042:37;;;23059:18;;:::i;23300:329::-;23502:2;23484:21;;;23541:1;23521:18;;;23514:29;-1:-1:-1;;;23574:2:32;23559:18;;23552:36;23620:2;23605:18;;23300:329::o;23634:274::-;-1:-1:-1;;;;;23826:32:32;;;;23808:51;;23890:2;23875:18;;23868:34;23796:2;23781:18;;23634:274::o;23913:329::-;24115:2;24097:21;;;24154:1;24134:18;;;24127:29;-1:-1:-1;;;24187:2:32;24172:18;;24165:36;24233:2;24218:18;;23913:329::o;24247:::-;24449:2;24431:21;;;24488:1;24468:18;;;24461:29;-1:-1:-1;;;24521:2:32;24506:18;;24499:36;24567:2;24552:18;;24247:329::o;25583:255::-;-1:-1:-1;;;25785:20:32;;25830:1;25821:11;;25583:255::o;25843:289::-;25974:3;26012:6;26006:13;26028:66;26087:6;26082:3;26075:4;26067:6;26063:17;26028:66;:::i;:::-;26110:16;;;;;25843:289;-1:-1:-1;;25843:289:32:o;26137:329::-;26339:2;26321:21;;;26378:1;26358:18;;;26351:29;-1:-1:-1;;;26411:2:32;26396:18;;26389:36;26457:2;26442:18;;26137:329::o;26471:256::-;-1:-1:-1;;;26673:21:32;;26719:1;26710:11;;26471:256::o;26732:168::-;26805:9;;;26836;;26853:15;;;26847:22;;26833:37;26823:71;;26874:18;;:::i;26905:127::-;26966:10;26961:3;26957:20;26954:1;26947:31;26997:4;26994:1;26987:15;27021:4;27018:1;27011:15;27037:120;27077:1;27103;27093:35;;27108:18;;:::i;:::-;-1:-1:-1;27142:9:32;;27037:120::o;27162:112::-;27194:1;27220;27210:35;;27225:18;;:::i;:::-;-1:-1:-1;27259:9:32;;27162:112::o;27279:125::-;27344:9;;;27365:10;;;27362:36;;;27378:18;;:::i;27409:135::-;27448:3;27469:17;;;27466:43;;27489:18;;:::i;:::-;-1:-1:-1;27536:1:32;27525:13;;27409:135::o;27549:380::-;27628:1;27624:12;;;;27671;;;27692:61;;27746:4;27738:6;27734:17;27724:27;;27692:61;27799:2;27791:6;27788:14;27768:18;27765:38;27762:161;;27845:10;27840:3;27836:20;27833:1;27826:31;27880:4;27877:1;27870:15;27908:4;27905:1;27898:15;27762:161;;27549:380;;;:::o;28060:545::-;28162:2;28157:3;28154:11;28151:448;;;28198:1;28223:5;28219:2;28212:17;28268:4;28264:2;28254:19;28338:2;28326:10;28322:19;28319:1;28315:27;28309:4;28305:38;28374:4;28362:10;28359:20;28356:47;;;-1:-1:-1;28397:4:32;28356:47;28452:2;28447:3;28443:12;28440:1;28436:20;28430:4;28426:31;28416:41;;28507:82;28525:2;28518:5;28515:13;28507:82;;;28570:17;;;28551:1;28540:13;28507:82;;;28511:3;;;28060:545;;;:::o;28781:1352::-;28901:10;;-1:-1:-1;;;;;28923:30:32;;28920:56;;;28956:18;;:::i;:::-;28985:97;29075:6;29035:38;29067:4;29061:11;29035:38;:::i;:::-;29029:4;28985:97;:::i;:::-;29137:4;;29201:2;29190:14;;29218:1;29213:663;;;;29920:1;29937:6;29934:89;;;-1:-1:-1;29989:19:32;;;29983:26;29934:89;-1:-1:-1;;28738:1:32;28734:11;;;28730:24;28726:29;28716:40;28762:1;28758:11;;;28713:57;30036:81;;29183:944;;29213:663;28007:1;28000:14;;;28044:4;28031:18;;-1:-1:-1;;29249:20:32;;;29367:236;29381:7;29378:1;29375:14;29367:236;;;29470:19;;;29464:26;29449:42;;29562:27;;;;29530:1;29518:14;;;;29397:19;;29367:236;;;29371:3;29631:6;29622:7;29619:19;29616:201;;;29692:19;;;29686:26;-1:-1:-1;;29775:1:32;29771:14;;;29787:3;29767:24;29763:37;29759:42;29744:58;29729:74;;29616:201;-1:-1:-1;;;;;29863:1:32;29847:14;;;29843:22;29830:36;;-1:-1:-1;28781:1352:32:o;30391:329::-;30593:2;30575:21;;;30632:1;30612:18;;;30605:29;-1:-1:-1;;;30665:2:32;30650:18;;30643:36;30711:2;30696:18;;30391:329::o;32341:127::-;32402:10;32397:3;32393:20;32390:1;32383:31;32433:4;32430:1;32423:15;32457:4;32454:1;32447:15;32807:329;33009:2;32991:21;;;33048:1;33028:18;;;33021:29;-1:-1:-1;;;33081:2:32;33066:18;;33059:36;33127:2;33112:18;;32807:329::o;33141:394::-;33381:1;33377;33372:3;33368:11;33364:19;33356:6;33352:32;33341:9;33334:51;33421:6;33416:2;33405:9;33401:18;33394:34;33464:2;33459;33448:9;33444:18;33437:30;33315:4;33484:45;33525:2;33514:9;33510:18;33502:6;33484:45;:::i;33540:245::-;33607:6;33660:2;33648:9;33639:7;33635:23;33631:32;33628:52;;;33676:1;33673;33666:12;33628:52;33708:9;33702:16;33727:28;33749:5;33727:28;:::i;33790:329::-;33992:2;33974:21;;;34031:1;34011:18;;;34004:29;-1:-1:-1;;;34064:2:32;34049:18;;34042:36;34110:2;34095:18;;33790:329::o;36462:345::-;-1:-1:-1;;;;;36682:32:32;;;;36664:51;;36746:2;36731:18;;36724:34;;;;36789:2;36774:18;;36767:34;36652:2;36637:18;;36462:345::o;37176:2269::-;37291:12;;-1:-1:-1;;;;;;37129:35:32;37117:48;;37229:3;37257:6;37355:4;37348:5;37344:16;37338:23;37370:48;37412:4;37407:3;37403:14;37389:12;37370:48;:::i;:::-;;37466:4;37459:5;37455:16;37449:23;37481:50;37525:4;37520:3;37516:14;37500;37481:50;:::i;:::-;;37579:4;37572:5;37568:16;37562:23;37617:2;37610:4;37605:3;37601:14;37594:26;37641:47;37684:2;37679:3;37675:12;37659:14;37641:47;:::i;:::-;37629:59;;;37736:4;37729:5;37725:16;37719:23;37751:50;37795:4;37790:3;37786:14;37770;37751:50;:::i;:::-;;37849:4;37842:5;37838:16;37832:23;37897:3;37891:4;37887:14;37880:4;37875:3;37871:14;37864:38;37925:39;37959:4;37943:14;37925:39;:::i;:::-;37911:53;;;38013:4;38006:5;38002:16;37996:23;37989:4;37984:3;37980:14;37973:47;38069:4;38062:5;38058:16;38052:23;38045:4;38040:3;38036:14;38029:47;38095:6;38149:2;38142:5;38138:14;38132:21;38162:48;38206:2;38201:3;38197:12;38181:14;38162:48;:::i;:::-;;;38229:6;38283:2;38276:5;38272:14;38266:21;38329:3;38321:6;38317:16;38312:2;38307:3;38303:12;38296:38;38357:41;38391:6;38375:14;38357:41;:::i;:::-;38343:55;;;;38417:6;38471:2;38464:5;38460:14;38454:21;38484:47;38527:2;38522:3;38518:12;38502:14;20024:10;20013:22;20001:35;;19948:94;38484:47;;;38550:6;38604:2;38597:5;38593:14;38587:21;38617:46;38659:2;38654:3;38650:12;38634:14;19927:1;19916:20;19904:33;;19852:91;38617:46;-1:-1:-1;;38682:6:32;38724:14;;;38718:21;38704:12;;;38697:43;38759:6;38802:14;;;38796:21;20024:10;20013:22;;;38860:12;;;20001:35;;;;38892:6;38936:14;;;38930:21;20013:22;;38995:12;;;20001:35;39027:6;39071:14;;;39065:21;20013:22;;;39130:12;;;20001:35;39163:6;39207:15;;;39201:22;17187:6;17176:18;39267:13;;;17164:31;39301:6;39345:15;;;39339:22;8717:13;;8710:21;39403:13;;;8698:34;39370:47;8647:91;39450:348;39673:2;39662:9;39655:21;39636:4;39693:56;39745:2;39734:9;39730:18;39722:6;39693:56;:::i;:::-;39685:64;;39785:6;39780:2;39769:9;39765:18;39758:34;39450:348;;;;;:::o;39803:435::-;-1:-1:-1;;;;;40054:32:32;;;;40036:51;;40118:2;40103:18;;40096:34;;;;40173:14;40166:22;40161:2;40146:18;;40139:50;40220:2;40205:18;;40198:34;40023:3;40008:19;;39803:435::o;40535:531::-;40799:10;40791:6;40787:23;40776:9;40769:42;40847:6;40842:2;40831:9;40827:18;40820:34;40890:3;40885:2;40874:9;40870:18;40863:31;40750:4;40911:46;40952:3;40941:9;40937:19;40929:6;40911:46;:::i;:::-;41000:14;;40993:22;40988:2;40973:18;;40966:50;-1:-1:-1;41047:3:32;41032:19;41025:35;40903:54;40535:531;-1:-1:-1;;;40535:531:32:o;43075:329::-;43277:2;43259:21;;;43316:1;43296:18;;;43289:29;-1:-1:-1;;;43349:2:32;43334:18;;43327:36;43395:2;43380:18;;43075:329::o;44764:::-;44966:2;44948:21;;;45005:1;44985:18;;;44978:29;-1:-1:-1;;;45038:2:32;45023:18;;45016:36;45084:2;45069:18;;44764:329::o;46379:656::-;46640:6;46635:3;46628:19;46610:3;46676:6;46670:13;46692:73;46758:6;46753:2;46748:3;46744:12;46739:2;46731:6;46727:15;46692:73;:::i;:::-;46793:6;46788:3;46784:16;46774:26;;46861:1;46857;46853:2;46849:10;46845:18;46841:23;46833:6;46829:36;46824:2;46820;46816:11;46809:57;46897:6;46891:13;46913:74;46978:8;46973:2;46969;46965:11;46960:2;46952:6;46948:15;46913:74;:::i;:::-;47007:17;47026:2;47003:26;;46379:656;-1:-1:-1;;;;;;46379:656:32:o;47040:441::-;47093:5;47146:3;47139:4;47131:6;47127:17;47123:27;47113:55;;47164:1;47161;47154:12;47113:55;47193:6;47187:13;47224:48;47240:31;47268:2;47240:31;:::i;47224:48::-;47297:2;47288:7;47281:19;47343:3;47336:4;47331:2;47323:6;47319:15;47315:26;47312:35;47309:55;;;47360:1;47357;47350:12;47309:55;47373:77;47447:2;47440:4;47431:7;47427:18;47420:4;47412:6;47408:17;47373:77;:::i;47486:335::-;47565:6;47618:2;47606:9;47597:7;47593:23;47589:32;47586:52;;;47634:1;47631;47624:12;47586:52;47661:16;;-1:-1:-1;;;;;47689:30:32;;47686:50;;;47732:1;47729;47722:12;47686:50;47755:60;47807:7;47798:6;47787:9;47783:22;47755:60;:::i;47826:608::-;-1:-1:-1;;;48188:3:32;48181:16;48226:6;48222:1;48217:3;48213:11;48206:27;-1:-1:-1;;;48258:2:32;48253:3;48249:12;48242:25;48163:3;48296:6;48290:13;48312:75;48380:6;48375:2;48370:3;48366:12;48359:4;48351:6;48347:17;48312:75;:::i;:::-;48407:16;;;;48425:2;48403:25;;47826:608;-1:-1:-1;;;47826:608:32:o;48439:468::-;48662:2;48651:9;48644:21;48625:4;48688:45;48729:2;48718:9;48714:18;48706:6;48688:45;:::i;:::-;48781:9;48773:6;48769:22;48764:2;48753:9;48749:18;48742:50;48809:33;48835:6;48827;48809:33;:::i;:::-;48801:41;;;48892:6;48885:14;48878:22;48873:2;48862:9;48858:18;48851:50;48439:468;;;;;;:::o;49580:172::-;49647:10;49677;;;49689;;;49673:27;;49712:11;;;49709:37;;;49726:18;;:::i;:::-;49709:37;49580:172;;;;:::o;50425:226::-;50580:2;50569:9;50562:21;50543:4;50600:45;50641:2;50630:9;50626:18;50618:6;50600:45;:::i;50656:2007::-;50780:6;50811:2;50854;50842:9;50833:7;50829:23;50825:32;50822:52;;;50870:1;50867;50860:12;50822:52;50897:16;;-1:-1:-1;;;;;50962:14:32;;;50959:34;;;50989:1;50986;50979:12;50959:34;51027:6;51016:9;51012:22;51002:32;;51072:7;51065:4;51061:2;51057:13;51053:27;51043:55;;51094:1;51091;51084:12;51043:55;51123:2;51117:9;51146:60;51162:43;51202:2;51162:43;:::i;51146:60::-;51240:15;;;51322:1;51318:10;;;;51310:19;;51306:28;;;51271:12;;;;51346:19;;;51343:39;;;51378:1;51375;51368:12;51343:39;51410:2;51406;51402:11;51422:1211;51438:6;51433:3;51430:15;51422:1211;;;51517:3;51511:10;51553:2;51540:11;51537:19;51534:109;;;51597:1;51626:2;51622;51615:14;51534:109;51666:20;;51709:4;51737:16;;;-1:-1:-1;;51733:30:32;51729:39;-1:-1:-1;51726:129:32;;;51809:1;51838:2;51834;51827:14;51726:129;51881:22;;:::i;:::-;51945:2;51941;51937:11;51931:18;51997:2;51988:7;51984:16;51975:7;51972:29;51962:127;;52043:1;52072:2;52068;52061:14;51962:127;52102:22;;52148:2;52185:12;;;52179:19;52214:16;;;52211:109;;;52272:1;52302:3;52297;52290:16;52211:109;52356:64;52412:7;52407:2;52396:8;52392:2;52388:17;52384:26;52356:64;:::i;:::-;52340:14;;;52333:88;-1:-1:-1;52445:2:32;52490:12;;;52484:19;52467:15;;;52460:44;;;;52547:11;;;;52541:18;52524:15;;;52517:43;52573:18;;52611:12;;;;51455;;51422:1211;;;-1:-1:-1;52652:5:32;50656:2007;-1:-1:-1;;;;;;;;50656:2007:32:o;52668:184::-;52738:6;52791:2;52779:9;52770:7;52766:23;52762:32;52759:52;;;52807:1;52804;52797:12;52759:52;-1:-1:-1;52830:16:32;;52668:184;-1:-1:-1;52668:184:32:o;53525:848::-;53751:4;53799:3;53788:9;53784:19;53830:6;53819:9;53812:25;53856:2;53894:6;53889:2;53878:9;53874:18;53867:34;53937:6;53932:2;53921:9;53917:18;53910:34;53980:3;53975:2;53964:9;53960:18;53953:31;54004:6;54039;54033:13;54070:6;54062;54055:22;54108:3;54097:9;54093:19;54086:26;;54147:2;54139:6;54135:15;54121:29;;54168:1;54178:169;54192:6;54189:1;54186:13;54178:169;;;54253:13;;54241:26;;54322:15;;;;54287:12;;;;54214:1;54207:9;54178:169;;;-1:-1:-1;54364:3:32;;53525:848;-1:-1:-1;;;;;;;;;53525:848:32:o;54900:257::-;-1:-1:-1;;;;;55021:10:32;;;55033;;;55017:27;55064:20;;;;54971:18;55103:24;;;55093:58;;55131:18;;:::i;:::-;55093:58;;54900:257;;;;:::o;55496:307::-;55673:2;55662:9;55655:21;55636:4;55693:45;55734:2;55723:9;55719:18;55711:6;55693:45;:::i;:::-;55685:53;;55788:6;55781:14;55774:22;55769:2;55758:9;55754:18;55747:50;55496:307;;;;;:::o;55808:840::-;55934:3;55963:1;55996:6;55990:13;56026:36;56052:9;56026:36;:::i;:::-;56081:1;56098:18;;;56125:133;;;;56272:1;56267:356;;;;56091:532;;56125:133;-1:-1:-1;;56158:24:32;;56146:37;;56231:14;;56224:22;56212:35;;56203:45;;;-1:-1:-1;56125:133:32;;56267:356;56298:6;56295:1;56288:17;56328:4;56373:2;56370:1;56360:16;56398:1;56412:165;56426:6;56423:1;56420:13;56412:165;;;56504:14;;56491:11;;;56484:35;56547:16;;;;56441:10;;56412:165;;;56416:3;;;56606:6;56601:3;56597:16;56590:23;;56091:532;-1:-1:-1;56639:3:32;;55808:840;-1:-1:-1;;;;;;55808:840:32:o;59398:180::-;-1:-1:-1;;;;;59503:10:32;;;59515;;;59499:27;;59538:11;;;59535:37;;;59552:18;;:::i;59917:277::-;60112:2;60101:9;60094:21;60075:4;60132:56;60184:2;60173:9;60169:18;60161:6;60132:56;:::i;65018:1063::-;65388:4;65417:3;65447:2;65436:9;65429:21;65473:45;65514:2;65503:9;65499:18;65491:6;65473:45;:::i;:::-;65459:59;;65554:6;65549:2;65538:9;65534:18;65527:34;65609:9;65601:6;65597:22;65592:2;65581:9;65577:18;65570:50;65643:33;65669:6;65661;65643:33;:::i;:::-;65629:47;;65712:6;65707:2;65696:9;65692:18;65685:34;65768:9;65760:6;65756:22;65750:3;65739:9;65735:19;65728:51;65802:33;65828:6;65820;65802:33;:::i;:::-;-1:-1:-1;;;;;65872:32:32;;65892:3;65851:19;;65844:61;65942:22;;;65936:3;65921:19;;65914:51;65788:47;-1:-1:-1;65982:33:32;65788:47;66000:6;65982:33;:::i;:::-;65974:41;;;66066:6;66059:14;66052:22;66046:3;66035:9;66031:19;66024:51;65018:1063;;;;;;;;;;;:::o", "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\npragma experimental ABIEncoderV2;\n\nimport \"./Bridge.sol\";\nimport \"./Quotes.sol\";\nimport \"./SignatureValidator.sol\";\nimport \"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\";\nimport \"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\";\nimport \"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\";\n\n/**\n @title Contract that assists with the Flyover protocol\n */\n\ncontract LiquidityBridgeContract is Initializable, OwnableUpgradeable, ReentrancyGuardUpgradeable {\n uint16 constant public MAX_CALL_GAS_COST = 35000;\n uint16 constant public MAX_REFUND_GAS_LIMIT = 2300;\n\n uint8 constant public UNPROCESSED_QUOTE_CODE = 0;\n uint8 constant public CALL_DONE_CODE = 1;\n uint8 constant public PROCESSED_QUOTE_CODE = 2;\n\n int16 constant public BRIDGE_REFUNDED_USER_ERROR_CODE = - 100;\n int16 constant public BRIDGE_REFUNDED_LP_ERROR_CODE = - 200;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE = - 300;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE = - 301;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE = - 302;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR = - 303;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR = - 304;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR =\n - 305;\n int16 constant public BRIDGE_GENERIC_ERROR = - 900;\n uint constant public MAX_UINT = 2 ** 256 - 1;\n uint constant public PAY_TO_ADDRESS_OUTPUT = 0;\n uint constant public QUOTE_HASH_OUTPUT = 1;\n\n struct Registry {\n uint32 timestamp;\n bool success;\n }\n\n struct PegoutRecord {\n uint256 depositTimestamp;\n bool completed;\n }\n\n struct LiquidityProvider {\n uint id;\n address provider;\n string name;\n string apiBaseUrl;\n bool status;\n string providerType;\n }\n\n event Register(uint id, address indexed from, uint256 amount);\n event Deposit(address from, uint256 amount);\n event CollateralIncrease(address from, uint256 amount);\n event PegoutCollateralIncrease(address from, uint256 amount);\n event Withdrawal(address from, uint256 amount);\n event WithdrawCollateral(address from, uint256 amount);\n event PegoutWithdrawCollateral(address from, uint256 amount);\n event Resigned(address from);\n event CallForUser(\n address indexed from,\n address indexed dest,\n uint gasLimit,\n uint value,\n bytes data,\n bool success,\n bytes32 quoteHash\n );\n event PegInRegistered(bytes32 indexed quoteHash, int256 transferredAmount);\n event Penalized(address liquidityProvider, uint penalty, bytes32 quoteHash);\n event BridgeCapExceeded(bytes32 quoteHash, int256 errorCode);\n event BalanceIncrease(address dest, uint amount);\n event BalanceDecrease(address dest, uint amount);\n event Refund(address dest, uint amount, bool success, bytes32 quoteHash);\n event PegOut(\n address from,\n uint256 amount,\n bytes32 quotehash,\n uint processed\n );\n event PegOutRefunded(bytes32 indexed quoteHash);\n event PegOutDeposit(\n bytes32 indexed quoteHash,\n address indexed sender,\n uint256 amount,\n uint256 timestamp\n );\n event PegOutUserRefunded(\n bytes32 indexed quoteHash,\n uint256 value,\n address userAddress\n );\n\n Bridge public bridge;\n mapping(address => uint256) private balances;\n mapping(address => uint256) private collateral;\n mapping(address => uint256) private pegoutCollateral;\n mapping(uint => LiquidityProvider) private liquidityProviders;\n mapping(bytes32 => Registry) private callRegistry;\n mapping(address => uint256) private resignationBlockNum;\n\n uint256 private minCollateral;\n uint256 private minPegIn;\n\n uint32 private rewardP;\n uint32 private resignDelayInBlocks;\n uint private dust;\n uint public providerId;\n\n uint private btcBlockTime;\n bool private mainnet;\n\n mapping(bytes32 => uint8) private processedQuotes;\n mapping(bytes32 => Quotes.PegOutQuote) private registeredPegoutQuotes;\n mapping(bytes32 => PegoutRecord) private pegoutRegistry;\n\n modifier onlyRegistered() {\n require(isRegistered(msg.sender), \"LBC001\");\n _;\n }\n\n modifier onlyRegisteredForPegout() {\n require(isRegisteredForPegout(msg.sender), \"LBC001\");\n _;\n }\n\n modifier onlyEoa() {\n require(tx.origin == msg.sender, \"LBC003\");\n _;\n }\n\n /**\n @param _bridgeAddress The address of the bridge contract\n @param _minimumCollateral The minimum required collateral for liquidity providers\n @param _minimumPegIn The minimum peg-in amount\n @param _rewardPercentage The percentage of the penalty fee that an honest party\n // receives when calling registerPegIn in case of a liquidity provider misbehaving\n @param _resignDelayBlocks The number of block confirmations that a liquidity\n // provider needs to wait before it can withdraw its collateral\n @param _dustThreshold Amount that is considered dust\n */\n function initialize(\n address payable _bridgeAddress,\n uint256 _minimumCollateral,\n uint256 _minimumPegIn,\n uint32 _rewardPercentage,\n uint32 _resignDelayBlocks,\n uint _dustThreshold,\n uint _btcBlockTime,\n bool _mainnet\n ) public initializer {\n require(_rewardPercentage <= 100, \"LBC004\");\n require(_minimumCollateral >= 0.03 ether, \"LBC072\");\n require(_resignDelayBlocks >= 60, \"LBC073\");\n __Ownable_init_unchained();\n bridge = Bridge(_bridgeAddress);\n minCollateral = _minimumCollateral;\n minPegIn = _minimumPegIn;\n rewardP = _rewardPercentage;\n resignDelayInBlocks = _resignDelayBlocks;\n dust = _dustThreshold;\n btcBlockTime = _btcBlockTime;\n mainnet = _mainnet;\n }\n\n modifier onlyOwnerAndProvider(uint _providerId) {\n require(\n msg.sender == owner() ||\n msg.sender == liquidityProviders[_providerId].provider,\n \"LBC005\"\n );\n _;\n }\n\n function setProviderStatus(\n uint _providerId,\n bool status\n ) public onlyOwnerAndProvider(_providerId) {\n liquidityProviders[_providerId].status = status;\n }\n\n receive() external payable {\n require(msg.sender == address(bridge), \"LBC007\");\n }\n\n function getProviderIds() external view returns (uint) {\n return providerId;\n }\n\n function getBridgeAddress() external view returns (address) {\n return address(bridge);\n }\n\n function getMinCollateral() public view returns (uint) {\n return minCollateral;\n }\n\n function getMinPegIn() external view returns (uint) {\n return minPegIn;\n }\n\n function getRewardPercentage() external view returns (uint) {\n return rewardP;\n }\n\n function getResignDelayBlocks() external view returns (uint) {\n return resignDelayInBlocks;\n }\n\n function getDustThreshold() external view returns (uint) {\n return dust;\n }\n\n function getRegisteredPegOutQuote(\n bytes32 quoteHash\n ) external view returns (Quotes.PegOutQuote memory) {\n return registeredPegoutQuotes[quoteHash];\n }\n\n function isPegOutQuoteCompleted(bytes32 quoteHash) external view returns (bool) {\n return pegoutRegistry[quoteHash].completed;\n }\n\n /**\n @dev Checks whether a liquidity provider can deliver a pegin service\n @return Whether the liquidity provider is registered and has enough locked collateral\n */\n function isOperational(address addr) external view returns (bool) {\n return isRegistered(addr) && collateral[addr] >= minCollateral;\n }\n\n /**\n @dev Checks whether a liquidity provider can deliver a pegout service\n @return Whether the liquidity provider is registered and has enough locked collateral\n */\n function isOperationalForPegout(address addr) external view returns (bool) {\n return\n isRegisteredForPegout(addr) &&\n pegoutCollateral[addr] >= minCollateral;\n }\n\n /**\n @dev Registers msg.sender as a liquidity provider with msg.value as collateral\n */\n function register(\n string memory _name,\n string memory _apiBaseUrl,\n bool _status,\n string memory _providerType\n ) external payable onlyEoa returns (uint) {\n //require(collateral[msg.sender] == 0, \"Already registered\");\n validateRegisterParameters(\n _name,\n _apiBaseUrl,\n _providerType\n );\n\n require(collateral[msg.sender] == 0 && pegoutCollateral[msg.sender] == 0, \"LBC070\");\n require(\n resignationBlockNum[msg.sender] == 0,\n \"LBC009\"\n );\n\n if (keccak256(abi.encodePacked(_providerType)) == keccak256(abi.encodePacked(\"pegin\"))) {\n require(msg.value >= minCollateral, \"LBC008\");\n collateral[msg.sender] = msg.value;\n } else if (keccak256(abi.encodePacked(_providerType)) == keccak256(abi.encodePacked(\"pegout\"))) {\n require(msg.value >= minCollateral, \"LBC008\");\n pegoutCollateral[msg.sender] = msg.value;\n } else {\n require(msg.value >= minCollateral * 2, \"LBC008\");\n uint halfMsgValue = msg.value / 2;\n collateral[msg.sender] = msg.value % 2 == 0 ? halfMsgValue : halfMsgValue + 1;\n pegoutCollateral[msg.sender] = halfMsgValue;\n }\n\n providerId++;\n liquidityProviders[providerId] = LiquidityProvider({\n id: providerId,\n provider: msg.sender,\n name: _name,\n apiBaseUrl: _apiBaseUrl,\n status: _status,\n providerType: _providerType\n });\n emit Register(providerId, msg.sender, msg.value);\n return (providerId);\n }\n\n /**\n @dev Validates input parameters for the register function\n */\n function validateRegisterParameters(\n string memory _name,\n string memory _apiBaseUrl,\n string memory _providerType\n ) internal pure {\n require(bytes(_name).length > 0, \"LBC010\");\n require(\n bytes(_apiBaseUrl).length > 0,\n \"LBC017\"\n );\n\n // Check if _providerType is one of the valid strings\n require(\n keccak256(abi.encodePacked(_providerType)) ==\n keccak256(abi.encodePacked(\"pegin\")) ||\n keccak256(abi.encodePacked(_providerType)) ==\n keccak256(abi.encodePacked(\"pegout\")) ||\n keccak256(abi.encodePacked(_providerType)) ==\n keccak256(abi.encodePacked(\"both\")),\n \"LBC018\"\n );\n }\n\n function getProviders(\n uint[] memory providerIds\n ) external view returns (LiquidityProvider[] memory) {\n LiquidityProvider[] memory providersToReturn = new LiquidityProvider[](\n providerIds.length\n );\n uint count = 0;\n\n for (uint i = 0; i < providerIds.length; i++) {\n uint id = providerIds[i];\n if (\n (isRegistered(liquidityProviders[id].provider) ||\n isRegisteredForPegout(liquidityProviders[id].provider)) &&\n liquidityProviders[id].status\n ) {\n providersToReturn[count] = liquidityProviders[id];\n count++;\n }\n }\n return providersToReturn;\n }\n\n /**\n @dev Increases the amount of collateral of the sender\n */\n function addCollateral() external payable onlyRegistered {\n collateral[msg.sender] += msg.value;\n emit CollateralIncrease(msg.sender, msg.value);\n }\n\n function addPegoutCollateral() external payable onlyRegisteredForPegout {\n pegoutCollateral[msg.sender] += msg.value;\n emit PegoutCollateralIncrease(msg.sender, msg.value);\n }\n\n /**\n @dev Increases the balance of the sender\n */\n function deposit() external payable onlyRegistered {\n increaseBalance(msg.sender, msg.value);\n }\n\n /**\n @dev Used to withdraw funds\n @param amount The amount to withdraw\n */\n function withdraw(uint256 amount) external {\n require(balances[msg.sender] >= amount, \"LBC019\");\n balances[msg.sender] -= amount;\n (bool success,) = msg.sender.call{value: amount}(\"\");\n require(success, \"LBC020\");\n emit Withdrawal(msg.sender, amount);\n }\n\n /**\n @dev Used to withdraw the locked collateral\n */\n function withdrawCollateral() external {\n require(resignationBlockNum[msg.sender] > 0, \"LBC021\");\n require(\n block.number - resignationBlockNum[msg.sender] >=\n resignDelayInBlocks,\n \"LBC022\"\n );\n uint amount = collateral[msg.sender];\n collateral[msg.sender] = 0;\n resignationBlockNum[msg.sender] = 0;\n (bool success,) = msg.sender.call{value: amount}(\"\");\n require(success, \"LBC020\");\n emit WithdrawCollateral(msg.sender, amount);\n }\n\n function withdrawPegoutCollateral() external {\n require(resignationBlockNum[msg.sender] > 0, \"LBC021\");\n require(\n block.number - resignationBlockNum[msg.sender] >=\n resignDelayInBlocks,\n \"LBC022\"\n );\n uint amount = pegoutCollateral[msg.sender];\n pegoutCollateral[msg.sender] = 0;\n resignationBlockNum[msg.sender] = 0;\n (bool success,) = msg.sender.call{value: amount}(\"\");\n require(success, \"LBC020\");\n emit PegoutWithdrawCollateral(msg.sender, amount);\n }\n\n /**\n @dev Used to resign as a liquidity provider\n */\n function resign() external onlyRegistered {\n require(resignationBlockNum[msg.sender] == 0, \"LBC023\");\n resignationBlockNum[msg.sender] = block.number;\n emit Resigned(msg.sender);\n }\n\n /**\n @dev Returns the amount of collateral of a liquidity provider\n @param addr The address of the liquidity provider\n @return The amount of locked collateral\n */\n function getCollateral(address addr) external view returns (uint256) {\n return collateral[addr];\n }\n\n function getPegoutCollateral(address addr) external view returns (uint256) {\n return pegoutCollateral[addr];\n }\n\n /**\n @dev Returns the amount of funds of a liquidity provider\n @param addr The address of the liquidity provider\n @return The balance of the liquidity provider\n */\n function getBalance(address addr) external view returns (uint256) {\n return balances[addr];\n }\n\n /**\n @dev Performs a call on behalf of a user\n @param quote The quote that identifies the service\n @return Boolean indicating whether the call was successful\n */\n function callForUser(\n Quotes.PeginQuote memory quote\n ) external payable onlyRegistered nonReentrant returns (bool) {\n require(\n msg.sender == quote.liquidityProviderRskAddress,\n \"LBC024\"\n );\n require(\n balances[quote.liquidityProviderRskAddress] + msg.value >=\n quote.value,\n \"LBC019\"\n );\n\n bytes32 quoteHash = validateAndHashQuote(quote);\n require(\n processedQuotes[quoteHash] == UNPROCESSED_QUOTE_CODE,\n \"LBC025\"\n );\n\n increaseBalance(quote.liquidityProviderRskAddress, msg.value);\n\n // This check ensures that the call cannot be performed with less gas than the agreed amount\n require(\n gasleft() >= quote.gasLimit + MAX_CALL_GAS_COST,\n \"LBC026\"\n );\n (bool success,) = quote.contractAddress.call{\n gas: quote.gasLimit,\n value: quote.value\n }(quote.data);\n\n require(block.timestamp <= type(uint32).max, \"LBC027\");\n callRegistry[quoteHash].timestamp = uint32(block.timestamp);\n\n if (success) {\n callRegistry[quoteHash].success = true;\n decreaseBalance(quote.liquidityProviderRskAddress, quote.value);\n }\n emit CallForUser(\n msg.sender,\n quote.contractAddress,\n quote.gasLimit,\n quote.value,\n quote.data,\n success,\n quoteHash\n );\n processedQuotes[quoteHash] = CALL_DONE_CODE;\n return success;\n }\n\n /**\n @dev Registers a peg-in transaction with the bridge and pays to the involved parties\n @param quote The quote of the service\n @param signature The signature of the quote\n @param btcRawTransaction The peg-in transaction\n @param partialMerkleTree The merkle tree path that proves transaction inclusion\n @param height The block that contains the peg-in transaction\n @return The total peg-in amount received from the bridge contract or an error code\n */\n function registerPegIn(\n Quotes.PeginQuote memory quote,\n bytes memory signature,\n bytes memory btcRawTransaction,\n bytes memory partialMerkleTree,\n uint256 height\n ) public nonReentrant returns (int256) {\n bytes32 quoteHash = validateAndHashQuote(quote);\n\n // TODO: allow multiple registerPegIns for the same quote with different transactions\n require(\n processedQuotes[quoteHash] <= CALL_DONE_CODE,\n \"LBC028\"\n );\n require(\n SignatureValidator.verify(\n quote.liquidityProviderRskAddress,\n quoteHash,\n signature\n ),\n \"LBC029\"\n );\n require(height < uint256(int256(type(int32).max)), \"LBC030\");\n\n int256 transferredAmountOrErrorCode = registerBridge(\n quote,\n btcRawTransaction,\n partialMerkleTree,\n height,\n quoteHash\n );\n\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR,\n \"LBC031\"\n );\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE,\n \"LBC032\"\n );\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR,\n \"LBC033\"\n );\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR,\n \"LBC034\"\n );\n require(\n transferredAmountOrErrorCode != BRIDGE_GENERIC_ERROR,\n \"LBC035\"\n );\n require(\n transferredAmountOrErrorCode > 0 ||\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_LP_ERROR_CODE ||\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_USER_ERROR_CODE,\n \"LBC036\"\n );\n\n if (\n shouldPenalizeLP(\n quote,\n transferredAmountOrErrorCode,\n callRegistry[quoteHash].timestamp,\n height\n )\n ) {\n uint penalizationAmount = min(\n quote.penaltyFee,\n collateral[quote.liquidityProviderRskAddress]\n ); // prevent underflow when collateral is less than penalty fee.\n collateral[quote.liquidityProviderRskAddress] -= penalizationAmount;\n emit Penalized(\n quote.liquidityProviderRskAddress,\n penalizationAmount,\n quoteHash\n );\n\n // pay reward to sender\n uint256 punisherReward = (penalizationAmount * rewardP) / 100;\n increaseBalance(msg.sender, punisherReward);\n }\n\n if (\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_LP_ERROR_CODE ||\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_USER_ERROR_CODE\n ) {\n // Bridge cap exceeded\n processedQuotes[quoteHash] = PROCESSED_QUOTE_CODE;\n delete callRegistry[quoteHash];\n emit BridgeCapExceeded(quoteHash, transferredAmountOrErrorCode);\n return transferredAmountOrErrorCode;\n }\n\n // the amount is safely assumed positive because it's already been\n // validated in lines 287/298 there's no (negative) error code being returned by the bridge.\n uint transferredAmount = uint(transferredAmountOrErrorCode);\n\n Quotes.checkAgreedAmount(quote, transferredAmount);\n\n if (callRegistry[quoteHash].timestamp > 0) {\n uint refundAmount;\n\n if (callRegistry[quoteHash].success) {\n refundAmount = min(\n transferredAmount,\n quote.value + quote.callFee\n );\n } else {\n refundAmount = min(transferredAmount, quote.callFee);\n }\n increaseBalance(quote.liquidityProviderRskAddress, refundAmount);\n uint remainingAmount = transferredAmount - refundAmount;\n\n if (remainingAmount > dust) {\n // refund rskRefundAddress, if remaining amount greater than dust\n (bool success,) = quote.rskRefundAddress.call{\n gas: MAX_REFUND_GAS_LIMIT,\n value: remainingAmount\n }(\"\");\n emit Refund(\n quote.rskRefundAddress,\n remainingAmount,\n success,\n quoteHash\n );\n\n if (!success) {\n // transfer funds to LP instead, if for some reason transfer to rskRefundAddress was unsuccessful\n increaseBalance(\n quote.liquidityProviderRskAddress,\n remainingAmount\n );\n }\n }\n } else {\n uint refundAmount = transferredAmount;\n\n if (quote.callOnRegister && refundAmount >= quote.value) {\n (bool callSuccess,) = quote.contractAddress.call{\n gas: quote.gasLimit,\n value: quote.value\n }(quote.data);\n emit CallForUser(\n msg.sender,\n quote.contractAddress,\n quote.gasLimit,\n quote.value,\n quote.data,\n callSuccess,\n quoteHash\n );\n\n if (callSuccess) {\n refundAmount -= quote.value;\n }\n }\n if (refundAmount > dust) {\n // refund rskRefundAddress, if refund amount greater than dust\n (bool success,) = quote.rskRefundAddress.call{\n gas: MAX_REFUND_GAS_LIMIT,\n value: refundAmount\n }(\"\");\n emit Refund(\n quote.rskRefundAddress,\n refundAmount,\n success,\n quoteHash\n );\n }\n }\n processedQuotes[quoteHash] = PROCESSED_QUOTE_CODE;\n delete callRegistry[quoteHash];\n emit PegInRegistered(quoteHash, transferredAmountOrErrorCode);\n return transferredAmountOrErrorCode;\n }\n\n function depositPegout( // TODO convert to calldata when contract size issues are fixed\n Quotes.PegOutQuote memory quote,\n bytes memory signature\n ) external payable {\n require(isRegisteredForPegout(quote.lpRskAddress), \"LBC037\");\n require(quote.value + quote.callFee <= msg.value, \"LBC063\");\n require(block.timestamp <= quote.depositDateLimit, \"LBC065\");\n require(block.timestamp <= quote.expireDate, \"LBC046\");\n require(block.number <= quote.expireBlock, \"LBC047\");\n bytes32 quoteHash = hashPegoutQuote(quote);\n require(\n SignatureValidator.verify(quote.lpRskAddress, quoteHash, signature),\n \"LBC029\"\n );\n\n Quotes.PegOutQuote storage registeredQuote = registeredPegoutQuotes[quoteHash];\n\n require(pegoutRegistry[quoteHash].completed == false, \"LBC064\");\n require(registeredQuote.lbcAddress == address(0), \"LBC028\");\n registeredPegoutQuotes[quoteHash] = quote;\n pegoutRegistry[quoteHash].depositTimestamp = block.timestamp;\n emit PegOutDeposit(quoteHash, msg.sender, msg.value, block.timestamp);\n }\n\n function refundUserPegOut(\n bytes32 quoteHash\n ) public nonReentrant {\n Quotes.PegOutQuote storage quote = registeredPegoutQuotes[quoteHash];\n\n require(quote.lbcAddress != address(0), \"LBC042\");\n require(\n block.timestamp > quote.expireDate &&\n block.number > quote.expireBlock,\n \"LBC041\"\n );\n\n uint valueToTransfer = quote.value + quote.callFee;\n address addressToTransfer = quote.rskRefundAddress;\n\n uint penalty = min(quote.penaltyFee, pegoutCollateral[quote.lpRskAddress]);\n pegoutCollateral[quote.lpRskAddress] -= penalty;\n\n emit Penalized(quote.lpRskAddress, penalty, quoteHash);\n emit PegOutUserRefunded(\n quoteHash,\n valueToTransfer,\n quote.rskRefundAddress\n );\n\n delete registeredPegoutQuotes[quoteHash];\n pegoutRegistry[quoteHash].completed = true;\n\n (bool sent,) = addressToTransfer.call{value: valueToTransfer}(\"\");\n require(sent, \"LBC044\");\n }\n\n function refundPegOut(\n bytes32 quoteHash,\n bytes memory btcTx,\n bytes32 btcBlockHeaderHash,\n uint256 partialMerkleTree,\n bytes32[] memory merkleBranchHashes\n ) public nonReentrant onlyRegisteredForPegout {\n require(pegoutRegistry[quoteHash].completed == false, \"LBC064\");\n Quotes.PegOutQuote storage quote = registeredPegoutQuotes[quoteHash];\n require(quote.lbcAddress != address(0), \"LBC042\");\n BtcUtils.TxRawOutput[] memory outputs = BtcUtils.getOutputs(btcTx);\n bytes32 txQuoteHash = abi.decode(BtcUtils.parseNullDataScript(outputs[QUOTE_HASH_OUTPUT].pkScript), (bytes32));\n require(quoteHash == txQuoteHash, \"LBC069\");\n require(msg.sender == quote.lpRskAddress, \"LBC048\");\n require(\n bridge.getBtcTransactionConfirmations(\n BtcUtils.hashBtcTx(btcTx),\n btcBlockHeaderHash,\n partialMerkleTree,\n merkleBranchHashes\n ) >= int(uint256(quote.transferConfirmations)),\n \"LBC049\"\n );\n require(quote.value <= outputs[PAY_TO_ADDRESS_OUTPUT].value * (10**10), \"LBC067\"); // satoshi to wei\n bytes memory btcTxDestination = BtcUtils.parsePayToPubKeyHash(outputs[PAY_TO_ADDRESS_OUTPUT]\n .pkScript, mainnet);\n require(keccak256(quote.deposityAddress) == keccak256(btcTxDestination), \"LBC068\");\n\n if (\n shouldPenalizePegOutLP(\n quote,\n txQuoteHash,\n btcBlockHeaderHash\n )\n ) {\n uint penalty = min(\n quote.penaltyFee,\n pegoutCollateral[quote.lpRskAddress]\n );\n pegoutCollateral[quote.lpRskAddress] -= penalty;\n emit Penalized(quote.lpRskAddress, penalty, txQuoteHash);\n }\n\n (bool sent,) = quote.lpRskAddress.call{\n value: quote.value + quote.callFee\n }(\"\");\n require(sent, \"LBC050\");\n\n delete registeredPegoutQuotes[txQuoteHash];\n pegoutRegistry[txQuoteHash].completed = true;\n emit PegOutRefunded(txQuoteHash);\n }\n\n function validatePeginDepositAddress(\n Quotes.PeginQuote memory quote,\n bytes memory depositAddress\n ) external view returns (bool) {\n bytes32 derivationValue = keccak256(\n bytes.concat(\n hashQuote(quote),\n quote.btcRefundAddress,\n bytes20(quote.lbcAddress),\n quote.liquidityProviderBtcAddress\n )\n );\n bytes memory flyoverRedeemScript = bytes.concat(\n hex\"20\",\n derivationValue,\n hex\"75\",\n bridge.getActivePowpegRedeemScript()\n );\n return BtcUtils.validateP2SHAdress(depositAddress, flyoverRedeemScript, mainnet);\n }\n\n /**\n @dev Calculates hash of a quote. Note: besides calculation this function also validates the quote.\n @param quote The quote of the service\n @return The hash of a quote\n */\n function hashQuote(Quotes.PeginQuote memory quote) public view returns (bytes32) {\n return validateAndHashQuote(quote);\n }\n\n function hashPegoutQuote(\n Quotes.PegOutQuote memory quote\n ) public view returns (bytes32) {\n return validateAndHashPegOutQuote(quote);\n }\n\n function validateAndHashQuote(\n Quotes.PeginQuote memory quote\n ) private view returns (bytes32) {\n require(address(this) == quote.lbcAddress, \"LBC051\");\n require(\n address(bridge) != quote.contractAddress,\n \"LBC052\"\n );\n require(\n quote.btcRefundAddress.length == 21 ||\n quote.btcRefundAddress.length == 33,\n \"LBC053\"\n );\n require(\n quote.liquidityProviderBtcAddress.length == 21,\n \"LBC054\"\n );\n require(\n quote.value + quote.callFee >= minPegIn,\n \"LBC055\"\n );\n require(\n type(uint32).max >= uint64(quote.agreementTimestamp) + uint64(quote.timeForDeposit),\n \"LBC071\"\n );\n\n return keccak256(Quotes.encodeQuote(quote));\n }\n\n function validateAndHashPegOutQuote(\n Quotes.PegOutQuote memory quote\n ) private view returns (bytes32) {\n require(address(this) == quote.lbcAddress, \"LBC056\");\n\n return keccak256(Quotes.encodePegOutQuote(quote));\n }\n\n function min(uint a, uint b) private pure returns (uint) {\n return a < b ? a : b;\n }\n\n // IMPORTANT: These methods should remain private at all costs\n function increaseBalance(address dest, uint amount) private {\n balances[dest] += amount;\n emit BalanceIncrease(dest, amount);\n }\n\n function decreaseBalance(address dest, uint amount) private {\n balances[dest] -= amount;\n emit BalanceDecrease(dest, amount);\n }\n\n /**\n @dev Checks if a liquidity provider is registered\n @param addr The address of the liquidity provider\n @return Boolean indicating whether the liquidity provider is registered\n */\n function isRegistered(address addr) private view returns (bool) {\n return collateral[addr] > 0 && resignationBlockNum[addr] == 0;\n }\n\n function isRegisteredForPegout(address addr) private view returns (bool) {\n return pegoutCollateral[addr] > 0 && resignationBlockNum[addr] == 0;\n }\n\n /**\n @dev Registers a transaction with the bridge contract\n @param quote The quote of the service\n @param btcRawTransaction The peg-in transaction\n @param partialMerkleTree The merkle tree path that proves transaction inclusion\n @param height The block that contains the transaction\n @return The total peg-in amount received from the bridge contract or an error code\n */\n function registerBridge(\n Quotes.PeginQuote memory quote,\n bytes memory btcRawTransaction,\n bytes memory partialMerkleTree,\n uint256 height,\n bytes32 derivationHash\n ) private returns (int256) {\n return\n bridge.registerFastBridgeBtcTransaction(\n btcRawTransaction,\n height,\n partialMerkleTree,\n derivationHash,\n quote.btcRefundAddress,\n payable(this),\n quote.liquidityProviderBtcAddress,\n callRegistry[derivationHash].timestamp > 0 && callRegistry[derivationHash].success\n );\n }\n\n /**\n @dev Checks if a liquidity provider should be penalized\n @param quote The quote of the service\n @param amount The transferred amount or an error code\n @param callTimestamp The time that the liquidity provider called callForUser\n @param height The block height where the peg-in transaction is included\n @return Boolean indicating whether the penalty applies\n */\n function shouldPenalizeLP(\n Quotes.PeginQuote memory quote,\n int256 amount,\n uint256 callTimestamp,\n uint256 height\n ) private view returns (bool) {\n // do not penalize if deposit amount is insufficient\n if (amount > 0 && uint256(amount) < quote.value + quote.callFee) {\n return false;\n }\n\n bytes memory firstConfirmationHeader = bridge\n .getBtcBlockchainBlockHeaderByHeight(height);\n require(firstConfirmationHeader.length > 0, \"Invalid block height\");\n\n uint256 firstConfirmationTimestamp = getBtcBlockTimestamp(\n firstConfirmationHeader\n );\n\n // do not penalize if deposit was not made on time\n // prevent overflow when collateral is less than penalty fee.\n uint timeLimit = quote.agreementTimestamp + quote.timeForDeposit;\n if (firstConfirmationTimestamp > timeLimit) {\n return false;\n }\n\n // penalize if call was not made\n if (callTimestamp == 0) {\n return true;\n }\n\n bytes memory nConfirmationsHeader = bridge\n .getBtcBlockchainBlockHeaderByHeight(\n height + quote.depositConfirmations - 1\n );\n require(nConfirmationsHeader.length > 0, \"LBC058\");\n\n uint256 nConfirmationsTimestamp = getBtcBlockTimestamp(\n nConfirmationsHeader\n );\n\n // penalize if the call was not made on time\n if (callTimestamp > nConfirmationsTimestamp + quote.callTime) {\n return true;\n }\n return false;\n }\n\n function shouldPenalizePegOutLP(\n Quotes.PegOutQuote memory quote,\n bytes32 quoteHash,\n bytes32 blockHash\n ) private view returns (bool) {\n bytes memory firstConfirmationHeader = bridge.getBtcBlockchainBlockHeaderByHash(blockHash);\n require(firstConfirmationHeader.length > 0, \"LBC059\");\n\n uint256 firstConfirmationTimestamp = getBtcBlockTimestamp(firstConfirmationHeader);\n\n // penalize if the transfer was not made on time\n if (firstConfirmationTimestamp > pegoutRegistry[quoteHash].depositTimestamp +\n quote.transferTime + btcBlockTime) {\n return true;\n }\n\n // penalize if LP is refunding after expiration\n if (block.timestamp > quote.expireDate || block.number > quote.expireBlock) {\n return true;\n }\n\n return false;\n }\n\n /**\n @dev Gets the timestamp of a Bitcoin block header\n @param header The block header\n @return The timestamp of the block header\n */\n function getBtcBlockTimestamp(\n bytes memory header\n ) public pure returns (uint256) {\n // bitcoin header is 80 bytes and timestamp is 4 bytes from byte 68 to byte 71 (both inclusive)\n require(header.length == 80, \"LBC061\");\n\n return sliceUint32FromLSB(header, 68);\n }\n\n // bytes must have at least 28 bytes before the uint32\n function sliceUint32FromLSB(\n bytes memory bs,\n uint offset\n ) internal pure returns (uint32) {\n require(bs.length >= offset + 4, \"LBC062\");\n\n return\n uint32(uint8(bs[offset])) |\n (uint32(uint8(bs[offset + 1])) << 8) |\n (uint32(uint8(bs[offset + 2])) << 16) |\n (uint32(uint8(bs[offset + 3])) << 24);\n }\n}\n", - "sourcePath": "/Users/guilhermesoares/WebstormProjects/Rootstock/liquidity-bridge-contract/contracts/LiquidityBridgeContract.sol", + "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/LiquidityBridgeContract.sol", "ast": { "absolutePath": "project:/contracts/LiquidityBridgeContract.sol", "exportedSymbols": { "Bridge": [ - 3652 + 4173 ], "BtcUtils": [ - 3228 + 3743 ], "ContextUpgradeable": [ 767 @@ -49091,30 +49091,30 @@ 301 ], "LiquidityBridgeContract": [ - 7377 + 7898 ], "OpCodes": [ - 3249 + 3770 ], "OwnableUpgradeable": [ 132 ], "Quotes": [ - 10556 + 11152 ], "ReentrancyGuardUpgradeable": [ 386 ], "SignatureValidator": [ - 10898 + 11494 ] }, - "id": 7378, + "id": 7899, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 4512, + "id": 5033, "literals": [ "solidity", "^", @@ -49125,7 +49125,7 @@ "src": "32:24:21" }, { - "id": 4513, + "id": 5034, "literals": [ "experimental", "ABIEncoderV2" @@ -49136,11 +49136,11 @@ { "absolutePath": "project:/contracts/Bridge.sol", "file": "./Bridge.sol", - "id": 4514, + "id": 5035, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 7378, - "sourceUnit": 3653, + "scope": 7899, + "sourceUnit": 4174, "src": "92:22:21", "symbolAliases": [], "unitAlias": "" @@ -49148,11 +49148,11 @@ { "absolutePath": "project:/contracts/Quotes.sol", "file": "./Quotes.sol", - "id": 4515, + "id": 5036, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 7378, - "sourceUnit": 10557, + "scope": 7899, + "sourceUnit": 11153, "src": "115:22:21", "symbolAliases": [], "unitAlias": "" @@ -49160,11 +49160,11 @@ { "absolutePath": "project:/contracts/SignatureValidator.sol", "file": "./SignatureValidator.sol", - "id": 4516, + "id": 5037, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 7378, - "sourceUnit": 10899, + "scope": 7899, + "sourceUnit": 11495, "src": "138:34:21", "symbolAliases": [], "unitAlias": "" @@ -49172,11 +49172,11 @@ { "absolutePath": "@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol", "file": "@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol", - "id": 4517, + "id": 5038, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 7378, - "sourceUnit": 3229, + "scope": 7899, + "sourceUnit": 3744, "src": "173:74:21", "symbolAliases": [], "unitAlias": "" @@ -49184,10 +49184,10 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol", "file": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol", - "id": 4518, + "id": 5039, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 7378, + "scope": 7899, "sourceUnit": 133, "src": "248:75:21", "symbolAliases": [], @@ -49196,10 +49196,10 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol", "file": "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol", - "id": 4519, + "id": 5040, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 7378, + "scope": 7899, "sourceUnit": 387, "src": "324:85:21", "symbolAliases": [], @@ -49210,7 +49210,7 @@ "baseContracts": [ { "baseName": { - "id": 4521, + "id": 5042, "name": "Initializable", "nameLocations": [ "515:13:21" @@ -49219,13 +49219,13 @@ "referencedDeclaration": 301, "src": "515:13:21" }, - "id": 4522, + "id": 5043, "nodeType": "InheritanceSpecifier", "src": "515:13:21" }, { "baseName": { - "id": 4523, + "id": 5044, "name": "OwnableUpgradeable", "nameLocations": [ "530:18:21" @@ -49234,13 +49234,13 @@ "referencedDeclaration": 132, "src": "530:18:21" }, - "id": 4524, + "id": 5045, "nodeType": "InheritanceSpecifier", "src": "530:18:21" }, { "baseName": { - "id": 4525, + "id": 5046, "name": "ReentrancyGuardUpgradeable", "nameLocations": [ "550:26:21" @@ -49249,7 +49249,7 @@ "referencedDeclaration": 386, "src": "550:26:21" }, - "id": 4526, + "id": 5047, "nodeType": "InheritanceSpecifier", "src": "550:26:21" } @@ -49258,15 +49258,15 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 4520, + "id": 5041, "nodeType": "StructuredDocumentation", "src": "411:66:21", "text": "@title Contract that assists with the Flyover protocol" }, "fullyImplemented": true, - "id": 7377, + "id": 7898, "linearizedBaseContracts": [ - 7377, + 7898, 386, 132, 767, @@ -49279,12 +49279,12 @@ { "constant": true, "functionSelector": "9d79b59b", - "id": 4529, + "id": 5050, "mutability": "constant", "name": "MAX_CALL_GAS_COST", "nameLocation": "606:17:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "583:48:21", "stateVariable": true, "storageLocation": "default", @@ -49293,7 +49293,7 @@ "typeString": "uint16" }, "typeName": { - "id": 4527, + "id": 5048, "name": "uint16", "nodeType": "ElementaryTypeName", "src": "583:6:21", @@ -49304,7 +49304,7 @@ }, "value": { "hexValue": "3335303030", - "id": 4528, + "id": 5049, "isConstant": false, "isLValue": false, "isPure": true, @@ -49323,12 +49323,12 @@ { "constant": true, "functionSelector": "e1de16c6", - "id": 4532, + "id": 5053, "mutability": "constant", "name": "MAX_REFUND_GAS_LIMIT", "nameLocation": "660:20:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "637:50:21", "stateVariable": true, "storageLocation": "default", @@ -49337,7 +49337,7 @@ "typeString": "uint16" }, "typeName": { - "id": 4530, + "id": 5051, "name": "uint16", "nodeType": "ElementaryTypeName", "src": "637:6:21", @@ -49348,7 +49348,7 @@ }, "value": { "hexValue": "32333030", - "id": 4531, + "id": 5052, "isConstant": false, "isLValue": false, "isPure": true, @@ -49367,12 +49367,12 @@ { "constant": true, "functionSelector": "9cd6557f", - "id": 4535, + "id": 5056, "mutability": "constant", "name": "UNPROCESSED_QUOTE_CODE", "nameLocation": "716:22:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "694:48:21", "stateVariable": true, "storageLocation": "default", @@ -49381,7 +49381,7 @@ "typeString": "uint8" }, "typeName": { - "id": 4533, + "id": 5054, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "694:5:21", @@ -49392,7 +49392,7 @@ }, "value": { "hexValue": "30", - "id": 4534, + "id": 5055, "isConstant": false, "isLValue": false, "isPure": true, @@ -49411,12 +49411,12 @@ { "constant": true, "functionSelector": "04ade855", - "id": 4538, + "id": 5059, "mutability": "constant", "name": "CALL_DONE_CODE", "nameLocation": "770:14:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "748:40:21", "stateVariable": true, "storageLocation": "default", @@ -49425,7 +49425,7 @@ "typeString": "uint8" }, "typeName": { - "id": 4536, + "id": 5057, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "748:5:21", @@ -49436,7 +49436,7 @@ }, "value": { "hexValue": "31", - "id": 4537, + "id": 5058, "isConstant": false, "isLValue": false, "isPure": true, @@ -49455,12 +49455,12 @@ { "constant": true, "functionSelector": "0a7bf57a", - "id": 4541, + "id": 5062, "mutability": "constant", "name": "PROCESSED_QUOTE_CODE", "nameLocation": "816:20:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "794:46:21", "stateVariable": true, "storageLocation": "default", @@ -49469,7 +49469,7 @@ "typeString": "uint8" }, "typeName": { - "id": 4539, + "id": 5060, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "794:5:21", @@ -49480,7 +49480,7 @@ }, "value": { "hexValue": "32", - "id": 4540, + "id": 5061, "isConstant": false, "isLValue": false, "isPure": true, @@ -49499,12 +49499,12 @@ { "constant": true, "functionSelector": "e8fcce71", - "id": 4545, + "id": 5066, "mutability": "constant", "name": "BRIDGE_REFUNDED_USER_ERROR_CODE", "nameLocation": "869:31:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "847:61:21", "stateVariable": true, "storageLocation": "default", @@ -49513,7 +49513,7 @@ "typeString": "int16" }, "typeName": { - "id": 4542, + "id": 5063, "name": "int16", "nodeType": "ElementaryTypeName", "src": "847:5:21", @@ -49523,7 +49523,7 @@ } }, "value": { - "id": 4544, + "id": 5065, "isConstant": false, "isLValue": false, "isPure": true, @@ -49534,7 +49534,7 @@ "src": "903:5:21", "subExpression": { "hexValue": "313030", - "id": 4543, + "id": 5064, "isConstant": false, "isLValue": false, "isPure": true, @@ -49558,12 +49558,12 @@ { "constant": true, "functionSelector": "e30e6ea3", - "id": 4549, + "id": 5070, "mutability": "constant", "name": "BRIDGE_REFUNDED_LP_ERROR_CODE", "nameLocation": "936:29:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "914:59:21", "stateVariable": true, "storageLocation": "default", @@ -49572,7 +49572,7 @@ "typeString": "int16" }, "typeName": { - "id": 4546, + "id": 5067, "name": "int16", "nodeType": "ElementaryTypeName", "src": "914:5:21", @@ -49582,7 +49582,7 @@ } }, "value": { - "id": 4548, + "id": 5069, "isConstant": false, "isLValue": false, "isPure": true, @@ -49593,7 +49593,7 @@ "src": "968:5:21", "subExpression": { "hexValue": "323030", - "id": 4547, + "id": 5068, "isConstant": false, "isLValue": false, "isPure": true, @@ -49617,12 +49617,12 @@ { "constant": true, "functionSelector": "ae76ce86", - "id": 4553, + "id": 5074, "mutability": "constant", "name": "BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE", "nameLocation": "1001:47:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "979:77:21", "stateVariable": true, "storageLocation": "default", @@ -49631,7 +49631,7 @@ "typeString": "int16" }, "typeName": { - "id": 4550, + "id": 5071, "name": "int16", "nodeType": "ElementaryTypeName", "src": "979:5:21", @@ -49641,7 +49641,7 @@ } }, "value": { - "id": 4552, + "id": 5073, "isConstant": false, "isLValue": false, "isPure": true, @@ -49652,7 +49652,7 @@ "src": "1051:5:21", "subExpression": { "hexValue": "333030", - "id": 4551, + "id": 5072, "isConstant": false, "isLValue": false, "isPure": true, @@ -49676,12 +49676,12 @@ { "constant": true, "functionSelector": "8d597939", - "id": 4557, + "id": 5078, "mutability": "constant", "name": "BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE", "nameLocation": "1084:49:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "1062:79:21", "stateVariable": true, "storageLocation": "default", @@ -49690,7 +49690,7 @@ "typeString": "int16" }, "typeName": { - "id": 4554, + "id": 5075, "name": "int16", "nodeType": "ElementaryTypeName", "src": "1062:5:21", @@ -49700,7 +49700,7 @@ } }, "value": { - "id": 4556, + "id": 5077, "isConstant": false, "isLValue": false, "isPure": true, @@ -49711,7 +49711,7 @@ "src": "1136:5:21", "subExpression": { "hexValue": "333031", - "id": 4555, + "id": 5076, "isConstant": false, "isLValue": false, "isPure": true, @@ -49735,12 +49735,12 @@ { "constant": true, "functionSelector": "a93bb247", - "id": 4561, + "id": 5082, "mutability": "constant", "name": "BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE", "nameLocation": "1169:52:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "1147:82:21", "stateVariable": true, "storageLocation": "default", @@ -49749,7 +49749,7 @@ "typeString": "int16" }, "typeName": { - "id": 4558, + "id": 5079, "name": "int16", "nodeType": "ElementaryTypeName", "src": "1147:5:21", @@ -49759,7 +49759,7 @@ } }, "value": { - "id": 4560, + "id": 5081, "isConstant": false, "isLValue": false, "isPure": true, @@ -49770,7 +49770,7 @@ "src": "1224:5:21", "subExpression": { "hexValue": "333032", - "id": 4559, + "id": 5080, "isConstant": false, "isLValue": false, "isPure": true, @@ -49794,12 +49794,12 @@ { "constant": true, "functionSelector": "c525cdd8", - "id": 4565, + "id": 5086, "mutability": "constant", "name": "BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR", "nameLocation": "1257:41:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "1235:71:21", "stateVariable": true, "storageLocation": "default", @@ -49808,7 +49808,7 @@ "typeString": "int16" }, "typeName": { - "id": 4562, + "id": 5083, "name": "int16", "nodeType": "ElementaryTypeName", "src": "1235:5:21", @@ -49818,7 +49818,7 @@ } }, "value": { - "id": 4564, + "id": 5085, "isConstant": false, "isLValue": false, "isPure": true, @@ -49829,7 +49829,7 @@ "src": "1301:5:21", "subExpression": { "hexValue": "333033", - "id": 4563, + "id": 5084, "isConstant": false, "isLValue": false, "isPure": true, @@ -49853,12 +49853,12 @@ { "constant": true, "functionSelector": "cfb92f0a", - "id": 4569, + "id": 5090, "mutability": "constant", "name": "BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR", "nameLocation": "1334:40:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "1312:70:21", "stateVariable": true, "storageLocation": "default", @@ -49867,7 +49867,7 @@ "typeString": "int16" }, "typeName": { - "id": 4566, + "id": 5087, "name": "int16", "nodeType": "ElementaryTypeName", "src": "1312:5:21", @@ -49877,7 +49877,7 @@ } }, "value": { - "id": 4568, + "id": 5089, "isConstant": false, "isLValue": false, "isPure": true, @@ -49888,7 +49888,7 @@ "src": "1377:5:21", "subExpression": { "hexValue": "333034", - "id": 4567, + "id": 5088, "isConstant": false, "isLValue": false, "isPure": true, @@ -49912,12 +49912,12 @@ { "constant": true, "functionSelector": "418663a2", - "id": 4573, + "id": 5094, "mutability": "constant", "name": "BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR", "nameLocation": "1410:60:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "1388:94:21", "stateVariable": true, "storageLocation": "default", @@ -49926,7 +49926,7 @@ "typeString": "int16" }, "typeName": { - "id": 4570, + "id": 5091, "name": "int16", "nodeType": "ElementaryTypeName", "src": "1388:5:21", @@ -49936,7 +49936,7 @@ } }, "value": { - "id": 4572, + "id": 5093, "isConstant": false, "isLValue": false, "isPure": true, @@ -49947,7 +49947,7 @@ "src": "1477:5:21", "subExpression": { "hexValue": "333035", - "id": 4571, + "id": 5092, "isConstant": false, "isLValue": false, "isPure": true, @@ -49971,12 +49971,12 @@ { "constant": true, "functionSelector": "ae93b67b", - "id": 4577, + "id": 5098, "mutability": "constant", "name": "BRIDGE_GENERIC_ERROR", "nameLocation": "1510:20:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "1488:50:21", "stateVariable": true, "storageLocation": "default", @@ -49985,7 +49985,7 @@ "typeString": "int16" }, "typeName": { - "id": 4574, + "id": 5095, "name": "int16", "nodeType": "ElementaryTypeName", "src": "1488:5:21", @@ -49995,7 +49995,7 @@ } }, "value": { - "id": 4576, + "id": 5097, "isConstant": false, "isLValue": false, "isPure": true, @@ -50006,7 +50006,7 @@ "src": "1533:5:21", "subExpression": { "hexValue": "393030", - "id": 4575, + "id": 5096, "isConstant": false, "isLValue": false, "isPure": true, @@ -50030,12 +50030,12 @@ { "constant": true, "functionSelector": "e5b5019a", - "id": 4584, + "id": 5105, "mutability": "constant", "name": "MAX_UINT", "nameLocation": "1565:8:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "1544:44:21", "stateVariable": true, "storageLocation": "default", @@ -50044,7 +50044,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4578, + "id": 5099, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1544:4:21", @@ -50058,7 +50058,7 @@ "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1", "typeString": "int_const 1157...(70 digits omitted)...9935" }, - "id": 4583, + "id": 5104, "isConstant": false, "isLValue": false, "isPure": true, @@ -50068,14 +50068,14 @@ "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639936_by_1", "typeString": "int_const 1157...(70 digits omitted)...9936" }, - "id": 4581, + "id": 5102, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "32", - "id": 4579, + "id": 5100, "isConstant": false, "isLValue": false, "isPure": true, @@ -50093,7 +50093,7 @@ "operator": "**", "rightExpression": { "hexValue": "323536", - "id": 4580, + "id": 5101, "isConstant": false, "isLValue": false, "isPure": true, @@ -50117,7 +50117,7 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 4582, + "id": 5103, "isConstant": false, "isLValue": false, "isPure": true, @@ -50142,12 +50142,12 @@ { "constant": true, "functionSelector": "be6de4eb", - "id": 4587, + "id": 5108, "mutability": "constant", "name": "PAY_TO_ADDRESS_OUTPUT", "nameLocation": "1615:21:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "1594:46:21", "stateVariable": true, "storageLocation": "default", @@ -50156,7 +50156,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4585, + "id": 5106, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1594:4:21", @@ -50167,7 +50167,7 @@ }, "value": { "hexValue": "30", - "id": 4586, + "id": 5107, "isConstant": false, "isLValue": false, "isPure": true, @@ -50186,12 +50186,12 @@ { "constant": true, "functionSelector": "a4a5ba50", - "id": 4590, + "id": 5111, "mutability": "constant", "name": "QUOTE_HASH_OUTPUT", "nameLocation": "1667:17:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "1646:42:21", "stateVariable": true, "storageLocation": "default", @@ -50200,7 +50200,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4588, + "id": 5109, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1646:4:21", @@ -50211,7 +50211,7 @@ }, "value": { "hexValue": "31", - "id": 4589, + "id": 5110, "isConstant": false, "isLValue": false, "isPure": true, @@ -50229,16 +50229,16 @@ }, { "canonicalName": "LiquidityBridgeContract.Registry", - "id": 4595, + "id": 5116, "members": [ { "constant": false, - "id": 4592, + "id": 5113, "mutability": "mutable", "name": "timestamp", "nameLocation": "1728:9:21", "nodeType": "VariableDeclaration", - "scope": 4595, + "scope": 5116, "src": "1721:16:21", "stateVariable": false, "storageLocation": "default", @@ -50247,7 +50247,7 @@ "typeString": "uint32" }, "typeName": { - "id": 4591, + "id": 5112, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "1721:6:21", @@ -50260,12 +50260,12 @@ }, { "constant": false, - "id": 4594, + "id": 5115, "mutability": "mutable", "name": "success", "nameLocation": "1752:7:21", "nodeType": "VariableDeclaration", - "scope": 4595, + "scope": 5116, "src": "1747:12:21", "stateVariable": false, "storageLocation": "default", @@ -50274,7 +50274,7 @@ "typeString": "bool" }, "typeName": { - "id": 4593, + "id": 5114, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1747:4:21", @@ -50289,22 +50289,22 @@ "name": "Registry", "nameLocation": "1702:8:21", "nodeType": "StructDefinition", - "scope": 7377, + "scope": 7898, "src": "1695:71:21", "visibility": "public" }, { "canonicalName": "LiquidityBridgeContract.PegoutRecord", - "id": 4600, + "id": 5121, "members": [ { "constant": false, - "id": 4597, + "id": 5118, "mutability": "mutable", "name": "depositTimestamp", "nameLocation": "1810:16:21", "nodeType": "VariableDeclaration", - "scope": 4600, + "scope": 5121, "src": "1802:24:21", "stateVariable": false, "storageLocation": "default", @@ -50313,7 +50313,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4596, + "id": 5117, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1802:7:21", @@ -50326,12 +50326,12 @@ }, { "constant": false, - "id": 4599, + "id": 5120, "mutability": "mutable", "name": "completed", "nameLocation": "1841:9:21", "nodeType": "VariableDeclaration", - "scope": 4600, + "scope": 5121, "src": "1836:14:21", "stateVariable": false, "storageLocation": "default", @@ -50340,7 +50340,7 @@ "typeString": "bool" }, "typeName": { - "id": 4598, + "id": 5119, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1836:4:21", @@ -50355,22 +50355,22 @@ "name": "PegoutRecord", "nameLocation": "1779:12:21", "nodeType": "StructDefinition", - "scope": 7377, + "scope": 7898, "src": "1772:85:21", "visibility": "public" }, { "canonicalName": "LiquidityBridgeContract.LiquidityProvider", - "id": 4613, + "id": 5134, "members": [ { "constant": false, - "id": 4602, + "id": 5123, "mutability": "mutable", "name": "id", "nameLocation": "1903:2:21", "nodeType": "VariableDeclaration", - "scope": 4613, + "scope": 5134, "src": "1898:7:21", "stateVariable": false, "storageLocation": "default", @@ -50379,7 +50379,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4601, + "id": 5122, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1898:4:21", @@ -50392,12 +50392,12 @@ }, { "constant": false, - "id": 4604, + "id": 5125, "mutability": "mutable", "name": "provider", "nameLocation": "1923:8:21", "nodeType": "VariableDeclaration", - "scope": 4613, + "scope": 5134, "src": "1915:16:21", "stateVariable": false, "storageLocation": "default", @@ -50406,7 +50406,7 @@ "typeString": "address" }, "typeName": { - "id": 4603, + "id": 5124, "name": "address", "nodeType": "ElementaryTypeName", "src": "1915:7:21", @@ -50420,12 +50420,12 @@ }, { "constant": false, - "id": 4606, + "id": 5127, "mutability": "mutable", "name": "name", "nameLocation": "1948:4:21", "nodeType": "VariableDeclaration", - "scope": 4613, + "scope": 5134, "src": "1941:11:21", "stateVariable": false, "storageLocation": "default", @@ -50434,7 +50434,7 @@ "typeString": "string" }, "typeName": { - "id": 4605, + "id": 5126, "name": "string", "nodeType": "ElementaryTypeName", "src": "1941:6:21", @@ -50447,12 +50447,12 @@ }, { "constant": false, - "id": 4608, + "id": 5129, "mutability": "mutable", "name": "apiBaseUrl", "nameLocation": "1969:10:21", "nodeType": "VariableDeclaration", - "scope": 4613, + "scope": 5134, "src": "1962:17:21", "stateVariable": false, "storageLocation": "default", @@ -50461,7 +50461,7 @@ "typeString": "string" }, "typeName": { - "id": 4607, + "id": 5128, "name": "string", "nodeType": "ElementaryTypeName", "src": "1962:6:21", @@ -50474,12 +50474,12 @@ }, { "constant": false, - "id": 4610, + "id": 5131, "mutability": "mutable", "name": "status", "nameLocation": "1994:6:21", "nodeType": "VariableDeclaration", - "scope": 4613, + "scope": 5134, "src": "1989:11:21", "stateVariable": false, "storageLocation": "default", @@ -50488,7 +50488,7 @@ "typeString": "bool" }, "typeName": { - "id": 4609, + "id": 5130, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1989:4:21", @@ -50501,12 +50501,12 @@ }, { "constant": false, - "id": 4612, + "id": 5133, "mutability": "mutable", "name": "providerType", "nameLocation": "2017:12:21", "nodeType": "VariableDeclaration", - "scope": 4613, + "scope": 5134, "src": "2010:19:21", "stateVariable": false, "storageLocation": "default", @@ -50515,7 +50515,7 @@ "typeString": "string" }, "typeName": { - "id": 4611, + "id": 5132, "name": "string", "nodeType": "ElementaryTypeName", "src": "2010:6:21", @@ -50530,30 +50530,30 @@ "name": "LiquidityProvider", "nameLocation": "1870:17:21", "nodeType": "StructDefinition", - "scope": 7377, + "scope": 7898, "src": "1863:173:21", "visibility": "public" }, { "anonymous": false, "eventSelector": "a9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e", - "id": 4621, + "id": 5142, "name": "Register", "nameLocation": "2048:8:21", "nodeType": "EventDefinition", "parameters": { - "id": 4620, + "id": 5141, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4615, + "id": 5136, "indexed": false, "mutability": "mutable", "name": "id", "nameLocation": "2062:2:21", "nodeType": "VariableDeclaration", - "scope": 4621, + "scope": 5142, "src": "2057:7:21", "stateVariable": false, "storageLocation": "default", @@ -50562,7 +50562,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4614, + "id": 5135, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2057:4:21", @@ -50575,13 +50575,13 @@ }, { "constant": false, - "id": 4617, + "id": 5138, "indexed": true, "mutability": "mutable", "name": "from", "nameLocation": "2082:4:21", "nodeType": "VariableDeclaration", - "scope": 4621, + "scope": 5142, "src": "2066:20:21", "stateVariable": false, "storageLocation": "default", @@ -50590,7 +50590,7 @@ "typeString": "address" }, "typeName": { - "id": 4616, + "id": 5137, "name": "address", "nodeType": "ElementaryTypeName", "src": "2066:7:21", @@ -50604,13 +50604,13 @@ }, { "constant": false, - "id": 4619, + "id": 5140, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2096:6:21", "nodeType": "VariableDeclaration", - "scope": 4621, + "scope": 5142, "src": "2088:14:21", "stateVariable": false, "storageLocation": "default", @@ -50619,7 +50619,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4618, + "id": 5139, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2088:7:21", @@ -50638,23 +50638,23 @@ { "anonymous": false, "eventSelector": "e1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c", - "id": 4627, + "id": 5148, "name": "Deposit", "nameLocation": "2115:7:21", "nodeType": "EventDefinition", "parameters": { - "id": 4626, + "id": 5147, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4623, + "id": 5144, "indexed": false, "mutability": "mutable", "name": "from", "nameLocation": "2131:4:21", "nodeType": "VariableDeclaration", - "scope": 4627, + "scope": 5148, "src": "2123:12:21", "stateVariable": false, "storageLocation": "default", @@ -50663,7 +50663,7 @@ "typeString": "address" }, "typeName": { - "id": 4622, + "id": 5143, "name": "address", "nodeType": "ElementaryTypeName", "src": "2123:7:21", @@ -50677,13 +50677,13 @@ }, { "constant": false, - "id": 4625, + "id": 5146, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2145:6:21", "nodeType": "VariableDeclaration", - "scope": 4627, + "scope": 5148, "src": "2137:14:21", "stateVariable": false, "storageLocation": "default", @@ -50692,7 +50692,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4624, + "id": 5145, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2137:7:21", @@ -50711,23 +50711,23 @@ { "anonymous": false, "eventSelector": "456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af84", - "id": 4633, + "id": 5154, "name": "CollateralIncrease", "nameLocation": "2164:18:21", "nodeType": "EventDefinition", "parameters": { - "id": 4632, + "id": 5153, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4629, + "id": 5150, "indexed": false, "mutability": "mutable", "name": "from", "nameLocation": "2191:4:21", "nodeType": "VariableDeclaration", - "scope": 4633, + "scope": 5154, "src": "2183:12:21", "stateVariable": false, "storageLocation": "default", @@ -50736,7 +50736,7 @@ "typeString": "address" }, "typeName": { - "id": 4628, + "id": 5149, "name": "address", "nodeType": "ElementaryTypeName", "src": "2183:7:21", @@ -50750,13 +50750,13 @@ }, { "constant": false, - "id": 4631, + "id": 5152, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2205:6:21", "nodeType": "VariableDeclaration", - "scope": 4633, + "scope": 5154, "src": "2197:14:21", "stateVariable": false, "storageLocation": "default", @@ -50765,7 +50765,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4630, + "id": 5151, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2197:7:21", @@ -50784,23 +50784,23 @@ { "anonymous": false, "eventSelector": "873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa9", - "id": 4639, + "id": 5160, "name": "PegoutCollateralIncrease", "nameLocation": "2224:24:21", "nodeType": "EventDefinition", "parameters": { - "id": 4638, + "id": 5159, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4635, + "id": 5156, "indexed": false, "mutability": "mutable", "name": "from", "nameLocation": "2257:4:21", "nodeType": "VariableDeclaration", - "scope": 4639, + "scope": 5160, "src": "2249:12:21", "stateVariable": false, "storageLocation": "default", @@ -50809,7 +50809,7 @@ "typeString": "address" }, "typeName": { - "id": 4634, + "id": 5155, "name": "address", "nodeType": "ElementaryTypeName", "src": "2249:7:21", @@ -50823,13 +50823,13 @@ }, { "constant": false, - "id": 4637, + "id": 5158, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2271:6:21", "nodeType": "VariableDeclaration", - "scope": 4639, + "scope": 5160, "src": "2263:14:21", "stateVariable": false, "storageLocation": "default", @@ -50838,7 +50838,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4636, + "id": 5157, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2263:7:21", @@ -50857,23 +50857,23 @@ { "anonymous": false, "eventSelector": "7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b65", - "id": 4645, + "id": 5166, "name": "Withdrawal", "nameLocation": "2290:10:21", "nodeType": "EventDefinition", "parameters": { - "id": 4644, + "id": 5165, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4641, + "id": 5162, "indexed": false, "mutability": "mutable", "name": "from", "nameLocation": "2309:4:21", "nodeType": "VariableDeclaration", - "scope": 4645, + "scope": 5166, "src": "2301:12:21", "stateVariable": false, "storageLocation": "default", @@ -50882,7 +50882,7 @@ "typeString": "address" }, "typeName": { - "id": 4640, + "id": 5161, "name": "address", "nodeType": "ElementaryTypeName", "src": "2301:7:21", @@ -50896,13 +50896,13 @@ }, { "constant": false, - "id": 4643, + "id": 5164, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2323:6:21", "nodeType": "VariableDeclaration", - "scope": 4645, + "scope": 5166, "src": "2315:14:21", "stateVariable": false, "storageLocation": "default", @@ -50911,7 +50911,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4642, + "id": 5163, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2315:7:21", @@ -50930,23 +50930,23 @@ { "anonymous": false, "eventSelector": "a8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d2", - "id": 4651, + "id": 5172, "name": "WithdrawCollateral", "nameLocation": "2342:18:21", "nodeType": "EventDefinition", "parameters": { - "id": 4650, + "id": 5171, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4647, + "id": 5168, "indexed": false, "mutability": "mutable", "name": "from", "nameLocation": "2369:4:21", "nodeType": "VariableDeclaration", - "scope": 4651, + "scope": 5172, "src": "2361:12:21", "stateVariable": false, "storageLocation": "default", @@ -50955,7 +50955,7 @@ "typeString": "address" }, "typeName": { - "id": 4646, + "id": 5167, "name": "address", "nodeType": "ElementaryTypeName", "src": "2361:7:21", @@ -50969,13 +50969,13 @@ }, { "constant": false, - "id": 4649, + "id": 5170, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2383:6:21", "nodeType": "VariableDeclaration", - "scope": 4651, + "scope": 5172, "src": "2375:14:21", "stateVariable": false, "storageLocation": "default", @@ -50984,7 +50984,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4648, + "id": 5169, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2375:7:21", @@ -51003,23 +51003,23 @@ { "anonymous": false, "eventSelector": "fc72299650b405e7b0480ca8fb0fb3948fb10a77ac02f797cc9de1f4aaa55db7", - "id": 4657, + "id": 5178, "name": "PegoutWithdrawCollateral", "nameLocation": "2402:24:21", "nodeType": "EventDefinition", "parameters": { - "id": 4656, + "id": 5177, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4653, + "id": 5174, "indexed": false, "mutability": "mutable", "name": "from", "nameLocation": "2435:4:21", "nodeType": "VariableDeclaration", - "scope": 4657, + "scope": 5178, "src": "2427:12:21", "stateVariable": false, "storageLocation": "default", @@ -51028,7 +51028,7 @@ "typeString": "address" }, "typeName": { - "id": 4652, + "id": 5173, "name": "address", "nodeType": "ElementaryTypeName", "src": "2427:7:21", @@ -51042,13 +51042,13 @@ }, { "constant": false, - "id": 4655, + "id": 5176, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2449:6:21", "nodeType": "VariableDeclaration", - "scope": 4657, + "scope": 5178, "src": "2441:14:21", "stateVariable": false, "storageLocation": "default", @@ -51057,7 +51057,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4654, + "id": 5175, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2441:7:21", @@ -51076,23 +51076,23 @@ { "anonymous": false, "eventSelector": "a6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d86", - "id": 4661, + "id": 5182, "name": "Resigned", "nameLocation": "2468:8:21", "nodeType": "EventDefinition", "parameters": { - "id": 4660, + "id": 5181, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4659, + "id": 5180, "indexed": false, "mutability": "mutable", "name": "from", "nameLocation": "2485:4:21", "nodeType": "VariableDeclaration", - "scope": 4661, + "scope": 5182, "src": "2477:12:21", "stateVariable": false, "storageLocation": "default", @@ -51101,7 +51101,7 @@ "typeString": "address" }, "typeName": { - "id": 4658, + "id": 5179, "name": "address", "nodeType": "ElementaryTypeName", "src": "2477:7:21", @@ -51121,23 +51121,23 @@ { "anonymous": false, "eventSelector": "bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80d", - "id": 4677, + "id": 5198, "name": "CallForUser", "nameLocation": "2502:11:21", "nodeType": "EventDefinition", "parameters": { - "id": 4676, + "id": 5197, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4663, + "id": 5184, "indexed": true, "mutability": "mutable", "name": "from", "nameLocation": "2539:4:21", "nodeType": "VariableDeclaration", - "scope": 4677, + "scope": 5198, "src": "2523:20:21", "stateVariable": false, "storageLocation": "default", @@ -51146,7 +51146,7 @@ "typeString": "address" }, "typeName": { - "id": 4662, + "id": 5183, "name": "address", "nodeType": "ElementaryTypeName", "src": "2523:7:21", @@ -51160,13 +51160,13 @@ }, { "constant": false, - "id": 4665, + "id": 5186, "indexed": true, "mutability": "mutable", "name": "dest", "nameLocation": "2569:4:21", "nodeType": "VariableDeclaration", - "scope": 4677, + "scope": 5198, "src": "2553:20:21", "stateVariable": false, "storageLocation": "default", @@ -51175,7 +51175,7 @@ "typeString": "address" }, "typeName": { - "id": 4664, + "id": 5185, "name": "address", "nodeType": "ElementaryTypeName", "src": "2553:7:21", @@ -51189,13 +51189,13 @@ }, { "constant": false, - "id": 4667, + "id": 5188, "indexed": false, "mutability": "mutable", "name": "gasLimit", "nameLocation": "2588:8:21", "nodeType": "VariableDeclaration", - "scope": 4677, + "scope": 5198, "src": "2583:13:21", "stateVariable": false, "storageLocation": "default", @@ -51204,7 +51204,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4666, + "id": 5187, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2583:4:21", @@ -51217,13 +51217,13 @@ }, { "constant": false, - "id": 4669, + "id": 5190, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "2611:5:21", "nodeType": "VariableDeclaration", - "scope": 4677, + "scope": 5198, "src": "2606:10:21", "stateVariable": false, "storageLocation": "default", @@ -51232,7 +51232,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4668, + "id": 5189, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2606:4:21", @@ -51245,13 +51245,13 @@ }, { "constant": false, - "id": 4671, + "id": 5192, "indexed": false, "mutability": "mutable", "name": "data", "nameLocation": "2632:4:21", "nodeType": "VariableDeclaration", - "scope": 4677, + "scope": 5198, "src": "2626:10:21", "stateVariable": false, "storageLocation": "default", @@ -51260,7 +51260,7 @@ "typeString": "bytes" }, "typeName": { - "id": 4670, + "id": 5191, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2626:5:21", @@ -51273,13 +51273,13 @@ }, { "constant": false, - "id": 4673, + "id": 5194, "indexed": false, "mutability": "mutable", "name": "success", "nameLocation": "2651:7:21", "nodeType": "VariableDeclaration", - "scope": 4677, + "scope": 5198, "src": "2646:12:21", "stateVariable": false, "storageLocation": "default", @@ -51288,7 +51288,7 @@ "typeString": "bool" }, "typeName": { - "id": 4672, + "id": 5193, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2646:4:21", @@ -51301,13 +51301,13 @@ }, { "constant": false, - "id": 4675, + "id": 5196, "indexed": false, "mutability": "mutable", "name": "quoteHash", "nameLocation": "2676:9:21", "nodeType": "VariableDeclaration", - "scope": 4677, + "scope": 5198, "src": "2668:17:21", "stateVariable": false, "storageLocation": "default", @@ -51316,7 +51316,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4674, + "id": 5195, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2668:7:21", @@ -51335,23 +51335,23 @@ { "anonymous": false, "eventSelector": "0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2", - "id": 4683, + "id": 5204, "name": "PegInRegistered", "nameLocation": "2703:15:21", "nodeType": "EventDefinition", "parameters": { - "id": 4682, + "id": 5203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4679, + "id": 5200, "indexed": true, "mutability": "mutable", "name": "quoteHash", "nameLocation": "2735:9:21", "nodeType": "VariableDeclaration", - "scope": 4683, + "scope": 5204, "src": "2719:25:21", "stateVariable": false, "storageLocation": "default", @@ -51360,7 +51360,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4678, + "id": 5199, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2719:7:21", @@ -51373,13 +51373,13 @@ }, { "constant": false, - "id": 4681, + "id": 5202, "indexed": false, "mutability": "mutable", "name": "transferredAmount", "nameLocation": "2753:17:21", "nodeType": "VariableDeclaration", - "scope": 4683, + "scope": 5204, "src": "2746:24:21", "stateVariable": false, "storageLocation": "default", @@ -51388,7 +51388,7 @@ "typeString": "int256" }, "typeName": { - "id": 4680, + "id": 5201, "name": "int256", "nodeType": "ElementaryTypeName", "src": "2746:6:21", @@ -51407,23 +51407,23 @@ { "anonymous": false, "eventSelector": "9685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4", - "id": 4691, + "id": 5212, "name": "Penalized", "nameLocation": "2783:9:21", "nodeType": "EventDefinition", "parameters": { - "id": 4690, + "id": 5211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4685, + "id": 5206, "indexed": false, "mutability": "mutable", "name": "liquidityProvider", "nameLocation": "2801:17:21", "nodeType": "VariableDeclaration", - "scope": 4691, + "scope": 5212, "src": "2793:25:21", "stateVariable": false, "storageLocation": "default", @@ -51432,7 +51432,7 @@ "typeString": "address" }, "typeName": { - "id": 4684, + "id": 5205, "name": "address", "nodeType": "ElementaryTypeName", "src": "2793:7:21", @@ -51446,13 +51446,13 @@ }, { "constant": false, - "id": 4687, + "id": 5208, "indexed": false, "mutability": "mutable", "name": "penalty", "nameLocation": "2825:7:21", "nodeType": "VariableDeclaration", - "scope": 4691, + "scope": 5212, "src": "2820:12:21", "stateVariable": false, "storageLocation": "default", @@ -51461,7 +51461,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4686, + "id": 5207, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2820:4:21", @@ -51474,13 +51474,13 @@ }, { "constant": false, - "id": 4689, + "id": 5210, "indexed": false, "mutability": "mutable", "name": "quoteHash", "nameLocation": "2842:9:21", "nodeType": "VariableDeclaration", - "scope": 4691, + "scope": 5212, "src": "2834:17:21", "stateVariable": false, "storageLocation": "default", @@ -51489,7 +51489,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4688, + "id": 5209, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2834:7:21", @@ -51508,23 +51508,23 @@ { "anonymous": false, "eventSelector": "fb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe", - "id": 4697, + "id": 5218, "name": "BridgeCapExceeded", "nameLocation": "2864:17:21", "nodeType": "EventDefinition", "parameters": { - "id": 4696, + "id": 5217, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4693, + "id": 5214, "indexed": false, "mutability": "mutable", "name": "quoteHash", "nameLocation": "2890:9:21", "nodeType": "VariableDeclaration", - "scope": 4697, + "scope": 5218, "src": "2882:17:21", "stateVariable": false, "storageLocation": "default", @@ -51533,7 +51533,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4692, + "id": 5213, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2882:7:21", @@ -51546,13 +51546,13 @@ }, { "constant": false, - "id": 4695, + "id": 5216, "indexed": false, "mutability": "mutable", "name": "errorCode", "nameLocation": "2908:9:21", "nodeType": "VariableDeclaration", - "scope": 4697, + "scope": 5218, "src": "2901:16:21", "stateVariable": false, "storageLocation": "default", @@ -51561,7 +51561,7 @@ "typeString": "int256" }, "typeName": { - "id": 4694, + "id": 5215, "name": "int256", "nodeType": "ElementaryTypeName", "src": "2901:6:21", @@ -51580,23 +51580,23 @@ { "anonymous": false, "eventSelector": "42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f53", - "id": 4703, + "id": 5224, "name": "BalanceIncrease", "nameLocation": "2930:15:21", "nodeType": "EventDefinition", "parameters": { - "id": 4702, + "id": 5223, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4699, + "id": 5220, "indexed": false, "mutability": "mutable", "name": "dest", "nameLocation": "2954:4:21", "nodeType": "VariableDeclaration", - "scope": 4703, + "scope": 5224, "src": "2946:12:21", "stateVariable": false, "storageLocation": "default", @@ -51605,7 +51605,7 @@ "typeString": "address" }, "typeName": { - "id": 4698, + "id": 5219, "name": "address", "nodeType": "ElementaryTypeName", "src": "2946:7:21", @@ -51619,13 +51619,13 @@ }, { "constant": false, - "id": 4701, + "id": 5222, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2965:6:21", "nodeType": "VariableDeclaration", - "scope": 4703, + "scope": 5224, "src": "2960:11:21", "stateVariable": false, "storageLocation": "default", @@ -51634,7 +51634,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4700, + "id": 5221, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2960:4:21", @@ -51653,23 +51653,23 @@ { "anonymous": false, "eventSelector": "8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc0064587", - "id": 4709, + "id": 5230, "name": "BalanceDecrease", "nameLocation": "2984:15:21", "nodeType": "EventDefinition", "parameters": { - "id": 4708, + "id": 5229, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4705, + "id": 5226, "indexed": false, "mutability": "mutable", "name": "dest", "nameLocation": "3008:4:21", "nodeType": "VariableDeclaration", - "scope": 4709, + "scope": 5230, "src": "3000:12:21", "stateVariable": false, "storageLocation": "default", @@ -51678,7 +51678,7 @@ "typeString": "address" }, "typeName": { - "id": 4704, + "id": 5225, "name": "address", "nodeType": "ElementaryTypeName", "src": "3000:7:21", @@ -51692,13 +51692,13 @@ }, { "constant": false, - "id": 4707, + "id": 5228, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "3019:6:21", "nodeType": "VariableDeclaration", - "scope": 4709, + "scope": 5230, "src": "3014:11:21", "stateVariable": false, "storageLocation": "default", @@ -51707,7 +51707,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4706, + "id": 5227, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3014:4:21", @@ -51726,23 +51726,23 @@ { "anonymous": false, "eventSelector": "3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f6", - "id": 4719, + "id": 5240, "name": "Refund", "nameLocation": "3038:6:21", "nodeType": "EventDefinition", "parameters": { - "id": 4718, + "id": 5239, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4711, + "id": 5232, "indexed": false, "mutability": "mutable", "name": "dest", "nameLocation": "3053:4:21", "nodeType": "VariableDeclaration", - "scope": 4719, + "scope": 5240, "src": "3045:12:21", "stateVariable": false, "storageLocation": "default", @@ -51751,7 +51751,7 @@ "typeString": "address" }, "typeName": { - "id": 4710, + "id": 5231, "name": "address", "nodeType": "ElementaryTypeName", "src": "3045:7:21", @@ -51765,13 +51765,13 @@ }, { "constant": false, - "id": 4713, + "id": 5234, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "3064:6:21", "nodeType": "VariableDeclaration", - "scope": 4719, + "scope": 5240, "src": "3059:11:21", "stateVariable": false, "storageLocation": "default", @@ -51780,7 +51780,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4712, + "id": 5233, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3059:4:21", @@ -51793,13 +51793,13 @@ }, { "constant": false, - "id": 4715, + "id": 5236, "indexed": false, "mutability": "mutable", "name": "success", "nameLocation": "3077:7:21", "nodeType": "VariableDeclaration", - "scope": 4719, + "scope": 5240, "src": "3072:12:21", "stateVariable": false, "storageLocation": "default", @@ -51808,7 +51808,7 @@ "typeString": "bool" }, "typeName": { - "id": 4714, + "id": 5235, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3072:4:21", @@ -51821,13 +51821,13 @@ }, { "constant": false, - "id": 4717, + "id": 5238, "indexed": false, "mutability": "mutable", "name": "quoteHash", "nameLocation": "3094:9:21", "nodeType": "VariableDeclaration", - "scope": 4719, + "scope": 5240, "src": "3086:17:21", "stateVariable": false, "storageLocation": "default", @@ -51836,7 +51836,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4716, + "id": 5237, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "3086:7:21", @@ -51855,23 +51855,23 @@ { "anonymous": false, "eventSelector": "ed3e6789842b3369f529c844ab6575be53f29ffeabd4d8b84c04c8431535b1ec", - "id": 4729, + "id": 5250, "name": "PegOut", "nameLocation": "3116:6:21", "nodeType": "EventDefinition", "parameters": { - "id": 4728, + "id": 5249, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4721, + "id": 5242, "indexed": false, "mutability": "mutable", "name": "from", "nameLocation": "3140:4:21", "nodeType": "VariableDeclaration", - "scope": 4729, + "scope": 5250, "src": "3132:12:21", "stateVariable": false, "storageLocation": "default", @@ -51880,7 +51880,7 @@ "typeString": "address" }, "typeName": { - "id": 4720, + "id": 5241, "name": "address", "nodeType": "ElementaryTypeName", "src": "3132:7:21", @@ -51894,13 +51894,13 @@ }, { "constant": false, - "id": 4723, + "id": 5244, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "3162:6:21", "nodeType": "VariableDeclaration", - "scope": 4729, + "scope": 5250, "src": "3154:14:21", "stateVariable": false, "storageLocation": "default", @@ -51909,7 +51909,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4722, + "id": 5243, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3154:7:21", @@ -51922,13 +51922,13 @@ }, { "constant": false, - "id": 4725, + "id": 5246, "indexed": false, "mutability": "mutable", "name": "quotehash", "nameLocation": "3186:9:21", "nodeType": "VariableDeclaration", - "scope": 4729, + "scope": 5250, "src": "3178:17:21", "stateVariable": false, "storageLocation": "default", @@ -51937,7 +51937,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4724, + "id": 5245, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "3178:7:21", @@ -51950,13 +51950,13 @@ }, { "constant": false, - "id": 4727, + "id": 5248, "indexed": false, "mutability": "mutable", "name": "processed", "nameLocation": "3210:9:21", "nodeType": "VariableDeclaration", - "scope": 4729, + "scope": 5250, "src": "3205:14:21", "stateVariable": false, "storageLocation": "default", @@ -51965,7 +51965,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4726, + "id": 5247, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3205:4:21", @@ -51984,23 +51984,23 @@ { "anonymous": false, "eventSelector": "b781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb384", - "id": 4733, + "id": 5254, "name": "PegOutRefunded", "nameLocation": "3237:14:21", "nodeType": "EventDefinition", "parameters": { - "id": 4732, + "id": 5253, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4731, + "id": 5252, "indexed": true, "mutability": "mutable", "name": "quoteHash", "nameLocation": "3268:9:21", "nodeType": "VariableDeclaration", - "scope": 4733, + "scope": 5254, "src": "3252:25:21", "stateVariable": false, "storageLocation": "default", @@ -52009,7 +52009,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4730, + "id": 5251, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "3252:7:21", @@ -52028,23 +52028,23 @@ { "anonymous": false, "eventSelector": "b1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f", - "id": 4743, + "id": 5264, "name": "PegOutDeposit", "nameLocation": "3290:13:21", "nodeType": "EventDefinition", "parameters": { - "id": 4742, + "id": 5263, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4735, + "id": 5256, "indexed": true, "mutability": "mutable", "name": "quoteHash", "nameLocation": "3329:9:21", "nodeType": "VariableDeclaration", - "scope": 4743, + "scope": 5264, "src": "3313:25:21", "stateVariable": false, "storageLocation": "default", @@ -52053,7 +52053,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4734, + "id": 5255, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "3313:7:21", @@ -52066,13 +52066,13 @@ }, { "constant": false, - "id": 4737, + "id": 5258, "indexed": true, "mutability": "mutable", "name": "sender", "nameLocation": "3364:6:21", "nodeType": "VariableDeclaration", - "scope": 4743, + "scope": 5264, "src": "3348:22:21", "stateVariable": false, "storageLocation": "default", @@ -52081,7 +52081,7 @@ "typeString": "address" }, "typeName": { - "id": 4736, + "id": 5257, "name": "address", "nodeType": "ElementaryTypeName", "src": "3348:7:21", @@ -52095,13 +52095,13 @@ }, { "constant": false, - "id": 4739, + "id": 5260, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "3388:6:21", "nodeType": "VariableDeclaration", - "scope": 4743, + "scope": 5264, "src": "3380:14:21", "stateVariable": false, "storageLocation": "default", @@ -52110,7 +52110,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4738, + "id": 5259, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3380:7:21", @@ -52123,13 +52123,13 @@ }, { "constant": false, - "id": 4741, + "id": 5262, "indexed": false, "mutability": "mutable", "name": "timestamp", "nameLocation": "3412:9:21", "nodeType": "VariableDeclaration", - "scope": 4743, + "scope": 5264, "src": "3404:17:21", "stateVariable": false, "storageLocation": "default", @@ -52138,7 +52138,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4740, + "id": 5261, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3404:7:21", @@ -52157,23 +52157,23 @@ { "anonymous": false, "eventSelector": "9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41", - "id": 4751, + "id": 5272, "name": "PegOutUserRefunded", "nameLocation": "3439:18:21", "nodeType": "EventDefinition", "parameters": { - "id": 4750, + "id": 5271, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4745, + "id": 5266, "indexed": true, "mutability": "mutable", "name": "quoteHash", "nameLocation": "3483:9:21", "nodeType": "VariableDeclaration", - "scope": 4751, + "scope": 5272, "src": "3467:25:21", "stateVariable": false, "storageLocation": "default", @@ -52182,7 +52182,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 4744, + "id": 5265, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "3467:7:21", @@ -52195,13 +52195,13 @@ }, { "constant": false, - "id": 4747, + "id": 5268, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "3510:5:21", "nodeType": "VariableDeclaration", - "scope": 4751, + "scope": 5272, "src": "3502:13:21", "stateVariable": false, "storageLocation": "default", @@ -52210,7 +52210,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4746, + "id": 5267, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3502:7:21", @@ -52223,13 +52223,13 @@ }, { "constant": false, - "id": 4749, + "id": 5270, "indexed": false, "mutability": "mutable", "name": "userAddress", "nameLocation": "3533:11:21", "nodeType": "VariableDeclaration", - "scope": 4751, + "scope": 5272, "src": "3525:19:21", "stateVariable": false, "storageLocation": "default", @@ -52238,7 +52238,7 @@ "typeString": "address" }, "typeName": { - "id": 4748, + "id": 5269, "name": "address", "nodeType": "ElementaryTypeName", "src": "3525:7:21", @@ -52258,36 +52258,36 @@ { "constant": false, "functionSelector": "e78cea92", - "id": 4754, + "id": 5275, "mutability": "mutable", "name": "bridge", "nameLocation": "3571:6:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "3557:20:21", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" }, "typeName": { - "id": 4753, + "id": 5274, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 4752, + "id": 5273, "name": "Bridge", "nameLocations": [ "3557:6:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 3652, + "referencedDeclaration": 4173, "src": "3557:6:21" }, - "referencedDeclaration": 3652, + "referencedDeclaration": 4173, "src": "3557:6:21", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, @@ -52295,12 +52295,12 @@ }, { "constant": false, - "id": 4758, + "id": 5279, "mutability": "mutable", "name": "balances", "nameLocation": "3619:8:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "3583:44:21", "stateVariable": true, "storageLocation": "default", @@ -52309,11 +52309,11 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 4757, + "id": 5278, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 4755, + "id": 5276, "name": "address", "nodeType": "ElementaryTypeName", "src": "3591:7:21", @@ -52331,7 +52331,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 4756, + "id": 5277, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3602:7:21", @@ -52345,12 +52345,12 @@ }, { "constant": false, - "id": 4762, + "id": 5283, "mutability": "mutable", "name": "collateral", "nameLocation": "3669:10:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "3633:46:21", "stateVariable": true, "storageLocation": "default", @@ -52359,11 +52359,11 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 4761, + "id": 5282, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 4759, + "id": 5280, "name": "address", "nodeType": "ElementaryTypeName", "src": "3641:7:21", @@ -52381,7 +52381,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 4760, + "id": 5281, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3652:7:21", @@ -52395,12 +52395,12 @@ }, { "constant": false, - "id": 4766, + "id": 5287, "mutability": "mutable", "name": "pegoutCollateral", "nameLocation": "3721:16:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "3685:52:21", "stateVariable": true, "storageLocation": "default", @@ -52409,11 +52409,11 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 4765, + "id": 5286, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 4763, + "id": 5284, "name": "address", "nodeType": "ElementaryTypeName", "src": "3693:7:21", @@ -52431,7 +52431,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 4764, + "id": 5285, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3704:7:21", @@ -52445,25 +52445,25 @@ }, { "constant": false, - "id": 4771, + "id": 5292, "mutability": "mutable", "name": "liquidityProviders", "nameLocation": "3786:18:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "3743:61:21", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$4613_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider)" }, "typeName": { - "id": 4770, + "id": 5291, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 4767, + "id": 5288, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3751:4:21", @@ -52475,28 +52475,28 @@ "nodeType": "Mapping", "src": "3743:34:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$4613_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider)" }, "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 4769, + "id": 5290, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 4768, + "id": 5289, "name": "LiquidityProvider", "nameLocations": [ "3759:17:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 4613, + "referencedDeclaration": 5134, "src": "3759:17:21" }, - "referencedDeclaration": 4613, + "referencedDeclaration": 5134, "src": "3759:17:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$4613_storage_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage_ptr", "typeString": "struct LiquidityBridgeContract.LiquidityProvider" } } @@ -52505,25 +52505,25 @@ }, { "constant": false, - "id": 4776, + "id": 5297, "mutability": "mutable", "name": "callRegistry", "nameLocation": "3847:12:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "3810:49:21", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$4595_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry)" }, "typeName": { - "id": 4775, + "id": 5296, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 4772, + "id": 5293, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "3818:7:21", @@ -52535,28 +52535,28 @@ "nodeType": "Mapping", "src": "3810:28:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$4595_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry)" }, "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 4774, + "id": 5295, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 4773, + "id": 5294, "name": "Registry", "nameLocations": [ "3829:8:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 4595, + "referencedDeclaration": 5116, "src": "3829:8:21" }, - "referencedDeclaration": 4595, + "referencedDeclaration": 5116, "src": "3829:8:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$4595_storage_ptr", + "typeIdentifier": "t_struct$_Registry_$5116_storage_ptr", "typeString": "struct LiquidityBridgeContract.Registry" } } @@ -52565,12 +52565,12 @@ }, { "constant": false, - "id": 4780, + "id": 5301, "mutability": "mutable", "name": "resignationBlockNum", "nameLocation": "3901:19:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "3865:55:21", "stateVariable": true, "storageLocation": "default", @@ -52579,11 +52579,11 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 4779, + "id": 5300, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 4777, + "id": 5298, "name": "address", "nodeType": "ElementaryTypeName", "src": "3873:7:21", @@ -52601,7 +52601,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 4778, + "id": 5299, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3884:7:21", @@ -52615,12 +52615,12 @@ }, { "constant": false, - "id": 4782, + "id": 5303, "mutability": "mutable", "name": "minCollateral", "nameLocation": "3943:13:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "3927:29:21", "stateVariable": true, "storageLocation": "default", @@ -52629,7 +52629,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4781, + "id": 5302, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3927:7:21", @@ -52642,12 +52642,12 @@ }, { "constant": false, - "id": 4784, + "id": 5305, "mutability": "mutable", "name": "minPegIn", "nameLocation": "3978:8:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "3962:24:21", "stateVariable": true, "storageLocation": "default", @@ -52656,7 +52656,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4783, + "id": 5304, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3962:7:21", @@ -52669,12 +52669,12 @@ }, { "constant": false, - "id": 4786, + "id": 5307, "mutability": "mutable", "name": "rewardP", "nameLocation": "4008:7:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "3993:22:21", "stateVariable": true, "storageLocation": "default", @@ -52683,7 +52683,7 @@ "typeString": "uint32" }, "typeName": { - "id": 4785, + "id": 5306, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "3993:6:21", @@ -52696,12 +52696,12 @@ }, { "constant": false, - "id": 4788, + "id": 5309, "mutability": "mutable", "name": "resignDelayInBlocks", "nameLocation": "4036:19:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "4021:34:21", "stateVariable": true, "storageLocation": "default", @@ -52710,7 +52710,7 @@ "typeString": "uint32" }, "typeName": { - "id": 4787, + "id": 5308, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "4021:6:21", @@ -52723,12 +52723,12 @@ }, { "constant": false, - "id": 4790, + "id": 5311, "mutability": "mutable", "name": "dust", "nameLocation": "4074:4:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "4061:17:21", "stateVariable": true, "storageLocation": "default", @@ -52737,7 +52737,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4789, + "id": 5310, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4061:4:21", @@ -52751,12 +52751,12 @@ { "constant": false, "functionSelector": "8490a8df", - "id": 4792, + "id": 5313, "mutability": "mutable", "name": "providerId", "nameLocation": "4096:10:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "4084:22:21", "stateVariable": true, "storageLocation": "default", @@ -52765,7 +52765,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4791, + "id": 5312, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4084:4:21", @@ -52778,12 +52778,12 @@ }, { "constant": false, - "id": 4794, + "id": 5315, "mutability": "mutable", "name": "btcBlockTime", "nameLocation": "4126:12:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "4113:25:21", "stateVariable": true, "storageLocation": "default", @@ -52792,7 +52792,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4793, + "id": 5314, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4113:4:21", @@ -52805,12 +52805,12 @@ }, { "constant": false, - "id": 4796, + "id": 5317, "mutability": "mutable", "name": "mainnet", "nameLocation": "4157:7:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "4144:20:21", "stateVariable": true, "storageLocation": "default", @@ -52819,7 +52819,7 @@ "typeString": "bool" }, "typeName": { - "id": 4795, + "id": 5316, "name": "bool", "nodeType": "ElementaryTypeName", "src": "4144:4:21", @@ -52832,12 +52832,12 @@ }, { "constant": false, - "id": 4800, + "id": 5321, "mutability": "mutable", "name": "processedQuotes", "nameLocation": "4205:15:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "4171:49:21", "stateVariable": true, "storageLocation": "default", @@ -52846,11 +52846,11 @@ "typeString": "mapping(bytes32 => uint8)" }, "typeName": { - "id": 4799, + "id": 5320, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 4797, + "id": 5318, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4179:7:21", @@ -52868,7 +52868,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 4798, + "id": 5319, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "4190:5:21", @@ -52882,25 +52882,25 @@ }, { "constant": false, - "id": 4805, + "id": 5326, "mutability": "mutable", "name": "registeredPegoutQuotes", "nameLocation": "4273:22:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "4226:69:21", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10363_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10959_storage_$", "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote)" }, "typeName": { - "id": 4804, + "id": 5325, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 4801, + "id": 5322, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4234:7:21", @@ -52912,29 +52912,29 @@ "nodeType": "Mapping", "src": "4226:38:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10363_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10959_storage_$", "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote)" }, "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 4803, + "id": 5324, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 4802, + "id": 5323, "name": "Quotes.PegOutQuote", "nameLocations": [ "4245:6:21", "4252:11:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "4245:18:21" }, - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "4245:18:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote" } } @@ -52943,25 +52943,25 @@ }, { "constant": false, - "id": 4810, + "id": 5331, "mutability": "mutable", "name": "pegoutRegistry", "nameLocation": "4342:14:21", "nodeType": "VariableDeclaration", - "scope": 7377, + "scope": 7898, "src": "4301:55:21", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$4600_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord)" }, "typeName": { - "id": 4809, + "id": 5330, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 4806, + "id": 5327, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4309:7:21", @@ -52973,28 +52973,28 @@ "nodeType": "Mapping", "src": "4301:32:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$4600_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord)" }, "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 4808, + "id": 5329, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 4807, + "id": 5328, "name": "PegoutRecord", "nameLocations": [ "4320:12:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 4600, + "referencedDeclaration": 5121, "src": "4320:12:21" }, - "referencedDeclaration": 4600, + "referencedDeclaration": 5121, "src": "4320:12:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$4600_storage_ptr", + "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage_ptr", "typeString": "struct LiquidityBridgeContract.PegoutRecord" } } @@ -53003,7 +53003,7 @@ }, { "body": { - "id": 4821, + "id": 5342, "nodeType": "Block", "src": "4389:71:21", "statements": [ @@ -53014,7 +53014,7 @@ "arguments": [ { "expression": { - "id": 4814, + "id": 5335, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -53025,7 +53025,7 @@ "typeString": "msg" } }, - "id": 4815, + "id": 5336, "isConstant": false, "isLValue": false, "isPure": false, @@ -53047,18 +53047,18 @@ "typeString": "address" } ], - "id": 4813, + "id": 5334, "name": "isRegistered", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7033, + "referencedDeclaration": 7554, "src": "4407:12:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 4816, + "id": 5337, "isConstant": false, "isLValue": false, "isPure": false, @@ -53076,7 +53076,7 @@ }, { "hexValue": "4c4243303031", - "id": 4817, + "id": 5338, "isConstant": false, "isLValue": false, "isPure": true, @@ -53102,7 +53102,7 @@ "typeString": "literal_string \"LBC001\"" } ], - "id": 4812, + "id": 5333, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -53116,7 +53116,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 4818, + "id": 5339, "isConstant": false, "isLValue": false, "isPure": false, @@ -53132,23 +53132,23 @@ "typeString": "tuple()" } }, - "id": 4819, + "id": 5340, "nodeType": "ExpressionStatement", "src": "4399:43:21" }, { - "id": 4820, + "id": 5341, "nodeType": "PlaceholderStatement", "src": "4452:1:21" } ] }, - "id": 4822, + "id": 5343, "name": "onlyRegistered", "nameLocation": "4372:14:21", "nodeType": "ModifierDefinition", "parameters": { - "id": 4811, + "id": 5332, "nodeType": "ParameterList", "parameters": [], "src": "4386:2:21" @@ -53159,7 +53159,7 @@ }, { "body": { - "id": 4833, + "id": 5354, "nodeType": "Block", "src": "4501:80:21", "statements": [ @@ -53170,7 +53170,7 @@ "arguments": [ { "expression": { - "id": 4826, + "id": 5347, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -53181,7 +53181,7 @@ "typeString": "msg" } }, - "id": 4827, + "id": 5348, "isConstant": false, "isLValue": false, "isPure": false, @@ -53203,18 +53203,18 @@ "typeString": "address" } ], - "id": 4825, + "id": 5346, "name": "isRegisteredForPegout", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7053, + "referencedDeclaration": 7574, "src": "4519:21:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 4828, + "id": 5349, "isConstant": false, "isLValue": false, "isPure": false, @@ -53232,7 +53232,7 @@ }, { "hexValue": "4c4243303031", - "id": 4829, + "id": 5350, "isConstant": false, "isLValue": false, "isPure": true, @@ -53258,7 +53258,7 @@ "typeString": "literal_string \"LBC001\"" } ], - "id": 4824, + "id": 5345, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -53272,7 +53272,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 4830, + "id": 5351, "isConstant": false, "isLValue": false, "isPure": false, @@ -53288,23 +53288,23 @@ "typeString": "tuple()" } }, - "id": 4831, + "id": 5352, "nodeType": "ExpressionStatement", "src": "4511:52:21" }, { - "id": 4832, + "id": 5353, "nodeType": "PlaceholderStatement", "src": "4573:1:21" } ] }, - "id": 4834, + "id": 5355, "name": "onlyRegisteredForPegout", "nameLocation": "4475:23:21", "nodeType": "ModifierDefinition", "parameters": { - "id": 4823, + "id": 5344, "nodeType": "ParameterList", "parameters": [], "src": "4498:2:21" @@ -53315,7 +53315,7 @@ }, { "body": { - "id": 4846, + "id": 5367, "nodeType": "Block", "src": "4606:70:21", "statements": [ @@ -53327,14 +53327,14 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 4841, + "id": 5362, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 4837, + "id": 5358, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -53345,7 +53345,7 @@ "typeString": "tx" } }, - "id": 4838, + "id": 5359, "isConstant": false, "isLValue": false, "isPure": false, @@ -53363,7 +53363,7 @@ "operator": "==", "rightExpression": { "expression": { - "id": 4839, + "id": 5360, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -53374,7 +53374,7 @@ "typeString": "msg" } }, - "id": 4840, + "id": 5361, "isConstant": false, "isLValue": false, "isPure": false, @@ -53396,7 +53396,7 @@ }, { "hexValue": "4c4243303033", - "id": 4842, + "id": 5363, "isConstant": false, "isLValue": false, "isPure": true, @@ -53422,7 +53422,7 @@ "typeString": "literal_string \"LBC003\"" } ], - "id": 4836, + "id": 5357, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -53436,7 +53436,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 4843, + "id": 5364, "isConstant": false, "isLValue": false, "isPure": false, @@ -53452,23 +53452,23 @@ "typeString": "tuple()" } }, - "id": 4844, + "id": 5365, "nodeType": "ExpressionStatement", "src": "4616:42:21" }, { - "id": 4845, + "id": 5366, "nodeType": "PlaceholderStatement", "src": "4668:1:21" } ] }, - "id": 4847, + "id": 5368, "name": "onlyEoa", "nameLocation": "4596:7:21", "nodeType": "ModifierDefinition", "parameters": { - "id": 4835, + "id": 5356, "nodeType": "ParameterList", "parameters": [], "src": "4603:2:21" @@ -53479,7 +53479,7 @@ }, { "body": { - "id": 4927, + "id": 5448, "nodeType": "Block", "src": "5606:513:21", "statements": [ @@ -53491,17 +53491,17 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 4872, + "id": 5393, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 4870, + "id": 5391, "name": "_rewardPercentage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4856, + "referencedDeclaration": 5377, "src": "5624:17:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -53512,7 +53512,7 @@ "operator": "<=", "rightExpression": { "hexValue": "313030", - "id": 4871, + "id": 5392, "isConstant": false, "isLValue": false, "isPure": true, @@ -53534,7 +53534,7 @@ }, { "hexValue": "4c4243303034", - "id": 4873, + "id": 5394, "isConstant": false, "isLValue": false, "isPure": true, @@ -53560,7 +53560,7 @@ "typeString": "literal_string \"LBC004\"" } ], - "id": 4869, + "id": 5390, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -53574,7 +53574,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 4874, + "id": 5395, "isConstant": false, "isLValue": false, "isPure": false, @@ -53590,7 +53590,7 @@ "typeString": "tuple()" } }, - "id": 4875, + "id": 5396, "nodeType": "ExpressionStatement", "src": "5616:43:21" }, @@ -53602,17 +53602,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 4879, + "id": 5400, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 4877, + "id": 5398, "name": "_minimumCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4852, + "referencedDeclaration": 5373, "src": "5677:18:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -53623,7 +53623,7 @@ "operator": ">=", "rightExpression": { "hexValue": "302e3033", - "id": 4878, + "id": 5399, "isConstant": false, "isLValue": false, "isPure": true, @@ -53646,7 +53646,7 @@ }, { "hexValue": "4c4243303732", - "id": 4880, + "id": 5401, "isConstant": false, "isLValue": false, "isPure": true, @@ -53672,7 +53672,7 @@ "typeString": "literal_string \"LBC072\"" } ], - "id": 4876, + "id": 5397, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -53686,7 +53686,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 4881, + "id": 5402, "isConstant": false, "isLValue": false, "isPure": false, @@ -53702,7 +53702,7 @@ "typeString": "tuple()" } }, - "id": 4882, + "id": 5403, "nodeType": "ExpressionStatement", "src": "5669:51:21" }, @@ -53714,17 +53714,17 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 4886, + "id": 5407, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 4884, + "id": 5405, "name": "_resignDelayBlocks", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4858, + "referencedDeclaration": 5379, "src": "5738:18:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -53735,7 +53735,7 @@ "operator": ">=", "rightExpression": { "hexValue": "3630", - "id": 4885, + "id": 5406, "isConstant": false, "isLValue": false, "isPure": true, @@ -53757,7 +53757,7 @@ }, { "hexValue": "4c4243303733", - "id": 4887, + "id": 5408, "isConstant": false, "isLValue": false, "isPure": true, @@ -53783,7 +53783,7 @@ "typeString": "literal_string \"LBC073\"" } ], - "id": 4883, + "id": 5404, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -53797,7 +53797,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 4888, + "id": 5409, "isConstant": false, "isLValue": false, "isPure": false, @@ -53813,7 +53813,7 @@ "typeString": "tuple()" } }, - "id": 4889, + "id": 5410, "nodeType": "ExpressionStatement", "src": "5730:43:21" }, @@ -53822,7 +53822,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 4890, + "id": 5411, "name": "__Ownable_init_unchained", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -53833,7 +53833,7 @@ "typeString": "function ()" } }, - "id": 4891, + "id": 5412, "isConstant": false, "isLValue": false, "isPure": false, @@ -53849,26 +53849,26 @@ "typeString": "tuple()" } }, - "id": 4892, + "id": 5413, "nodeType": "ExpressionStatement", "src": "5783:26:21" }, { "expression": { - "id": 4897, + "id": 5418, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 4893, + "id": 5414, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4754, + "referencedDeclaration": 5275, "src": "5819:6:21", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, @@ -53877,11 +53877,11 @@ "rightHandSide": { "arguments": [ { - "id": 4895, + "id": 5416, "name": "_bridgeAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4850, + "referencedDeclaration": 5371, "src": "5835:14:21", "typeDescriptions": { "typeIdentifier": "t_address_payable", @@ -53896,18 +53896,18 @@ "typeString": "address payable" } ], - "id": 4894, + "id": 5415, "name": "Bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3652, + "referencedDeclaration": 4173, "src": "5828:6:21", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Bridge_$3652_$", + "typeIdentifier": "t_type$_t_contract$_Bridge_$4173_$", "typeString": "type(contract Bridge)" } }, - "id": 4896, + "id": 5417, "isConstant": false, "isLValue": false, "isPure": false, @@ -53919,33 +53919,33 @@ "src": "5828:22:21", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, "src": "5819:31:21", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, - "id": 4898, + "id": 5419, "nodeType": "ExpressionStatement", "src": "5819:31:21" }, { "expression": { - "id": 4901, + "id": 5422, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 4899, + "id": 5420, "name": "minCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4782, + "referencedDeclaration": 5303, "src": "5860:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -53955,11 +53955,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 4900, + "id": 5421, "name": "_minimumCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4852, + "referencedDeclaration": 5373, "src": "5876:18:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -53972,23 +53972,23 @@ "typeString": "uint256" } }, - "id": 4902, + "id": 5423, "nodeType": "ExpressionStatement", "src": "5860:34:21" }, { "expression": { - "id": 4905, + "id": 5426, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 4903, + "id": 5424, "name": "minPegIn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4784, + "referencedDeclaration": 5305, "src": "5904:8:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -53998,11 +53998,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 4904, + "id": 5425, "name": "_minimumPegIn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4854, + "referencedDeclaration": 5375, "src": "5915:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -54015,23 +54015,23 @@ "typeString": "uint256" } }, - "id": 4906, + "id": 5427, "nodeType": "ExpressionStatement", "src": "5904:24:21" }, { "expression": { - "id": 4909, + "id": 5430, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 4907, + "id": 5428, "name": "rewardP", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4786, + "referencedDeclaration": 5307, "src": "5938:7:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -54041,11 +54041,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 4908, + "id": 5429, "name": "_rewardPercentage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4856, + "referencedDeclaration": 5377, "src": "5948:17:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -54058,23 +54058,23 @@ "typeString": "uint32" } }, - "id": 4910, + "id": 5431, "nodeType": "ExpressionStatement", "src": "5938:27:21" }, { "expression": { - "id": 4913, + "id": 5434, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 4911, + "id": 5432, "name": "resignDelayInBlocks", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4788, + "referencedDeclaration": 5309, "src": "5975:19:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -54084,11 +54084,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 4912, + "id": 5433, "name": "_resignDelayBlocks", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4858, + "referencedDeclaration": 5379, "src": "5997:18:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -54101,23 +54101,23 @@ "typeString": "uint32" } }, - "id": 4914, + "id": 5435, "nodeType": "ExpressionStatement", "src": "5975:40:21" }, { "expression": { - "id": 4917, + "id": 5438, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 4915, + "id": 5436, "name": "dust", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4790, + "referencedDeclaration": 5311, "src": "6025:4:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -54127,11 +54127,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 4916, + "id": 5437, "name": "_dustThreshold", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4860, + "referencedDeclaration": 5381, "src": "6032:14:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -54144,23 +54144,23 @@ "typeString": "uint256" } }, - "id": 4918, + "id": 5439, "nodeType": "ExpressionStatement", "src": "6025:21:21" }, { "expression": { - "id": 4921, + "id": 5442, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 4919, + "id": 5440, "name": "btcBlockTime", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4794, + "referencedDeclaration": 5315, "src": "6056:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -54170,11 +54170,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 4920, + "id": 5441, "name": "_btcBlockTime", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4862, + "referencedDeclaration": 5383, "src": "6071:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -54187,23 +54187,23 @@ "typeString": "uint256" } }, - "id": 4922, + "id": 5443, "nodeType": "ExpressionStatement", "src": "6056:28:21" }, { "expression": { - "id": 4925, + "id": 5446, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 4923, + "id": 5444, "name": "mainnet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, + "referencedDeclaration": 5317, "src": "6094:7:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -54213,11 +54213,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 4924, + "id": 5445, "name": "_mainnet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4864, + "referencedDeclaration": 5385, "src": "6104:8:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -54230,28 +54230,28 @@ "typeString": "bool" } }, - "id": 4926, + "id": 5447, "nodeType": "ExpressionStatement", "src": "6094:18:21" } ] }, "documentation": { - "id": 4848, + "id": 5369, "nodeType": "StructuredDocumentation", "src": "4682:618:21", "text": "@param _bridgeAddress The address of the bridge contract\n@param _minimumCollateral The minimum required collateral for liquidity providers\n@param _minimumPegIn The minimum peg-in amount\n@param _rewardPercentage The percentage of the penalty fee that an honest party\n// receives when calling registerPegIn in case of a liquidity provider misbehaving\n@param _resignDelayBlocks The number of block confirmations that a liquidity\n// provider needs to wait before it can withdraw its collateral\n@param _dustThreshold Amount that is considered dust" }, "functionSelector": "4533ac1c", - "id": 4928, + "id": 5449, "implemented": true, "kind": "function", "modifiers": [ { - "id": 4867, + "id": 5388, "kind": "modifierInvocation", "modifierName": { - "id": 4866, + "id": 5387, "name": "initializer", "nameLocations": [ "5594:11:21" @@ -54268,17 +54268,17 @@ "nameLocation": "5314:10:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 4865, + "id": 5386, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4850, + "id": 5371, "mutability": "mutable", "name": "_bridgeAddress", "nameLocation": "5350:14:21", "nodeType": "VariableDeclaration", - "scope": 4928, + "scope": 5449, "src": "5334:30:21", "stateVariable": false, "storageLocation": "default", @@ -54287,7 +54287,7 @@ "typeString": "address payable" }, "typeName": { - "id": 4849, + "id": 5370, "name": "address", "nodeType": "ElementaryTypeName", "src": "5334:15:21", @@ -54301,12 +54301,12 @@ }, { "constant": false, - "id": 4852, + "id": 5373, "mutability": "mutable", "name": "_minimumCollateral", "nameLocation": "5382:18:21", "nodeType": "VariableDeclaration", - "scope": 4928, + "scope": 5449, "src": "5374:26:21", "stateVariable": false, "storageLocation": "default", @@ -54315,7 +54315,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4851, + "id": 5372, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5374:7:21", @@ -54328,12 +54328,12 @@ }, { "constant": false, - "id": 4854, + "id": 5375, "mutability": "mutable", "name": "_minimumPegIn", "nameLocation": "5418:13:21", "nodeType": "VariableDeclaration", - "scope": 4928, + "scope": 5449, "src": "5410:21:21", "stateVariable": false, "storageLocation": "default", @@ -54342,7 +54342,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4853, + "id": 5374, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5410:7:21", @@ -54355,12 +54355,12 @@ }, { "constant": false, - "id": 4856, + "id": 5377, "mutability": "mutable", "name": "_rewardPercentage", "nameLocation": "5448:17:21", "nodeType": "VariableDeclaration", - "scope": 4928, + "scope": 5449, "src": "5441:24:21", "stateVariable": false, "storageLocation": "default", @@ -54369,7 +54369,7 @@ "typeString": "uint32" }, "typeName": { - "id": 4855, + "id": 5376, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "5441:6:21", @@ -54382,12 +54382,12 @@ }, { "constant": false, - "id": 4858, + "id": 5379, "mutability": "mutable", "name": "_resignDelayBlocks", "nameLocation": "5482:18:21", "nodeType": "VariableDeclaration", - "scope": 4928, + "scope": 5449, "src": "5475:25:21", "stateVariable": false, "storageLocation": "default", @@ -54396,7 +54396,7 @@ "typeString": "uint32" }, "typeName": { - "id": 4857, + "id": 5378, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "5475:6:21", @@ -54409,12 +54409,12 @@ }, { "constant": false, - "id": 4860, + "id": 5381, "mutability": "mutable", "name": "_dustThreshold", "nameLocation": "5515:14:21", "nodeType": "VariableDeclaration", - "scope": 4928, + "scope": 5449, "src": "5510:19:21", "stateVariable": false, "storageLocation": "default", @@ -54423,7 +54423,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4859, + "id": 5380, "name": "uint", "nodeType": "ElementaryTypeName", "src": "5510:4:21", @@ -54436,12 +54436,12 @@ }, { "constant": false, - "id": 4862, + "id": 5383, "mutability": "mutable", "name": "_btcBlockTime", "nameLocation": "5544:13:21", "nodeType": "VariableDeclaration", - "scope": 4928, + "scope": 5449, "src": "5539:18:21", "stateVariable": false, "storageLocation": "default", @@ -54450,7 +54450,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4861, + "id": 5382, "name": "uint", "nodeType": "ElementaryTypeName", "src": "5539:4:21", @@ -54463,12 +54463,12 @@ }, { "constant": false, - "id": 4864, + "id": 5385, "mutability": "mutable", "name": "_mainnet", "nameLocation": "5572:8:21", "nodeType": "VariableDeclaration", - "scope": 4928, + "scope": 5449, "src": "5567:13:21", "stateVariable": false, "storageLocation": "default", @@ -54477,7 +54477,7 @@ "typeString": "bool" }, "typeName": { - "id": 4863, + "id": 5384, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5567:4:21", @@ -54492,12 +54492,12 @@ "src": "5324:262:21" }, "returnParameters": { - "id": 4868, + "id": 5389, "nodeType": "ParameterList", "parameters": [], "src": "5606:0:21" }, - "scope": 7377, + "scope": 7898, "src": "5305:814:21", "stateMutability": "nonpayable", "virtual": false, @@ -54505,7 +54505,7 @@ }, { "body": { - "id": 4950, + "id": 5471, "nodeType": "Block", "src": "6173:172:21", "statements": [ @@ -54517,7 +54517,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 4945, + "id": 5466, "isConstant": false, "isLValue": false, "isPure": false, @@ -54527,14 +54527,14 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 4937, + "id": 5458, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 4933, + "id": 5454, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -54545,7 +54545,7 @@ "typeString": "msg" } }, - "id": 4934, + "id": 5455, "isConstant": false, "isLValue": false, "isPure": false, @@ -54565,7 +54565,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 4935, + "id": 5456, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -54576,7 +54576,7 @@ "typeString": "function () view returns (address)" } }, - "id": 4936, + "id": 5457, "isConstant": false, "isLValue": false, "isPure": false, @@ -54605,14 +54605,14 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 4944, + "id": 5465, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 4938, + "id": 5459, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -54623,7 +54623,7 @@ "typeString": "msg" } }, - "id": 4939, + "id": 5460, "isConstant": false, "isLValue": false, "isPure": false, @@ -54642,24 +54642,24 @@ "rightExpression": { "expression": { "baseExpression": { - "id": 4940, + "id": 5461, "name": "liquidityProviders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4771, + "referencedDeclaration": 5292, "src": "6255:18:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$4613_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider storage ref)" } }, - "id": 4942, + "id": 5463, "indexExpression": { - "id": 4941, + "id": 5462, "name": "_providerId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4930, + "referencedDeclaration": 5451, "src": "6274:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -54673,11 +54673,11 @@ "nodeType": "IndexAccess", "src": "6255:31:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$4613_storage", + "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" } }, - "id": 4943, + "id": 5464, "isConstant": false, "isLValue": true, "isPure": false, @@ -54685,7 +54685,7 @@ "memberLocation": "6287:8:21", "memberName": "provider", "nodeType": "MemberAccess", - "referencedDeclaration": 4604, + "referencedDeclaration": 5125, "src": "6255:40:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -54706,7 +54706,7 @@ }, { "hexValue": "4c4243303035", - "id": 4946, + "id": 5467, "isConstant": false, "isLValue": false, "isPure": true, @@ -54732,7 +54732,7 @@ "typeString": "literal_string \"LBC005\"" } ], - "id": 4932, + "id": 5453, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -54746,7 +54746,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 4947, + "id": 5468, "isConstant": false, "isLValue": false, "isPure": false, @@ -54762,33 +54762,33 @@ "typeString": "tuple()" } }, - "id": 4948, + "id": 5469, "nodeType": "ExpressionStatement", "src": "6183:144:21" }, { - "id": 4949, + "id": 5470, "nodeType": "PlaceholderStatement", "src": "6337:1:21" } ] }, - "id": 4951, + "id": 5472, "name": "onlyOwnerAndProvider", "nameLocation": "6134:20:21", "nodeType": "ModifierDefinition", "parameters": { - "id": 4931, + "id": 5452, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4930, + "id": 5451, "mutability": "mutable", "name": "_providerId", "nameLocation": "6160:11:21", "nodeType": "VariableDeclaration", - "scope": 4951, + "scope": 5472, "src": "6155:16:21", "stateVariable": false, "storageLocation": "default", @@ -54797,7 +54797,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4929, + "id": 5450, "name": "uint", "nodeType": "ElementaryTypeName", "src": "6155:4:21", @@ -54817,13 +54817,13 @@ }, { "body": { - "id": 4968, + "id": 5489, "nodeType": "Block", "src": "6472:64:21", "statements": [ { "expression": { - "id": 4966, + "id": 5487, "isConstant": false, "isLValue": false, "isPure": false, @@ -54831,24 +54831,24 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 4961, + "id": 5482, "name": "liquidityProviders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4771, + "referencedDeclaration": 5292, "src": "6482:18:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$4613_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider storage ref)" } }, - "id": 4963, + "id": 5484, "indexExpression": { - "id": 4962, + "id": 5483, "name": "_providerId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4953, + "referencedDeclaration": 5474, "src": "6501:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -54862,11 +54862,11 @@ "nodeType": "IndexAccess", "src": "6482:31:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$4613_storage", + "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" } }, - "id": 4964, + "id": 5485, "isConstant": false, "isLValue": true, "isPure": false, @@ -54874,7 +54874,7 @@ "memberLocation": "6514:6:21", "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 4610, + "referencedDeclaration": 5131, "src": "6482:38:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -54884,11 +54884,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 4965, + "id": 5486, "name": "status", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4955, + "referencedDeclaration": 5476, "src": "6523:6:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -54901,25 +54901,25 @@ "typeString": "bool" } }, - "id": 4967, + "id": 5488, "nodeType": "ExpressionStatement", "src": "6482:47:21" } ] }, "functionSelector": "72cbf4e8", - "id": 4969, + "id": 5490, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 4958, + "id": 5479, "name": "_providerId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4953, + "referencedDeclaration": 5474, "src": "6459:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -54927,16 +54927,16 @@ } } ], - "id": 4959, + "id": 5480, "kind": "modifierInvocation", "modifierName": { - "id": 4957, + "id": 5478, "name": "onlyOwnerAndProvider", "nameLocations": [ "6438:20:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 4951, + "referencedDeclaration": 5472, "src": "6438:20:21" }, "nodeType": "ModifierInvocation", @@ -54947,17 +54947,17 @@ "nameLocation": "6360:17:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 4956, + "id": 5477, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4953, + "id": 5474, "mutability": "mutable", "name": "_providerId", "nameLocation": "6392:11:21", "nodeType": "VariableDeclaration", - "scope": 4969, + "scope": 5490, "src": "6387:16:21", "stateVariable": false, "storageLocation": "default", @@ -54966,7 +54966,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4952, + "id": 5473, "name": "uint", "nodeType": "ElementaryTypeName", "src": "6387:4:21", @@ -54979,12 +54979,12 @@ }, { "constant": false, - "id": 4955, + "id": 5476, "mutability": "mutable", "name": "status", "nameLocation": "6418:6:21", "nodeType": "VariableDeclaration", - "scope": 4969, + "scope": 5490, "src": "6413:11:21", "stateVariable": false, "storageLocation": "default", @@ -54993,7 +54993,7 @@ "typeString": "bool" }, "typeName": { - "id": 4954, + "id": 5475, "name": "bool", "nodeType": "ElementaryTypeName", "src": "6413:4:21", @@ -55008,12 +55008,12 @@ "src": "6377:53:21" }, "returnParameters": { - "id": 4960, + "id": 5481, "nodeType": "ParameterList", "parameters": [], "src": "6472:0:21" }, - "scope": 7377, + "scope": 7898, "src": "6351:185:21", "stateMutability": "nonpayable", "virtual": false, @@ -55021,7 +55021,7 @@ }, { "body": { - "id": 4983, + "id": 5504, "nodeType": "Block", "src": "6569:65:21", "statements": [ @@ -55033,14 +55033,14 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 4979, + "id": 5500, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 4973, + "id": 5494, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -55051,7 +55051,7 @@ "typeString": "msg" } }, - "id": 4974, + "id": 5495, "isConstant": false, "isLValue": false, "isPure": false, @@ -55070,14 +55070,14 @@ "rightExpression": { "arguments": [ { - "id": 4977, + "id": 5498, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4754, + "referencedDeclaration": 5275, "src": "6609:6:21", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } } @@ -55085,11 +55085,11 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } ], - "id": 4976, + "id": 5497, "isConstant": false, "isLValue": false, "isPure": true, @@ -55101,14 +55101,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 4975, + "id": 5496, "name": "address", "nodeType": "ElementaryTypeName", "src": "6601:7:21", "typeDescriptions": {} } }, - "id": 4978, + "id": 5499, "isConstant": false, "isLValue": false, "isPure": false, @@ -55132,7 +55132,7 @@ }, { "hexValue": "4c4243303037", - "id": 4980, + "id": 5501, "isConstant": false, "isLValue": false, "isPure": true, @@ -55158,7 +55158,7 @@ "typeString": "literal_string \"LBC007\"" } ], - "id": 4972, + "id": 5493, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -55172,7 +55172,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 4981, + "id": 5502, "isConstant": false, "isLValue": false, "isPure": false, @@ -55188,13 +55188,13 @@ "typeString": "tuple()" } }, - "id": 4982, + "id": 5503, "nodeType": "ExpressionStatement", "src": "6579:48:21" } ] }, - "id": 4984, + "id": 5505, "implemented": true, "kind": "receive", "modifiers": [], @@ -55202,18 +55202,18 @@ "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 4970, + "id": 5491, "nodeType": "ParameterList", "parameters": [], "src": "6549:2:21" }, "returnParameters": { - "id": 4971, + "id": 5492, "nodeType": "ParameterList", "parameters": [], "src": "6569:0:21" }, - "scope": 7377, + "scope": 7898, "src": "6542:92:21", "stateMutability": "payable", "virtual": false, @@ -55221,32 +55221,32 @@ }, { "body": { - "id": 4991, + "id": 5512, "nodeType": "Block", "src": "6695:34:21", "statements": [ { "expression": { - "id": 4989, + "id": 5510, "name": "providerId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4792, + "referencedDeclaration": 5313, "src": "6712:10:21", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 4988, - "id": 4990, + "functionReturnParameters": 5509, + "id": 5511, "nodeType": "Return", "src": "6705:17:21" } ] }, "functionSelector": "0a9cb4a7", - "id": 4992, + "id": 5513, "implemented": true, "kind": "function", "modifiers": [], @@ -55254,23 +55254,23 @@ "nameLocation": "6649:14:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 4985, + "id": 5506, "nodeType": "ParameterList", "parameters": [], "src": "6663:2:21" }, "returnParameters": { - "id": 4988, + "id": 5509, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4987, + "id": 5508, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 4992, + "scope": 5513, "src": "6689:4:21", "stateVariable": false, "storageLocation": "default", @@ -55279,7 +55279,7 @@ "typeString": "uint256" }, "typeName": { - "id": 4986, + "id": 5507, "name": "uint", "nodeType": "ElementaryTypeName", "src": "6689:4:21", @@ -55293,7 +55293,7 @@ ], "src": "6688:6:21" }, - "scope": 7377, + "scope": 7898, "src": "6640:89:21", "stateMutability": "view", "virtual": false, @@ -55301,7 +55301,7 @@ }, { "body": { - "id": 5002, + "id": 5523, "nodeType": "Block", "src": "6795:39:21", "statements": [ @@ -55309,14 +55309,14 @@ "expression": { "arguments": [ { - "id": 4999, + "id": 5520, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4754, + "referencedDeclaration": 5275, "src": "6820:6:21", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } } @@ -55324,11 +55324,11 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } ], - "id": 4998, + "id": 5519, "isConstant": false, "isLValue": false, "isPure": true, @@ -55340,14 +55340,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 4997, + "id": 5518, "name": "address", "nodeType": "ElementaryTypeName", "src": "6812:7:21", "typeDescriptions": {} } }, - "id": 5000, + "id": 5521, "isConstant": false, "isLValue": false, "isPure": false, @@ -55363,15 +55363,15 @@ "typeString": "address" } }, - "functionReturnParameters": 4996, - "id": 5001, + "functionReturnParameters": 5517, + "id": 5522, "nodeType": "Return", "src": "6805:22:21" } ] }, "functionSelector": "fb32c508", - "id": 5003, + "id": 5524, "implemented": true, "kind": "function", "modifiers": [], @@ -55379,23 +55379,23 @@ "nameLocation": "6744:16:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 4993, + "id": 5514, "nodeType": "ParameterList", "parameters": [], "src": "6760:2:21" }, "returnParameters": { - "id": 4996, + "id": 5517, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 4995, + "id": 5516, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5003, + "scope": 5524, "src": "6786:7:21", "stateVariable": false, "storageLocation": "default", @@ -55404,7 +55404,7 @@ "typeString": "address" }, "typeName": { - "id": 4994, + "id": 5515, "name": "address", "nodeType": "ElementaryTypeName", "src": "6786:7:21", @@ -55419,7 +55419,7 @@ ], "src": "6785:9:21" }, - "scope": 7377, + "scope": 7898, "src": "6735:99:21", "stateMutability": "view", "virtual": false, @@ -55427,32 +55427,32 @@ }, { "body": { - "id": 5010, + "id": 5531, "nodeType": "Block", "src": "6895:37:21", "statements": [ { "expression": { - "id": 5008, + "id": 5529, "name": "minCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4782, + "referencedDeclaration": 5303, "src": "6912:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 5007, - "id": 5009, + "functionReturnParameters": 5528, + "id": 5530, "nodeType": "Return", "src": "6905:20:21" } ] }, "functionSelector": "e830b690", - "id": 5011, + "id": 5532, "implemented": true, "kind": "function", "modifiers": [], @@ -55460,23 +55460,23 @@ "nameLocation": "6849:16:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5004, + "id": 5525, "nodeType": "ParameterList", "parameters": [], "src": "6865:2:21" }, "returnParameters": { - "id": 5007, + "id": 5528, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5006, + "id": 5527, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5011, + "scope": 5532, "src": "6889:4:21", "stateVariable": false, "storageLocation": "default", @@ -55485,7 +55485,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5005, + "id": 5526, "name": "uint", "nodeType": "ElementaryTypeName", "src": "6889:4:21", @@ -55499,7 +55499,7 @@ ], "src": "6888:6:21" }, - "scope": 7377, + "scope": 7898, "src": "6840:92:21", "stateMutability": "view", "virtual": false, @@ -55507,32 +55507,32 @@ }, { "body": { - "id": 5018, + "id": 5539, "nodeType": "Block", "src": "6990:32:21", "statements": [ { "expression": { - "id": 5016, + "id": 5537, "name": "minPegIn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4784, + "referencedDeclaration": 5305, "src": "7007:8:21", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 5015, - "id": 5017, + "functionReturnParameters": 5536, + "id": 5538, "nodeType": "Return", "src": "7000:15:21" } ] }, "functionSelector": "fa88dcde", - "id": 5019, + "id": 5540, "implemented": true, "kind": "function", "modifiers": [], @@ -55540,23 +55540,23 @@ "nameLocation": "6947:11:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5012, + "id": 5533, "nodeType": "ParameterList", "parameters": [], "src": "6958:2:21" }, "returnParameters": { - "id": 5015, + "id": 5536, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5014, + "id": 5535, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5019, + "scope": 5540, "src": "6984:4:21", "stateVariable": false, "storageLocation": "default", @@ -55565,7 +55565,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5013, + "id": 5534, "name": "uint", "nodeType": "ElementaryTypeName", "src": "6984:4:21", @@ -55579,7 +55579,7 @@ ], "src": "6983:6:21" }, - "scope": 7377, + "scope": 7898, "src": "6938:84:21", "stateMutability": "view", "virtual": false, @@ -55587,32 +55587,32 @@ }, { "body": { - "id": 5026, + "id": 5547, "nodeType": "Block", "src": "7088:31:21", "statements": [ { "expression": { - "id": 5024, + "id": 5545, "name": "rewardP", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4786, + "referencedDeclaration": 5307, "src": "7105:7:21", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "functionReturnParameters": 5023, - "id": 5025, + "functionReturnParameters": 5544, + "id": 5546, "nodeType": "Return", "src": "7098:14:21" } ] }, "functionSelector": "c7213163", - "id": 5027, + "id": 5548, "implemented": true, "kind": "function", "modifiers": [], @@ -55620,23 +55620,23 @@ "nameLocation": "7037:19:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5020, + "id": 5541, "nodeType": "ParameterList", "parameters": [], "src": "7056:2:21" }, "returnParameters": { - "id": 5023, + "id": 5544, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5022, + "id": 5543, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5027, + "scope": 5548, "src": "7082:4:21", "stateVariable": false, "storageLocation": "default", @@ -55645,7 +55645,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5021, + "id": 5542, "name": "uint", "nodeType": "ElementaryTypeName", "src": "7082:4:21", @@ -55659,7 +55659,7 @@ ], "src": "7081:6:21" }, - "scope": 7377, + "scope": 7898, "src": "7028:91:21", "stateMutability": "view", "virtual": false, @@ -55667,32 +55667,32 @@ }, { "body": { - "id": 5034, + "id": 5555, "nodeType": "Block", "src": "7186:43:21", "statements": [ { "expression": { - "id": 5032, + "id": 5553, "name": "resignDelayInBlocks", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4788, + "referencedDeclaration": 5309, "src": "7203:19:21", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "functionReturnParameters": 5031, - "id": 5033, + "functionReturnParameters": 5552, + "id": 5554, "nodeType": "Return", "src": "7196:26:21" } ] }, "functionSelector": "bd5798c3", - "id": 5035, + "id": 5556, "implemented": true, "kind": "function", "modifiers": [], @@ -55700,23 +55700,23 @@ "nameLocation": "7134:20:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5028, + "id": 5549, "nodeType": "ParameterList", "parameters": [], "src": "7154:2:21" }, "returnParameters": { - "id": 5031, + "id": 5552, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5030, + "id": 5551, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5035, + "scope": 5556, "src": "7180:4:21", "stateVariable": false, "storageLocation": "default", @@ -55725,7 +55725,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5029, + "id": 5550, "name": "uint", "nodeType": "ElementaryTypeName", "src": "7180:4:21", @@ -55739,7 +55739,7 @@ ], "src": "7179:6:21" }, - "scope": 7377, + "scope": 7898, "src": "7125:104:21", "stateMutability": "view", "virtual": false, @@ -55747,32 +55747,32 @@ }, { "body": { - "id": 5042, + "id": 5563, "nodeType": "Block", "src": "7292:28:21", "statements": [ { "expression": { - "id": 5040, + "id": 5561, "name": "dust", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4790, + "referencedDeclaration": 5311, "src": "7309:4:21", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 5039, - "id": 5041, + "functionReturnParameters": 5560, + "id": 5562, "nodeType": "Return", "src": "7302:11:21" } ] }, "functionSelector": "33f07ad3", - "id": 5043, + "id": 5564, "implemented": true, "kind": "function", "modifiers": [], @@ -55780,23 +55780,23 @@ "nameLocation": "7244:16:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5036, + "id": 5557, "nodeType": "ParameterList", "parameters": [], "src": "7260:2:21" }, "returnParameters": { - "id": 5039, + "id": 5560, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5038, + "id": 5559, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5043, + "scope": 5564, "src": "7286:4:21", "stateVariable": false, "storageLocation": "default", @@ -55805,7 +55805,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5037, + "id": 5558, "name": "uint", "nodeType": "ElementaryTypeName", "src": "7286:4:21", @@ -55819,7 +55819,7 @@ ], "src": "7285:6:21" }, - "scope": 7377, + "scope": 7898, "src": "7235:85:21", "stateMutability": "view", "virtual": false, @@ -55827,31 +55827,31 @@ }, { "body": { - "id": 5055, + "id": 5576, "nodeType": "Block", "src": "7443:57:21", "statements": [ { "expression": { "baseExpression": { - "id": 5051, + "id": 5572, "name": "registeredPegoutQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4805, + "referencedDeclaration": 5326, "src": "7460:22:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10363_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10959_storage_$", "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote storage ref)" } }, - "id": 5053, + "id": 5574, "indexExpression": { - "id": 5052, + "id": 5573, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5045, + "referencedDeclaration": 5566, "src": "7483:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -55865,19 +55865,19 @@ "nodeType": "IndexAccess", "src": "7460:33:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage", "typeString": "struct Quotes.PegOutQuote storage ref" } }, - "functionReturnParameters": 5050, - "id": 5054, + "functionReturnParameters": 5571, + "id": 5575, "nodeType": "Return", "src": "7453:40:21" } ] }, "functionSelector": "e90d2ddb", - "id": 5056, + "id": 5577, "implemented": true, "kind": "function", "modifiers": [], @@ -55885,17 +55885,17 @@ "nameLocation": "7335:24:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5046, + "id": 5567, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5045, + "id": 5566, "mutability": "mutable", "name": "quoteHash", "nameLocation": "7377:9:21", "nodeType": "VariableDeclaration", - "scope": 5056, + "scope": 5577, "src": "7369:17:21", "stateVariable": false, "storageLocation": "default", @@ -55904,7 +55904,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 5044, + "id": 5565, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "7369:7:21", @@ -55919,42 +55919,42 @@ "src": "7359:33:21" }, "returnParameters": { - "id": 5050, + "id": 5571, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5049, + "id": 5570, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5056, + "scope": 5577, "src": "7416:25:21", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote" }, "typeName": { - "id": 5048, + "id": 5569, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 5047, + "id": 5568, "name": "Quotes.PegOutQuote", "nameLocations": [ "7416:6:21", "7423:11:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "7416:18:21" }, - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "7416:18:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote" } }, @@ -55963,7 +55963,7 @@ ], "src": "7415:27:21" }, - "scope": 7377, + "scope": 7898, "src": "7326:174:21", "stateMutability": "view", "virtual": false, @@ -55971,7 +55971,7 @@ }, { "body": { - "id": 5068, + "id": 5589, "nodeType": "Block", "src": "7586:59:21", "statements": [ @@ -55979,24 +55979,24 @@ "expression": { "expression": { "baseExpression": { - "id": 5063, + "id": 5584, "name": "pegoutRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4810, + "referencedDeclaration": 5331, "src": "7603:14:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$4600_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord storage ref)" } }, - "id": 5065, + "id": 5586, "indexExpression": { - "id": 5064, + "id": 5585, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5058, + "referencedDeclaration": 5579, "src": "7618:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -56010,11 +56010,11 @@ "nodeType": "IndexAccess", "src": "7603:25:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$4600_storage", + "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage", "typeString": "struct LiquidityBridgeContract.PegoutRecord storage ref" } }, - "id": 5066, + "id": 5587, "isConstant": false, "isLValue": true, "isPure": false, @@ -56022,22 +56022,22 @@ "memberLocation": "7629:9:21", "memberName": "completed", "nodeType": "MemberAccess", - "referencedDeclaration": 4599, + "referencedDeclaration": 5120, "src": "7603:35:21", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 5062, - "id": 5067, + "functionReturnParameters": 5583, + "id": 5588, "nodeType": "Return", "src": "7596:42:21" } ] }, "functionSelector": "54015ee0", - "id": 5069, + "id": 5590, "implemented": true, "kind": "function", "modifiers": [], @@ -56045,17 +56045,17 @@ "nameLocation": "7515:22:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5059, + "id": 5580, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5058, + "id": 5579, "mutability": "mutable", "name": "quoteHash", "nameLocation": "7546:9:21", "nodeType": "VariableDeclaration", - "scope": 5069, + "scope": 5590, "src": "7538:17:21", "stateVariable": false, "storageLocation": "default", @@ -56064,7 +56064,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 5057, + "id": 5578, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "7538:7:21", @@ -56079,17 +56079,17 @@ "src": "7537:19:21" }, "returnParameters": { - "id": 5062, + "id": 5583, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5061, + "id": 5582, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5069, + "scope": 5590, "src": "7580:4:21", "stateVariable": false, "storageLocation": "default", @@ -56098,7 +56098,7 @@ "typeString": "bool" }, "typeName": { - "id": 5060, + "id": 5581, "name": "bool", "nodeType": "ElementaryTypeName", "src": "7580:4:21", @@ -56112,7 +56112,7 @@ ], "src": "7579:6:21" }, - "scope": 7377, + "scope": 7898, "src": "7506:139:21", "stateMutability": "view", "virtual": false, @@ -56120,7 +56120,7 @@ }, { "body": { - "id": 5087, + "id": 5608, "nodeType": "Block", "src": "7904:79:21", "statements": [ @@ -56130,7 +56130,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 5085, + "id": 5606, "isConstant": false, "isLValue": false, "isPure": false, @@ -56138,11 +56138,11 @@ "leftExpression": { "arguments": [ { - "id": 5078, + "id": 5599, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5072, + "referencedDeclaration": 5593, "src": "7934:4:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -56157,18 +56157,18 @@ "typeString": "address" } ], - "id": 5077, + "id": 5598, "name": "isRegistered", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7033, + "referencedDeclaration": 7554, "src": "7921:12:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 5079, + "id": 5600, "isConstant": false, "isLValue": false, "isPure": false, @@ -56191,31 +56191,31 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5084, + "id": 5605, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 5080, + "id": 5601, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4762, + "referencedDeclaration": 5283, "src": "7943:10:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5082, + "id": 5603, "indexExpression": { - "id": 5081, + "id": 5602, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5072, + "referencedDeclaration": 5593, "src": "7954:4:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -56236,11 +56236,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 5083, + "id": 5604, "name": "minCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4782, + "referencedDeclaration": 5303, "src": "7963:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -56259,21 +56259,21 @@ "typeString": "bool" } }, - "functionReturnParameters": 5076, - "id": 5086, + "functionReturnParameters": 5597, + "id": 5607, "nodeType": "Return", "src": "7914:62:21" } ] }, "documentation": { - "id": 5070, + "id": 5591, "nodeType": "StructuredDocumentation", "src": "7651:182:21", "text": "@dev Checks whether a liquidity provider can deliver a pegin service\n@return Whether the liquidity provider is registered and has enough locked collateral" }, "functionSelector": "457385f2", - "id": 5088, + "id": 5609, "implemented": true, "kind": "function", "modifiers": [], @@ -56281,17 +56281,17 @@ "nameLocation": "7847:13:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5073, + "id": 5594, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5072, + "id": 5593, "mutability": "mutable", "name": "addr", "nameLocation": "7869:4:21", "nodeType": "VariableDeclaration", - "scope": 5088, + "scope": 5609, "src": "7861:12:21", "stateVariable": false, "storageLocation": "default", @@ -56300,7 +56300,7 @@ "typeString": "address" }, "typeName": { - "id": 5071, + "id": 5592, "name": "address", "nodeType": "ElementaryTypeName", "src": "7861:7:21", @@ -56316,17 +56316,17 @@ "src": "7860:14:21" }, "returnParameters": { - "id": 5076, + "id": 5597, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5075, + "id": 5596, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5088, + "scope": 5609, "src": "7898:4:21", "stateVariable": false, "storageLocation": "default", @@ -56335,7 +56335,7 @@ "typeString": "bool" }, "typeName": { - "id": 5074, + "id": 5595, "name": "bool", "nodeType": "ElementaryTypeName", "src": "7898:4:21", @@ -56349,7 +56349,7 @@ ], "src": "7897:6:21" }, - "scope": 7377, + "scope": 7898, "src": "7838:145:21", "stateMutability": "view", "virtual": false, @@ -56357,7 +56357,7 @@ }, { "body": { - "id": 5106, + "id": 5627, "nodeType": "Block", "src": "8252:110:21", "statements": [ @@ -56367,7 +56367,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 5104, + "id": 5625, "isConstant": false, "isLValue": false, "isPure": false, @@ -56375,11 +56375,11 @@ "leftExpression": { "arguments": [ { - "id": 5097, + "id": 5618, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5091, + "referencedDeclaration": 5612, "src": "8299:4:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -56394,18 +56394,18 @@ "typeString": "address" } ], - "id": 5096, + "id": 5617, "name": "isRegisteredForPegout", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7053, + "referencedDeclaration": 7574, "src": "8277:21:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 5098, + "id": 5619, "isConstant": false, "isLValue": false, "isPure": false, @@ -56428,31 +56428,31 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5103, + "id": 5624, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 5099, + "id": 5620, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4766, + "referencedDeclaration": 5287, "src": "8316:16:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5101, + "id": 5622, "indexExpression": { - "id": 5100, + "id": 5621, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5091, + "referencedDeclaration": 5612, "src": "8333:4:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -56473,11 +56473,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 5102, + "id": 5623, "name": "minCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4782, + "referencedDeclaration": 5303, "src": "8342:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -56496,21 +56496,21 @@ "typeString": "bool" } }, - "functionReturnParameters": 5095, - "id": 5105, + "functionReturnParameters": 5616, + "id": 5626, "nodeType": "Return", "src": "8262:93:21" } ] }, "documentation": { - "id": 5089, + "id": 5610, "nodeType": "StructuredDocumentation", "src": "7989:183:21", "text": "@dev Checks whether a liquidity provider can deliver a pegout service\n@return Whether the liquidity provider is registered and has enough locked collateral" }, "functionSelector": "4d0ec971", - "id": 5107, + "id": 5628, "implemented": true, "kind": "function", "modifiers": [], @@ -56518,17 +56518,17 @@ "nameLocation": "8186:22:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5092, + "id": 5613, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5091, + "id": 5612, "mutability": "mutable", "name": "addr", "nameLocation": "8217:4:21", "nodeType": "VariableDeclaration", - "scope": 5107, + "scope": 5628, "src": "8209:12:21", "stateVariable": false, "storageLocation": "default", @@ -56537,7 +56537,7 @@ "typeString": "address" }, "typeName": { - "id": 5090, + "id": 5611, "name": "address", "nodeType": "ElementaryTypeName", "src": "8209:7:21", @@ -56553,17 +56553,17 @@ "src": "8208:14:21" }, "returnParameters": { - "id": 5095, + "id": 5616, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5094, + "id": 5615, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5107, + "scope": 5628, "src": "8246:4:21", "stateVariable": false, "storageLocation": "default", @@ -56572,7 +56572,7 @@ "typeString": "bool" }, "typeName": { - "id": 5093, + "id": 5614, "name": "bool", "nodeType": "ElementaryTypeName", "src": "8246:4:21", @@ -56586,7 +56586,7 @@ ], "src": "8245:6:21" }, - "scope": 7377, + "scope": 7898, "src": "8177:185:21", "stateMutability": "view", "virtual": false, @@ -56594,7 +56594,7 @@ }, { "body": { - "id": 5288, + "id": 5809, "nodeType": "Block", "src": "8658:1473:21", "statements": [ @@ -56602,11 +56602,11 @@ "expression": { "arguments": [ { - "id": 5124, + "id": 5645, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5110, + "referencedDeclaration": 5631, "src": "8778:5:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -56614,11 +56614,11 @@ } }, { - "id": 5125, + "id": 5646, "name": "_apiBaseUrl", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5112, + "referencedDeclaration": 5633, "src": "8797:11:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -56626,11 +56626,11 @@ } }, { - "id": 5126, + "id": 5647, "name": "_providerType", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5116, + "referencedDeclaration": 5637, "src": "8822:13:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -56653,18 +56653,18 @@ "typeString": "string memory" } ], - "id": 5123, + "id": 5644, "name": "validateRegisterParameters", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5367, + "referencedDeclaration": 5888, "src": "8738:26:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory,string memory) pure" } }, - "id": 5127, + "id": 5648, "isConstant": false, "isLValue": false, "isPure": false, @@ -56680,7 +56680,7 @@ "typeString": "tuple()" } }, - "id": 5128, + "id": 5649, "nodeType": "ExpressionStatement", "src": "8738:107:21" }, @@ -56692,7 +56692,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 5142, + "id": 5663, "isConstant": false, "isLValue": false, "isPure": false, @@ -56702,28 +56702,28 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5135, + "id": 5656, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 5130, + "id": 5651, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4762, + "referencedDeclaration": 5283, "src": "8864:10:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5133, + "id": 5654, "indexExpression": { "expression": { - "id": 5131, + "id": 5652, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -56734,7 +56734,7 @@ "typeString": "msg" } }, - "id": 5132, + "id": 5653, "isConstant": false, "isLValue": false, "isPure": false, @@ -56763,7 +56763,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 5134, + "id": 5655, "isConstant": false, "isLValue": false, "isPure": true, @@ -56790,28 +56790,28 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5141, + "id": 5662, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 5136, + "id": 5657, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4766, + "referencedDeclaration": 5287, "src": "8895:16:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5139, + "id": 5660, "indexExpression": { "expression": { - "id": 5137, + "id": 5658, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -56822,7 +56822,7 @@ "typeString": "msg" } }, - "id": 5138, + "id": 5659, "isConstant": false, "isLValue": false, "isPure": false, @@ -56851,7 +56851,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 5140, + "id": 5661, "isConstant": false, "isLValue": false, "isPure": true, @@ -56879,7 +56879,7 @@ }, { "hexValue": "4c4243303730", - "id": 5143, + "id": 5664, "isConstant": false, "isLValue": false, "isPure": true, @@ -56905,7 +56905,7 @@ "typeString": "literal_string \"LBC070\"" } ], - "id": 5129, + "id": 5650, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -56919,7 +56919,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5144, + "id": 5665, "isConstant": false, "isLValue": false, "isPure": false, @@ -56935,7 +56935,7 @@ "typeString": "tuple()" } }, - "id": 5145, + "id": 5666, "nodeType": "ExpressionStatement", "src": "8856:83:21" }, @@ -56947,28 +56947,28 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5152, + "id": 5673, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 5147, + "id": 5668, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4780, + "referencedDeclaration": 5301, "src": "8970:19:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5150, + "id": 5671, "indexExpression": { "expression": { - "id": 5148, + "id": 5669, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -56979,7 +56979,7 @@ "typeString": "msg" } }, - "id": 5149, + "id": 5670, "isConstant": false, "isLValue": false, "isPure": false, @@ -57008,7 +57008,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 5151, + "id": 5672, "isConstant": false, "isLValue": false, "isPure": true, @@ -57030,7 +57030,7 @@ }, { "hexValue": "4c4243303039", - "id": 5153, + "id": 5674, "isConstant": false, "isLValue": false, "isPure": true, @@ -57056,7 +57056,7 @@ "typeString": "literal_string \"LBC009\"" } ], - "id": 5146, + "id": 5667, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -57070,7 +57070,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5154, + "id": 5675, "isConstant": false, "isLValue": false, "isPure": false, @@ -57086,7 +57086,7 @@ "typeString": "tuple()" } }, - "id": 5155, + "id": 5676, "nodeType": "ExpressionStatement", "src": "8949:89:21" }, @@ -57096,7 +57096,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 5168, + "id": 5689, "isConstant": false, "isLValue": false, "isPure": false, @@ -57106,11 +57106,11 @@ { "arguments": [ { - "id": 5159, + "id": 5680, "name": "_providerType", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5116, + "referencedDeclaration": 5637, "src": "9080:13:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -57126,7 +57126,7 @@ } ], "expression": { - "id": 5157, + "id": 5678, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -57137,7 +57137,7 @@ "typeString": "abi" } }, - "id": 5158, + "id": 5679, "isConstant": false, "isLValue": false, "isPure": true, @@ -57151,7 +57151,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 5160, + "id": 5681, "isConstant": false, "isLValue": false, "isPure": false, @@ -57175,7 +57175,7 @@ "typeString": "bytes memory" } ], - "id": 5156, + "id": 5677, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -57186,7 +57186,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 5161, + "id": 5682, "isConstant": false, "isLValue": false, "isPure": false, @@ -57210,7 +57210,7 @@ "arguments": [ { "hexValue": "706567696e", - "id": 5165, + "id": 5686, "isConstant": false, "isLValue": false, "isPure": true, @@ -57233,7 +57233,7 @@ } ], "expression": { - "id": 5163, + "id": 5684, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -57244,7 +57244,7 @@ "typeString": "abi" } }, - "id": 5164, + "id": 5685, "isConstant": false, "isLValue": false, "isPure": true, @@ -57258,7 +57258,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 5166, + "id": 5687, "isConstant": false, "isLValue": false, "isPure": true, @@ -57282,7 +57282,7 @@ "typeString": "bytes memory" } ], - "id": 5162, + "id": 5683, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -57293,7 +57293,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 5167, + "id": 5688, "isConstant": false, "isLValue": false, "isPure": true, @@ -57321,7 +57321,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 5198, + "id": 5719, "isConstant": false, "isLValue": false, "isPure": false, @@ -57331,11 +57331,11 @@ { "arguments": [ { - "id": 5189, + "id": 5710, "name": "_providerType", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5116, + "referencedDeclaration": 5637, "src": "9292:13:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -57351,7 +57351,7 @@ } ], "expression": { - "id": 5187, + "id": 5708, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -57362,7 +57362,7 @@ "typeString": "abi" } }, - "id": 5188, + "id": 5709, "isConstant": false, "isLValue": false, "isPure": true, @@ -57376,7 +57376,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 5190, + "id": 5711, "isConstant": false, "isLValue": false, "isPure": false, @@ -57400,7 +57400,7 @@ "typeString": "bytes memory" } ], - "id": 5186, + "id": 5707, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -57411,7 +57411,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 5191, + "id": 5712, "isConstant": false, "isLValue": false, "isPure": false, @@ -57435,7 +57435,7 @@ "arguments": [ { "hexValue": "7065676f7574", - "id": 5195, + "id": 5716, "isConstant": false, "isLValue": false, "isPure": true, @@ -57458,7 +57458,7 @@ } ], "expression": { - "id": 5193, + "id": 5714, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -57469,7 +57469,7 @@ "typeString": "abi" } }, - "id": 5194, + "id": 5715, "isConstant": false, "isLValue": false, "isPure": true, @@ -57483,7 +57483,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 5196, + "id": 5717, "isConstant": false, "isLValue": false, "isPure": true, @@ -57507,7 +57507,7 @@ "typeString": "bytes memory" } ], - "id": 5192, + "id": 5713, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -57518,7 +57518,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 5197, + "id": 5718, "isConstant": false, "isLValue": false, "isPure": true, @@ -57541,7 +57541,7 @@ } }, "falseBody": { - "id": 5257, + "id": 5778, "nodeType": "Block", "src": "9480:269:21", "statements": [ @@ -57553,14 +57553,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5222, + "id": 5743, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 5217, + "id": 5738, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -57571,7 +57571,7 @@ "typeString": "msg" } }, - "id": 5218, + "id": 5739, "isConstant": false, "isLValue": false, "isPure": false, @@ -57592,17 +57592,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5221, + "id": 5742, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 5219, + "id": 5740, "name": "minCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4782, + "referencedDeclaration": 5303, "src": "9515:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -57613,7 +57613,7 @@ "operator": "*", "rightExpression": { "hexValue": "32", - "id": 5220, + "id": 5741, "isConstant": false, "isLValue": false, "isPure": true, @@ -57641,7 +57641,7 @@ }, { "hexValue": "4c4243303038", - "id": 5223, + "id": 5744, "isConstant": false, "isLValue": false, "isPure": true, @@ -57667,7 +57667,7 @@ "typeString": "literal_string \"LBC008\"" } ], - "id": 5216, + "id": 5737, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -57681,7 +57681,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5224, + "id": 5745, "isConstant": false, "isLValue": false, "isPure": false, @@ -57697,23 +57697,23 @@ "typeString": "tuple()" } }, - "id": 5225, + "id": 5746, "nodeType": "ExpressionStatement", "src": "9494:49:21" }, { "assignments": [ - 5227 + 5748 ], "declarations": [ { "constant": false, - "id": 5227, + "id": 5748, "mutability": "mutable", "name": "halfMsgValue", "nameLocation": "9562:12:21", "nodeType": "VariableDeclaration", - "scope": 5257, + "scope": 5778, "src": "9557:17:21", "stateVariable": false, "storageLocation": "default", @@ -57722,7 +57722,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5226, + "id": 5747, "name": "uint", "nodeType": "ElementaryTypeName", "src": "9557:4:21", @@ -57734,20 +57734,20 @@ "visibility": "internal" } ], - "id": 5232, + "id": 5753, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5231, + "id": 5752, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 5228, + "id": 5749, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -57758,7 +57758,7 @@ "typeString": "msg" } }, - "id": 5229, + "id": 5750, "isConstant": false, "isLValue": false, "isPure": false, @@ -57776,7 +57776,7 @@ "operator": "/", "rightExpression": { "hexValue": "32", - "id": 5230, + "id": 5751, "isConstant": false, "isLValue": false, "isPure": true, @@ -57801,28 +57801,28 @@ }, { "expression": { - "id": 5248, + "id": 5769, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 5233, + "id": 5754, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4762, + "referencedDeclaration": 5283, "src": "9604:10:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5236, + "id": 5757, "indexExpression": { "expression": { - "id": 5234, + "id": 5755, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -57833,7 +57833,7 @@ "typeString": "msg" } }, - "id": 5235, + "id": 5756, "isConstant": false, "isLValue": false, "isPure": false, @@ -57866,7 +57866,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5242, + "id": 5763, "isConstant": false, "isLValue": false, "isPure": false, @@ -57876,14 +57876,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5240, + "id": 5761, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 5237, + "id": 5758, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -57894,7 +57894,7 @@ "typeString": "msg" } }, - "id": 5238, + "id": 5759, "isConstant": false, "isLValue": false, "isPure": false, @@ -57912,7 +57912,7 @@ "operator": "%", "rightExpression": { "hexValue": "32", - "id": 5239, + "id": 5760, "isConstant": false, "isLValue": false, "isPure": true, @@ -57936,7 +57936,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 5241, + "id": 5762, "isConstant": false, "isLValue": false, "isPure": true, @@ -57961,17 +57961,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5246, + "id": 5767, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 5244, + "id": 5765, "name": "halfMsgValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5227, + "referencedDeclaration": 5748, "src": "9665:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -57982,7 +57982,7 @@ "operator": "+", "rightExpression": { "hexValue": "31", - "id": 5245, + "id": 5766, "isConstant": false, "isLValue": false, "isPure": true, @@ -58002,7 +58002,7 @@ "typeString": "uint256" } }, - "id": 5247, + "id": 5768, "isConstant": false, "isLValue": false, "isPure": false, @@ -58010,11 +58010,11 @@ "nodeType": "Conditional", "src": "9629:52:21", "trueExpression": { - "id": 5243, + "id": 5764, "name": "halfMsgValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5227, + "referencedDeclaration": 5748, "src": "9650:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -58032,34 +58032,34 @@ "typeString": "uint256" } }, - "id": 5249, + "id": 5770, "nodeType": "ExpressionStatement", "src": "9604:77:21" }, { "expression": { - "id": 5255, + "id": 5776, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 5250, + "id": 5771, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4766, + "referencedDeclaration": 5287, "src": "9695:16:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5253, + "id": 5774, "indexExpression": { "expression": { - "id": 5251, + "id": 5772, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -58070,7 +58070,7 @@ "typeString": "msg" } }, - "id": 5252, + "id": 5773, "isConstant": false, "isLValue": false, "isPure": false, @@ -58098,11 +58098,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 5254, + "id": 5775, "name": "halfMsgValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5227, + "referencedDeclaration": 5748, "src": "9726:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -58115,17 +58115,17 @@ "typeString": "uint256" } }, - "id": 5256, + "id": 5777, "nodeType": "ExpressionStatement", "src": "9695:43:21" } ] }, - "id": 5258, + "id": 5779, "nodeType": "IfStatement", "src": "9261:488:21", "trueBody": { - "id": 5215, + "id": 5736, "nodeType": "Block", "src": "9350:124:21", "statements": [ @@ -58137,14 +58137,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5203, + "id": 5724, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 5200, + "id": 5721, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -58155,7 +58155,7 @@ "typeString": "msg" } }, - "id": 5201, + "id": 5722, "isConstant": false, "isLValue": false, "isPure": false, @@ -58172,11 +58172,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 5202, + "id": 5723, "name": "minCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4782, + "referencedDeclaration": 5303, "src": "9385:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -58191,7 +58191,7 @@ }, { "hexValue": "4c4243303038", - "id": 5204, + "id": 5725, "isConstant": false, "isLValue": false, "isPure": true, @@ -58217,7 +58217,7 @@ "typeString": "literal_string \"LBC008\"" } ], - "id": 5199, + "id": 5720, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -58231,7 +58231,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5205, + "id": 5726, "isConstant": false, "isLValue": false, "isPure": false, @@ -58247,34 +58247,34 @@ "typeString": "tuple()" } }, - "id": 5206, + "id": 5727, "nodeType": "ExpressionStatement", "src": "9364:45:21" }, { "expression": { - "id": 5213, + "id": 5734, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 5207, + "id": 5728, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4766, + "referencedDeclaration": 5287, "src": "9423:16:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5210, + "id": 5731, "indexExpression": { "expression": { - "id": 5208, + "id": 5729, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -58285,7 +58285,7 @@ "typeString": "msg" } }, - "id": 5209, + "id": 5730, "isConstant": false, "isLValue": false, "isPure": false, @@ -58314,7 +58314,7 @@ "operator": "=", "rightHandSide": { "expression": { - "id": 5211, + "id": 5732, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -58325,7 +58325,7 @@ "typeString": "msg" } }, - "id": 5212, + "id": 5733, "isConstant": false, "isLValue": false, "isPure": false, @@ -58345,18 +58345,18 @@ "typeString": "uint256" } }, - "id": 5214, + "id": 5735, "nodeType": "ExpressionStatement", "src": "9423:40:21" } ] } }, - "id": 5259, + "id": 5780, "nodeType": "IfStatement", "src": "9049:700:21", "trueBody": { - "id": 5185, + "id": 5706, "nodeType": "Block", "src": "9137:118:21", "statements": [ @@ -58368,14 +58368,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5173, + "id": 5694, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 5170, + "id": 5691, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -58386,7 +58386,7 @@ "typeString": "msg" } }, - "id": 5171, + "id": 5692, "isConstant": false, "isLValue": false, "isPure": false, @@ -58403,11 +58403,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 5172, + "id": 5693, "name": "minCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4782, + "referencedDeclaration": 5303, "src": "9172:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -58422,7 +58422,7 @@ }, { "hexValue": "4c4243303038", - "id": 5174, + "id": 5695, "isConstant": false, "isLValue": false, "isPure": true, @@ -58448,7 +58448,7 @@ "typeString": "literal_string \"LBC008\"" } ], - "id": 5169, + "id": 5690, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -58462,7 +58462,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5175, + "id": 5696, "isConstant": false, "isLValue": false, "isPure": false, @@ -58478,34 +58478,34 @@ "typeString": "tuple()" } }, - "id": 5176, + "id": 5697, "nodeType": "ExpressionStatement", "src": "9151:45:21" }, { "expression": { - "id": 5183, + "id": 5704, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 5177, + "id": 5698, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4762, + "referencedDeclaration": 5283, "src": "9210:10:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5180, + "id": 5701, "indexExpression": { "expression": { - "id": 5178, + "id": 5699, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -58516,7 +58516,7 @@ "typeString": "msg" } }, - "id": 5179, + "id": 5700, "isConstant": false, "isLValue": false, "isPure": false, @@ -58545,7 +58545,7 @@ "operator": "=", "rightHandSide": { "expression": { - "id": 5181, + "id": 5702, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -58556,7 +58556,7 @@ "typeString": "msg" } }, - "id": 5182, + "id": 5703, "isConstant": false, "isLValue": false, "isPure": false, @@ -58576,7 +58576,7 @@ "typeString": "uint256" } }, - "id": 5184, + "id": 5705, "nodeType": "ExpressionStatement", "src": "9210:34:21" } @@ -58585,7 +58585,7 @@ }, { "expression": { - "id": 5261, + "id": 5782, "isConstant": false, "isLValue": false, "isPure": false, @@ -58595,11 +58595,11 @@ "prefix": false, "src": "9759:12:21", "subExpression": { - "id": 5260, + "id": 5781, "name": "providerId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4792, + "referencedDeclaration": 5313, "src": "9759:10:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -58611,37 +58611,37 @@ "typeString": "uint256" } }, - "id": 5262, + "id": 5783, "nodeType": "ExpressionStatement", "src": "9759:12:21" }, { "expression": { - "id": 5275, + "id": 5796, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 5263, + "id": 5784, "name": "liquidityProviders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4771, + "referencedDeclaration": 5292, "src": "9781:18:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$4613_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider storage ref)" } }, - "id": 5265, + "id": 5786, "indexExpression": { - "id": 5264, + "id": 5785, "name": "providerId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4792, + "referencedDeclaration": 5313, "src": "9800:10:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -58655,7 +58655,7 @@ "nodeType": "IndexAccess", "src": "9781:30:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$4613_storage", + "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" } }, @@ -58664,11 +58664,11 @@ "rightHandSide": { "arguments": [ { - "id": 5267, + "id": 5788, "name": "providerId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4792, + "referencedDeclaration": 5313, "src": "9850:10:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -58677,7 +58677,7 @@ }, { "expression": { - "id": 5268, + "id": 5789, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -58688,7 +58688,7 @@ "typeString": "msg" } }, - "id": 5269, + "id": 5790, "isConstant": false, "isLValue": false, "isPure": false, @@ -58703,11 +58703,11 @@ } }, { - "id": 5270, + "id": 5791, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5110, + "referencedDeclaration": 5631, "src": "9914:5:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -58715,11 +58715,11 @@ } }, { - "id": 5271, + "id": 5792, "name": "_apiBaseUrl", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5112, + "referencedDeclaration": 5633, "src": "9945:11:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -58727,11 +58727,11 @@ } }, { - "id": 5272, + "id": 5793, "name": "_status", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5114, + "referencedDeclaration": 5635, "src": "9978:7:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -58739,11 +58739,11 @@ } }, { - "id": 5273, + "id": 5794, "name": "_providerType", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5116, + "referencedDeclaration": 5637, "src": "10013:13:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -58778,18 +58778,18 @@ "typeString": "string memory" } ], - "id": 5266, + "id": 5787, "name": "LiquidityProvider", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4613, + "referencedDeclaration": 5134, "src": "9814:17:21", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_LiquidityProvider_$4613_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_LiquidityProvider_$5134_storage_ptr_$", "typeString": "type(struct LiquidityBridgeContract.LiquidityProvider storage pointer)" } }, - "id": 5274, + "id": 5795, "isConstant": false, "isLValue": false, "isPure": false, @@ -58815,17 +58815,17 @@ "src": "9814:223:21", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$4613_memory_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$5134_memory_ptr", "typeString": "struct LiquidityBridgeContract.LiquidityProvider memory" } }, "src": "9781:256:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$4613_storage", + "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" } }, - "id": 5276, + "id": 5797, "nodeType": "ExpressionStatement", "src": "9781:256:21" }, @@ -58833,11 +58833,11 @@ "eventCall": { "arguments": [ { - "id": 5278, + "id": 5799, "name": "providerId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4792, + "referencedDeclaration": 5313, "src": "10061:10:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -58846,7 +58846,7 @@ }, { "expression": { - "id": 5279, + "id": 5800, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -58857,7 +58857,7 @@ "typeString": "msg" } }, - "id": 5280, + "id": 5801, "isConstant": false, "isLValue": false, "isPure": false, @@ -58873,7 +58873,7 @@ }, { "expression": { - "id": 5281, + "id": 5802, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -58884,7 +58884,7 @@ "typeString": "msg" } }, - "id": 5282, + "id": 5803, "isConstant": false, "isLValue": false, "isPure": false, @@ -58914,18 +58914,18 @@ "typeString": "uint256" } ], - "id": 5277, + "id": 5798, "name": "Register", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4621, + "referencedDeclaration": 5142, "src": "10052:8:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (uint256,address,uint256)" } }, - "id": 5283, + "id": 5804, "isConstant": false, "isLValue": false, "isPure": false, @@ -58941,7 +58941,7 @@ "typeString": "tuple()" } }, - "id": 5284, + "id": 5805, "nodeType": "EmitStatement", "src": "10047:48:21" }, @@ -58949,11 +58949,11 @@ "expression": { "components": [ { - "id": 5285, + "id": 5806, "name": "providerId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4792, + "referencedDeclaration": 5313, "src": "10113:10:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -58961,7 +58961,7 @@ } } ], - "id": 5286, + "id": 5807, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -58974,35 +58974,35 @@ "typeString": "uint256" } }, - "functionReturnParameters": 5122, - "id": 5287, + "functionReturnParameters": 5643, + "id": 5808, "nodeType": "Return", "src": "10105:19:21" } ] }, "documentation": { - "id": 5108, + "id": 5629, "nodeType": "StructuredDocumentation", "src": "8368:98:21", "text": "@dev Registers msg.sender as a liquidity provider with msg.value as collateral" }, "functionSelector": "41705518", - "id": 5289, + "id": 5810, "implemented": true, "kind": "function", "modifiers": [ { - "id": 5119, + "id": 5640, "kind": "modifierInvocation", "modifierName": { - "id": 5118, + "id": 5639, "name": "onlyEoa", "nameLocations": [ "8635:7:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 4847, + "referencedDeclaration": 5368, "src": "8635:7:21" }, "nodeType": "ModifierInvocation", @@ -59013,17 +59013,17 @@ "nameLocation": "8480:8:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5117, + "id": 5638, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5110, + "id": 5631, "mutability": "mutable", "name": "_name", "nameLocation": "8512:5:21", "nodeType": "VariableDeclaration", - "scope": 5289, + "scope": 5810, "src": "8498:19:21", "stateVariable": false, "storageLocation": "memory", @@ -59032,7 +59032,7 @@ "typeString": "string" }, "typeName": { - "id": 5109, + "id": 5630, "name": "string", "nodeType": "ElementaryTypeName", "src": "8498:6:21", @@ -59045,12 +59045,12 @@ }, { "constant": false, - "id": 5112, + "id": 5633, "mutability": "mutable", "name": "_apiBaseUrl", "nameLocation": "8541:11:21", "nodeType": "VariableDeclaration", - "scope": 5289, + "scope": 5810, "src": "8527:25:21", "stateVariable": false, "storageLocation": "memory", @@ -59059,7 +59059,7 @@ "typeString": "string" }, "typeName": { - "id": 5111, + "id": 5632, "name": "string", "nodeType": "ElementaryTypeName", "src": "8527:6:21", @@ -59072,12 +59072,12 @@ }, { "constant": false, - "id": 5114, + "id": 5635, "mutability": "mutable", "name": "_status", "nameLocation": "8567:7:21", "nodeType": "VariableDeclaration", - "scope": 5289, + "scope": 5810, "src": "8562:12:21", "stateVariable": false, "storageLocation": "default", @@ -59086,7 +59086,7 @@ "typeString": "bool" }, "typeName": { - "id": 5113, + "id": 5634, "name": "bool", "nodeType": "ElementaryTypeName", "src": "8562:4:21", @@ -59099,12 +59099,12 @@ }, { "constant": false, - "id": 5116, + "id": 5637, "mutability": "mutable", "name": "_providerType", "nameLocation": "8598:13:21", "nodeType": "VariableDeclaration", - "scope": 5289, + "scope": 5810, "src": "8584:27:21", "stateVariable": false, "storageLocation": "memory", @@ -59113,7 +59113,7 @@ "typeString": "string" }, "typeName": { - "id": 5115, + "id": 5636, "name": "string", "nodeType": "ElementaryTypeName", "src": "8584:6:21", @@ -59128,17 +59128,17 @@ "src": "8488:129:21" }, "returnParameters": { - "id": 5122, + "id": 5643, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5121, + "id": 5642, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5289, + "scope": 5810, "src": "8652:4:21", "stateVariable": false, "storageLocation": "default", @@ -59147,7 +59147,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5120, + "id": 5641, "name": "uint", "nodeType": "ElementaryTypeName", "src": "8652:4:21", @@ -59161,7 +59161,7 @@ ], "src": "8651:6:21" }, - "scope": 7377, + "scope": 7898, "src": "8471:1660:21", "stateMutability": "payable", "virtual": false, @@ -59169,7 +59169,7 @@ }, { "body": { - "id": 5366, + "id": 5887, "nodeType": "Block", "src": "10373:591:21", "statements": [ @@ -59181,7 +59181,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5306, + "id": 5827, "isConstant": false, "isLValue": false, "isPure": false, @@ -59190,11 +59190,11 @@ "expression": { "arguments": [ { - "id": 5302, + "id": 5823, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5292, + "referencedDeclaration": 5813, "src": "10397:5:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -59209,7 +59209,7 @@ "typeString": "string memory" } ], - "id": 5301, + "id": 5822, "isConstant": false, "isLValue": false, "isPure": true, @@ -59221,14 +59221,14 @@ "typeString": "type(bytes storage pointer)" }, "typeName": { - "id": 5300, + "id": 5821, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "10391:5:21", "typeDescriptions": {} } }, - "id": 5303, + "id": 5824, "isConstant": false, "isLValue": false, "isPure": false, @@ -59244,7 +59244,7 @@ "typeString": "bytes memory" } }, - "id": 5304, + "id": 5825, "isConstant": false, "isLValue": false, "isPure": false, @@ -59262,7 +59262,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 5305, + "id": 5826, "isConstant": false, "isLValue": false, "isPure": true, @@ -59284,7 +59284,7 @@ }, { "hexValue": "4c4243303130", - "id": 5307, + "id": 5828, "isConstant": false, "isLValue": false, "isPure": true, @@ -59310,7 +59310,7 @@ "typeString": "literal_string \"LBC010\"" } ], - "id": 5299, + "id": 5820, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -59324,7 +59324,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5308, + "id": 5829, "isConstant": false, "isLValue": false, "isPure": false, @@ -59340,7 +59340,7 @@ "typeString": "tuple()" } }, - "id": 5309, + "id": 5830, "nodeType": "ExpressionStatement", "src": "10383:42:21" }, @@ -59352,7 +59352,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5317, + "id": 5838, "isConstant": false, "isLValue": false, "isPure": false, @@ -59361,11 +59361,11 @@ "expression": { "arguments": [ { - "id": 5313, + "id": 5834, "name": "_apiBaseUrl", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5294, + "referencedDeclaration": 5815, "src": "10462:11:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -59380,7 +59380,7 @@ "typeString": "string memory" } ], - "id": 5312, + "id": 5833, "isConstant": false, "isLValue": false, "isPure": true, @@ -59392,14 +59392,14 @@ "typeString": "type(bytes storage pointer)" }, "typeName": { - "id": 5311, + "id": 5832, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "10456:5:21", "typeDescriptions": {} } }, - "id": 5314, + "id": 5835, "isConstant": false, "isLValue": false, "isPure": false, @@ -59415,7 +59415,7 @@ "typeString": "bytes memory" } }, - "id": 5315, + "id": 5836, "isConstant": false, "isLValue": false, "isPure": false, @@ -59433,7 +59433,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 5316, + "id": 5837, "isConstant": false, "isLValue": false, "isPure": true, @@ -59455,7 +59455,7 @@ }, { "hexValue": "4c4243303137", - "id": 5318, + "id": 5839, "isConstant": false, "isLValue": false, "isPure": true, @@ -59481,7 +59481,7 @@ "typeString": "literal_string \"LBC017\"" } ], - "id": 5310, + "id": 5831, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -59495,7 +59495,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5319, + "id": 5840, "isConstant": false, "isLValue": false, "isPure": false, @@ -59511,7 +59511,7 @@ "typeString": "tuple()" } }, - "id": 5320, + "id": 5841, "nodeType": "ExpressionStatement", "src": "10435:82:21" }, @@ -59523,7 +59523,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 5362, + "id": 5883, "isConstant": false, "isLValue": false, "isPure": false, @@ -59533,7 +59533,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 5348, + "id": 5869, "isConstant": false, "isLValue": false, "isPure": false, @@ -59543,7 +59543,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 5334, + "id": 5855, "isConstant": false, "isLValue": false, "isPure": false, @@ -59553,11 +59553,11 @@ { "arguments": [ { - "id": 5325, + "id": 5846, "name": "_providerType", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5296, + "referencedDeclaration": 5817, "src": "10638:13:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -59573,7 +59573,7 @@ } ], "expression": { - "id": 5323, + "id": 5844, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -59584,7 +59584,7 @@ "typeString": "abi" } }, - "id": 5324, + "id": 5845, "isConstant": false, "isLValue": false, "isPure": true, @@ -59598,7 +59598,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 5326, + "id": 5847, "isConstant": false, "isLValue": false, "isPure": false, @@ -59622,7 +59622,7 @@ "typeString": "bytes memory" } ], - "id": 5322, + "id": 5843, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -59633,7 +59633,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 5327, + "id": 5848, "isConstant": false, "isLValue": false, "isPure": false, @@ -59657,7 +59657,7 @@ "arguments": [ { "hexValue": "706567696e", - "id": 5331, + "id": 5852, "isConstant": false, "isLValue": false, "isPure": true, @@ -59680,7 +59680,7 @@ } ], "expression": { - "id": 5329, + "id": 5850, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -59691,7 +59691,7 @@ "typeString": "abi" } }, - "id": 5330, + "id": 5851, "isConstant": false, "isLValue": false, "isPure": true, @@ -59705,7 +59705,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 5332, + "id": 5853, "isConstant": false, "isLValue": false, "isPure": true, @@ -59729,7 +59729,7 @@ "typeString": "bytes memory" } ], - "id": 5328, + "id": 5849, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -59740,7 +59740,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 5333, + "id": 5854, "isConstant": false, "isLValue": false, "isPure": true, @@ -59769,7 +59769,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 5347, + "id": 5868, "isConstant": false, "isLValue": false, "isPure": false, @@ -59779,11 +59779,11 @@ { "arguments": [ { - "id": 5338, + "id": 5859, "name": "_providerType", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5296, + "referencedDeclaration": 5817, "src": "10748:13:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -59799,7 +59799,7 @@ } ], "expression": { - "id": 5336, + "id": 5857, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -59810,7 +59810,7 @@ "typeString": "abi" } }, - "id": 5337, + "id": 5858, "isConstant": false, "isLValue": false, "isPure": true, @@ -59824,7 +59824,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 5339, + "id": 5860, "isConstant": false, "isLValue": false, "isPure": false, @@ -59848,7 +59848,7 @@ "typeString": "bytes memory" } ], - "id": 5335, + "id": 5856, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -59859,7 +59859,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 5340, + "id": 5861, "isConstant": false, "isLValue": false, "isPure": false, @@ -59883,7 +59883,7 @@ "arguments": [ { "hexValue": "7065676f7574", - "id": 5344, + "id": 5865, "isConstant": false, "isLValue": false, "isPure": true, @@ -59906,7 +59906,7 @@ } ], "expression": { - "id": 5342, + "id": 5863, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -59917,7 +59917,7 @@ "typeString": "abi" } }, - "id": 5343, + "id": 5864, "isConstant": false, "isLValue": false, "isPure": true, @@ -59931,7 +59931,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 5345, + "id": 5866, "isConstant": false, "isLValue": false, "isPure": true, @@ -59955,7 +59955,7 @@ "typeString": "bytes memory" } ], - "id": 5341, + "id": 5862, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -59966,7 +59966,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 5346, + "id": 5867, "isConstant": false, "isLValue": false, "isPure": true, @@ -60001,7 +60001,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 5361, + "id": 5882, "isConstant": false, "isLValue": false, "isPure": false, @@ -60011,11 +60011,11 @@ { "arguments": [ { - "id": 5352, + "id": 5873, "name": "_providerType", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5296, + "referencedDeclaration": 5817, "src": "10859:13:21", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -60031,7 +60031,7 @@ } ], "expression": { - "id": 5350, + "id": 5871, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -60042,7 +60042,7 @@ "typeString": "abi" } }, - "id": 5351, + "id": 5872, "isConstant": false, "isLValue": false, "isPure": true, @@ -60056,7 +60056,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 5353, + "id": 5874, "isConstant": false, "isLValue": false, "isPure": false, @@ -60080,7 +60080,7 @@ "typeString": "bytes memory" } ], - "id": 5349, + "id": 5870, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -60091,7 +60091,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 5354, + "id": 5875, "isConstant": false, "isLValue": false, "isPure": false, @@ -60115,7 +60115,7 @@ "arguments": [ { "hexValue": "626f7468", - "id": 5358, + "id": 5879, "isConstant": false, "isLValue": false, "isPure": true, @@ -60138,7 +60138,7 @@ } ], "expression": { - "id": 5356, + "id": 5877, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -60149,7 +60149,7 @@ "typeString": "abi" } }, - "id": 5357, + "id": 5878, "isConstant": false, "isLValue": false, "isPure": true, @@ -60163,7 +60163,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 5359, + "id": 5880, "isConstant": false, "isLValue": false, "isPure": true, @@ -60187,7 +60187,7 @@ "typeString": "bytes memory" } ], - "id": 5355, + "id": 5876, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -60198,7 +60198,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 5360, + "id": 5881, "isConstant": false, "isLValue": false, "isPure": true, @@ -60228,7 +60228,7 @@ }, { "hexValue": "4c4243303138", - "id": 5363, + "id": 5884, "isConstant": false, "isLValue": false, "isPure": true, @@ -60254,7 +60254,7 @@ "typeString": "literal_string \"LBC018\"" } ], - "id": 5321, + "id": 5842, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -60268,7 +60268,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5364, + "id": 5885, "isConstant": false, "isLValue": false, "isPure": false, @@ -60284,19 +60284,19 @@ "typeString": "tuple()" } }, - "id": 5365, + "id": 5886, "nodeType": "ExpressionStatement", "src": "10590:367:21" } ] }, "documentation": { - "id": 5290, + "id": 5811, "nodeType": "StructuredDocumentation", "src": "10137:74:21", "text": "@dev Validates input parameters for the register function" }, - "id": 5367, + "id": 5888, "implemented": true, "kind": "function", "modifiers": [], @@ -60304,17 +60304,17 @@ "nameLocation": "10225:26:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5297, + "id": 5818, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5292, + "id": 5813, "mutability": "mutable", "name": "_name", "nameLocation": "10275:5:21", "nodeType": "VariableDeclaration", - "scope": 5367, + "scope": 5888, "src": "10261:19:21", "stateVariable": false, "storageLocation": "memory", @@ -60323,7 +60323,7 @@ "typeString": "string" }, "typeName": { - "id": 5291, + "id": 5812, "name": "string", "nodeType": "ElementaryTypeName", "src": "10261:6:21", @@ -60336,12 +60336,12 @@ }, { "constant": false, - "id": 5294, + "id": 5815, "mutability": "mutable", "name": "_apiBaseUrl", "nameLocation": "10304:11:21", "nodeType": "VariableDeclaration", - "scope": 5367, + "scope": 5888, "src": "10290:25:21", "stateVariable": false, "storageLocation": "memory", @@ -60350,7 +60350,7 @@ "typeString": "string" }, "typeName": { - "id": 5293, + "id": 5814, "name": "string", "nodeType": "ElementaryTypeName", "src": "10290:6:21", @@ -60363,12 +60363,12 @@ }, { "constant": false, - "id": 5296, + "id": 5817, "mutability": "mutable", "name": "_providerType", "nameLocation": "10339:13:21", "nodeType": "VariableDeclaration", - "scope": 5367, + "scope": 5888, "src": "10325:27:21", "stateVariable": false, "storageLocation": "memory", @@ -60377,7 +60377,7 @@ "typeString": "string" }, "typeName": { - "id": 5295, + "id": 5816, "name": "string", "nodeType": "ElementaryTypeName", "src": "10325:6:21", @@ -60392,12 +60392,12 @@ "src": "10251:107:21" }, "returnParameters": { - "id": 5298, + "id": 5819, "nodeType": "ParameterList", "parameters": [], "src": "10373:0:21" }, - "scope": 7377, + "scope": 7898, "src": "10216:748:21", "stateMutability": "pure", "virtual": false, @@ -60405,79 +60405,79 @@ }, { "body": { - "id": 5447, + "id": 5968, "nodeType": "Block", "src": "11084:618:21", "statements": [ { "assignments": [ - 5381 + 5902 ], "declarations": [ { "constant": false, - "id": 5381, + "id": 5902, "mutability": "mutable", "name": "providersToReturn", "nameLocation": "11121:17:21", "nodeType": "VariableDeclaration", - "scope": 5447, + "scope": 5968, "src": "11094:44:21", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$4613_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr", "typeString": "struct LiquidityBridgeContract.LiquidityProvider[]" }, "typeName": { "baseType": { - "id": 5379, + "id": 5900, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 5378, + "id": 5899, "name": "LiquidityProvider", "nameLocations": [ "11094:17:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 4613, + "referencedDeclaration": 5134, "src": "11094:17:21" }, - "referencedDeclaration": 4613, + "referencedDeclaration": 5134, "src": "11094:17:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$4613_storage_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage_ptr", "typeString": "struct LiquidityBridgeContract.LiquidityProvider" } }, - "id": 5380, + "id": 5901, "nodeType": "ArrayTypeName", "src": "11094:19:21", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$4613_storage_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_storage_$dyn_storage_ptr", "typeString": "struct LiquidityBridgeContract.LiquidityProvider[]" } }, "visibility": "internal" } ], - "id": 5389, + "id": 5910, "initialValue": { "arguments": [ { "expression": { - "id": 5386, + "id": 5907, "name": "providerIds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5370, + "referencedDeclaration": 5891, "src": "11178:11:21", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, - "id": 5387, + "id": 5908, "isConstant": false, "isLValue": false, "isPure": false, @@ -60499,7 +60499,7 @@ "typeString": "uint256" } ], - "id": 5385, + "id": 5906, "isConstant": false, "isLValue": false, "isPure": true, @@ -60507,40 +60507,40 @@ "nodeType": "NewExpression", "src": "11141:23:21", "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_LiquidityProvider_$4613_memory_ptr_$dyn_memory_ptr_$", + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr_$", "typeString": "function (uint256) pure returns (struct LiquidityBridgeContract.LiquidityProvider memory[] memory)" }, "typeName": { "baseType": { - "id": 5383, + "id": 5904, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 5382, + "id": 5903, "name": "LiquidityProvider", "nameLocations": [ "11145:17:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 4613, + "referencedDeclaration": 5134, "src": "11145:17:21" }, - "referencedDeclaration": 4613, + "referencedDeclaration": 5134, "src": "11145:17:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$4613_storage_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage_ptr", "typeString": "struct LiquidityBridgeContract.LiquidityProvider" } }, - "id": 5384, + "id": 5905, "nodeType": "ArrayTypeName", "src": "11145:19:21", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$4613_storage_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_storage_$dyn_storage_ptr", "typeString": "struct LiquidityBridgeContract.LiquidityProvider[]" } } }, - "id": 5388, + "id": 5909, "isConstant": false, "isLValue": false, "isPure": false, @@ -60552,7 +60552,7 @@ "src": "11141:65:21", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$4613_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr", "typeString": "struct LiquidityBridgeContract.LiquidityProvider memory[] memory" } }, @@ -60561,17 +60561,17 @@ }, { "assignments": [ - 5391 + 5912 ], "declarations": [ { "constant": false, - "id": 5391, + "id": 5912, "mutability": "mutable", "name": "count", "nameLocation": "11221:5:21", "nodeType": "VariableDeclaration", - "scope": 5447, + "scope": 5968, "src": "11216:10:21", "stateVariable": false, "storageLocation": "default", @@ -60580,7 +60580,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5390, + "id": 5911, "name": "uint", "nodeType": "ElementaryTypeName", "src": "11216:4:21", @@ -60592,10 +60592,10 @@ "visibility": "internal" } ], - "id": 5393, + "id": 5914, "initialValue": { "hexValue": "30", - "id": 5392, + "id": 5913, "isConstant": false, "isLValue": false, "isPure": true, @@ -60614,23 +60614,23 @@ }, { "body": { - "id": 5443, + "id": 5964, "nodeType": "Block", "src": "11287:375:21", "statements": [ { "assignments": [ - 5406 + 5927 ], "declarations": [ { "constant": false, - "id": 5406, + "id": 5927, "mutability": "mutable", "name": "id", "nameLocation": "11306:2:21", "nodeType": "VariableDeclaration", - "scope": 5443, + "scope": 5964, "src": "11301:7:21", "stateVariable": false, "storageLocation": "default", @@ -60639,7 +60639,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5405, + "id": 5926, "name": "uint", "nodeType": "ElementaryTypeName", "src": "11301:4:21", @@ -60651,27 +60651,27 @@ "visibility": "internal" } ], - "id": 5410, + "id": 5931, "initialValue": { "baseExpression": { - "id": 5407, + "id": 5928, "name": "providerIds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5370, + "referencedDeclaration": 5891, "src": "11311:11:21", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, - "id": 5409, + "id": 5930, "indexExpression": { - "id": 5408, + "id": 5929, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5395, + "referencedDeclaration": 5916, "src": "11323:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -60698,7 +60698,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 5429, + "id": 5950, "isConstant": false, "isLValue": false, "isPure": false, @@ -60710,7 +60710,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 5423, + "id": 5944, "isConstant": false, "isLValue": false, "isPure": false, @@ -60720,24 +60720,24 @@ { "expression": { "baseExpression": { - "id": 5412, + "id": 5933, "name": "liquidityProviders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4771, + "referencedDeclaration": 5292, "src": "11374:18:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$4613_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider storage ref)" } }, - "id": 5414, + "id": 5935, "indexExpression": { - "id": 5413, + "id": 5934, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5406, + "referencedDeclaration": 5927, "src": "11393:2:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -60751,11 +60751,11 @@ "nodeType": "IndexAccess", "src": "11374:22:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$4613_storage", + "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" } }, - "id": 5415, + "id": 5936, "isConstant": false, "isLValue": true, "isPure": false, @@ -60763,7 +60763,7 @@ "memberLocation": "11397:8:21", "memberName": "provider", "nodeType": "MemberAccess", - "referencedDeclaration": 4604, + "referencedDeclaration": 5125, "src": "11374:31:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -60778,18 +60778,18 @@ "typeString": "address" } ], - "id": 5411, + "id": 5932, "name": "isRegistered", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7033, + "referencedDeclaration": 7554, "src": "11361:12:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 5416, + "id": 5937, "isConstant": false, "isLValue": false, "isPure": false, @@ -60812,24 +60812,24 @@ { "expression": { "baseExpression": { - "id": 5418, + "id": 5939, "name": "liquidityProviders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4771, + "referencedDeclaration": 5292, "src": "11448:18:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$4613_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider storage ref)" } }, - "id": 5420, + "id": 5941, "indexExpression": { - "id": 5419, + "id": 5940, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5406, + "referencedDeclaration": 5927, "src": "11467:2:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -60843,11 +60843,11 @@ "nodeType": "IndexAccess", "src": "11448:22:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$4613_storage", + "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" } }, - "id": 5421, + "id": 5942, "isConstant": false, "isLValue": true, "isPure": false, @@ -60855,7 +60855,7 @@ "memberLocation": "11471:8:21", "memberName": "provider", "nodeType": "MemberAccess", - "referencedDeclaration": 4604, + "referencedDeclaration": 5125, "src": "11448:31:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -60870,18 +60870,18 @@ "typeString": "address" } ], - "id": 5417, + "id": 5938, "name": "isRegisteredForPegout", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7053, + "referencedDeclaration": 7574, "src": "11426:21:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 5422, + "id": 5943, "isConstant": false, "isLValue": false, "isPure": false, @@ -60904,7 +60904,7 @@ } } ], - "id": 5424, + "id": 5945, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -60922,24 +60922,24 @@ "rightExpression": { "expression": { "baseExpression": { - "id": 5425, + "id": 5946, "name": "liquidityProviders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4771, + "referencedDeclaration": 5292, "src": "11501:18:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$4613_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider storage ref)" } }, - "id": 5427, + "id": 5948, "indexExpression": { - "id": 5426, + "id": 5947, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5406, + "referencedDeclaration": 5927, "src": "11520:2:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -60953,11 +60953,11 @@ "nodeType": "IndexAccess", "src": "11501:22:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$4613_storage", + "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" } }, - "id": 5428, + "id": 5949, "isConstant": false, "isLValue": true, "isPure": false, @@ -60965,7 +60965,7 @@ "memberLocation": "11524:6:21", "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 4610, + "referencedDeclaration": 5131, "src": "11501:29:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -60978,41 +60978,41 @@ "typeString": "bool" } }, - "id": 5442, + "id": 5963, "nodeType": "IfStatement", "src": "11339:313:21", "trueBody": { - "id": 5441, + "id": 5962, "nodeType": "Block", "src": "11545:107:21", "statements": [ { "expression": { - "id": 5436, + "id": 5957, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 5430, + "id": 5951, "name": "providersToReturn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5381, + "referencedDeclaration": 5902, "src": "11563:17:21", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$4613_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr", "typeString": "struct LiquidityBridgeContract.LiquidityProvider memory[] memory" } }, - "id": 5432, + "id": 5953, "indexExpression": { - "id": 5431, + "id": 5952, "name": "count", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5391, + "referencedDeclaration": 5912, "src": "11581:5:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -61026,7 +61026,7 @@ "nodeType": "IndexAccess", "src": "11563:24:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$4613_memory_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$5134_memory_ptr", "typeString": "struct LiquidityBridgeContract.LiquidityProvider memory" } }, @@ -61034,24 +61034,24 @@ "operator": "=", "rightHandSide": { "baseExpression": { - "id": 5433, + "id": 5954, "name": "liquidityProviders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4771, + "referencedDeclaration": 5292, "src": "11590:18:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$4613_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider storage ref)" } }, - "id": 5435, + "id": 5956, "indexExpression": { - "id": 5434, + "id": 5955, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5406, + "referencedDeclaration": 5927, "src": "11609:2:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -61065,23 +61065,23 @@ "nodeType": "IndexAccess", "src": "11590:22:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$4613_storage", + "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" } }, "src": "11563:49:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$4613_memory_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$5134_memory_ptr", "typeString": "struct LiquidityBridgeContract.LiquidityProvider memory" } }, - "id": 5437, + "id": 5958, "nodeType": "ExpressionStatement", "src": "11563:49:21" }, { "expression": { - "id": 5439, + "id": 5960, "isConstant": false, "isLValue": false, "isPure": false, @@ -61091,11 +61091,11 @@ "prefix": false, "src": "11630:7:21", "subExpression": { - "id": 5438, + "id": 5959, "name": "count", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5391, + "referencedDeclaration": 5912, "src": "11630:5:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -61107,7 +61107,7 @@ "typeString": "uint256" } }, - "id": 5440, + "id": 5961, "nodeType": "ExpressionStatement", "src": "11630:7:21" } @@ -61121,17 +61121,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5401, + "id": 5922, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 5398, + "id": 5919, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5395, + "referencedDeclaration": 5916, "src": "11258:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -61142,18 +61142,18 @@ "operator": "<", "rightExpression": { "expression": { - "id": 5399, + "id": 5920, "name": "providerIds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5370, + "referencedDeclaration": 5891, "src": "11262:11:21", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, - "id": 5400, + "id": 5921, "isConstant": false, "isLValue": false, "isPure": false, @@ -61173,20 +61173,20 @@ "typeString": "bool" } }, - "id": 5444, + "id": 5965, "initializationExpression": { "assignments": [ - 5395 + 5916 ], "declarations": [ { "constant": false, - "id": 5395, + "id": 5916, "mutability": "mutable", "name": "i", "nameLocation": "11251:1:21", "nodeType": "VariableDeclaration", - "scope": 5444, + "scope": 5965, "src": "11246:6:21", "stateVariable": false, "storageLocation": "default", @@ -61195,7 +61195,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5394, + "id": 5915, "name": "uint", "nodeType": "ElementaryTypeName", "src": "11246:4:21", @@ -61207,10 +61207,10 @@ "visibility": "internal" } ], - "id": 5397, + "id": 5918, "initialValue": { "hexValue": "30", - "id": 5396, + "id": 5917, "isConstant": false, "isLValue": false, "isPure": true, @@ -61229,7 +61229,7 @@ }, "loopExpression": { "expression": { - "id": 5403, + "id": 5924, "isConstant": false, "isLValue": false, "isPure": false, @@ -61239,11 +61239,11 @@ "prefix": false, "src": "11282:3:21", "subExpression": { - "id": 5402, + "id": 5923, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5395, + "referencedDeclaration": 5916, "src": "11282:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -61255,7 +61255,7 @@ "typeString": "uint256" } }, - "id": 5404, + "id": 5925, "nodeType": "ExpressionStatement", "src": "11282:3:21" }, @@ -61264,26 +61264,26 @@ }, { "expression": { - "id": 5445, + "id": 5966, "name": "providersToReturn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5381, + "referencedDeclaration": 5902, "src": "11678:17:21", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$4613_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr", "typeString": "struct LiquidityBridgeContract.LiquidityProvider memory[] memory" } }, - "functionReturnParameters": 5376, - "id": 5446, + "functionReturnParameters": 5897, + "id": 5967, "nodeType": "Return", "src": "11671:24:21" } ] }, "functionSelector": "668dbd83", - "id": 5448, + "id": 5969, "implemented": true, "kind": "function", "modifiers": [], @@ -61291,17 +61291,17 @@ "nameLocation": "10979:12:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5371, + "id": 5892, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5370, + "id": 5891, "mutability": "mutable", "name": "providerIds", "nameLocation": "11015:11:21", "nodeType": "VariableDeclaration", - "scope": 5448, + "scope": 5969, "src": "11001:25:21", "stateVariable": false, "storageLocation": "memory", @@ -61311,7 +61311,7 @@ }, "typeName": { "baseType": { - "id": 5368, + "id": 5889, "name": "uint", "nodeType": "ElementaryTypeName", "src": "11001:4:21", @@ -61320,7 +61320,7 @@ "typeString": "uint256" } }, - "id": 5369, + "id": 5890, "nodeType": "ArrayTypeName", "src": "11001:6:21", "typeDescriptions": { @@ -61334,50 +61334,50 @@ "src": "10991:41:21" }, "returnParameters": { - "id": 5376, + "id": 5897, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5375, + "id": 5896, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5448, + "scope": 5969, "src": "11056:26:21", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$4613_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr", "typeString": "struct LiquidityBridgeContract.LiquidityProvider[]" }, "typeName": { "baseType": { - "id": 5373, + "id": 5894, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 5372, + "id": 5893, "name": "LiquidityProvider", "nameLocations": [ "11056:17:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 4613, + "referencedDeclaration": 5134, "src": "11056:17:21" }, - "referencedDeclaration": 4613, + "referencedDeclaration": 5134, "src": "11056:17:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$4613_storage_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage_ptr", "typeString": "struct LiquidityBridgeContract.LiquidityProvider" } }, - "id": 5374, + "id": 5895, "nodeType": "ArrayTypeName", "src": "11056:19:21", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$4613_storage_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_storage_$dyn_storage_ptr", "typeString": "struct LiquidityBridgeContract.LiquidityProvider[]" } }, @@ -61386,7 +61386,7 @@ ], "src": "11055:28:21" }, - "scope": 7377, + "scope": 7898, "src": "10970:732:21", "stateMutability": "view", "virtual": false, @@ -61394,34 +61394,34 @@ }, { "body": { - "id": 5469, + "id": 5990, "nodeType": "Block", "src": "11843:108:21", "statements": [ { "expression": { - "id": 5460, + "id": 5981, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 5454, + "id": 5975, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4762, + "referencedDeclaration": 5283, "src": "11853:10:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5457, + "id": 5978, "indexExpression": { "expression": { - "id": 5455, + "id": 5976, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -61432,7 +61432,7 @@ "typeString": "msg" } }, - "id": 5456, + "id": 5977, "isConstant": false, "isLValue": false, "isPure": false, @@ -61461,7 +61461,7 @@ "operator": "+=", "rightHandSide": { "expression": { - "id": 5458, + "id": 5979, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -61472,7 +61472,7 @@ "typeString": "msg" } }, - "id": 5459, + "id": 5980, "isConstant": false, "isLValue": false, "isPure": false, @@ -61492,7 +61492,7 @@ "typeString": "uint256" } }, - "id": 5461, + "id": 5982, "nodeType": "ExpressionStatement", "src": "11853:35:21" }, @@ -61501,7 +61501,7 @@ "arguments": [ { "expression": { - "id": 5463, + "id": 5984, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -61512,7 +61512,7 @@ "typeString": "msg" } }, - "id": 5464, + "id": 5985, "isConstant": false, "isLValue": false, "isPure": false, @@ -61528,7 +61528,7 @@ }, { "expression": { - "id": 5465, + "id": 5986, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -61539,7 +61539,7 @@ "typeString": "msg" } }, - "id": 5466, + "id": 5987, "isConstant": false, "isLValue": false, "isPure": false, @@ -61565,18 +61565,18 @@ "typeString": "uint256" } ], - "id": 5462, + "id": 5983, "name": "CollateralIncrease", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4633, + "referencedDeclaration": 5154, "src": "11903:18:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 5467, + "id": 5988, "isConstant": false, "isLValue": false, "isPure": false, @@ -61592,34 +61592,34 @@ "typeString": "tuple()" } }, - "id": 5468, + "id": 5989, "nodeType": "EmitStatement", "src": "11898:46:21" } ] }, "documentation": { - "id": 5449, + "id": 5970, "nodeType": "StructuredDocumentation", "src": "11708:73:21", "text": "@dev Increases the amount of collateral of the sender" }, "functionSelector": "9e816999", - "id": 5470, + "id": 5991, "implemented": true, "kind": "function", "modifiers": [ { - "id": 5452, + "id": 5973, "kind": "modifierInvocation", "modifierName": { - "id": 5451, + "id": 5972, "name": "onlyRegistered", "nameLocations": [ "11828:14:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 4822, + "referencedDeclaration": 5343, "src": "11828:14:21" }, "nodeType": "ModifierInvocation", @@ -61630,18 +61630,18 @@ "nameLocation": "11795:13:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5450, + "id": 5971, "nodeType": "ParameterList", "parameters": [], "src": "11808:2:21" }, "returnParameters": { - "id": 5453, + "id": 5974, "nodeType": "ParameterList", "parameters": [], "src": "11843:0:21" }, - "scope": 7377, + "scope": 7898, "src": "11786:165:21", "stateMutability": "payable", "virtual": false, @@ -61649,34 +61649,34 @@ }, { "body": { - "id": 5490, + "id": 6011, "nodeType": "Block", "src": "12029:120:21", "statements": [ { "expression": { - "id": 5481, + "id": 6002, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 5475, + "id": 5996, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4766, + "referencedDeclaration": 5287, "src": "12039:16:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5478, + "id": 5999, "indexExpression": { "expression": { - "id": 5476, + "id": 5997, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -61687,7 +61687,7 @@ "typeString": "msg" } }, - "id": 5477, + "id": 5998, "isConstant": false, "isLValue": false, "isPure": false, @@ -61716,7 +61716,7 @@ "operator": "+=", "rightHandSide": { "expression": { - "id": 5479, + "id": 6000, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -61727,7 +61727,7 @@ "typeString": "msg" } }, - "id": 5480, + "id": 6001, "isConstant": false, "isLValue": false, "isPure": false, @@ -61747,7 +61747,7 @@ "typeString": "uint256" } }, - "id": 5482, + "id": 6003, "nodeType": "ExpressionStatement", "src": "12039:41:21" }, @@ -61756,7 +61756,7 @@ "arguments": [ { "expression": { - "id": 5484, + "id": 6005, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -61767,7 +61767,7 @@ "typeString": "msg" } }, - "id": 5485, + "id": 6006, "isConstant": false, "isLValue": false, "isPure": false, @@ -61783,7 +61783,7 @@ }, { "expression": { - "id": 5486, + "id": 6007, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -61794,7 +61794,7 @@ "typeString": "msg" } }, - "id": 5487, + "id": 6008, "isConstant": false, "isLValue": false, "isPure": false, @@ -61820,18 +61820,18 @@ "typeString": "uint256" } ], - "id": 5483, + "id": 6004, "name": "PegoutCollateralIncrease", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4639, + "referencedDeclaration": 5160, "src": "12095:24:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 5488, + "id": 6009, "isConstant": false, "isLValue": false, "isPure": false, @@ -61847,28 +61847,28 @@ "typeString": "tuple()" } }, - "id": 5489, + "id": 6010, "nodeType": "EmitStatement", "src": "12090:52:21" } ] }, "functionSelector": "4198687e", - "id": 5491, + "id": 6012, "implemented": true, "kind": "function", "modifiers": [ { - "id": 5473, + "id": 5994, "kind": "modifierInvocation", "modifierName": { - "id": 5472, + "id": 5993, "name": "onlyRegisteredForPegout", "nameLocations": [ "12005:23:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 4834, + "referencedDeclaration": 5355, "src": "12005:23:21" }, "nodeType": "ModifierInvocation", @@ -61879,18 +61879,18 @@ "nameLocation": "11966:19:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5471, + "id": 5992, "nodeType": "ParameterList", "parameters": [], "src": "11985:2:21" }, "returnParameters": { - "id": 5474, + "id": 5995, "nodeType": "ParameterList", "parameters": [], "src": "12029:0:21" }, - "scope": 7377, + "scope": 7898, "src": "11957:192:21", "stateMutability": "payable", "virtual": false, @@ -61898,7 +61898,7 @@ }, { "body": { - "id": 5504, + "id": 6025, "nodeType": "Block", "src": "12271:55:21", "statements": [ @@ -61907,7 +61907,7 @@ "arguments": [ { "expression": { - "id": 5498, + "id": 6019, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -61918,7 +61918,7 @@ "typeString": "msg" } }, - "id": 5499, + "id": 6020, "isConstant": false, "isLValue": false, "isPure": false, @@ -61934,7 +61934,7 @@ }, { "expression": { - "id": 5500, + "id": 6021, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -61945,7 +61945,7 @@ "typeString": "msg" } }, - "id": 5501, + "id": 6022, "isConstant": false, "isLValue": false, "isPure": false, @@ -61971,18 +61971,18 @@ "typeString": "uint256" } ], - "id": 5497, + "id": 6018, "name": "increaseBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6993, + "referencedDeclaration": 7514, "src": "12281:15:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 5502, + "id": 6023, "isConstant": false, "isLValue": false, "isPure": false, @@ -61998,34 +61998,34 @@ "typeString": "tuple()" } }, - "id": 5503, + "id": 6024, "nodeType": "ExpressionStatement", "src": "12281:38:21" } ] }, "documentation": { - "id": 5492, + "id": 6013, "nodeType": "StructuredDocumentation", "src": "12155:60:21", "text": "@dev Increases the balance of the sender" }, "functionSelector": "d0e30db0", - "id": 5505, + "id": 6026, "implemented": true, "kind": "function", "modifiers": [ { - "id": 5495, + "id": 6016, "kind": "modifierInvocation", "modifierName": { - "id": 5494, + "id": 6015, "name": "onlyRegistered", "nameLocations": [ "12256:14:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 4822, + "referencedDeclaration": 5343, "src": "12256:14:21" }, "nodeType": "ModifierInvocation", @@ -62036,18 +62036,18 @@ "nameLocation": "12229:7:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5493, + "id": 6014, "nodeType": "ParameterList", "parameters": [], "src": "12236:2:21" }, "returnParameters": { - "id": 5496, + "id": 6017, "nodeType": "ParameterList", "parameters": [], "src": "12271:0:21" }, - "scope": 7377, + "scope": 7898, "src": "12220:106:21", "stateMutability": "payable", "virtual": false, @@ -62055,7 +62055,7 @@ }, { "body": { - "id": 5549, + "id": 6070, "nodeType": "Block", "src": "12472:249:21", "statements": [ @@ -62067,28 +62067,28 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5517, + "id": 6038, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 5512, + "id": 6033, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4758, + "referencedDeclaration": 5279, "src": "12490:8:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5515, + "id": 6036, "indexExpression": { "expression": { - "id": 5513, + "id": 6034, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -62099,7 +62099,7 @@ "typeString": "msg" } }, - "id": 5514, + "id": 6035, "isConstant": false, "isLValue": false, "isPure": false, @@ -62127,11 +62127,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 5516, + "id": 6037, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5508, + "referencedDeclaration": 6029, "src": "12514:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -62146,7 +62146,7 @@ }, { "hexValue": "4c4243303139", - "id": 5518, + "id": 6039, "isConstant": false, "isLValue": false, "isPure": true, @@ -62172,7 +62172,7 @@ "typeString": "literal_string \"LBC019\"" } ], - "id": 5511, + "id": 6032, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -62186,7 +62186,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5519, + "id": 6040, "isConstant": false, "isLValue": false, "isPure": false, @@ -62202,34 +62202,34 @@ "typeString": "tuple()" } }, - "id": 5520, + "id": 6041, "nodeType": "ExpressionStatement", "src": "12482:49:21" }, { "expression": { - "id": 5526, + "id": 6047, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 5521, + "id": 6042, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4758, + "referencedDeclaration": 5279, "src": "12541:8:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5524, + "id": 6045, "indexExpression": { "expression": { - "id": 5522, + "id": 6043, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -62240,7 +62240,7 @@ "typeString": "msg" } }, - "id": 5523, + "id": 6044, "isConstant": false, "isLValue": false, "isPure": false, @@ -62268,11 +62268,11 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 5525, + "id": 6046, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5508, + "referencedDeclaration": 6029, "src": "12565:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -62285,24 +62285,24 @@ "typeString": "uint256" } }, - "id": 5527, + "id": 6048, "nodeType": "ExpressionStatement", "src": "12541:30:21" }, { "assignments": [ - 5529, + 6050, null ], "declarations": [ { "constant": false, - "id": 5529, + "id": 6050, "mutability": "mutable", "name": "success", "nameLocation": "12587:7:21", "nodeType": "VariableDeclaration", - "scope": 5549, + "scope": 6070, "src": "12582:12:21", "stateVariable": false, "storageLocation": "default", @@ -62311,7 +62311,7 @@ "typeString": "bool" }, "typeName": { - "id": 5528, + "id": 6049, "name": "bool", "nodeType": "ElementaryTypeName", "src": "12582:4:21", @@ -62324,12 +62324,12 @@ }, null ], - "id": 5537, + "id": 6058, "initialValue": { "arguments": [ { "hexValue": "", - "id": 5535, + "id": 6056, "isConstant": false, "isLValue": false, "isPure": true, @@ -62360,7 +62360,7 @@ ], "expression": { "expression": { - "id": 5530, + "id": 6051, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -62371,7 +62371,7 @@ "typeString": "msg" } }, - "id": 5531, + "id": 6052, "isConstant": false, "isLValue": false, "isPure": false, @@ -62385,7 +62385,7 @@ "typeString": "address" } }, - "id": 5532, + "id": 6053, "isConstant": false, "isLValue": false, "isPure": false, @@ -62399,7 +62399,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 5534, + "id": 6055, "isConstant": false, "isLValue": false, "isPure": false, @@ -62410,11 +62410,11 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 5533, + "id": 6054, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5508, + "referencedDeclaration": 6029, "src": "12622:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -62428,7 +62428,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 5536, + "id": 6057, "isConstant": false, "isLValue": false, "isPure": false, @@ -62451,11 +62451,11 @@ "expression": { "arguments": [ { - "id": 5539, + "id": 6060, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5529, + "referencedDeclaration": 6050, "src": "12651:7:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -62464,7 +62464,7 @@ }, { "hexValue": "4c4243303230", - "id": 5540, + "id": 6061, "isConstant": false, "isLValue": false, "isPure": true, @@ -62490,7 +62490,7 @@ "typeString": "literal_string \"LBC020\"" } ], - "id": 5538, + "id": 6059, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -62504,7 +62504,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5541, + "id": 6062, "isConstant": false, "isLValue": false, "isPure": false, @@ -62520,7 +62520,7 @@ "typeString": "tuple()" } }, - "id": 5542, + "id": 6063, "nodeType": "ExpressionStatement", "src": "12643:26:21" }, @@ -62529,7 +62529,7 @@ "arguments": [ { "expression": { - "id": 5544, + "id": 6065, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -62540,7 +62540,7 @@ "typeString": "msg" } }, - "id": 5545, + "id": 6066, "isConstant": false, "isLValue": false, "isPure": false, @@ -62555,11 +62555,11 @@ } }, { - "id": 5546, + "id": 6067, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5508, + "referencedDeclaration": 6029, "src": "12707:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -62578,18 +62578,18 @@ "typeString": "uint256" } ], - "id": 5543, + "id": 6064, "name": "Withdrawal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4645, + "referencedDeclaration": 5166, "src": "12684:10:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 5547, + "id": 6068, "isConstant": false, "isLValue": false, "isPure": false, @@ -62605,20 +62605,20 @@ "typeString": "tuple()" } }, - "id": 5548, + "id": 6069, "nodeType": "EmitStatement", "src": "12679:35:21" } ] }, "documentation": { - "id": 5506, + "id": 6027, "nodeType": "StructuredDocumentation", "src": "12332:92:21", "text": "@dev Used to withdraw funds\n@param amount The amount to withdraw" }, "functionSelector": "2e1a7d4d", - "id": 5550, + "id": 6071, "implemented": true, "kind": "function", "modifiers": [], @@ -62626,17 +62626,17 @@ "nameLocation": "12438:8:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5509, + "id": 6030, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5508, + "id": 6029, "mutability": "mutable", "name": "amount", "nameLocation": "12455:6:21", "nodeType": "VariableDeclaration", - "scope": 5550, + "scope": 6071, "src": "12447:14:21", "stateVariable": false, "storageLocation": "default", @@ -62645,7 +62645,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5507, + "id": 6028, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "12447:7:21", @@ -62660,12 +62660,12 @@ "src": "12446:16:21" }, "returnParameters": { - "id": 5510, + "id": 6031, "nodeType": "ParameterList", "parameters": [], "src": "12472:0:21" }, - "scope": 7377, + "scope": 7898, "src": "12429:292:21", "stateMutability": "nonpayable", "virtual": false, @@ -62673,7 +62673,7 @@ }, { "body": { - "id": 5619, + "id": 6140, "nodeType": "Block", "src": "12834:493:21", "statements": [ @@ -62685,28 +62685,28 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5560, + "id": 6081, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 5555, + "id": 6076, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4780, + "referencedDeclaration": 5301, "src": "12852:19:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5558, + "id": 6079, "indexExpression": { "expression": { - "id": 5556, + "id": 6077, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -62717,7 +62717,7 @@ "typeString": "msg" } }, - "id": 5557, + "id": 6078, "isConstant": false, "isLValue": false, "isPure": false, @@ -62746,7 +62746,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 5559, + "id": 6080, "isConstant": false, "isLValue": false, "isPure": true, @@ -62768,7 +62768,7 @@ }, { "hexValue": "4c4243303231", - "id": 5561, + "id": 6082, "isConstant": false, "isLValue": false, "isPure": true, @@ -62794,7 +62794,7 @@ "typeString": "literal_string \"LBC021\"" } ], - "id": 5554, + "id": 6075, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -62808,7 +62808,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5562, + "id": 6083, "isConstant": false, "isLValue": false, "isPure": false, @@ -62824,7 +62824,7 @@ "typeString": "tuple()" } }, - "id": 5563, + "id": 6084, "nodeType": "ExpressionStatement", "src": "12844:54:21" }, @@ -62836,7 +62836,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5573, + "id": 6094, "isConstant": false, "isLValue": false, "isPure": false, @@ -62846,14 +62846,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5571, + "id": 6092, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 5565, + "id": 6086, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -62864,7 +62864,7 @@ "typeString": "block" } }, - "id": 5566, + "id": 6087, "isConstant": false, "isLValue": false, "isPure": false, @@ -62882,21 +62882,21 @@ "operator": "-", "rightExpression": { "baseExpression": { - "id": 5567, + "id": 6088, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4780, + "referencedDeclaration": 5301, "src": "12944:19:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5570, + "id": 6091, "indexExpression": { "expression": { - "id": 5568, + "id": 6089, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -62907,7 +62907,7 @@ "typeString": "msg" } }, - "id": 5569, + "id": 6090, "isConstant": false, "isLValue": false, "isPure": false, @@ -62941,11 +62941,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 5572, + "id": 6093, "name": "resignDelayInBlocks", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4788, + "referencedDeclaration": 5309, "src": "12991:19:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -62960,7 +62960,7 @@ }, { "hexValue": "4c4243303232", - "id": 5574, + "id": 6095, "isConstant": false, "isLValue": false, "isPure": true, @@ -62986,7 +62986,7 @@ "typeString": "literal_string \"LBC022\"" } ], - "id": 5564, + "id": 6085, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -63000,7 +63000,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5575, + "id": 6096, "isConstant": false, "isLValue": false, "isPure": false, @@ -63016,23 +63016,23 @@ "typeString": "tuple()" } }, - "id": 5576, + "id": 6097, "nodeType": "ExpressionStatement", "src": "12908:134:21" }, { "assignments": [ - 5578 + 6099 ], "declarations": [ { "constant": false, - "id": 5578, + "id": 6099, "mutability": "mutable", "name": "amount", "nameLocation": "13057:6:21", "nodeType": "VariableDeclaration", - "scope": 5619, + "scope": 6140, "src": "13052:11:21", "stateVariable": false, "storageLocation": "default", @@ -63041,7 +63041,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5577, + "id": 6098, "name": "uint", "nodeType": "ElementaryTypeName", "src": "13052:4:21", @@ -63053,24 +63053,24 @@ "visibility": "internal" } ], - "id": 5583, + "id": 6104, "initialValue": { "baseExpression": { - "id": 5579, + "id": 6100, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4762, + "referencedDeclaration": 5283, "src": "13066:10:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5582, + "id": 6103, "indexExpression": { "expression": { - "id": 5580, + "id": 6101, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -63081,7 +63081,7 @@ "typeString": "msg" } }, - "id": 5581, + "id": 6102, "isConstant": false, "isLValue": false, "isPure": false, @@ -63111,28 +63111,28 @@ }, { "expression": { - "id": 5589, + "id": 6110, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 5584, + "id": 6105, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4762, + "referencedDeclaration": 5283, "src": "13098:10:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5587, + "id": 6108, "indexExpression": { "expression": { - "id": 5585, + "id": 6106, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -63143,7 +63143,7 @@ "typeString": "msg" } }, - "id": 5586, + "id": 6107, "isConstant": false, "isLValue": false, "isPure": false, @@ -63172,7 +63172,7 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 5588, + "id": 6109, "isConstant": false, "isLValue": false, "isPure": true, @@ -63192,34 +63192,34 @@ "typeString": "uint256" } }, - "id": 5590, + "id": 6111, "nodeType": "ExpressionStatement", "src": "13098:26:21" }, { "expression": { - "id": 5596, + "id": 6117, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 5591, + "id": 6112, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4780, + "referencedDeclaration": 5301, "src": "13134:19:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5594, + "id": 6115, "indexExpression": { "expression": { - "id": 5592, + "id": 6113, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -63230,7 +63230,7 @@ "typeString": "msg" } }, - "id": 5593, + "id": 6114, "isConstant": false, "isLValue": false, "isPure": false, @@ -63259,7 +63259,7 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 5595, + "id": 6116, "isConstant": false, "isLValue": false, "isPure": true, @@ -63279,24 +63279,24 @@ "typeString": "uint256" } }, - "id": 5597, + "id": 6118, "nodeType": "ExpressionStatement", "src": "13134:35:21" }, { "assignments": [ - 5599, + 6120, null ], "declarations": [ { "constant": false, - "id": 5599, + "id": 6120, "mutability": "mutable", "name": "success", "nameLocation": "13185:7:21", "nodeType": "VariableDeclaration", - "scope": 5619, + "scope": 6140, "src": "13180:12:21", "stateVariable": false, "storageLocation": "default", @@ -63305,7 +63305,7 @@ "typeString": "bool" }, "typeName": { - "id": 5598, + "id": 6119, "name": "bool", "nodeType": "ElementaryTypeName", "src": "13180:4:21", @@ -63318,12 +63318,12 @@ }, null ], - "id": 5607, + "id": 6128, "initialValue": { "arguments": [ { "hexValue": "", - "id": 5605, + "id": 6126, "isConstant": false, "isLValue": false, "isPure": true, @@ -63354,7 +63354,7 @@ ], "expression": { "expression": { - "id": 5600, + "id": 6121, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -63365,7 +63365,7 @@ "typeString": "msg" } }, - "id": 5601, + "id": 6122, "isConstant": false, "isLValue": false, "isPure": false, @@ -63379,7 +63379,7 @@ "typeString": "address" } }, - "id": 5602, + "id": 6123, "isConstant": false, "isLValue": false, "isPure": false, @@ -63393,7 +63393,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 5604, + "id": 6125, "isConstant": false, "isLValue": false, "isPure": false, @@ -63404,11 +63404,11 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 5603, + "id": 6124, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5578, + "referencedDeclaration": 6099, "src": "13220:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -63422,7 +63422,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 5606, + "id": 6127, "isConstant": false, "isLValue": false, "isPure": false, @@ -63445,11 +63445,11 @@ "expression": { "arguments": [ { - "id": 5609, + "id": 6130, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5599, + "referencedDeclaration": 6120, "src": "13249:7:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -63458,7 +63458,7 @@ }, { "hexValue": "4c4243303230", - "id": 5610, + "id": 6131, "isConstant": false, "isLValue": false, "isPure": true, @@ -63484,7 +63484,7 @@ "typeString": "literal_string \"LBC020\"" } ], - "id": 5608, + "id": 6129, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -63498,7 +63498,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5611, + "id": 6132, "isConstant": false, "isLValue": false, "isPure": false, @@ -63514,7 +63514,7 @@ "typeString": "tuple()" } }, - "id": 5612, + "id": 6133, "nodeType": "ExpressionStatement", "src": "13241:26:21" }, @@ -63523,7 +63523,7 @@ "arguments": [ { "expression": { - "id": 5614, + "id": 6135, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -63534,7 +63534,7 @@ "typeString": "msg" } }, - "id": 5615, + "id": 6136, "isConstant": false, "isLValue": false, "isPure": false, @@ -63549,11 +63549,11 @@ } }, { - "id": 5616, + "id": 6137, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5578, + "referencedDeclaration": 6099, "src": "13313:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -63572,18 +63572,18 @@ "typeString": "uint256" } ], - "id": 5613, + "id": 6134, "name": "WithdrawCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4651, + "referencedDeclaration": 5172, "src": "13282:18:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 5617, + "id": 6138, "isConstant": false, "isLValue": false, "isPure": false, @@ -63599,20 +63599,20 @@ "typeString": "tuple()" } }, - "id": 5618, + "id": 6139, "nodeType": "EmitStatement", "src": "13277:43:21" } ] }, "documentation": { - "id": 5551, + "id": 6072, "nodeType": "StructuredDocumentation", "src": "12727:63:21", "text": "@dev Used to withdraw the locked collateral" }, "functionSelector": "59c153be", - "id": 5620, + "id": 6141, "implemented": true, "kind": "function", "modifiers": [], @@ -63620,18 +63620,18 @@ "nameLocation": "12804:18:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5552, + "id": 6073, "nodeType": "ParameterList", "parameters": [], "src": "12822:2:21" }, "returnParameters": { - "id": 5553, + "id": 6074, "nodeType": "ParameterList", "parameters": [], "src": "12834:0:21" }, - "scope": 7377, + "scope": 7898, "src": "12795:532:21", "stateMutability": "nonpayable", "virtual": false, @@ -63639,7 +63639,7 @@ }, { "body": { - "id": 5688, + "id": 6209, "nodeType": "Block", "src": "13378:511:21", "statements": [ @@ -63651,28 +63651,28 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5629, + "id": 6150, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 5624, + "id": 6145, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4780, + "referencedDeclaration": 5301, "src": "13396:19:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5627, + "id": 6148, "indexExpression": { "expression": { - "id": 5625, + "id": 6146, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -63683,7 +63683,7 @@ "typeString": "msg" } }, - "id": 5626, + "id": 6147, "isConstant": false, "isLValue": false, "isPure": false, @@ -63712,7 +63712,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 5628, + "id": 6149, "isConstant": false, "isLValue": false, "isPure": true, @@ -63734,7 +63734,7 @@ }, { "hexValue": "4c4243303231", - "id": 5630, + "id": 6151, "isConstant": false, "isLValue": false, "isPure": true, @@ -63760,7 +63760,7 @@ "typeString": "literal_string \"LBC021\"" } ], - "id": 5623, + "id": 6144, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -63774,7 +63774,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5631, + "id": 6152, "isConstant": false, "isLValue": false, "isPure": false, @@ -63790,7 +63790,7 @@ "typeString": "tuple()" } }, - "id": 5632, + "id": 6153, "nodeType": "ExpressionStatement", "src": "13388:54:21" }, @@ -63802,7 +63802,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5642, + "id": 6163, "isConstant": false, "isLValue": false, "isPure": false, @@ -63812,14 +63812,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5640, + "id": 6161, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 5634, + "id": 6155, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -63830,7 +63830,7 @@ "typeString": "block" } }, - "id": 5635, + "id": 6156, "isConstant": false, "isLValue": false, "isPure": false, @@ -63848,21 +63848,21 @@ "operator": "-", "rightExpression": { "baseExpression": { - "id": 5636, + "id": 6157, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4780, + "referencedDeclaration": 5301, "src": "13488:19:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5639, + "id": 6160, "indexExpression": { "expression": { - "id": 5637, + "id": 6158, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -63873,7 +63873,7 @@ "typeString": "msg" } }, - "id": 5638, + "id": 6159, "isConstant": false, "isLValue": false, "isPure": false, @@ -63907,11 +63907,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 5641, + "id": 6162, "name": "resignDelayInBlocks", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4788, + "referencedDeclaration": 5309, "src": "13535:19:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -63926,7 +63926,7 @@ }, { "hexValue": "4c4243303232", - "id": 5643, + "id": 6164, "isConstant": false, "isLValue": false, "isPure": true, @@ -63952,7 +63952,7 @@ "typeString": "literal_string \"LBC022\"" } ], - "id": 5633, + "id": 6154, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -63966,7 +63966,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5644, + "id": 6165, "isConstant": false, "isLValue": false, "isPure": false, @@ -63982,23 +63982,23 @@ "typeString": "tuple()" } }, - "id": 5645, + "id": 6166, "nodeType": "ExpressionStatement", "src": "13452:134:21" }, { "assignments": [ - 5647 + 6168 ], "declarations": [ { "constant": false, - "id": 5647, + "id": 6168, "mutability": "mutable", "name": "amount", "nameLocation": "13601:6:21", "nodeType": "VariableDeclaration", - "scope": 5688, + "scope": 6209, "src": "13596:11:21", "stateVariable": false, "storageLocation": "default", @@ -64007,7 +64007,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5646, + "id": 6167, "name": "uint", "nodeType": "ElementaryTypeName", "src": "13596:4:21", @@ -64019,24 +64019,24 @@ "visibility": "internal" } ], - "id": 5652, + "id": 6173, "initialValue": { "baseExpression": { - "id": 5648, + "id": 6169, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4766, + "referencedDeclaration": 5287, "src": "13610:16:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5651, + "id": 6172, "indexExpression": { "expression": { - "id": 5649, + "id": 6170, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -64047,7 +64047,7 @@ "typeString": "msg" } }, - "id": 5650, + "id": 6171, "isConstant": false, "isLValue": false, "isPure": false, @@ -64077,28 +64077,28 @@ }, { "expression": { - "id": 5658, + "id": 6179, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 5653, + "id": 6174, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4766, + "referencedDeclaration": 5287, "src": "13648:16:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5656, + "id": 6177, "indexExpression": { "expression": { - "id": 5654, + "id": 6175, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -64109,7 +64109,7 @@ "typeString": "msg" } }, - "id": 5655, + "id": 6176, "isConstant": false, "isLValue": false, "isPure": false, @@ -64138,7 +64138,7 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 5657, + "id": 6178, "isConstant": false, "isLValue": false, "isPure": true, @@ -64158,34 +64158,34 @@ "typeString": "uint256" } }, - "id": 5659, + "id": 6180, "nodeType": "ExpressionStatement", "src": "13648:32:21" }, { "expression": { - "id": 5665, + "id": 6186, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 5660, + "id": 6181, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4780, + "referencedDeclaration": 5301, "src": "13690:19:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5663, + "id": 6184, "indexExpression": { "expression": { - "id": 5661, + "id": 6182, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -64196,7 +64196,7 @@ "typeString": "msg" } }, - "id": 5662, + "id": 6183, "isConstant": false, "isLValue": false, "isPure": false, @@ -64225,7 +64225,7 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 5664, + "id": 6185, "isConstant": false, "isLValue": false, "isPure": true, @@ -64245,24 +64245,24 @@ "typeString": "uint256" } }, - "id": 5666, + "id": 6187, "nodeType": "ExpressionStatement", "src": "13690:35:21" }, { "assignments": [ - 5668, + 6189, null ], "declarations": [ { "constant": false, - "id": 5668, + "id": 6189, "mutability": "mutable", "name": "success", "nameLocation": "13741:7:21", "nodeType": "VariableDeclaration", - "scope": 5688, + "scope": 6209, "src": "13736:12:21", "stateVariable": false, "storageLocation": "default", @@ -64271,7 +64271,7 @@ "typeString": "bool" }, "typeName": { - "id": 5667, + "id": 6188, "name": "bool", "nodeType": "ElementaryTypeName", "src": "13736:4:21", @@ -64284,12 +64284,12 @@ }, null ], - "id": 5676, + "id": 6197, "initialValue": { "arguments": [ { "hexValue": "", - "id": 5674, + "id": 6195, "isConstant": false, "isLValue": false, "isPure": true, @@ -64320,7 +64320,7 @@ ], "expression": { "expression": { - "id": 5669, + "id": 6190, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -64331,7 +64331,7 @@ "typeString": "msg" } }, - "id": 5670, + "id": 6191, "isConstant": false, "isLValue": false, "isPure": false, @@ -64345,7 +64345,7 @@ "typeString": "address" } }, - "id": 5671, + "id": 6192, "isConstant": false, "isLValue": false, "isPure": false, @@ -64359,7 +64359,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 5673, + "id": 6194, "isConstant": false, "isLValue": false, "isPure": false, @@ -64370,11 +64370,11 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 5672, + "id": 6193, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5647, + "referencedDeclaration": 6168, "src": "13776:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -64388,7 +64388,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 5675, + "id": 6196, "isConstant": false, "isLValue": false, "isPure": false, @@ -64411,11 +64411,11 @@ "expression": { "arguments": [ { - "id": 5678, + "id": 6199, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5668, + "referencedDeclaration": 6189, "src": "13805:7:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -64424,7 +64424,7 @@ }, { "hexValue": "4c4243303230", - "id": 5679, + "id": 6200, "isConstant": false, "isLValue": false, "isPure": true, @@ -64450,7 +64450,7 @@ "typeString": "literal_string \"LBC020\"" } ], - "id": 5677, + "id": 6198, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -64464,7 +64464,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5680, + "id": 6201, "isConstant": false, "isLValue": false, "isPure": false, @@ -64480,7 +64480,7 @@ "typeString": "tuple()" } }, - "id": 5681, + "id": 6202, "nodeType": "ExpressionStatement", "src": "13797:26:21" }, @@ -64489,7 +64489,7 @@ "arguments": [ { "expression": { - "id": 5683, + "id": 6204, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -64500,7 +64500,7 @@ "typeString": "msg" } }, - "id": 5684, + "id": 6205, "isConstant": false, "isLValue": false, "isPure": false, @@ -64515,11 +64515,11 @@ } }, { - "id": 5685, + "id": 6206, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5647, + "referencedDeclaration": 6168, "src": "13875:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -64538,18 +64538,18 @@ "typeString": "uint256" } ], - "id": 5682, + "id": 6203, "name": "PegoutWithdrawCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4657, + "referencedDeclaration": 5178, "src": "13838:24:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 5686, + "id": 6207, "isConstant": false, "isLValue": false, "isPure": false, @@ -64565,14 +64565,14 @@ "typeString": "tuple()" } }, - "id": 5687, + "id": 6208, "nodeType": "EmitStatement", "src": "13833:49:21" } ] }, "functionSelector": "35510a7d", - "id": 5689, + "id": 6210, "implemented": true, "kind": "function", "modifiers": [], @@ -64580,18 +64580,18 @@ "nameLocation": "13342:24:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5621, + "id": 6142, "nodeType": "ParameterList", "parameters": [], "src": "13366:2:21" }, "returnParameters": { - "id": 5622, + "id": 6143, "nodeType": "ParameterList", "parameters": [], "src": "13378:0:21" }, - "scope": 7377, + "scope": 7898, "src": "13333:556:21", "stateMutability": "nonpayable", "virtual": false, @@ -64599,7 +64599,7 @@ }, { "body": { - "id": 5718, + "id": 6239, "nodeType": "Block", "src": "14005:163:21", "statements": [ @@ -64611,28 +64611,28 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5701, + "id": 6222, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 5696, + "id": 6217, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4780, + "referencedDeclaration": 5301, "src": "14023:19:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5699, + "id": 6220, "indexExpression": { "expression": { - "id": 5697, + "id": 6218, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -64643,7 +64643,7 @@ "typeString": "msg" } }, - "id": 5698, + "id": 6219, "isConstant": false, "isLValue": false, "isPure": false, @@ -64672,7 +64672,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 5700, + "id": 6221, "isConstant": false, "isLValue": false, "isPure": true, @@ -64694,7 +64694,7 @@ }, { "hexValue": "4c4243303233", - "id": 5702, + "id": 6223, "isConstant": false, "isLValue": false, "isPure": true, @@ -64720,7 +64720,7 @@ "typeString": "literal_string \"LBC023\"" } ], - "id": 5695, + "id": 6216, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -64734,7 +64734,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5703, + "id": 6224, "isConstant": false, "isLValue": false, "isPure": false, @@ -64750,34 +64750,34 @@ "typeString": "tuple()" } }, - "id": 5704, + "id": 6225, "nodeType": "ExpressionStatement", "src": "14015:55:21" }, { "expression": { - "id": 5711, + "id": 6232, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 5705, + "id": 6226, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4780, + "referencedDeclaration": 5301, "src": "14080:19:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5708, + "id": 6229, "indexExpression": { "expression": { - "id": 5706, + "id": 6227, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -64788,7 +64788,7 @@ "typeString": "msg" } }, - "id": 5707, + "id": 6228, "isConstant": false, "isLValue": false, "isPure": false, @@ -64817,7 +64817,7 @@ "operator": "=", "rightHandSide": { "expression": { - "id": 5709, + "id": 6230, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -64828,7 +64828,7 @@ "typeString": "block" } }, - "id": 5710, + "id": 6231, "isConstant": false, "isLValue": false, "isPure": false, @@ -64848,7 +64848,7 @@ "typeString": "uint256" } }, - "id": 5712, + "id": 6233, "nodeType": "ExpressionStatement", "src": "14080:46:21" }, @@ -64857,7 +64857,7 @@ "arguments": [ { "expression": { - "id": 5714, + "id": 6235, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -64868,7 +64868,7 @@ "typeString": "msg" } }, - "id": 5715, + "id": 6236, "isConstant": false, "isLValue": false, "isPure": false, @@ -64890,18 +64890,18 @@ "typeString": "address" } ], - "id": 5713, + "id": 6234, "name": "Resigned", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4661, + "referencedDeclaration": 5182, "src": "14141:8:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 5716, + "id": 6237, "isConstant": false, "isLValue": false, "isPure": false, @@ -64917,34 +64917,34 @@ "typeString": "tuple()" } }, - "id": 5717, + "id": 6238, "nodeType": "EmitStatement", "src": "14136:25:21" } ] }, "documentation": { - "id": 5690, + "id": 6211, "nodeType": "StructuredDocumentation", "src": "13895:63:21", "text": "@dev Used to resign as a liquidity provider" }, "functionSelector": "69652fcf", - "id": 5719, + "id": 6240, "implemented": true, "kind": "function", "modifiers": [ { - "id": 5693, + "id": 6214, "kind": "modifierInvocation", "modifierName": { - "id": 5692, + "id": 6213, "name": "onlyRegistered", "nameLocations": [ "13990:14:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 4822, + "referencedDeclaration": 5343, "src": "13990:14:21" }, "nodeType": "ModifierInvocation", @@ -64955,18 +64955,18 @@ "nameLocation": "13972:6:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5691, + "id": 6212, "nodeType": "ParameterList", "parameters": [], "src": "13978:2:21" }, "returnParameters": { - "id": 5694, + "id": 6215, "nodeType": "ParameterList", "parameters": [], "src": "14005:0:21" }, - "scope": 7377, + "scope": 7898, "src": "13963:205:21", "stateMutability": "nonpayable", "virtual": false, @@ -64974,31 +64974,31 @@ }, { "body": { - "id": 5731, + "id": 6252, "nodeType": "Block", "src": "14435:40:21", "statements": [ { "expression": { "baseExpression": { - "id": 5727, + "id": 6248, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4762, + "referencedDeclaration": 5283, "src": "14452:10:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5729, + "id": 6250, "indexExpression": { - "id": 5728, + "id": 6249, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5722, + "referencedDeclaration": 6243, "src": "14463:4:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -65016,21 +65016,21 @@ "typeString": "uint256" } }, - "functionReturnParameters": 5726, - "id": 5730, + "functionReturnParameters": 6247, + "id": 6251, "nodeType": "Return", "src": "14445:23:21" } ] }, "documentation": { - "id": 5720, + "id": 6241, "nodeType": "StructuredDocumentation", "src": "14174:187:21", "text": "@dev Returns the amount of collateral of a liquidity provider\n@param addr The address of the liquidity provider\n@return The amount of locked collateral" }, "functionSelector": "9b56d6c9", - "id": 5732, + "id": 6253, "implemented": true, "kind": "function", "modifiers": [], @@ -65038,17 +65038,17 @@ "nameLocation": "14375:13:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5723, + "id": 6244, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5722, + "id": 6243, "mutability": "mutable", "name": "addr", "nameLocation": "14397:4:21", "nodeType": "VariableDeclaration", - "scope": 5732, + "scope": 6253, "src": "14389:12:21", "stateVariable": false, "storageLocation": "default", @@ -65057,7 +65057,7 @@ "typeString": "address" }, "typeName": { - "id": 5721, + "id": 6242, "name": "address", "nodeType": "ElementaryTypeName", "src": "14389:7:21", @@ -65073,17 +65073,17 @@ "src": "14388:14:21" }, "returnParameters": { - "id": 5726, + "id": 6247, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5725, + "id": 6246, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5732, + "scope": 6253, "src": "14426:7:21", "stateVariable": false, "storageLocation": "default", @@ -65092,7 +65092,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5724, + "id": 6245, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "14426:7:21", @@ -65106,7 +65106,7 @@ ], "src": "14425:9:21" }, - "scope": 7377, + "scope": 7898, "src": "14366:109:21", "stateMutability": "view", "virtual": false, @@ -65114,31 +65114,31 @@ }, { "body": { - "id": 5743, + "id": 6264, "nodeType": "Block", "src": "14556:46:21", "statements": [ { "expression": { "baseExpression": { - "id": 5739, + "id": 6260, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4766, + "referencedDeclaration": 5287, "src": "14573:16:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5741, + "id": 6262, "indexExpression": { - "id": 5740, + "id": 6261, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5734, + "referencedDeclaration": 6255, "src": "14590:4:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -65156,15 +65156,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 5738, - "id": 5742, + "functionReturnParameters": 6259, + "id": 6263, "nodeType": "Return", "src": "14566:29:21" } ] }, "functionSelector": "bd519eff", - "id": 5744, + "id": 6265, "implemented": true, "kind": "function", "modifiers": [], @@ -65172,17 +65172,17 @@ "nameLocation": "14490:19:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5735, + "id": 6256, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5734, + "id": 6255, "mutability": "mutable", "name": "addr", "nameLocation": "14518:4:21", "nodeType": "VariableDeclaration", - "scope": 5744, + "scope": 6265, "src": "14510:12:21", "stateVariable": false, "storageLocation": "default", @@ -65191,7 +65191,7 @@ "typeString": "address" }, "typeName": { - "id": 5733, + "id": 6254, "name": "address", "nodeType": "ElementaryTypeName", "src": "14510:7:21", @@ -65207,17 +65207,17 @@ "src": "14509:14:21" }, "returnParameters": { - "id": 5738, + "id": 6259, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5737, + "id": 6258, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5744, + "scope": 6265, "src": "14547:7:21", "stateVariable": false, "storageLocation": "default", @@ -65226,7 +65226,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5736, + "id": 6257, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "14547:7:21", @@ -65240,7 +65240,7 @@ ], "src": "14546:9:21" }, - "scope": 7377, + "scope": 7898, "src": "14481:121:21", "stateMutability": "view", "virtual": false, @@ -65248,31 +65248,31 @@ }, { "body": { - "id": 5756, + "id": 6277, "nodeType": "Block", "src": "14867:38:21", "statements": [ { "expression": { "baseExpression": { - "id": 5752, + "id": 6273, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4758, + "referencedDeclaration": 5279, "src": "14884:8:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5754, + "id": 6275, "indexExpression": { - "id": 5753, + "id": 6274, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5747, + "referencedDeclaration": 6268, "src": "14893:4:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -65290,21 +65290,21 @@ "typeString": "uint256" } }, - "functionReturnParameters": 5751, - "id": 5755, + "functionReturnParameters": 6272, + "id": 6276, "nodeType": "Return", "src": "14877:21:21" } ] }, "documentation": { - "id": 5745, + "id": 6266, "nodeType": "StructuredDocumentation", "src": "14608:188:21", "text": "@dev Returns the amount of funds of a liquidity provider\n@param addr The address of the liquidity provider\n@return The balance of the liquidity provider" }, "functionSelector": "f8b2cb4f", - "id": 5757, + "id": 6278, "implemented": true, "kind": "function", "modifiers": [], @@ -65312,17 +65312,17 @@ "nameLocation": "14810:10:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5748, + "id": 6269, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5747, + "id": 6268, "mutability": "mutable", "name": "addr", "nameLocation": "14829:4:21", "nodeType": "VariableDeclaration", - "scope": 5757, + "scope": 6278, "src": "14821:12:21", "stateVariable": false, "storageLocation": "default", @@ -65331,7 +65331,7 @@ "typeString": "address" }, "typeName": { - "id": 5746, + "id": 6267, "name": "address", "nodeType": "ElementaryTypeName", "src": "14821:7:21", @@ -65347,17 +65347,17 @@ "src": "14820:14:21" }, "returnParameters": { - "id": 5751, + "id": 6272, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5750, + "id": 6271, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5757, + "scope": 6278, "src": "14858:7:21", "stateVariable": false, "storageLocation": "default", @@ -65366,7 +65366,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5749, + "id": 6270, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "14858:7:21", @@ -65380,7 +65380,7 @@ ], "src": "14857:9:21" }, - "scope": 7377, + "scope": 7898, "src": "14801:104:21", "stateMutability": "view", "virtual": false, @@ -65388,7 +65388,7 @@ }, { "body": { - "id": 5903, + "id": 6424, "nodeType": "Block", "src": "15229:1462:21", "statements": [ @@ -65400,14 +65400,14 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 5775, + "id": 6296, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 5771, + "id": 6292, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -65418,7 +65418,7 @@ "typeString": "msg" } }, - "id": 5772, + "id": 6293, "isConstant": false, "isLValue": false, "isPure": false, @@ -65436,18 +65436,18 @@ "operator": "==", "rightExpression": { "expression": { - "id": 5773, + "id": 6294, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "15274:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5774, + "id": 6295, "isConstant": false, "isLValue": true, "isPure": false, @@ -65455,7 +65455,7 @@ "memberLocation": "15280:27:21", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10297, + "referencedDeclaration": 10893, "src": "15274:33:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -65470,7 +65470,7 @@ }, { "hexValue": "4c4243303234", - "id": 5776, + "id": 6297, "isConstant": false, "isLValue": false, "isPure": true, @@ -65496,7 +65496,7 @@ "typeString": "literal_string \"LBC024\"" } ], - "id": 5770, + "id": 6291, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -65510,7 +65510,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5777, + "id": 6298, "isConstant": false, "isLValue": false, "isPure": false, @@ -65526,7 +65526,7 @@ "typeString": "tuple()" } }, - "id": 5778, + "id": 6299, "nodeType": "ExpressionStatement", "src": "15239:100:21" }, @@ -65538,7 +65538,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5789, + "id": 6310, "isConstant": false, "isLValue": false, "isPure": false, @@ -65548,39 +65548,39 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5786, + "id": 6307, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 5780, + "id": 6301, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4758, + "referencedDeclaration": 5279, "src": "15370:8:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 5783, + "id": 6304, "indexExpression": { "expression": { - "id": 5781, + "id": 6302, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "15379:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5782, + "id": 6303, "isConstant": false, "isLValue": true, "isPure": false, @@ -65588,7 +65588,7 @@ "memberLocation": "15385:27:21", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10297, + "referencedDeclaration": 10893, "src": "15379:33:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -65610,7 +65610,7 @@ "operator": "+", "rightExpression": { "expression": { - "id": 5784, + "id": 6305, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -65621,7 +65621,7 @@ "typeString": "msg" } }, - "id": 5785, + "id": 6306, "isConstant": false, "isLValue": false, "isPure": false, @@ -65645,18 +65645,18 @@ "operator": ">=", "rightExpression": { "expression": { - "id": 5787, + "id": 6308, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "15441:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5788, + "id": 6309, "isConstant": false, "isLValue": true, "isPure": false, @@ -65664,7 +65664,7 @@ "memberLocation": "15447:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10317, + "referencedDeclaration": 10913, "src": "15441:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -65679,7 +65679,7 @@ }, { "hexValue": "4c4243303139", - "id": 5790, + "id": 6311, "isConstant": false, "isLValue": false, "isPure": true, @@ -65705,7 +65705,7 @@ "typeString": "literal_string \"LBC019\"" } ], - "id": 5779, + "id": 6300, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -65719,7 +65719,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5791, + "id": 6312, "isConstant": false, "isLValue": false, "isPure": false, @@ -65735,23 +65735,23 @@ "typeString": "tuple()" } }, - "id": 5792, + "id": 6313, "nodeType": "ExpressionStatement", "src": "15349:135:21" }, { "assignments": [ - 5794 + 6315 ], "declarations": [ { "constant": false, - "id": 5794, + "id": 6315, "mutability": "mutable", "name": "quoteHash", "nameLocation": "15503:9:21", "nodeType": "VariableDeclaration", - "scope": 5903, + "scope": 6424, "src": "15495:17:21", "stateVariable": false, "storageLocation": "default", @@ -65760,7 +65760,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 5793, + "id": 6314, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "15495:7:21", @@ -65772,18 +65772,18 @@ "visibility": "internal" } ], - "id": 5798, + "id": 6319, "initialValue": { "arguments": [ { - "id": 5796, + "id": 6317, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "15536:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } } @@ -65791,22 +65791,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } ], - "id": 5795, + "id": 6316, "name": "validateAndHashQuote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6930, + "referencedDeclaration": 7451, "src": "15515:20:21", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10328_memory_ptr_$returns$_t_bytes32_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10924_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (struct Quotes.PeginQuote memory) view returns (bytes32)" } }, - "id": 5797, + "id": 6318, "isConstant": false, "isLValue": false, "isPure": false, @@ -65833,31 +65833,31 @@ "typeIdentifier": "t_uint8", "typeString": "uint8" }, - "id": 5804, + "id": 6325, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 5800, + "id": 6321, "name": "processedQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4800, + "referencedDeclaration": 5321, "src": "15573:15:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", "typeString": "mapping(bytes32 => uint8)" } }, - "id": 5802, + "id": 6323, "indexExpression": { - "id": 5801, + "id": 6322, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5794, + "referencedDeclaration": 6315, "src": "15589:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -65878,11 +65878,11 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 5803, + "id": 6324, "name": "UNPROCESSED_QUOTE_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4535, + "referencedDeclaration": 5056, "src": "15603:22:21", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -65897,7 +65897,7 @@ }, { "hexValue": "4c4243303235", - "id": 5805, + "id": 6326, "isConstant": false, "isLValue": false, "isPure": true, @@ -65923,7 +65923,7 @@ "typeString": "literal_string \"LBC025\"" } ], - "id": 5799, + "id": 6320, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -65937,7 +65937,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5806, + "id": 6327, "isConstant": false, "isLValue": false, "isPure": false, @@ -65953,7 +65953,7 @@ "typeString": "tuple()" } }, - "id": 5807, + "id": 6328, "nodeType": "ExpressionStatement", "src": "15552:105:21" }, @@ -65962,18 +65962,18 @@ "arguments": [ { "expression": { - "id": 5809, + "id": 6330, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "15684:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5810, + "id": 6331, "isConstant": false, "isLValue": true, "isPure": false, @@ -65981,7 +65981,7 @@ "memberLocation": "15690:27:21", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10297, + "referencedDeclaration": 10893, "src": "15684:33:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -65990,7 +65990,7 @@ }, { "expression": { - "id": 5811, + "id": 6332, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -66001,7 +66001,7 @@ "typeString": "msg" } }, - "id": 5812, + "id": 6333, "isConstant": false, "isLValue": false, "isPure": false, @@ -66027,18 +66027,18 @@ "typeString": "uint256" } ], - "id": 5808, + "id": 6329, "name": "increaseBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6993, + "referencedDeclaration": 7514, "src": "15668:15:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 5813, + "id": 6334, "isConstant": false, "isLValue": false, "isPure": false, @@ -66054,7 +66054,7 @@ "typeString": "tuple()" } }, - "id": 5814, + "id": 6335, "nodeType": "ExpressionStatement", "src": "15668:61:21" }, @@ -66066,7 +66066,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5822, + "id": 6343, "isConstant": false, "isLValue": false, "isPure": false, @@ -66075,7 +66075,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 5816, + "id": 6337, "name": "gasleft", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -66086,7 +66086,7 @@ "typeString": "function () view returns (uint256)" } }, - "id": 5817, + "id": 6338, "isConstant": false, "isLValue": false, "isPure": false, @@ -66109,25 +66109,25 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 5821, + "id": 6342, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 5818, + "id": 6339, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "15875:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5819, + "id": 6340, "isConstant": false, "isLValue": true, "isPure": false, @@ -66135,7 +66135,7 @@ "memberLocation": "15881:8:21", "memberName": "gasLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10313, + "referencedDeclaration": 10909, "src": "15875:14:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -66145,11 +66145,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 5820, + "id": 6341, "name": "MAX_CALL_GAS_COST", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4529, + "referencedDeclaration": 5050, "src": "15892:17:21", "typeDescriptions": { "typeIdentifier": "t_uint16", @@ -66170,7 +66170,7 @@ }, { "hexValue": "4c4243303236", - "id": 5823, + "id": 6344, "isConstant": false, "isLValue": false, "isPure": true, @@ -66196,7 +66196,7 @@ "typeString": "literal_string \"LBC026\"" } ], - "id": 5815, + "id": 6336, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -66210,7 +66210,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5824, + "id": 6345, "isConstant": false, "isLValue": false, "isPure": false, @@ -66226,24 +66226,24 @@ "typeString": "tuple()" } }, - "id": 5825, + "id": 6346, "nodeType": "ExpressionStatement", "src": "15841:100:21" }, { "assignments": [ - 5827, + 6348, null ], "declarations": [ { "constant": false, - "id": 5827, + "id": 6348, "mutability": "mutable", "name": "success", "nameLocation": "15957:7:21", "nodeType": "VariableDeclaration", - "scope": 5903, + "scope": 6424, "src": "15952:12:21", "stateVariable": false, "storageLocation": "default", @@ -66252,7 +66252,7 @@ "typeString": "bool" }, "typeName": { - "id": 5826, + "id": 6347, "name": "bool", "nodeType": "ElementaryTypeName", "src": "15952:4:21", @@ -66265,23 +66265,23 @@ }, null ], - "id": 5839, + "id": 6360, "initialValue": { "arguments": [ { "expression": { - "id": 5836, + "id": 6357, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "16083:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5837, + "id": 6358, "isConstant": false, "isLValue": true, "isPure": false, @@ -66289,7 +66289,7 @@ "memberLocation": "16089:4:21", "memberName": "data", "nodeType": "MemberAccess", - "referencedDeclaration": 10311, + "referencedDeclaration": 10907, "src": "16083:10:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -66313,18 +66313,18 @@ ], "expression": { "expression": { - "id": 5828, + "id": 6349, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "15969:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5829, + "id": 6350, "isConstant": false, "isLValue": true, "isPure": false, @@ -66332,14 +66332,14 @@ "memberLocation": "15975:15:21", "memberName": "contractAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10309, + "referencedDeclaration": 10905, "src": "15969:21:21", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 5830, + "id": 6351, "isConstant": false, "isLValue": false, "isPure": false, @@ -66353,7 +66353,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 5835, + "id": 6356, "isConstant": false, "isLValue": false, "isPure": false, @@ -66366,18 +66366,18 @@ "options": [ { "expression": { - "id": 5831, + "id": 6352, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "16018:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5832, + "id": 6353, "isConstant": false, "isLValue": true, "isPure": false, @@ -66385,7 +66385,7 @@ "memberLocation": "16024:8:21", "memberName": "gasLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10313, + "referencedDeclaration": 10909, "src": "16018:14:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -66394,18 +66394,18 @@ }, { "expression": { - "id": 5833, + "id": 6354, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "16057:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5834, + "id": 6355, "isConstant": false, "isLValue": true, "isPure": false, @@ -66413,7 +66413,7 @@ "memberLocation": "16063:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10317, + "referencedDeclaration": 10913, "src": "16057:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -66427,7 +66427,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 5838, + "id": 6359, "isConstant": false, "isLValue": false, "isPure": false, @@ -66454,14 +66454,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5848, + "id": 6369, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 5841, + "id": 6362, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -66472,7 +66472,7 @@ "typeString": "block" } }, - "id": 5842, + "id": 6363, "isConstant": false, "isLValue": false, "isPure": false, @@ -66492,7 +66492,7 @@ "expression": { "arguments": [ { - "id": 5845, + "id": 6366, "isConstant": false, "isLValue": false, "isPure": true, @@ -66504,7 +66504,7 @@ "typeString": "type(uint32)" }, "typeName": { - "id": 5844, + "id": 6365, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "16137:6:21", @@ -66519,7 +66519,7 @@ "typeString": "type(uint32)" } ], - "id": 5843, + "id": 6364, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -66530,7 +66530,7 @@ "typeString": "function () pure" } }, - "id": 5846, + "id": 6367, "isConstant": false, "isLValue": false, "isPure": true, @@ -66546,7 +66546,7 @@ "typeString": "type(uint32)" } }, - "id": 5847, + "id": 6368, "isConstant": false, "isLValue": false, "isPure": true, @@ -66568,7 +66568,7 @@ }, { "hexValue": "4c4243303237", - "id": 5849, + "id": 6370, "isConstant": false, "isLValue": false, "isPure": true, @@ -66594,7 +66594,7 @@ "typeString": "literal_string \"LBC027\"" } ], - "id": 5840, + "id": 6361, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -66608,7 +66608,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5850, + "id": 6371, "isConstant": false, "isLValue": false, "isPure": false, @@ -66624,13 +66624,13 @@ "typeString": "tuple()" } }, - "id": 5851, + "id": 6372, "nodeType": "ExpressionStatement", "src": "16105:54:21" }, { "expression": { - "id": 5861, + "id": 6382, "isConstant": false, "isLValue": false, "isPure": false, @@ -66638,24 +66638,24 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 5852, + "id": 6373, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4776, + "referencedDeclaration": 5297, "src": "16169:12:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$4595_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" } }, - "id": 5854, + "id": 6375, "indexExpression": { - "id": 5853, + "id": 6374, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5794, + "referencedDeclaration": 6315, "src": "16182:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -66669,11 +66669,11 @@ "nodeType": "IndexAccess", "src": "16169:23:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$4595_storage", + "typeIdentifier": "t_struct$_Registry_$5116_storage", "typeString": "struct LiquidityBridgeContract.Registry storage ref" } }, - "id": 5855, + "id": 6376, "isConstant": false, "isLValue": true, "isPure": false, @@ -66681,7 +66681,7 @@ "memberLocation": "16193:9:21", "memberName": "timestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 4592, + "referencedDeclaration": 5113, "src": "16169:33:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -66694,7 +66694,7 @@ "arguments": [ { "expression": { - "id": 5858, + "id": 6379, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -66705,7 +66705,7 @@ "typeString": "block" } }, - "id": 5859, + "id": 6380, "isConstant": false, "isLValue": false, "isPure": false, @@ -66727,7 +66727,7 @@ "typeString": "uint256" } ], - "id": 5857, + "id": 6378, "isConstant": false, "isLValue": false, "isPure": true, @@ -66739,14 +66739,14 @@ "typeString": "type(uint32)" }, "typeName": { - "id": 5856, + "id": 6377, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "16205:6:21", "typeDescriptions": {} } }, - "id": 5860, + "id": 6381, "isConstant": false, "isLValue": false, "isPure": false, @@ -66768,34 +66768,34 @@ "typeString": "uint32" } }, - "id": 5862, + "id": 6383, "nodeType": "ExpressionStatement", "src": "16169:59:21" }, { "condition": { - "id": 5863, + "id": 6384, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5827, + "referencedDeclaration": 6348, "src": "16243:7:21", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 5879, + "id": 6400, "nodeType": "IfStatement", "src": "16239:153:21", "trueBody": { - "id": 5878, + "id": 6399, "nodeType": "Block", "src": "16252:140:21", "statements": [ { "expression": { - "id": 5869, + "id": 6390, "isConstant": false, "isLValue": false, "isPure": false, @@ -66803,24 +66803,24 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 5864, + "id": 6385, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4776, + "referencedDeclaration": 5297, "src": "16266:12:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$4595_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" } }, - "id": 5866, + "id": 6387, "indexExpression": { - "id": 5865, + "id": 6386, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5794, + "referencedDeclaration": 6315, "src": "16279:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -66834,11 +66834,11 @@ "nodeType": "IndexAccess", "src": "16266:23:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$4595_storage", + "typeIdentifier": "t_struct$_Registry_$5116_storage", "typeString": "struct LiquidityBridgeContract.Registry storage ref" } }, - "id": 5867, + "id": 6388, "isConstant": false, "isLValue": true, "isPure": false, @@ -66846,7 +66846,7 @@ "memberLocation": "16290:7:21", "memberName": "success", "nodeType": "MemberAccess", - "referencedDeclaration": 4594, + "referencedDeclaration": 5115, "src": "16266:31:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -66857,7 +66857,7 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 5868, + "id": 6389, "isConstant": false, "isLValue": false, "isPure": true, @@ -66877,7 +66877,7 @@ "typeString": "bool" } }, - "id": 5870, + "id": 6391, "nodeType": "ExpressionStatement", "src": "16266:38:21" }, @@ -66886,18 +66886,18 @@ "arguments": [ { "expression": { - "id": 5872, + "id": 6393, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "16334:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5873, + "id": 6394, "isConstant": false, "isLValue": true, "isPure": false, @@ -66905,7 +66905,7 @@ "memberLocation": "16340:27:21", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10297, + "referencedDeclaration": 10893, "src": "16334:33:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -66914,18 +66914,18 @@ }, { "expression": { - "id": 5874, + "id": 6395, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "16369:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5875, + "id": 6396, "isConstant": false, "isLValue": true, "isPure": false, @@ -66933,7 +66933,7 @@ "memberLocation": "16375:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10317, + "referencedDeclaration": 10913, "src": "16369:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -66952,18 +66952,18 @@ "typeString": "uint256" } ], - "id": 5871, + "id": 6392, "name": "decreaseBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7012, + "referencedDeclaration": 7533, "src": "16318:15:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 5876, + "id": 6397, "isConstant": false, "isLValue": false, "isPure": false, @@ -66979,7 +66979,7 @@ "typeString": "tuple()" } }, - "id": 5877, + "id": 6398, "nodeType": "ExpressionStatement", "src": "16318:63:21" } @@ -66991,7 +66991,7 @@ "arguments": [ { "expression": { - "id": 5881, + "id": 6402, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -67002,7 +67002,7 @@ "typeString": "msg" } }, - "id": 5882, + "id": 6403, "isConstant": false, "isLValue": false, "isPure": false, @@ -67018,18 +67018,18 @@ }, { "expression": { - "id": 5883, + "id": 6404, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "16455:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5884, + "id": 6405, "isConstant": false, "isLValue": true, "isPure": false, @@ -67037,7 +67037,7 @@ "memberLocation": "16461:15:21", "memberName": "contractAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10309, + "referencedDeclaration": 10905, "src": "16455:21:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -67046,18 +67046,18 @@ }, { "expression": { - "id": 5885, + "id": 6406, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "16490:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5886, + "id": 6407, "isConstant": false, "isLValue": true, "isPure": false, @@ -67065,7 +67065,7 @@ "memberLocation": "16496:8:21", "memberName": "gasLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10313, + "referencedDeclaration": 10909, "src": "16490:14:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -67074,18 +67074,18 @@ }, { "expression": { - "id": 5887, + "id": 6408, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "16518:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5888, + "id": 6409, "isConstant": false, "isLValue": true, "isPure": false, @@ -67093,7 +67093,7 @@ "memberLocation": "16524:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10317, + "referencedDeclaration": 10913, "src": "16518:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -67102,18 +67102,18 @@ }, { "expression": { - "id": 5889, + "id": 6410, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5761, + "referencedDeclaration": 6282, "src": "16543:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5890, + "id": 6411, "isConstant": false, "isLValue": true, "isPure": false, @@ -67121,7 +67121,7 @@ "memberLocation": "16549:4:21", "memberName": "data", "nodeType": "MemberAccess", - "referencedDeclaration": 10311, + "referencedDeclaration": 10907, "src": "16543:10:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -67129,11 +67129,11 @@ } }, { - "id": 5891, + "id": 6412, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5827, + "referencedDeclaration": 6348, "src": "16567:7:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -67141,11 +67141,11 @@ } }, { - "id": 5892, + "id": 6413, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5794, + "referencedDeclaration": 6315, "src": "16588:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -67184,18 +67184,18 @@ "typeString": "bytes32" } ], - "id": 5880, + "id": 6401, "name": "CallForUser", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4677, + "referencedDeclaration": 5198, "src": "16406:11:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$_t_bool_$_t_bytes32_$returns$__$", "typeString": "function (address,address,uint256,uint256,bytes memory,bool,bytes32)" } }, - "id": 5893, + "id": 6414, "isConstant": false, "isLValue": false, "isPure": false, @@ -67211,37 +67211,37 @@ "typeString": "tuple()" } }, - "id": 5894, + "id": 6415, "nodeType": "EmitStatement", "src": "16401:206:21" }, { "expression": { - "id": 5899, + "id": 6420, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 5895, + "id": 6416, "name": "processedQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4800, + "referencedDeclaration": 5321, "src": "16617:15:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", "typeString": "mapping(bytes32 => uint8)" } }, - "id": 5897, + "id": 6418, "indexExpression": { - "id": 5896, + "id": 6417, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5794, + "referencedDeclaration": 6315, "src": "16633:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -67262,11 +67262,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 5898, + "id": 6419, "name": "CALL_DONE_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4538, + "referencedDeclaration": 5059, "src": "16646:14:21", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -67279,62 +67279,62 @@ "typeString": "uint8" } }, - "id": 5900, + "id": 6421, "nodeType": "ExpressionStatement", "src": "16617:43:21" }, { "expression": { - "id": 5901, + "id": 6422, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5827, + "referencedDeclaration": 6348, "src": "16677:7:21", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 5769, - "id": 5902, + "functionReturnParameters": 6290, + "id": 6423, "nodeType": "Return", "src": "16670:14:21" } ] }, "documentation": { - "id": 5758, + "id": 6279, "nodeType": "StructuredDocumentation", "src": "14911:186:21", "text": "@dev Performs a call on behalf of a user\n@param quote The quote that identifies the service\n@return Boolean indicating whether the call was successful" }, "functionSelector": "ac29d744", - "id": 5904, + "id": 6425, "implemented": true, "kind": "function", "modifiers": [ { - "id": 5764, + "id": 6285, "kind": "modifierInvocation", "modifierName": { - "id": 5763, + "id": 6284, "name": "onlyRegistered", "nameLocations": [ "15186:14:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 4822, + "referencedDeclaration": 5343, "src": "15186:14:21" }, "nodeType": "ModifierInvocation", "src": "15186:14:21" }, { - "id": 5766, + "id": 6287, "kind": "modifierInvocation", "modifierName": { - "id": 5765, + "id": 6286, "name": "nonReentrant", "nameLocations": [ "15201:12:21" @@ -67351,42 +67351,42 @@ "nameLocation": "15111:11:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5762, + "id": 6283, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5761, + "id": 6282, "mutability": "mutable", "name": "quote", "nameLocation": "15157:5:21", "nodeType": "VariableDeclaration", - "scope": 5904, + "scope": 6425, "src": "15132:30:21", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote" }, "typeName": { - "id": 5760, + "id": 6281, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 5759, + "id": 6280, "name": "Quotes.PeginQuote", "nameLocations": [ "15132:6:21", "15139:10:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "15132:17:21" }, - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "15132:17:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_storage_ptr", "typeString": "struct Quotes.PeginQuote" } }, @@ -67396,17 +67396,17 @@ "src": "15122:46:21" }, "returnParameters": { - "id": 5769, + "id": 6290, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5768, + "id": 6289, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 5904, + "scope": 6425, "src": "15223:4:21", "stateVariable": false, "storageLocation": "default", @@ -67415,7 +67415,7 @@ "typeString": "bool" }, "typeName": { - "id": 5767, + "id": 6288, "name": "bool", "nodeType": "ElementaryTypeName", "src": "15223:4:21", @@ -67429,7 +67429,7 @@ ], "src": "15222:6:21" }, - "scope": 7377, + "scope": 7898, "src": "15102:1589:21", "stateMutability": "payable", "virtual": false, @@ -67437,23 +67437,23 @@ }, { "body": { - "id": 6294, + "id": 6815, "nodeType": "Block", "src": "17450:6157:21", "statements": [ { "assignments": [ - 5924 + 6445 ], "declarations": [ { "constant": false, - "id": 5924, + "id": 6445, "mutability": "mutable", "name": "quoteHash", "nameLocation": "17468:9:21", "nodeType": "VariableDeclaration", - "scope": 6294, + "scope": 6815, "src": "17460:17:21", "stateVariable": false, "storageLocation": "default", @@ -67462,7 +67462,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 5923, + "id": 6444, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "17460:7:21", @@ -67474,18 +67474,18 @@ "visibility": "internal" } ], - "id": 5928, + "id": 6449, "initialValue": { "arguments": [ { - "id": 5926, + "id": 6447, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "17501:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } } @@ -67493,22 +67493,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } ], - "id": 5925, + "id": 6446, "name": "validateAndHashQuote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6930, + "referencedDeclaration": 7451, "src": "17480:20:21", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10328_memory_ptr_$returns$_t_bytes32_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10924_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (struct Quotes.PeginQuote memory) view returns (bytes32)" } }, - "id": 5927, + "id": 6448, "isConstant": false, "isLValue": false, "isPure": false, @@ -67535,31 +67535,31 @@ "typeIdentifier": "t_uint8", "typeString": "uint8" }, - "id": 5934, + "id": 6455, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 5930, + "id": 6451, "name": "processedQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4800, + "referencedDeclaration": 5321, "src": "17633:15:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", "typeString": "mapping(bytes32 => uint8)" } }, - "id": 5932, + "id": 6453, "indexExpression": { - "id": 5931, + "id": 6452, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "17649:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -67580,11 +67580,11 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 5933, + "id": 6454, "name": "CALL_DONE_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4538, + "referencedDeclaration": 5059, "src": "17663:14:21", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -67599,7 +67599,7 @@ }, { "hexValue": "4c4243303238", - "id": 5935, + "id": 6456, "isConstant": false, "isLValue": false, "isPure": true, @@ -67625,7 +67625,7 @@ "typeString": "literal_string \"LBC028\"" } ], - "id": 5929, + "id": 6450, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -67639,7 +67639,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5936, + "id": 6457, "isConstant": false, "isLValue": false, "isPure": false, @@ -67655,7 +67655,7 @@ "typeString": "tuple()" } }, - "id": 5937, + "id": 6458, "nodeType": "ExpressionStatement", "src": "17612:97:21" }, @@ -67666,18 +67666,18 @@ "arguments": [ { "expression": { - "id": 5941, + "id": 6462, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "17783:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 5942, + "id": 6463, "isConstant": false, "isLValue": true, "isPure": false, @@ -67685,7 +67685,7 @@ "memberLocation": "17789:27:21", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10297, + "referencedDeclaration": 10893, "src": "17783:33:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -67693,11 +67693,11 @@ } }, { - "id": 5943, + "id": 6464, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "17834:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -67705,11 +67705,11 @@ } }, { - "id": 5944, + "id": 6465, "name": "signature", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5910, + "referencedDeclaration": 6431, "src": "17861:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -67733,18 +67733,18 @@ } ], "expression": { - "id": 5939, + "id": 6460, "name": "SignatureValidator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10898, + "referencedDeclaration": 11494, "src": "17740:18:21", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SignatureValidator_$10898_$", + "typeIdentifier": "t_type$_t_contract$_SignatureValidator_$11494_$", "typeString": "type(library SignatureValidator)" } }, - "id": 5940, + "id": 6461, "isConstant": false, "isLValue": false, "isPure": false, @@ -67752,14 +67752,14 @@ "memberLocation": "17759:6:21", "memberName": "verify", "nodeType": "MemberAccess", - "referencedDeclaration": 10897, + "referencedDeclaration": 11493, "src": "17740:25:21", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_pure$_t_address_$_t_bytes32_$_t_bytes_memory_ptr_$returns$_t_bool_$", "typeString": "function (address,bytes32,bytes memory) pure returns (bool)" } }, - "id": 5945, + "id": 6466, "isConstant": false, "isLValue": false, "isPure": false, @@ -67777,7 +67777,7 @@ }, { "hexValue": "4c4243303239", - "id": 5946, + "id": 6467, "isConstant": false, "isLValue": false, "isPure": true, @@ -67803,7 +67803,7 @@ "typeString": "literal_string \"LBC029\"" } ], - "id": 5938, + "id": 6459, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -67817,7 +67817,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5947, + "id": 6468, "isConstant": false, "isLValue": false, "isPure": false, @@ -67833,7 +67833,7 @@ "typeString": "tuple()" } }, - "id": 5948, + "id": 6469, "nodeType": "ExpressionStatement", "src": "17719:197:21" }, @@ -67845,17 +67845,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 5962, + "id": 6483, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 5950, + "id": 6471, "name": "height", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5916, + "referencedDeclaration": 6437, "src": "17934:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -67872,7 +67872,7 @@ "expression": { "arguments": [ { - "id": 5957, + "id": 6478, "isConstant": false, "isLValue": false, "isPure": true, @@ -67884,7 +67884,7 @@ "typeString": "type(int32)" }, "typeName": { - "id": 5956, + "id": 6477, "name": "int32", "nodeType": "ElementaryTypeName", "src": "17963:5:21", @@ -67899,7 +67899,7 @@ "typeString": "type(int32)" } ], - "id": 5955, + "id": 6476, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -67910,7 +67910,7 @@ "typeString": "function () pure" } }, - "id": 5958, + "id": 6479, "isConstant": false, "isLValue": false, "isPure": true, @@ -67926,7 +67926,7 @@ "typeString": "type(int32)" } }, - "id": 5959, + "id": 6480, "isConstant": false, "isLValue": false, "isPure": true, @@ -67948,7 +67948,7 @@ "typeString": "int32" } ], - "id": 5954, + "id": 6475, "isConstant": false, "isLValue": false, "isPure": true, @@ -67960,14 +67960,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 5953, + "id": 6474, "name": "int256", "nodeType": "ElementaryTypeName", "src": "17951:6:21", "typeDescriptions": {} } }, - "id": 5960, + "id": 6481, "isConstant": false, "isLValue": false, "isPure": true, @@ -67991,7 +67991,7 @@ "typeString": "int256" } ], - "id": 5952, + "id": 6473, "isConstant": false, "isLValue": false, "isPure": true, @@ -68003,14 +68003,14 @@ "typeString": "type(uint256)" }, "typeName": { - "id": 5951, + "id": 6472, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "17943:7:21", "typeDescriptions": {} } }, - "id": 5961, + "id": 6482, "isConstant": false, "isLValue": false, "isPure": true, @@ -68034,7 +68034,7 @@ }, { "hexValue": "4c4243303330", - "id": 5963, + "id": 6484, "isConstant": false, "isLValue": false, "isPure": true, @@ -68060,7 +68060,7 @@ "typeString": "literal_string \"LBC030\"" } ], - "id": 5949, + "id": 6470, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -68074,7 +68074,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5964, + "id": 6485, "isConstant": false, "isLValue": false, "isPure": false, @@ -68090,23 +68090,23 @@ "typeString": "tuple()" } }, - "id": 5965, + "id": 6486, "nodeType": "ExpressionStatement", "src": "17926:60:21" }, { "assignments": [ - 5967 + 6488 ], "declarations": [ { "constant": false, - "id": 5967, + "id": 6488, "mutability": "mutable", "name": "transferredAmountOrErrorCode", "nameLocation": "18004:28:21", "nodeType": "VariableDeclaration", - "scope": 6294, + "scope": 6815, "src": "17997:35:21", "stateVariable": false, "storageLocation": "default", @@ -68115,7 +68115,7 @@ "typeString": "int256" }, "typeName": { - "id": 5966, + "id": 6487, "name": "int256", "nodeType": "ElementaryTypeName", "src": "17997:6:21", @@ -68127,27 +68127,27 @@ "visibility": "internal" } ], - "id": 5975, + "id": 6496, "initialValue": { "arguments": [ { - "id": 5969, + "id": 6490, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "18063:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, { - "id": 5970, + "id": 6491, "name": "btcRawTransaction", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5912, + "referencedDeclaration": 6433, "src": "18082:17:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -68155,11 +68155,11 @@ } }, { - "id": 5971, + "id": 6492, "name": "partialMerkleTree", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5914, + "referencedDeclaration": 6435, "src": "18113:17:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -68167,11 +68167,11 @@ } }, { - "id": 5972, + "id": 6493, "name": "height", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5916, + "referencedDeclaration": 6437, "src": "18144:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -68179,11 +68179,11 @@ } }, { - "id": 5973, + "id": 6494, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "18164:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -68194,7 +68194,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" }, { @@ -68214,18 +68214,18 @@ "typeString": "bytes32" } ], - "id": 5968, + "id": 6489, "name": "registerBridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7098, + "referencedDeclaration": 7619, "src": "18035:14:21", "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_PeginQuote_$10328_memory_ptr_$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_uint256_$_t_bytes32_$returns$_t_int256_$", + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_PeginQuote_$10924_memory_ptr_$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_uint256_$_t_bytes32_$returns$_t_int256_$", "typeString": "function (struct Quotes.PeginQuote memory,bytes memory,bytes memory,uint256,bytes32) returns (int256)" } }, - "id": 5974, + "id": 6495, "isConstant": false, "isLValue": false, "isPure": false, @@ -68252,17 +68252,17 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 5979, + "id": 6500, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 5977, + "id": 6498, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "18215:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -68272,11 +68272,11 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 5978, + "id": 6499, "name": "BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4565, + "referencedDeclaration": 5086, "src": "18259:41:21", "typeDescriptions": { "typeIdentifier": "t_int16", @@ -68291,7 +68291,7 @@ }, { "hexValue": "4c4243303331", - "id": 5980, + "id": 6501, "isConstant": false, "isLValue": false, "isPure": true, @@ -68317,7 +68317,7 @@ "typeString": "literal_string \"LBC031\"" } ], - "id": 5976, + "id": 6497, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -68331,7 +68331,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5981, + "id": 6502, "isConstant": false, "isLValue": false, "isPure": false, @@ -68347,7 +68347,7 @@ "typeString": "tuple()" } }, - "id": 5982, + "id": 6503, "nodeType": "ExpressionStatement", "src": "18194:138:21" }, @@ -68359,17 +68359,17 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 5986, + "id": 6507, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 5984, + "id": 6505, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "18363:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -68379,11 +68379,11 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 5985, + "id": 6506, "name": "BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4561, + "referencedDeclaration": 5082, "src": "18407:52:21", "typeDescriptions": { "typeIdentifier": "t_int16", @@ -68398,7 +68398,7 @@ }, { "hexValue": "4c4243303332", - "id": 5987, + "id": 6508, "isConstant": false, "isLValue": false, "isPure": true, @@ -68424,7 +68424,7 @@ "typeString": "literal_string \"LBC032\"" } ], - "id": 5983, + "id": 6504, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -68438,7 +68438,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5988, + "id": 6509, "isConstant": false, "isLValue": false, "isPure": false, @@ -68454,7 +68454,7 @@ "typeString": "tuple()" } }, - "id": 5989, + "id": 6510, "nodeType": "ExpressionStatement", "src": "18342:149:21" }, @@ -68466,17 +68466,17 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 5993, + "id": 6514, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 5991, + "id": 6512, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "18522:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -68486,11 +68486,11 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 5992, + "id": 6513, "name": "BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4569, + "referencedDeclaration": 5090, "src": "18566:40:21", "typeDescriptions": { "typeIdentifier": "t_int16", @@ -68505,7 +68505,7 @@ }, { "hexValue": "4c4243303333", - "id": 5994, + "id": 6515, "isConstant": false, "isLValue": false, "isPure": true, @@ -68531,7 +68531,7 @@ "typeString": "literal_string \"LBC033\"" } ], - "id": 5990, + "id": 6511, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -68545,7 +68545,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 5995, + "id": 6516, "isConstant": false, "isLValue": false, "isPure": false, @@ -68561,7 +68561,7 @@ "typeString": "tuple()" } }, - "id": 5996, + "id": 6517, "nodeType": "ExpressionStatement", "src": "18501:137:21" }, @@ -68573,17 +68573,17 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 6000, + "id": 6521, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 5998, + "id": 6519, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "18669:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -68593,11 +68593,11 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 5999, + "id": 6520, "name": "BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4573, + "referencedDeclaration": 5094, "src": "18713:60:21", "typeDescriptions": { "typeIdentifier": "t_int16", @@ -68612,7 +68612,7 @@ }, { "hexValue": "4c4243303334", - "id": 6001, + "id": 6522, "isConstant": false, "isLValue": false, "isPure": true, @@ -68638,7 +68638,7 @@ "typeString": "literal_string \"LBC034\"" } ], - "id": 5997, + "id": 6518, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -68652,7 +68652,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6002, + "id": 6523, "isConstant": false, "isLValue": false, "isPure": false, @@ -68668,7 +68668,7 @@ "typeString": "tuple()" } }, - "id": 6003, + "id": 6524, "nodeType": "ExpressionStatement", "src": "18648:157:21" }, @@ -68680,17 +68680,17 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 6007, + "id": 6528, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 6005, + "id": 6526, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "18836:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -68700,11 +68700,11 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 6006, + "id": 6527, "name": "BRIDGE_GENERIC_ERROR", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4577, + "referencedDeclaration": 5098, "src": "18868:20:21", "typeDescriptions": { "typeIdentifier": "t_int16", @@ -68719,7 +68719,7 @@ }, { "hexValue": "4c4243303335", - "id": 6008, + "id": 6529, "isConstant": false, "isLValue": false, "isPure": true, @@ -68745,7 +68745,7 @@ "typeString": "literal_string \"LBC035\"" } ], - "id": 6004, + "id": 6525, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -68759,7 +68759,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6009, + "id": 6530, "isConstant": false, "isLValue": false, "isPure": false, @@ -68775,7 +68775,7 @@ "typeString": "tuple()" } }, - "id": 6010, + "id": 6531, "nodeType": "ExpressionStatement", "src": "18815:105:21" }, @@ -68787,7 +68787,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 6022, + "id": 6543, "isConstant": false, "isLValue": false, "isPure": false, @@ -68797,7 +68797,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 6018, + "id": 6539, "isConstant": false, "isLValue": false, "isPure": false, @@ -68807,17 +68807,17 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 6014, + "id": 6535, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 6012, + "id": 6533, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "18951:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -68828,7 +68828,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 6013, + "id": 6534, "isConstant": false, "isLValue": false, "isPure": true, @@ -68855,17 +68855,17 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 6017, + "id": 6538, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 6015, + "id": 6536, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "18999:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -68875,11 +68875,11 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 6016, + "id": 6537, "name": "BRIDGE_REFUNDED_LP_ERROR_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4549, + "referencedDeclaration": 5070, "src": "19031:29:21", "typeDescriptions": { "typeIdentifier": "t_int16", @@ -68905,17 +68905,17 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 6021, + "id": 6542, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 6019, + "id": 6540, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "19076:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -68925,11 +68925,11 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 6020, + "id": 6541, "name": "BRIDGE_REFUNDED_USER_ERROR_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4545, + "referencedDeclaration": 5066, "src": "19108:31:21", "typeDescriptions": { "typeIdentifier": "t_int16", @@ -68950,7 +68950,7 @@ }, { "hexValue": "4c4243303336", - "id": 6023, + "id": 6544, "isConstant": false, "isLValue": false, "isPure": true, @@ -68976,7 +68976,7 @@ "typeString": "literal_string \"LBC036\"" } ], - "id": 6011, + "id": 6532, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -68990,7 +68990,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6024, + "id": 6545, "isConstant": false, "isLValue": false, "isPure": false, @@ -69006,7 +69006,7 @@ "typeString": "tuple()" } }, - "id": 6025, + "id": 6546, "nodeType": "ExpressionStatement", "src": "18930:241:21" }, @@ -69014,23 +69014,23 @@ "condition": { "arguments": [ { - "id": 6027, + "id": 6548, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "19229:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, { - "id": 6028, + "id": 6549, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "19248:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -69040,24 +69040,24 @@ { "expression": { "baseExpression": { - "id": 6029, + "id": 6550, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4776, + "referencedDeclaration": 5297, "src": "19290:12:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$4595_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" } }, - "id": 6031, + "id": 6552, "indexExpression": { - "id": 6030, + "id": 6551, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "19303:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -69071,11 +69071,11 @@ "nodeType": "IndexAccess", "src": "19290:23:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$4595_storage", + "typeIdentifier": "t_struct$_Registry_$5116_storage", "typeString": "struct LiquidityBridgeContract.Registry storage ref" } }, - "id": 6032, + "id": 6553, "isConstant": false, "isLValue": true, "isPure": false, @@ -69083,7 +69083,7 @@ "memberLocation": "19314:9:21", "memberName": "timestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 4592, + "referencedDeclaration": 5113, "src": "19290:33:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -69091,11 +69091,11 @@ } }, { - "id": 6033, + "id": 6554, "name": "height", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5916, + "referencedDeclaration": 6437, "src": "19337:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -69106,7 +69106,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" }, { @@ -69122,18 +69122,18 @@ "typeString": "uint256" } ], - "id": 6026, + "id": 6547, "name": "shouldPenalizeLP", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7213, + "referencedDeclaration": 7734, "src": "19199:16:21", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10328_memory_ptr_$_t_int256_$_t_uint256_$_t_uint256_$returns$_t_bool_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10924_memory_ptr_$_t_int256_$_t_uint256_$_t_uint256_$returns$_t_bool_$", "typeString": "function (struct Quotes.PeginQuote memory,int256,uint256,uint256) view returns (bool)" } }, - "id": 6034, + "id": 6555, "isConstant": false, "isLValue": false, "isPure": false, @@ -69149,27 +69149,27 @@ "typeString": "bool" } }, - "id": 6076, + "id": 6597, "nodeType": "IfStatement", "src": "19182:816:21", "trueBody": { - "id": 6075, + "id": 6596, "nodeType": "Block", "src": "19364:634:21", "statements": [ { "assignments": [ - 6036 + 6557 ], "declarations": [ { "constant": false, - "id": 6036, + "id": 6557, "mutability": "mutable", "name": "penalizationAmount", "nameLocation": "19383:18:21", "nodeType": "VariableDeclaration", - "scope": 6075, + "scope": 6596, "src": "19378:23:21", "stateVariable": false, "storageLocation": "default", @@ -69178,7 +69178,7 @@ "typeString": "uint256" }, "typeName": { - "id": 6035, + "id": 6556, "name": "uint", "nodeType": "ElementaryTypeName", "src": "19378:4:21", @@ -69190,23 +69190,23 @@ "visibility": "internal" } ], - "id": 6045, + "id": 6566, "initialValue": { "arguments": [ { "expression": { - "id": 6038, + "id": 6559, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "19425:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6039, + "id": 6560, "isConstant": false, "isLValue": true, "isPure": false, @@ -69214,7 +69214,7 @@ "memberLocation": "19431:10:21", "memberName": "penaltyFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10307, + "referencedDeclaration": 10903, "src": "19425:16:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -69223,32 +69223,32 @@ }, { "baseExpression": { - "id": 6040, + "id": 6561, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4762, + "referencedDeclaration": 5283, "src": "19459:10:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 6043, + "id": 6564, "indexExpression": { "expression": { - "id": 6041, + "id": 6562, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "19470:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6042, + "id": 6563, "isConstant": false, "isLValue": true, "isPure": false, @@ -69256,7 +69256,7 @@ "memberLocation": "19476:27:21", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10297, + "referencedDeclaration": 10893, "src": "19470:33:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -69286,18 +69286,18 @@ "typeString": "uint256" } ], - "id": 6037, + "id": 6558, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6974, + "referencedDeclaration": 7495, "src": "19404:3:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 6044, + "id": 6565, "isConstant": false, "isLValue": false, "isPure": false, @@ -69318,39 +69318,39 @@ }, { "expression": { - "id": 6051, + "id": 6572, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 6046, + "id": 6567, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4762, + "referencedDeclaration": 5283, "src": "19595:10:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 6049, + "id": 6570, "indexExpression": { "expression": { - "id": 6047, + "id": 6568, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "19606:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6048, + "id": 6569, "isConstant": false, "isLValue": true, "isPure": false, @@ -69358,7 +69358,7 @@ "memberLocation": "19612:27:21", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10297, + "referencedDeclaration": 10893, "src": "19606:33:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -69379,11 +69379,11 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 6050, + "id": 6571, "name": "penalizationAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6036, + "referencedDeclaration": 6557, "src": "19644:18:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -69396,7 +69396,7 @@ "typeString": "uint256" } }, - "id": 6052, + "id": 6573, "nodeType": "ExpressionStatement", "src": "19595:67:21" }, @@ -69405,18 +69405,18 @@ "arguments": [ { "expression": { - "id": 6054, + "id": 6575, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "19708:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6055, + "id": 6576, "isConstant": false, "isLValue": true, "isPure": false, @@ -69424,7 +69424,7 @@ "memberLocation": "19714:27:21", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10297, + "referencedDeclaration": 10893, "src": "19708:33:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -69432,11 +69432,11 @@ } }, { - "id": 6056, + "id": 6577, "name": "penalizationAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6036, + "referencedDeclaration": 6557, "src": "19759:18:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -69444,11 +69444,11 @@ } }, { - "id": 6057, + "id": 6578, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "19795:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -69471,18 +69471,18 @@ "typeString": "bytes32" } ], - "id": 6053, + "id": 6574, "name": "Penalized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4691, + "referencedDeclaration": 5212, "src": "19681:9:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bytes32_$returns$__$", "typeString": "function (address,uint256,bytes32)" } }, - "id": 6058, + "id": 6579, "isConstant": false, "isLValue": false, "isPure": false, @@ -69498,23 +69498,23 @@ "typeString": "tuple()" } }, - "id": 6059, + "id": 6580, "nodeType": "EmitStatement", "src": "19676:142:21" }, { "assignments": [ - 6061 + 6582 ], "declarations": [ { "constant": false, - "id": 6061, + "id": 6582, "mutability": "mutable", "name": "punisherReward", "nameLocation": "19877:14:21", "nodeType": "VariableDeclaration", - "scope": 6075, + "scope": 6596, "src": "19869:22:21", "stateVariable": false, "storageLocation": "default", @@ -69523,7 +69523,7 @@ "typeString": "uint256" }, "typeName": { - "id": 6060, + "id": 6581, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "19869:7:21", @@ -69535,13 +69535,13 @@ "visibility": "internal" } ], - "id": 6068, + "id": 6589, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6067, + "id": 6588, "isConstant": false, "isLValue": false, "isPure": false, @@ -69553,17 +69553,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6064, + "id": 6585, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 6062, + "id": 6583, "name": "penalizationAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6036, + "referencedDeclaration": 6557, "src": "19895:18:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -69573,11 +69573,11 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 6063, + "id": 6584, "name": "rewardP", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4786, + "referencedDeclaration": 5307, "src": "19916:7:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -69591,7 +69591,7 @@ } } ], - "id": 6065, + "id": 6586, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -69608,7 +69608,7 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 6066, + "id": 6587, "isConstant": false, "isLValue": false, "isPure": true, @@ -69636,7 +69636,7 @@ "arguments": [ { "expression": { - "id": 6070, + "id": 6591, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -69647,7 +69647,7 @@ "typeString": "msg" } }, - "id": 6071, + "id": 6592, "isConstant": false, "isLValue": false, "isPure": false, @@ -69662,11 +69662,11 @@ } }, { - "id": 6072, + "id": 6593, "name": "punisherReward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6061, + "referencedDeclaration": 6582, "src": "19972:14:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -69685,18 +69685,18 @@ "typeString": "uint256" } ], - "id": 6069, + "id": 6590, "name": "increaseBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6993, + "referencedDeclaration": 7514, "src": "19944:15:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 6073, + "id": 6594, "isConstant": false, "isLValue": false, "isPure": false, @@ -69712,7 +69712,7 @@ "typeString": "tuple()" } }, - "id": 6074, + "id": 6595, "nodeType": "ExpressionStatement", "src": "19944:43:21" } @@ -69725,7 +69725,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 6083, + "id": 6604, "isConstant": false, "isLValue": false, "isPure": false, @@ -69735,17 +69735,17 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 6079, + "id": 6600, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 6077, + "id": 6598, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "20025:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -69755,11 +69755,11 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 6078, + "id": 6599, "name": "BRIDGE_REFUNDED_LP_ERROR_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4549, + "referencedDeclaration": 5070, "src": "20057:29:21", "typeDescriptions": { "typeIdentifier": "t_int16", @@ -69779,17 +69779,17 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 6082, + "id": 6603, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 6080, + "id": 6601, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "20102:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -69799,11 +69799,11 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 6081, + "id": 6602, "name": "BRIDGE_REFUNDED_USER_ERROR_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4545, + "referencedDeclaration": 5066, "src": "20134:31:21", "typeDescriptions": { "typeIdentifier": "t_int16", @@ -69822,41 +69822,41 @@ "typeString": "bool" } }, - "id": 6103, + "id": 6624, "nodeType": "IfStatement", "src": "20008:447:21", "trueBody": { - "id": 6102, + "id": 6623, "nodeType": "Block", "src": "20176:279:21", "statements": [ { "expression": { - "id": 6088, + "id": 6609, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 6084, + "id": 6605, "name": "processedQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4800, + "referencedDeclaration": 5321, "src": "20225:15:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", "typeString": "mapping(bytes32 => uint8)" } }, - "id": 6086, + "id": 6607, "indexExpression": { - "id": 6085, + "id": 6606, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "20241:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -69877,11 +69877,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 6087, + "id": 6608, "name": "PROCESSED_QUOTE_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4541, + "referencedDeclaration": 5062, "src": "20254:20:21", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -69894,13 +69894,13 @@ "typeString": "uint8" } }, - "id": 6089, + "id": 6610, "nodeType": "ExpressionStatement", "src": "20225:49:21" }, { "expression": { - "id": 6093, + "id": 6614, "isConstant": false, "isLValue": false, "isPure": false, @@ -69911,24 +69911,24 @@ "src": "20288:30:21", "subExpression": { "baseExpression": { - "id": 6090, + "id": 6611, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4776, + "referencedDeclaration": 5297, "src": "20295:12:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$4595_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" } }, - "id": 6092, + "id": 6613, "indexExpression": { - "id": 6091, + "id": 6612, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "20308:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -69942,7 +69942,7 @@ "nodeType": "IndexAccess", "src": "20295:23:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$4595_storage", + "typeIdentifier": "t_struct$_Registry_$5116_storage", "typeString": "struct LiquidityBridgeContract.Registry storage ref" } }, @@ -69951,7 +69951,7 @@ "typeString": "tuple()" } }, - "id": 6094, + "id": 6615, "nodeType": "ExpressionStatement", "src": "20288:30:21" }, @@ -69959,11 +69959,11 @@ "eventCall": { "arguments": [ { - "id": 6096, + "id": 6617, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "20355:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -69971,11 +69971,11 @@ } }, { - "id": 6097, + "id": 6618, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "20366:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -69994,18 +69994,18 @@ "typeString": "int256" } ], - "id": 6095, + "id": 6616, "name": "BridgeCapExceeded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4697, + "referencedDeclaration": 5218, "src": "20337:17:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_int256_$returns$__$", "typeString": "function (bytes32,int256)" } }, - "id": 6098, + "id": 6619, "isConstant": false, "isLValue": false, "isPure": false, @@ -70021,25 +70021,25 @@ "typeString": "tuple()" } }, - "id": 6099, + "id": 6620, "nodeType": "EmitStatement", "src": "20332:63:21" }, { "expression": { - "id": 6100, + "id": 6621, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "20416:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, - "functionReturnParameters": 5922, - "id": 6101, + "functionReturnParameters": 6443, + "id": 6622, "nodeType": "Return", "src": "20409:35:21" } @@ -70048,17 +70048,17 @@ }, { "assignments": [ - 6105 + 6626 ], "declarations": [ { "constant": false, - "id": 6105, + "id": 6626, "mutability": "mutable", "name": "transferredAmount", "nameLocation": "20646:17:21", "nodeType": "VariableDeclaration", - "scope": 6294, + "scope": 6815, "src": "20641:22:21", "stateVariable": false, "storageLocation": "default", @@ -70067,7 +70067,7 @@ "typeString": "uint256" }, "typeName": { - "id": 6104, + "id": 6625, "name": "uint", "nodeType": "ElementaryTypeName", "src": "20641:4:21", @@ -70079,15 +70079,15 @@ "visibility": "internal" } ], - "id": 6110, + "id": 6631, "initialValue": { "arguments": [ { - "id": 6108, + "id": 6629, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "20671:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -70102,7 +70102,7 @@ "typeString": "int256" } ], - "id": 6107, + "id": 6628, "isConstant": false, "isLValue": false, "isPure": true, @@ -70114,14 +70114,14 @@ "typeString": "type(uint256)" }, "typeName": { - "id": 6106, + "id": 6627, "name": "uint", "nodeType": "ElementaryTypeName", "src": "20666:4:21", "typeDescriptions": {} } }, - "id": 6109, + "id": 6630, "isConstant": false, "isLValue": false, "isPure": false, @@ -70144,23 +70144,23 @@ "expression": { "arguments": [ { - "id": 6114, + "id": 6635, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "20736:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, { - "id": 6115, + "id": 6636, "name": "transferredAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6105, + "referencedDeclaration": 6626, "src": "20743:17:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -70171,7 +70171,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" }, { @@ -70180,18 +70180,18 @@ } ], "expression": { - "id": 6111, + "id": 6632, "name": "Quotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10556, + "referencedDeclaration": 11152, "src": "20711:6:21", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Quotes_$10556_$", + "typeIdentifier": "t_type$_t_contract$_Quotes_$11152_$", "typeString": "type(library Quotes)" } }, - "id": 6113, + "id": 6634, "isConstant": false, "isLValue": false, "isPure": false, @@ -70199,14 +70199,14 @@ "memberLocation": "20718:17:21", "memberName": "checkAgreedAmount", "nodeType": "MemberAccess", - "referencedDeclaration": 10555, + "referencedDeclaration": 11151, "src": "20711:24:21", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PeginQuote_$10328_memory_ptr_$_t_uint256_$returns$__$", + "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PeginQuote_$10924_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (struct Quotes.PeginQuote memory,uint256) pure" } }, - "id": 6116, + "id": 6637, "isConstant": false, "isLValue": false, "isPure": false, @@ -70222,7 +70222,7 @@ "typeString": "tuple()" } }, - "id": 6117, + "id": 6638, "nodeType": "ExpressionStatement", "src": "20711:50:21" }, @@ -70232,7 +70232,7 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 6123, + "id": 6644, "isConstant": false, "isLValue": false, "isPure": false, @@ -70240,24 +70240,24 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 6118, + "id": 6639, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4776, + "referencedDeclaration": 5297, "src": "20776:12:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$4595_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" } }, - "id": 6120, + "id": 6641, "indexExpression": { - "id": 6119, + "id": 6640, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "20789:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -70271,11 +70271,11 @@ "nodeType": "IndexAccess", "src": "20776:23:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$4595_storage", + "typeIdentifier": "t_struct$_Registry_$5116_storage", "typeString": "struct LiquidityBridgeContract.Registry storage ref" } }, - "id": 6121, + "id": 6642, "isConstant": false, "isLValue": true, "isPure": false, @@ -70283,7 +70283,7 @@ "memberLocation": "20800:9:21", "memberName": "timestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 4592, + "referencedDeclaration": 5113, "src": "20776:33:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -70294,7 +70294,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 6122, + "id": 6643, "isConstant": false, "isLValue": false, "isPure": true, @@ -70315,23 +70315,23 @@ } }, "falseBody": { - "id": 6274, + "id": 6795, "nodeType": "Block", "src": "22152:1234:21", "statements": [ { "assignments": [ - 6201 + 6722 ], "declarations": [ { "constant": false, - "id": 6201, + "id": 6722, "mutability": "mutable", "name": "refundAmount", "nameLocation": "22171:12:21", "nodeType": "VariableDeclaration", - "scope": 6274, + "scope": 6795, "src": "22166:17:21", "stateVariable": false, "storageLocation": "default", @@ -70340,7 +70340,7 @@ "typeString": "uint256" }, "typeName": { - "id": 6200, + "id": 6721, "name": "uint", "nodeType": "ElementaryTypeName", "src": "22166:4:21", @@ -70352,13 +70352,13 @@ "visibility": "internal" } ], - "id": 6203, + "id": 6724, "initialValue": { - "id": 6202, + "id": 6723, "name": "transferredAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6105, + "referencedDeclaration": 6626, "src": "22186:17:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -70374,25 +70374,25 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 6210, + "id": 6731, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6204, + "id": 6725, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "22222:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6205, + "id": 6726, "isConstant": false, "isLValue": true, "isPure": false, @@ -70400,7 +70400,7 @@ "memberLocation": "22228:14:21", "memberName": "callOnRegister", "nodeType": "MemberAccess", - "referencedDeclaration": 10327, + "referencedDeclaration": 10923, "src": "22222:20:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -70414,17 +70414,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6209, + "id": 6730, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 6206, + "id": 6727, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6201, + "referencedDeclaration": 6722, "src": "22246:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -70435,18 +70435,18 @@ "operator": ">=", "rightExpression": { "expression": { - "id": 6207, + "id": 6728, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "22262:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6208, + "id": 6729, "isConstant": false, "isLValue": true, "isPure": false, @@ -70454,7 +70454,7 @@ "memberLocation": "22268:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10317, + "referencedDeclaration": 10913, "src": "22262:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -70473,28 +70473,28 @@ "typeString": "bool" } }, - "id": 6249, + "id": 6770, "nodeType": "IfStatement", "src": "22218:656:21", "trueBody": { - "id": 6248, + "id": 6769, "nodeType": "Block", "src": "22275:599:21", "statements": [ { "assignments": [ - 6212, + 6733, null ], "declarations": [ { "constant": false, - "id": 6212, + "id": 6733, "mutability": "mutable", "name": "callSuccess", "nameLocation": "22299:11:21", "nodeType": "VariableDeclaration", - "scope": 6248, + "scope": 6769, "src": "22294:16:21", "stateVariable": false, "storageLocation": "default", @@ -70503,7 +70503,7 @@ "typeString": "bool" }, "typeName": { - "id": 6211, + "id": 6732, "name": "bool", "nodeType": "ElementaryTypeName", "src": "22294:4:21", @@ -70516,23 +70516,23 @@ }, null ], - "id": 6224, + "id": 6745, "initialValue": { "arguments": [ { "expression": { - "id": 6221, + "id": 6742, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "22453:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6222, + "id": 6743, "isConstant": false, "isLValue": true, "isPure": false, @@ -70540,7 +70540,7 @@ "memberLocation": "22459:4:21", "memberName": "data", "nodeType": "MemberAccess", - "referencedDeclaration": 10311, + "referencedDeclaration": 10907, "src": "22453:10:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -70564,18 +70564,18 @@ ], "expression": { "expression": { - "id": 6213, + "id": 6734, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "22315:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6214, + "id": 6735, "isConstant": false, "isLValue": true, "isPure": false, @@ -70583,14 +70583,14 @@ "memberLocation": "22321:15:21", "memberName": "contractAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10309, + "referencedDeclaration": 10905, "src": "22315:21:21", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 6215, + "id": 6736, "isConstant": false, "isLValue": false, "isPure": false, @@ -70604,7 +70604,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 6220, + "id": 6741, "isConstant": false, "isLValue": false, "isPure": false, @@ -70617,18 +70617,18 @@ "options": [ { "expression": { - "id": 6216, + "id": 6737, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "22372:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6217, + "id": 6738, "isConstant": false, "isLValue": true, "isPure": false, @@ -70636,7 +70636,7 @@ "memberLocation": "22378:8:21", "memberName": "gasLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10313, + "referencedDeclaration": 10909, "src": "22372:14:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -70645,18 +70645,18 @@ }, { "expression": { - "id": 6218, + "id": 6739, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "22419:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6219, + "id": 6740, "isConstant": false, "isLValue": true, "isPure": false, @@ -70664,7 +70664,7 @@ "memberLocation": "22425:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10317, + "referencedDeclaration": 10913, "src": "22419:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -70678,7 +70678,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 6223, + "id": 6744, "isConstant": false, "isLValue": false, "isPure": false, @@ -70702,7 +70702,7 @@ "arguments": [ { "expression": { - "id": 6226, + "id": 6747, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -70713,7 +70713,7 @@ "typeString": "msg" } }, - "id": 6227, + "id": 6748, "isConstant": false, "isLValue": false, "isPure": false, @@ -70729,18 +70729,18 @@ }, { "expression": { - "id": 6228, + "id": 6749, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "22552:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6229, + "id": 6750, "isConstant": false, "isLValue": true, "isPure": false, @@ -70748,7 +70748,7 @@ "memberLocation": "22558:15:21", "memberName": "contractAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10309, + "referencedDeclaration": 10905, "src": "22552:21:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -70757,18 +70757,18 @@ }, { "expression": { - "id": 6230, + "id": 6751, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "22595:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6231, + "id": 6752, "isConstant": false, "isLValue": true, "isPure": false, @@ -70776,7 +70776,7 @@ "memberLocation": "22601:8:21", "memberName": "gasLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10313, + "referencedDeclaration": 10909, "src": "22595:14:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -70785,18 +70785,18 @@ }, { "expression": { - "id": 6232, + "id": 6753, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "22631:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6233, + "id": 6754, "isConstant": false, "isLValue": true, "isPure": false, @@ -70804,7 +70804,7 @@ "memberLocation": "22637:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10317, + "referencedDeclaration": 10913, "src": "22631:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -70813,18 +70813,18 @@ }, { "expression": { - "id": 6234, + "id": 6755, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "22664:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6235, + "id": 6756, "isConstant": false, "isLValue": true, "isPure": false, @@ -70832,7 +70832,7 @@ "memberLocation": "22670:4:21", "memberName": "data", "nodeType": "MemberAccess", - "referencedDeclaration": 10311, + "referencedDeclaration": 10907, "src": "22664:10:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -70840,11 +70840,11 @@ } }, { - "id": 6236, + "id": 6757, "name": "callSuccess", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6212, + "referencedDeclaration": 6733, "src": "22696:11:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -70852,11 +70852,11 @@ } }, { - "id": 6237, + "id": 6758, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "22729:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -70895,18 +70895,18 @@ "typeString": "bytes32" } ], - "id": 6225, + "id": 6746, "name": "CallForUser", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4677, + "referencedDeclaration": 5198, "src": "22487:11:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$_t_bool_$_t_bytes32_$returns$__$", "typeString": "function (address,address,uint256,uint256,bytes memory,bool,bytes32)" } }, - "id": 6238, + "id": 6759, "isConstant": false, "isLValue": false, "isPure": false, @@ -70922,44 +70922,44 @@ "typeString": "tuple()" } }, - "id": 6239, + "id": 6760, "nodeType": "EmitStatement", "src": "22482:274:21" }, { "condition": { - "id": 6240, + "id": 6761, "name": "callSuccess", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6212, + "referencedDeclaration": 6733, "src": "22779:11:21", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 6247, + "id": 6768, "nodeType": "IfStatement", "src": "22775:85:21", "trueBody": { - "id": 6246, + "id": 6767, "nodeType": "Block", "src": "22792:68:21", "statements": [ { "expression": { - "id": 6244, + "id": 6765, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 6241, + "id": 6762, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6201, + "referencedDeclaration": 6722, "src": "22814:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -70970,18 +70970,18 @@ "operator": "-=", "rightHandSide": { "expression": { - "id": 6242, + "id": 6763, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "22830:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6243, + "id": 6764, "isConstant": false, "isLValue": true, "isPure": false, @@ -70989,7 +70989,7 @@ "memberLocation": "22836:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10317, + "referencedDeclaration": 10913, "src": "22830:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71002,7 +71002,7 @@ "typeString": "uint256" } }, - "id": 6245, + "id": 6766, "nodeType": "ExpressionStatement", "src": "22814:27:21" } @@ -71018,17 +71018,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6252, + "id": 6773, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 6250, + "id": 6771, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6201, + "referencedDeclaration": 6722, "src": "22891:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71038,11 +71038,11 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 6251, + "id": 6772, "name": "dust", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4790, + "referencedDeclaration": 5311, "src": "22906:4:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71055,28 +71055,28 @@ "typeString": "bool" } }, - "id": 6273, + "id": 6794, "nodeType": "IfStatement", "src": "22887:489:21", "trueBody": { - "id": 6272, + "id": 6793, "nodeType": "Block", "src": "22912:464:21", "statements": [ { "assignments": [ - 6254, + 6775, null ], "declarations": [ { "constant": false, - "id": 6254, + "id": 6775, "mutability": "mutable", "name": "success", "nameLocation": "23015:7:21", "nodeType": "VariableDeclaration", - "scope": 6272, + "scope": 6793, "src": "23010:12:21", "stateVariable": false, "storageLocation": "default", @@ -71085,7 +71085,7 @@ "typeString": "bool" }, "typeName": { - "id": 6253, + "id": 6774, "name": "bool", "nodeType": "ElementaryTypeName", "src": "23010:4:21", @@ -71098,12 +71098,12 @@ }, null ], - "id": 6263, + "id": 6784, "initialValue": { "arguments": [ { "hexValue": "", - "id": 6261, + "id": 6782, "isConstant": false, "isLValue": false, "isPure": true, @@ -71134,18 +71134,18 @@ ], "expression": { "expression": { - "id": 6255, + "id": 6776, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "23027:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6256, + "id": 6777, "isConstant": false, "isLValue": true, "isPure": false, @@ -71153,14 +71153,14 @@ "memberLocation": "23033:16:21", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10301, + "referencedDeclaration": 10897, "src": "23027:22:21", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "id": 6257, + "id": 6778, "isConstant": false, "isLValue": false, "isPure": false, @@ -71174,7 +71174,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 6260, + "id": 6781, "isConstant": false, "isLValue": false, "isPure": false, @@ -71186,11 +71186,11 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 6258, + "id": 6779, "name": "MAX_REFUND_GAS_LIMIT", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4532, + "referencedDeclaration": 5053, "src": "23085:20:21", "typeDescriptions": { "typeIdentifier": "t_uint16", @@ -71198,11 +71198,11 @@ } }, { - "id": 6259, + "id": 6780, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6201, + "referencedDeclaration": 6722, "src": "23138:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71216,7 +71216,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 6262, + "id": 6783, "isConstant": false, "isLValue": false, "isPure": false, @@ -71240,18 +71240,18 @@ "arguments": [ { "expression": { - "id": 6265, + "id": 6786, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "23227:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6266, + "id": 6787, "isConstant": false, "isLValue": true, "isPure": false, @@ -71259,7 +71259,7 @@ "memberLocation": "23233:16:21", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10301, + "referencedDeclaration": 10897, "src": "23227:22:21", "typeDescriptions": { "typeIdentifier": "t_address_payable", @@ -71267,11 +71267,11 @@ } }, { - "id": 6267, + "id": 6788, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6201, + "referencedDeclaration": 6722, "src": "23271:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71279,11 +71279,11 @@ } }, { - "id": 6268, + "id": 6789, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6254, + "referencedDeclaration": 6775, "src": "23305:7:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -71291,11 +71291,11 @@ } }, { - "id": 6269, + "id": 6790, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "23334:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -71322,18 +71322,18 @@ "typeString": "bytes32" } ], - "id": 6264, + "id": 6785, "name": "Refund", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4719, + "referencedDeclaration": 5240, "src": "23199:6:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bool_$_t_bytes32_$returns$__$", "typeString": "function (address,uint256,bool,bytes32)" } }, - "id": 6270, + "id": 6791, "isConstant": false, "isLValue": false, "isPure": false, @@ -71349,7 +71349,7 @@ "typeString": "tuple()" } }, - "id": 6271, + "id": 6792, "nodeType": "EmitStatement", "src": "23194:167:21" } @@ -71358,27 +71358,27 @@ } ] }, - "id": 6275, + "id": 6796, "nodeType": "IfStatement", "src": "20772:2614:21", "trueBody": { - "id": 6199, + "id": 6720, "nodeType": "Block", "src": "20815:1331:21", "statements": [ { "assignments": [ - 6125 + 6646 ], "declarations": [ { "constant": false, - "id": 6125, + "id": 6646, "mutability": "mutable", "name": "refundAmount", "nameLocation": "20834:12:21", "nodeType": "VariableDeclaration", - "scope": 6199, + "scope": 6720, "src": "20829:17:21", "stateVariable": false, "storageLocation": "default", @@ -71387,7 +71387,7 @@ "typeString": "uint256" }, "typeName": { - "id": 6124, + "id": 6645, "name": "uint", "nodeType": "ElementaryTypeName", "src": "20829:4:21", @@ -71399,7 +71399,7 @@ "visibility": "internal" } ], - "id": 6126, + "id": 6647, "nodeType": "VariableDeclarationStatement", "src": "20829:17:21" }, @@ -71407,24 +71407,24 @@ "condition": { "expression": { "baseExpression": { - "id": 6127, + "id": 6648, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4776, + "referencedDeclaration": 5297, "src": "20865:12:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$4595_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" } }, - "id": 6129, + "id": 6650, "indexExpression": { - "id": 6128, + "id": 6649, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "20878:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -71438,11 +71438,11 @@ "nodeType": "IndexAccess", "src": "20865:23:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$4595_storage", + "typeIdentifier": "t_struct$_Registry_$5116_storage", "typeString": "struct LiquidityBridgeContract.Registry storage ref" } }, - "id": 6130, + "id": 6651, "isConstant": false, "isLValue": true, "isPure": false, @@ -71450,7 +71450,7 @@ "memberLocation": "20889:7:21", "memberName": "success", "nodeType": "MemberAccess", - "referencedDeclaration": 4594, + "referencedDeclaration": 5115, "src": "20865:31:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -71458,23 +71458,23 @@ } }, "falseBody": { - "id": 6151, + "id": 6672, "nodeType": "Block", "src": "21061:85:21", "statements": [ { "expression": { - "id": 6149, + "id": 6670, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 6143, + "id": 6664, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6125, + "referencedDeclaration": 6646, "src": "21079:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71486,11 +71486,11 @@ "rightHandSide": { "arguments": [ { - "id": 6145, + "id": 6666, "name": "transferredAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6105, + "referencedDeclaration": 6626, "src": "21098:17:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71499,18 +71499,18 @@ }, { "expression": { - "id": 6146, + "id": 6667, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "21117:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6147, + "id": 6668, "isConstant": false, "isLValue": true, "isPure": false, @@ -71518,7 +71518,7 @@ "memberLocation": "21123:7:21", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10305, + "referencedDeclaration": 10901, "src": "21117:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71537,18 +71537,18 @@ "typeString": "uint256" } ], - "id": 6144, + "id": 6665, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6974, + "referencedDeclaration": 7495, "src": "21094:3:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 6148, + "id": 6669, "isConstant": false, "isLValue": false, "isPure": false, @@ -71570,33 +71570,33 @@ "typeString": "uint256" } }, - "id": 6150, + "id": 6671, "nodeType": "ExpressionStatement", "src": "21079:52:21" } ] }, - "id": 6152, + "id": 6673, "nodeType": "IfStatement", "src": "20861:285:21", "trueBody": { - "id": 6142, + "id": 6663, "nodeType": "Block", "src": "20898:157:21", "statements": [ { "expression": { - "id": 6140, + "id": 6661, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 6131, + "id": 6652, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6125, + "referencedDeclaration": 6646, "src": "20916:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71608,11 +71608,11 @@ "rightHandSide": { "arguments": [ { - "id": 6133, + "id": 6654, "name": "transferredAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6105, + "referencedDeclaration": 6626, "src": "20956:17:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71624,25 +71624,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6138, + "id": 6659, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6134, + "id": 6655, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "20995:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6135, + "id": 6656, "isConstant": false, "isLValue": true, "isPure": false, @@ -71650,7 +71650,7 @@ "memberLocation": "21001:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10317, + "referencedDeclaration": 10913, "src": "20995:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71661,18 +71661,18 @@ "operator": "+", "rightExpression": { "expression": { - "id": 6136, + "id": 6657, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "21009:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6137, + "id": 6658, "isConstant": false, "isLValue": true, "isPure": false, @@ -71680,7 +71680,7 @@ "memberLocation": "21015:7:21", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10305, + "referencedDeclaration": 10901, "src": "21009:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71705,18 +71705,18 @@ "typeString": "uint256" } ], - "id": 6132, + "id": 6653, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6974, + "referencedDeclaration": 7495, "src": "20931:3:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 6139, + "id": 6660, "isConstant": false, "isLValue": false, "isPure": false, @@ -71738,7 +71738,7 @@ "typeString": "uint256" } }, - "id": 6141, + "id": 6662, "nodeType": "ExpressionStatement", "src": "20916:124:21" } @@ -71750,18 +71750,18 @@ "arguments": [ { "expression": { - "id": 6154, + "id": 6675, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "21175:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6155, + "id": 6676, "isConstant": false, "isLValue": true, "isPure": false, @@ -71769,7 +71769,7 @@ "memberLocation": "21181:27:21", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10297, + "referencedDeclaration": 10893, "src": "21175:33:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -71777,11 +71777,11 @@ } }, { - "id": 6156, + "id": 6677, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6125, + "referencedDeclaration": 6646, "src": "21210:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71800,18 +71800,18 @@ "typeString": "uint256" } ], - "id": 6153, + "id": 6674, "name": "increaseBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6993, + "referencedDeclaration": 7514, "src": "21159:15:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 6157, + "id": 6678, "isConstant": false, "isLValue": false, "isPure": false, @@ -71827,23 +71827,23 @@ "typeString": "tuple()" } }, - "id": 6158, + "id": 6679, "nodeType": "ExpressionStatement", "src": "21159:64:21" }, { "assignments": [ - 6160 + 6681 ], "declarations": [ { "constant": false, - "id": 6160, + "id": 6681, "mutability": "mutable", "name": "remainingAmount", "nameLocation": "21242:15:21", "nodeType": "VariableDeclaration", - "scope": 6199, + "scope": 6720, "src": "21237:20:21", "stateVariable": false, "storageLocation": "default", @@ -71852,7 +71852,7 @@ "typeString": "uint256" }, "typeName": { - "id": 6159, + "id": 6680, "name": "uint", "nodeType": "ElementaryTypeName", "src": "21237:4:21", @@ -71864,23 +71864,23 @@ "visibility": "internal" } ], - "id": 6164, + "id": 6685, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6163, + "id": 6684, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 6161, + "id": 6682, "name": "transferredAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6105, + "referencedDeclaration": 6626, "src": "21260:17:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71890,11 +71890,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 6162, + "id": 6683, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6125, + "referencedDeclaration": 6646, "src": "21280:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71916,17 +71916,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6167, + "id": 6688, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 6165, + "id": 6686, "name": "remainingAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6160, + "referencedDeclaration": 6681, "src": "21311:15:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71936,11 +71936,11 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 6166, + "id": 6687, "name": "dust", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4790, + "referencedDeclaration": 5311, "src": "21329:4:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -71953,28 +71953,28 @@ "typeString": "bool" } }, - "id": 6198, + "id": 6719, "nodeType": "IfStatement", "src": "21307:829:21", "trueBody": { - "id": 6197, + "id": 6718, "nodeType": "Block", "src": "21335:801:21", "statements": [ { "assignments": [ - 6169, + 6690, null ], "declarations": [ { "constant": false, - "id": 6169, + "id": 6690, "mutability": "mutable", "name": "success", "nameLocation": "21441:7:21", "nodeType": "VariableDeclaration", - "scope": 6197, + "scope": 6718, "src": "21436:12:21", "stateVariable": false, "storageLocation": "default", @@ -71983,7 +71983,7 @@ "typeString": "bool" }, "typeName": { - "id": 6168, + "id": 6689, "name": "bool", "nodeType": "ElementaryTypeName", "src": "21436:4:21", @@ -71996,12 +71996,12 @@ }, null ], - "id": 6178, + "id": 6699, "initialValue": { "arguments": [ { "hexValue": "", - "id": 6176, + "id": 6697, "isConstant": false, "isLValue": false, "isPure": true, @@ -72032,18 +72032,18 @@ ], "expression": { "expression": { - "id": 6170, + "id": 6691, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "21453:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6171, + "id": 6692, "isConstant": false, "isLValue": true, "isPure": false, @@ -72051,14 +72051,14 @@ "memberLocation": "21459:16:21", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10301, + "referencedDeclaration": 10897, "src": "21453:22:21", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "id": 6172, + "id": 6693, "isConstant": false, "isLValue": false, "isPure": false, @@ -72072,7 +72072,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 6175, + "id": 6696, "isConstant": false, "isLValue": false, "isPure": false, @@ -72084,11 +72084,11 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 6173, + "id": 6694, "name": "MAX_REFUND_GAS_LIMIT", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4532, + "referencedDeclaration": 5053, "src": "21511:20:21", "typeDescriptions": { "typeIdentifier": "t_uint16", @@ -72096,11 +72096,11 @@ } }, { - "id": 6174, + "id": 6695, "name": "remainingAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6160, + "referencedDeclaration": 6681, "src": "21564:15:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -72114,7 +72114,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 6177, + "id": 6698, "isConstant": false, "isLValue": false, "isPure": false, @@ -72138,18 +72138,18 @@ "arguments": [ { "expression": { - "id": 6180, + "id": 6701, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "21656:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6181, + "id": 6702, "isConstant": false, "isLValue": true, "isPure": false, @@ -72157,7 +72157,7 @@ "memberLocation": "21662:16:21", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10301, + "referencedDeclaration": 10897, "src": "21656:22:21", "typeDescriptions": { "typeIdentifier": "t_address_payable", @@ -72165,11 +72165,11 @@ } }, { - "id": 6182, + "id": 6703, "name": "remainingAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6160, + "referencedDeclaration": 6681, "src": "21700:15:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -72177,11 +72177,11 @@ } }, { - "id": 6183, + "id": 6704, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6169, + "referencedDeclaration": 6690, "src": "21737:7:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -72189,11 +72189,11 @@ } }, { - "id": 6184, + "id": 6705, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "21766:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -72220,18 +72220,18 @@ "typeString": "bytes32" } ], - "id": 6179, + "id": 6700, "name": "Refund", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4719, + "referencedDeclaration": 5240, "src": "21628:6:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bool_$_t_bytes32_$returns$__$", "typeString": "function (address,uint256,bool,bytes32)" } }, - "id": 6185, + "id": 6706, "isConstant": false, "isLValue": false, "isPure": false, @@ -72247,13 +72247,13 @@ "typeString": "tuple()" } }, - "id": 6186, + "id": 6707, "nodeType": "EmitStatement", "src": "21623:170:21" }, { "condition": { - "id": 6188, + "id": 6709, "isConstant": false, "isLValue": false, "isPure": false, @@ -72263,11 +72263,11 @@ "prefix": true, "src": "21816:8:21", "subExpression": { - "id": 6187, + "id": 6708, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6169, + "referencedDeclaration": 6690, "src": "21817:7:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -72279,11 +72279,11 @@ "typeString": "bool" } }, - "id": 6196, + "id": 6717, "nodeType": "IfStatement", "src": "21812:310:21", "trueBody": { - "id": 6195, + "id": 6716, "nodeType": "Block", "src": "21826:296:21", "statements": [ @@ -72292,18 +72292,18 @@ "arguments": [ { "expression": { - "id": 6190, + "id": 6711, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5908, + "referencedDeclaration": 6429, "src": "22007:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6191, + "id": 6712, "isConstant": false, "isLValue": true, "isPure": false, @@ -72311,7 +72311,7 @@ "memberLocation": "22013:27:21", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10297, + "referencedDeclaration": 10893, "src": "22007:33:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -72319,11 +72319,11 @@ } }, { - "id": 6192, + "id": 6713, "name": "remainingAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6160, + "referencedDeclaration": 6681, "src": "22066:15:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -72342,18 +72342,18 @@ "typeString": "uint256" } ], - "id": 6189, + "id": 6710, "name": "increaseBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6993, + "referencedDeclaration": 7514, "src": "21966:15:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 6193, + "id": 6714, "isConstant": false, "isLValue": false, "isPure": false, @@ -72369,7 +72369,7 @@ "typeString": "tuple()" } }, - "id": 6194, + "id": 6715, "nodeType": "ExpressionStatement", "src": "21966:137:21" } @@ -72384,31 +72384,31 @@ }, { "expression": { - "id": 6280, + "id": 6801, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 6276, + "id": 6797, "name": "processedQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4800, + "referencedDeclaration": 5321, "src": "23395:15:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", "typeString": "mapping(bytes32 => uint8)" } }, - "id": 6278, + "id": 6799, "indexExpression": { - "id": 6277, + "id": 6798, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "23411:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -72429,11 +72429,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 6279, + "id": 6800, "name": "PROCESSED_QUOTE_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4541, + "referencedDeclaration": 5062, "src": "23424:20:21", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -72446,13 +72446,13 @@ "typeString": "uint8" } }, - "id": 6281, + "id": 6802, "nodeType": "ExpressionStatement", "src": "23395:49:21" }, { "expression": { - "id": 6285, + "id": 6806, "isConstant": false, "isLValue": false, "isPure": false, @@ -72463,24 +72463,24 @@ "src": "23454:30:21", "subExpression": { "baseExpression": { - "id": 6282, + "id": 6803, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4776, + "referencedDeclaration": 5297, "src": "23461:12:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$4595_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" } }, - "id": 6284, + "id": 6805, "indexExpression": { - "id": 6283, + "id": 6804, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "23474:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -72494,7 +72494,7 @@ "nodeType": "IndexAccess", "src": "23461:23:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$4595_storage", + "typeIdentifier": "t_struct$_Registry_$5116_storage", "typeString": "struct LiquidityBridgeContract.Registry storage ref" } }, @@ -72503,7 +72503,7 @@ "typeString": "tuple()" } }, - "id": 6286, + "id": 6807, "nodeType": "ExpressionStatement", "src": "23454:30:21" }, @@ -72511,11 +72511,11 @@ "eventCall": { "arguments": [ { - "id": 6288, + "id": 6809, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5924, + "referencedDeclaration": 6445, "src": "23515:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -72523,11 +72523,11 @@ } }, { - "id": 6289, + "id": 6810, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "23526:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -72546,18 +72546,18 @@ "typeString": "int256" } ], - "id": 6287, + "id": 6808, "name": "PegInRegistered", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4683, + "referencedDeclaration": 5204, "src": "23499:15:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_int256_$returns$__$", "typeString": "function (bytes32,int256)" } }, - "id": 6290, + "id": 6811, "isConstant": false, "isLValue": false, "isPure": false, @@ -72573,46 +72573,46 @@ "typeString": "tuple()" } }, - "id": 6291, + "id": 6812, "nodeType": "EmitStatement", "src": "23494:61:21" }, { "expression": { - "id": 6292, + "id": 6813, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5967, + "referencedDeclaration": 6488, "src": "23572:28:21", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, - "functionReturnParameters": 5922, - "id": 6293, + "functionReturnParameters": 6443, + "id": 6814, "nodeType": "Return", "src": "23565:35:21" } ] }, "documentation": { - "id": 5905, + "id": 6426, "nodeType": "StructuredDocumentation", "src": "16697:506:21", "text": "@dev Registers a peg-in transaction with the bridge and pays to the involved parties\n@param quote The quote of the service\n@param signature The signature of the quote\n@param btcRawTransaction The peg-in transaction\n@param partialMerkleTree The merkle tree path that proves transaction inclusion\n@param height The block that contains the peg-in transaction\n@return The total peg-in amount received from the bridge contract or an error code" }, "functionSelector": "6e2e8c70", - "id": 6295, + "id": 6816, "implemented": true, "kind": "function", "modifiers": [ { - "id": 5919, + "id": 6440, "kind": "modifierInvocation", "modifierName": { - "id": 5918, + "id": 6439, "name": "nonReentrant", "nameLocations": [ "17420:12:21" @@ -72629,42 +72629,42 @@ "nameLocation": "17217:13:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 5917, + "id": 6438, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5908, + "id": 6429, "mutability": "mutable", "name": "quote", "nameLocation": "17265:5:21", "nodeType": "VariableDeclaration", - "scope": 6295, + "scope": 6816, "src": "17240:30:21", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote" }, "typeName": { - "id": 5907, + "id": 6428, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 5906, + "id": 6427, "name": "Quotes.PeginQuote", "nameLocations": [ "17240:6:21", "17247:10:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "17240:17:21" }, - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "17240:17:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_storage_ptr", "typeString": "struct Quotes.PeginQuote" } }, @@ -72672,12 +72672,12 @@ }, { "constant": false, - "id": 5910, + "id": 6431, "mutability": "mutable", "name": "signature", "nameLocation": "17293:9:21", "nodeType": "VariableDeclaration", - "scope": 6295, + "scope": 6816, "src": "17280:22:21", "stateVariable": false, "storageLocation": "memory", @@ -72686,7 +72686,7 @@ "typeString": "bytes" }, "typeName": { - "id": 5909, + "id": 6430, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "17280:5:21", @@ -72699,12 +72699,12 @@ }, { "constant": false, - "id": 5912, + "id": 6433, "mutability": "mutable", "name": "btcRawTransaction", "nameLocation": "17325:17:21", "nodeType": "VariableDeclaration", - "scope": 6295, + "scope": 6816, "src": "17312:30:21", "stateVariable": false, "storageLocation": "memory", @@ -72713,7 +72713,7 @@ "typeString": "bytes" }, "typeName": { - "id": 5911, + "id": 6432, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "17312:5:21", @@ -72726,12 +72726,12 @@ }, { "constant": false, - "id": 5914, + "id": 6435, "mutability": "mutable", "name": "partialMerkleTree", "nameLocation": "17365:17:21", "nodeType": "VariableDeclaration", - "scope": 6295, + "scope": 6816, "src": "17352:30:21", "stateVariable": false, "storageLocation": "memory", @@ -72740,7 +72740,7 @@ "typeString": "bytes" }, "typeName": { - "id": 5913, + "id": 6434, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "17352:5:21", @@ -72753,12 +72753,12 @@ }, { "constant": false, - "id": 5916, + "id": 6437, "mutability": "mutable", "name": "height", "nameLocation": "17400:6:21", "nodeType": "VariableDeclaration", - "scope": 6295, + "scope": 6816, "src": "17392:14:21", "stateVariable": false, "storageLocation": "default", @@ -72767,7 +72767,7 @@ "typeString": "uint256" }, "typeName": { - "id": 5915, + "id": 6436, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "17392:7:21", @@ -72782,17 +72782,17 @@ "src": "17230:182:21" }, "returnParameters": { - "id": 5922, + "id": 6443, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 5921, + "id": 6442, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 6295, + "scope": 6816, "src": "17442:6:21", "stateVariable": false, "storageLocation": "default", @@ -72801,7 +72801,7 @@ "typeString": "int256" }, "typeName": { - "id": 5920, + "id": 6441, "name": "int256", "nodeType": "ElementaryTypeName", "src": "17442:6:21", @@ -72815,7 +72815,7 @@ ], "src": "17441:8:21" }, - "scope": 7377, + "scope": 7898, "src": "17208:6399:21", "stateMutability": "nonpayable", "virtual": false, @@ -72823,7 +72823,7 @@ }, { "body": { - "id": 6421, + "id": 6942, "nodeType": "Block", "src": "23796:956:21", "statements": [ @@ -72834,18 +72834,18 @@ "arguments": [ { "expression": { - "id": 6305, + "id": 6826, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6298, + "referencedDeclaration": 6819, "src": "23836:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 6306, + "id": 6827, "isConstant": false, "isLValue": true, "isPure": false, @@ -72853,7 +72853,7 @@ "memberLocation": "23842:12:21", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10332, + "referencedDeclaration": 10928, "src": "23836:18:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -72868,18 +72868,18 @@ "typeString": "address" } ], - "id": 6304, + "id": 6825, "name": "isRegisteredForPegout", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7053, + "referencedDeclaration": 7574, "src": "23814:21:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 6307, + "id": 6828, "isConstant": false, "isLValue": false, "isPure": false, @@ -72897,7 +72897,7 @@ }, { "hexValue": "4c4243303337", - "id": 6308, + "id": 6829, "isConstant": false, "isLValue": false, "isPure": true, @@ -72923,7 +72923,7 @@ "typeString": "literal_string \"LBC037\"" } ], - "id": 6303, + "id": 6824, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -72937,7 +72937,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6309, + "id": 6830, "isConstant": false, "isLValue": false, "isPure": false, @@ -72953,7 +72953,7 @@ "typeString": "tuple()" } }, - "id": 6310, + "id": 6831, "nodeType": "ExpressionStatement", "src": "23806:60:21" }, @@ -72965,7 +72965,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6319, + "id": 6840, "isConstant": false, "isLValue": false, "isPure": false, @@ -72975,25 +72975,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6316, + "id": 6837, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6312, + "id": 6833, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6298, + "referencedDeclaration": 6819, "src": "23884:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 6313, + "id": 6834, "isConstant": false, "isLValue": true, "isPure": false, @@ -73001,7 +73001,7 @@ "memberLocation": "23890:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10348, + "referencedDeclaration": 10944, "src": "23884:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -73012,18 +73012,18 @@ "operator": "+", "rightExpression": { "expression": { - "id": 6314, + "id": 6835, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6298, + "referencedDeclaration": 6819, "src": "23898:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 6315, + "id": 6836, "isConstant": false, "isLValue": true, "isPure": false, @@ -73031,7 +73031,7 @@ "memberLocation": "23904:7:21", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10340, + "referencedDeclaration": 10936, "src": "23898:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -73048,7 +73048,7 @@ "operator": "<=", "rightExpression": { "expression": { - "id": 6317, + "id": 6838, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -73059,7 +73059,7 @@ "typeString": "msg" } }, - "id": 6318, + "id": 6839, "isConstant": false, "isLValue": false, "isPure": false, @@ -73081,7 +73081,7 @@ }, { "hexValue": "4c4243303633", - "id": 6320, + "id": 6841, "isConstant": false, "isLValue": false, "isPure": true, @@ -73107,7 +73107,7 @@ "typeString": "literal_string \"LBC063\"" } ], - "id": 6311, + "id": 6832, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -73121,7 +73121,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6321, + "id": 6842, "isConstant": false, "isLValue": false, "isPure": false, @@ -73137,7 +73137,7 @@ "typeString": "tuple()" } }, - "id": 6322, + "id": 6843, "nodeType": "ExpressionStatement", "src": "23876:59:21" }, @@ -73149,14 +73149,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6328, + "id": 6849, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6324, + "id": 6845, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -73167,7 +73167,7 @@ "typeString": "block" } }, - "id": 6325, + "id": 6846, "isConstant": false, "isLValue": false, "isPure": false, @@ -73185,18 +73185,18 @@ "operator": "<=", "rightExpression": { "expression": { - "id": 6326, + "id": 6847, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6298, + "referencedDeclaration": 6819, "src": "23972:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 6327, + "id": 6848, "isConstant": false, "isLValue": true, "isPure": false, @@ -73204,7 +73204,7 @@ "memberLocation": "23978:16:21", "memberName": "depositDateLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10352, + "referencedDeclaration": 10948, "src": "23972:22:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -73219,7 +73219,7 @@ }, { "hexValue": "4c4243303635", - "id": 6329, + "id": 6850, "isConstant": false, "isLValue": false, "isPure": true, @@ -73245,7 +73245,7 @@ "typeString": "literal_string \"LBC065\"" } ], - "id": 6323, + "id": 6844, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -73259,7 +73259,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6330, + "id": 6851, "isConstant": false, "isLValue": false, "isPure": false, @@ -73275,7 +73275,7 @@ "typeString": "tuple()" } }, - "id": 6331, + "id": 6852, "nodeType": "ExpressionStatement", "src": "23945:60:21" }, @@ -73287,14 +73287,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6337, + "id": 6858, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6333, + "id": 6854, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -73305,7 +73305,7 @@ "typeString": "block" } }, - "id": 6334, + "id": 6855, "isConstant": false, "isLValue": false, "isPure": false, @@ -73323,18 +73323,18 @@ "operator": "<=", "rightExpression": { "expression": { - "id": 6335, + "id": 6856, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6298, + "referencedDeclaration": 6819, "src": "24042:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 6336, + "id": 6857, "isConstant": false, "isLValue": true, "isPure": false, @@ -73342,7 +73342,7 @@ "memberLocation": "24048:10:21", "memberName": "expireDate", "nodeType": "MemberAccess", - "referencedDeclaration": 10360, + "referencedDeclaration": 10956, "src": "24042:16:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -73357,7 +73357,7 @@ }, { "hexValue": "4c4243303436", - "id": 6338, + "id": 6859, "isConstant": false, "isLValue": false, "isPure": true, @@ -73383,7 +73383,7 @@ "typeString": "literal_string \"LBC046\"" } ], - "id": 6332, + "id": 6853, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -73397,7 +73397,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6339, + "id": 6860, "isConstant": false, "isLValue": false, "isPure": false, @@ -73413,7 +73413,7 @@ "typeString": "tuple()" } }, - "id": 6340, + "id": 6861, "nodeType": "ExpressionStatement", "src": "24015:54:21" }, @@ -73425,14 +73425,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6346, + "id": 6867, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6342, + "id": 6863, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -73443,7 +73443,7 @@ "typeString": "block" } }, - "id": 6343, + "id": 6864, "isConstant": false, "isLValue": false, "isPure": false, @@ -73461,18 +73461,18 @@ "operator": "<=", "rightExpression": { "expression": { - "id": 6344, + "id": 6865, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6298, + "referencedDeclaration": 6819, "src": "24103:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 6345, + "id": 6866, "isConstant": false, "isLValue": true, "isPure": false, @@ -73480,7 +73480,7 @@ "memberLocation": "24109:11:21", "memberName": "expireBlock", "nodeType": "MemberAccess", - "referencedDeclaration": 10362, + "referencedDeclaration": 10958, "src": "24103:17:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -73495,7 +73495,7 @@ }, { "hexValue": "4c4243303437", - "id": 6347, + "id": 6868, "isConstant": false, "isLValue": false, "isPure": true, @@ -73521,7 +73521,7 @@ "typeString": "literal_string \"LBC047\"" } ], - "id": 6341, + "id": 6862, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -73535,7 +73535,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6348, + "id": 6869, "isConstant": false, "isLValue": false, "isPure": false, @@ -73551,23 +73551,23 @@ "typeString": "tuple()" } }, - "id": 6349, + "id": 6870, "nodeType": "ExpressionStatement", "src": "24079:52:21" }, { "assignments": [ - 6351 + 6872 ], "declarations": [ { "constant": false, - "id": 6351, + "id": 6872, "mutability": "mutable", "name": "quoteHash", "nameLocation": "24149:9:21", "nodeType": "VariableDeclaration", - "scope": 6421, + "scope": 6942, "src": "24141:17:21", "stateVariable": false, "storageLocation": "default", @@ -73576,7 +73576,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 6350, + "id": 6871, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "24141:7:21", @@ -73588,18 +73588,18 @@ "visibility": "internal" } ], - "id": 6355, + "id": 6876, "initialValue": { "arguments": [ { - "id": 6353, + "id": 6874, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6298, + "referencedDeclaration": 6819, "src": "24177:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } } @@ -73607,22 +73607,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } ], - "id": 6352, + "id": 6873, "name": "hashPegoutQuote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6836, + "referencedDeclaration": 7357, "src": "24161:15:21", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$10363_memory_ptr_$returns$_t_bytes32_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$10959_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (struct Quotes.PegOutQuote memory) view returns (bytes32)" } }, - "id": 6354, + "id": 6875, "isConstant": false, "isLValue": false, "isPure": false, @@ -73648,18 +73648,18 @@ "arguments": [ { "expression": { - "id": 6359, + "id": 6880, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6298, + "referencedDeclaration": 6819, "src": "24240:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 6360, + "id": 6881, "isConstant": false, "isLValue": true, "isPure": false, @@ -73667,7 +73667,7 @@ "memberLocation": "24246:12:21", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10332, + "referencedDeclaration": 10928, "src": "24240:18:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -73675,11 +73675,11 @@ } }, { - "id": 6361, + "id": 6882, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6351, + "referencedDeclaration": 6872, "src": "24260:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -73687,11 +73687,11 @@ } }, { - "id": 6362, + "id": 6883, "name": "signature", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6300, + "referencedDeclaration": 6821, "src": "24271:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -73715,18 +73715,18 @@ } ], "expression": { - "id": 6357, + "id": 6878, "name": "SignatureValidator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10898, + "referencedDeclaration": 11494, "src": "24214:18:21", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SignatureValidator_$10898_$", + "typeIdentifier": "t_type$_t_contract$_SignatureValidator_$11494_$", "typeString": "type(library SignatureValidator)" } }, - "id": 6358, + "id": 6879, "isConstant": false, "isLValue": false, "isPure": false, @@ -73734,14 +73734,14 @@ "memberLocation": "24233:6:21", "memberName": "verify", "nodeType": "MemberAccess", - "referencedDeclaration": 10897, + "referencedDeclaration": 11493, "src": "24214:25:21", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_pure$_t_address_$_t_bytes32_$_t_bytes_memory_ptr_$returns$_t_bool_$", "typeString": "function (address,bytes32,bytes memory) pure returns (bool)" } }, - "id": 6363, + "id": 6884, "isConstant": false, "isLValue": false, "isPure": false, @@ -73759,7 +73759,7 @@ }, { "hexValue": "4c4243303239", - "id": 6364, + "id": 6885, "isConstant": false, "isLValue": false, "isPure": true, @@ -73785,7 +73785,7 @@ "typeString": "literal_string \"LBC029\"" } ], - "id": 6356, + "id": 6877, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -73799,7 +73799,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6365, + "id": 6886, "isConstant": false, "isLValue": false, "isPure": false, @@ -73815,75 +73815,75 @@ "typeString": "tuple()" } }, - "id": 6366, + "id": 6887, "nodeType": "ExpressionStatement", "src": "24193:120:21" }, { "assignments": [ - 6371 + 6892 ], "declarations": [ { "constant": false, - "id": 6371, + "id": 6892, "mutability": "mutable", "name": "registeredQuote", "nameLocation": "24351:15:21", "nodeType": "VariableDeclaration", - "scope": 6421, + "scope": 6942, "src": "24324:42:21", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote" }, "typeName": { - "id": 6370, + "id": 6891, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 6369, + "id": 6890, "name": "Quotes.PegOutQuote", "nameLocations": [ "24324:6:21", "24331:11:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "24324:18:21" }, - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "24324:18:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote" } }, "visibility": "internal" } ], - "id": 6375, + "id": 6896, "initialValue": { "baseExpression": { - "id": 6372, + "id": 6893, "name": "registeredPegoutQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4805, + "referencedDeclaration": 5326, "src": "24369:22:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10363_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10959_storage_$", "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote storage ref)" } }, - "id": 6374, + "id": 6895, "indexExpression": { - "id": 6373, + "id": 6894, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6351, + "referencedDeclaration": 6872, "src": "24392:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -73897,7 +73897,7 @@ "nodeType": "IndexAccess", "src": "24369:33:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage", "typeString": "struct Quotes.PegOutQuote storage ref" } }, @@ -73912,7 +73912,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 6382, + "id": 6903, "isConstant": false, "isLValue": false, "isPure": false, @@ -73920,24 +73920,24 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 6377, + "id": 6898, "name": "pegoutRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4810, + "referencedDeclaration": 5331, "src": "24421:14:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$4600_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord storage ref)" } }, - "id": 6379, + "id": 6900, "indexExpression": { - "id": 6378, + "id": 6899, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6351, + "referencedDeclaration": 6872, "src": "24436:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -73951,11 +73951,11 @@ "nodeType": "IndexAccess", "src": "24421:25:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$4600_storage", + "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage", "typeString": "struct LiquidityBridgeContract.PegoutRecord storage ref" } }, - "id": 6380, + "id": 6901, "isConstant": false, "isLValue": true, "isPure": false, @@ -73963,7 +73963,7 @@ "memberLocation": "24447:9:21", "memberName": "completed", "nodeType": "MemberAccess", - "referencedDeclaration": 4599, + "referencedDeclaration": 5120, "src": "24421:35:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -73974,7 +73974,7 @@ "operator": "==", "rightExpression": { "hexValue": "66616c7365", - "id": 6381, + "id": 6902, "isConstant": false, "isLValue": false, "isPure": true, @@ -73996,7 +73996,7 @@ }, { "hexValue": "4c4243303634", - "id": 6383, + "id": 6904, "isConstant": false, "isLValue": false, "isPure": true, @@ -74022,7 +74022,7 @@ "typeString": "literal_string \"LBC064\"" } ], - "id": 6376, + "id": 6897, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -74036,7 +74036,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6384, + "id": 6905, "isConstant": false, "isLValue": false, "isPure": false, @@ -74052,7 +74052,7 @@ "typeString": "tuple()" } }, - "id": 6385, + "id": 6906, "nodeType": "ExpressionStatement", "src": "24413:63:21" }, @@ -74064,25 +74064,25 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 6393, + "id": 6914, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6387, + "id": 6908, "name": "registeredQuote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6371, + "referencedDeclaration": 6892, "src": "24494:15:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6388, + "id": 6909, "isConstant": false, "isLValue": true, "isPure": false, @@ -74090,7 +74090,7 @@ "memberLocation": "24510:10:21", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10330, + "referencedDeclaration": 10926, "src": "24494:26:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -74103,7 +74103,7 @@ "arguments": [ { "hexValue": "30", - "id": 6391, + "id": 6912, "isConstant": false, "isLValue": false, "isPure": true, @@ -74125,7 +74125,7 @@ "typeString": "int_const 0" } ], - "id": 6390, + "id": 6911, "isConstant": false, "isLValue": false, "isPure": true, @@ -74137,14 +74137,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 6389, + "id": 6910, "name": "address", "nodeType": "ElementaryTypeName", "src": "24524:7:21", "typeDescriptions": {} } }, - "id": 6392, + "id": 6913, "isConstant": false, "isLValue": false, "isPure": true, @@ -74168,7 +74168,7 @@ }, { "hexValue": "4c4243303238", - "id": 6394, + "id": 6915, "isConstant": false, "isLValue": false, "isPure": true, @@ -74194,7 +74194,7 @@ "typeString": "literal_string \"LBC028\"" } ], - "id": 6386, + "id": 6907, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -74208,7 +74208,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6395, + "id": 6916, "isConstant": false, "isLValue": false, "isPure": false, @@ -74224,37 +74224,37 @@ "typeString": "tuple()" } }, - "id": 6396, + "id": 6917, "nodeType": "ExpressionStatement", "src": "24486:59:21" }, { "expression": { - "id": 6401, + "id": 6922, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 6397, + "id": 6918, "name": "registeredPegoutQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4805, + "referencedDeclaration": 5326, "src": "24555:22:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10363_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10959_storage_$", "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote storage ref)" } }, - "id": 6399, + "id": 6920, "indexExpression": { - "id": 6398, + "id": 6919, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6351, + "referencedDeclaration": 6872, "src": "24578:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -74268,37 +74268,37 @@ "nodeType": "IndexAccess", "src": "24555:33:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage", "typeString": "struct Quotes.PegOutQuote storage ref" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 6400, + "id": 6921, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6298, + "referencedDeclaration": 6819, "src": "24591:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, "src": "24555:41:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage", "typeString": "struct Quotes.PegOutQuote storage ref" } }, - "id": 6402, + "id": 6923, "nodeType": "ExpressionStatement", "src": "24555:41:21" }, { "expression": { - "id": 6409, + "id": 6930, "isConstant": false, "isLValue": false, "isPure": false, @@ -74306,24 +74306,24 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 6403, + "id": 6924, "name": "pegoutRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4810, + "referencedDeclaration": 5331, "src": "24606:14:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$4600_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord storage ref)" } }, - "id": 6405, + "id": 6926, "indexExpression": { - "id": 6404, + "id": 6925, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6351, + "referencedDeclaration": 6872, "src": "24621:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -74337,11 +74337,11 @@ "nodeType": "IndexAccess", "src": "24606:25:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$4600_storage", + "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage", "typeString": "struct LiquidityBridgeContract.PegoutRecord storage ref" } }, - "id": 6406, + "id": 6927, "isConstant": false, "isLValue": true, "isPure": false, @@ -74349,7 +74349,7 @@ "memberLocation": "24632:16:21", "memberName": "depositTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 4597, + "referencedDeclaration": 5118, "src": "24606:42:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -74360,7 +74360,7 @@ "operator": "=", "rightHandSide": { "expression": { - "id": 6407, + "id": 6928, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -74371,7 +74371,7 @@ "typeString": "block" } }, - "id": 6408, + "id": 6929, "isConstant": false, "isLValue": false, "isPure": false, @@ -74391,7 +74391,7 @@ "typeString": "uint256" } }, - "id": 6410, + "id": 6931, "nodeType": "ExpressionStatement", "src": "24606:60:21" }, @@ -74399,11 +74399,11 @@ "eventCall": { "arguments": [ { - "id": 6412, + "id": 6933, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6351, + "referencedDeclaration": 6872, "src": "24695:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -74412,7 +74412,7 @@ }, { "expression": { - "id": 6413, + "id": 6934, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -74423,7 +74423,7 @@ "typeString": "msg" } }, - "id": 6414, + "id": 6935, "isConstant": false, "isLValue": false, "isPure": false, @@ -74439,7 +74439,7 @@ }, { "expression": { - "id": 6415, + "id": 6936, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -74450,7 +74450,7 @@ "typeString": "msg" } }, - "id": 6416, + "id": 6937, "isConstant": false, "isLValue": false, "isPure": false, @@ -74466,7 +74466,7 @@ }, { "expression": { - "id": 6417, + "id": 6938, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -74477,7 +74477,7 @@ "typeString": "block" } }, - "id": 6418, + "id": 6939, "isConstant": false, "isLValue": false, "isPure": false, @@ -74511,18 +74511,18 @@ "typeString": "uint256" } ], - "id": 6411, + "id": 6932, "name": "PegOutDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4743, + "referencedDeclaration": 5264, "src": "24681:13:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (bytes32,address,uint256,uint256)" } }, - "id": 6419, + "id": 6940, "isConstant": false, "isLValue": false, "isPure": false, @@ -74538,14 +74538,14 @@ "typeString": "tuple()" } }, - "id": 6420, + "id": 6941, "nodeType": "EmitStatement", "src": "24676:69:21" } ] }, "functionSelector": "7b78837f", - "id": 6422, + "id": 6943, "implemented": true, "kind": "function", "modifiers": [], @@ -74553,42 +74553,42 @@ "nameLocation": "23622:13:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 6301, + "id": 6822, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6298, + "id": 6819, "mutability": "mutable", "name": "quote", "nameLocation": "23735:5:21", "nodeType": "VariableDeclaration", - "scope": 6422, + "scope": 6943, "src": "23709:31:21", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote" }, "typeName": { - "id": 6297, + "id": 6818, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 6296, + "id": 6817, "name": "Quotes.PegOutQuote", "nameLocations": [ "23709:6:21", "23716:11:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "23709:18:21" }, - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "23709:18:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote" } }, @@ -74596,12 +74596,12 @@ }, { "constant": false, - "id": 6300, + "id": 6821, "mutability": "mutable", "name": "signature", "nameLocation": "23763:9:21", "nodeType": "VariableDeclaration", - "scope": 6422, + "scope": 6943, "src": "23750:22:21", "stateVariable": false, "storageLocation": "memory", @@ -74610,7 +74610,7 @@ "typeString": "bytes" }, "typeName": { - "id": 6299, + "id": 6820, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "23750:5:21", @@ -74625,12 +74625,12 @@ "src": "23635:143:21" }, "returnParameters": { - "id": 6302, + "id": 6823, "nodeType": "ParameterList", "parameters": [], "src": "23796:0:21" }, - "scope": 7377, + "scope": 7898, "src": "23613:1139:21", "stateMutability": "payable", "virtual": false, @@ -74638,75 +74638,75 @@ }, { "body": { - "id": 6535, + "id": 7056, "nodeType": "Block", "src": "24837:961:21", "statements": [ { "assignments": [ - 6433 + 6954 ], "declarations": [ { "constant": false, - "id": 6433, + "id": 6954, "mutability": "mutable", "name": "quote", "nameLocation": "24874:5:21", "nodeType": "VariableDeclaration", - "scope": 6535, + "scope": 7056, "src": "24847:32:21", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote" }, "typeName": { - "id": 6432, + "id": 6953, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 6431, + "id": 6952, "name": "Quotes.PegOutQuote", "nameLocations": [ "24847:6:21", "24854:11:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "24847:18:21" }, - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "24847:18:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote" } }, "visibility": "internal" } ], - "id": 6437, + "id": 6958, "initialValue": { "baseExpression": { - "id": 6434, + "id": 6955, "name": "registeredPegoutQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4805, + "referencedDeclaration": 5326, "src": "24882:22:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10363_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10959_storage_$", "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote storage ref)" } }, - "id": 6436, + "id": 6957, "indexExpression": { - "id": 6435, + "id": 6956, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6424, + "referencedDeclaration": 6945, "src": "24905:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -74720,7 +74720,7 @@ "nodeType": "IndexAccess", "src": "24882:33:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage", "typeString": "struct Quotes.PegOutQuote storage ref" } }, @@ -74735,25 +74735,25 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 6445, + "id": 6966, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6439, + "id": 6960, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6433, + "referencedDeclaration": 6954, "src": "24934:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6440, + "id": 6961, "isConstant": false, "isLValue": true, "isPure": false, @@ -74761,7 +74761,7 @@ "memberLocation": "24940:10:21", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10330, + "referencedDeclaration": 10926, "src": "24934:16:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -74774,7 +74774,7 @@ "arguments": [ { "hexValue": "30", - "id": 6443, + "id": 6964, "isConstant": false, "isLValue": false, "isPure": true, @@ -74796,7 +74796,7 @@ "typeString": "int_const 0" } ], - "id": 6442, + "id": 6963, "isConstant": false, "isLValue": false, "isPure": true, @@ -74808,14 +74808,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 6441, + "id": 6962, "name": "address", "nodeType": "ElementaryTypeName", "src": "24954:7:21", "typeDescriptions": {} } }, - "id": 6444, + "id": 6965, "isConstant": false, "isLValue": false, "isPure": true, @@ -74839,7 +74839,7 @@ }, { "hexValue": "4c4243303432", - "id": 6446, + "id": 6967, "isConstant": false, "isLValue": false, "isPure": true, @@ -74865,7 +74865,7 @@ "typeString": "literal_string \"LBC042\"" } ], - "id": 6438, + "id": 6959, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -74879,7 +74879,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6447, + "id": 6968, "isConstant": false, "isLValue": false, "isPure": false, @@ -74895,7 +74895,7 @@ "typeString": "tuple()" } }, - "id": 6448, + "id": 6969, "nodeType": "ExpressionStatement", "src": "24926:49:21" }, @@ -74907,7 +74907,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 6460, + "id": 6981, "isConstant": false, "isLValue": false, "isPure": false, @@ -74917,14 +74917,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6454, + "id": 6975, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6450, + "id": 6971, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -74935,7 +74935,7 @@ "typeString": "block" } }, - "id": 6451, + "id": 6972, "isConstant": false, "isLValue": false, "isPure": false, @@ -74953,18 +74953,18 @@ "operator": ">", "rightExpression": { "expression": { - "id": 6452, + "id": 6973, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6433, + "referencedDeclaration": 6954, "src": "25024:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6453, + "id": 6974, "isConstant": false, "isLValue": true, "isPure": false, @@ -74972,7 +74972,7 @@ "memberLocation": "25030:10:21", "memberName": "expireDate", "nodeType": "MemberAccess", - "referencedDeclaration": 10360, + "referencedDeclaration": 10956, "src": "25024:16:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -74992,14 +74992,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6459, + "id": 6980, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6455, + "id": 6976, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -75010,7 +75010,7 @@ "typeString": "block" } }, - "id": 6456, + "id": 6977, "isConstant": false, "isLValue": false, "isPure": false, @@ -75028,18 +75028,18 @@ "operator": ">", "rightExpression": { "expression": { - "id": 6457, + "id": 6978, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6433, + "referencedDeclaration": 6954, "src": "25071:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6458, + "id": 6979, "isConstant": false, "isLValue": true, "isPure": false, @@ -75047,7 +75047,7 @@ "memberLocation": "25077:11:21", "memberName": "expireBlock", "nodeType": "MemberAccess", - "referencedDeclaration": 10362, + "referencedDeclaration": 10958, "src": "25071:17:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -75068,7 +75068,7 @@ }, { "hexValue": "4c4243303431", - "id": 6461, + "id": 6982, "isConstant": false, "isLValue": false, "isPure": true, @@ -75094,7 +75094,7 @@ "typeString": "literal_string \"LBC041\"" } ], - "id": 6449, + "id": 6970, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -75108,7 +75108,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6462, + "id": 6983, "isConstant": false, "isLValue": false, "isPure": false, @@ -75124,23 +75124,23 @@ "typeString": "tuple()" } }, - "id": 6463, + "id": 6984, "nodeType": "ExpressionStatement", "src": "24985:135:21" }, { "assignments": [ - 6465 + 6986 ], "declarations": [ { "constant": false, - "id": 6465, + "id": 6986, "mutability": "mutable", "name": "valueToTransfer", "nameLocation": "25136:15:21", "nodeType": "VariableDeclaration", - "scope": 6535, + "scope": 7056, "src": "25131:20:21", "stateVariable": false, "storageLocation": "default", @@ -75149,7 +75149,7 @@ "typeString": "uint256" }, "typeName": { - "id": 6464, + "id": 6985, "name": "uint", "nodeType": "ElementaryTypeName", "src": "25131:4:21", @@ -75161,31 +75161,31 @@ "visibility": "internal" } ], - "id": 6471, + "id": 6992, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6470, + "id": 6991, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6466, + "id": 6987, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6433, + "referencedDeclaration": 6954, "src": "25154:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6467, + "id": 6988, "isConstant": false, "isLValue": true, "isPure": false, @@ -75193,7 +75193,7 @@ "memberLocation": "25160:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10348, + "referencedDeclaration": 10944, "src": "25154:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -75204,18 +75204,18 @@ "operator": "+", "rightExpression": { "expression": { - "id": 6468, + "id": 6989, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6433, + "referencedDeclaration": 6954, "src": "25168:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6469, + "id": 6990, "isConstant": false, "isLValue": true, "isPure": false, @@ -75223,7 +75223,7 @@ "memberLocation": "25174:7:21", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10340, + "referencedDeclaration": 10936, "src": "25168:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -75241,17 +75241,17 @@ }, { "assignments": [ - 6473 + 6994 ], "declarations": [ { "constant": false, - "id": 6473, + "id": 6994, "mutability": "mutable", "name": "addressToTransfer", "nameLocation": "25199:17:21", "nodeType": "VariableDeclaration", - "scope": 6535, + "scope": 7056, "src": "25191:25:21", "stateVariable": false, "storageLocation": "default", @@ -75260,7 +75260,7 @@ "typeString": "address" }, "typeName": { - "id": 6472, + "id": 6993, "name": "address", "nodeType": "ElementaryTypeName", "src": "25191:7:21", @@ -75273,21 +75273,21 @@ "visibility": "internal" } ], - "id": 6476, + "id": 6997, "initialValue": { "expression": { - "id": 6474, + "id": 6995, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6433, + "referencedDeclaration": 6954, "src": "25219:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6475, + "id": 6996, "isConstant": false, "isLValue": true, "isPure": false, @@ -75295,7 +75295,7 @@ "memberLocation": "25225:16:21", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10336, + "referencedDeclaration": 10932, "src": "25219:22:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -75307,17 +75307,17 @@ }, { "assignments": [ - 6478 + 6999 ], "declarations": [ { "constant": false, - "id": 6478, + "id": 6999, "mutability": "mutable", "name": "penalty", "nameLocation": "25257:7:21", "nodeType": "VariableDeclaration", - "scope": 6535, + "scope": 7056, "src": "25252:12:21", "stateVariable": false, "storageLocation": "default", @@ -75326,7 +75326,7 @@ "typeString": "uint256" }, "typeName": { - "id": 6477, + "id": 6998, "name": "uint", "nodeType": "ElementaryTypeName", "src": "25252:4:21", @@ -75338,23 +75338,23 @@ "visibility": "internal" } ], - "id": 6487, + "id": 7008, "initialValue": { "arguments": [ { "expression": { - "id": 6480, + "id": 7001, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6433, + "referencedDeclaration": 6954, "src": "25271:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6481, + "id": 7002, "isConstant": false, "isLValue": true, "isPure": false, @@ -75362,7 +75362,7 @@ "memberLocation": "25277:10:21", "memberName": "penaltyFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10342, + "referencedDeclaration": 10938, "src": "25271:16:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -75371,32 +75371,32 @@ }, { "baseExpression": { - "id": 6482, + "id": 7003, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4766, + "referencedDeclaration": 5287, "src": "25289:16:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 6485, + "id": 7006, "indexExpression": { "expression": { - "id": 6483, + "id": 7004, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6433, + "referencedDeclaration": 6954, "src": "25306:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6484, + "id": 7005, "isConstant": false, "isLValue": true, "isPure": false, @@ -75404,7 +75404,7 @@ "memberLocation": "25312:12:21", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10332, + "referencedDeclaration": 10928, "src": "25306:18:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -75434,18 +75434,18 @@ "typeString": "uint256" } ], - "id": 6479, + "id": 7000, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6974, + "referencedDeclaration": 7495, "src": "25267:3:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 6486, + "id": 7007, "isConstant": false, "isLValue": false, "isPure": false, @@ -75466,39 +75466,39 @@ }, { "expression": { - "id": 6493, + "id": 7014, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 6488, + "id": 7009, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4766, + "referencedDeclaration": 5287, "src": "25336:16:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 6491, + "id": 7012, "indexExpression": { "expression": { - "id": 6489, + "id": 7010, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6433, + "referencedDeclaration": 6954, "src": "25353:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6490, + "id": 7011, "isConstant": false, "isLValue": true, "isPure": false, @@ -75506,7 +75506,7 @@ "memberLocation": "25359:12:21", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10332, + "referencedDeclaration": 10928, "src": "25353:18:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -75527,11 +75527,11 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 6492, + "id": 7013, "name": "penalty", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6478, + "referencedDeclaration": 6999, "src": "25376:7:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -75544,7 +75544,7 @@ "typeString": "uint256" } }, - "id": 6494, + "id": 7015, "nodeType": "ExpressionStatement", "src": "25336:47:21" }, @@ -75553,18 +75553,18 @@ "arguments": [ { "expression": { - "id": 6496, + "id": 7017, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6433, + "referencedDeclaration": 6954, "src": "25409:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6497, + "id": 7018, "isConstant": false, "isLValue": true, "isPure": false, @@ -75572,7 +75572,7 @@ "memberLocation": "25415:12:21", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10332, + "referencedDeclaration": 10928, "src": "25409:18:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -75580,11 +75580,11 @@ } }, { - "id": 6498, + "id": 7019, "name": "penalty", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6478, + "referencedDeclaration": 6999, "src": "25429:7:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -75592,11 +75592,11 @@ } }, { - "id": 6499, + "id": 7020, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6424, + "referencedDeclaration": 6945, "src": "25438:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -75619,18 +75619,18 @@ "typeString": "bytes32" } ], - "id": 6495, + "id": 7016, "name": "Penalized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4691, + "referencedDeclaration": 5212, "src": "25399:9:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bytes32_$returns$__$", "typeString": "function (address,uint256,bytes32)" } }, - "id": 6500, + "id": 7021, "isConstant": false, "isLValue": false, "isPure": false, @@ -75646,7 +75646,7 @@ "typeString": "tuple()" } }, - "id": 6501, + "id": 7022, "nodeType": "EmitStatement", "src": "25394:54:21" }, @@ -75654,11 +75654,11 @@ "eventCall": { "arguments": [ { - "id": 6503, + "id": 7024, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6424, + "referencedDeclaration": 6945, "src": "25495:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -75666,11 +75666,11 @@ } }, { - "id": 6504, + "id": 7025, "name": "valueToTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6465, + "referencedDeclaration": 6986, "src": "25518:15:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -75679,18 +75679,18 @@ }, { "expression": { - "id": 6505, + "id": 7026, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6433, + "referencedDeclaration": 6954, "src": "25547:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6506, + "id": 7027, "isConstant": false, "isLValue": true, "isPure": false, @@ -75698,7 +75698,7 @@ "memberLocation": "25553:16:21", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10336, + "referencedDeclaration": 10932, "src": "25547:22:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -75721,18 +75721,18 @@ "typeString": "address" } ], - "id": 6502, + "id": 7023, "name": "PegOutUserRefunded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4751, + "referencedDeclaration": 5272, "src": "25463:18:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (bytes32,uint256,address)" } }, - "id": 6507, + "id": 7028, "isConstant": false, "isLValue": false, "isPure": false, @@ -75748,13 +75748,13 @@ "typeString": "tuple()" } }, - "id": 6508, + "id": 7029, "nodeType": "EmitStatement", "src": "25458:121:21" }, { "expression": { - "id": 6512, + "id": 7033, "isConstant": false, "isLValue": false, "isPure": false, @@ -75765,24 +75765,24 @@ "src": "25590:40:21", "subExpression": { "baseExpression": { - "id": 6509, + "id": 7030, "name": "registeredPegoutQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4805, + "referencedDeclaration": 5326, "src": "25597:22:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10363_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10959_storage_$", "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote storage ref)" } }, - "id": 6511, + "id": 7032, "indexExpression": { - "id": 6510, + "id": 7031, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6424, + "referencedDeclaration": 6945, "src": "25620:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -75796,7 +75796,7 @@ "nodeType": "IndexAccess", "src": "25597:33:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage", "typeString": "struct Quotes.PegOutQuote storage ref" } }, @@ -75805,13 +75805,13 @@ "typeString": "tuple()" } }, - "id": 6513, + "id": 7034, "nodeType": "ExpressionStatement", "src": "25590:40:21" }, { "expression": { - "id": 6519, + "id": 7040, "isConstant": false, "isLValue": false, "isPure": false, @@ -75819,24 +75819,24 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 6514, + "id": 7035, "name": "pegoutRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4810, + "referencedDeclaration": 5331, "src": "25640:14:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$4600_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord storage ref)" } }, - "id": 6516, + "id": 7037, "indexExpression": { - "id": 6515, + "id": 7036, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6424, + "referencedDeclaration": 6945, "src": "25655:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -75850,11 +75850,11 @@ "nodeType": "IndexAccess", "src": "25640:25:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$4600_storage", + "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage", "typeString": "struct LiquidityBridgeContract.PegoutRecord storage ref" } }, - "id": 6517, + "id": 7038, "isConstant": false, "isLValue": true, "isPure": false, @@ -75862,7 +75862,7 @@ "memberLocation": "25666:9:21", "memberName": "completed", "nodeType": "MemberAccess", - "referencedDeclaration": 4599, + "referencedDeclaration": 5120, "src": "25640:35:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -75873,7 +75873,7 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 6518, + "id": 7039, "isConstant": false, "isLValue": false, "isPure": true, @@ -75893,24 +75893,24 @@ "typeString": "bool" } }, - "id": 6520, + "id": 7041, "nodeType": "ExpressionStatement", "src": "25640:42:21" }, { "assignments": [ - 6522, + 7043, null ], "declarations": [ { "constant": false, - "id": 6522, + "id": 7043, "mutability": "mutable", "name": "sent", "nameLocation": "25699:4:21", "nodeType": "VariableDeclaration", - "scope": 6535, + "scope": 7056, "src": "25694:9:21", "stateVariable": false, "storageLocation": "default", @@ -75919,7 +75919,7 @@ "typeString": "bool" }, "typeName": { - "id": 6521, + "id": 7042, "name": "bool", "nodeType": "ElementaryTypeName", "src": "25694:4:21", @@ -75932,12 +75932,12 @@ }, null ], - "id": 6529, + "id": 7050, "initialValue": { "arguments": [ { "hexValue": "", - "id": 6527, + "id": 7048, "isConstant": false, "isLValue": false, "isPure": true, @@ -75967,18 +75967,18 @@ } ], "expression": { - "id": 6523, + "id": 7044, "name": "addressToTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6473, + "referencedDeclaration": 6994, "src": "25708:17:21", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 6524, + "id": 7045, "isConstant": false, "isLValue": false, "isPure": false, @@ -75992,7 +75992,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 6526, + "id": 7047, "isConstant": false, "isLValue": false, "isPure": false, @@ -76003,11 +76003,11 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 6525, + "id": 7046, "name": "valueToTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6465, + "referencedDeclaration": 6986, "src": "25738:15:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -76021,7 +76021,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 6528, + "id": 7049, "isConstant": false, "isLValue": false, "isPure": false, @@ -76044,11 +76044,11 @@ "expression": { "arguments": [ { - "id": 6531, + "id": 7052, "name": "sent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6522, + "referencedDeclaration": 7043, "src": "25776:4:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -76057,7 +76057,7 @@ }, { "hexValue": "4c4243303434", - "id": 6532, + "id": 7053, "isConstant": false, "isLValue": false, "isPure": true, @@ -76083,7 +76083,7 @@ "typeString": "literal_string \"LBC044\"" } ], - "id": 6530, + "id": 7051, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -76097,7 +76097,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6533, + "id": 7054, "isConstant": false, "isLValue": false, "isPure": false, @@ -76113,22 +76113,22 @@ "typeString": "tuple()" } }, - "id": 6534, + "id": 7055, "nodeType": "ExpressionStatement", "src": "25768:23:21" } ] }, "functionSelector": "8f91797d", - "id": 6536, + "id": 7057, "implemented": true, "kind": "function", "modifiers": [ { - "id": 6427, + "id": 6948, "kind": "modifierInvocation", "modifierName": { - "id": 6426, + "id": 6947, "name": "nonReentrant", "nameLocations": [ "24824:12:21" @@ -76145,17 +76145,17 @@ "nameLocation": "24767:16:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 6425, + "id": 6946, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6424, + "id": 6945, "mutability": "mutable", "name": "quoteHash", "nameLocation": "24801:9:21", "nodeType": "VariableDeclaration", - "scope": 6536, + "scope": 7057, "src": "24793:17:21", "stateVariable": false, "storageLocation": "default", @@ -76164,7 +76164,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 6423, + "id": 6944, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "24793:7:21", @@ -76179,12 +76179,12 @@ "src": "24783:33:21" }, "returnParameters": { - "id": 6428, + "id": 6949, "nodeType": "ParameterList", "parameters": [], "src": "24837:0:21" }, - "scope": 7377, + "scope": 7898, "src": "24758:1040:21", "stateMutability": "nonpayable", "virtual": false, @@ -76192,7 +76192,7 @@ }, { "body": { - "id": 6756, + "id": 7277, "nodeType": "Block", "src": "26047:1910:21", "statements": [ @@ -76204,7 +76204,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 6560, + "id": 7081, "isConstant": false, "isLValue": false, "isPure": false, @@ -76212,24 +76212,24 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 6555, + "id": 7076, "name": "pegoutRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4810, + "referencedDeclaration": 5331, "src": "26065:14:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$4600_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord storage ref)" } }, - "id": 6557, + "id": 7078, "indexExpression": { - "id": 6556, + "id": 7077, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6538, + "referencedDeclaration": 7059, "src": "26080:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -76243,11 +76243,11 @@ "nodeType": "IndexAccess", "src": "26065:25:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$4600_storage", + "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage", "typeString": "struct LiquidityBridgeContract.PegoutRecord storage ref" } }, - "id": 6558, + "id": 7079, "isConstant": false, "isLValue": true, "isPure": false, @@ -76255,7 +76255,7 @@ "memberLocation": "26091:9:21", "memberName": "completed", "nodeType": "MemberAccess", - "referencedDeclaration": 4599, + "referencedDeclaration": 5120, "src": "26065:35:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -76266,7 +76266,7 @@ "operator": "==", "rightExpression": { "hexValue": "66616c7365", - "id": 6559, + "id": 7080, "isConstant": false, "isLValue": false, "isPure": true, @@ -76288,7 +76288,7 @@ }, { "hexValue": "4c4243303634", - "id": 6561, + "id": 7082, "isConstant": false, "isLValue": false, "isPure": true, @@ -76314,7 +76314,7 @@ "typeString": "literal_string \"LBC064\"" } ], - "id": 6554, + "id": 7075, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -76328,7 +76328,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6562, + "id": 7083, "isConstant": false, "isLValue": false, "isPure": false, @@ -76344,75 +76344,75 @@ "typeString": "tuple()" } }, - "id": 6563, + "id": 7084, "nodeType": "ExpressionStatement", "src": "26057:63:21" }, { "assignments": [ - 6568 + 7089 ], "declarations": [ { "constant": false, - "id": 6568, + "id": 7089, "mutability": "mutable", "name": "quote", "nameLocation": "26157:5:21", "nodeType": "VariableDeclaration", - "scope": 6756, + "scope": 7277, "src": "26130:32:21", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote" }, "typeName": { - "id": 6567, + "id": 7088, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 6566, + "id": 7087, "name": "Quotes.PegOutQuote", "nameLocations": [ "26130:6:21", "26137:11:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "26130:18:21" }, - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "26130:18:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote" } }, "visibility": "internal" } ], - "id": 6572, + "id": 7093, "initialValue": { "baseExpression": { - "id": 6569, + "id": 7090, "name": "registeredPegoutQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4805, + "referencedDeclaration": 5326, "src": "26165:22:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10363_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10959_storage_$", "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote storage ref)" } }, - "id": 6571, + "id": 7092, "indexExpression": { - "id": 6570, + "id": 7091, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6538, + "referencedDeclaration": 7059, "src": "26188:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -76426,7 +76426,7 @@ "nodeType": "IndexAccess", "src": "26165:33:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage", "typeString": "struct Quotes.PegOutQuote storage ref" } }, @@ -76441,25 +76441,25 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 6580, + "id": 7101, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6574, + "id": 7095, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6568, + "referencedDeclaration": 7089, "src": "26216:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6575, + "id": 7096, "isConstant": false, "isLValue": true, "isPure": false, @@ -76467,7 +76467,7 @@ "memberLocation": "26222:10:21", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10330, + "referencedDeclaration": 10926, "src": "26216:16:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -76480,7 +76480,7 @@ "arguments": [ { "hexValue": "30", - "id": 6578, + "id": 7099, "isConstant": false, "isLValue": false, "isPure": true, @@ -76502,7 +76502,7 @@ "typeString": "int_const 0" } ], - "id": 6577, + "id": 7098, "isConstant": false, "isLValue": false, "isPure": true, @@ -76514,14 +76514,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 6576, + "id": 7097, "name": "address", "nodeType": "ElementaryTypeName", "src": "26236:7:21", "typeDescriptions": {} } }, - "id": 6579, + "id": 7100, "isConstant": false, "isLValue": false, "isPure": true, @@ -76545,7 +76545,7 @@ }, { "hexValue": "4c4243303432", - "id": 6581, + "id": 7102, "isConstant": false, "isLValue": false, "isPure": true, @@ -76571,7 +76571,7 @@ "typeString": "literal_string \"LBC042\"" } ], - "id": 6573, + "id": 7094, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -76585,7 +76585,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6582, + "id": 7103, "isConstant": false, "isLValue": false, "isPure": false, @@ -76601,72 +76601,72 @@ "typeString": "tuple()" } }, - "id": 6583, + "id": 7104, "nodeType": "ExpressionStatement", "src": "26208:49:21" }, { "assignments": [ - 6589 + 7110 ], "declarations": [ { "constant": false, - "id": 6589, + "id": 7110, "mutability": "mutable", "name": "outputs", "nameLocation": "26297:7:21", "nodeType": "VariableDeclaration", - "scope": 6756, + "scope": 7277, "src": "26267:37:21", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput[]" }, "typeName": { "baseType": { - "id": 6587, + "id": 7108, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 6586, + "id": 7107, "name": "BtcUtils.TxRawOutput", "nameLocations": [ "26267:8:21", "26276:11:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 2292, + "referencedDeclaration": 2307, "src": "26267:20:21" }, - "referencedDeclaration": 2292, + "referencedDeclaration": 2307, "src": "26267:20:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_storage_ptr", + "typeIdentifier": "t_struct$_TxRawOutput_$2307_storage_ptr", "typeString": "struct BtcUtils.TxRawOutput" } }, - "id": 6588, + "id": 7109, "nodeType": "ArrayTypeName", "src": "26267:22:21", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_storage_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_storage_$dyn_storage_ptr", "typeString": "struct BtcUtils.TxRawOutput[]" } }, "visibility": "internal" } ], - "id": 6594, + "id": 7115, "initialValue": { "arguments": [ { - "id": 6592, + "id": 7113, "name": "btcTx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6540, + "referencedDeclaration": 7061, "src": "26327:5:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -76682,18 +76682,18 @@ } ], "expression": { - "id": 6590, + "id": 7111, "name": "BtcUtils", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3228, + "referencedDeclaration": 3743, "src": "26307:8:21", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3228_$", + "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", "typeString": "type(library BtcUtils)" } }, - "id": 6591, + "id": 7112, "isConstant": false, "isLValue": false, "isPure": false, @@ -76701,14 +76701,14 @@ "memberLocation": "26316:10:21", "memberName": "getOutputs", "nodeType": "MemberAccess", - "referencedDeclaration": 2431, + "referencedDeclaration": 2454, "src": "26307:19:21", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr_$", + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr_$", "typeString": "function (bytes memory) pure returns (struct BtcUtils.TxRawOutput memory[] memory)" } }, - "id": 6593, + "id": 7114, "isConstant": false, "isLValue": false, "isPure": false, @@ -76720,7 +76720,7 @@ "src": "26307:26:21", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput memory[] memory" } }, @@ -76729,17 +76729,17 @@ }, { "assignments": [ - 6596 + 7117 ], "declarations": [ { "constant": false, - "id": 6596, + "id": 7117, "mutability": "mutable", "name": "txQuoteHash", "nameLocation": "26351:11:21", "nodeType": "VariableDeclaration", - "scope": 6756, + "scope": 7277, "src": "26343:19:21", "stateVariable": false, "storageLocation": "default", @@ -76748,7 +76748,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 6595, + "id": 7116, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "26343:7:21", @@ -76760,7 +76760,7 @@ "visibility": "internal" } ], - "id": 6610, + "id": 7131, "initialValue": { "arguments": [ { @@ -76768,24 +76768,24 @@ { "expression": { "baseExpression": { - "id": 6601, + "id": 7122, "name": "outputs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6589, + "referencedDeclaration": 7110, "src": "26405:7:21", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput memory[] memory" } }, - "id": 6603, + "id": 7124, "indexExpression": { - "id": 6602, + "id": 7123, "name": "QUOTE_HASH_OUTPUT", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4590, + "referencedDeclaration": 5111, "src": "26413:17:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -76799,11 +76799,11 @@ "nodeType": "IndexAccess", "src": "26405:26:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput memory" } }, - "id": 6604, + "id": 7125, "isConstant": false, "isLValue": true, "isPure": false, @@ -76811,7 +76811,7 @@ "memberLocation": "26432:8:21", "memberName": "pkScript", "nodeType": "MemberAccess", - "referencedDeclaration": 2287, + "referencedDeclaration": 2302, "src": "26405:35:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -76827,18 +76827,18 @@ } ], "expression": { - "id": 6599, + "id": 7120, "name": "BtcUtils", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3228, + "referencedDeclaration": 3743, "src": "26376:8:21", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3228_$", + "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", "typeString": "type(library BtcUtils)" } }, - "id": 6600, + "id": 7121, "isConstant": false, "isLValue": false, "isPure": false, @@ -76846,14 +76846,14 @@ "memberLocation": "26385:19:21", "memberName": "parseNullDataScript", "nodeType": "MemberAccess", - "referencedDeclaration": 2819, + "referencedDeclaration": 3176, "src": "26376:28:21", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) pure returns (bytes memory)" } }, - "id": 6605, + "id": 7126, "isConstant": false, "isLValue": false, "isPure": false, @@ -76872,7 +76872,7 @@ { "components": [ { - "id": 6607, + "id": 7128, "isConstant": false, "isLValue": false, "isPure": true, @@ -76884,7 +76884,7 @@ "typeString": "type(bytes32)" }, "typeName": { - "id": 6606, + "id": 7127, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "26444:7:21", @@ -76892,7 +76892,7 @@ } } ], - "id": 6608, + "id": 7129, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -76918,7 +76918,7 @@ } ], "expression": { - "id": 6597, + "id": 7118, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -76929,7 +76929,7 @@ "typeString": "abi" } }, - "id": 6598, + "id": 7119, "isConstant": false, "isLValue": false, "isPure": true, @@ -76943,7 +76943,7 @@ "typeString": "function () pure" } }, - "id": 6609, + "id": 7130, "isConstant": false, "isLValue": false, "isPure": false, @@ -76970,17 +76970,17 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 6614, + "id": 7135, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 6612, + "id": 7133, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6538, + "referencedDeclaration": 7059, "src": "26471:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -76990,11 +76990,11 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 6613, + "id": 7134, "name": "txQuoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6596, + "referencedDeclaration": 7117, "src": "26484:11:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -77009,7 +77009,7 @@ }, { "hexValue": "4c4243303639", - "id": 6615, + "id": 7136, "isConstant": false, "isLValue": false, "isPure": true, @@ -77035,7 +77035,7 @@ "typeString": "literal_string \"LBC069\"" } ], - "id": 6611, + "id": 7132, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -77049,7 +77049,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6616, + "id": 7137, "isConstant": false, "isLValue": false, "isPure": false, @@ -77065,7 +77065,7 @@ "typeString": "tuple()" } }, - "id": 6617, + "id": 7138, "nodeType": "ExpressionStatement", "src": "26463:43:21" }, @@ -77077,14 +77077,14 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 6623, + "id": 7144, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6619, + "id": 7140, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -77095,7 +77095,7 @@ "typeString": "msg" } }, - "id": 6620, + "id": 7141, "isConstant": false, "isLValue": false, "isPure": false, @@ -77113,18 +77113,18 @@ "operator": "==", "rightExpression": { "expression": { - "id": 6621, + "id": 7142, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6568, + "referencedDeclaration": 7089, "src": "26538:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6622, + "id": 7143, "isConstant": false, "isLValue": true, "isPure": false, @@ -77132,7 +77132,7 @@ "memberLocation": "26544:12:21", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10332, + "referencedDeclaration": 10928, "src": "26538:18:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -77147,7 +77147,7 @@ }, { "hexValue": "4c4243303438", - "id": 6624, + "id": 7145, "isConstant": false, "isLValue": false, "isPure": true, @@ -77173,7 +77173,7 @@ "typeString": "literal_string \"LBC048\"" } ], - "id": 6618, + "id": 7139, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -77187,7 +77187,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6625, + "id": 7146, "isConstant": false, "isLValue": false, "isPure": false, @@ -77203,7 +77203,7 @@ "typeString": "tuple()" } }, - "id": 6626, + "id": 7147, "nodeType": "ExpressionStatement", "src": "26516:51:21" }, @@ -77215,7 +77215,7 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 6646, + "id": 7167, "isConstant": false, "isLValue": false, "isPure": false, @@ -77225,11 +77225,11 @@ { "arguments": [ { - "id": 6632, + "id": 7153, "name": "btcTx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6540, + "referencedDeclaration": 7061, "src": "26672:5:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -77245,18 +77245,18 @@ } ], "expression": { - "id": 6630, + "id": 7151, "name": "BtcUtils", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3228, + "referencedDeclaration": 3743, "src": "26653:8:21", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3228_$", + "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", "typeString": "type(library BtcUtils)" } }, - "id": 6631, + "id": 7152, "isConstant": false, "isLValue": false, "isPure": false, @@ -77264,14 +77264,14 @@ "memberLocation": "26662:9:21", "memberName": "hashBtcTx", "nodeType": "MemberAccess", - "referencedDeclaration": 2887, + "referencedDeclaration": 3244, "src": "26653:18:21", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 6633, + "id": 7154, "isConstant": false, "isLValue": false, "isPure": false, @@ -77288,11 +77288,11 @@ } }, { - "id": 6634, + "id": 7155, "name": "btcBlockHeaderHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6542, + "referencedDeclaration": 7063, "src": "26696:18:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -77300,11 +77300,11 @@ } }, { - "id": 6635, + "id": 7156, "name": "partialMerkleTree", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6544, + "referencedDeclaration": 7065, "src": "26732:17:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -77312,11 +77312,11 @@ } }, { - "id": 6636, + "id": 7157, "name": "merkleBranchHashes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6547, + "referencedDeclaration": 7068, "src": "26767:18:21", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", @@ -77344,18 +77344,18 @@ } ], "expression": { - "id": 6628, + "id": 7149, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4754, + "referencedDeclaration": 5275, "src": "26598:6:21", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, - "id": 6629, + "id": 7150, "isConstant": false, "isLValue": false, "isPure": false, @@ -77363,14 +77363,14 @@ "memberLocation": "26605:30:21", "memberName": "getBtcTransactionConfirmations", "nodeType": "MemberAccess", - "referencedDeclaration": 3562, + "referencedDeclaration": 4083, "src": "26598:37:21", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_bytes32_$_t_bytes32_$_t_uint256_$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_int256_$", "typeString": "function (bytes32,bytes32,uint256,bytes32[] memory) view external returns (int256)" } }, - "id": 6637, + "id": 7158, "isConstant": false, "isLValue": false, "isPure": false, @@ -77394,18 +77394,18 @@ "arguments": [ { "expression": { - "id": 6642, + "id": 7163, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6568, + "referencedDeclaration": 7089, "src": "26815:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6643, + "id": 7164, "isConstant": false, "isLValue": true, "isPure": false, @@ -77413,7 +77413,7 @@ "memberLocation": "26821:21:21", "memberName": "transferConfirmations", "nodeType": "MemberAccess", - "referencedDeclaration": 10356, + "referencedDeclaration": 10952, "src": "26815:27:21", "typeDescriptions": { "typeIdentifier": "t_uint16", @@ -77428,7 +77428,7 @@ "typeString": "uint16" } ], - "id": 6641, + "id": 7162, "isConstant": false, "isLValue": false, "isPure": true, @@ -77440,14 +77440,14 @@ "typeString": "type(uint256)" }, "typeName": { - "id": 6640, + "id": 7161, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "26807:7:21", "typeDescriptions": {} } }, - "id": 6644, + "id": 7165, "isConstant": false, "isLValue": false, "isPure": false, @@ -77471,7 +77471,7 @@ "typeString": "uint256" } ], - "id": 6639, + "id": 7160, "isConstant": false, "isLValue": false, "isPure": true, @@ -77483,14 +77483,14 @@ "typeString": "type(int256)" }, "typeName": { - "id": 6638, + "id": 7159, "name": "int", "nodeType": "ElementaryTypeName", "src": "26803:3:21", "typeDescriptions": {} } }, - "id": 6645, + "id": 7166, "isConstant": false, "isLValue": false, "isPure": false, @@ -77514,7 +77514,7 @@ }, { "hexValue": "4c4243303439", - "id": 6647, + "id": 7168, "isConstant": false, "isLValue": false, "isPure": true, @@ -77540,7 +77540,7 @@ "typeString": "literal_string \"LBC049\"" } ], - "id": 6627, + "id": 7148, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -77554,7 +77554,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6648, + "id": 7169, "isConstant": false, "isLValue": false, "isPure": false, @@ -77570,7 +77570,7 @@ "typeString": "tuple()" } }, - "id": 6649, + "id": 7170, "nodeType": "ExpressionStatement", "src": "26577:299:21" }, @@ -77582,25 +77582,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6662, + "id": 7183, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6651, + "id": 7172, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6568, + "referencedDeclaration": 7089, "src": "26894:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6652, + "id": 7173, "isConstant": false, "isLValue": true, "isPure": false, @@ -77608,7 +77608,7 @@ "memberLocation": "26900:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10348, + "referencedDeclaration": 10944, "src": "26894:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -77622,7 +77622,7 @@ "typeIdentifier": "t_uint64", "typeString": "uint64" }, - "id": 6661, + "id": 7182, "isConstant": false, "isLValue": false, "isPure": false, @@ -77630,24 +77630,24 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 6653, + "id": 7174, "name": "outputs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6589, + "referencedDeclaration": 7110, "src": "26909:7:21", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput memory[] memory" } }, - "id": 6655, + "id": 7176, "indexExpression": { - "id": 6654, + "id": 7175, "name": "PAY_TO_ADDRESS_OUTPUT", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4587, + "referencedDeclaration": 5108, "src": "26917:21:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -77661,11 +77661,11 @@ "nodeType": "IndexAccess", "src": "26909:30:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput memory" } }, - "id": 6656, + "id": 7177, "isConstant": false, "isLValue": true, "isPure": false, @@ -77673,7 +77673,7 @@ "memberLocation": "26940:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 2285, + "referencedDeclaration": 2300, "src": "26909:36:21", "typeDescriptions": { "typeIdentifier": "t_uint64", @@ -77689,14 +77689,14 @@ "typeIdentifier": "t_rational_10000000000_by_1", "typeString": "int_const 10000000000" }, - "id": 6659, + "id": 7180, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 6657, + "id": 7178, "isConstant": false, "isLValue": false, "isPure": true, @@ -77714,7 +77714,7 @@ "operator": "**", "rightExpression": { "hexValue": "3130", - "id": 6658, + "id": 7179, "isConstant": false, "isLValue": false, "isPure": true, @@ -77735,7 +77735,7 @@ } } ], - "id": 6660, + "id": 7181, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -77762,7 +77762,7 @@ }, { "hexValue": "4c4243303637", - "id": 6663, + "id": 7184, "isConstant": false, "isLValue": false, "isPure": true, @@ -77788,7 +77788,7 @@ "typeString": "literal_string \"LBC067\"" } ], - "id": 6650, + "id": 7171, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -77802,7 +77802,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6664, + "id": 7185, "isConstant": false, "isLValue": false, "isPure": false, @@ -77818,23 +77818,23 @@ "typeString": "tuple()" } }, - "id": 6665, + "id": 7186, "nodeType": "ExpressionStatement", "src": "26886:81:21" }, { "assignments": [ - 6667 + 7188 ], "declarations": [ { "constant": false, - "id": 6667, + "id": 7188, "mutability": "mutable", "name": "btcTxDestination", "nameLocation": "27008:16:21", "nodeType": "VariableDeclaration", - "scope": 6756, + "scope": 7277, "src": "26995:29:21", "stateVariable": false, "storageLocation": "memory", @@ -77843,7 +77843,7 @@ "typeString": "bytes" }, "typeName": { - "id": 6666, + "id": 7187, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "26995:5:21", @@ -77855,30 +77855,30 @@ "visibility": "internal" } ], - "id": 6676, + "id": 7197, "initialValue": { "arguments": [ { "expression": { "baseExpression": { - "id": 6670, + "id": 7191, "name": "outputs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6589, + "referencedDeclaration": 7110, "src": "27057:7:21", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput memory[] memory" } }, - "id": 6672, + "id": 7193, "indexExpression": { - "id": 6671, + "id": 7192, "name": "PAY_TO_ADDRESS_OUTPUT", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4587, + "referencedDeclaration": 5108, "src": "27065:21:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -77892,11 +77892,11 @@ "nodeType": "IndexAccess", "src": "27057:30:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput memory" } }, - "id": 6673, + "id": 7194, "isConstant": false, "isLValue": true, "isPure": false, @@ -77904,7 +77904,7 @@ "memberLocation": "27101:8:21", "memberName": "pkScript", "nodeType": "MemberAccess", - "referencedDeclaration": 2287, + "referencedDeclaration": 2302, "src": "27057:52:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -77912,11 +77912,11 @@ } }, { - "id": 6674, + "id": 7195, "name": "mainnet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, + "referencedDeclaration": 5317, "src": "27111:7:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -77936,18 +77936,18 @@ } ], "expression": { - "id": 6668, + "id": 7189, "name": "BtcUtils", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3228, + "referencedDeclaration": 3743, "src": "27027:8:21", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3228_$", + "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", "typeString": "type(library BtcUtils)" } }, - "id": 6669, + "id": 7190, "isConstant": false, "isLValue": false, "isPure": false, @@ -77955,14 +77955,14 @@ "memberLocation": "27036:20:21", "memberName": "parsePayToPubKeyHash", "nodeType": "MemberAccess", - "referencedDeclaration": 2724, + "referencedDeclaration": 2874, "src": "27027:29:21", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$_t_bool_$returns$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory,bool) pure returns (bytes memory)" } }, - "id": 6675, + "id": 7196, "isConstant": false, "isLValue": false, "isPure": false, @@ -77989,7 +77989,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 6685, + "id": 7206, "isConstant": false, "isLValue": false, "isPure": false, @@ -77998,18 +77998,18 @@ "arguments": [ { "expression": { - "id": 6679, + "id": 7200, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6568, + "referencedDeclaration": 7089, "src": "27147:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6680, + "id": 7201, "isConstant": false, "isLValue": true, "isPure": false, @@ -78017,7 +78017,7 @@ "memberLocation": "27153:15:21", "memberName": "deposityAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10346, + "referencedDeclaration": 10942, "src": "27147:21:21", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", @@ -78032,7 +78032,7 @@ "typeString": "bytes storage ref" } ], - "id": 6678, + "id": 7199, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -78043,7 +78043,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 6681, + "id": 7202, "isConstant": false, "isLValue": false, "isPure": false, @@ -78064,11 +78064,11 @@ "rightExpression": { "arguments": [ { - "id": 6683, + "id": 7204, "name": "btcTxDestination", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6667, + "referencedDeclaration": 7188, "src": "27183:16:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -78083,7 +78083,7 @@ "typeString": "bytes memory" } ], - "id": 6682, + "id": 7203, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -78094,7 +78094,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 6684, + "id": 7205, "isConstant": false, "isLValue": false, "isPure": false, @@ -78118,7 +78118,7 @@ }, { "hexValue": "4c4243303638", - "id": 6686, + "id": 7207, "isConstant": false, "isLValue": false, "isPure": true, @@ -78144,7 +78144,7 @@ "typeString": "literal_string \"LBC068\"" } ], - "id": 6677, + "id": 7198, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -78158,7 +78158,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6687, + "id": 7208, "isConstant": false, "isLValue": false, "isPure": false, @@ -78174,7 +78174,7 @@ "typeString": "tuple()" } }, - "id": 6688, + "id": 7209, "nodeType": "ExpressionStatement", "src": "27129:82:21" }, @@ -78182,23 +78182,23 @@ "condition": { "arguments": [ { - "id": 6690, + "id": 7211, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6568, + "referencedDeclaration": 7089, "src": "27279:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, { - "id": 6691, + "id": 7212, "name": "txQuoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6596, + "referencedDeclaration": 7117, "src": "27302:11:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -78206,11 +78206,11 @@ } }, { - "id": 6692, + "id": 7213, "name": "btcBlockHeaderHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6542, + "referencedDeclaration": 7063, "src": "27331:18:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -78221,7 +78221,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" }, { @@ -78233,18 +78233,18 @@ "typeString": "bytes32" } ], - "id": 6689, + "id": 7210, "name": "shouldPenalizePegOutLP", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7279, + "referencedDeclaration": 7800, "src": "27239:22:21", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$10363_memory_ptr_$_t_bytes32_$_t_bytes32_$returns$_t_bool_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$10959_memory_ptr_$_t_bytes32_$_t_bytes32_$returns$_t_bool_$", "typeString": "function (struct Quotes.PegOutQuote memory,bytes32,bytes32) view returns (bool)" } }, - "id": 6693, + "id": 7214, "isConstant": false, "isLValue": false, "isPure": false, @@ -78260,27 +78260,27 @@ "typeString": "bool" } }, - "id": 6720, + "id": 7241, "nodeType": "IfStatement", "src": "27222:428:21", "trueBody": { - "id": 6719, + "id": 7240, "nodeType": "Block", "src": "27374:276:21", "statements": [ { "assignments": [ - 6695 + 7216 ], "declarations": [ { "constant": false, - "id": 6695, + "id": 7216, "mutability": "mutable", "name": "penalty", "nameLocation": "27393:7:21", "nodeType": "VariableDeclaration", - "scope": 6719, + "scope": 7240, "src": "27388:12:21", "stateVariable": false, "storageLocation": "default", @@ -78289,7 +78289,7 @@ "typeString": "uint256" }, "typeName": { - "id": 6694, + "id": 7215, "name": "uint", "nodeType": "ElementaryTypeName", "src": "27388:4:21", @@ -78301,23 +78301,23 @@ "visibility": "internal" } ], - "id": 6704, + "id": 7225, "initialValue": { "arguments": [ { "expression": { - "id": 6697, + "id": 7218, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6568, + "referencedDeclaration": 7089, "src": "27424:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6698, + "id": 7219, "isConstant": false, "isLValue": true, "isPure": false, @@ -78325,7 +78325,7 @@ "memberLocation": "27430:10:21", "memberName": "penaltyFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10342, + "referencedDeclaration": 10938, "src": "27424:16:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -78334,32 +78334,32 @@ }, { "baseExpression": { - "id": 6699, + "id": 7220, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4766, + "referencedDeclaration": 5287, "src": "27458:16:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 6702, + "id": 7223, "indexExpression": { "expression": { - "id": 6700, + "id": 7221, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6568, + "referencedDeclaration": 7089, "src": "27475:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6701, + "id": 7222, "isConstant": false, "isLValue": true, "isPure": false, @@ -78367,7 +78367,7 @@ "memberLocation": "27481:12:21", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10332, + "referencedDeclaration": 10928, "src": "27475:18:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -78397,18 +78397,18 @@ "typeString": "uint256" } ], - "id": 6696, + "id": 7217, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6974, + "referencedDeclaration": 7495, "src": "27403:3:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 6703, + "id": 7224, "isConstant": false, "isLValue": false, "isPure": false, @@ -78429,39 +78429,39 @@ }, { "expression": { - "id": 6710, + "id": 7231, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 6705, + "id": 7226, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4766, + "referencedDeclaration": 5287, "src": "27522:16:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 6708, + "id": 7229, "indexExpression": { "expression": { - "id": 6706, + "id": 7227, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6568, + "referencedDeclaration": 7089, "src": "27539:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6707, + "id": 7228, "isConstant": false, "isLValue": true, "isPure": false, @@ -78469,7 +78469,7 @@ "memberLocation": "27545:12:21", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10332, + "referencedDeclaration": 10928, "src": "27539:18:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -78490,11 +78490,11 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 6709, + "id": 7230, "name": "penalty", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6695, + "referencedDeclaration": 7216, "src": "27562:7:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -78507,7 +78507,7 @@ "typeString": "uint256" } }, - "id": 6711, + "id": 7232, "nodeType": "ExpressionStatement", "src": "27522:47:21" }, @@ -78516,18 +78516,18 @@ "arguments": [ { "expression": { - "id": 6713, + "id": 7234, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6568, + "referencedDeclaration": 7089, "src": "27598:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6714, + "id": 7235, "isConstant": false, "isLValue": true, "isPure": false, @@ -78535,7 +78535,7 @@ "memberLocation": "27604:12:21", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10332, + "referencedDeclaration": 10928, "src": "27598:18:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -78543,11 +78543,11 @@ } }, { - "id": 6715, + "id": 7236, "name": "penalty", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6695, + "referencedDeclaration": 7216, "src": "27618:7:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -78555,11 +78555,11 @@ } }, { - "id": 6716, + "id": 7237, "name": "txQuoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6596, + "referencedDeclaration": 7117, "src": "27627:11:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -78582,18 +78582,18 @@ "typeString": "bytes32" } ], - "id": 6712, + "id": 7233, "name": "Penalized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4691, + "referencedDeclaration": 5212, "src": "27588:9:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bytes32_$returns$__$", "typeString": "function (address,uint256,bytes32)" } }, - "id": 6717, + "id": 7238, "isConstant": false, "isLValue": false, "isPure": false, @@ -78609,7 +78609,7 @@ "typeString": "tuple()" } }, - "id": 6718, + "id": 7239, "nodeType": "EmitStatement", "src": "27583:56:21" } @@ -78618,18 +78618,18 @@ }, { "assignments": [ - 6722, + 7243, null ], "declarations": [ { "constant": false, - "id": 6722, + "id": 7243, "mutability": "mutable", "name": "sent", "nameLocation": "27666:4:21", "nodeType": "VariableDeclaration", - "scope": 6756, + "scope": 7277, "src": "27661:9:21", "stateVariable": false, "storageLocation": "default", @@ -78638,7 +78638,7 @@ "typeString": "bool" }, "typeName": { - "id": 6721, + "id": 7242, "name": "bool", "nodeType": "ElementaryTypeName", "src": "27661:4:21", @@ -78651,12 +78651,12 @@ }, null ], - "id": 6734, + "id": 7255, "initialValue": { "arguments": [ { "hexValue": "", - "id": 6732, + "id": 7253, "isConstant": false, "isLValue": false, "isPure": true, @@ -78687,18 +78687,18 @@ ], "expression": { "expression": { - "id": 6723, + "id": 7244, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6568, + "referencedDeclaration": 7089, "src": "27675:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6724, + "id": 7245, "isConstant": false, "isLValue": true, "isPure": false, @@ -78706,14 +78706,14 @@ "memberLocation": "27681:12:21", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10332, + "referencedDeclaration": 10928, "src": "27675:18:21", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 6725, + "id": 7246, "isConstant": false, "isLValue": false, "isPure": false, @@ -78727,7 +78727,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 6731, + "id": 7252, "isConstant": false, "isLValue": false, "isPure": false, @@ -78742,25 +78742,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6730, + "id": 7251, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6726, + "id": 7247, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6568, + "referencedDeclaration": 7089, "src": "27723:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6727, + "id": 7248, "isConstant": false, "isLValue": true, "isPure": false, @@ -78768,7 +78768,7 @@ "memberLocation": "27729:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10348, + "referencedDeclaration": 10944, "src": "27723:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -78779,18 +78779,18 @@ "operator": "+", "rightExpression": { "expression": { - "id": 6728, + "id": 7249, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6568, + "referencedDeclaration": 7089, "src": "27737:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote storage pointer" } }, - "id": 6729, + "id": 7250, "isConstant": false, "isLValue": true, "isPure": false, @@ -78798,7 +78798,7 @@ "memberLocation": "27743:7:21", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10340, + "referencedDeclaration": 10936, "src": "27737:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -78818,7 +78818,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 6733, + "id": 7254, "isConstant": false, "isLValue": false, "isPure": false, @@ -78841,11 +78841,11 @@ "expression": { "arguments": [ { - "id": 6736, + "id": 7257, "name": "sent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6722, + "referencedDeclaration": 7243, "src": "27786:4:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -78854,7 +78854,7 @@ }, { "hexValue": "4c4243303530", - "id": 6737, + "id": 7258, "isConstant": false, "isLValue": false, "isPure": true, @@ -78880,7 +78880,7 @@ "typeString": "literal_string \"LBC050\"" } ], - "id": 6735, + "id": 7256, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -78894,7 +78894,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6738, + "id": 7259, "isConstant": false, "isLValue": false, "isPure": false, @@ -78910,13 +78910,13 @@ "typeString": "tuple()" } }, - "id": 6739, + "id": 7260, "nodeType": "ExpressionStatement", "src": "27778:23:21" }, { "expression": { - "id": 6743, + "id": 7264, "isConstant": false, "isLValue": false, "isPure": false, @@ -78927,24 +78927,24 @@ "src": "27812:42:21", "subExpression": { "baseExpression": { - "id": 6740, + "id": 7261, "name": "registeredPegoutQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4805, + "referencedDeclaration": 5326, "src": "27819:22:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10363_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10959_storage_$", "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote storage ref)" } }, - "id": 6742, + "id": 7263, "indexExpression": { - "id": 6741, + "id": 7262, "name": "txQuoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6596, + "referencedDeclaration": 7117, "src": "27842:11:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -78958,7 +78958,7 @@ "nodeType": "IndexAccess", "src": "27819:35:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage", "typeString": "struct Quotes.PegOutQuote storage ref" } }, @@ -78967,13 +78967,13 @@ "typeString": "tuple()" } }, - "id": 6744, + "id": 7265, "nodeType": "ExpressionStatement", "src": "27812:42:21" }, { "expression": { - "id": 6750, + "id": 7271, "isConstant": false, "isLValue": false, "isPure": false, @@ -78981,24 +78981,24 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 6745, + "id": 7266, "name": "pegoutRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4810, + "referencedDeclaration": 5331, "src": "27864:14:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$4600_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord storage ref)" } }, - "id": 6747, + "id": 7268, "indexExpression": { - "id": 6746, + "id": 7267, "name": "txQuoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6596, + "referencedDeclaration": 7117, "src": "27879:11:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -79012,11 +79012,11 @@ "nodeType": "IndexAccess", "src": "27864:27:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$4600_storage", + "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage", "typeString": "struct LiquidityBridgeContract.PegoutRecord storage ref" } }, - "id": 6748, + "id": 7269, "isConstant": false, "isLValue": true, "isPure": false, @@ -79024,7 +79024,7 @@ "memberLocation": "27892:9:21", "memberName": "completed", "nodeType": "MemberAccess", - "referencedDeclaration": 4599, + "referencedDeclaration": 5120, "src": "27864:37:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -79035,7 +79035,7 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 6749, + "id": 7270, "isConstant": false, "isLValue": false, "isPure": true, @@ -79055,7 +79055,7 @@ "typeString": "bool" } }, - "id": 6751, + "id": 7272, "nodeType": "ExpressionStatement", "src": "27864:44:21" }, @@ -79063,11 +79063,11 @@ "eventCall": { "arguments": [ { - "id": 6753, + "id": 7274, "name": "txQuoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6596, + "referencedDeclaration": 7117, "src": "27938:11:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -79082,18 +79082,18 @@ "typeString": "bytes32" } ], - "id": 6752, + "id": 7273, "name": "PegOutRefunded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4733, + "referencedDeclaration": 5254, "src": "27923:14:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 6754, + "id": 7275, "isConstant": false, "isLValue": false, "isPure": false, @@ -79109,22 +79109,22 @@ "typeString": "tuple()" } }, - "id": 6755, + "id": 7276, "nodeType": "EmitStatement", "src": "27918:32:21" } ] }, "functionSelector": "d6c70de8", - "id": 6757, + "id": 7278, "implemented": true, "kind": "function", "modifiers": [ { - "id": 6550, + "id": 7071, "kind": "modifierInvocation", "modifierName": { - "id": 6549, + "id": 7070, "name": "nonReentrant", "nameLocations": [ "26010:12:21" @@ -79137,16 +79137,16 @@ "src": "26010:12:21" }, { - "id": 6552, + "id": 7073, "kind": "modifierInvocation", "modifierName": { - "id": 6551, + "id": 7072, "name": "onlyRegisteredForPegout", "nameLocations": [ "26023:23:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 4834, + "referencedDeclaration": 5355, "src": "26023:23:21" }, "nodeType": "ModifierInvocation", @@ -79157,17 +79157,17 @@ "nameLocation": "25813:12:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 6548, + "id": 7069, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6538, + "id": 7059, "mutability": "mutable", "name": "quoteHash", "nameLocation": "25843:9:21", "nodeType": "VariableDeclaration", - "scope": 6757, + "scope": 7278, "src": "25835:17:21", "stateVariable": false, "storageLocation": "default", @@ -79176,7 +79176,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 6537, + "id": 7058, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "25835:7:21", @@ -79189,12 +79189,12 @@ }, { "constant": false, - "id": 6540, + "id": 7061, "mutability": "mutable", "name": "btcTx", "nameLocation": "25875:5:21", "nodeType": "VariableDeclaration", - "scope": 6757, + "scope": 7278, "src": "25862:18:21", "stateVariable": false, "storageLocation": "memory", @@ -79203,7 +79203,7 @@ "typeString": "bytes" }, "typeName": { - "id": 6539, + "id": 7060, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "25862:5:21", @@ -79216,12 +79216,12 @@ }, { "constant": false, - "id": 6542, + "id": 7063, "mutability": "mutable", "name": "btcBlockHeaderHash", "nameLocation": "25898:18:21", "nodeType": "VariableDeclaration", - "scope": 6757, + "scope": 7278, "src": "25890:26:21", "stateVariable": false, "storageLocation": "default", @@ -79230,7 +79230,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 6541, + "id": 7062, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "25890:7:21", @@ -79243,12 +79243,12 @@ }, { "constant": false, - "id": 6544, + "id": 7065, "mutability": "mutable", "name": "partialMerkleTree", "nameLocation": "25934:17:21", "nodeType": "VariableDeclaration", - "scope": 6757, + "scope": 7278, "src": "25926:25:21", "stateVariable": false, "storageLocation": "default", @@ -79257,7 +79257,7 @@ "typeString": "uint256" }, "typeName": { - "id": 6543, + "id": 7064, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "25926:7:21", @@ -79270,12 +79270,12 @@ }, { "constant": false, - "id": 6547, + "id": 7068, "mutability": "mutable", "name": "merkleBranchHashes", "nameLocation": "25978:18:21", "nodeType": "VariableDeclaration", - "scope": 6757, + "scope": 7278, "src": "25961:35:21", "stateVariable": false, "storageLocation": "memory", @@ -79285,7 +79285,7 @@ }, "typeName": { "baseType": { - "id": 6545, + "id": 7066, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "25961:7:21", @@ -79294,7 +79294,7 @@ "typeString": "bytes32" } }, - "id": 6546, + "id": 7067, "nodeType": "ArrayTypeName", "src": "25961:9:21", "typeDescriptions": { @@ -79308,12 +79308,12 @@ "src": "25825:177:21" }, "returnParameters": { - "id": 6553, + "id": 7074, "nodeType": "ParameterList", "parameters": [], "src": "26047:0:21" }, - "scope": 7377, + "scope": 7898, "src": "25804:2153:21", "stateMutability": "nonpayable", "virtual": false, @@ -79321,23 +79321,23 @@ }, { "body": { - "id": 6808, + "id": 7329, "nodeType": "Block", "src": "28111:548:21", "statements": [ { "assignments": [ - 6768 + 7289 ], "declarations": [ { "constant": false, - "id": 6768, + "id": 7289, "mutability": "mutable", "name": "derivationValue", "nameLocation": "28129:15:21", "nodeType": "VariableDeclaration", - "scope": 6808, + "scope": 7329, "src": "28121:23:21", "stateVariable": false, "storageLocation": "default", @@ -79346,7 +79346,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 6767, + "id": 7288, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "28121:7:21", @@ -79358,7 +79358,7 @@ "visibility": "internal" } ], - "id": 6787, + "id": 7308, "initialValue": { "arguments": [ { @@ -79366,14 +79366,14 @@ { "arguments": [ { - "id": 6774, + "id": 7295, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6760, + "referencedDeclaration": 7281, "src": "28210:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } } @@ -79381,22 +79381,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } ], - "id": 6773, + "id": 7294, "name": "hashQuote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6823, + "referencedDeclaration": 7344, "src": "28200:9:21", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10328_memory_ptr_$returns$_t_bytes32_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10924_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (struct Quotes.PeginQuote memory) view returns (bytes32)" } }, - "id": 6775, + "id": 7296, "isConstant": false, "isLValue": false, "isPure": false, @@ -79414,18 +79414,18 @@ }, { "expression": { - "id": 6776, + "id": 7297, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6760, + "referencedDeclaration": 7281, "src": "28234:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6777, + "id": 7298, "isConstant": false, "isLValue": true, "isPure": false, @@ -79433,7 +79433,7 @@ "memberLocation": "28240:16:21", "memberName": "btcRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10299, + "referencedDeclaration": 10895, "src": "28234:22:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -79444,18 +79444,18 @@ "arguments": [ { "expression": { - "id": 6780, + "id": 7301, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6760, + "referencedDeclaration": 7281, "src": "28282:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6781, + "id": 7302, "isConstant": false, "isLValue": true, "isPure": false, @@ -79463,7 +79463,7 @@ "memberLocation": "28288:10:21", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10295, + "referencedDeclaration": 10891, "src": "28282:16:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -79478,7 +79478,7 @@ "typeString": "address" } ], - "id": 6779, + "id": 7300, "isConstant": false, "isLValue": false, "isPure": true, @@ -79490,14 +79490,14 @@ "typeString": "type(bytes20)" }, "typeName": { - "id": 6778, + "id": 7299, "name": "bytes20", "nodeType": "ElementaryTypeName", "src": "28274:7:21", "typeDescriptions": {} } }, - "id": 6782, + "id": 7303, "isConstant": false, "isLValue": false, "isPure": false, @@ -79515,18 +79515,18 @@ }, { "expression": { - "id": 6783, + "id": 7304, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6760, + "referencedDeclaration": 7281, "src": "28317:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6784, + "id": 7305, "isConstant": false, "isLValue": true, "isPure": false, @@ -79534,7 +79534,7 @@ "memberLocation": "28323:27:21", "memberName": "liquidityProviderBtcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10303, + "referencedDeclaration": 10899, "src": "28317:33:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -79562,7 +79562,7 @@ } ], "expression": { - "id": 6771, + "id": 7292, "isConstant": false, "isLValue": false, "isPure": true, @@ -79574,14 +79574,14 @@ "typeString": "type(bytes storage pointer)" }, "typeName": { - "id": 6770, + "id": 7291, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "28170:5:21", "typeDescriptions": {} } }, - "id": 6772, + "id": 7293, "isConstant": false, "isLValue": false, "isPure": false, @@ -79595,7 +79595,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 6785, + "id": 7306, "isConstant": false, "isLValue": false, "isPure": false, @@ -79619,7 +79619,7 @@ "typeString": "bytes memory" } ], - "id": 6769, + "id": 7290, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -79630,7 +79630,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 6786, + "id": 7307, "isConstant": false, "isLValue": false, "isPure": false, @@ -79651,17 +79651,17 @@ }, { "assignments": [ - 6789 + 7310 ], "declarations": [ { "constant": false, - "id": 6789, + "id": 7310, "mutability": "mutable", "name": "flyoverRedeemScript", "nameLocation": "28397:19:21", "nodeType": "VariableDeclaration", - "scope": 6808, + "scope": 7329, "src": "28384:32:21", "stateVariable": false, "storageLocation": "memory", @@ -79670,7 +79670,7 @@ "typeString": "bytes" }, "typeName": { - "id": 6788, + "id": 7309, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "28384:5:21", @@ -79682,12 +79682,12 @@ "visibility": "internal" } ], - "id": 6800, + "id": 7321, "initialValue": { "arguments": [ { "hexValue": "20", - "id": 6793, + "id": 7314, "isConstant": false, "isLValue": false, "isPure": true, @@ -79702,11 +79702,11 @@ "value": " " }, { - "id": 6794, + "id": 7315, "name": "derivationValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6768, + "referencedDeclaration": 7289, "src": "28466:15:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -79715,7 +79715,7 @@ }, { "hexValue": "75", - "id": 6795, + "id": 7316, "isConstant": false, "isLValue": false, "isPure": true, @@ -79734,18 +79734,18 @@ "expression": { "argumentTypes": [], "expression": { - "id": 6796, + "id": 7317, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4754, + "referencedDeclaration": 5275, "src": "28516:6:21", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, - "id": 6797, + "id": 7318, "isConstant": false, "isLValue": false, "isPure": false, @@ -79753,14 +79753,14 @@ "memberLocation": "28523:27:21", "memberName": "getActivePowpegRedeemScript", "nodeType": "MemberAccess", - "referencedDeclaration": 3625, + "referencedDeclaration": 4146, "src": "28516:34:21", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () view external returns (bytes memory)" } }, - "id": 6798, + "id": 7319, "isConstant": false, "isLValue": false, "isPure": false, @@ -79797,7 +79797,7 @@ } ], "expression": { - "id": 6791, + "id": 7312, "isConstant": false, "isLValue": false, "isPure": true, @@ -79809,14 +79809,14 @@ "typeString": "type(bytes storage pointer)" }, "typeName": { - "id": 6790, + "id": 7311, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "28419:5:21", "typeDescriptions": {} } }, - "id": 6792, + "id": 7313, "isConstant": false, "isLValue": false, "isPure": false, @@ -79830,7 +79830,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 6799, + "id": 7320, "isConstant": false, "isLValue": false, "isPure": false, @@ -79853,11 +79853,11 @@ "expression": { "arguments": [ { - "id": 6803, + "id": 7324, "name": "depositAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6762, + "referencedDeclaration": 7283, "src": "28607:14:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -79865,11 +79865,11 @@ } }, { - "id": 6804, + "id": 7325, "name": "flyoverRedeemScript", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6789, + "referencedDeclaration": 7310, "src": "28623:19:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -79877,11 +79877,11 @@ } }, { - "id": 6805, + "id": 7326, "name": "mainnet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4796, + "referencedDeclaration": 5317, "src": "28644:7:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -79905,18 +79905,18 @@ } ], "expression": { - "id": 6801, + "id": 7322, "name": "BtcUtils", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3228, + "referencedDeclaration": 3743, "src": "28579:8:21", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3228_$", + "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", "typeString": "type(library BtcUtils)" } }, - "id": 6802, + "id": 7323, "isConstant": false, "isLValue": false, "isPure": false, @@ -79924,14 +79924,14 @@ "memberLocation": "28588:18:21", "memberName": "validateP2SHAdress", "nodeType": "MemberAccess", - "referencedDeclaration": 3013, + "referencedDeclaration": 3370, "src": "28579:27:21", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_bool_$returns$_t_bool_$", "typeString": "function (bytes memory,bytes memory,bool) pure returns (bool)" } }, - "id": 6806, + "id": 7327, "isConstant": false, "isLValue": false, "isPure": false, @@ -79947,15 +79947,15 @@ "typeString": "bool" } }, - "functionReturnParameters": 6766, - "id": 6807, + "functionReturnParameters": 7287, + "id": 7328, "nodeType": "Return", "src": "28572:80:21" } ] }, "functionSelector": "a0d25037", - "id": 6809, + "id": 7330, "implemented": true, "kind": "function", "modifiers": [], @@ -79963,42 +79963,42 @@ "nameLocation": "27971:27:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 6763, + "id": 7284, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6760, + "id": 7281, "mutability": "mutable", "name": "quote", "nameLocation": "28033:5:21", "nodeType": "VariableDeclaration", - "scope": 6809, + "scope": 7330, "src": "28008:30:21", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote" }, "typeName": { - "id": 6759, + "id": 7280, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 6758, + "id": 7279, "name": "Quotes.PeginQuote", "nameLocations": [ "28008:6:21", "28015:10:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "28008:17:21" }, - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "28008:17:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_storage_ptr", "typeString": "struct Quotes.PeginQuote" } }, @@ -80006,12 +80006,12 @@ }, { "constant": false, - "id": 6762, + "id": 7283, "mutability": "mutable", "name": "depositAddress", "nameLocation": "28061:14:21", "nodeType": "VariableDeclaration", - "scope": 6809, + "scope": 7330, "src": "28048:27:21", "stateVariable": false, "storageLocation": "memory", @@ -80020,7 +80020,7 @@ "typeString": "bytes" }, "typeName": { - "id": 6761, + "id": 7282, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "28048:5:21", @@ -80035,17 +80035,17 @@ "src": "27998:83:21" }, "returnParameters": { - "id": 6766, + "id": 7287, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6765, + "id": 7286, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 6809, + "scope": 7330, "src": "28105:4:21", "stateVariable": false, "storageLocation": "default", @@ -80054,7 +80054,7 @@ "typeString": "bool" }, "typeName": { - "id": 6764, + "id": 7285, "name": "bool", "nodeType": "ElementaryTypeName", "src": "28105:4:21", @@ -80068,7 +80068,7 @@ ], "src": "28104:6:21" }, - "scope": 7377, + "scope": 7898, "src": "27962:697:21", "stateMutability": "view", "virtual": false, @@ -80076,7 +80076,7 @@ }, { "body": { - "id": 6822, + "id": 7343, "nodeType": "Block", "src": "28951:51:21", "statements": [ @@ -80084,14 +80084,14 @@ "expression": { "arguments": [ { - "id": 6819, + "id": 7340, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6813, + "referencedDeclaration": 7334, "src": "28989:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } } @@ -80099,22 +80099,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } ], - "id": 6818, + "id": 7339, "name": "validateAndHashQuote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6930, + "referencedDeclaration": 7451, "src": "28968:20:21", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10328_memory_ptr_$returns$_t_bytes32_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10924_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (struct Quotes.PeginQuote memory) view returns (bytes32)" } }, - "id": 6820, + "id": 7341, "isConstant": false, "isLValue": false, "isPure": false, @@ -80130,21 +80130,21 @@ "typeString": "bytes32" } }, - "functionReturnParameters": 6817, - "id": 6821, + "functionReturnParameters": 7338, + "id": 7342, "nodeType": "Return", "src": "28961:34:21" } ] }, "documentation": { - "id": 6810, + "id": 7331, "nodeType": "StructuredDocumentation", "src": "28665:200:21", "text": "@dev Calculates hash of a quote. Note: besides calculation this function also validates the quote.\n@param quote The quote of the service\n@return The hash of a quote" }, "functionSelector": "1b032188", - "id": 6823, + "id": 7344, "implemented": true, "kind": "function", "modifiers": [], @@ -80152,42 +80152,42 @@ "nameLocation": "28879:9:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 6814, + "id": 7335, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6813, + "id": 7334, "mutability": "mutable", "name": "quote", "nameLocation": "28914:5:21", "nodeType": "VariableDeclaration", - "scope": 6823, + "scope": 7344, "src": "28889:30:21", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote" }, "typeName": { - "id": 6812, + "id": 7333, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 6811, + "id": 7332, "name": "Quotes.PeginQuote", "nameLocations": [ "28889:6:21", "28896:10:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "28889:17:21" }, - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "28889:17:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_storage_ptr", "typeString": "struct Quotes.PeginQuote" } }, @@ -80197,17 +80197,17 @@ "src": "28888:32:21" }, "returnParameters": { - "id": 6817, + "id": 7338, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6816, + "id": 7337, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 6823, + "scope": 7344, "src": "28942:7:21", "stateVariable": false, "storageLocation": "default", @@ -80216,7 +80216,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 6815, + "id": 7336, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "28942:7:21", @@ -80230,7 +80230,7 @@ ], "src": "28941:9:21" }, - "scope": 7377, + "scope": 7898, "src": "28870:132:21", "stateMutability": "view", "virtual": false, @@ -80238,7 +80238,7 @@ }, { "body": { - "id": 6835, + "id": 7356, "nodeType": "Block", "src": "29110:57:21", "statements": [ @@ -80246,14 +80246,14 @@ "expression": { "arguments": [ { - "id": 6832, + "id": 7353, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6826, + "referencedDeclaration": 7347, "src": "29154:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } } @@ -80261,22 +80261,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } ], - "id": 6831, + "id": 7352, "name": "validateAndHashPegOutQuote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6957, + "referencedDeclaration": 7478, "src": "29127:26:21", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$10363_memory_ptr_$returns$_t_bytes32_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$10959_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (struct Quotes.PegOutQuote memory) view returns (bytes32)" } }, - "id": 6833, + "id": 7354, "isConstant": false, "isLValue": false, "isPure": false, @@ -80292,15 +80292,15 @@ "typeString": "bytes32" } }, - "functionReturnParameters": 6830, - "id": 6834, + "functionReturnParameters": 7351, + "id": 7355, "nodeType": "Return", "src": "29120:40:21" } ] }, "functionSelector": "69023235", - "id": 6836, + "id": 7357, "implemented": true, "kind": "function", "modifiers": [], @@ -80308,42 +80308,42 @@ "nameLocation": "29017:15:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 6827, + "id": 7348, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6826, + "id": 7347, "mutability": "mutable", "name": "quote", "nameLocation": "29068:5:21", "nodeType": "VariableDeclaration", - "scope": 6836, + "scope": 7357, "src": "29042:31:21", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote" }, "typeName": { - "id": 6825, + "id": 7346, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 6824, + "id": 7345, "name": "Quotes.PegOutQuote", "nameLocations": [ "29042:6:21", "29049:11:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "29042:18:21" }, - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "29042:18:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote" } }, @@ -80353,17 +80353,17 @@ "src": "29032:47:21" }, "returnParameters": { - "id": 6830, + "id": 7351, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6829, + "id": 7350, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 6836, + "scope": 7357, "src": "29101:7:21", "stateVariable": false, "storageLocation": "default", @@ -80372,7 +80372,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 6828, + "id": 7349, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "29101:7:21", @@ -80386,7 +80386,7 @@ ], "src": "29100:9:21" }, - "scope": 7377, + "scope": 7898, "src": "29008:159:21", "stateMutability": "view", "virtual": false, @@ -80394,7 +80394,7 @@ }, { "body": { - "id": 6929, + "id": 7450, "nodeType": "Block", "src": "29280:732:21", "statements": [ @@ -80406,7 +80406,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 6851, + "id": 7372, "isConstant": false, "isLValue": false, "isPure": false, @@ -80414,14 +80414,14 @@ "leftExpression": { "arguments": [ { - "id": 6847, + "id": 7368, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967268, "src": "29306:4:21", "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7377", + "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", "typeString": "contract LiquidityBridgeContract" } } @@ -80429,11 +80429,11 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7377", + "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", "typeString": "contract LiquidityBridgeContract" } ], - "id": 6846, + "id": 7367, "isConstant": false, "isLValue": false, "isPure": true, @@ -80445,14 +80445,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 6845, + "id": 7366, "name": "address", "nodeType": "ElementaryTypeName", "src": "29298:7:21", "typeDescriptions": {} } }, - "id": 6848, + "id": 7369, "isConstant": false, "isLValue": false, "isPure": false, @@ -80472,18 +80472,18 @@ "operator": "==", "rightExpression": { "expression": { - "id": 6849, + "id": 7370, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6839, + "referencedDeclaration": 7360, "src": "29315:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6850, + "id": 7371, "isConstant": false, "isLValue": true, "isPure": false, @@ -80491,7 +80491,7 @@ "memberLocation": "29321:10:21", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10295, + "referencedDeclaration": 10891, "src": "29315:16:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -80506,7 +80506,7 @@ }, { "hexValue": "4c4243303531", - "id": 6852, + "id": 7373, "isConstant": false, "isLValue": false, "isPure": true, @@ -80532,7 +80532,7 @@ "typeString": "literal_string \"LBC051\"" } ], - "id": 6844, + "id": 7365, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -80546,7 +80546,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6853, + "id": 7374, "isConstant": false, "isLValue": false, "isPure": false, @@ -80562,7 +80562,7 @@ "typeString": "tuple()" } }, - "id": 6854, + "id": 7375, "nodeType": "ExpressionStatement", "src": "29290:52:21" }, @@ -80574,7 +80574,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 6862, + "id": 7383, "isConstant": false, "isLValue": false, "isPure": false, @@ -80582,14 +80582,14 @@ "leftExpression": { "arguments": [ { - "id": 6858, + "id": 7379, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4754, + "referencedDeclaration": 5275, "src": "29381:6:21", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } } @@ -80597,11 +80597,11 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } ], - "id": 6857, + "id": 7378, "isConstant": false, "isLValue": false, "isPure": true, @@ -80613,14 +80613,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 6856, + "id": 7377, "name": "address", "nodeType": "ElementaryTypeName", "src": "29373:7:21", "typeDescriptions": {} } }, - "id": 6859, + "id": 7380, "isConstant": false, "isLValue": false, "isPure": false, @@ -80640,18 +80640,18 @@ "operator": "!=", "rightExpression": { "expression": { - "id": 6860, + "id": 7381, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6839, + "referencedDeclaration": 7360, "src": "29392:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6861, + "id": 7382, "isConstant": false, "isLValue": true, "isPure": false, @@ -80659,7 +80659,7 @@ "memberLocation": "29398:15:21", "memberName": "contractAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10309, + "referencedDeclaration": 10905, "src": "29392:21:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -80674,7 +80674,7 @@ }, { "hexValue": "4c4243303532", - "id": 6863, + "id": 7384, "isConstant": false, "isLValue": false, "isPure": true, @@ -80700,7 +80700,7 @@ "typeString": "literal_string \"LBC052\"" } ], - "id": 6855, + "id": 7376, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -80714,7 +80714,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6864, + "id": 7385, "isConstant": false, "isLValue": false, "isPure": false, @@ -80730,7 +80730,7 @@ "typeString": "tuple()" } }, - "id": 6865, + "id": 7386, "nodeType": "ExpressionStatement", "src": "29352:93:21" }, @@ -80742,7 +80742,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 6877, + "id": 7398, "isConstant": false, "isLValue": false, "isPure": false, @@ -80752,7 +80752,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6871, + "id": 7392, "isConstant": false, "isLValue": false, "isPure": false, @@ -80760,18 +80760,18 @@ "leftExpression": { "expression": { "expression": { - "id": 6867, + "id": 7388, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6839, + "referencedDeclaration": 7360, "src": "29476:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6868, + "id": 7389, "isConstant": false, "isLValue": true, "isPure": false, @@ -80779,14 +80779,14 @@ "memberLocation": "29482:16:21", "memberName": "btcRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10299, + "referencedDeclaration": 10895, "src": "29476:22:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 6869, + "id": 7390, "isConstant": false, "isLValue": false, "isPure": false, @@ -80804,7 +80804,7 @@ "operator": "==", "rightExpression": { "hexValue": "3231", - "id": 6870, + "id": 7391, "isConstant": false, "isLValue": false, "isPure": true, @@ -80831,7 +80831,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6876, + "id": 7397, "isConstant": false, "isLValue": false, "isPure": false, @@ -80839,18 +80839,18 @@ "leftExpression": { "expression": { "expression": { - "id": 6872, + "id": 7393, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6839, + "referencedDeclaration": 7360, "src": "29527:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6873, + "id": 7394, "isConstant": false, "isLValue": true, "isPure": false, @@ -80858,14 +80858,14 @@ "memberLocation": "29533:16:21", "memberName": "btcRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10299, + "referencedDeclaration": 10895, "src": "29527:22:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 6874, + "id": 7395, "isConstant": false, "isLValue": false, "isPure": false, @@ -80883,7 +80883,7 @@ "operator": "==", "rightExpression": { "hexValue": "3333", - "id": 6875, + "id": 7396, "isConstant": false, "isLValue": false, "isPure": true, @@ -80911,7 +80911,7 @@ }, { "hexValue": "4c4243303533", - "id": 6878, + "id": 7399, "isConstant": false, "isLValue": false, "isPure": true, @@ -80937,7 +80937,7 @@ "typeString": "literal_string \"LBC053\"" } ], - "id": 6866, + "id": 7387, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -80951,7 +80951,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6879, + "id": 7400, "isConstant": false, "isLValue": false, "isPure": false, @@ -80967,7 +80967,7 @@ "typeString": "tuple()" } }, - "id": 6880, + "id": 7401, "nodeType": "ExpressionStatement", "src": "29455:139:21" }, @@ -80979,7 +80979,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6886, + "id": 7407, "isConstant": false, "isLValue": false, "isPure": false, @@ -80987,18 +80987,18 @@ "leftExpression": { "expression": { "expression": { - "id": 6882, + "id": 7403, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6839, + "referencedDeclaration": 7360, "src": "29625:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6883, + "id": 7404, "isConstant": false, "isLValue": true, "isPure": false, @@ -81006,14 +81006,14 @@ "memberLocation": "29631:27:21", "memberName": "liquidityProviderBtcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10303, + "referencedDeclaration": 10899, "src": "29625:33:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 6884, + "id": 7405, "isConstant": false, "isLValue": false, "isPure": false, @@ -81031,7 +81031,7 @@ "operator": "==", "rightExpression": { "hexValue": "3231", - "id": 6885, + "id": 7406, "isConstant": false, "isLValue": false, "isPure": true, @@ -81053,7 +81053,7 @@ }, { "hexValue": "4c4243303534", - "id": 6887, + "id": 7408, "isConstant": false, "isLValue": false, "isPure": true, @@ -81079,7 +81079,7 @@ "typeString": "literal_string \"LBC054\"" } ], - "id": 6881, + "id": 7402, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -81093,7 +81093,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6888, + "id": 7409, "isConstant": false, "isLValue": false, "isPure": false, @@ -81109,7 +81109,7 @@ "typeString": "tuple()" } }, - "id": 6889, + "id": 7410, "nodeType": "ExpressionStatement", "src": "29604:99:21" }, @@ -81121,7 +81121,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6897, + "id": 7418, "isConstant": false, "isLValue": false, "isPure": false, @@ -81131,25 +81131,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6895, + "id": 7416, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 6891, + "id": 7412, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6839, + "referencedDeclaration": 7360, "src": "29734:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6892, + "id": 7413, "isConstant": false, "isLValue": true, "isPure": false, @@ -81157,7 +81157,7 @@ "memberLocation": "29740:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10317, + "referencedDeclaration": 10913, "src": "29734:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -81168,18 +81168,18 @@ "operator": "+", "rightExpression": { "expression": { - "id": 6893, + "id": 7414, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6839, + "referencedDeclaration": 7360, "src": "29748:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6894, + "id": 7415, "isConstant": false, "isLValue": true, "isPure": false, @@ -81187,7 +81187,7 @@ "memberLocation": "29754:7:21", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10305, + "referencedDeclaration": 10901, "src": "29748:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -81203,11 +81203,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 6896, + "id": 7417, "name": "minPegIn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4784, + "referencedDeclaration": 5305, "src": "29765:8:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -81222,7 +81222,7 @@ }, { "hexValue": "4c4243303535", - "id": 6898, + "id": 7419, "isConstant": false, "isLValue": false, "isPure": true, @@ -81248,7 +81248,7 @@ "typeString": "literal_string \"LBC055\"" } ], - "id": 6890, + "id": 7411, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -81262,7 +81262,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6899, + "id": 7420, "isConstant": false, "isLValue": false, "isPure": false, @@ -81278,7 +81278,7 @@ "typeString": "tuple()" } }, - "id": 6900, + "id": 7421, "nodeType": "ExpressionStatement", "src": "29713:92:21" }, @@ -81290,7 +81290,7 @@ "typeIdentifier": "t_uint64", "typeString": "uint64" }, - "id": 6918, + "id": 7439, "isConstant": false, "isLValue": false, "isPure": false, @@ -81299,7 +81299,7 @@ "expression": { "arguments": [ { - "id": 6904, + "id": 7425, "isConstant": false, "isLValue": false, "isPure": true, @@ -81311,7 +81311,7 @@ "typeString": "type(uint32)" }, "typeName": { - "id": 6903, + "id": 7424, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "29841:6:21", @@ -81326,7 +81326,7 @@ "typeString": "type(uint32)" } ], - "id": 6902, + "id": 7423, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -81337,7 +81337,7 @@ "typeString": "function () pure" } }, - "id": 6905, + "id": 7426, "isConstant": false, "isLValue": false, "isPure": true, @@ -81353,7 +81353,7 @@ "typeString": "type(uint32)" } }, - "id": 6906, + "id": 7427, "isConstant": false, "isLValue": false, "isPure": true, @@ -81374,7 +81374,7 @@ "typeIdentifier": "t_uint64", "typeString": "uint64" }, - "id": 6917, + "id": 7438, "isConstant": false, "isLValue": false, "isPure": false, @@ -81383,18 +81383,18 @@ "arguments": [ { "expression": { - "id": 6909, + "id": 7430, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6839, + "referencedDeclaration": 7360, "src": "29863:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6910, + "id": 7431, "isConstant": false, "isLValue": true, "isPure": false, @@ -81402,7 +81402,7 @@ "memberLocation": "29869:18:21", "memberName": "agreementTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 10319, + "referencedDeclaration": 10915, "src": "29863:24:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -81417,7 +81417,7 @@ "typeString": "uint32" } ], - "id": 6908, + "id": 7429, "isConstant": false, "isLValue": false, "isPure": true, @@ -81429,14 +81429,14 @@ "typeString": "type(uint64)" }, "typeName": { - "id": 6907, + "id": 7428, "name": "uint64", "nodeType": "ElementaryTypeName", "src": "29856:6:21", "typeDescriptions": {} } }, - "id": 6911, + "id": 7432, "isConstant": false, "isLValue": false, "isPure": false, @@ -81458,18 +81458,18 @@ "arguments": [ { "expression": { - "id": 6914, + "id": 7435, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6839, + "referencedDeclaration": 7360, "src": "29898:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 6915, + "id": 7436, "isConstant": false, "isLValue": true, "isPure": false, @@ -81477,7 +81477,7 @@ "memberLocation": "29904:14:21", "memberName": "timeForDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 10321, + "referencedDeclaration": 10917, "src": "29898:20:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -81492,7 +81492,7 @@ "typeString": "uint32" } ], - "id": 6913, + "id": 7434, "isConstant": false, "isLValue": false, "isPure": true, @@ -81504,14 +81504,14 @@ "typeString": "type(uint64)" }, "typeName": { - "id": 6912, + "id": 7433, "name": "uint64", "nodeType": "ElementaryTypeName", "src": "29891:6:21", "typeDescriptions": {} } }, - "id": 6916, + "id": 7437, "isConstant": false, "isLValue": false, "isPure": false, @@ -81541,7 +81541,7 @@ }, { "hexValue": "4c4243303731", - "id": 6919, + "id": 7440, "isConstant": false, "isLValue": false, "isPure": true, @@ -81567,7 +81567,7 @@ "typeString": "literal_string \"LBC071\"" } ], - "id": 6901, + "id": 7422, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -81581,7 +81581,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6920, + "id": 7441, "isConstant": false, "isLValue": false, "isPure": false, @@ -81597,7 +81597,7 @@ "typeString": "tuple()" } }, - "id": 6921, + "id": 7442, "nodeType": "ExpressionStatement", "src": "29815:136:21" }, @@ -81607,14 +81607,14 @@ { "arguments": [ { - "id": 6925, + "id": 7446, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6839, + "referencedDeclaration": 7360, "src": "29998:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } } @@ -81622,23 +81622,23 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } ], "expression": { - "id": 6923, + "id": 7444, "name": "Quotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10556, + "referencedDeclaration": 11152, "src": "29979:6:21", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Quotes_$10556_$", + "typeIdentifier": "t_type$_t_contract$_Quotes_$11152_$", "typeString": "type(library Quotes)" } }, - "id": 6924, + "id": 7445, "isConstant": false, "isLValue": false, "isPure": false, @@ -81646,14 +81646,14 @@ "memberLocation": "29986:11:21", "memberName": "encodeQuote", "nodeType": "MemberAccess", - "referencedDeclaration": 10382, + "referencedDeclaration": 10978, "src": "29979:18:21", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PeginQuote_$10328_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PeginQuote_$10924_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (struct Quotes.PeginQuote memory) pure returns (bytes memory)" } }, - "id": 6926, + "id": 7447, "isConstant": false, "isLValue": false, "isPure": false, @@ -81677,7 +81677,7 @@ "typeString": "bytes memory" } ], - "id": 6922, + "id": 7443, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -81688,7 +81688,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 6927, + "id": 7448, "isConstant": false, "isLValue": false, "isPure": false, @@ -81704,14 +81704,14 @@ "typeString": "bytes32" } }, - "functionReturnParameters": 6843, - "id": 6928, + "functionReturnParameters": 7364, + "id": 7449, "nodeType": "Return", "src": "29962:43:21" } ] }, - "id": 6930, + "id": 7451, "implemented": true, "kind": "function", "modifiers": [], @@ -81719,42 +81719,42 @@ "nameLocation": "29182:20:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 6840, + "id": 7361, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6839, + "id": 7360, "mutability": "mutable", "name": "quote", "nameLocation": "29237:5:21", "nodeType": "VariableDeclaration", - "scope": 6930, + "scope": 7451, "src": "29212:30:21", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote" }, "typeName": { - "id": 6838, + "id": 7359, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 6837, + "id": 7358, "name": "Quotes.PeginQuote", "nameLocations": [ "29212:6:21", "29219:10:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "29212:17:21" }, - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "29212:17:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_storage_ptr", "typeString": "struct Quotes.PeginQuote" } }, @@ -81764,17 +81764,17 @@ "src": "29202:46:21" }, "returnParameters": { - "id": 6843, + "id": 7364, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6842, + "id": 7363, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 6930, + "scope": 7451, "src": "29271:7:21", "stateVariable": false, "storageLocation": "default", @@ -81783,7 +81783,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 6841, + "id": 7362, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "29271:7:21", @@ -81797,7 +81797,7 @@ ], "src": "29270:9:21" }, - "scope": 7377, + "scope": 7898, "src": "29173:839:21", "stateMutability": "view", "virtual": false, @@ -81805,7 +81805,7 @@ }, { "body": { - "id": 6956, + "id": 7477, "nodeType": "Block", "src": "30132:129:21", "statements": [ @@ -81817,7 +81817,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 6945, + "id": 7466, "isConstant": false, "isLValue": false, "isPure": false, @@ -81825,14 +81825,14 @@ "leftExpression": { "arguments": [ { - "id": 6941, + "id": 7462, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967268, "src": "30158:4:21", "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7377", + "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", "typeString": "contract LiquidityBridgeContract" } } @@ -81840,11 +81840,11 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7377", + "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", "typeString": "contract LiquidityBridgeContract" } ], - "id": 6940, + "id": 7461, "isConstant": false, "isLValue": false, "isPure": true, @@ -81856,14 +81856,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 6939, + "id": 7460, "name": "address", "nodeType": "ElementaryTypeName", "src": "30150:7:21", "typeDescriptions": {} } }, - "id": 6942, + "id": 7463, "isConstant": false, "isLValue": false, "isPure": false, @@ -81883,18 +81883,18 @@ "operator": "==", "rightExpression": { "expression": { - "id": 6943, + "id": 7464, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6933, + "referencedDeclaration": 7454, "src": "30167:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 6944, + "id": 7465, "isConstant": false, "isLValue": true, "isPure": false, @@ -81902,7 +81902,7 @@ "memberLocation": "30173:10:21", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10330, + "referencedDeclaration": 10926, "src": "30167:16:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -81917,7 +81917,7 @@ }, { "hexValue": "4c4243303536", - "id": 6946, + "id": 7467, "isConstant": false, "isLValue": false, "isPure": true, @@ -81943,7 +81943,7 @@ "typeString": "literal_string \"LBC056\"" } ], - "id": 6938, + "id": 7459, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -81957,7 +81957,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 6947, + "id": 7468, "isConstant": false, "isLValue": false, "isPure": false, @@ -81973,7 +81973,7 @@ "typeString": "tuple()" } }, - "id": 6948, + "id": 7469, "nodeType": "ExpressionStatement", "src": "30142:52:21" }, @@ -81983,14 +81983,14 @@ { "arguments": [ { - "id": 6952, + "id": 7473, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6933, + "referencedDeclaration": 7454, "src": "30247:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } } @@ -81998,23 +81998,23 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } ], "expression": { - "id": 6950, + "id": 7471, "name": "Quotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10556, + "referencedDeclaration": 11152, "src": "30222:6:21", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Quotes_$10556_$", + "typeIdentifier": "t_type$_t_contract$_Quotes_$11152_$", "typeString": "type(library Quotes)" } }, - "id": 6951, + "id": 7472, "isConstant": false, "isLValue": false, "isPure": false, @@ -82022,14 +82022,14 @@ "memberLocation": "30229:17:21", "memberName": "encodePegOutQuote", "nodeType": "MemberAccess", - "referencedDeclaration": 10401, + "referencedDeclaration": 10997, "src": "30222:24:21", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PegOutQuote_$10363_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PegOutQuote_$10959_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (struct Quotes.PegOutQuote memory) pure returns (bytes memory)" } }, - "id": 6953, + "id": 7474, "isConstant": false, "isLValue": false, "isPure": false, @@ -82053,7 +82053,7 @@ "typeString": "bytes memory" } ], - "id": 6949, + "id": 7470, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -82064,7 +82064,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 6954, + "id": 7475, "isConstant": false, "isLValue": false, "isPure": false, @@ -82080,14 +82080,14 @@ "typeString": "bytes32" } }, - "functionReturnParameters": 6937, - "id": 6955, + "functionReturnParameters": 7458, + "id": 7476, "nodeType": "Return", "src": "30205:49:21" } ] }, - "id": 6957, + "id": 7478, "implemented": true, "kind": "function", "modifiers": [], @@ -82095,42 +82095,42 @@ "nameLocation": "30027:26:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 6934, + "id": 7455, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6933, + "id": 7454, "mutability": "mutable", "name": "quote", "nameLocation": "30089:5:21", "nodeType": "VariableDeclaration", - "scope": 6957, + "scope": 7478, "src": "30063:31:21", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote" }, "typeName": { - "id": 6932, + "id": 7453, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 6931, + "id": 7452, "name": "Quotes.PegOutQuote", "nameLocations": [ "30063:6:21", "30070:11:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "30063:18:21" }, - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "30063:18:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote" } }, @@ -82140,17 +82140,17 @@ "src": "30053:47:21" }, "returnParameters": { - "id": 6937, + "id": 7458, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6936, + "id": 7457, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 6957, + "scope": 7478, "src": "30123:7:21", "stateVariable": false, "storageLocation": "default", @@ -82159,7 +82159,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 6935, + "id": 7456, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "30123:7:21", @@ -82173,7 +82173,7 @@ ], "src": "30122:9:21" }, - "scope": 7377, + "scope": 7898, "src": "30018:243:21", "stateMutability": "view", "virtual": false, @@ -82181,7 +82181,7 @@ }, { "body": { - "id": 6973, + "id": 7494, "nodeType": "Block", "src": "30324:37:21", "statements": [ @@ -82192,17 +82192,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 6968, + "id": 7489, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 6966, + "id": 7487, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6959, + "referencedDeclaration": 7480, "src": "30341:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -82212,11 +82212,11 @@ "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { - "id": 6967, + "id": 7488, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6961, + "referencedDeclaration": 7482, "src": "30345:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -82230,18 +82230,18 @@ } }, "falseExpression": { - "id": 6970, + "id": 7491, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6961, + "referencedDeclaration": 7482, "src": "30353:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 6971, + "id": 7492, "isConstant": false, "isLValue": false, "isPure": false, @@ -82249,11 +82249,11 @@ "nodeType": "Conditional", "src": "30341:13:21", "trueExpression": { - "id": 6969, + "id": 7490, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6959, + "referencedDeclaration": 7480, "src": "30349:1:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -82265,14 +82265,14 @@ "typeString": "uint256" } }, - "functionReturnParameters": 6965, - "id": 6972, + "functionReturnParameters": 7486, + "id": 7493, "nodeType": "Return", "src": "30334:20:21" } ] }, - "id": 6974, + "id": 7495, "implemented": true, "kind": "function", "modifiers": [], @@ -82280,17 +82280,17 @@ "nameLocation": "30276:3:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 6962, + "id": 7483, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6959, + "id": 7480, "mutability": "mutable", "name": "a", "nameLocation": "30285:1:21", "nodeType": "VariableDeclaration", - "scope": 6974, + "scope": 7495, "src": "30280:6:21", "stateVariable": false, "storageLocation": "default", @@ -82299,7 +82299,7 @@ "typeString": "uint256" }, "typeName": { - "id": 6958, + "id": 7479, "name": "uint", "nodeType": "ElementaryTypeName", "src": "30280:4:21", @@ -82312,12 +82312,12 @@ }, { "constant": false, - "id": 6961, + "id": 7482, "mutability": "mutable", "name": "b", "nameLocation": "30293:1:21", "nodeType": "VariableDeclaration", - "scope": 6974, + "scope": 7495, "src": "30288:6:21", "stateVariable": false, "storageLocation": "default", @@ -82326,7 +82326,7 @@ "typeString": "uint256" }, "typeName": { - "id": 6960, + "id": 7481, "name": "uint", "nodeType": "ElementaryTypeName", "src": "30288:4:21", @@ -82341,17 +82341,17 @@ "src": "30279:16:21" }, "returnParameters": { - "id": 6965, + "id": 7486, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6964, + "id": 7485, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 6974, + "scope": 7495, "src": "30318:4:21", "stateVariable": false, "storageLocation": "default", @@ -82360,7 +82360,7 @@ "typeString": "uint256" }, "typeName": { - "id": 6963, + "id": 7484, "name": "uint", "nodeType": "ElementaryTypeName", "src": "30318:4:21", @@ -82374,7 +82374,7 @@ ], "src": "30317:6:21" }, - "scope": 7377, + "scope": 7898, "src": "30267:94:21", "stateMutability": "pure", "virtual": false, @@ -82382,37 +82382,37 @@ }, { "body": { - "id": 6992, + "id": 7513, "nodeType": "Block", "src": "30494:85:21", "statements": [ { "expression": { - "id": 6985, + "id": 7506, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 6981, + "id": 7502, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4758, + "referencedDeclaration": 5279, "src": "30504:8:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 6983, + "id": 7504, "indexExpression": { - "id": 6982, + "id": 7503, "name": "dest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6976, + "referencedDeclaration": 7497, "src": "30513:4:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -82433,11 +82433,11 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 6984, + "id": 7505, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6978, + "referencedDeclaration": 7499, "src": "30522:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -82450,7 +82450,7 @@ "typeString": "uint256" } }, - "id": 6986, + "id": 7507, "nodeType": "ExpressionStatement", "src": "30504:24:21" }, @@ -82458,11 +82458,11 @@ "eventCall": { "arguments": [ { - "id": 6988, + "id": 7509, "name": "dest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6976, + "referencedDeclaration": 7497, "src": "30559:4:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -82470,11 +82470,11 @@ } }, { - "id": 6989, + "id": 7510, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6978, + "referencedDeclaration": 7499, "src": "30565:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -82493,18 +82493,18 @@ "typeString": "uint256" } ], - "id": 6987, + "id": 7508, "name": "BalanceIncrease", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4703, + "referencedDeclaration": 5224, "src": "30543:15:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 6990, + "id": 7511, "isConstant": false, "isLValue": false, "isPure": false, @@ -82520,13 +82520,13 @@ "typeString": "tuple()" } }, - "id": 6991, + "id": 7512, "nodeType": "EmitStatement", "src": "30538:34:21" } ] }, - "id": 6993, + "id": 7514, "implemented": true, "kind": "function", "modifiers": [], @@ -82534,17 +82534,17 @@ "nameLocation": "30443:15:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 6979, + "id": 7500, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6976, + "id": 7497, "mutability": "mutable", "name": "dest", "nameLocation": "30467:4:21", "nodeType": "VariableDeclaration", - "scope": 6993, + "scope": 7514, "src": "30459:12:21", "stateVariable": false, "storageLocation": "default", @@ -82553,7 +82553,7 @@ "typeString": "address" }, "typeName": { - "id": 6975, + "id": 7496, "name": "address", "nodeType": "ElementaryTypeName", "src": "30459:7:21", @@ -82567,12 +82567,12 @@ }, { "constant": false, - "id": 6978, + "id": 7499, "mutability": "mutable", "name": "amount", "nameLocation": "30478:6:21", "nodeType": "VariableDeclaration", - "scope": 6993, + "scope": 7514, "src": "30473:11:21", "stateVariable": false, "storageLocation": "default", @@ -82581,7 +82581,7 @@ "typeString": "uint256" }, "typeName": { - "id": 6977, + "id": 7498, "name": "uint", "nodeType": "ElementaryTypeName", "src": "30473:4:21", @@ -82596,12 +82596,12 @@ "src": "30458:27:21" }, "returnParameters": { - "id": 6980, + "id": 7501, "nodeType": "ParameterList", "parameters": [], "src": "30494:0:21" }, - "scope": 7377, + "scope": 7898, "src": "30434:145:21", "stateMutability": "nonpayable", "virtual": false, @@ -82609,37 +82609,37 @@ }, { "body": { - "id": 7011, + "id": 7532, "nodeType": "Block", "src": "30645:85:21", "statements": [ { "expression": { - "id": 7004, + "id": 7525, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 7000, + "id": 7521, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4758, + "referencedDeclaration": 5279, "src": "30655:8:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 7002, + "id": 7523, "indexExpression": { - "id": 7001, + "id": 7522, "name": "dest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6995, + "referencedDeclaration": 7516, "src": "30664:4:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -82660,11 +82660,11 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 7003, + "id": 7524, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6997, + "referencedDeclaration": 7518, "src": "30673:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -82677,7 +82677,7 @@ "typeString": "uint256" } }, - "id": 7005, + "id": 7526, "nodeType": "ExpressionStatement", "src": "30655:24:21" }, @@ -82685,11 +82685,11 @@ "eventCall": { "arguments": [ { - "id": 7007, + "id": 7528, "name": "dest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6995, + "referencedDeclaration": 7516, "src": "30710:4:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -82697,11 +82697,11 @@ } }, { - "id": 7008, + "id": 7529, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6997, + "referencedDeclaration": 7518, "src": "30716:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -82720,18 +82720,18 @@ "typeString": "uint256" } ], - "id": 7006, + "id": 7527, "name": "BalanceDecrease", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4709, + "referencedDeclaration": 5230, "src": "30694:15:21", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 7009, + "id": 7530, "isConstant": false, "isLValue": false, "isPure": false, @@ -82747,13 +82747,13 @@ "typeString": "tuple()" } }, - "id": 7010, + "id": 7531, "nodeType": "EmitStatement", "src": "30689:34:21" } ] }, - "id": 7012, + "id": 7533, "implemented": true, "kind": "function", "modifiers": [], @@ -82761,17 +82761,17 @@ "nameLocation": "30594:15:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 6998, + "id": 7519, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 6995, + "id": 7516, "mutability": "mutable", "name": "dest", "nameLocation": "30618:4:21", "nodeType": "VariableDeclaration", - "scope": 7012, + "scope": 7533, "src": "30610:12:21", "stateVariable": false, "storageLocation": "default", @@ -82780,7 +82780,7 @@ "typeString": "address" }, "typeName": { - "id": 6994, + "id": 7515, "name": "address", "nodeType": "ElementaryTypeName", "src": "30610:7:21", @@ -82794,12 +82794,12 @@ }, { "constant": false, - "id": 6997, + "id": 7518, "mutability": "mutable", "name": "amount", "nameLocation": "30629:6:21", "nodeType": "VariableDeclaration", - "scope": 7012, + "scope": 7533, "src": "30624:11:21", "stateVariable": false, "storageLocation": "default", @@ -82808,7 +82808,7 @@ "typeString": "uint256" }, "typeName": { - "id": 6996, + "id": 7517, "name": "uint", "nodeType": "ElementaryTypeName", "src": "30624:4:21", @@ -82823,12 +82823,12 @@ "src": "30609:27:21" }, "returnParameters": { - "id": 6999, + "id": 7520, "nodeType": "ParameterList", "parameters": [], "src": "30645:0:21" }, - "scope": 7377, + "scope": 7898, "src": "30585:145:21", "stateMutability": "nonpayable", "virtual": false, @@ -82836,7 +82836,7 @@ }, { "body": { - "id": 7032, + "id": 7553, "nodeType": "Block", "src": "31012:78:21", "statements": [ @@ -82846,7 +82846,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 7030, + "id": 7551, "isConstant": false, "isLValue": false, "isPure": false, @@ -82856,31 +82856,31 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7024, + "id": 7545, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 7020, + "id": 7541, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4762, + "referencedDeclaration": 5283, "src": "31029:10:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 7022, + "id": 7543, "indexExpression": { - "id": 7021, + "id": 7542, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7015, + "referencedDeclaration": 7536, "src": "31040:4:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -82902,7 +82902,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 7023, + "id": 7544, "isConstant": false, "isLValue": false, "isPure": true, @@ -82929,31 +82929,31 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7029, + "id": 7550, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 7025, + "id": 7546, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4780, + "referencedDeclaration": 5301, "src": "31053:19:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 7027, + "id": 7548, "indexExpression": { - "id": 7026, + "id": 7547, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7015, + "referencedDeclaration": 7536, "src": "31073:4:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -82975,7 +82975,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 7028, + "id": 7549, "isConstant": false, "isLValue": false, "isPure": true, @@ -83001,20 +83001,20 @@ "typeString": "bool" } }, - "functionReturnParameters": 7019, - "id": 7031, + "functionReturnParameters": 7540, + "id": 7552, "nodeType": "Return", "src": "31022:61:21" } ] }, "documentation": { - "id": 7013, + "id": 7534, "nodeType": "StructuredDocumentation", "src": "30736:207:21", "text": "@dev Checks if a liquidity provider is registered\n@param addr The address of the liquidity provider\n@return Boolean indicating whether the liquidity provider is registered" }, - "id": 7033, + "id": 7554, "implemented": true, "kind": "function", "modifiers": [], @@ -83022,17 +83022,17 @@ "nameLocation": "30957:12:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 7016, + "id": 7537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7015, + "id": 7536, "mutability": "mutable", "name": "addr", "nameLocation": "30978:4:21", "nodeType": "VariableDeclaration", - "scope": 7033, + "scope": 7554, "src": "30970:12:21", "stateVariable": false, "storageLocation": "default", @@ -83041,7 +83041,7 @@ "typeString": "address" }, "typeName": { - "id": 7014, + "id": 7535, "name": "address", "nodeType": "ElementaryTypeName", "src": "30970:7:21", @@ -83057,17 +83057,17 @@ "src": "30969:14:21" }, "returnParameters": { - "id": 7019, + "id": 7540, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7018, + "id": 7539, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7033, + "scope": 7554, "src": "31006:4:21", "stateVariable": false, "storageLocation": "default", @@ -83076,7 +83076,7 @@ "typeString": "bool" }, "typeName": { - "id": 7017, + "id": 7538, "name": "bool", "nodeType": "ElementaryTypeName", "src": "31006:4:21", @@ -83090,7 +83090,7 @@ ], "src": "31005:6:21" }, - "scope": 7377, + "scope": 7898, "src": "30948:142:21", "stateMutability": "view", "virtual": false, @@ -83098,7 +83098,7 @@ }, { "body": { - "id": 7052, + "id": 7573, "nodeType": "Block", "src": "31169:84:21", "statements": [ @@ -83108,7 +83108,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 7050, + "id": 7571, "isConstant": false, "isLValue": false, "isPure": false, @@ -83118,31 +83118,31 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7044, + "id": 7565, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 7040, + "id": 7561, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4766, + "referencedDeclaration": 5287, "src": "31186:16:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 7042, + "id": 7563, "indexExpression": { - "id": 7041, + "id": 7562, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7035, + "referencedDeclaration": 7556, "src": "31203:4:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -83164,7 +83164,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 7043, + "id": 7564, "isConstant": false, "isLValue": false, "isPure": true, @@ -83191,31 +83191,31 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7049, + "id": 7570, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 7045, + "id": 7566, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4780, + "referencedDeclaration": 5301, "src": "31216:19:21", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 7047, + "id": 7568, "indexExpression": { - "id": 7046, + "id": 7567, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7035, + "referencedDeclaration": 7556, "src": "31236:4:21", "typeDescriptions": { "typeIdentifier": "t_address", @@ -83237,7 +83237,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 7048, + "id": 7569, "isConstant": false, "isLValue": false, "isPure": true, @@ -83263,14 +83263,14 @@ "typeString": "bool" } }, - "functionReturnParameters": 7039, - "id": 7051, + "functionReturnParameters": 7560, + "id": 7572, "nodeType": "Return", "src": "31179:67:21" } ] }, - "id": 7053, + "id": 7574, "implemented": true, "kind": "function", "modifiers": [], @@ -83278,17 +83278,17 @@ "nameLocation": "31105:21:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 7036, + "id": 7557, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7035, + "id": 7556, "mutability": "mutable", "name": "addr", "nameLocation": "31135:4:21", "nodeType": "VariableDeclaration", - "scope": 7053, + "scope": 7574, "src": "31127:12:21", "stateVariable": false, "storageLocation": "default", @@ -83297,7 +83297,7 @@ "typeString": "address" }, "typeName": { - "id": 7034, + "id": 7555, "name": "address", "nodeType": "ElementaryTypeName", "src": "31127:7:21", @@ -83313,17 +83313,17 @@ "src": "31126:14:21" }, "returnParameters": { - "id": 7039, + "id": 7560, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7038, + "id": 7559, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7053, + "scope": 7574, "src": "31163:4:21", "stateVariable": false, "storageLocation": "default", @@ -83332,7 +83332,7 @@ "typeString": "bool" }, "typeName": { - "id": 7037, + "id": 7558, "name": "bool", "nodeType": "ElementaryTypeName", "src": "31163:4:21", @@ -83346,7 +83346,7 @@ ], "src": "31162:6:21" }, - "scope": 7377, + "scope": 7898, "src": "31096:157:21", "stateMutability": "view", "virtual": false, @@ -83354,7 +83354,7 @@ }, { "body": { - "id": 7097, + "id": 7618, "nodeType": "Block", "src": "31911:397:21", "statements": [ @@ -83362,11 +83362,11 @@ "expression": { "arguments": [ { - "id": 7072, + "id": 7593, "name": "btcRawTransaction", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7059, + "referencedDeclaration": 7580, "src": "31989:17:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -83374,11 +83374,11 @@ } }, { - "id": 7073, + "id": 7594, "name": "height", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7063, + "referencedDeclaration": 7584, "src": "32020:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -83386,11 +83386,11 @@ } }, { - "id": 7074, + "id": 7595, "name": "partialMerkleTree", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7061, + "referencedDeclaration": 7582, "src": "32040:17:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -83398,11 +83398,11 @@ } }, { - "id": 7075, + "id": 7596, "name": "derivationHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7065, + "referencedDeclaration": 7586, "src": "32071:14:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -83411,18 +83411,18 @@ }, { "expression": { - "id": 7076, + "id": 7597, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7057, + "referencedDeclaration": 7578, "src": "32099:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 7077, + "id": 7598, "isConstant": false, "isLValue": true, "isPure": false, @@ -83430,7 +83430,7 @@ "memberLocation": "32105:16:21", "memberName": "btcRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10299, + "referencedDeclaration": 10895, "src": "32099:22:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -83440,14 +83440,14 @@ { "arguments": [ { - "id": 7080, + "id": 7601, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967268, "src": "32143:4:21", "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7377", + "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", "typeString": "contract LiquidityBridgeContract" } } @@ -83455,11 +83455,11 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7377", + "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", "typeString": "contract LiquidityBridgeContract" } ], - "id": 7079, + "id": 7600, "isConstant": false, "isLValue": false, "isPure": true, @@ -83471,7 +83471,7 @@ "typeString": "type(address payable)" }, "typeName": { - "id": 7078, + "id": 7599, "name": "address", "nodeType": "ElementaryTypeName", "src": "32135:8:21", @@ -83479,7 +83479,7 @@ "typeDescriptions": {} } }, - "id": 7081, + "id": 7602, "isConstant": false, "isLValue": false, "isPure": false, @@ -83497,18 +83497,18 @@ }, { "expression": { - "id": 7082, + "id": 7603, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7057, + "referencedDeclaration": 7578, "src": "32162:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 7083, + "id": 7604, "isConstant": false, "isLValue": true, "isPure": false, @@ -83516,7 +83516,7 @@ "memberLocation": "32168:27:21", "memberName": "liquidityProviderBtcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10303, + "referencedDeclaration": 10899, "src": "32162:33:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -83528,7 +83528,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 7094, + "id": 7615, "isConstant": false, "isLValue": false, "isPure": false, @@ -83538,7 +83538,7 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 7089, + "id": 7610, "isConstant": false, "isLValue": false, "isPure": false, @@ -83546,24 +83546,24 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 7084, + "id": 7605, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4776, + "referencedDeclaration": 5297, "src": "32209:12:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$4595_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" } }, - "id": 7086, + "id": 7607, "indexExpression": { - "id": 7085, + "id": 7606, "name": "derivationHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7065, + "referencedDeclaration": 7586, "src": "32222:14:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -83577,11 +83577,11 @@ "nodeType": "IndexAccess", "src": "32209:28:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$4595_storage", + "typeIdentifier": "t_struct$_Registry_$5116_storage", "typeString": "struct LiquidityBridgeContract.Registry storage ref" } }, - "id": 7087, + "id": 7608, "isConstant": false, "isLValue": true, "isPure": false, @@ -83589,7 +83589,7 @@ "memberLocation": "32238:9:21", "memberName": "timestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 4592, + "referencedDeclaration": 5113, "src": "32209:38:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -83600,7 +83600,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 7088, + "id": 7609, "isConstant": false, "isLValue": false, "isPure": true, @@ -83625,24 +83625,24 @@ "rightExpression": { "expression": { "baseExpression": { - "id": 7090, + "id": 7611, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4776, + "referencedDeclaration": 5297, "src": "32255:12:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$4595_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" } }, - "id": 7092, + "id": 7613, "indexExpression": { - "id": 7091, + "id": 7612, "name": "derivationHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7065, + "referencedDeclaration": 7586, "src": "32268:14:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -83656,11 +83656,11 @@ "nodeType": "IndexAccess", "src": "32255:28:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$4595_storage", + "typeIdentifier": "t_struct$_Registry_$5116_storage", "typeString": "struct LiquidityBridgeContract.Registry storage ref" } }, - "id": 7093, + "id": 7614, "isConstant": false, "isLValue": true, "isPure": false, @@ -83668,7 +83668,7 @@ "memberLocation": "32284:7:21", "memberName": "success", "nodeType": "MemberAccess", - "referencedDeclaration": 4594, + "referencedDeclaration": 5115, "src": "32255:36:21", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -83718,18 +83718,18 @@ } ], "expression": { - "id": 7070, + "id": 7591, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4754, + "referencedDeclaration": 5275, "src": "31936:6:21", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, - "id": 7071, + "id": 7592, "isConstant": false, "isLValue": false, "isPure": false, @@ -83737,14 +83737,14 @@ "memberLocation": "31943:32:21", "memberName": "registerFastBridgeBtcTransaction", "nodeType": "MemberAccess", - "referencedDeclaration": 3615, + "referencedDeclaration": 4136, "src": "31936:39:21", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$_t_uint256_$_t_bytes_memory_ptr_$_t_bytes32_$_t_bytes_memory_ptr_$_t_address_payable_$_t_bytes_memory_ptr_$_t_bool_$returns$_t_int256_$", "typeString": "function (bytes memory,uint256,bytes memory,bytes32,bytes memory,address payable,bytes memory,bool) external returns (int256)" } }, - "id": 7095, + "id": 7616, "isConstant": false, "isLValue": false, "isPure": false, @@ -83760,20 +83760,20 @@ "typeString": "int256" } }, - "functionReturnParameters": 7069, - "id": 7096, + "functionReturnParameters": 7590, + "id": 7617, "nodeType": "Return", "src": "31921:380:21" } ] }, "documentation": { - "id": 7054, + "id": 7575, "nodeType": "StructuredDocumentation", "src": "31259:416:21", "text": "@dev Registers a transaction with the bridge contract\n@param quote The quote of the service\n@param btcRawTransaction The peg-in transaction\n@param partialMerkleTree The merkle tree path that proves transaction inclusion\n@param height The block that contains the transaction\n@return The total peg-in amount received from the bridge contract or an error code" }, - "id": 7098, + "id": 7619, "implemented": true, "kind": "function", "modifiers": [], @@ -83781,42 +83781,42 @@ "nameLocation": "31689:14:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 7066, + "id": 7587, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7057, + "id": 7578, "mutability": "mutable", "name": "quote", "nameLocation": "31738:5:21", "nodeType": "VariableDeclaration", - "scope": 7098, + "scope": 7619, "src": "31713:30:21", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote" }, "typeName": { - "id": 7056, + "id": 7577, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 7055, + "id": 7576, "name": "Quotes.PeginQuote", "nameLocations": [ "31713:6:21", "31720:10:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "31713:17:21" }, - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "31713:17:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_storage_ptr", "typeString": "struct Quotes.PeginQuote" } }, @@ -83824,12 +83824,12 @@ }, { "constant": false, - "id": 7059, + "id": 7580, "mutability": "mutable", "name": "btcRawTransaction", "nameLocation": "31766:17:21", "nodeType": "VariableDeclaration", - "scope": 7098, + "scope": 7619, "src": "31753:30:21", "stateVariable": false, "storageLocation": "memory", @@ -83838,7 +83838,7 @@ "typeString": "bytes" }, "typeName": { - "id": 7058, + "id": 7579, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "31753:5:21", @@ -83851,12 +83851,12 @@ }, { "constant": false, - "id": 7061, + "id": 7582, "mutability": "mutable", "name": "partialMerkleTree", "nameLocation": "31806:17:21", "nodeType": "VariableDeclaration", - "scope": 7098, + "scope": 7619, "src": "31793:30:21", "stateVariable": false, "storageLocation": "memory", @@ -83865,7 +83865,7 @@ "typeString": "bytes" }, "typeName": { - "id": 7060, + "id": 7581, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "31793:5:21", @@ -83878,12 +83878,12 @@ }, { "constant": false, - "id": 7063, + "id": 7584, "mutability": "mutable", "name": "height", "nameLocation": "31841:6:21", "nodeType": "VariableDeclaration", - "scope": 7098, + "scope": 7619, "src": "31833:14:21", "stateVariable": false, "storageLocation": "default", @@ -83892,7 +83892,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7062, + "id": 7583, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "31833:7:21", @@ -83905,12 +83905,12 @@ }, { "constant": false, - "id": 7065, + "id": 7586, "mutability": "mutable", "name": "derivationHash", "nameLocation": "31865:14:21", "nodeType": "VariableDeclaration", - "scope": 7098, + "scope": 7619, "src": "31857:22:21", "stateVariable": false, "storageLocation": "default", @@ -83919,7 +83919,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 7064, + "id": 7585, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "31857:7:21", @@ -83934,17 +83934,17 @@ "src": "31703:182:21" }, "returnParameters": { - "id": 7069, + "id": 7590, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7068, + "id": 7589, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7098, + "scope": 7619, "src": "31903:6:21", "stateVariable": false, "storageLocation": "default", @@ -83953,7 +83953,7 @@ "typeString": "int256" }, "typeName": { - "id": 7067, + "id": 7588, "name": "int256", "nodeType": "ElementaryTypeName", "src": "31903:6:21", @@ -83967,7 +83967,7 @@ ], "src": "31902:8:21" }, - "scope": 7377, + "scope": 7898, "src": "31680:628:21", "stateMutability": "nonpayable", "virtual": false, @@ -83975,7 +83975,7 @@ }, { "body": { - "id": 7212, + "id": 7733, "nodeType": "Block", "src": "32908:1398:21", "statements": [ @@ -83985,7 +83985,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 7126, + "id": 7647, "isConstant": false, "isLValue": false, "isPure": false, @@ -83995,17 +83995,17 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 7115, + "id": 7636, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 7113, + "id": 7634, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7104, + "referencedDeclaration": 7625, "src": "32983:6:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -84016,7 +84016,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 7114, + "id": 7635, "isConstant": false, "isLValue": false, "isPure": true, @@ -84043,7 +84043,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7125, + "id": 7646, "isConstant": false, "isLValue": false, "isPure": false, @@ -84051,11 +84051,11 @@ "leftExpression": { "arguments": [ { - "id": 7118, + "id": 7639, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7104, + "referencedDeclaration": 7625, "src": "33005:6:21", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -84070,7 +84070,7 @@ "typeString": "int256" } ], - "id": 7117, + "id": 7638, "isConstant": false, "isLValue": false, "isPure": true, @@ -84082,14 +84082,14 @@ "typeString": "type(uint256)" }, "typeName": { - "id": 7116, + "id": 7637, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "32997:7:21", "typeDescriptions": {} } }, - "id": 7119, + "id": 7640, "isConstant": false, "isLValue": false, "isPure": false, @@ -84112,25 +84112,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7124, + "id": 7645, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 7120, + "id": 7641, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7102, + "referencedDeclaration": 7623, "src": "33015:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 7121, + "id": 7642, "isConstant": false, "isLValue": true, "isPure": false, @@ -84138,7 +84138,7 @@ "memberLocation": "33021:5:21", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10317, + "referencedDeclaration": 10913, "src": "33015:11:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -84149,18 +84149,18 @@ "operator": "+", "rightExpression": { "expression": { - "id": 7122, + "id": 7643, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7102, + "referencedDeclaration": 7623, "src": "33029:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 7123, + "id": 7644, "isConstant": false, "isLValue": true, "isPure": false, @@ -84168,7 +84168,7 @@ "memberLocation": "33035:7:21", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10305, + "referencedDeclaration": 10901, "src": "33029:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -84193,18 +84193,18 @@ "typeString": "bool" } }, - "id": 7130, + "id": 7651, "nodeType": "IfStatement", "src": "32979:102:21", "trueBody": { - "id": 7129, + "id": 7650, "nodeType": "Block", "src": "33044:37:21", "statements": [ { "expression": { "hexValue": "66616c7365", - "id": 7127, + "id": 7648, "isConstant": false, "isLValue": false, "isPure": true, @@ -84218,8 +84218,8 @@ }, "value": "false" }, - "functionReturnParameters": 7112, - "id": 7128, + "functionReturnParameters": 7633, + "id": 7649, "nodeType": "Return", "src": "33058:12:21" } @@ -84228,17 +84228,17 @@ }, { "assignments": [ - 7132 + 7653 ], "declarations": [ { "constant": false, - "id": 7132, + "id": 7653, "mutability": "mutable", "name": "firstConfirmationHeader", "nameLocation": "33104:23:21", "nodeType": "VariableDeclaration", - "scope": 7212, + "scope": 7733, "src": "33091:36:21", "stateVariable": false, "storageLocation": "memory", @@ -84247,7 +84247,7 @@ "typeString": "bytes" }, "typeName": { - "id": 7131, + "id": 7652, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "33091:5:21", @@ -84259,15 +84259,15 @@ "visibility": "internal" } ], - "id": 7137, + "id": 7658, "initialValue": { "arguments": [ { - "id": 7135, + "id": 7656, "name": "height", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7108, + "referencedDeclaration": 7629, "src": "33182:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -84283,18 +84283,18 @@ } ], "expression": { - "id": 7133, + "id": 7654, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4754, + "referencedDeclaration": 5275, "src": "33130:6:21", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, - "id": 7134, + "id": 7655, "isConstant": false, "isLValue": false, "isPure": false, @@ -84302,14 +84302,14 @@ "memberLocation": "33146:35:21", "memberName": "getBtcBlockchainBlockHeaderByHeight", "nodeType": "MemberAccess", - "referencedDeclaration": 3644, + "referencedDeclaration": 4165, "src": "33130:51:21", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bytes_memory_ptr_$", "typeString": "function (uint256) view external returns (bytes memory)" } }, - "id": 7136, + "id": 7657, "isConstant": false, "isLValue": false, "isPure": false, @@ -84336,25 +84336,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7142, + "id": 7663, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 7139, + "id": 7660, "name": "firstConfirmationHeader", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7132, + "referencedDeclaration": 7653, "src": "33207:23:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 7140, + "id": 7661, "isConstant": false, "isLValue": false, "isPure": false, @@ -84372,7 +84372,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 7141, + "id": 7662, "isConstant": false, "isLValue": false, "isPure": true, @@ -84394,7 +84394,7 @@ }, { "hexValue": "496e76616c696420626c6f636b20686569676874", - "id": 7143, + "id": 7664, "isConstant": false, "isLValue": false, "isPure": true, @@ -84420,7 +84420,7 @@ "typeString": "literal_string \"Invalid block height\"" } ], - "id": 7138, + "id": 7659, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -84434,7 +84434,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 7144, + "id": 7665, "isConstant": false, "isLValue": false, "isPure": false, @@ -84450,23 +84450,23 @@ "typeString": "tuple()" } }, - "id": 7145, + "id": 7666, "nodeType": "ExpressionStatement", "src": "33199:67:21" }, { "assignments": [ - 7147 + 7668 ], "declarations": [ { "constant": false, - "id": 7147, + "id": 7668, "mutability": "mutable", "name": "firstConfirmationTimestamp", "nameLocation": "33285:26:21", "nodeType": "VariableDeclaration", - "scope": 7212, + "scope": 7733, "src": "33277:34:21", "stateVariable": false, "storageLocation": "default", @@ -84475,7 +84475,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7146, + "id": 7667, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "33277:7:21", @@ -84487,15 +84487,15 @@ "visibility": "internal" } ], - "id": 7151, + "id": 7672, "initialValue": { "arguments": [ { - "id": 7149, + "id": 7670, "name": "firstConfirmationHeader", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7132, + "referencedDeclaration": 7653, "src": "33348:23:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -84510,18 +84510,18 @@ "typeString": "bytes memory" } ], - "id": 7148, + "id": 7669, "name": "getBtcBlockTimestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7301, + "referencedDeclaration": 7822, "src": "33314:20:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_uint256_$", "typeString": "function (bytes memory) pure returns (uint256)" } }, - "id": 7150, + "id": 7671, "isConstant": false, "isLValue": false, "isPure": false, @@ -84542,17 +84542,17 @@ }, { "assignments": [ - 7153 + 7674 ], "declarations": [ { "constant": false, - "id": 7153, + "id": 7674, "mutability": "mutable", "name": "timeLimit", "nameLocation": "33526:9:21", "nodeType": "VariableDeclaration", - "scope": 7212, + "scope": 7733, "src": "33521:14:21", "stateVariable": false, "storageLocation": "default", @@ -84561,7 +84561,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7152, + "id": 7673, "name": "uint", "nodeType": "ElementaryTypeName", "src": "33521:4:21", @@ -84573,31 +84573,31 @@ "visibility": "internal" } ], - "id": 7159, + "id": 7680, "initialValue": { "commonType": { "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 7158, + "id": 7679, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 7154, + "id": 7675, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7102, + "referencedDeclaration": 7623, "src": "33538:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 7155, + "id": 7676, "isConstant": false, "isLValue": true, "isPure": false, @@ -84605,7 +84605,7 @@ "memberLocation": "33544:18:21", "memberName": "agreementTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 10319, + "referencedDeclaration": 10915, "src": "33538:24:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -84616,18 +84616,18 @@ "operator": "+", "rightExpression": { "expression": { - "id": 7156, + "id": 7677, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7102, + "referencedDeclaration": 7623, "src": "33565:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 7157, + "id": 7678, "isConstant": false, "isLValue": true, "isPure": false, @@ -84635,7 +84635,7 @@ "memberLocation": "33571:14:21", "memberName": "timeForDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 10321, + "referencedDeclaration": 10917, "src": "33565:20:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -84657,17 +84657,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7162, + "id": 7683, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 7160, + "id": 7681, "name": "firstConfirmationTimestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7147, + "referencedDeclaration": 7668, "src": "33599:26:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -84677,11 +84677,11 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 7161, + "id": 7682, "name": "timeLimit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7153, + "referencedDeclaration": 7674, "src": "33628:9:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -84694,18 +84694,18 @@ "typeString": "bool" } }, - "id": 7166, + "id": 7687, "nodeType": "IfStatement", "src": "33595:81:21", "trueBody": { - "id": 7165, + "id": 7686, "nodeType": "Block", "src": "33639:37:21", "statements": [ { "expression": { "hexValue": "66616c7365", - "id": 7163, + "id": 7684, "isConstant": false, "isLValue": false, "isPure": true, @@ -84719,8 +84719,8 @@ }, "value": "false" }, - "functionReturnParameters": 7112, - "id": 7164, + "functionReturnParameters": 7633, + "id": 7685, "nodeType": "Return", "src": "33653:12:21" } @@ -84733,17 +84733,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7169, + "id": 7690, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 7167, + "id": 7688, "name": "callTimestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7106, + "referencedDeclaration": 7627, "src": "33731:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -84754,7 +84754,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 7168, + "id": 7689, "isConstant": false, "isLValue": false, "isPure": true, @@ -84774,18 +84774,18 @@ "typeString": "bool" } }, - "id": 7173, + "id": 7694, "nodeType": "IfStatement", "src": "33727:60:21", "trueBody": { - "id": 7172, + "id": 7693, "nodeType": "Block", "src": "33751:36:21", "statements": [ { "expression": { "hexValue": "74727565", - "id": 7170, + "id": 7691, "isConstant": false, "isLValue": false, "isPure": true, @@ -84799,8 +84799,8 @@ }, "value": "true" }, - "functionReturnParameters": 7112, - "id": 7171, + "functionReturnParameters": 7633, + "id": 7692, "nodeType": "Return", "src": "33765:11:21" } @@ -84809,17 +84809,17 @@ }, { "assignments": [ - 7175 + 7696 ], "declarations": [ { "constant": false, - "id": 7175, + "id": 7696, "mutability": "mutable", "name": "nConfirmationsHeader", "nameLocation": "33810:20:21", "nodeType": "VariableDeclaration", - "scope": 7212, + "scope": 7733, "src": "33797:33:21", "stateVariable": false, "storageLocation": "memory", @@ -84828,7 +84828,7 @@ "typeString": "bytes" }, "typeName": { - "id": 7174, + "id": 7695, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "33797:5:21", @@ -84840,7 +84840,7 @@ "visibility": "internal" } ], - "id": 7185, + "id": 7706, "initialValue": { "arguments": [ { @@ -84848,7 +84848,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7183, + "id": 7704, "isConstant": false, "isLValue": false, "isPure": false, @@ -84858,17 +84858,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7181, + "id": 7702, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 7178, + "id": 7699, "name": "height", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7108, + "referencedDeclaration": 7629, "src": "33898:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -84879,18 +84879,18 @@ "operator": "+", "rightExpression": { "expression": { - "id": 7179, + "id": 7700, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7102, + "referencedDeclaration": 7623, "src": "33907:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 7180, + "id": 7701, "isConstant": false, "isLValue": true, "isPure": false, @@ -84898,7 +84898,7 @@ "memberLocation": "33913:20:21", "memberName": "depositConfirmations", "nodeType": "MemberAccess", - "referencedDeclaration": 10325, + "referencedDeclaration": 10921, "src": "33907:26:21", "typeDescriptions": { "typeIdentifier": "t_uint16", @@ -84915,7 +84915,7 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 7182, + "id": 7703, "isConstant": false, "isLValue": false, "isPure": true, @@ -84944,18 +84944,18 @@ } ], "expression": { - "id": 7176, + "id": 7697, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4754, + "referencedDeclaration": 5275, "src": "33833:6:21", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, - "id": 7177, + "id": 7698, "isConstant": false, "isLValue": false, "isPure": false, @@ -84963,14 +84963,14 @@ "memberLocation": "33849:35:21", "memberName": "getBtcBlockchainBlockHeaderByHeight", "nodeType": "MemberAccess", - "referencedDeclaration": 3644, + "referencedDeclaration": 4165, "src": "33833:51:21", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bytes_memory_ptr_$", "typeString": "function (uint256) view external returns (bytes memory)" } }, - "id": 7184, + "id": 7705, "isConstant": false, "isLValue": false, "isPure": false, @@ -84997,25 +84997,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7190, + "id": 7711, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 7187, + "id": 7708, "name": "nConfirmationsHeader", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7175, + "referencedDeclaration": 7696, "src": "33965:20:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 7188, + "id": 7709, "isConstant": false, "isLValue": false, "isPure": false, @@ -85033,7 +85033,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 7189, + "id": 7710, "isConstant": false, "isLValue": false, "isPure": true, @@ -85055,7 +85055,7 @@ }, { "hexValue": "4c4243303538", - "id": 7191, + "id": 7712, "isConstant": false, "isLValue": false, "isPure": true, @@ -85081,7 +85081,7 @@ "typeString": "literal_string \"LBC058\"" } ], - "id": 7186, + "id": 7707, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -85095,7 +85095,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 7192, + "id": 7713, "isConstant": false, "isLValue": false, "isPure": false, @@ -85111,23 +85111,23 @@ "typeString": "tuple()" } }, - "id": 7193, + "id": 7714, "nodeType": "ExpressionStatement", "src": "33957:50:21" }, { "assignments": [ - 7195 + 7716 ], "declarations": [ { "constant": false, - "id": 7195, + "id": 7716, "mutability": "mutable", "name": "nConfirmationsTimestamp", "nameLocation": "34026:23:21", "nodeType": "VariableDeclaration", - "scope": 7212, + "scope": 7733, "src": "34018:31:21", "stateVariable": false, "storageLocation": "default", @@ -85136,7 +85136,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7194, + "id": 7715, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "34018:7:21", @@ -85148,15 +85148,15 @@ "visibility": "internal" } ], - "id": 7199, + "id": 7720, "initialValue": { "arguments": [ { - "id": 7197, + "id": 7718, "name": "nConfirmationsHeader", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7175, + "referencedDeclaration": 7696, "src": "34086:20:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -85171,18 +85171,18 @@ "typeString": "bytes memory" } ], - "id": 7196, + "id": 7717, "name": "getBtcBlockTimestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7301, + "referencedDeclaration": 7822, "src": "34052:20:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_uint256_$", "typeString": "function (bytes memory) pure returns (uint256)" } }, - "id": 7198, + "id": 7719, "isConstant": false, "isLValue": false, "isPure": false, @@ -85207,17 +85207,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7205, + "id": 7726, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 7200, + "id": 7721, "name": "callTimestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7106, + "referencedDeclaration": 7627, "src": "34184:13:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -85231,17 +85231,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7204, + "id": 7725, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 7201, + "id": 7722, "name": "nConfirmationsTimestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7195, + "referencedDeclaration": 7716, "src": "34200:23:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -85252,18 +85252,18 @@ "operator": "+", "rightExpression": { "expression": { - "id": 7202, + "id": 7723, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7102, + "referencedDeclaration": 7623, "src": "34226:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 7203, + "id": 7724, "isConstant": false, "isLValue": true, "isPure": false, @@ -85271,7 +85271,7 @@ "memberLocation": "34232:8:21", "memberName": "callTime", "nodeType": "MemberAccess", - "referencedDeclaration": 10323, + "referencedDeclaration": 10919, "src": "34226:14:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -85290,18 +85290,18 @@ "typeString": "bool" } }, - "id": 7209, + "id": 7730, "nodeType": "IfStatement", "src": "34180:98:21", "trueBody": { - "id": 7208, + "id": 7729, "nodeType": "Block", "src": "34242:36:21", "statements": [ { "expression": { "hexValue": "74727565", - "id": 7206, + "id": 7727, "isConstant": false, "isLValue": false, "isPure": true, @@ -85315,8 +85315,8 @@ }, "value": "true" }, - "functionReturnParameters": 7112, - "id": 7207, + "functionReturnParameters": 7633, + "id": 7728, "nodeType": "Return", "src": "34256:11:21" } @@ -85326,7 +85326,7 @@ { "expression": { "hexValue": "66616c7365", - "id": 7210, + "id": 7731, "isConstant": false, "isLValue": false, "isPure": true, @@ -85340,20 +85340,20 @@ }, "value": "false" }, - "functionReturnParameters": 7112, - "id": 7211, + "functionReturnParameters": 7633, + "id": 7732, "nodeType": "Return", "src": "34287:12:21" } ] }, "documentation": { - "id": 7099, + "id": 7620, "nodeType": "StructuredDocumentation", "src": "32314:411:21", "text": "@dev Checks if a liquidity provider should be penalized\n@param quote The quote of the service\n@param amount The transferred amount or an error code\n@param callTimestamp The time that the liquidity provider called callForUser\n@param height The block height where the peg-in transaction is included\n@return Boolean indicating whether the penalty applies" }, - "id": 7213, + "id": 7734, "implemented": true, "kind": "function", "modifiers": [], @@ -85361,42 +85361,42 @@ "nameLocation": "32739:16:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 7109, + "id": 7630, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7102, + "id": 7623, "mutability": "mutable", "name": "quote", "nameLocation": "32790:5:21", "nodeType": "VariableDeclaration", - "scope": 7213, + "scope": 7734, "src": "32765:30:21", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote" }, "typeName": { - "id": 7101, + "id": 7622, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 7100, + "id": 7621, "name": "Quotes.PeginQuote", "nameLocations": [ "32765:6:21", "32772:10:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "32765:17:21" }, - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "32765:17:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_storage_ptr", "typeString": "struct Quotes.PeginQuote" } }, @@ -85404,12 +85404,12 @@ }, { "constant": false, - "id": 7104, + "id": 7625, "mutability": "mutable", "name": "amount", "nameLocation": "32812:6:21", "nodeType": "VariableDeclaration", - "scope": 7213, + "scope": 7734, "src": "32805:13:21", "stateVariable": false, "storageLocation": "default", @@ -85418,7 +85418,7 @@ "typeString": "int256" }, "typeName": { - "id": 7103, + "id": 7624, "name": "int256", "nodeType": "ElementaryTypeName", "src": "32805:6:21", @@ -85431,12 +85431,12 @@ }, { "constant": false, - "id": 7106, + "id": 7627, "mutability": "mutable", "name": "callTimestamp", "nameLocation": "32836:13:21", "nodeType": "VariableDeclaration", - "scope": 7213, + "scope": 7734, "src": "32828:21:21", "stateVariable": false, "storageLocation": "default", @@ -85445,7 +85445,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7105, + "id": 7626, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "32828:7:21", @@ -85458,12 +85458,12 @@ }, { "constant": false, - "id": 7108, + "id": 7629, "mutability": "mutable", "name": "height", "nameLocation": "32867:6:21", "nodeType": "VariableDeclaration", - "scope": 7213, + "scope": 7734, "src": "32859:14:21", "stateVariable": false, "storageLocation": "default", @@ -85472,7 +85472,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7107, + "id": 7628, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "32859:7:21", @@ -85487,17 +85487,17 @@ "src": "32755:124:21" }, "returnParameters": { - "id": 7112, + "id": 7633, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7111, + "id": 7632, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7213, + "scope": 7734, "src": "32902:4:21", "stateVariable": false, "storageLocation": "default", @@ -85506,7 +85506,7 @@ "typeString": "bool" }, "typeName": { - "id": 7110, + "id": 7631, "name": "bool", "nodeType": "ElementaryTypeName", "src": "32902:4:21", @@ -85520,7 +85520,7 @@ ], "src": "32901:6:21" }, - "scope": 7377, + "scope": 7898, "src": "32730:1576:21", "stateMutability": "view", "virtual": false, @@ -85528,23 +85528,23 @@ }, { "body": { - "id": 7278, + "id": 7799, "nodeType": "Block", "src": "34473:692:21", "statements": [ { "assignments": [ - 7226 + 7747 ], "declarations": [ { "constant": false, - "id": 7226, + "id": 7747, "mutability": "mutable", "name": "firstConfirmationHeader", "nameLocation": "34496:23:21", "nodeType": "VariableDeclaration", - "scope": 7278, + "scope": 7799, "src": "34483:36:21", "stateVariable": false, "storageLocation": "memory", @@ -85553,7 +85553,7 @@ "typeString": "bytes" }, "typeName": { - "id": 7225, + "id": 7746, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "34483:5:21", @@ -85565,15 +85565,15 @@ "visibility": "internal" } ], - "id": 7231, + "id": 7752, "initialValue": { "arguments": [ { - "id": 7229, + "id": 7750, "name": "blockHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7220, + "referencedDeclaration": 7741, "src": "34563:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -85589,18 +85589,18 @@ } ], "expression": { - "id": 7227, + "id": 7748, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4754, + "referencedDeclaration": 5275, "src": "34522:6:21", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, - "id": 7228, + "id": 7749, "isConstant": false, "isLValue": false, "isPure": false, @@ -85608,14 +85608,14 @@ "memberLocation": "34529:33:21", "memberName": "getBtcBlockchainBlockHeaderByHash", "nodeType": "MemberAccess", - "referencedDeclaration": 3637, + "referencedDeclaration": 4158, "src": "34522:40:21", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_bytes_memory_ptr_$", "typeString": "function (bytes32) view external returns (bytes memory)" } }, - "id": 7230, + "id": 7751, "isConstant": false, "isLValue": false, "isPure": false, @@ -85642,25 +85642,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7236, + "id": 7757, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 7233, + "id": 7754, "name": "firstConfirmationHeader", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7226, + "referencedDeclaration": 7747, "src": "34591:23:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 7234, + "id": 7755, "isConstant": false, "isLValue": false, "isPure": false, @@ -85678,7 +85678,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 7235, + "id": 7756, "isConstant": false, "isLValue": false, "isPure": true, @@ -85700,7 +85700,7 @@ }, { "hexValue": "4c4243303539", - "id": 7237, + "id": 7758, "isConstant": false, "isLValue": false, "isPure": true, @@ -85726,7 +85726,7 @@ "typeString": "literal_string \"LBC059\"" } ], - "id": 7232, + "id": 7753, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -85740,7 +85740,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 7238, + "id": 7759, "isConstant": false, "isLValue": false, "isPure": false, @@ -85756,23 +85756,23 @@ "typeString": "tuple()" } }, - "id": 7239, + "id": 7760, "nodeType": "ExpressionStatement", "src": "34583:53:21" }, { "assignments": [ - 7241 + 7762 ], "declarations": [ { "constant": false, - "id": 7241, + "id": 7762, "mutability": "mutable", "name": "firstConfirmationTimestamp", "nameLocation": "34655:26:21", "nodeType": "VariableDeclaration", - "scope": 7278, + "scope": 7799, "src": "34647:34:21", "stateVariable": false, "storageLocation": "default", @@ -85781,7 +85781,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7240, + "id": 7761, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "34647:7:21", @@ -85793,15 +85793,15 @@ "visibility": "internal" } ], - "id": 7245, + "id": 7766, "initialValue": { "arguments": [ { - "id": 7243, + "id": 7764, "name": "firstConfirmationHeader", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7226, + "referencedDeclaration": 7747, "src": "34705:23:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -85816,18 +85816,18 @@ "typeString": "bytes memory" } ], - "id": 7242, + "id": 7763, "name": "getBtcBlockTimestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7301, + "referencedDeclaration": 7822, "src": "34684:20:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_uint256_$", "typeString": "function (bytes memory) pure returns (uint256)" } }, - "id": 7244, + "id": 7765, "isConstant": false, "isLValue": false, "isPure": false, @@ -85852,17 +85852,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7256, + "id": 7777, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 7246, + "id": 7767, "name": "firstConfirmationTimestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7241, + "referencedDeclaration": 7762, "src": "34801:26:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -85876,7 +85876,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7255, + "id": 7776, "isConstant": false, "isLValue": false, "isPure": false, @@ -85886,7 +85886,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7253, + "id": 7774, "isConstant": false, "isLValue": false, "isPure": false, @@ -85894,24 +85894,24 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 7247, + "id": 7768, "name": "pegoutRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4810, + "referencedDeclaration": 5331, "src": "34830:14:21", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$4600_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord storage ref)" } }, - "id": 7249, + "id": 7770, "indexExpression": { - "id": 7248, + "id": 7769, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7218, + "referencedDeclaration": 7739, "src": "34845:9:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -85925,11 +85925,11 @@ "nodeType": "IndexAccess", "src": "34830:25:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$4600_storage", + "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage", "typeString": "struct LiquidityBridgeContract.PegoutRecord storage ref" } }, - "id": 7250, + "id": 7771, "isConstant": false, "isLValue": true, "isPure": false, @@ -85937,7 +85937,7 @@ "memberLocation": "34856:16:21", "memberName": "depositTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 4597, + "referencedDeclaration": 5118, "src": "34830:42:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -85948,18 +85948,18 @@ "operator": "+", "rightExpression": { "expression": { - "id": 7251, + "id": 7772, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7216, + "referencedDeclaration": 7737, "src": "34887:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 7252, + "id": 7773, "isConstant": false, "isLValue": true, "isPure": false, @@ -85967,7 +85967,7 @@ "memberLocation": "34893:12:21", "memberName": "transferTime", "nodeType": "MemberAccess", - "referencedDeclaration": 10358, + "referencedDeclaration": 10954, "src": "34887:18:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -85983,11 +85983,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 7254, + "id": 7775, "name": "btcBlockTime", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 4794, + "referencedDeclaration": 5315, "src": "34908:12:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -86006,18 +86006,18 @@ "typeString": "bool" } }, - "id": 7260, + "id": 7781, "nodeType": "IfStatement", "src": "34797:161:21", "trueBody": { - "id": 7259, + "id": 7780, "nodeType": "Block", "src": "34922:36:21", "statements": [ { "expression": { "hexValue": "74727565", - "id": 7257, + "id": 7778, "isConstant": false, "isLValue": false, "isPure": true, @@ -86031,8 +86031,8 @@ }, "value": "true" }, - "functionReturnParameters": 7224, - "id": 7258, + "functionReturnParameters": 7745, + "id": 7779, "nodeType": "Return", "src": "34936:11:21" } @@ -86045,7 +86045,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 7271, + "id": 7792, "isConstant": false, "isLValue": false, "isPure": false, @@ -86055,14 +86055,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7265, + "id": 7786, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 7261, + "id": 7782, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -86073,7 +86073,7 @@ "typeString": "block" } }, - "id": 7262, + "id": 7783, "isConstant": false, "isLValue": false, "isPure": false, @@ -86091,18 +86091,18 @@ "operator": ">", "rightExpression": { "expression": { - "id": 7263, + "id": 7784, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7216, + "referencedDeclaration": 7737, "src": "35046:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 7264, + "id": 7785, "isConstant": false, "isLValue": true, "isPure": false, @@ -86110,7 +86110,7 @@ "memberLocation": "35052:10:21", "memberName": "expireDate", "nodeType": "MemberAccess", - "referencedDeclaration": 10360, + "referencedDeclaration": 10956, "src": "35046:16:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -86130,14 +86130,14 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7270, + "id": 7791, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 7266, + "id": 7787, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -86148,7 +86148,7 @@ "typeString": "block" } }, - "id": 7267, + "id": 7788, "isConstant": false, "isLValue": false, "isPure": false, @@ -86166,18 +86166,18 @@ "operator": ">", "rightExpression": { "expression": { - "id": 7268, + "id": 7789, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7216, + "referencedDeclaration": 7737, "src": "35081:5:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 7269, + "id": 7790, "isConstant": false, "isLValue": true, "isPure": false, @@ -86185,7 +86185,7 @@ "memberLocation": "35087:11:21", "memberName": "expireBlock", "nodeType": "MemberAccess", - "referencedDeclaration": 10362, + "referencedDeclaration": 10958, "src": "35081:17:21", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -86204,18 +86204,18 @@ "typeString": "bool" } }, - "id": 7275, + "id": 7796, "nodeType": "IfStatement", "src": "35024:112:21", "trueBody": { - "id": 7274, + "id": 7795, "nodeType": "Block", "src": "35100:36:21", "statements": [ { "expression": { "hexValue": "74727565", - "id": 7272, + "id": 7793, "isConstant": false, "isLValue": false, "isPure": true, @@ -86229,8 +86229,8 @@ }, "value": "true" }, - "functionReturnParameters": 7224, - "id": 7273, + "functionReturnParameters": 7745, + "id": 7794, "nodeType": "Return", "src": "35114:11:21" } @@ -86240,7 +86240,7 @@ { "expression": { "hexValue": "66616c7365", - "id": 7276, + "id": 7797, "isConstant": false, "isLValue": false, "isPure": true, @@ -86254,14 +86254,14 @@ }, "value": "false" }, - "functionReturnParameters": 7224, - "id": 7277, + "functionReturnParameters": 7745, + "id": 7798, "nodeType": "Return", "src": "35146:12:21" } ] }, - "id": 7279, + "id": 7800, "implemented": true, "kind": "function", "modifiers": [], @@ -86269,42 +86269,42 @@ "nameLocation": "34321:22:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 7221, + "id": 7742, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7216, + "id": 7737, "mutability": "mutable", "name": "quote", "nameLocation": "34379:5:21", "nodeType": "VariableDeclaration", - "scope": 7279, + "scope": 7800, "src": "34353:31:21", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote" }, "typeName": { - "id": 7215, + "id": 7736, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 7214, + "id": 7735, "name": "Quotes.PegOutQuote", "nameLocations": [ "34353:6:21", "34360:11:21" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "34353:18:21" }, - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "34353:18:21", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote" } }, @@ -86312,12 +86312,12 @@ }, { "constant": false, - "id": 7218, + "id": 7739, "mutability": "mutable", "name": "quoteHash", "nameLocation": "34402:9:21", "nodeType": "VariableDeclaration", - "scope": 7279, + "scope": 7800, "src": "34394:17:21", "stateVariable": false, "storageLocation": "default", @@ -86326,7 +86326,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 7217, + "id": 7738, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "34394:7:21", @@ -86339,12 +86339,12 @@ }, { "constant": false, - "id": 7220, + "id": 7741, "mutability": "mutable", "name": "blockHash", "nameLocation": "34429:9:21", "nodeType": "VariableDeclaration", - "scope": 7279, + "scope": 7800, "src": "34421:17:21", "stateVariable": false, "storageLocation": "default", @@ -86353,7 +86353,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 7219, + "id": 7740, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "34421:7:21", @@ -86368,17 +86368,17 @@ "src": "34343:101:21" }, "returnParameters": { - "id": 7224, + "id": 7745, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7223, + "id": 7744, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7279, + "scope": 7800, "src": "34467:4:21", "stateVariable": false, "storageLocation": "default", @@ -86387,7 +86387,7 @@ "typeString": "bool" }, "typeName": { - "id": 7222, + "id": 7743, "name": "bool", "nodeType": "ElementaryTypeName", "src": "34467:4:21", @@ -86401,7 +86401,7 @@ ], "src": "34466:6:21" }, - "scope": 7377, + "scope": 7898, "src": "34312:853:21", "stateMutability": "view", "virtual": false, @@ -86409,7 +86409,7 @@ }, { "body": { - "id": 7300, + "id": 7821, "nodeType": "Block", "src": "35429:207:21", "statements": [ @@ -86421,25 +86421,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7291, + "id": 7812, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 7288, + "id": 7809, "name": "header", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7282, + "referencedDeclaration": 7803, "src": "35551:6:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 7289, + "id": 7810, "isConstant": false, "isLValue": false, "isPure": false, @@ -86457,7 +86457,7 @@ "operator": "==", "rightExpression": { "hexValue": "3830", - "id": 7290, + "id": 7811, "isConstant": false, "isLValue": false, "isPure": true, @@ -86479,7 +86479,7 @@ }, { "hexValue": "4c4243303631", - "id": 7292, + "id": 7813, "isConstant": false, "isLValue": false, "isPure": true, @@ -86505,7 +86505,7 @@ "typeString": "literal_string \"LBC061\"" } ], - "id": 7287, + "id": 7808, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -86519,7 +86519,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 7293, + "id": 7814, "isConstant": false, "isLValue": false, "isPure": false, @@ -86535,7 +86535,7 @@ "typeString": "tuple()" } }, - "id": 7294, + "id": 7815, "nodeType": "ExpressionStatement", "src": "35543:38:21" }, @@ -86543,11 +86543,11 @@ "expression": { "arguments": [ { - "id": 7296, + "id": 7817, "name": "header", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7282, + "referencedDeclaration": 7803, "src": "35618:6:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -86556,7 +86556,7 @@ }, { "hexValue": "3638", - "id": 7297, + "id": 7818, "isConstant": false, "isLValue": false, "isPure": true, @@ -86582,18 +86582,18 @@ "typeString": "int_const 68" } ], - "id": 7295, + "id": 7816, "name": "sliceUint32FromLSB", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7376, + "referencedDeclaration": 7897, "src": "35599:18:21", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint32_$", "typeString": "function (bytes memory,uint256) pure returns (uint32)" } }, - "id": 7298, + "id": 7819, "isConstant": false, "isLValue": false, "isPure": false, @@ -86609,21 +86609,21 @@ "typeString": "uint32" } }, - "functionReturnParameters": 7286, - "id": 7299, + "functionReturnParameters": 7807, + "id": 7820, "nodeType": "Return", "src": "35592:37:21" } ] }, "documentation": { - "id": 7280, + "id": 7801, "nodeType": "StructuredDocumentation", "src": "35171:158:21", "text": "@dev Gets the timestamp of a Bitcoin block header\n@param header The block header\n@return The timestamp of the block header" }, "functionSelector": "a0cd70fc", - "id": 7301, + "id": 7822, "implemented": true, "kind": "function", "modifiers": [], @@ -86631,17 +86631,17 @@ "nameLocation": "35343:20:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 7283, + "id": 7804, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7282, + "id": 7803, "mutability": "mutable", "name": "header", "nameLocation": "35386:6:21", "nodeType": "VariableDeclaration", - "scope": 7301, + "scope": 7822, "src": "35373:19:21", "stateVariable": false, "storageLocation": "memory", @@ -86650,7 +86650,7 @@ "typeString": "bytes" }, "typeName": { - "id": 7281, + "id": 7802, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "35373:5:21", @@ -86665,17 +86665,17 @@ "src": "35363:35:21" }, "returnParameters": { - "id": 7286, + "id": 7807, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7285, + "id": 7806, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7301, + "scope": 7822, "src": "35420:7:21", "stateVariable": false, "storageLocation": "default", @@ -86684,7 +86684,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7284, + "id": 7805, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "35420:7:21", @@ -86698,7 +86698,7 @@ ], "src": "35419:9:21" }, - "scope": 7377, + "scope": 7898, "src": "35334:302:21", "stateMutability": "pure", "virtual": false, @@ -86706,7 +86706,7 @@ }, { "body": { - "id": 7375, + "id": 7896, "nodeType": "Block", "src": "35812:253:21", "statements": [ @@ -86718,25 +86718,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7316, + "id": 7837, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 7311, + "id": 7832, "name": "bs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7303, + "referencedDeclaration": 7824, "src": "35830:2:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 7312, + "id": 7833, "isConstant": false, "isLValue": false, "isPure": false, @@ -86757,17 +86757,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7315, + "id": 7836, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 7313, + "id": 7834, "name": "offset", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7305, + "referencedDeclaration": 7826, "src": "35843:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -86778,7 +86778,7 @@ "operator": "+", "rightExpression": { "hexValue": "34", - "id": 7314, + "id": 7835, "isConstant": false, "isLValue": false, "isPure": true, @@ -86806,7 +86806,7 @@ }, { "hexValue": "4c4243303632", - "id": 7317, + "id": 7838, "isConstant": false, "isLValue": false, "isPure": true, @@ -86832,7 +86832,7 @@ "typeString": "literal_string \"LBC062\"" } ], - "id": 7310, + "id": 7831, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -86846,7 +86846,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 7318, + "id": 7839, "isConstant": false, "isLValue": false, "isPure": false, @@ -86862,7 +86862,7 @@ "typeString": "tuple()" } }, - "id": 7319, + "id": 7840, "nodeType": "ExpressionStatement", "src": "35822:42:21" }, @@ -86872,7 +86872,7 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 7373, + "id": 7894, "isConstant": false, "isLValue": false, "isPure": false, @@ -86882,7 +86882,7 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 7358, + "id": 7879, "isConstant": false, "isLValue": false, "isPure": false, @@ -86892,7 +86892,7 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 7343, + "id": 7864, "isConstant": false, "isLValue": false, "isPure": false, @@ -86903,24 +86903,24 @@ "arguments": [ { "baseExpression": { - "id": 7324, + "id": 7845, "name": "bs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7303, + "referencedDeclaration": 7824, "src": "35903:2:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 7326, + "id": 7847, "indexExpression": { - "id": 7325, + "id": 7846, "name": "offset", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7305, + "referencedDeclaration": 7826, "src": "35906:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -86946,7 +86946,7 @@ "typeString": "bytes1" } ], - "id": 7323, + "id": 7844, "isConstant": false, "isLValue": false, "isPure": true, @@ -86958,14 +86958,14 @@ "typeString": "type(uint8)" }, "typeName": { - "id": 7322, + "id": 7843, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "35897:5:21", "typeDescriptions": {} } }, - "id": 7327, + "id": 7848, "isConstant": false, "isLValue": false, "isPure": false, @@ -86989,7 +86989,7 @@ "typeString": "uint8" } ], - "id": 7321, + "id": 7842, "isConstant": false, "isLValue": false, "isPure": true, @@ -87001,14 +87001,14 @@ "typeString": "type(uint32)" }, "typeName": { - "id": 7320, + "id": 7841, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "35890:6:21", "typeDescriptions": {} } }, - "id": 7328, + "id": 7849, "isConstant": false, "isLValue": false, "isPure": false, @@ -87033,7 +87033,7 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 7341, + "id": 7862, "isConstant": false, "isLValue": false, "isPure": false, @@ -87044,34 +87044,34 @@ "arguments": [ { "baseExpression": { - "id": 7333, + "id": 7854, "name": "bs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7303, + "referencedDeclaration": 7824, "src": "35940:2:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 7337, + "id": 7858, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7336, + "id": 7857, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 7334, + "id": 7855, "name": "offset", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7305, + "referencedDeclaration": 7826, "src": "35943:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -87082,7 +87082,7 @@ "operator": "+", "rightExpression": { "hexValue": "31", - "id": 7335, + "id": 7856, "isConstant": false, "isLValue": false, "isPure": true, @@ -87121,7 +87121,7 @@ "typeString": "bytes1" } ], - "id": 7332, + "id": 7853, "isConstant": false, "isLValue": false, "isPure": true, @@ -87133,14 +87133,14 @@ "typeString": "type(uint8)" }, "typeName": { - "id": 7331, + "id": 7852, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "35934:5:21", "typeDescriptions": {} } }, - "id": 7338, + "id": 7859, "isConstant": false, "isLValue": false, "isPure": false, @@ -87164,7 +87164,7 @@ "typeString": "uint8" } ], - "id": 7330, + "id": 7851, "isConstant": false, "isLValue": false, "isPure": true, @@ -87176,14 +87176,14 @@ "typeString": "type(uint32)" }, "typeName": { - "id": 7329, + "id": 7850, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "35927:6:21", "typeDescriptions": {} } }, - "id": 7339, + "id": 7860, "isConstant": false, "isLValue": false, "isPure": false, @@ -87203,7 +87203,7 @@ "operator": "<<", "rightExpression": { "hexValue": "38", - "id": 7340, + "id": 7861, "isConstant": false, "isLValue": false, "isPure": true, @@ -87224,7 +87224,7 @@ } } ], - "id": 7342, + "id": 7863, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -87252,7 +87252,7 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 7356, + "id": 7877, "isConstant": false, "isLValue": false, "isPure": false, @@ -87263,34 +87263,34 @@ "arguments": [ { "baseExpression": { - "id": 7348, + "id": 7869, "name": "bs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7303, + "referencedDeclaration": 7824, "src": "35987:2:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 7352, + "id": 7873, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7351, + "id": 7872, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 7349, + "id": 7870, "name": "offset", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7305, + "referencedDeclaration": 7826, "src": "35990:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -87301,7 +87301,7 @@ "operator": "+", "rightExpression": { "hexValue": "32", - "id": 7350, + "id": 7871, "isConstant": false, "isLValue": false, "isPure": true, @@ -87340,7 +87340,7 @@ "typeString": "bytes1" } ], - "id": 7347, + "id": 7868, "isConstant": false, "isLValue": false, "isPure": true, @@ -87352,14 +87352,14 @@ "typeString": "type(uint8)" }, "typeName": { - "id": 7346, + "id": 7867, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "35981:5:21", "typeDescriptions": {} } }, - "id": 7353, + "id": 7874, "isConstant": false, "isLValue": false, "isPure": false, @@ -87383,7 +87383,7 @@ "typeString": "uint8" } ], - "id": 7345, + "id": 7866, "isConstant": false, "isLValue": false, "isPure": true, @@ -87395,14 +87395,14 @@ "typeString": "type(uint32)" }, "typeName": { - "id": 7344, + "id": 7865, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "35974:6:21", "typeDescriptions": {} } }, - "id": 7354, + "id": 7875, "isConstant": false, "isLValue": false, "isPure": false, @@ -87422,7 +87422,7 @@ "operator": "<<", "rightExpression": { "hexValue": "3136", - "id": 7355, + "id": 7876, "isConstant": false, "isLValue": false, "isPure": true, @@ -87443,7 +87443,7 @@ } } ], - "id": 7357, + "id": 7878, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -87471,7 +87471,7 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 7371, + "id": 7892, "isConstant": false, "isLValue": false, "isPure": false, @@ -87482,34 +87482,34 @@ "arguments": [ { "baseExpression": { - "id": 7363, + "id": 7884, "name": "bs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7303, + "referencedDeclaration": 7824, "src": "36035:2:21", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 7367, + "id": 7888, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7366, + "id": 7887, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 7364, + "id": 7885, "name": "offset", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7305, + "referencedDeclaration": 7826, "src": "36038:6:21", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -87520,7 +87520,7 @@ "operator": "+", "rightExpression": { "hexValue": "33", - "id": 7365, + "id": 7886, "isConstant": false, "isLValue": false, "isPure": true, @@ -87559,7 +87559,7 @@ "typeString": "bytes1" } ], - "id": 7362, + "id": 7883, "isConstant": false, "isLValue": false, "isPure": true, @@ -87571,14 +87571,14 @@ "typeString": "type(uint8)" }, "typeName": { - "id": 7361, + "id": 7882, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "36029:5:21", "typeDescriptions": {} } }, - "id": 7368, + "id": 7889, "isConstant": false, "isLValue": false, "isPure": false, @@ -87602,7 +87602,7 @@ "typeString": "uint8" } ], - "id": 7360, + "id": 7881, "isConstant": false, "isLValue": false, "isPure": true, @@ -87614,14 +87614,14 @@ "typeString": "type(uint32)" }, "typeName": { - "id": 7359, + "id": 7880, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "36022:6:21", "typeDescriptions": {} } }, - "id": 7369, + "id": 7890, "isConstant": false, "isLValue": false, "isPure": false, @@ -87641,7 +87641,7 @@ "operator": "<<", "rightExpression": { "hexValue": "3234", - "id": 7370, + "id": 7891, "isConstant": false, "isLValue": false, "isPure": true, @@ -87662,7 +87662,7 @@ } } ], - "id": 7372, + "id": 7893, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -87681,14 +87681,14 @@ "typeString": "uint32" } }, - "functionReturnParameters": 7309, - "id": 7374, + "functionReturnParameters": 7830, + "id": 7895, "nodeType": "Return", "src": "35875:183:21" } ] }, - "id": 7376, + "id": 7897, "implemented": true, "kind": "function", "modifiers": [], @@ -87696,17 +87696,17 @@ "nameLocation": "35710:18:21", "nodeType": "FunctionDefinition", "parameters": { - "id": 7306, + "id": 7827, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7303, + "id": 7824, "mutability": "mutable", "name": "bs", "nameLocation": "35751:2:21", "nodeType": "VariableDeclaration", - "scope": 7376, + "scope": 7897, "src": "35738:15:21", "stateVariable": false, "storageLocation": "memory", @@ -87715,7 +87715,7 @@ "typeString": "bytes" }, "typeName": { - "id": 7302, + "id": 7823, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "35738:5:21", @@ -87728,12 +87728,12 @@ }, { "constant": false, - "id": 7305, + "id": 7826, "mutability": "mutable", "name": "offset", "nameLocation": "35768:6:21", "nodeType": "VariableDeclaration", - "scope": 7376, + "scope": 7897, "src": "35763:11:21", "stateVariable": false, "storageLocation": "default", @@ -87742,7 +87742,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7304, + "id": 7825, "name": "uint", "nodeType": "ElementaryTypeName", "src": "35763:4:21", @@ -87757,17 +87757,17 @@ "src": "35728:52:21" }, "returnParameters": { - "id": 7309, + "id": 7830, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7308, + "id": 7829, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7376, + "scope": 7897, "src": "35804:6:21", "stateVariable": false, "storageLocation": "default", @@ -87776,7 +87776,7 @@ "typeString": "uint32" }, "typeName": { - "id": 7307, + "id": 7828, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "35804:6:21", @@ -87790,14 +87790,14 @@ ], "src": "35803:8:21" }, - "scope": 7377, + "scope": 7898, "src": "35701:364:21", "stateMutability": "pure", "virtual": false, "visibility": "internal" } ], - "scope": 7378, + "scope": 7899, "src": "479:35588:21", "usedErrors": [] } @@ -87814,10 +87814,16 @@ "links": { "BtcUtils": "0x48841b09CD720355F8EE5164DEeFbB30535d825a" } + }, + "31": { + "events": {}, + "links": { + "BtcUtils": "0x368233164bd877B075E3492e49FE8b4F5360F3B6" + } } }, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:54:03.244Z", + "updatedAt": "2024-08-13T18:14:01.668Z", "networkType": "ethereum", "devdoc": { "events": { diff --git a/build/contracts/LiquidityBridgeContractAdmin.json b/build/contracts/LiquidityBridgeContractAdmin.json index ef92f55..7296a54 100644 --- a/build/contracts/LiquidityBridgeContractAdmin.json +++ b/build/contracts/LiquidityBridgeContractAdmin.json @@ -3744,7 +3744,7 @@ "sourceMap": "126:54:22:-:0;;;;;;;;;;;;-1:-1:-1;936:32:5;734:10:15;936:18:5;:32::i;:::-;126:54:22;;2426:187:5;2499:16;2518:6;;-1:-1:-1;;;;;2534:17:5;;;-1:-1:-1;;;;;;2534:17:5;;;;;;2566:40;;2518:6;;;;;;;2566:40;;2499:16;2566:40;2489:124;2426:187;:::o;126:54:22:-;;;;;;;", "deployedSourceMap": "126:54:22:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;650:438:12;;;;;;;;;;-1:-1:-1;650:438:12;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1824:101:5;;;;;;;;;;;;;:::i;:::-;;1842:149:12;;;;;;;;;;-1:-1:-1;1842:149:12;;;;;:::i;:::-;;:::i;1201:85:5:-;;;;;;;;;;;;;:::i;2612:245:12:-;;;;;;:::i;:::-;;:::i;2196:150::-;;;;;;;;;;-1:-1:-1;2196:150:12;;;;;:::i;:::-;;:::i;2074:198:5:-;;;;;;;;;;-1:-1:-1;2074:198:5;;;;;:::i;:::-;;:::i;1248:420:12:-;;;;;;;;;;-1:-1:-1;1248:420:12;;;;;:::i;:::-;;:::i;650:438::-;747:7;924:12;938:23;973:5;-1:-1:-1;;;;;965:25:12;:40;;;;-1:-1:-1;;;3111:33:32;;3169:1;3160:11;;2910:267;965:40:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;923:82;;;;1023:7;1015:16;;;;;;1059:10;1048:33;;;;;;;;;;;;:::i;:::-;1041:40;650:438;-1:-1:-1;;;;650:438:12:o;1824:101:5:-;1094:13;:11;:13::i;:::-;1888:30:::1;1915:1;1888:18;:30::i;:::-;1824:101::o:0;1842:149:12:-;1094:13:5;:11;:13::i;:::-;1957:27:12::1;::::0;-1:-1:-1;;;1957:27:12;;-1:-1:-1;;;;;1957:17:12;::::1;::::0;::::1;::::0;:27:::1;::::0;1975:8;;1957:27:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;1842:149:::0;;:::o;1201:85:5:-;1247:7;1273:6;-1:-1:-1;;;;;1273:6:5;;1201:85::o;2612:245:12:-;1094:13:5;:11;:13::i;:::-;2788:62:12::1;::::0;-1:-1:-1;;;2788:62:12;;-1:-1:-1;;;;;2788:22:12;::::1;::::0;::::1;::::0;2818:9:::1;::::0;2788:62:::1;::::0;2829:14;;2845:4;;2788:62:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;2612:245:::0;;;:::o;2196:150::-;1094:13:5;:11;:13::i;:::-;2308:31:12::1;::::0;-1:-1:-1;;;2308:31:12;;-1:-1:-1;;;;;2308:15:12;::::1;::::0;::::1;::::0;:31:::1;::::0;2324:14;;2308:31:::1;;;:::i;2074:198:5:-:0;1094:13;:11;:13::i;:::-;-1:-1:-1;;;;;2162:22:5;::::1;2154:73;;;::::0;-1:-1:-1;;;2154:73:5;;4326:2:32;2154:73:5::1;::::0;::::1;4308:21:32::0;4365:2;4345:18;;;4338:30;4404:34;4384:18;;;4377:62;-1:-1:-1;;;4455:18:32;;;4448:36;4501:19;;2154:73:5::1;;;;;;;;;2237:28;2256:8;2237:18;:28::i;:::-;2074:198:::0;:::o;1248:420:12:-;1336:7;1504:12;1518:23;1553:5;-1:-1:-1;;;;;1545:25:12;:40;;;;-1:-1:-1;;;4732:33:32;;4790:1;4781:11;;4531:267;1359:130:5;734:10:15;1422:7:5;:5;:7::i;:::-;-1:-1:-1;;;;;1422:23:5;;1414:68;;;;-1:-1:-1;;;1414:68:5;;5005:2:32;1414:68:5;;;4987:21:32;;;5024:18;;;5017:30;5083:34;5063:18;;;5056:62;5135:18;;1414:68:5;4803:356:32;2426:187:5;2499:16;2518:6;;-1:-1:-1;;;;;2534:17:5;;;-1:-1:-1;;;;;;2534:17:5;;;;;;2566:40;;2518:6;;;;;;;2566:40;;2499:16;2566:40;2489:124;2426:187;:::o;14:161:32:-;-1:-1:-1;;;;;119:31:32;;109:42;;99:70;;165:1;162;155:12;180:314;276:6;329:2;317:9;308:7;304:23;300:32;297:52;;;345:1;342;335:12;297:52;384:9;371:23;403:61;458:5;403:61;:::i;:::-;483:5;180:314;-1:-1:-1;;;180:314:32:o;499:203::-;-1:-1:-1;;;;;663:32:32;;;;645:51;;633:2;618:18;;499:203::o;707:485::-;812:6;820;873:2;861:9;852:7;848:23;844:32;841:52;;;889:1;886;879:12;841:52;928:9;915:23;947:61;1002:5;947:61;:::i;:::-;1027:5;-1:-1:-1;1084:2:32;1069:18;;1056:32;1097:63;1056:32;1097:63;:::i;:::-;1179:7;1169:17;;;707:485;;;;;:::o;1197:127::-;1258:10;1253:3;1249:20;1246:1;1239:31;1289:4;1286:1;1279:15;1313:4;1310:1;1303:15;1329:1294;1452:6;1460;1468;1521:2;1509:9;1500:7;1496:23;1492:32;1489:52;;;1537:1;1534;1527:12;1489:52;1576:9;1563:23;1595:61;1650:5;1595:61;:::i;:::-;1675:5;-1:-1:-1;1732:2:32;1717:18;;1704:32;1745:63;1704:32;1745:63;:::i;:::-;1827:7;-1:-1:-1;1885:2:32;1870:18;;1857:32;-1:-1:-1;;;;;1938:14:32;;;1935:34;;;1965:1;1962;1955:12;1935:34;2003:6;1992:9;1988:22;1978:32;;2048:7;2041:4;2037:2;2033:13;2029:27;2019:55;;2070:1;2067;2060:12;2019:55;2106:2;2093:16;2128:2;2124;2121:10;2118:36;;;2134:18;;:::i;:::-;2209:2;2203:9;2177:2;2263:13;;-1:-1:-1;;2259:22:32;;;2283:2;2255:31;2251:40;2239:53;;;2307:18;;;2327:22;;;2304:46;2301:72;;;2353:18;;:::i;:::-;2393:10;2389:2;2382:22;2428:2;2420:6;2413:18;2468:7;2463:2;2458;2454;2450:11;2446:20;2443:33;2440:53;;;2489:1;2486;2479:12;2440:53;2545:2;2540;2536;2532:11;2527:2;2519:6;2515:15;2502:46;2590:1;2585:2;2580;2572:6;2568:15;2564:24;2557:35;2611:6;2601:16;;;;;;;1329:1294;;;;;:::o;3182:289::-;3260:6;3313:2;3301:9;3292:7;3288:23;3284:32;3281:52;;;3329:1;3326;3319:12;3281:52;3361:9;3355:16;3380:61;3435:5;3380:61;:::i;3476:643::-;3680:1;3676;3671:3;3667:11;3663:19;3655:6;3651:32;3640:9;3633:51;3614:4;3703:2;3741;3736;3725:9;3721:18;3714:30;3773:6;3767:13;3816:6;3811:2;3800:9;3796:18;3789:34;3841:1;3851:140;3865:6;3862:1;3859:13;3851:140;;;3960:14;;;3956:23;;3950:30;3926:17;;;3945:2;3922:26;3915:66;3880:10;;3851:140;;;3855:3;4040:1;4035:2;4026:6;4015:9;4011:22;4007:31;4000:42;4110:2;4103;4099:7;4094:2;4086:6;4082:15;4078:29;4067:9;4063:45;4059:54;4051:62;;;;3476:643;;;;;:::o", "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nimport \"@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol\";\n\ncontract LiquidityBridgeContractAdmin is ProxyAdmin {}", - "sourcePath": "/Users/guilhermesoares/WebstormProjects/Rootstock/liquidity-bridge-contract/contracts/LiquidityBridgeContractAdmin.sol", + "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/LiquidityBridgeContractAdmin.sol", "ast": { "absolutePath": "project:/contracts/LiquidityBridgeContractAdmin.sol", "exportedSymbols": { @@ -3773,7 +3773,7 @@ 1484 ], "LiquidityBridgeContractAdmin": [ - 7383 + 7904 ], "Ownable": [ 880 @@ -3791,12 +3791,12 @@ 1773 ] }, - "id": 7384, + "id": 7905, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 7379, + "id": 7900, "literals": [ "solidity", "^", @@ -3809,10 +3809,10 @@ { "absolutePath": "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol", "file": "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol", - "id": 7380, + "id": 7901, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 7384, + "scope": 7905, "sourceUnit": 1451, "src": "58:66:22", "symbolAliases": [], @@ -3823,7 +3823,7 @@ "baseContracts": [ { "baseName": { - "id": 7381, + "id": 7902, "name": "ProxyAdmin", "nameLocations": [ "167:10:22" @@ -3832,7 +3832,7 @@ "referencedDeclaration": 1450, "src": "167:10:22" }, - "id": 7382, + "id": 7903, "nodeType": "InheritanceSpecifier", "src": "167:10:22" } @@ -3841,9 +3841,9 @@ "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, - "id": 7383, + "id": 7904, "linearizedBaseContracts": [ - 7383, + 7904, 1450, 880, 2133 @@ -3852,7 +3852,7 @@ "nameLocation": "135:28:22", "nodeType": "ContractDefinition", "nodes": [], - "scope": 7384, + "scope": 7905, "src": "126:54:22", "usedErrors": [] } @@ -3865,7 +3865,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.156Z", + "updatedAt": "2024-08-13T18:10:01.032Z", "devdoc": { "kind": "dev", "methods": { diff --git a/build/contracts/LiquidityBridgeContractProxy.json b/build/contracts/LiquidityBridgeContractProxy.json index d016a09..84bb5cc 100644 --- a/build/contracts/LiquidityBridgeContractProxy.json +++ b/build/contracts/LiquidityBridgeContractProxy.json @@ -6603,7 +6603,7 @@ "sourceMap": "143:203:23:-:0;;;216:128;;;;;;;;;;;;;;;;;;:::i;:::-;312:6;319;327:5;312:6;327:5;1024:39:8;312:6:23;327:5;1057::8;1024:17;:39::i;:::-;-1:-1:-1;3773:20:13::1;::::0;-1:-1:-1;3786:6:13;3773:12:::1;:20::i;:::-;3663:137:::0;;;216:128:23;;;143:203;;2057:265:9;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;;;;;:53;;:::i;:::-;;2204:112;2057:265;;;:::o;4300:135::-;4364:35;4377:11;:9;:11::i;:::-;4364:35;;;-1:-1:-1;;;;;1884:15:32;;;1866:34;;1936:15;;;1931:2;1916:18;;1909:43;1801:18;4364:35:9;;;;;;;4409:19;4419:8;4409:9;:19::i;:::-;4300:135;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:9;;;;;;;;1771:152;:::o;6674:198:14:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:14:o;3784:122:9:-;3828:7;3854:39;-1:-1:-1;;;;;;;;;;;3881:11:9;;3854:26;;;;;:39;;:::i;:::-;:45;-1:-1:-1;;;;;3854:45:9;;3784:122;-1:-1:-1;3784:122:9:o;3988:201::-;-1:-1:-1;;;;;4051:22:9;;4043:73;;;;-1:-1:-1;;;4043:73:9;;2165:2:32;4043:73:9;;;2147:21:32;2204:2;2184:18;;;2177:30;2243:34;2223:18;;;2216:62;-1:-1:-1;;;2294:18:32;;;2287:36;2340:19;;4043:73:9;;;;;;;;;4174:8;4126:39;-1:-1:-1;;;;;;;;;;;4153:11:9;;4126:26;;;;;:39;;:::i;:::-;:56;;-1:-1:-1;;;;;;4126:56:9;-1:-1:-1;;;;;4126:56:9;;;;;;;;;;-1:-1:-1;3988:201:9:o;1406:259::-;1487:37;1506:17;1487:18;;;;;:37;;:::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:9;;2572:2:32;1479:95:9;;;2554:21:32;2611:2;2591:18;;;2584:30;2650:34;2630:18;;;2623:62;-1:-1:-1;;;2701:18:32;;;2694:43;2754:19;;1479:95:9;2370:409:32;1479:95:9;1641:17;1584:48;1030:66;1611:20;;1584:26;;;;;:48;;:::i;7058:325:14:-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:14;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7223:67:14;;-1:-1:-1;7223:67:14;-1:-1:-1;7307:69:14;7334:6;7223:67;;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:14:o;1859:190:16:-;2029:4;1859:190::o;1412:320:14:-;-1:-1:-1;;;;;1702:19:14;;:23;;;1412:320::o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:14;;3278:2:32;8113:60:14;;;3260:21:32;3317:2;3297:18;;;3290:30;3356:31;3336:18;;;3329:59;3405:18;;8113:60:14;3076:353:32;8113:60:14;-1:-1:-1;8208:10:14;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:14;;;;;;;;:::i;14:177:32:-;93:13;;-1:-1:-1;;;;;135:31:32;;125:42;;115:70;;181:1;178;171:12;115:70;14:177;;;:::o;196:127::-;257:10;252:3;248:20;245:1;238:31;288:4;285:1;278:15;312:4;309:1;302:15;328:250;413:1;423:113;437:6;434:1;431:13;423:113;;;513:11;;;507:18;494:11;;;487:39;459:2;452:10;423:113;;;-1:-1:-1;;570:1:32;552:16;;545:27;328:250::o;583:1066::-;680:6;688;696;749:2;737:9;728:7;724:23;720:32;717:52;;;765:1;762;755:12;717:52;788:40;818:9;788:40;:::i;:::-;778:50;;847:49;892:2;881:9;877:18;847:49;:::i;:::-;940:2;925:18;;919:25;837:59;;-1:-1:-1;;;;;;993:14:32;;;990:34;;;1020:1;1017;1010:12;990:34;1058:6;1047:9;1043:22;1033:32;;1103:7;1096:4;1092:2;1088:13;1084:27;1074:55;;1125:1;1122;1115:12;1074:55;1154:2;1148:9;1176:2;1172;1169:10;1166:36;;;1182:18;;:::i;:::-;1257:2;1251:9;1225:2;1311:13;;-1:-1:-1;;1307:22:32;;;1331:2;1303:31;1299:40;1287:53;;;1355:18;;;1375:22;;;1352:46;1349:72;;;1401:18;;:::i;:::-;1441:10;1437:2;1430:22;1476:2;1468:6;1461:18;1516:7;1511:2;1506;1502;1498:11;1494:20;1491:33;1488:53;;;1537:1;1534;1527:12;1488:53;1550:68;1615:2;1610;1602:6;1598:15;1593:2;1589;1585:11;1550:68;:::i;:::-;1637:6;1627:16;;;;;;;583:1066;;;;;:::o;2784:287::-;2913:3;2951:6;2945:13;2967:66;3026:6;3021:3;3014:4;3006:6;3002:17;2967:66;:::i;:::-;3049:16;;;;;2784:287;-1:-1:-1;;2784:287:32:o;3434:396::-;3583:2;3572:9;3565:21;3546:4;3615:6;3609:13;3658:6;3653:2;3642:9;3638:18;3631:34;3674:79;3746:6;3741:2;3730:9;3726:18;3721:2;3713:6;3709:15;3674:79;:::i;:::-;3814:2;3793:15;-1:-1:-1;;3789:29:32;3774:45;;;;3821:2;3770:54;;3434:396;-1:-1:-1;;3434:396:32:o;:::-;143:203:23;;;;;;", "deployedSourceMap": "143:203:23:-:0;;;;;;2898:11:10;:9;:11::i;:::-;143:203:23;;2675:11:10;4407:1102:13;4482:11;:9;:11::i;:::-;-1:-1:-1;;;;;4468:25:13;:10;:25;4464:1039;;4509:16;-1:-1:-1;;;;;;4539:15:13;4557:7;;-1:-1:-1;;;4582:59:13;;4578:779;;4667:20;:18;:20::i;:::-;4661:26;;4578:779;;;-1:-1:-1;;;;;;;;;4712:66:13;;;4708:649;;4804:27;:25;:27::i;4708:649::-;-1:-1:-1;;;;;;;;;4856:61:13;;;4852:505;;4943:22;:20;:22::i;4852:505::-;-1:-1:-1;;;;;;;;;4990:55:13;;;4986:371;;5071:16;:14;:16::i;4986:371::-;-1:-1:-1;;;;;;;;;5112:64:13;;;5108:249;;5202:25;:23;:25::i;5108:249::-;5266:76;;-1:-1:-1;;;5266:76:13;;216:2:32;5266:76:13;;;198:21:32;255:2;235:18;;;228:30;294:34;274:18;;;267:62;365:34;345:18;;;338:62;-1:-1:-1;;;416:19:32;;;409:33;459:19;;5266:76:13;;;;;;;;5108:249;5426:3;5420:10;5413:4;5408:3;5404:14;5397:34;4464:1039;5475:17;:15;:17::i;:::-;4407:1102::o;6674:198:14:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:14:o;1859:190:16:-;2029:4;1859:190::o;1412:320:14:-;-1:-1:-1;;;;;1702:19:14;;:23;;;1412:320::o;3784:122:9:-;3828:7;-1:-1:-1;;;;;;;;;;;3854:39:9;:45;-1:-1:-1;;;;;3854:45:9;;3784:122;-1:-1:-1;3784:122:9:o;6985:255:13:-;7032:12;7056:19;:17;:19::i;:::-;7086:25;7125:12;:8;7134:1;7125:8;7086:25;7125:12;:::i;:::-;7114:35;;;;;;;:::i;:::-;7086:63;;7159:54;7177:17;7196:9;;;;;;;;;;;;7207:5;7159:17;:54::i;:::-;-1:-1:-1;;7224:9:13;;;;;;;;;-1:-1:-1;7224:9:13;;;6985:255::o;7524:254::-;7578:12;7603:25;;7662:12;:8;7671:1;7662:8;7603:25;7662:12;:::i;:::-;7651:42;;;;;;;:::i;:::-;7602:91;;;;7703:48;7721:17;7740:4;7746;7703:17;:48::i;:::-;7762:9;;;;;;;;;;;;;;;;7524:254;:::o;6694:216::-;6743:12;6767:19;:17;:19::i;:::-;6797:16;6827:12;:8;6836:1;6827:8;6797:16;6827:12;:::i;:::-;6816:35;;;;;;;:::i;:::-;6797:54;;6861:22;6874:8;6861:12;:22::i;5860:165::-;5903:12;5927:19;:17;:19::i;:::-;5957:13;5973:11;:9;:11::i;:::-;6001:17;;;-1:-1:-1;;;;;2530:32:32;;6001:17:13;;;2512:51:32;5957:27:13;;-1:-1:-1;2485:18:32;6001:17:13;;;;;;;;;;;;5994:24;;;5860:165;:::o;6385:198::-;6437:12;6461:19;:17;:19::i;:::-;6491:22;6516:17;:15;:17::i;2322:110:10:-;2397:28;2407:17;:15;:17::i;:::-;2397:9;:28::i;7058:325:14:-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:14;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:14:o;8261:77:13:-;8316:9;:14;8308:23;;;;;2057:265:9;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;:::-;;2204:112;2057:265;;;:::o;4300:135::-;4364:35;4377:11;:9;:11::i;:::-;4364:35;;;-1:-1:-1;;;;;3351:15:32;;;3333:34;;3403:15;;;3398:2;3383:18;;3376:43;3268:18;4364:35:9;;;;;;;4409:19;4419:8;4409:9;:19::i;:::-;4300:135;:::o;1148:140:8:-;1215:12;1246:35;:33;:35::i;:::-;1239:42;;1148:140;:::o;948:895:10:-;1286:14;1283:1;1280;1267:34;1500:1;1497;1481:14;1478:1;1462:14;1455:5;1442:60;1576:16;1573:1;1570;1555:38;1614:6;1681:66;;;;1796:16;1793:1;1786:27;1681:66;1716:16;1713:1;1706:27;7671:628:14;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:14;;3632:2:32;8113:60:14;;;3614:21:32;3671:2;3651:18;;;3644:30;3710:31;3690:18;;;3683:59;3759:18;;8113:60:14;3430:353:32;8113:60:14;-1:-1:-1;8208:10:14;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;1771:152:9:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:9;;;;;;;;1771:152;:::o;3988:201::-;-1:-1:-1;;;;;4051:22:9;;4043:73;;;;-1:-1:-1;;;4043:73:9;;3990:2:32;4043:73:9;;;3972:21:32;4029:2;4009:18;;;4002:30;4068:34;4048:18;;;4041:62;-1:-1:-1;;;4119:18:32;;;4112:36;4165:19;;4043:73:9;3788:402:32;4043:73:9;4174:8;-1:-1:-1;;;;;;;;;;;4126:39:9;:56;;-1:-1:-1;;;;;;4126:56:9;-1:-1:-1;;;;;4126:56:9;;;;;;;;;;-1:-1:-1;3988:201:9:o;1175:140::-;1228:7;-1:-1:-1;;;;;;;;;;;1254:48:9;1859:190:16;8821:540:14;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:14;;;;;;;;:::i;1406:259:9:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:9;;4798:2:32;1479:95:9;;;4780:21:32;4837:2;4817:18;;;4810:30;4876:34;4856:18;;;4849:62;-1:-1:-1;;;4927:18:32;;;4920:43;4980:19;;1479:95:9;4596:409:32;1479:95:9;1641:17;-1:-1:-1;;;;;;;;;;;1584:48:9;1859:190:16;489:331:32;594:9;605;647:8;635:10;632:24;629:44;;;669:1;666;659:12;629:44;698:6;688:8;685:20;682:40;;;718:1;715;708:12;682:40;-1:-1:-1;;744:23:32;;;789:25;;;;;-1:-1:-1;489:331:32:o;825:181::-;901:20;;-1:-1:-1;;;;;950:31:32;;940:42;;930:70;;996:1;993;986:12;930:70;825:181;;;:::o;1011:202::-;1078:6;1131:2;1119:9;1110:7;1106:23;1102:32;1099:52;;;1147:1;1144;1137:12;1099:52;1170:37;1197:9;1170:37;:::i;1218:127::-;1279:10;1274:3;1270:20;1267:1;1260:31;1310:4;1307:1;1300:15;1334:4;1331:1;1324:15;1350:1011;1435:6;1443;1496:2;1484:9;1475:7;1471:23;1467:32;1464:52;;;1512:1;1509;1502:12;1464:52;1535:37;1562:9;1535:37;:::i;:::-;1525:47;-1:-1:-1;1623:2:32;1608:18;;1595:32;-1:-1:-1;;;;;1676:14:32;;;1673:34;;;1703:1;1700;1693:12;1673:34;1741:6;1730:9;1726:22;1716:32;;1786:7;1779:4;1775:2;1771:13;1767:27;1757:55;;1808:1;1805;1798:12;1757:55;1844:2;1831:16;1866:2;1862;1859:10;1856:36;;;1872:18;;:::i;:::-;1947:2;1941:9;1915:2;2001:13;;-1:-1:-1;;1997:22:32;;;2021:2;1993:31;1989:40;1977:53;;;2045:18;;;2065:22;;;2042:46;2039:72;;;2091:18;;:::i;:::-;2131:10;2127:2;2120:22;2166:2;2158:6;2151:18;2206:7;2201:2;2196;2192;2188:11;2184:20;2181:33;2178:53;;;2227:1;2224;2217:12;2178:53;2283:2;2278;2274;2270:11;2265:2;2257:6;2253:15;2240:46;2328:1;2323:2;2318;2310:6;2306:15;2302:24;2295:35;2349:6;2339:16;;;;;;;1350:1011;;;;;:::o;2574:250::-;2659:1;2669:113;2683:6;2680:1;2677:13;2669:113;;;2759:11;;;2753:18;2740:11;;;2733:39;2705:2;2698:10;2669:113;;;-1:-1:-1;;2816:1:32;2798:16;;2791:27;2574:250::o;2829:287::-;2958:3;2996:6;2990:13;3012:66;3071:6;3066:3;3059:4;3051:6;3047:17;3012:66;:::i;:::-;3094:16;;;;;2829:287;-1:-1:-1;;2829:287:32:o;4195:396::-;4344:2;4333:9;4326:21;4307:4;4376:6;4370:13;4419:6;4414:2;4403:9;4399:18;4392:34;4435:79;4507:6;4502:2;4491:9;4487:18;4482:2;4474:6;4470:15;4435:79;:::i;:::-;4575:2;4554:15;-1:-1:-1;;4550:29:32;4535:45;;;;4582:2;4531:54;;4195:396;-1:-1:-1;;4195:396:32:o", "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nimport \"@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol\";\n\ncontract LiquidityBridgeContractProxy is TransparentUpgradeableProxy {\n constructor(address _logic, address _admin, bytes memory _data)\n TransparentUpgradeableProxy(_logic,_admin, _data) payable {}\n}", - "sourcePath": "/Users/guilhermesoares/WebstormProjects/Rootstock/liquidity-bridge-contract/contracts/LiquidityBridgeContractProxy.sol", + "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/LiquidityBridgeContractProxy.sol", "ast": { "absolutePath": "project:/contracts/LiquidityBridgeContractProxy.sol", "exportedSymbols": { @@ -6629,7 +6629,7 @@ 1484 ], "LiquidityBridgeContractProxy": [ - 7404 + 7925 ], "Proxy": [ 1304 @@ -6641,12 +6641,12 @@ 1773 ] }, - "id": 7405, + "id": 7926, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 7385, + "id": 7906, "literals": [ "solidity", "^", @@ -6659,10 +6659,10 @@ { "absolutePath": "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", "file": "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "id": 7386, + "id": 7907, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 7405, + "scope": 7926, "sourceUnit": 1774, "src": "58:83:23", "symbolAliases": [], @@ -6673,7 +6673,7 @@ "baseContracts": [ { "baseName": { - "id": 7387, + "id": 7908, "name": "TransparentUpgradeableProxy", "nameLocations": [ "184:27:23" @@ -6682,7 +6682,7 @@ "referencedDeclaration": 1773, "src": "184:27:23" }, - "id": 7388, + "id": 7909, "nodeType": "InheritanceSpecifier", "src": "184:27:23" } @@ -6691,9 +6691,9 @@ "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, - "id": 7404, + "id": 7925, "linearizedBaseContracts": [ - 7404, + 7925, 1773, 948, 1252, @@ -6706,23 +6706,23 @@ "nodes": [ { "body": { - "id": 7402, + "id": 7923, "nodeType": "Block", "src": "342:2:23", "statements": [] }, - "id": 7403, + "id": 7924, "implemented": true, "kind": "constructor", "modifiers": [ { "arguments": [ { - "id": 7397, + "id": 7918, "name": "_logic", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7390, + "referencedDeclaration": 7911, "src": "312:6:23", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6730,11 +6730,11 @@ } }, { - "id": 7398, + "id": 7919, "name": "_admin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7392, + "referencedDeclaration": 7913, "src": "319:6:23", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6742,11 +6742,11 @@ } }, { - "id": 7399, + "id": 7920, "name": "_data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7394, + "referencedDeclaration": 7915, "src": "327:5:23", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -6754,10 +6754,10 @@ } } ], - "id": 7400, + "id": 7921, "kind": "baseConstructorSpecifier", "modifierName": { - "id": 7396, + "id": 7917, "name": "TransparentUpgradeableProxy", "nameLocations": [ "284:27:23" @@ -6774,17 +6774,17 @@ "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 7395, + "id": 7916, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7390, + "id": 7911, "mutability": "mutable", "name": "_logic", "nameLocation": "236:6:23", "nodeType": "VariableDeclaration", - "scope": 7403, + "scope": 7924, "src": "228:14:23", "stateVariable": false, "storageLocation": "default", @@ -6793,7 +6793,7 @@ "typeString": "address" }, "typeName": { - "id": 7389, + "id": 7910, "name": "address", "nodeType": "ElementaryTypeName", "src": "228:7:23", @@ -6807,12 +6807,12 @@ }, { "constant": false, - "id": 7392, + "id": 7913, "mutability": "mutable", "name": "_admin", "nameLocation": "252:6:23", "nodeType": "VariableDeclaration", - "scope": 7403, + "scope": 7924, "src": "244:14:23", "stateVariable": false, "storageLocation": "default", @@ -6821,7 +6821,7 @@ "typeString": "address" }, "typeName": { - "id": 7391, + "id": 7912, "name": "address", "nodeType": "ElementaryTypeName", "src": "244:7:23", @@ -6835,12 +6835,12 @@ }, { "constant": false, - "id": 7394, + "id": 7915, "mutability": "mutable", "name": "_data", "nameLocation": "273:5:23", "nodeType": "VariableDeclaration", - "scope": 7403, + "scope": 7924, "src": "260:18:23", "stateVariable": false, "storageLocation": "memory", @@ -6849,7 +6849,7 @@ "typeString": "bytes" }, "typeName": { - "id": 7393, + "id": 7914, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "260:5:23", @@ -6864,19 +6864,19 @@ "src": "227:52:23" }, "returnParameters": { - "id": 7401, + "id": 7922, "nodeType": "ParameterList", "parameters": [], "src": "342:0:23" }, - "scope": 7404, + "scope": 7925, "src": "216:128:23", "stateMutability": "payable", "virtual": false, "visibility": "public" } ], - "scope": 7405, + "scope": 7926, "src": "143:203:23", "usedErrors": [] } @@ -6889,7 +6889,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.157Z", + "updatedAt": "2024-08-13T18:10:01.037Z", "devdoc": { "events": { "AdminChanged(address,address)": { diff --git a/build/contracts/LiquidityBridgeContractV2.json b/build/contracts/LiquidityBridgeContractV2.json index 03fb628..7a202b5 100644 --- a/build/contracts/LiquidityBridgeContractV2.json +++ b/build/contracts/LiquidityBridgeContractV2.json @@ -778,6 +778,20 @@ "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "version", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function", + "constant": true + }, { "inputs": [], "name": "getProviderIds", @@ -971,15 +985,61 @@ "type": "function", "payable": true }, + { + "inputs": [], + "name": "getProviders", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "internalType": "address", + "name": "provider", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "apiBaseUrl", + "type": "string" + }, + { + "internalType": "bool", + "name": "status", + "type": "bool" + }, + { + "internalType": "string", + "name": "providerType", + "type": "string" + } + ], + "internalType": "struct LiquidityBridgeContractV2.LiquidityProvider[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function", + "constant": true + }, { "inputs": [ { - "internalType": "uint256[]", - "name": "providerIds", - "type": "uint256[]" + "internalType": "address", + "name": "providerAddress", + "type": "address" } ], - "name": "getProviders", + "name": "getProvider", "outputs": [ { "components": [ @@ -1014,9 +1074,9 @@ "type": "string" } ], - "internalType": "struct LiquidityBridgeContractV2.LiquidityProvider[]", + "internalType": "struct LiquidityBridgeContractV2.LiquidityProvider", "name": "", - "type": "tuple[]" + "type": "tuple" } ], "stateMutability": "view", @@ -1944,16 +2004,16 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BalanceDecrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BalanceIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"errorCode\",\"type\":\"int256\"}],\"name\":\"BridgeCapExceeded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"CallForUser\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CollateralIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"DaoFeeSent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"transferredAmount\",\"type\":\"int256\"}],\"name\":\"PegInRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"PegOutDeposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"PegOutRefunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"userAddress\",\"type\":\"address\"}],\"name\":\"PegOutUserRefunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PegoutCollateralIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"liquidityProvider\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"penalty\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"Penalized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"providerAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"}],\"name\":\"ProviderUpdate\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"Refund\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Register\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"Resigned\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"WithdrawCollateral\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Withdrawal\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"BRIDGE_GENERIC_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_REFUNDED_LP_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_REFUNDED_USER_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"CALL_DONE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_CALL_GAS_COST\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_REFUND_GAS_LIMIT\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PAY_TO_ADDRESS_OUTPUT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PROCESSED_QUOTE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"QUOTE_HASH_OUTPUT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UNPROCESSED_QUOTE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"addCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"addPegoutCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"bridge\",\"outputs\":[{\"internalType\":\"contract Bridge\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"callForUser\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"daoFeeCollectorAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PegOutQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"name\":\"depositPegout\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBridgeAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDustThreshold\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinPegIn\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getPegoutCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getProviderIds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"providerIds\",\"type\":\"uint256[]\"}],\"name\":\"getProviders\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"provider\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"apiBaseUrl\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"providerType\",\"type\":\"string\"}],\"internalType\":\"struct LiquidityBridgeContractV2.LiquidityProvider[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getResignDelayBlocks\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRewardPercentage\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PegOutQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"hashPegoutQuote\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"hashQuote\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isOperational\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isOperationalForPegout\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"isPegOutQuoteCompleted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"productFeePercentage\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"providerId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"btcTx\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"btcBlockHeaderHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"partialMerkleTree\",\"type\":\"uint256\"},{\"internalType\":\"bytes32[]\",\"name\":\"merkleBranchHashes\",\"type\":\"bytes32[]\"}],\"name\":\"refundPegOut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"refundUserPegOut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_apiBaseUrl\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"_providerType\",\"type\":\"string\"}],\"name\":\"register\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"btcRawTransaction\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"partialMerkleTree\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"}],\"name\":\"registerPegIn\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"resign\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_providerId\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"setProviderStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_url\",\"type\":\"string\"}],\"name\":\"updateProvider\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"depositAddress\",\"type\":\"bytes\"}],\"name\":\"validatePeginDepositAddress\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawCollateral\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"events\":{\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"}},\"kind\":\"dev\",\"methods\":{\"addCollateral()\":{\"details\":\"Increases the amount of collateral of the sender\"},\"callForUser((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool,uint256,uint256))\":{\"details\":\"Performs a call on behalf of a user\",\"params\":{\"quote\":\"The quote that identifies the service\"},\"returns\":{\"_0\":\"Boolean indicating whether the call was successful\"}},\"deposit()\":{\"details\":\"Increases the balance of the sender\"},\"getBalance(address)\":{\"details\":\"Returns the amount of funds of a liquidity provider\",\"params\":{\"addr\":\"The address of the liquidity provider\"},\"returns\":{\"_0\":\"The balance of the liquidity provider\"}},\"getCollateral(address)\":{\"details\":\"Returns the amount of collateral of a liquidity provider\",\"params\":{\"addr\":\"The address of the liquidity provider\"},\"returns\":{\"_0\":\"The amount of locked collateral\"}},\"hashQuote((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool,uint256,uint256))\":{\"details\":\"Calculates hash of a quote. Note: besides calculation this function also validates the quote.\",\"params\":{\"quote\":\"The quote of the service\"},\"returns\":{\"_0\":\"The hash of a quote\"}},\"isOperational(address)\":{\"details\":\"Checks whether a liquidity provider can deliver a pegin service\",\"returns\":{\"_0\":\"Whether the liquidity provider is registered and has enough locked collateral\"}},\"isOperationalForPegout(address)\":{\"details\":\"Checks whether a liquidity provider can deliver a pegout service\",\"returns\":{\"_0\":\"Whether the liquidity provider is registered and has enough locked collateral\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"register(string,string,bool,string)\":{\"details\":\"Registers msg.sender as a liquidity provider with msg.value as collateral\"},\"registerPegIn((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool,uint256,uint256),bytes,bytes,bytes,uint256)\":{\"details\":\"Registers a peg-in transaction with the bridge and pays to the involved parties\",\"params\":{\"btcRawTransaction\":\"The peg-in transaction\",\"height\":\"The block that contains the peg-in transaction\",\"partialMerkleTree\":\"The merkle tree path that proves transaction inclusion\",\"quote\":\"The quote of the service\",\"signature\":\"The signature of the quote\"},\"returns\":{\"_0\":\"The total peg-in amount received from the bridge contract or an error code\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"resign()\":{\"details\":\"Used to resign as a liquidity provider\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"withdraw(uint256)\":{\"details\":\"Used to withdraw funds\",\"params\":{\"amount\":\"The amount to withdraw\"}},\"withdrawCollateral()\":{\"details\":\"Used to withdraw the locked collateral\"}},\"title\":\"Contract that assists with the Flyover protocol\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/LiquidityBridgeContractV2.sol\":\"LiquidityBridgeContractV2\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\":{\"keccak256\":\"0x0dc781715e8c751a32cc8a6cb062c0aa315dac2d14f9e00cf93d3aec0ae295e8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1dc434f8cc19e5ddf589ec5bab31427e9b0a0eb990e00a217fdfeca7223cf4f9\",\"dweb:/ipfs/QmUpkMKeG7ncvyxpye4Z1izF2NvRK4rJ2nt6fof9TbPsvc\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":{\"keccak256\":\"0x74d384b5e0ce7b5be1cb5d1446b40e788a0b3e13522aaa583d73a554c835c4d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e94fc123058c5e2cc8cd4635f12bcba195b8b57fef895980c519130f44aa5d17\",\"dweb:/ipfs/QmVhqvcmMhvwYeuYgheTFVBo3EHBKuyYpthdhQRwTdBfx4\"]},\"project:/contracts/Bridge.sol\":{\"keccak256\":\"0xae192fa4fc0d6d395fd0c3912bc3affe86ddd4869f04501fbae0afe234d1becd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://309436cba07567a3ee76e71d6a751023b436a17f7d83e291ef731318287756e6\",\"dweb:/ipfs/QmZTjw3hbY4ofptJmQwnLRGrBTQcv6yPgbY4WvMAwgkzGS\"]},\"project:/contracts/LiquidityBridgeContractV2.sol\":{\"keccak256\":\"0xa282cd149d0bd43e04cc7eea76406b0df97eca76ee77de6d34af7bb2ff51869b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c0407ad50c59e15c9664ec295a60fad1ce1a76670b4ba95bc3431e5061571663\",\"dweb:/ipfs/QmfNkoPYTYhyKZPnvfY4QMhf7kpgHPm71hRUfTyk7Saddn\"]},\"project:/contracts/QuotesV2.sol\":{\"keccak256\":\"0xda3afec2b2b9aae5c1747ffcd7646fd0680965743702961b08236e0cce699d35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e751b7128c53b32303e573fb14796eb0e8912d50114c8824ad307ac632725ee\",\"dweb:/ipfs/QmTyF3Dmw1d7crXtSALUsaQcHtp5cCzUo1xEtyG3uBtXAY\"]},\"project:/contracts/SignatureValidator.sol\":{\"keccak256\":\"0x9d72920dd5ff2891c8dd3b3a814c1b108e82fcc6dfd849c96842e88c01d25b2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df1167e9def35ced4a620e3fa1e6d148bc7c1fb995378bf12dabef250b3be65\",\"dweb:/ipfs/QmZJJchWvzUeMb68VPHFGnMXBx7aMhK5GqJy8ECDx2rf58\"]}},\"version\":1}", - "bytecode": "0x608060405234801561001057600080fd5b50615c6480620000216000396000f3fe6080604052600436106102695760003560e01c80630220f41d146102bd57806304ade855146102dd5780630a7bf57a146103095780630a9cb4a71461031e578063221400091461033d5780632d67952c1461035d5780632e1a7d4d1461037d57806333f07ad31461039d57806341705518146103b2578063418663a2146103c55780634198687e146103ef578063457385f2146103f75780634d0ec9711461042757806354015ee01461044757806359c153be1461047a57806363c671351461048f578063668dbd83146104a557806369652fcf146104d2578063710738b1146104e7578063715018a61461051457806372cbf4e81461052957806379b9550b146105495780637aefa8c2146105695780638490a8df1461057c5780638beb537a146105925780638d597939146105a55780638da5cb5b146105bc5780638f91797d146105d15780639b56d6c9146105f15780639cd6557f146106275780639d79b59b1461063c5780639e81699914610665578063a4a5ba501461066d578063a93bb24714610682578063ae76ce8614610699578063ae93b67b146106b0578063b3a849aa146106c7578063bd519eff146106e7578063bd5798c31461071d578063be6de4eb1461073f578063c525cdd814610754578063c72131631461076b578063cfb92f0a14610786578063d0e30db01461079d578063d6c70de8146107a5578063e1de16c6146107c5578063e30e6ea3146107db578063e78cea92146107f1578063e830b69014610811578063e8fcce7114610826578063f2fde38b1461083c578063f8b2cb4f1461085c578063fa88dcde14610892578063fb32c508146108a757600080fd5b366102b8576097546001600160a01b031633146102b65760405162461bcd60e51b81526020600482015260066024820152654c424330303760d01b60448201526064015b60405180910390fd5b005b600080fd5b3480156102c957600080fd5b506102b66102d83660046145c2565b6108c5565b3480156102e957600080fd5b506102f2600181565b60405160ff90911681526020015b60405180910390f35b34801561031557600080fd5b506102f2600281565b34801561032a57600080fd5b5060a2545b604051908152602001610300565b34801561034957600080fd5b5061032f61035836600461480d565b6109d7565b34801561036957600080fd5b5061032f610378366004614a15565b6109e8565b34801561038957600080fd5b506102b6610398366004614ac9565b6111fa565b3480156103a957600080fd5b5060a15461032f565b61032f6103c0366004614ae2565b6112f2565b3480156103d157600080fd5b506103dc6101301981565b60405160019190910b8152602001610300565b6102b6611824565b34801561040357600080fd5b50610417610412366004614b7e565b6118a9565b6040519015158152602001610300565b34801561043357600080fd5b50610417610442366004614b7e565b6118df565b34801561045357600080fd5b50610417610462366004614ac9565b600090815260a7602052604090206001015460ff1690565b34801561048657600080fd5b506102b6611915565b34801561049b57600080fd5b5061032f60a85481565b3480156104b157600080fd5b506104c56104c0366004614bbe565b611ac0565b6040516103009190614cab565b3480156104de57600080fd5b506102b6611e41565b3480156104f357600080fd5b5060a954610507906001600160a01b031681565b6040516103009190614d7a565b34801561052057600080fd5b506102b6611eec565b34801561053557600080fd5b506102b6610544366004614d8e565b611efe565b34801561055557600080fd5b50610417610564366004614dbe565b611f98565b610417610577366004614df4565b612104565b34801561058857600080fd5b5061032f60a25481565b6102b66105a0366004614e28565b612416565b3480156105b157600080fd5b506103dc61012c1981565b3480156105c857600080fd5b506105076128cf565b3480156105dd57600080fd5b506102b66105ec366004614ac9565b6128de565b3480156105fd57600080fd5b5061032f61060c366004614b7e565b6001600160a01b031660009081526099602052604090205490565b34801561063357600080fd5b506102f2600081565b34801561064857600080fd5b506106526188b881565b60405161ffff9091168152602001610300565b6102b6612c0b565b34801561067957600080fd5b5061032f600181565b34801561068e57600080fd5b506103dc61012d1981565b3480156106a557600080fd5b506103dc61012b1981565b3480156106bc57600080fd5b506103dc6103831981565b3480156106d357600080fd5b5061032f6106e2366004614df4565b612c86565b3480156106f357600080fd5b5061032f610702366004614b7e565b6001600160a01b03166000908152609a602052604090205490565b34801561072957600080fd5b5060a054600160201b900463ffffffff1661032f565b34801561074b57600080fd5b5061032f600081565b34801561076057600080fd5b506103dc61012e1981565b34801561077757600080fd5b5060a05463ffffffff1661032f565b34801561079257600080fd5b506103dc61012f1981565b6102b6612c91565b3480156107b157600080fd5b506102b66107c0366004614e5e565b612cc0565b3480156107d157600080fd5b506106526108fc81565b3480156107e757600080fd5b506103dc60c71981565b3480156107fd57600080fd5b50609754610507906001600160a01b031681565b34801561081d57600080fd5b50609e5461032f565b34801561083257600080fd5b506103dc60631981565b34801561084857600080fd5b506102b6610857366004614b7e565b6137b3565b34801561086857600080fd5b5061032f610877366004614b7e565b6001600160a01b031660009081526098602052604090205490565b34801561089e57600080fd5b50609f5461032f565b3480156108b357600080fd5b506097546001600160a01b0316610507565b600082511180156108d7575060008151115b61090c5760405162461bcd60e51b8152602060048201526006602482015265262121981b9b60d11b60448201526064016102ad565b600060015b60a25481116109be576000818152609b6020526040902060018101549092506001600160a01b031633036109ac576002820161094d8582614fbd565b506003820161095c8482614fbd565b50336001600160a01b03167fc15f90eb34a098bb02f2641dff62935246fb005d8f06e13d5cc6be0bddcce8e3836002018460030160405161099e9291906150f9565b60405180910390a250505050565b806109b681615134565b915050610911565b5060405162461bcd60e51b81526004016102ad9061514d565b60006109e282613829565b92915050565b60006109f26138f8565b60006109fd87613951565b600081815260a56020526040902054909150600160ff9091161115610a345760405162461bcd60e51b81526004016102ad9061516d565b60408088015190516301a86b5560e41b815273__SignatureValidator____________________91631a86b55091610a73919085908b9060040161518d565b602060405180830381865af4158015610a90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab491906151b4565b610ad05760405162461bcd60e51b81526004016102ad906151d1565b637fffffff8310610b0c5760405162461bcd60e51b815260206004820152600660248201526504c42433033360d41b60448201526064016102ad565b6000610b1b8887878786613b84565b905061012f8101610b575760405162461bcd60e51b81526020600482015260066024820152654c424330333160d01b60448201526064016102ad565b61012e8101610b915760405162461bcd60e51b815260206004820152600660248201526526212198199960d11b60448201526064016102ad565b6101308101610bcb5760405162461bcd60e51b81526020600482015260066024820152654c424330333360d01b60448201526064016102ad565b6101318101610c055760405162461bcd60e51b8152602060048201526006602482015265131090cc0ccd60d21b60448201526064016102ad565b6103848101610c3f5760405162461bcd60e51b81526020600482015260066024820152654c424330333560d01b60448201526064016102ad565b6000811380610c4f575060c71981145b80610c5b575060631981145b610c905760405162461bcd60e51b815260206004820152600660248201526526212198199b60d11b60448201526064016102ad565b6000828152609c6020526040902054610cb3908990839063ffffffff1687613c56565b15610d845760e08801516040808a01516001600160a01b031660009081526099602052908120549091610ce591613fb7565b905080609960008b604001516001600160a01b03166001600160a01b031681526020019081526020016000206000828254610d2091906151f1565b90915550506040808a01519051600080516020615bef83398151915291610d4a9184908790615204565b60405180910390a160a054600090606490610d6b9063ffffffff1684615225565b610d759190615252565b9050610d813382613fcf565b50505b60c719811480610d95575060631981145b15610e0957600082815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff1916905581518481529081018390527ffb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe910160405180910390a191506111e79050565b60405163fa6ea3e760e01b8152819073__QuotesV2______________________________9063fa6ea3e790610e44908c9085906004016153d2565b60006040518083038186803b158015610e5c57600080fd5b505af4158015610e70573d6000803e3d6000fd5b5050506000848152609c602052604090205463ffffffff16159050610fdb576000838152609c6020526040812054600160201b900460ff1615610ee257610edb828b61026001518c60c001518d6101800151610ecc91906153f4565b610ed691906153f4565b613fb7565b9050610efe565b610efb828b61026001518c60c00151610ed691906153f4565b90505b610f0c8a6040015182613fcf565b6000610f1882846151f1565b9050610f298b61024001518661402e565b60a154811115610fd45760808b01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114610f87576040519150601f19603f3d011682016040523d82523d6000602084013e610f8c565b606091505b50509050600080516020615bcf8339815191528c60800151838389604051610fb79493929190615407565b60405180910390a180610fd257610fd28c6040015183613fcf565b505b5050611180565b61022089015181908015610ff457508961018001518110155b156110e65760008a61010001516001600160a01b03168b610140015163ffffffff168c61018001518d610120015160405161102f919061542f565b600060405180830381858888f193505050503d806000811461106d576040519150601f19603f3d011682016040523d82523d6000602084013e611072565b606091505b505090508a61010001516001600160a01b0316336001600160a01b0316600080516020615c0f8339815191528d61014001518e61018001518f6101200151868b6040516110c395949392919061544b565b60405180910390a380156110e4576101808b01516110e190836151f1565b91505b505b60a15481111561117e5760808a01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611144576040519150601f19603f3d011682016040523d82523d6000602084013e611149565b606091505b50509050600080516020615bcf8339815191528b608001518383886040516111749493929190615407565b60405180910390a1505b505b600083815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff19169055905183815284917f0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2910160405180910390a2509150505b6111f16001606555565b95945050505050565b336000908152609860205260409020548111156112295760405162461bcd60e51b81526004016102ad90615484565b33600090815260986020526040812080548392906112489084906151f1565b9091555050604051600090339083908381818185875af1925050503d806000811461128f576040519150601f19603f3d011682016040523d82523d6000602084013e611294565b606091505b50509050806112b55760405162461bcd60e51b81526004016102ad906154a4565b7f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b6533836040516112e69291906154c4565b60405180910390a15050565b600032331461132c5760405162461bcd60e51b81526020600482015260066024820152654c424330303360d01b60448201526064016102ad565b60008551116113665760405162461bcd60e51b815260206004820152600660248201526504c42433031360d41b60448201526064016102ad565b60008451116113a05760405162461bcd60e51b81526020600482015260066024820152654c424330313760d01b60448201526064016102ad565b6040516020016113af906154dd565b60405160208183030381529060405280519060200120826040516020016113d6919061542f565b6040516020818303038152906040528051906020012014806114415750604051602001611402906154ee565b6040516020818303038152906040528051906020012082604051602001611429919061542f565b60405160208183030381529060405280519060200120145b806114995750604051630c4dee8d60e31b60208201526024016040516020818303038152906040528051906020012082604051602001611481919061542f565b60405160208183030381529060405280519060200120145b6114ce5760405162461bcd60e51b815260206004820152600660248201526509884866062760d31b60448201526064016102ad565b336000908152609960205260409020541580156114f85750336000908152609a6020526040902054155b61152d5760405162461bcd60e51b815260206004820152600660248201526504c42433037360d41b60448201526064016102ad565b336000908152609d6020526040902054156115735760405162461bcd60e51b81526020600482015260066024820152654c424330303960d01b60448201526064016102ad565b604051602001611582906154dd565b60405160208183030381529060405280519060200120826040516020016115a9919061542f565b60405160208183030381529060405280519060200120036115fd57609e543410156115e65760405162461bcd60e51b81526004016102ad90615500565b336000908152609960205260409020349055611702565b60405160200161160c906154ee565b6040516020818303038152906040528051906020012082604051602001611633919061542f565b604051602081830303815290604052805190602001200361168757609e543410156116705760405162461bcd60e51b81526004016102ad90615500565b336000908152609a60205260409020349055611702565b609e54611695906002615225565b3410156116b45760405162461bcd60e51b81526004016102ad90615500565b60006116c1600234615252565b90506116ce600234615520565b156116e3576116de8160016153f4565b6116e5565b805b33600090815260996020908152604080832093909355609a905220555b60a2805490600061171283615134565b90915550506040805160c08101825260a2548082523360208084019182528385018a8152606085018a9052881515608086015260a085018890526000938452609b909152939091208251815590516001820180546001600160a01b0319166001600160a01b03909216919091179055915190919060028201906117959082614fbd565b50606082015160038201906117aa9082614fbd565b50608082015160048201805460ff191691151591909117905560a082015160058201906117d79082614fbd565b505060a254604080519182523460208301523392507fa9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e910160405180910390a25060a2545b949350505050565b61182d33614100565b6118495760405162461bcd60e51b81526004016102ad9061514d565b336000908152609a6020526040812080543492906118689084906153f4565b90915550506040517f873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa99061189f90339034906154c4565b60405180910390a1565b60006118b48261413f565b80156109e25750609e546001600160a01b038316600090815260996020526040902054101592915050565b60006118ea82614100565b80156109e25750609e546001600160a01b0383166000908152609a6020526040902054101592915050565b61191d6138f8565b336000908152609d60205260409020546119625760405162461bcd60e51b81526020600482015260066024820152654c424330323160d01b60448201526064016102ad565b60a054336000908152609d6020526040902054600160201b90910463ffffffff169061198e90436151f1565b10156119c55760405162461bcd60e51b815260206004820152600660248201526526212198191960d11b60448201526064016102ad565b336000908152609a602090815260408083205460999092528220546119ea91906153f4565b336000818152609a6020908152604080832083905560998252808320839055609d909152808220829055519293509183908381818185875af1925050503d8060008114611a53576040519150601f19603f3d011682016040523d82523d6000602084013e611a58565b606091505b5050905080611a795760405162461bcd60e51b81526004016102ad906154a4565b7fa8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d23383604051611aaa9291906154c4565b60405180910390a15050611abe6001606555565b565b6060600082516001600160401b03811115611add57611add614491565b604051908082528060200260200182016040528015611b5257816020015b611b3f6040518060c001604052806000815260200160006001600160a01b031681526020016060815260200160608152602001600015158152602001606081525090565b815260200190600190039081611afb5790505b5090506000805b8451811015611e38576000858281518110611b7657611b76615534565b6020908102919091018101516000818152609b909252604090912060010154909150611baa906001600160a01b031661413f565b80611bd457506000818152609b6020526040902060010154611bd4906001600160a01b0316614100565b8015611bf157506000818152609b602052604090206004015460ff165b15611e25576000818152609b6020908152604091829020825160c0810184528154815260018201546001600160a01b0316928101929092526002810180549293919291840191611c4090614f34565b80601f0160208091040260200160405190810160405280929190818152602001828054611c6c90614f34565b8015611cb95780601f10611c8e57610100808354040283529160200191611cb9565b820191906000526020600020905b815481529060010190602001808311611c9c57829003601f168201915b50505050508152602001600382018054611cd290614f34565b80601f0160208091040260200160405190810160405280929190818152602001828054611cfe90614f34565b8015611d4b5780601f10611d2057610100808354040283529160200191611d4b565b820191906000526020600020905b815481529060010190602001808311611d2e57829003601f168201915b5050509183525050600482015460ff1615156020820152600582018054604090920191611d7790614f34565b80601f0160208091040260200160405190810160405280929190818152602001828054611da390614f34565b8015611df05780601f10611dc557610100808354040283529160200191611df0565b820191906000526020600020905b815481529060010190602001808311611dd357829003601f168201915b505050505081525050848481518110611e0b57611e0b615534565b60200260200101819052508280611e2190615134565b9350505b5080611e3081615134565b915050611b59565b50909392505050565b611e4a3361413f565b611e665760405162461bcd60e51b81526004016102ad9061514d565b336000908152609d602052604090205415611eac5760405162461bcd60e51b81526020600482015260066024820152654c424330323360d01b60448201526064016102ad565b336000818152609d602052604090819020439055517fa6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d869161189f91614d7a565b611ef461417e565b611abe60006141dd565b81611f076128cf565b6001600160a01b0316336001600160a01b03161480611f3f57506000818152609b60205260409020600101546001600160a01b031633145b611f745760405162461bcd60e51b81526020600482015260066024820152654c424330303560d01b60448201526064016102ad565b506000918252609b6020526040909120600401805460ff1916911515919091179055565b600080611fa484612c86565b8460600151856020015160601b8660a00151604051602001611fc9949392919061554a565b604051602081830303815290604052805190602001209050600081609760009054906101000a90046001600160a01b03166001600160a01b0316631d73d5dd6040518163ffffffff1660e01b8152600401600060405180830381865afa158015612037573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261205f91908101906155dc565b604051602001612070929190615610565b60408051601f198184030181529082905260a454639b02794b60e01b835290925073__BtcUtils______________________________91639b02794b916120c3918891869160ff9091169060040161564a565b602060405180830381865af41580156120e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f191906151b4565b600061210f3361413f565b61212b5760405162461bcd60e51b81526004016102ad9061514d565b6121336138f8565b81604001516001600160a01b0316336001600160a01b0316146121815760405162461bcd60e51b8152602060048201526006602482015265131090cc0c8d60d21b60448201526064016102ad565b6101808201516040808401516001600160a01b03166000908152609860205220546121ad9034906153f4565b10156121cb5760405162461bcd60e51b81526004016102ad90615484565b60006121d683613951565b600081815260a5602052604090205490915060ff16156122215760405162461bcd60e51b81526020600482015260066024820152654c424330323560d01b60448201526064016102ad565b61222f836040015134613fcf565b610140830151612242906188b890615682565b63ffffffff165a10156122805760405162461bcd60e51b815260206004820152600660248201526526212198191b60d11b60448201526064016102ad565b60008361010001516001600160a01b031684610140015163ffffffff168561018001518661012001516040516122b6919061542f565b600060405180830381858888f193505050503d80600081146122f4576040519150601f19603f3d011682016040523d82523d6000602084013e6122f9565b606091505b509091505063ffffffff42111561233b5760405162461bcd60e51b81526020600482015260066024820152654c424330323760d01b60448201526064016102ad565b6000828152609c60205260409020805463ffffffff19164263ffffffff161790558015612396576000828152609c602052604090819020805460ff60201b1916600160201b179055840151610180850151612396919061422f565b8361010001516001600160a01b0316336001600160a01b0316600080516020615c0f83398151915286610140015187610180015188610120015186886040516123e395949392919061544b565b60405180910390a3600091825260a56020526040909120805460ff1916600117905590506124116001606555565b919050565b6124238260200151614100565b6124585760405162461bcd60e51b81526020600482015260066024820152654c424330333760d01b60448201526064016102ad565b348261024001518361022001518460a0015185610120015161247a91906153f4565b61248491906153f4565b61248e91906153f4565b11156124c55760405162461bcd60e51b81526020600482015260066024820152654c424330363360d01b60448201526064016102ad565b81610160015163ffffffff164211156125095760405162461bcd60e51b81526020600482015260066024820152654c424330363560d01b60448201526064016102ad565b816101e0015163ffffffff1642111561254d5760405162461bcd60e51b8152602060048201526006602482015265262121981a1b60d11b60448201526064016102ad565b81610200015163ffffffff164311156125915760405162461bcd60e51b81526020600482015260066024820152654c424330343760d01b60448201526064016102ad565b600061259c836109d7565b60208401516040516301a86b5560e41b815291925073__SignatureValidator____________________91631a86b550916125dd918590879060040161518d565b602060405180830381865af41580156125fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061261e91906151b4565b61263a5760405162461bcd60e51b81526004016102ad906151d1565b600081815260a66020908152604080832060a79092529091206001015460ff16156126775760405162461bcd60e51b81526004016102ad906156a6565b80546001600160a01b03161561269f5760405162461bcd60e51b81526004016102ad9061516d565b600082815260a66020908152604091829020865181546001600160a01b03199081166001600160a01b03928316178355928801516001830180549094169116179091559085015185919060028201906126f89082614fbd565b5060608201516003820180546001600160a01b0319166001600160a01b03909216919091179055608082015160048201906127339082614fbd565b5060a0820151600582015560c0820151600682015560e08201516007820180546001600160401b0319166001600160401b0390921691909117905561010082015160088201906127839082614fbd565b506101208201516009820155610140820151600a820180546101608501516101808601516101a08701516101c08801516101e08901516102008a015163ffffffff9889166001600160401b031990971696909617600160201b958916959095029490941763ffffffff60401b1916600160401b61ffff9485160261ffff60501b191617600160501b939092169290920217600160601b600160a01b031916600160601b9186169190910263ffffffff60801b191617600160801b918516919091021763ffffffff60a01b1916600160a01b9390911692909202919091179055610220820151600b82015561024090910151600c90910155600082815260a760209081526040918290204290819055825134815291820152339184917fb1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f910160405180910390a350505050565b6033546001600160a01b031690565b6128e66138f8565b600081815260a66020526040902080546001600160a01b031661291b5760405162461bcd60e51b81526004016102ad906156c6565b600a810154600160801b900463ffffffff164211801561294b5750600a810154600160a01b900463ffffffff1643115b6129805760405162461bcd60e51b81526020600482015260066024820152654c424330343160d01b60448201526064016102ad565b600081600c015482600b0154836005015484600901546129a091906153f4565b6129aa91906153f4565b6129b491906153f4565b6003830154600684015460018501546001600160a01b039081166000908152609a60205260408120549495509216926129ed9190613fb7565b60018501546001600160a01b03166000908152609a6020526040812080549293508392909190612a1e9084906151f1565b90915550506001840154604051600080516020615bef83398151915291612a54916001600160a01b039091169084908990615204565b60405180910390a16003840154604080518581526001600160a01b03909216602083015286917f9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41910160405180910390a2600085815260a66020526040812080546001600160a01b03199081168255600182018054909116905590612adc6002830182614443565b6003820180546001600160a01b0319169055612afc600483016000614443565b600060058301819055600683018190556007830180546001600160401b0319169055612b2c906008840190614443565b50600060098201819055600a820180546001600160c01b0319169055600b8201819055600c90910181905585815260a760205260408082206001908101805460ff19169091179055516001600160a01b0384169085908381818185875af1925050503d8060008114612bba576040519150601f19603f3d011682016040523d82523d6000602084013e612bbf565b606091505b5050905080612bf95760405162461bcd60e51b8152602060048201526006602482015265131090cc0d0d60d21b60448201526064016102ad565b5050505050612c086001606555565b50565b612c143361413f565b612c305760405162461bcd60e51b81526004016102ad9061514d565b3360009081526099602052604081208054349290612c4f9084906153f4565b90915550506040517f456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af849061189f90339034906154c4565b60006109e282613951565b612c9a3361413f565b612cb65760405162461bcd60e51b81526004016102ad9061514d565b611abe3334613fcf565b612cc86138f8565b612cd133614100565b612ced5760405162461bcd60e51b81526004016102ad9061514d565b600085815260a7602052604090206001015460ff1615612d1f5760405162461bcd60e51b81526004016102ad906156a6565b600085815260a66020526040902080546001600160a01b0316612d545760405162461bcd60e51b81526004016102ad906156c6565b60405162f5b49160e01b815260009073__BtcUtils______________________________9062f5b49190612d8c9089906004016156e6565b600060405180830381865af4158015612da9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612dd191908101906156f9565b9050600073__BtcUtils______________________________632d56f32383600181518110612e0257612e02615534565b6020026020010151602001516040518263ffffffff1660e01b8152600401612e2a91906156e6565b600060405180830381865af4158015612e47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612e6f91908101906155dc565b905080516021148015612ea7575080600081518110612e9057612e90615534565b6020910101516001600160f81b031916600160fd1b145b612edc5760405162461bcd60e51b81526020600482015260066024820152654c424330373560d01b60448201526064016102ad565b60005b60018251612eed91906151f1565b8160ff161015612f5f5781612f0382600161580c565b60ff1681518110612f1657612f16615534565b602001015160f81c60f81b828260ff1681518110612f3657612f36615534565b60200101906001600160f81b031916908160001a90535080612f5781615825565b915050612edf565b50600081806020019051810190612f769190615844565b9050808914612fb05760405162461bcd60e51b81526020600482015260066024820152654c424330363960d01b60448201526064016102ad565b60018401546001600160a01b03163314612ff55760405162461bcd60e51b815260206004820152600660248201526509884866068760d31b60448201526064016102ad565b600a84015460975460405163fea8ba6360e01b8152600160501b90920461ffff16916001600160a01b0390911690635b6445879073__BtcUtils______________________________9063fea8ba6390613053908e906004016156e6565b602060405180830381865af4158015613070573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130949190615844565b8a8a8a6040518563ffffffff1660e01b81526004016130b6949392919061585d565b602060405180830381865afa1580156130d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130f79190615844565b121561312e5760405162461bcd60e51b81526020600482015260066024820152654c424330343960d01b60448201526064016102ad565b8260008151811061314157613141615534565b6020026020010151600001516402540be40061315d91906158b9565b6001600160401b0316846009015411156131a25760405162461bcd60e51b81526020600482015260066024820152654c424330363760d01b60448201526064016102ad565b600073__BtcUtils______________________________63c7ce85ac856000815181106131d1576131d1615534565b602090810291909101810151015160a4546040516001600160e01b031960e085901b168152613207929160ff16906004016158e4565b600060405180830381865af4158015613224573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261324c91908101906155dc565b90508080519060200120856008016040516132679190615908565b6040518091039020146132a55760405162461bcd60e51b81526020600482015260066024820152650988486606c760d31b60448201526064016102ad565b604080516102608101825286546001600160a01b0390811682526001880154166020820152600287018054613556938992908401916132e390614f34565b80601f016020809104026020016040519081016040528092919081815260200182805461330f90614f34565b801561335c5780601f106133315761010080835404028352916020019161335c565b820191906000526020600020905b81548152906001019060200180831161333f57829003601f168201915b505050918352505060038201546001600160a01b0316602082015260048201805460409092019161338c90614f34565b80601f01602080910402602001604051908101604052809291908181526020018280546133b890614f34565b80156134055780601f106133da57610100808354040283529160200191613405565b820191906000526020600020905b8154815290600101906020018083116133e857829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b606082015260088201805460809092019161344390614f34565b80601f016020809104026020016040519081016040528092919081815260200182805461346f90614f34565b80156134bc5780601f10613491576101008083540402835291602001916134bc565b820191906000526020600020905b81548152906001019060200180831161349f57829003601f168201915b505050918352505060098201546020820152600a82015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b90910416610100820152600b820154610120820152600c9091015461014090910152838a61428e565b156135f957600685015460018601546001600160a01b03166000908152609a6020526040812054909161358891613fb7565b60018701546001600160a01b03166000908152609a60205260408120805492935083929091906135b99084906151f1565b90915550506001860154604051600080516020615bef833981519152916135ef916001600160a01b039091169084908790615204565b60405180910390a1505b6001850154600586015460098701546000926001600160a01b03169161361e916153f4565b604051600081818185875af1925050503d806000811461365a576040519150601f19603f3d011682016040523d82523d6000602084013e61365f565b606091505b50509050806136995760405162461bcd60e51b815260206004820152600660248201526504c42433035360d41b60448201526064016102ad565b6136a786600b01548c61402e565b600083815260a66020526040812080546001600160a01b031990811682556001820180549091169055906136de6002830182614443565b6003820180546001600160a01b03191690556136fe600483016000614443565b600060058301819055600683018190556007830180546001600160401b031916905561372e906008840190614443565b50600060098201819055600a820180546001600160c01b0319169055600b8201819055600c90910181905583815260a760205260408082206001908101805460ff191690911790555184917fb781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb38491a25050505050506137ac6001606555565b5050505050565b6137bb61417e565b6001600160a01b0381166138205760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ad565b612c08816141dd565b80516000906001600160a01b0316301461386e5760405162461bcd60e51b8152602060048201526006602482015265262121981a9b60d11b60448201526064016102ad565b60405163025018e760e31b815273__QuotesV2______________________________90631280c738906138a590859060040161597e565b600060405180830381865af41580156138c2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526138ea91908101906155dc565b805190602001209050919050565b60026065540361394a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016102ad565b6002606555565b600081602001516001600160a01b0316306001600160a01b0316146139a15760405162461bcd60e51b81526020600482015260066024820152654c424330353160d01b60448201526064016102ad565b6101008201516097546001600160a01b039182169116036139ed5760405162461bcd60e51b8152602060048201526006602482015265262121981a9960d11b60448201526064016102ad565b81606001515160151480613a0657508160600151516021145b613a3b5760405162461bcd60e51b81526020600482015260066024820152654c424330353360d01b60448201526064016102ad565b8160a0015151601514613a795760405162461bcd60e51b8152602060048201526006602482015265131090cc0d4d60d21b60448201526064016102ad565b609f548261026001518361024001518460c00151856101800151613a9d91906153f4565b613aa791906153f4565b613ab191906153f4565b1015613ae85760405162461bcd60e51b81526020600482015260066024820152654c424330353560d01b60448201526064016102ad565b816101c0015163ffffffff16826101a0015163ffffffff16613b0a9190615b18565b6001600160401b031663ffffffff1015613b4f5760405162461bcd60e51b81526020600482015260066024820152654c424330373160d01b60448201526064016102ad565b60405162773b7960e01b815273__QuotesV2______________________________9062773b79906138a5908590600401615b38565b609754606086015160a08701516000848152609c602052604081205490936001600160a01b031692636adc013392899288928a92899230919063ffffffff1615801590613be6575060008b8152609c6020526040902054600160201b900460ff165b6040518963ffffffff1660e01b8152600401613c09989796959493929190615b4b565b6020604051808303816000875af1158015613c28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c4c9190615844565b9695505050505050565b60008084138015613c9a57508461026001518561024001518660c00151876101800151613c8391906153f4565b613c8d91906153f4565b613c9791906153f4565b84105b15613ca75750600061181c565b60975460405163bd0c1fff60e01b8152600481018490526000916001600160a01b03169063bd0c1fff90602401600060405180830381865afa158015613cf1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613d1991908101906155dc565b90506000815111613d635760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a5908189b1bd8dac81a195a59da1d60621b60448201526064016102ad565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc90613d9d9085906004016156e6565b602060405180830381865af4158015613dba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613dde9190615844565b90506000876101c00151886101a00151613df89190615682565b63ffffffff16905080821115613e14576000935050505061181c565b85600003613e28576001935050505061181c565b6097546102008901516000916001600160a01b03169063bd0c1fff90600190613e559061ffff168a6153f4565b613e5f91906151f1565b6040518263ffffffff1660e01b8152600401613e7d91815260200190565b600060405180830381865afa158015613e9a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613ec291908101906155dc565b90506000815111613efe5760405162461bcd60e51b81526020600482015260066024820152650988486606a760d31b60448201526064016102ad565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc90613f389085906004016156e6565b602060405180830381865af4158015613f55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f799190615844565b9050896101e0015163ffffffff1681613f9291906153f4565b881115613fa75760019550505050505061181c565b5060009998505050505050505050565b6000818310613fc65781613fc8565b825b9392505050565b6001600160a01b03821660009081526098602052604081208054839290613ff79084906153f4565b90915550506040517f42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f53906112e690849084906154c4565b81156140fc5760a9546040516000916001600160a01b03169084908381818185875af1925050503d8060008114614081576040519150601f19603f3d011682016040523d82523d6000602084013e614086565b606091505b50509050806140c05760405162461bcd60e51b8152602060048201526006602482015265131090cc0dcd60d21b60448201526064016102ad565b817f58e13ac0d5c8d27d14009841e72ac8b1858e2709c2c99af2075d9bb5f340ecfc846040516140f291815260200190565b60405180910390a2505b5050565b6001600160a01b0381166000908152609a6020526040812054158015906109e25750506001600160a01b03166000908152609d60205260409020541590565b6001600160a01b038116600090815260996020526040812054158015906109e25750506001600160a01b03166000908152609d60205260409020541590565b336141876128cf565b6001600160a01b031614611abe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102ad565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216600090815260986020526040812080548392906142579084906151f1565b90915550506040517f8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc0064587906112e690849084906154c4565b6097546040516339cf1b2560e11b81526004810183905260009182916001600160a01b039091169063739e364a90602401600060405180830381865afa1580156142dc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261430491908101906155dc565b905060008151116143405760405162461bcd60e51b81526020600482015260066024820152654c424330353960d01b60448201526064016102ad565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc9061437a9085906004016156e6565b602060405180830381865af4158015614397573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906143bb9190615844565b60a3546101c0880151600088815260a7602052604090205492935090916143e89163ffffffff16906153f4565b6143f291906153f4565b81111561440457600192505050613fc8565b856101e0015163ffffffff16421180614427575085610200015163ffffffff1643115b1561443757600192505050613fc8565b50600095945050505050565b50805461444f90614f34565b6000825580601f1061445f575050565b601f016020900490600052602060002090810190612c0891905b8082111561448d5760008155600101614479565b5090565b634e487b7160e01b600052604160045260246000fd5b60405161026081016001600160401b03811182821017156144ca576144ca614491565b60405290565b60405161028081016001600160401b03811182821017156144ca576144ca614491565b604051608081016001600160401b03811182821017156144ca576144ca614491565b604051601f8201601f191681016001600160401b038111828210171561453d5761453d614491565b604052919050565b60006001600160401b0382111561455e5761455e614491565b50601f01601f191660200190565b600082601f83011261457d57600080fd5b813561459061458b82614545565b614515565b8181528460208386010111156145a557600080fd5b816020850160208301376000918101602001919091529392505050565b600080604083850312156145d557600080fd5b82356001600160401b03808211156145ec57600080fd5b6145f88683870161456c565b9350602085013591508082111561460e57600080fd5b5061461b8582860161456c565b9150509250929050565b6001600160a01b0381168114612c0857600080fd5b803561241181614625565b8035600781900b811461241157600080fd5b803563ffffffff8116811461241157600080fd5b803561ffff8116811461241157600080fd5b6000610260828403121561469057600080fd5b6146986144a7565b90506146a38261463a565b81526146b16020830161463a565b602082015260408201356001600160401b03808211156146d057600080fd5b6146dc8583860161456c565b60408401526146ed6060850161463a565b6060840152608084013591508082111561470657600080fd5b6147128583860161456c565b608084015260a084013560a084015260c084013560c084015261473760e08501614645565b60e08401526101009150818401358181111561475257600080fd5b61475e8682870161456c565b8385015250505061012080830135818301525061014061477f818401614657565b90820152610160614791838201614657565b908201526101806147a383820161466b565b908201526101a06147b583820161466b565b908201526101c06147c7838201614657565b908201526101e06147d9838201614657565b908201526102006147eb838201614657565b9082015261022082810135908201526102409182013591810191909152919050565b60006020828403121561481f57600080fd5b81356001600160401b0381111561483557600080fd5b61181c8482850161467d565b80356001600160601b03198116811461241157600080fd5b8015158114612c0857600080fd5b803561241181614859565b6000610280828403121561488557600080fd5b61488d6144d0565b905061489882614841565b81526148a66020830161463a565b60208201526148b76040830161463a565b604082015260608201356001600160401b03808211156148d657600080fd5b6148e28583860161456c565b60608401526148f36080850161463a565b608084015260a084013591508082111561490c57600080fd5b6149188583860161456c565b60a084015260c084013560c084015260e084013560e0840152610100915061494182850161463a565b828401526101209150818401358181111561495b57600080fd5b6149678682870161456c565b8385015250505061014061497c818401614657565b9082015261016061498e838201614645565b9082015261018082810135908201526101a06149ab818401614657565b908201526101c06149bd838201614657565b908201526101e06149cf838201614657565b908201526102006149e183820161466b565b908201526102206149f3838201614867565b9082015261024082810135908201526102609182013591810191909152919050565b600080600080600060a08688031215614a2d57600080fd5b85356001600160401b0380821115614a4457600080fd5b614a5089838a01614872565b96506020880135915080821115614a6657600080fd5b614a7289838a0161456c565b95506040880135915080821115614a8857600080fd5b614a9489838a0161456c565b94506060880135915080821115614aaa57600080fd5b50614ab78882890161456c565b95989497509295608001359392505050565b600060208284031215614adb57600080fd5b5035919050565b60008060008060808587031215614af857600080fd5b84356001600160401b0380821115614b0f57600080fd5b614b1b8883890161456c565b95506020870135915080821115614b3157600080fd5b614b3d8883890161456c565b945060408701359150614b4f82614859565b90925060608601359080821115614b6557600080fd5b50614b728782880161456c565b91505092959194509250565b600060208284031215614b9057600080fd5b8135613fc881614625565b60006001600160401b03821115614bb457614bb4614491565b5060051b60200190565b60006020808385031215614bd157600080fd5b82356001600160401b03811115614be757600080fd5b8301601f81018513614bf857600080fd5b8035614c0661458b82614b9b565b81815260059190911b82018301908381019087831115614c2557600080fd5b928401925b82841015614c4357833582529284019290840190614c2a565b979650505050505050565b6001600160a01b03169052565b60005b83811015614c76578181015183820152602001614c5e565b50506000910152565b60008151808452614c97816020860160208601614c5b565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015614d6c57888303603f19018552815180518452878101516001600160a01b0316888501528681015160c088860181905290614d1382870182614c7f565b91505060608083015186830382880152614d2d8382614c7f565b925050506080808301511515818701525060a08083015192508582038187015250614d588183614c7f565b968901969450505090860190600101614cd2565b509098975050505050505050565b6001600160a01b0391909116815260200190565b60008060408385031215614da157600080fd5b823591506020830135614db381614859565b809150509250929050565b60008060408385031215614dd157600080fd5b82356001600160401b0380821115614de857600080fd5b6145f886838701614872565b600060208284031215614e0657600080fd5b81356001600160401b03811115614e1c57600080fd5b61181c84828501614872565b60008060408385031215614e3b57600080fd5b82356001600160401b0380821115614e5257600080fd5b6145f88683870161467d565b600080600080600060a08688031215614e7657600080fd5b853594506020808701356001600160401b0380821115614e9557600080fd5b614ea18a838b0161456c565b965060408901359550606089013594506080890135915080821115614ec557600080fd5b508701601f81018913614ed757600080fd5b8035614ee561458b82614b9b565b81815260059190911b8201830190838101908b831115614f0457600080fd5b928401925b82841015614f2257833582529284019290840190614f09565b80955050505050509295509295909350565b600181811c90821680614f4857607f821691505b602082108103614f6857634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115614fb857600081815260208120601f850160051c81016020861015614f955750805b601f850160051c820191505b81811015614fb457828155600101614fa1565b5050505b505050565b81516001600160401b03811115614fd657614fd6614491565b614fea81614fe48454614f34565b84614f6e565b602080601f83116001811461501f57600084156150075750858301515b600019600386901b1c1916600185901b178555614fb4565b600085815260208120601f198616915b8281101561504e5788860151825594840194600190910190840161502f565b508582101561506c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000815461508981614f34565b8085526020600183811680156150a657600181146150c0576150ee565b60ff1985168884015283151560051b8801830195506150ee565b866000528260002060005b858110156150e65781548a82018601529083019084016150cb565b890184019650505b505050505092915050565b60408152600061510c604083018561507c565b82810360208401526111f1818561507c565b634e487b7160e01b600052601160045260246000fd5b6000600182016151465761514661511e565b5060010190565b6020808252600690820152654c424330303160d01b604082015260600190565b60208082526006908201526509884866064760d31b604082015260600190565b60018060a01b03841681528260208201526060604082015260006111f16060830184614c7f565b6000602082840312156151c657600080fd5b8151613fc881614859565b6020808252600690820152654c424330323960d01b604082015260600190565b818103818111156109e2576109e261511e565b6001600160a01b039390931683526020830191909152604082015260600190565b80820281158282048414176109e2576109e261511e565b634e487b7160e01b600052601260045260246000fd5b6000826152615761526161523c565b500490565b80516001600160601b03191682526000610280602083015161528b6020860182614c4e565b50604083015161529e6040860182614c4e565b5060608301518160608601526152b682860182614c7f565b91505060808301516152cb6080860182614c4e565b5060a083015184820360a08601526152e38282614c7f565b91505060c083015160c085015260e083015160e08501526101008084015161530d82870182614c4e565b505061012080840151858303828701526153278382614c7f565b92505050610140808401516153438287018263ffffffff169052565b50506101608084015161535a8287018260070b9052565b505061018083810151908501526101a08084015163ffffffff908116918601919091526101c0808501518216908601526101e080850151909116908501526102008084015161ffff16908501526102208084015115159085015261024080840151908501526102609283015192909301919091525090565b6040815260006153e56040830185615266565b90508260208301529392505050565b808201808211156109e2576109e261511e565b6001600160a01b03949094168452602084019290925215156040830152606082015260800190565b60008251615441818460208701614c5b565b9190910192915050565b63ffffffff8616815284602082015260a06040820152600061547060a0830186614c7f565b931515606083015250608001529392505050565b6020808252600690820152654c424330313960d01b604082015260600190565b60208082526006908201526504c42433032360d41b604082015260600190565b6001600160a01b03929092168252602082015260400190565b643832b3b4b760d91b815260050190565b651c1959dbdd5d60d21b815260060190565b60208082526006908201526509884866060760d31b604082015260600190565b60008261552f5761552f61523c565b500690565b634e487b7160e01b600052603260045260246000fd5b84815260008451615562816020850160208901614c5b565b808301905060018060601b0319851660208201528351615589816034840160208801614c5b565b016034019695505050505050565b600082601f8301126155a857600080fd5b81516155b661458b82614545565b8181528460208386010111156155cb57600080fd5b61181c826020830160208701614c5b565b6000602082840312156155ee57600080fd5b81516001600160401b0381111561560457600080fd5b61181c84828501615597565b600160fd1b8152826001820152607560f81b60218201526000825161563c816022850160208701614c5b565b919091016022019392505050565b60608152600061565d6060830186614c7f565b828103602084015261566f8186614c7f565b9150508215156040830152949350505050565b63ffffffff81811683821601908082111561569f5761569f61511e565b5092915050565b602080825260069082015265131090cc0d8d60d21b604082015260600190565b602080825260069082015265262121981a1960d11b604082015260600190565b602081526000613fc86020830184614c7f565b6000602080838503121561570c57600080fd5b82516001600160401b038082111561572357600080fd5b818501915085601f83011261573757600080fd5b815161574561458b82614b9b565b81815260059190911b8301840190848101908883111561576457600080fd5b8585015b838110156157ff578051858111156157805760008081fd5b86016080818c03601f19018113156157985760008081fd5b6157a06144f3565b8983015188811681146157b35760008081fd5b8152604083810151898111156157c95760008081fd5b6157d78f8d83880101615597565b838d015250606084810151918301919091529190920151908201528352918601918601615768565b5098975050505050505050565b60ff81811683821601908111156109e2576109e261511e565b600060ff821660ff810361583b5761583b61511e565b60010192915050565b60006020828403121561585657600080fd5b5051919050565b600060808201868352602086818501528560408501526080606085015281855180845260a086019150828701935060005b818110156158aa5784518352938301939183019160010161588e565b50909998505050505050505050565b6001600160401b038181168382160280821691908281146158dc576158dc61511e565b505092915050565b6040815260006158f76040830185614c7f565b905082151560208301529392505050565b600080835461591681614f34565b6001828116801561592e576001811461594357615972565b60ff1984168752821515830287019450615972565b8760005260208060002060005b858110156159695781548a820152908401908201615950565b50505082870194505b50929695505050505050565b60208152615990602082018351614c4e565b600060208301516159a46040840182614c4e565b5060408301516102608060608501526159c1610280850183614c7f565b915060608501516159d56080860182614c4e565b506080850151601f19808685030160a08701526159f28483614c7f565b935060a087015160c087015260c087015160e087015260e08701519150610100615a208188018460070b9052565b80880151925050610120818786030181880152615a3d8584614c7f565b908801516101408881019190915288015190945091506101609050615a698187018363ffffffff169052565b8601519050610180615a828682018363ffffffff169052565b86015190506101a0615a998682018361ffff169052565b86015190506101c0615ab08682018361ffff169052565b86015190506101e0615ac98682018363ffffffff169052565b8601519050610200615ae28682018363ffffffff169052565b8601519050610220615afb8682018363ffffffff169052565b860151610240868101919091529095015193019290925250919050565b6001600160401b0381811683821601908082111561569f5761569f61511e565b602081526000613fc86020830184615266565b6000610100808352615b5f8184018c614c7f565b90508960208401528281036040840152615b79818a614c7f565b90508760608401528281036080840152615b938188614c7f565b6001600160a01b03871660a085015283810360c08501529050615bb68186614c7f565b91505082151560e0830152999850505050505050505056fe3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f69685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80da26469706673582212204e99dace3bb84142996a643a4485ba890de7b19f3ed4b43eb3e798078eec4be264736f6c63430008120033", - "deployedBytecode": "0x6080604052600436106102695760003560e01c80630220f41d146102bd57806304ade855146102dd5780630a7bf57a146103095780630a9cb4a71461031e578063221400091461033d5780632d67952c1461035d5780632e1a7d4d1461037d57806333f07ad31461039d57806341705518146103b2578063418663a2146103c55780634198687e146103ef578063457385f2146103f75780634d0ec9711461042757806354015ee01461044757806359c153be1461047a57806363c671351461048f578063668dbd83146104a557806369652fcf146104d2578063710738b1146104e7578063715018a61461051457806372cbf4e81461052957806379b9550b146105495780637aefa8c2146105695780638490a8df1461057c5780638beb537a146105925780638d597939146105a55780638da5cb5b146105bc5780638f91797d146105d15780639b56d6c9146105f15780639cd6557f146106275780639d79b59b1461063c5780639e81699914610665578063a4a5ba501461066d578063a93bb24714610682578063ae76ce8614610699578063ae93b67b146106b0578063b3a849aa146106c7578063bd519eff146106e7578063bd5798c31461071d578063be6de4eb1461073f578063c525cdd814610754578063c72131631461076b578063cfb92f0a14610786578063d0e30db01461079d578063d6c70de8146107a5578063e1de16c6146107c5578063e30e6ea3146107db578063e78cea92146107f1578063e830b69014610811578063e8fcce7114610826578063f2fde38b1461083c578063f8b2cb4f1461085c578063fa88dcde14610892578063fb32c508146108a757600080fd5b366102b8576097546001600160a01b031633146102b65760405162461bcd60e51b81526020600482015260066024820152654c424330303760d01b60448201526064015b60405180910390fd5b005b600080fd5b3480156102c957600080fd5b506102b66102d83660046145c2565b6108c5565b3480156102e957600080fd5b506102f2600181565b60405160ff90911681526020015b60405180910390f35b34801561031557600080fd5b506102f2600281565b34801561032a57600080fd5b5060a2545b604051908152602001610300565b34801561034957600080fd5b5061032f61035836600461480d565b6109d7565b34801561036957600080fd5b5061032f610378366004614a15565b6109e8565b34801561038957600080fd5b506102b6610398366004614ac9565b6111fa565b3480156103a957600080fd5b5060a15461032f565b61032f6103c0366004614ae2565b6112f2565b3480156103d157600080fd5b506103dc6101301981565b60405160019190910b8152602001610300565b6102b6611824565b34801561040357600080fd5b50610417610412366004614b7e565b6118a9565b6040519015158152602001610300565b34801561043357600080fd5b50610417610442366004614b7e565b6118df565b34801561045357600080fd5b50610417610462366004614ac9565b600090815260a7602052604090206001015460ff1690565b34801561048657600080fd5b506102b6611915565b34801561049b57600080fd5b5061032f60a85481565b3480156104b157600080fd5b506104c56104c0366004614bbe565b611ac0565b6040516103009190614cab565b3480156104de57600080fd5b506102b6611e41565b3480156104f357600080fd5b5060a954610507906001600160a01b031681565b6040516103009190614d7a565b34801561052057600080fd5b506102b6611eec565b34801561053557600080fd5b506102b6610544366004614d8e565b611efe565b34801561055557600080fd5b50610417610564366004614dbe565b611f98565b610417610577366004614df4565b612104565b34801561058857600080fd5b5061032f60a25481565b6102b66105a0366004614e28565b612416565b3480156105b157600080fd5b506103dc61012c1981565b3480156105c857600080fd5b506105076128cf565b3480156105dd57600080fd5b506102b66105ec366004614ac9565b6128de565b3480156105fd57600080fd5b5061032f61060c366004614b7e565b6001600160a01b031660009081526099602052604090205490565b34801561063357600080fd5b506102f2600081565b34801561064857600080fd5b506106526188b881565b60405161ffff9091168152602001610300565b6102b6612c0b565b34801561067957600080fd5b5061032f600181565b34801561068e57600080fd5b506103dc61012d1981565b3480156106a557600080fd5b506103dc61012b1981565b3480156106bc57600080fd5b506103dc6103831981565b3480156106d357600080fd5b5061032f6106e2366004614df4565b612c86565b3480156106f357600080fd5b5061032f610702366004614b7e565b6001600160a01b03166000908152609a602052604090205490565b34801561072957600080fd5b5060a054600160201b900463ffffffff1661032f565b34801561074b57600080fd5b5061032f600081565b34801561076057600080fd5b506103dc61012e1981565b34801561077757600080fd5b5060a05463ffffffff1661032f565b34801561079257600080fd5b506103dc61012f1981565b6102b6612c91565b3480156107b157600080fd5b506102b66107c0366004614e5e565b612cc0565b3480156107d157600080fd5b506106526108fc81565b3480156107e757600080fd5b506103dc60c71981565b3480156107fd57600080fd5b50609754610507906001600160a01b031681565b34801561081d57600080fd5b50609e5461032f565b34801561083257600080fd5b506103dc60631981565b34801561084857600080fd5b506102b6610857366004614b7e565b6137b3565b34801561086857600080fd5b5061032f610877366004614b7e565b6001600160a01b031660009081526098602052604090205490565b34801561089e57600080fd5b50609f5461032f565b3480156108b357600080fd5b506097546001600160a01b0316610507565b600082511180156108d7575060008151115b61090c5760405162461bcd60e51b8152602060048201526006602482015265262121981b9b60d11b60448201526064016102ad565b600060015b60a25481116109be576000818152609b6020526040902060018101549092506001600160a01b031633036109ac576002820161094d8582614fbd565b506003820161095c8482614fbd565b50336001600160a01b03167fc15f90eb34a098bb02f2641dff62935246fb005d8f06e13d5cc6be0bddcce8e3836002018460030160405161099e9291906150f9565b60405180910390a250505050565b806109b681615134565b915050610911565b5060405162461bcd60e51b81526004016102ad9061514d565b60006109e282613829565b92915050565b60006109f26138f8565b60006109fd87613951565b600081815260a56020526040902054909150600160ff9091161115610a345760405162461bcd60e51b81526004016102ad9061516d565b60408088015190516301a86b5560e41b815273__SignatureValidator____________________91631a86b55091610a73919085908b9060040161518d565b602060405180830381865af4158015610a90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab491906151b4565b610ad05760405162461bcd60e51b81526004016102ad906151d1565b637fffffff8310610b0c5760405162461bcd60e51b815260206004820152600660248201526504c42433033360d41b60448201526064016102ad565b6000610b1b8887878786613b84565b905061012f8101610b575760405162461bcd60e51b81526020600482015260066024820152654c424330333160d01b60448201526064016102ad565b61012e8101610b915760405162461bcd60e51b815260206004820152600660248201526526212198199960d11b60448201526064016102ad565b6101308101610bcb5760405162461bcd60e51b81526020600482015260066024820152654c424330333360d01b60448201526064016102ad565b6101318101610c055760405162461bcd60e51b8152602060048201526006602482015265131090cc0ccd60d21b60448201526064016102ad565b6103848101610c3f5760405162461bcd60e51b81526020600482015260066024820152654c424330333560d01b60448201526064016102ad565b6000811380610c4f575060c71981145b80610c5b575060631981145b610c905760405162461bcd60e51b815260206004820152600660248201526526212198199b60d11b60448201526064016102ad565b6000828152609c6020526040902054610cb3908990839063ffffffff1687613c56565b15610d845760e08801516040808a01516001600160a01b031660009081526099602052908120549091610ce591613fb7565b905080609960008b604001516001600160a01b03166001600160a01b031681526020019081526020016000206000828254610d2091906151f1565b90915550506040808a01519051600080516020615bef83398151915291610d4a9184908790615204565b60405180910390a160a054600090606490610d6b9063ffffffff1684615225565b610d759190615252565b9050610d813382613fcf565b50505b60c719811480610d95575060631981145b15610e0957600082815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff1916905581518481529081018390527ffb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe910160405180910390a191506111e79050565b60405163fa6ea3e760e01b8152819073__QuotesV2______________________________9063fa6ea3e790610e44908c9085906004016153d2565b60006040518083038186803b158015610e5c57600080fd5b505af4158015610e70573d6000803e3d6000fd5b5050506000848152609c602052604090205463ffffffff16159050610fdb576000838152609c6020526040812054600160201b900460ff1615610ee257610edb828b61026001518c60c001518d6101800151610ecc91906153f4565b610ed691906153f4565b613fb7565b9050610efe565b610efb828b61026001518c60c00151610ed691906153f4565b90505b610f0c8a6040015182613fcf565b6000610f1882846151f1565b9050610f298b61024001518661402e565b60a154811115610fd45760808b01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114610f87576040519150601f19603f3d011682016040523d82523d6000602084013e610f8c565b606091505b50509050600080516020615bcf8339815191528c60800151838389604051610fb79493929190615407565b60405180910390a180610fd257610fd28c6040015183613fcf565b505b5050611180565b61022089015181908015610ff457508961018001518110155b156110e65760008a61010001516001600160a01b03168b610140015163ffffffff168c61018001518d610120015160405161102f919061542f565b600060405180830381858888f193505050503d806000811461106d576040519150601f19603f3d011682016040523d82523d6000602084013e611072565b606091505b505090508a61010001516001600160a01b0316336001600160a01b0316600080516020615c0f8339815191528d61014001518e61018001518f6101200151868b6040516110c395949392919061544b565b60405180910390a380156110e4576101808b01516110e190836151f1565b91505b505b60a15481111561117e5760808a01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611144576040519150601f19603f3d011682016040523d82523d6000602084013e611149565b606091505b50509050600080516020615bcf8339815191528b608001518383886040516111749493929190615407565b60405180910390a1505b505b600083815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff19169055905183815284917f0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2910160405180910390a2509150505b6111f16001606555565b95945050505050565b336000908152609860205260409020548111156112295760405162461bcd60e51b81526004016102ad90615484565b33600090815260986020526040812080548392906112489084906151f1565b9091555050604051600090339083908381818185875af1925050503d806000811461128f576040519150601f19603f3d011682016040523d82523d6000602084013e611294565b606091505b50509050806112b55760405162461bcd60e51b81526004016102ad906154a4565b7f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b6533836040516112e69291906154c4565b60405180910390a15050565b600032331461132c5760405162461bcd60e51b81526020600482015260066024820152654c424330303360d01b60448201526064016102ad565b60008551116113665760405162461bcd60e51b815260206004820152600660248201526504c42433031360d41b60448201526064016102ad565b60008451116113a05760405162461bcd60e51b81526020600482015260066024820152654c424330313760d01b60448201526064016102ad565b6040516020016113af906154dd565b60405160208183030381529060405280519060200120826040516020016113d6919061542f565b6040516020818303038152906040528051906020012014806114415750604051602001611402906154ee565b6040516020818303038152906040528051906020012082604051602001611429919061542f565b60405160208183030381529060405280519060200120145b806114995750604051630c4dee8d60e31b60208201526024016040516020818303038152906040528051906020012082604051602001611481919061542f565b60405160208183030381529060405280519060200120145b6114ce5760405162461bcd60e51b815260206004820152600660248201526509884866062760d31b60448201526064016102ad565b336000908152609960205260409020541580156114f85750336000908152609a6020526040902054155b61152d5760405162461bcd60e51b815260206004820152600660248201526504c42433037360d41b60448201526064016102ad565b336000908152609d6020526040902054156115735760405162461bcd60e51b81526020600482015260066024820152654c424330303960d01b60448201526064016102ad565b604051602001611582906154dd565b60405160208183030381529060405280519060200120826040516020016115a9919061542f565b60405160208183030381529060405280519060200120036115fd57609e543410156115e65760405162461bcd60e51b81526004016102ad90615500565b336000908152609960205260409020349055611702565b60405160200161160c906154ee565b6040516020818303038152906040528051906020012082604051602001611633919061542f565b604051602081830303815290604052805190602001200361168757609e543410156116705760405162461bcd60e51b81526004016102ad90615500565b336000908152609a60205260409020349055611702565b609e54611695906002615225565b3410156116b45760405162461bcd60e51b81526004016102ad90615500565b60006116c1600234615252565b90506116ce600234615520565b156116e3576116de8160016153f4565b6116e5565b805b33600090815260996020908152604080832093909355609a905220555b60a2805490600061171283615134565b90915550506040805160c08101825260a2548082523360208084019182528385018a8152606085018a9052881515608086015260a085018890526000938452609b909152939091208251815590516001820180546001600160a01b0319166001600160a01b03909216919091179055915190919060028201906117959082614fbd565b50606082015160038201906117aa9082614fbd565b50608082015160048201805460ff191691151591909117905560a082015160058201906117d79082614fbd565b505060a254604080519182523460208301523392507fa9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e910160405180910390a25060a2545b949350505050565b61182d33614100565b6118495760405162461bcd60e51b81526004016102ad9061514d565b336000908152609a6020526040812080543492906118689084906153f4565b90915550506040517f873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa99061189f90339034906154c4565b60405180910390a1565b60006118b48261413f565b80156109e25750609e546001600160a01b038316600090815260996020526040902054101592915050565b60006118ea82614100565b80156109e25750609e546001600160a01b0383166000908152609a6020526040902054101592915050565b61191d6138f8565b336000908152609d60205260409020546119625760405162461bcd60e51b81526020600482015260066024820152654c424330323160d01b60448201526064016102ad565b60a054336000908152609d6020526040902054600160201b90910463ffffffff169061198e90436151f1565b10156119c55760405162461bcd60e51b815260206004820152600660248201526526212198191960d11b60448201526064016102ad565b336000908152609a602090815260408083205460999092528220546119ea91906153f4565b336000818152609a6020908152604080832083905560998252808320839055609d909152808220829055519293509183908381818185875af1925050503d8060008114611a53576040519150601f19603f3d011682016040523d82523d6000602084013e611a58565b606091505b5050905080611a795760405162461bcd60e51b81526004016102ad906154a4565b7fa8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d23383604051611aaa9291906154c4565b60405180910390a15050611abe6001606555565b565b6060600082516001600160401b03811115611add57611add614491565b604051908082528060200260200182016040528015611b5257816020015b611b3f6040518060c001604052806000815260200160006001600160a01b031681526020016060815260200160608152602001600015158152602001606081525090565b815260200190600190039081611afb5790505b5090506000805b8451811015611e38576000858281518110611b7657611b76615534565b6020908102919091018101516000818152609b909252604090912060010154909150611baa906001600160a01b031661413f565b80611bd457506000818152609b6020526040902060010154611bd4906001600160a01b0316614100565b8015611bf157506000818152609b602052604090206004015460ff165b15611e25576000818152609b6020908152604091829020825160c0810184528154815260018201546001600160a01b0316928101929092526002810180549293919291840191611c4090614f34565b80601f0160208091040260200160405190810160405280929190818152602001828054611c6c90614f34565b8015611cb95780601f10611c8e57610100808354040283529160200191611cb9565b820191906000526020600020905b815481529060010190602001808311611c9c57829003601f168201915b50505050508152602001600382018054611cd290614f34565b80601f0160208091040260200160405190810160405280929190818152602001828054611cfe90614f34565b8015611d4b5780601f10611d2057610100808354040283529160200191611d4b565b820191906000526020600020905b815481529060010190602001808311611d2e57829003601f168201915b5050509183525050600482015460ff1615156020820152600582018054604090920191611d7790614f34565b80601f0160208091040260200160405190810160405280929190818152602001828054611da390614f34565b8015611df05780601f10611dc557610100808354040283529160200191611df0565b820191906000526020600020905b815481529060010190602001808311611dd357829003601f168201915b505050505081525050848481518110611e0b57611e0b615534565b60200260200101819052508280611e2190615134565b9350505b5080611e3081615134565b915050611b59565b50909392505050565b611e4a3361413f565b611e665760405162461bcd60e51b81526004016102ad9061514d565b336000908152609d602052604090205415611eac5760405162461bcd60e51b81526020600482015260066024820152654c424330323360d01b60448201526064016102ad565b336000818152609d602052604090819020439055517fa6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d869161189f91614d7a565b611ef461417e565b611abe60006141dd565b81611f076128cf565b6001600160a01b0316336001600160a01b03161480611f3f57506000818152609b60205260409020600101546001600160a01b031633145b611f745760405162461bcd60e51b81526020600482015260066024820152654c424330303560d01b60448201526064016102ad565b506000918252609b6020526040909120600401805460ff1916911515919091179055565b600080611fa484612c86565b8460600151856020015160601b8660a00151604051602001611fc9949392919061554a565b604051602081830303815290604052805190602001209050600081609760009054906101000a90046001600160a01b03166001600160a01b0316631d73d5dd6040518163ffffffff1660e01b8152600401600060405180830381865afa158015612037573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261205f91908101906155dc565b604051602001612070929190615610565b60408051601f198184030181529082905260a454639b02794b60e01b835290925073__BtcUtils______________________________91639b02794b916120c3918891869160ff9091169060040161564a565b602060405180830381865af41580156120e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f191906151b4565b600061210f3361413f565b61212b5760405162461bcd60e51b81526004016102ad9061514d565b6121336138f8565b81604001516001600160a01b0316336001600160a01b0316146121815760405162461bcd60e51b8152602060048201526006602482015265131090cc0c8d60d21b60448201526064016102ad565b6101808201516040808401516001600160a01b03166000908152609860205220546121ad9034906153f4565b10156121cb5760405162461bcd60e51b81526004016102ad90615484565b60006121d683613951565b600081815260a5602052604090205490915060ff16156122215760405162461bcd60e51b81526020600482015260066024820152654c424330323560d01b60448201526064016102ad565b61222f836040015134613fcf565b610140830151612242906188b890615682565b63ffffffff165a10156122805760405162461bcd60e51b815260206004820152600660248201526526212198191b60d11b60448201526064016102ad565b60008361010001516001600160a01b031684610140015163ffffffff168561018001518661012001516040516122b6919061542f565b600060405180830381858888f193505050503d80600081146122f4576040519150601f19603f3d011682016040523d82523d6000602084013e6122f9565b606091505b509091505063ffffffff42111561233b5760405162461bcd60e51b81526020600482015260066024820152654c424330323760d01b60448201526064016102ad565b6000828152609c60205260409020805463ffffffff19164263ffffffff161790558015612396576000828152609c602052604090819020805460ff60201b1916600160201b179055840151610180850151612396919061422f565b8361010001516001600160a01b0316336001600160a01b0316600080516020615c0f83398151915286610140015187610180015188610120015186886040516123e395949392919061544b565b60405180910390a3600091825260a56020526040909120805460ff1916600117905590506124116001606555565b919050565b6124238260200151614100565b6124585760405162461bcd60e51b81526020600482015260066024820152654c424330333760d01b60448201526064016102ad565b348261024001518361022001518460a0015185610120015161247a91906153f4565b61248491906153f4565b61248e91906153f4565b11156124c55760405162461bcd60e51b81526020600482015260066024820152654c424330363360d01b60448201526064016102ad565b81610160015163ffffffff164211156125095760405162461bcd60e51b81526020600482015260066024820152654c424330363560d01b60448201526064016102ad565b816101e0015163ffffffff1642111561254d5760405162461bcd60e51b8152602060048201526006602482015265262121981a1b60d11b60448201526064016102ad565b81610200015163ffffffff164311156125915760405162461bcd60e51b81526020600482015260066024820152654c424330343760d01b60448201526064016102ad565b600061259c836109d7565b60208401516040516301a86b5560e41b815291925073__SignatureValidator____________________91631a86b550916125dd918590879060040161518d565b602060405180830381865af41580156125fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061261e91906151b4565b61263a5760405162461bcd60e51b81526004016102ad906151d1565b600081815260a66020908152604080832060a79092529091206001015460ff16156126775760405162461bcd60e51b81526004016102ad906156a6565b80546001600160a01b03161561269f5760405162461bcd60e51b81526004016102ad9061516d565b600082815260a66020908152604091829020865181546001600160a01b03199081166001600160a01b03928316178355928801516001830180549094169116179091559085015185919060028201906126f89082614fbd565b5060608201516003820180546001600160a01b0319166001600160a01b03909216919091179055608082015160048201906127339082614fbd565b5060a0820151600582015560c0820151600682015560e08201516007820180546001600160401b0319166001600160401b0390921691909117905561010082015160088201906127839082614fbd565b506101208201516009820155610140820151600a820180546101608501516101808601516101a08701516101c08801516101e08901516102008a015163ffffffff9889166001600160401b031990971696909617600160201b958916959095029490941763ffffffff60401b1916600160401b61ffff9485160261ffff60501b191617600160501b939092169290920217600160601b600160a01b031916600160601b9186169190910263ffffffff60801b191617600160801b918516919091021763ffffffff60a01b1916600160a01b9390911692909202919091179055610220820151600b82015561024090910151600c90910155600082815260a760209081526040918290204290819055825134815291820152339184917fb1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f910160405180910390a350505050565b6033546001600160a01b031690565b6128e66138f8565b600081815260a66020526040902080546001600160a01b031661291b5760405162461bcd60e51b81526004016102ad906156c6565b600a810154600160801b900463ffffffff164211801561294b5750600a810154600160a01b900463ffffffff1643115b6129805760405162461bcd60e51b81526020600482015260066024820152654c424330343160d01b60448201526064016102ad565b600081600c015482600b0154836005015484600901546129a091906153f4565b6129aa91906153f4565b6129b491906153f4565b6003830154600684015460018501546001600160a01b039081166000908152609a60205260408120549495509216926129ed9190613fb7565b60018501546001600160a01b03166000908152609a6020526040812080549293508392909190612a1e9084906151f1565b90915550506001840154604051600080516020615bef83398151915291612a54916001600160a01b039091169084908990615204565b60405180910390a16003840154604080518581526001600160a01b03909216602083015286917f9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41910160405180910390a2600085815260a66020526040812080546001600160a01b03199081168255600182018054909116905590612adc6002830182614443565b6003820180546001600160a01b0319169055612afc600483016000614443565b600060058301819055600683018190556007830180546001600160401b0319169055612b2c906008840190614443565b50600060098201819055600a820180546001600160c01b0319169055600b8201819055600c90910181905585815260a760205260408082206001908101805460ff19169091179055516001600160a01b0384169085908381818185875af1925050503d8060008114612bba576040519150601f19603f3d011682016040523d82523d6000602084013e612bbf565b606091505b5050905080612bf95760405162461bcd60e51b8152602060048201526006602482015265131090cc0d0d60d21b60448201526064016102ad565b5050505050612c086001606555565b50565b612c143361413f565b612c305760405162461bcd60e51b81526004016102ad9061514d565b3360009081526099602052604081208054349290612c4f9084906153f4565b90915550506040517f456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af849061189f90339034906154c4565b60006109e282613951565b612c9a3361413f565b612cb65760405162461bcd60e51b81526004016102ad9061514d565b611abe3334613fcf565b612cc86138f8565b612cd133614100565b612ced5760405162461bcd60e51b81526004016102ad9061514d565b600085815260a7602052604090206001015460ff1615612d1f5760405162461bcd60e51b81526004016102ad906156a6565b600085815260a66020526040902080546001600160a01b0316612d545760405162461bcd60e51b81526004016102ad906156c6565b60405162f5b49160e01b815260009073__BtcUtils______________________________9062f5b49190612d8c9089906004016156e6565b600060405180830381865af4158015612da9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612dd191908101906156f9565b9050600073__BtcUtils______________________________632d56f32383600181518110612e0257612e02615534565b6020026020010151602001516040518263ffffffff1660e01b8152600401612e2a91906156e6565b600060405180830381865af4158015612e47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612e6f91908101906155dc565b905080516021148015612ea7575080600081518110612e9057612e90615534565b6020910101516001600160f81b031916600160fd1b145b612edc5760405162461bcd60e51b81526020600482015260066024820152654c424330373560d01b60448201526064016102ad565b60005b60018251612eed91906151f1565b8160ff161015612f5f5781612f0382600161580c565b60ff1681518110612f1657612f16615534565b602001015160f81c60f81b828260ff1681518110612f3657612f36615534565b60200101906001600160f81b031916908160001a90535080612f5781615825565b915050612edf565b50600081806020019051810190612f769190615844565b9050808914612fb05760405162461bcd60e51b81526020600482015260066024820152654c424330363960d01b60448201526064016102ad565b60018401546001600160a01b03163314612ff55760405162461bcd60e51b815260206004820152600660248201526509884866068760d31b60448201526064016102ad565b600a84015460975460405163fea8ba6360e01b8152600160501b90920461ffff16916001600160a01b0390911690635b6445879073__BtcUtils______________________________9063fea8ba6390613053908e906004016156e6565b602060405180830381865af4158015613070573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130949190615844565b8a8a8a6040518563ffffffff1660e01b81526004016130b6949392919061585d565b602060405180830381865afa1580156130d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130f79190615844565b121561312e5760405162461bcd60e51b81526020600482015260066024820152654c424330343960d01b60448201526064016102ad565b8260008151811061314157613141615534565b6020026020010151600001516402540be40061315d91906158b9565b6001600160401b0316846009015411156131a25760405162461bcd60e51b81526020600482015260066024820152654c424330363760d01b60448201526064016102ad565b600073__BtcUtils______________________________63c7ce85ac856000815181106131d1576131d1615534565b602090810291909101810151015160a4546040516001600160e01b031960e085901b168152613207929160ff16906004016158e4565b600060405180830381865af4158015613224573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261324c91908101906155dc565b90508080519060200120856008016040516132679190615908565b6040518091039020146132a55760405162461bcd60e51b81526020600482015260066024820152650988486606c760d31b60448201526064016102ad565b604080516102608101825286546001600160a01b0390811682526001880154166020820152600287018054613556938992908401916132e390614f34565b80601f016020809104026020016040519081016040528092919081815260200182805461330f90614f34565b801561335c5780601f106133315761010080835404028352916020019161335c565b820191906000526020600020905b81548152906001019060200180831161333f57829003601f168201915b505050918352505060038201546001600160a01b0316602082015260048201805460409092019161338c90614f34565b80601f01602080910402602001604051908101604052809291908181526020018280546133b890614f34565b80156134055780601f106133da57610100808354040283529160200191613405565b820191906000526020600020905b8154815290600101906020018083116133e857829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b606082015260088201805460809092019161344390614f34565b80601f016020809104026020016040519081016040528092919081815260200182805461346f90614f34565b80156134bc5780601f10613491576101008083540402835291602001916134bc565b820191906000526020600020905b81548152906001019060200180831161349f57829003601f168201915b505050918352505060098201546020820152600a82015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b90910416610100820152600b820154610120820152600c9091015461014090910152838a61428e565b156135f957600685015460018601546001600160a01b03166000908152609a6020526040812054909161358891613fb7565b60018701546001600160a01b03166000908152609a60205260408120805492935083929091906135b99084906151f1565b90915550506001860154604051600080516020615bef833981519152916135ef916001600160a01b039091169084908790615204565b60405180910390a1505b6001850154600586015460098701546000926001600160a01b03169161361e916153f4565b604051600081818185875af1925050503d806000811461365a576040519150601f19603f3d011682016040523d82523d6000602084013e61365f565b606091505b50509050806136995760405162461bcd60e51b815260206004820152600660248201526504c42433035360d41b60448201526064016102ad565b6136a786600b01548c61402e565b600083815260a66020526040812080546001600160a01b031990811682556001820180549091169055906136de6002830182614443565b6003820180546001600160a01b03191690556136fe600483016000614443565b600060058301819055600683018190556007830180546001600160401b031916905561372e906008840190614443565b50600060098201819055600a820180546001600160c01b0319169055600b8201819055600c90910181905583815260a760205260408082206001908101805460ff191690911790555184917fb781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb38491a25050505050506137ac6001606555565b5050505050565b6137bb61417e565b6001600160a01b0381166138205760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ad565b612c08816141dd565b80516000906001600160a01b0316301461386e5760405162461bcd60e51b8152602060048201526006602482015265262121981a9b60d11b60448201526064016102ad565b60405163025018e760e31b815273__QuotesV2______________________________90631280c738906138a590859060040161597e565b600060405180830381865af41580156138c2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526138ea91908101906155dc565b805190602001209050919050565b60026065540361394a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016102ad565b6002606555565b600081602001516001600160a01b0316306001600160a01b0316146139a15760405162461bcd60e51b81526020600482015260066024820152654c424330353160d01b60448201526064016102ad565b6101008201516097546001600160a01b039182169116036139ed5760405162461bcd60e51b8152602060048201526006602482015265262121981a9960d11b60448201526064016102ad565b81606001515160151480613a0657508160600151516021145b613a3b5760405162461bcd60e51b81526020600482015260066024820152654c424330353360d01b60448201526064016102ad565b8160a0015151601514613a795760405162461bcd60e51b8152602060048201526006602482015265131090cc0d4d60d21b60448201526064016102ad565b609f548261026001518361024001518460c00151856101800151613a9d91906153f4565b613aa791906153f4565b613ab191906153f4565b1015613ae85760405162461bcd60e51b81526020600482015260066024820152654c424330353560d01b60448201526064016102ad565b816101c0015163ffffffff16826101a0015163ffffffff16613b0a9190615b18565b6001600160401b031663ffffffff1015613b4f5760405162461bcd60e51b81526020600482015260066024820152654c424330373160d01b60448201526064016102ad565b60405162773b7960e01b815273__QuotesV2______________________________9062773b79906138a5908590600401615b38565b609754606086015160a08701516000848152609c602052604081205490936001600160a01b031692636adc013392899288928a92899230919063ffffffff1615801590613be6575060008b8152609c6020526040902054600160201b900460ff165b6040518963ffffffff1660e01b8152600401613c09989796959493929190615b4b565b6020604051808303816000875af1158015613c28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c4c9190615844565b9695505050505050565b60008084138015613c9a57508461026001518561024001518660c00151876101800151613c8391906153f4565b613c8d91906153f4565b613c9791906153f4565b84105b15613ca75750600061181c565b60975460405163bd0c1fff60e01b8152600481018490526000916001600160a01b03169063bd0c1fff90602401600060405180830381865afa158015613cf1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613d1991908101906155dc565b90506000815111613d635760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a5908189b1bd8dac81a195a59da1d60621b60448201526064016102ad565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc90613d9d9085906004016156e6565b602060405180830381865af4158015613dba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613dde9190615844565b90506000876101c00151886101a00151613df89190615682565b63ffffffff16905080821115613e14576000935050505061181c565b85600003613e28576001935050505061181c565b6097546102008901516000916001600160a01b03169063bd0c1fff90600190613e559061ffff168a6153f4565b613e5f91906151f1565b6040518263ffffffff1660e01b8152600401613e7d91815260200190565b600060405180830381865afa158015613e9a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613ec291908101906155dc565b90506000815111613efe5760405162461bcd60e51b81526020600482015260066024820152650988486606a760d31b60448201526064016102ad565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc90613f389085906004016156e6565b602060405180830381865af4158015613f55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f799190615844565b9050896101e0015163ffffffff1681613f9291906153f4565b881115613fa75760019550505050505061181c565b5060009998505050505050505050565b6000818310613fc65781613fc8565b825b9392505050565b6001600160a01b03821660009081526098602052604081208054839290613ff79084906153f4565b90915550506040517f42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f53906112e690849084906154c4565b81156140fc5760a9546040516000916001600160a01b03169084908381818185875af1925050503d8060008114614081576040519150601f19603f3d011682016040523d82523d6000602084013e614086565b606091505b50509050806140c05760405162461bcd60e51b8152602060048201526006602482015265131090cc0dcd60d21b60448201526064016102ad565b817f58e13ac0d5c8d27d14009841e72ac8b1858e2709c2c99af2075d9bb5f340ecfc846040516140f291815260200190565b60405180910390a2505b5050565b6001600160a01b0381166000908152609a6020526040812054158015906109e25750506001600160a01b03166000908152609d60205260409020541590565b6001600160a01b038116600090815260996020526040812054158015906109e25750506001600160a01b03166000908152609d60205260409020541590565b336141876128cf565b6001600160a01b031614611abe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102ad565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216600090815260986020526040812080548392906142579084906151f1565b90915550506040517f8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc0064587906112e690849084906154c4565b6097546040516339cf1b2560e11b81526004810183905260009182916001600160a01b039091169063739e364a90602401600060405180830381865afa1580156142dc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261430491908101906155dc565b905060008151116143405760405162461bcd60e51b81526020600482015260066024820152654c424330353960d01b60448201526064016102ad565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc9061437a9085906004016156e6565b602060405180830381865af4158015614397573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906143bb9190615844565b60a3546101c0880151600088815260a7602052604090205492935090916143e89163ffffffff16906153f4565b6143f291906153f4565b81111561440457600192505050613fc8565b856101e0015163ffffffff16421180614427575085610200015163ffffffff1643115b1561443757600192505050613fc8565b50600095945050505050565b50805461444f90614f34565b6000825580601f1061445f575050565b601f016020900490600052602060002090810190612c0891905b8082111561448d5760008155600101614479565b5090565b634e487b7160e01b600052604160045260246000fd5b60405161026081016001600160401b03811182821017156144ca576144ca614491565b60405290565b60405161028081016001600160401b03811182821017156144ca576144ca614491565b604051608081016001600160401b03811182821017156144ca576144ca614491565b604051601f8201601f191681016001600160401b038111828210171561453d5761453d614491565b604052919050565b60006001600160401b0382111561455e5761455e614491565b50601f01601f191660200190565b600082601f83011261457d57600080fd5b813561459061458b82614545565b614515565b8181528460208386010111156145a557600080fd5b816020850160208301376000918101602001919091529392505050565b600080604083850312156145d557600080fd5b82356001600160401b03808211156145ec57600080fd5b6145f88683870161456c565b9350602085013591508082111561460e57600080fd5b5061461b8582860161456c565b9150509250929050565b6001600160a01b0381168114612c0857600080fd5b803561241181614625565b8035600781900b811461241157600080fd5b803563ffffffff8116811461241157600080fd5b803561ffff8116811461241157600080fd5b6000610260828403121561469057600080fd5b6146986144a7565b90506146a38261463a565b81526146b16020830161463a565b602082015260408201356001600160401b03808211156146d057600080fd5b6146dc8583860161456c565b60408401526146ed6060850161463a565b6060840152608084013591508082111561470657600080fd5b6147128583860161456c565b608084015260a084013560a084015260c084013560c084015261473760e08501614645565b60e08401526101009150818401358181111561475257600080fd5b61475e8682870161456c565b8385015250505061012080830135818301525061014061477f818401614657565b90820152610160614791838201614657565b908201526101806147a383820161466b565b908201526101a06147b583820161466b565b908201526101c06147c7838201614657565b908201526101e06147d9838201614657565b908201526102006147eb838201614657565b9082015261022082810135908201526102409182013591810191909152919050565b60006020828403121561481f57600080fd5b81356001600160401b0381111561483557600080fd5b61181c8482850161467d565b80356001600160601b03198116811461241157600080fd5b8015158114612c0857600080fd5b803561241181614859565b6000610280828403121561488557600080fd5b61488d6144d0565b905061489882614841565b81526148a66020830161463a565b60208201526148b76040830161463a565b604082015260608201356001600160401b03808211156148d657600080fd5b6148e28583860161456c565b60608401526148f36080850161463a565b608084015260a084013591508082111561490c57600080fd5b6149188583860161456c565b60a084015260c084013560c084015260e084013560e0840152610100915061494182850161463a565b828401526101209150818401358181111561495b57600080fd5b6149678682870161456c565b8385015250505061014061497c818401614657565b9082015261016061498e838201614645565b9082015261018082810135908201526101a06149ab818401614657565b908201526101c06149bd838201614657565b908201526101e06149cf838201614657565b908201526102006149e183820161466b565b908201526102206149f3838201614867565b9082015261024082810135908201526102609182013591810191909152919050565b600080600080600060a08688031215614a2d57600080fd5b85356001600160401b0380821115614a4457600080fd5b614a5089838a01614872565b96506020880135915080821115614a6657600080fd5b614a7289838a0161456c565b95506040880135915080821115614a8857600080fd5b614a9489838a0161456c565b94506060880135915080821115614aaa57600080fd5b50614ab78882890161456c565b95989497509295608001359392505050565b600060208284031215614adb57600080fd5b5035919050565b60008060008060808587031215614af857600080fd5b84356001600160401b0380821115614b0f57600080fd5b614b1b8883890161456c565b95506020870135915080821115614b3157600080fd5b614b3d8883890161456c565b945060408701359150614b4f82614859565b90925060608601359080821115614b6557600080fd5b50614b728782880161456c565b91505092959194509250565b600060208284031215614b9057600080fd5b8135613fc881614625565b60006001600160401b03821115614bb457614bb4614491565b5060051b60200190565b60006020808385031215614bd157600080fd5b82356001600160401b03811115614be757600080fd5b8301601f81018513614bf857600080fd5b8035614c0661458b82614b9b565b81815260059190911b82018301908381019087831115614c2557600080fd5b928401925b82841015614c4357833582529284019290840190614c2a565b979650505050505050565b6001600160a01b03169052565b60005b83811015614c76578181015183820152602001614c5e565b50506000910152565b60008151808452614c97816020860160208601614c5b565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015614d6c57888303603f19018552815180518452878101516001600160a01b0316888501528681015160c088860181905290614d1382870182614c7f565b91505060608083015186830382880152614d2d8382614c7f565b925050506080808301511515818701525060a08083015192508582038187015250614d588183614c7f565b968901969450505090860190600101614cd2565b509098975050505050505050565b6001600160a01b0391909116815260200190565b60008060408385031215614da157600080fd5b823591506020830135614db381614859565b809150509250929050565b60008060408385031215614dd157600080fd5b82356001600160401b0380821115614de857600080fd5b6145f886838701614872565b600060208284031215614e0657600080fd5b81356001600160401b03811115614e1c57600080fd5b61181c84828501614872565b60008060408385031215614e3b57600080fd5b82356001600160401b0380821115614e5257600080fd5b6145f88683870161467d565b600080600080600060a08688031215614e7657600080fd5b853594506020808701356001600160401b0380821115614e9557600080fd5b614ea18a838b0161456c565b965060408901359550606089013594506080890135915080821115614ec557600080fd5b508701601f81018913614ed757600080fd5b8035614ee561458b82614b9b565b81815260059190911b8201830190838101908b831115614f0457600080fd5b928401925b82841015614f2257833582529284019290840190614f09565b80955050505050509295509295909350565b600181811c90821680614f4857607f821691505b602082108103614f6857634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115614fb857600081815260208120601f850160051c81016020861015614f955750805b601f850160051c820191505b81811015614fb457828155600101614fa1565b5050505b505050565b81516001600160401b03811115614fd657614fd6614491565b614fea81614fe48454614f34565b84614f6e565b602080601f83116001811461501f57600084156150075750858301515b600019600386901b1c1916600185901b178555614fb4565b600085815260208120601f198616915b8281101561504e5788860151825594840194600190910190840161502f565b508582101561506c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000815461508981614f34565b8085526020600183811680156150a657600181146150c0576150ee565b60ff1985168884015283151560051b8801830195506150ee565b866000528260002060005b858110156150e65781548a82018601529083019084016150cb565b890184019650505b505050505092915050565b60408152600061510c604083018561507c565b82810360208401526111f1818561507c565b634e487b7160e01b600052601160045260246000fd5b6000600182016151465761514661511e565b5060010190565b6020808252600690820152654c424330303160d01b604082015260600190565b60208082526006908201526509884866064760d31b604082015260600190565b60018060a01b03841681528260208201526060604082015260006111f16060830184614c7f565b6000602082840312156151c657600080fd5b8151613fc881614859565b6020808252600690820152654c424330323960d01b604082015260600190565b818103818111156109e2576109e261511e565b6001600160a01b039390931683526020830191909152604082015260600190565b80820281158282048414176109e2576109e261511e565b634e487b7160e01b600052601260045260246000fd5b6000826152615761526161523c565b500490565b80516001600160601b03191682526000610280602083015161528b6020860182614c4e565b50604083015161529e6040860182614c4e565b5060608301518160608601526152b682860182614c7f565b91505060808301516152cb6080860182614c4e565b5060a083015184820360a08601526152e38282614c7f565b91505060c083015160c085015260e083015160e08501526101008084015161530d82870182614c4e565b505061012080840151858303828701526153278382614c7f565b92505050610140808401516153438287018263ffffffff169052565b50506101608084015161535a8287018260070b9052565b505061018083810151908501526101a08084015163ffffffff908116918601919091526101c0808501518216908601526101e080850151909116908501526102008084015161ffff16908501526102208084015115159085015261024080840151908501526102609283015192909301919091525090565b6040815260006153e56040830185615266565b90508260208301529392505050565b808201808211156109e2576109e261511e565b6001600160a01b03949094168452602084019290925215156040830152606082015260800190565b60008251615441818460208701614c5b565b9190910192915050565b63ffffffff8616815284602082015260a06040820152600061547060a0830186614c7f565b931515606083015250608001529392505050565b6020808252600690820152654c424330313960d01b604082015260600190565b60208082526006908201526504c42433032360d41b604082015260600190565b6001600160a01b03929092168252602082015260400190565b643832b3b4b760d91b815260050190565b651c1959dbdd5d60d21b815260060190565b60208082526006908201526509884866060760d31b604082015260600190565b60008261552f5761552f61523c565b500690565b634e487b7160e01b600052603260045260246000fd5b84815260008451615562816020850160208901614c5b565b808301905060018060601b0319851660208201528351615589816034840160208801614c5b565b016034019695505050505050565b600082601f8301126155a857600080fd5b81516155b661458b82614545565b8181528460208386010111156155cb57600080fd5b61181c826020830160208701614c5b565b6000602082840312156155ee57600080fd5b81516001600160401b0381111561560457600080fd5b61181c84828501615597565b600160fd1b8152826001820152607560f81b60218201526000825161563c816022850160208701614c5b565b919091016022019392505050565b60608152600061565d6060830186614c7f565b828103602084015261566f8186614c7f565b9150508215156040830152949350505050565b63ffffffff81811683821601908082111561569f5761569f61511e565b5092915050565b602080825260069082015265131090cc0d8d60d21b604082015260600190565b602080825260069082015265262121981a1960d11b604082015260600190565b602081526000613fc86020830184614c7f565b6000602080838503121561570c57600080fd5b82516001600160401b038082111561572357600080fd5b818501915085601f83011261573757600080fd5b815161574561458b82614b9b565b81815260059190911b8301840190848101908883111561576457600080fd5b8585015b838110156157ff578051858111156157805760008081fd5b86016080818c03601f19018113156157985760008081fd5b6157a06144f3565b8983015188811681146157b35760008081fd5b8152604083810151898111156157c95760008081fd5b6157d78f8d83880101615597565b838d015250606084810151918301919091529190920151908201528352918601918601615768565b5098975050505050505050565b60ff81811683821601908111156109e2576109e261511e565b600060ff821660ff810361583b5761583b61511e565b60010192915050565b60006020828403121561585657600080fd5b5051919050565b600060808201868352602086818501528560408501526080606085015281855180845260a086019150828701935060005b818110156158aa5784518352938301939183019160010161588e565b50909998505050505050505050565b6001600160401b038181168382160280821691908281146158dc576158dc61511e565b505092915050565b6040815260006158f76040830185614c7f565b905082151560208301529392505050565b600080835461591681614f34565b6001828116801561592e576001811461594357615972565b60ff1984168752821515830287019450615972565b8760005260208060002060005b858110156159695781548a820152908401908201615950565b50505082870194505b50929695505050505050565b60208152615990602082018351614c4e565b600060208301516159a46040840182614c4e565b5060408301516102608060608501526159c1610280850183614c7f565b915060608501516159d56080860182614c4e565b506080850151601f19808685030160a08701526159f28483614c7f565b935060a087015160c087015260c087015160e087015260e08701519150610100615a208188018460070b9052565b80880151925050610120818786030181880152615a3d8584614c7f565b908801516101408881019190915288015190945091506101609050615a698187018363ffffffff169052565b8601519050610180615a828682018363ffffffff169052565b86015190506101a0615a998682018361ffff169052565b86015190506101c0615ab08682018361ffff169052565b86015190506101e0615ac98682018363ffffffff169052565b8601519050610200615ae28682018363ffffffff169052565b8601519050610220615afb8682018363ffffffff169052565b860151610240868101919091529095015193019290925250919050565b6001600160401b0381811683821601908082111561569f5761569f61511e565b602081526000613fc86020830184615266565b6000610100808352615b5f8184018c614c7f565b90508960208401528281036040840152615b79818a614c7f565b90508760608401528281036080840152615b938188614c7f565b6001600160a01b03871660a085015283810360c08501529050615bb68186614c7f565b91505082151560e0830152999850505050505050505056fe3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f69685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80da26469706673582212204e99dace3bb84142996a643a4485ba890de7b19f3ed4b43eb3e798078eec4be264736f6c63430008120033", + "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BalanceDecrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BalanceIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"errorCode\",\"type\":\"int256\"}],\"name\":\"BridgeCapExceeded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"CallForUser\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CollateralIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"DaoFeeSent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"transferredAmount\",\"type\":\"int256\"}],\"name\":\"PegInRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"PegOutDeposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"PegOutRefunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"userAddress\",\"type\":\"address\"}],\"name\":\"PegOutUserRefunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PegoutCollateralIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"liquidityProvider\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"penalty\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"Penalized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"providerAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"}],\"name\":\"ProviderUpdate\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"Refund\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Register\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"Resigned\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"WithdrawCollateral\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Withdrawal\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"BRIDGE_GENERIC_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_REFUNDED_LP_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_REFUNDED_USER_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"CALL_DONE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_CALL_GAS_COST\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_REFUND_GAS_LIMIT\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PAY_TO_ADDRESS_OUTPUT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PROCESSED_QUOTE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"QUOTE_HASH_OUTPUT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UNPROCESSED_QUOTE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"addCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"addPegoutCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"bridge\",\"outputs\":[{\"internalType\":\"contract Bridge\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"callForUser\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"daoFeeCollectorAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PegOutQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"name\":\"depositPegout\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBridgeAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDustThreshold\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinPegIn\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getPegoutCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"providerAddress\",\"type\":\"address\"}],\"name\":\"getProvider\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"provider\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"apiBaseUrl\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"providerType\",\"type\":\"string\"}],\"internalType\":\"struct LiquidityBridgeContractV2.LiquidityProvider\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getProviderIds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getProviders\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"provider\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"apiBaseUrl\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"providerType\",\"type\":\"string\"}],\"internalType\":\"struct LiquidityBridgeContractV2.LiquidityProvider[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getResignDelayBlocks\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRewardPercentage\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PegOutQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"hashPegoutQuote\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"hashQuote\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isOperational\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isOperationalForPegout\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"isPegOutQuoteCompleted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"productFeePercentage\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"providerId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"btcTx\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"btcBlockHeaderHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"partialMerkleTree\",\"type\":\"uint256\"},{\"internalType\":\"bytes32[]\",\"name\":\"merkleBranchHashes\",\"type\":\"bytes32[]\"}],\"name\":\"refundPegOut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"refundUserPegOut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_apiBaseUrl\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"_providerType\",\"type\":\"string\"}],\"name\":\"register\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"btcRawTransaction\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"partialMerkleTree\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"}],\"name\":\"registerPegIn\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"resign\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_providerId\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"setProviderStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_url\",\"type\":\"string\"}],\"name\":\"updateProvider\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"depositAddress\",\"type\":\"bytes\"}],\"name\":\"validatePeginDepositAddress\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawCollateral\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"events\":{\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"}},\"kind\":\"dev\",\"methods\":{\"addCollateral()\":{\"details\":\"Increases the amount of collateral of the sender\"},\"callForUser((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool,uint256,uint256))\":{\"details\":\"Performs a call on behalf of a user\",\"params\":{\"quote\":\"The quote that identifies the service\"},\"returns\":{\"_0\":\"Boolean indicating whether the call was successful\"}},\"deposit()\":{\"details\":\"Increases the balance of the sender\"},\"getBalance(address)\":{\"details\":\"Returns the amount of funds of a liquidity provider\",\"params\":{\"addr\":\"The address of the liquidity provider\"},\"returns\":{\"_0\":\"The balance of the liquidity provider\"}},\"getCollateral(address)\":{\"details\":\"Returns the amount of collateral of a liquidity provider\",\"params\":{\"addr\":\"The address of the liquidity provider\"},\"returns\":{\"_0\":\"The amount of locked collateral\"}},\"hashQuote((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool,uint256,uint256))\":{\"details\":\"Calculates hash of a quote. Note: besides calculation this function also validates the quote.\",\"params\":{\"quote\":\"The quote of the service\"},\"returns\":{\"_0\":\"The hash of a quote\"}},\"isOperational(address)\":{\"details\":\"Checks whether a liquidity provider can deliver a pegin service\",\"returns\":{\"_0\":\"Whether the liquidity provider is registered and has enough locked collateral\"}},\"isOperationalForPegout(address)\":{\"details\":\"Checks whether a liquidity provider can deliver a pegout service\",\"returns\":{\"_0\":\"Whether the liquidity provider is registered and has enough locked collateral\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"register(string,string,bool,string)\":{\"details\":\"Registers msg.sender as a liquidity provider with msg.value as collateral\"},\"registerPegIn((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool,uint256,uint256),bytes,bytes,bytes,uint256)\":{\"details\":\"Registers a peg-in transaction with the bridge and pays to the involved parties\",\"params\":{\"btcRawTransaction\":\"The peg-in transaction\",\"height\":\"The block that contains the peg-in transaction\",\"partialMerkleTree\":\"The merkle tree path that proves transaction inclusion\",\"quote\":\"The quote of the service\",\"signature\":\"The signature of the quote\"},\"returns\":{\"_0\":\"The total peg-in amount received from the bridge contract or an error code\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"resign()\":{\"details\":\"Used to resign as a liquidity provider\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"withdraw(uint256)\":{\"details\":\"Used to withdraw funds\",\"params\":{\"amount\":\"The amount to withdraw\"}},\"withdrawCollateral()\":{\"details\":\"Used to withdraw the locked collateral\"}},\"title\":\"Contract that assists with the Flyover protocol\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/LiquidityBridgeContractV2.sol\":\"LiquidityBridgeContractV2\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\":{\"keccak256\":\"0x7237a22e0d518b3499d81ca4918c038a168882e57a35af17d57afd61234c8512\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df4acd5a0609e279ddad58d0532a77fdc959688144e5bb7ccfc782db9236251\",\"dweb:/ipfs/QmbjJFBRm6JFPx9Jh34hX8N5rkgBxJ5kbdZsoJ3Tb4UyCa\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":{\"keccak256\":\"0x5996186b53b109f592341cfe164c6673346eafda66a2a496e6d5fcec5c74de5a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8d3073328ce73163fe8088b14bf39ba03f5f233604a0eb329bb64f2be73ff411\",\"dweb:/ipfs/QmScVLft2AL48D1Z93e3TDQbfZNh7sxJaeS23U4KPGsjTY\"]},\"project:/contracts/Bridge.sol\":{\"keccak256\":\"0x1eb986f1f28ace76b72425a2617eaeb89a54c765dc7b16689cb1105a7e6c0f2f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://255860b4bfb0bed73723349493307106fb54fcaf5839a7b0c012fc1a03d0b8ce\",\"dweb:/ipfs/QmUoWjWVkXpUWjaiWQXQVNKEJmCnPtKXXTgFq7kkcTuGMs\"]},\"project:/contracts/LiquidityBridgeContractV2.sol\":{\"keccak256\":\"0x9c4ee7065b575fcb47db7d9c791beb731ac21c4467bd783062ee99b402c5dc12\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7ca215a71ee8b8a113b1928d6cd1faa26c449506835578af431b4eb87ec1ff76\",\"dweb:/ipfs/QmfHZ2pbyxfHkxsXaRxu15EwtCinpcifMyPd3oE4yEu24G\"]},\"project:/contracts/QuotesV2.sol\":{\"keccak256\":\"0xda3afec2b2b9aae5c1747ffcd7646fd0680965743702961b08236e0cce699d35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e751b7128c53b32303e573fb14796eb0e8912d50114c8824ad307ac632725ee\",\"dweb:/ipfs/QmTyF3Dmw1d7crXtSALUsaQcHtp5cCzUo1xEtyG3uBtXAY\"]},\"project:/contracts/SignatureValidator.sol\":{\"keccak256\":\"0x9d72920dd5ff2891c8dd3b3a814c1b108e82fcc6dfd849c96842e88c01d25b2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df1167e9def35ced4a620e3fa1e6d148bc7c1fb995378bf12dabef250b3be65\",\"dweb:/ipfs/QmZJJchWvzUeMb68VPHFGnMXBx7aMhK5GqJy8ECDx2rf58\"]}},\"version\":1}", + "bytecode": "0x608060405234801561001057600080fd5b50615ebe80620000216000396000f3fe60806040526004361061027f5760003560e01c80630220f41d146102d357806304ade855146102f35780630a7bf57a1461031f5780630a9cb4a71461033457806322140009146103535780632d67952c146103735780632e1a7d4d1461039357806333f07ad3146103b357806341705518146103c8578063418663a2146103db5780634198687e14610405578063457385f21461040d5780634d0ec9711461043d57806354015ee01461045d57806354fd4d501461049057806355f21eb7146104c457806359c153be146104f157806363c671351461050657806369652fcf1461051c578063710738b114610531578063715018a61461055e57806372cbf4e81461057357806379b9550b146105935780637aefa8c2146105b35780638490a8df146105c65780638beb537a146105dc5780638d597939146105ef5780638da5cb5b146106065780638f91797d1461061b5780639b56d6c91461063b5780639cd6557f146106715780639d79b59b146106865780639e816999146106af578063a4a5ba50146106b7578063a93bb247146106cc578063ae76ce86146106e3578063ae93b67b146106fa578063b3a849aa14610711578063bd519eff14610731578063bd5798c314610767578063be6de4eb14610789578063c525cdd81461079e578063c7213163146107b5578063cfb92f0a146107d0578063d0e30db0146107e7578063d6c70de8146107ef578063e1de16c61461080f578063e30e6ea314610825578063e78cea921461083b578063e830b6901461085b578063e8fcce7114610870578063edc922a914610886578063f2fde38b146108a8578063f8b2cb4f146108c8578063fa88dcde146108fe578063fb32c5081461091357600080fd5b366102ce576097546001600160a01b031633146102cc5760405162461bcd60e51b81526020600482015260066024820152654c424330303760d01b60448201526064015b60405180910390fd5b005b600080fd5b3480156102df57600080fd5b506102cc6102ee366004614896565b610931565b3480156102ff57600080fd5b50610308600181565b60405160ff90911681526020015b60405180910390f35b34801561032b57600080fd5b50610308600281565b34801561034057600080fd5b5060a2545b604051908152602001610316565b34801561035f57600080fd5b5061034561036e366004614ae1565b610a43565b34801561037f57600080fd5b5061034561038e366004614ce9565b610a54565b34801561039f57600080fd5b506102cc6103ae366004614d9d565b611266565b3480156103bf57600080fd5b5060a154610345565b6103456103d6366004614db6565b61135e565b3480156103e757600080fd5b506103f26101301981565b60405160019190910b8152602001610316565b6102cc611890565b34801561041957600080fd5b5061042d610428366004614e52565b611915565b6040519015158152602001610316565b34801561044957600080fd5b5061042d610458366004614e52565b61194b565b34801561046957600080fd5b5061042d610478366004614d9d565b600090815260a7602052604090206001015460ff1690565b34801561049c57600080fd5b5060408051808201825260058152640312e332e360dc1b602082015290516103169190614ebf565b3480156104d057600080fd5b506104e46104df366004614e52565b611981565b6040516103169190614f4f565b3480156104fd57600080fd5b506102cc611bd6565b34801561051257600080fd5b5061034560a85481565b34801561052857600080fd5b506102cc611d81565b34801561053d57600080fd5b5060a954610551906001600160a01b031681565b6040516103169190614f62565b34801561056a57600080fd5b506102cc611e2c565b34801561057f57600080fd5b506102cc61058e366004614f76565b611e3e565b34801561059f57600080fd5b5061042d6105ae366004614fa6565b611ed8565b61042d6105c1366004614fdc565b612044565b3480156105d257600080fd5b5061034560a25481565b6102cc6105ea366004615010565b612356565b3480156105fb57600080fd5b506103f261012c1981565b34801561061257600080fd5b5061055161280f565b34801561062757600080fd5b506102cc610636366004614d9d565b61281e565b34801561064757600080fd5b50610345610656366004614e52565b6001600160a01b031660009081526099602052604090205490565b34801561067d57600080fd5b50610308600081565b34801561069257600080fd5b5061069c6188b881565b60405161ffff9091168152602001610316565b6102cc612b4b565b3480156106c357600080fd5b50610345600181565b3480156106d857600080fd5b506103f261012d1981565b3480156106ef57600080fd5b506103f261012b1981565b34801561070657600080fd5b506103f26103831981565b34801561071d57600080fd5b5061034561072c366004614fdc565b612bc6565b34801561073d57600080fd5b5061034561074c366004614e52565b6001600160a01b03166000908152609a602052604090205490565b34801561077357600080fd5b5060a054600160201b900463ffffffff16610345565b34801561079557600080fd5b50610345600081565b3480156107aa57600080fd5b506103f261012e1981565b3480156107c157600080fd5b5060a05463ffffffff16610345565b3480156107dc57600080fd5b506103f261012f1981565b6102cc612bd1565b3480156107fb57600080fd5b506102cc61080a366004615069565b612c00565b34801561081b57600080fd5b5061069c6108fc81565b34801561083157600080fd5b506103f260c71981565b34801561084757600080fd5b50609754610551906001600160a01b031681565b34801561086757600080fd5b50609e54610345565b34801561087c57600080fd5b506103f260631981565b34801561089257600080fd5b5061089b6136f3565b604051610316919061513f565b3480156108b457600080fd5b506102cc6108c3366004614e52565b6139fd565b3480156108d457600080fd5b506103456108e3366004614e52565b6001600160a01b031660009081526098602052604090205490565b34801561090a57600080fd5b50609f54610345565b34801561091f57600080fd5b506097546001600160a01b0316610551565b60008251118015610943575060008151115b6109785760405162461bcd60e51b8152602060048201526006602482015265262121981b9b60d11b60448201526064016102c3565b600060015b60a2548111610a2a576000818152609b6020526040902060018101549092506001600160a01b03163303610a1857600282016109b9858261522a565b50600382016109c8848261522a565b50336001600160a01b03167fc15f90eb34a098bb02f2641dff62935246fb005d8f06e13d5cc6be0bddcce8e38360020184600301604051610a0a929190615366565b60405180910390a250505050565b80610a22816153a1565b91505061097d565b5060405162461bcd60e51b81526004016102c3906153ba565b6000610a4e82613a73565b92915050565b6000610a5e613b42565b6000610a6987613b9b565b600081815260a56020526040902054909150600160ff9091161115610aa05760405162461bcd60e51b81526004016102c3906153da565b60408088015190516301a86b5560e41b815273__SignatureValidator____________________91631a86b55091610adf919085908b906004016153fa565b602060405180830381865af4158015610afc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b209190615421565b610b3c5760405162461bcd60e51b81526004016102c39061543e565b637fffffff8310610b785760405162461bcd60e51b815260206004820152600660248201526504c42433033360d41b60448201526064016102c3565b6000610b878887878786613dce565b905061012f8101610bc35760405162461bcd60e51b81526020600482015260066024820152654c424330333160d01b60448201526064016102c3565b61012e8101610bfd5760405162461bcd60e51b815260206004820152600660248201526526212198199960d11b60448201526064016102c3565b6101308101610c375760405162461bcd60e51b81526020600482015260066024820152654c424330333360d01b60448201526064016102c3565b6101318101610c715760405162461bcd60e51b8152602060048201526006602482015265131090cc0ccd60d21b60448201526064016102c3565b6103848101610cab5760405162461bcd60e51b81526020600482015260066024820152654c424330333560d01b60448201526064016102c3565b6000811380610cbb575060c71981145b80610cc7575060631981145b610cfc5760405162461bcd60e51b815260206004820152600660248201526526212198199b60d11b60448201526064016102c3565b6000828152609c6020526040902054610d1f908990839063ffffffff1687613ea0565b15610df05760e08801516040808a01516001600160a01b031660009081526099602052908120549091610d5191614201565b905080609960008b604001516001600160a01b03166001600160a01b031681526020019081526020016000206000828254610d8c919061545e565b90915550506040808a01519051600080516020615e4983398151915291610db69184908790615471565b60405180910390a160a054600090606490610dd79063ffffffff1684615492565b610de191906154bf565b9050610ded3382614219565b50505b60c719811480610e01575060631981145b15610e7557600082815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff1916905581518481529081018390527ffb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe910160405180910390a191506112539050565b60405163fa6ea3e760e01b8152819073__QuotesV2______________________________9063fa6ea3e790610eb0908c90859060040161563f565b60006040518083038186803b158015610ec857600080fd5b505af4158015610edc573d6000803e3d6000fd5b5050506000848152609c602052604090205463ffffffff16159050611047576000838152609c6020526040812054600160201b900460ff1615610f4e57610f47828b61026001518c60c001518d6101800151610f389190615661565b610f429190615661565b614201565b9050610f6a565b610f67828b61026001518c60c00151610f429190615661565b90505b610f788a6040015182614219565b6000610f84828461545e565b9050610f958b610240015186614278565b60a1548111156110405760808b01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114610ff3576040519150601f19603f3d011682016040523d82523d6000602084013e610ff8565b606091505b50509050600080516020615e298339815191528c608001518383896040516110239493929190615674565b60405180910390a18061103e5761103e8c6040015183614219565b505b50506111ec565b6102208901518190801561106057508961018001518110155b156111525760008a61010001516001600160a01b03168b610140015163ffffffff168c61018001518d610120015160405161109b919061569c565b600060405180830381858888f193505050503d80600081146110d9576040519150601f19603f3d011682016040523d82523d6000602084013e6110de565b606091505b505090508a61010001516001600160a01b0316336001600160a01b0316600080516020615e698339815191528d61014001518e61018001518f6101200151868b60405161112f9594939291906156b8565b60405180910390a38015611150576101808b015161114d908361545e565b91505b505b60a1548111156111ea5760808a01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d80600081146111b0576040519150601f19603f3d011682016040523d82523d6000602084013e6111b5565b606091505b50509050600080516020615e298339815191528b608001518383886040516111e09493929190615674565b60405180910390a1505b505b600083815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff19169055905183815284917f0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2910160405180910390a2509150505b61125d6001606555565b95945050505050565b336000908152609860205260409020548111156112955760405162461bcd60e51b81526004016102c3906156f1565b33600090815260986020526040812080548392906112b490849061545e565b9091555050604051600090339083908381818185875af1925050503d80600081146112fb576040519150601f19603f3d011682016040523d82523d6000602084013e611300565b606091505b50509050806113215760405162461bcd60e51b81526004016102c390615711565b7f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b653383604051611352929190615731565b60405180910390a15050565b60003233146113985760405162461bcd60e51b81526020600482015260066024820152654c424330303360d01b60448201526064016102c3565b60008551116113d25760405162461bcd60e51b815260206004820152600660248201526504c42433031360d41b60448201526064016102c3565b600084511161140c5760405162461bcd60e51b81526020600482015260066024820152654c424330313760d01b60448201526064016102c3565b60405160200161141b9061574a565b6040516020818303038152906040528051906020012082604051602001611442919061569c565b6040516020818303038152906040528051906020012014806114ad575060405160200161146e9061575b565b6040516020818303038152906040528051906020012082604051602001611495919061569c565b60405160208183030381529060405280519060200120145b806115055750604051630c4dee8d60e31b602082015260240160405160208183030381529060405280519060200120826040516020016114ed919061569c565b60405160208183030381529060405280519060200120145b61153a5760405162461bcd60e51b815260206004820152600660248201526509884866062760d31b60448201526064016102c3565b336000908152609960205260409020541580156115645750336000908152609a6020526040902054155b6115995760405162461bcd60e51b815260206004820152600660248201526504c42433037360d41b60448201526064016102c3565b336000908152609d6020526040902054156115df5760405162461bcd60e51b81526020600482015260066024820152654c424330303960d01b60448201526064016102c3565b6040516020016115ee9061574a565b6040516020818303038152906040528051906020012082604051602001611615919061569c565b604051602081830303815290604052805190602001200361166957609e543410156116525760405162461bcd60e51b81526004016102c39061576d565b33600090815260996020526040902034905561176e565b6040516020016116789061575b565b604051602081830303815290604052805190602001208260405160200161169f919061569c565b60405160208183030381529060405280519060200120036116f357609e543410156116dc5760405162461bcd60e51b81526004016102c39061576d565b336000908152609a6020526040902034905561176e565b609e54611701906002615492565b3410156117205760405162461bcd60e51b81526004016102c39061576d565b600061172d6002346154bf565b905061173a60023461578d565b1561174f5761174a816001615661565b611751565b805b33600090815260996020908152604080832093909355609a905220555b60a2805490600061177e836153a1565b90915550506040805160c08101825260a2548082523360208084019182528385018a8152606085018a9052881515608086015260a085018890526000938452609b909152939091208251815590516001820180546001600160a01b0319166001600160a01b0390921691909117905591519091906002820190611801908261522a565b5060608201516003820190611816908261522a565b50608082015160048201805460ff191691151591909117905560a08201516005820190611843908261522a565b505060a254604080519182523460208301523392507fa9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e910160405180910390a25060a2545b949350505050565b6118993361434a565b6118b55760405162461bcd60e51b81526004016102c3906153ba565b336000908152609a6020526040812080543492906118d4908490615661565b90915550506040517f873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa99061190b9033903490615731565b60405180910390a1565b600061192082614389565b8015610a4e5750609e546001600160a01b038316600090815260996020526040902054101592915050565b60006119568261434a565b8015610a4e5750609e546001600160a01b0383166000908152609a6020526040902054101592915050565b6119896146d6565b60015b60a2548111610a2a576000818152609b60205260409020600101546001600160a01b03808516911603611bc4576000818152609b6020908152604091829020825160c0810184528154815260018201546001600160a01b0316928101929092526002810180549293919291840191611a03906151a1565b80601f0160208091040260200160405190810160405280929190818152602001828054611a2f906151a1565b8015611a7c5780601f10611a5157610100808354040283529160200191611a7c565b820191906000526020600020905b815481529060010190602001808311611a5f57829003601f168201915b50505050508152602001600382018054611a95906151a1565b80601f0160208091040260200160405190810160405280929190818152602001828054611ac1906151a1565b8015611b0e5780601f10611ae357610100808354040283529160200191611b0e565b820191906000526020600020905b815481529060010190602001808311611af157829003601f168201915b5050509183525050600482015460ff1615156020820152600582018054604090920191611b3a906151a1565b80601f0160208091040260200160405190810160405280929190818152602001828054611b66906151a1565b8015611bb35780601f10611b8857610100808354040283529160200191611bb3565b820191906000526020600020905b815481529060010190602001808311611b9657829003601f168201915b505050505081525050915050919050565b80611bce816153a1565b91505061198c565b611bde613b42565b336000908152609d6020526040902054611c235760405162461bcd60e51b81526020600482015260066024820152654c424330323160d01b60448201526064016102c3565b60a054336000908152609d6020526040902054600160201b90910463ffffffff1690611c4f904361545e565b1015611c865760405162461bcd60e51b815260206004820152600660248201526526212198191960d11b60448201526064016102c3565b336000908152609a60209081526040808320546099909252822054611cab9190615661565b336000818152609a6020908152604080832083905560998252808320839055609d909152808220829055519293509183908381818185875af1925050503d8060008114611d14576040519150601f19603f3d011682016040523d82523d6000602084013e611d19565b606091505b5050905080611d3a5760405162461bcd60e51b81526004016102c390615711565b7fa8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d23383604051611d6b929190615731565b60405180910390a15050611d7f6001606555565b565b611d8a33614389565b611da65760405162461bcd60e51b81526004016102c3906153ba565b336000908152609d602052604090205415611dec5760405162461bcd60e51b81526020600482015260066024820152654c424330323360d01b60448201526064016102c3565b336000818152609d602052604090819020439055517fa6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d869161190b91614f62565b611e346143c8565b611d7f6000614427565b81611e4761280f565b6001600160a01b0316336001600160a01b03161480611e7f57506000818152609b60205260409020600101546001600160a01b031633145b611eb45760405162461bcd60e51b81526020600482015260066024820152654c424330303560d01b60448201526064016102c3565b506000918252609b6020526040909120600401805460ff1916911515919091179055565b600080611ee484612bc6565b8460600151856020015160601b8660a00151604051602001611f0994939291906157a1565b604051602081830303815290604052805190602001209050600081609760009054906101000a90046001600160a01b03166001600160a01b0316631d73d5dd6040518163ffffffff1660e01b8152600401600060405180830381865afa158015611f77573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611f9f9190810190615833565b604051602001611fb0929190615867565b60408051601f198184030181529082905260a454639b02794b60e01b835290925073__BtcUtils______________________________91639b02794b91612003918891869160ff909116906004016158a1565b602060405180830381865af4158015612020573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061125d9190615421565b600061204f33614389565b61206b5760405162461bcd60e51b81526004016102c3906153ba565b612073613b42565b81604001516001600160a01b0316336001600160a01b0316146120c15760405162461bcd60e51b8152602060048201526006602482015265131090cc0c8d60d21b60448201526064016102c3565b6101808201516040808401516001600160a01b03166000908152609860205220546120ed903490615661565b101561210b5760405162461bcd60e51b81526004016102c3906156f1565b600061211683613b9b565b600081815260a5602052604090205490915060ff16156121615760405162461bcd60e51b81526020600482015260066024820152654c424330323560d01b60448201526064016102c3565b61216f836040015134614219565b610140830151612182906188b8906158d9565b63ffffffff165a10156121c05760405162461bcd60e51b815260206004820152600660248201526526212198191b60d11b60448201526064016102c3565b60008361010001516001600160a01b031684610140015163ffffffff168561018001518661012001516040516121f6919061569c565b600060405180830381858888f193505050503d8060008114612234576040519150601f19603f3d011682016040523d82523d6000602084013e612239565b606091505b509091505063ffffffff42111561227b5760405162461bcd60e51b81526020600482015260066024820152654c424330323760d01b60448201526064016102c3565b6000828152609c60205260409020805463ffffffff19164263ffffffff1617905580156122d6576000828152609c602052604090819020805460ff60201b1916600160201b1790558401516101808501516122d69190614479565b8361010001516001600160a01b0316336001600160a01b0316600080516020615e6983398151915286610140015187610180015188610120015186886040516123239594939291906156b8565b60405180910390a3600091825260a56020526040909120805460ff1916600117905590506123516001606555565b919050565b612363826020015161434a565b6123985760405162461bcd60e51b81526020600482015260066024820152654c424330333760d01b60448201526064016102c3565b348261024001518361022001518460a001518561012001516123ba9190615661565b6123c49190615661565b6123ce9190615661565b11156124055760405162461bcd60e51b81526020600482015260066024820152654c424330363360d01b60448201526064016102c3565b81610160015163ffffffff164211156124495760405162461bcd60e51b81526020600482015260066024820152654c424330363560d01b60448201526064016102c3565b816101e0015163ffffffff1642111561248d5760405162461bcd60e51b8152602060048201526006602482015265262121981a1b60d11b60448201526064016102c3565b81610200015163ffffffff164311156124d15760405162461bcd60e51b81526020600482015260066024820152654c424330343760d01b60448201526064016102c3565b60006124dc83610a43565b60208401516040516301a86b5560e41b815291925073__SignatureValidator____________________91631a86b5509161251d91859087906004016153fa565b602060405180830381865af415801561253a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061255e9190615421565b61257a5760405162461bcd60e51b81526004016102c39061543e565b600081815260a66020908152604080832060a79092529091206001015460ff16156125b75760405162461bcd60e51b81526004016102c3906158fd565b80546001600160a01b0316156125df5760405162461bcd60e51b81526004016102c3906153da565b600082815260a66020908152604091829020865181546001600160a01b03199081166001600160a01b0392831617835592880151600183018054909416911617909155908501518591906002820190612638908261522a565b5060608201516003820180546001600160a01b0319166001600160a01b0390921691909117905560808201516004820190612673908261522a565b5060a0820151600582015560c0820151600682015560e08201516007820180546001600160401b0319166001600160401b0390921691909117905561010082015160088201906126c3908261522a565b506101208201516009820155610140820151600a820180546101608501516101808601516101a08701516101c08801516101e08901516102008a015163ffffffff9889166001600160401b031990971696909617600160201b958916959095029490941763ffffffff60401b1916600160401b61ffff9485160261ffff60501b191617600160501b939092169290920217600160601b600160a01b031916600160601b9186169190910263ffffffff60801b191617600160801b918516919091021763ffffffff60a01b1916600160a01b9390911692909202919091179055610220820151600b82015561024090910151600c90910155600082815260a760209081526040918290204290819055825134815291820152339184917fb1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f910160405180910390a350505050565b6033546001600160a01b031690565b612826613b42565b600081815260a66020526040902080546001600160a01b031661285b5760405162461bcd60e51b81526004016102c39061591d565b600a810154600160801b900463ffffffff164211801561288b5750600a810154600160a01b900463ffffffff1643115b6128c05760405162461bcd60e51b81526020600482015260066024820152654c424330343160d01b60448201526064016102c3565b600081600c015482600b0154836005015484600901546128e09190615661565b6128ea9190615661565b6128f49190615661565b6003830154600684015460018501546001600160a01b039081166000908152609a602052604081205494955092169261292d9190614201565b60018501546001600160a01b03166000908152609a602052604081208054929350839290919061295e90849061545e565b90915550506001840154604051600080516020615e4983398151915291612994916001600160a01b039091169084908990615471565b60405180910390a16003840154604080518581526001600160a01b03909216602083015286917f9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41910160405180910390a2600085815260a66020526040812080546001600160a01b03199081168255600182018054909116905590612a1c6002830182614717565b6003820180546001600160a01b0319169055612a3c600483016000614717565b600060058301819055600683018190556007830180546001600160401b0319169055612a6c906008840190614717565b50600060098201819055600a820180546001600160c01b0319169055600b8201819055600c90910181905585815260a760205260408082206001908101805460ff19169091179055516001600160a01b0384169085908381818185875af1925050503d8060008114612afa576040519150601f19603f3d011682016040523d82523d6000602084013e612aff565b606091505b5050905080612b395760405162461bcd60e51b8152602060048201526006602482015265131090cc0d0d60d21b60448201526064016102c3565b5050505050612b486001606555565b50565b612b5433614389565b612b705760405162461bcd60e51b81526004016102c3906153ba565b3360009081526099602052604081208054349290612b8f908490615661565b90915550506040517f456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af849061190b9033903490615731565b6000610a4e82613b9b565b612bda33614389565b612bf65760405162461bcd60e51b81526004016102c3906153ba565b611d7f3334614219565b612c08613b42565b612c113361434a565b612c2d5760405162461bcd60e51b81526004016102c3906153ba565b600085815260a7602052604090206001015460ff1615612c5f5760405162461bcd60e51b81526004016102c3906158fd565b600085815260a66020526040902080546001600160a01b0316612c945760405162461bcd60e51b81526004016102c39061591d565b60405162f5b49160e01b815260009073__BtcUtils______________________________9062f5b49190612ccc908990600401614ebf565b600060405180830381865af4158015612ce9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612d11919081019061593d565b9050600073__BtcUtils______________________________632d56f32383600181518110612d4257612d42615a50565b6020026020010151602001516040518263ffffffff1660e01b8152600401612d6a9190614ebf565b600060405180830381865af4158015612d87573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612daf9190810190615833565b905080516021148015612de7575080600081518110612dd057612dd0615a50565b6020910101516001600160f81b031916600160fd1b145b612e1c5760405162461bcd60e51b81526020600482015260066024820152654c424330373560d01b60448201526064016102c3565b60005b60018251612e2d919061545e565b8160ff161015612e9f5781612e43826001615a66565b60ff1681518110612e5657612e56615a50565b602001015160f81c60f81b828260ff1681518110612e7657612e76615a50565b60200101906001600160f81b031916908160001a90535080612e9781615a7f565b915050612e1f565b50600081806020019051810190612eb69190615a9e565b9050808914612ef05760405162461bcd60e51b81526020600482015260066024820152654c424330363960d01b60448201526064016102c3565b60018401546001600160a01b03163314612f355760405162461bcd60e51b815260206004820152600660248201526509884866068760d31b60448201526064016102c3565b600a84015460975460405163fea8ba6360e01b8152600160501b90920461ffff16916001600160a01b0390911690635b6445879073__BtcUtils______________________________9063fea8ba6390612f93908e90600401614ebf565b602060405180830381865af4158015612fb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fd49190615a9e565b8a8a8a6040518563ffffffff1660e01b8152600401612ff69493929190615ab7565b602060405180830381865afa158015613013573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130379190615a9e565b121561306e5760405162461bcd60e51b81526020600482015260066024820152654c424330343960d01b60448201526064016102c3565b8260008151811061308157613081615a50565b6020026020010151600001516402540be40061309d9190615b13565b6001600160401b0316846009015411156130e25760405162461bcd60e51b81526020600482015260066024820152654c424330363760d01b60448201526064016102c3565b600073__BtcUtils______________________________63c7ce85ac8560008151811061311157613111615a50565b602090810291909101810151015160a4546040516001600160e01b031960e085901b168152613147929160ff1690600401615b3e565b600060405180830381865af4158015613164573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261318c9190810190615833565b90508080519060200120856008016040516131a79190615b62565b6040518091039020146131e55760405162461bcd60e51b81526020600482015260066024820152650988486606c760d31b60448201526064016102c3565b604080516102608101825286546001600160a01b039081168252600188015416602082015260028701805461349693899290840191613223906151a1565b80601f016020809104026020016040519081016040528092919081815260200182805461324f906151a1565b801561329c5780601f106132715761010080835404028352916020019161329c565b820191906000526020600020905b81548152906001019060200180831161327f57829003601f168201915b505050918352505060038201546001600160a01b031660208201526004820180546040909201916132cc906151a1565b80601f01602080910402602001604051908101604052809291908181526020018280546132f8906151a1565b80156133455780601f1061331a57610100808354040283529160200191613345565b820191906000526020600020905b81548152906001019060200180831161332857829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b6060820152600882018054608090920191613383906151a1565b80601f01602080910402602001604051908101604052809291908181526020018280546133af906151a1565b80156133fc5780601f106133d1576101008083540402835291602001916133fc565b820191906000526020600020905b8154815290600101906020018083116133df57829003601f168201915b505050918352505060098201546020820152600a82015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b90910416610100820152600b820154610120820152600c9091015461014090910152838a6144d8565b1561353957600685015460018601546001600160a01b03166000908152609a602052604081205490916134c891614201565b60018701546001600160a01b03166000908152609a60205260408120805492935083929091906134f990849061545e565b90915550506001860154604051600080516020615e498339815191529161352f916001600160a01b039091169084908790615471565b60405180910390a1505b6001850154600586015460098701546000926001600160a01b03169161355e91615661565b604051600081818185875af1925050503d806000811461359a576040519150601f19603f3d011682016040523d82523d6000602084013e61359f565b606091505b50509050806135d95760405162461bcd60e51b815260206004820152600660248201526504c42433035360d41b60448201526064016102c3565b6135e786600b01548c614278565b600083815260a66020526040812080546001600160a01b0319908116825560018201805490911690559061361e6002830182614717565b6003820180546001600160a01b031916905561363e600483016000614717565b600060058301819055600683018190556007830180546001600160401b031916905561366e906008840190614717565b50600060098201819055600a820180546001600160c01b0319169055600b8201819055600c90910181905583815260a760205260408082206001908101805460ff191690911790555184917fb781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb38491a25050505050506136ec6001606555565b5050505050565b606060008060015b60a2548111613740576000818152609b6020526040902061371b9061468d565b1561372e578261372a816153a1565b9350505b80613738816153a1565b9150506136fb565b506000826001600160401b0381111561375b5761375b614765565b60405190808252806020026020018201604052801561379457816020015b6137816146d6565b8152602001906001900390816137795790505b5060009350905060015b60a25481116139f5576000818152609b6020526040902092506137c08361468d565b156139e3576040805160c0810182528454815260018501546001600160a01b031660208201526002850180549192869290840191906137fe906151a1565b80601f016020809104026020016040519081016040528092919081815260200182805461382a906151a1565b80156138775780601f1061384c57610100808354040283529160200191613877565b820191906000526020600020905b81548152906001019060200180831161385a57829003601f168201915b50505050508152602001600382018054613890906151a1565b80601f01602080910402602001604051908101604052809291908181526020018280546138bc906151a1565b80156139095780601f106138de57610100808354040283529160200191613909565b820191906000526020600020905b8154815290600101906020018083116138ec57829003601f168201915b5050509183525050600482015460ff1615156020820152600582018054604090920191613935906151a1565b80601f0160208091040260200160405190810160405280929190818152602001828054613961906151a1565b80156139ae5780601f10613983576101008083540402835291602001916139ae565b820191906000526020600020905b81548152906001019060200180831161399157829003601f168201915b5050505050815250508285815181106139c9576139c9615a50565b602002602001018190525083806139df906153a1565b9450505b806139ed816153a1565b91505061379e565b509392505050565b613a056143c8565b6001600160a01b038116613a6a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102c3565b612b4881614427565b80516000906001600160a01b03163014613ab85760405162461bcd60e51b8152602060048201526006602482015265262121981a9b60d11b60448201526064016102c3565b60405163025018e760e31b815273__QuotesV2______________________________90631280c73890613aef908590600401615bd8565b600060405180830381865af4158015613b0c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613b349190810190615833565b805190602001209050919050565b600260655403613b945760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016102c3565b6002606555565b600081602001516001600160a01b0316306001600160a01b031614613beb5760405162461bcd60e51b81526020600482015260066024820152654c424330353160d01b60448201526064016102c3565b6101008201516097546001600160a01b03918216911603613c375760405162461bcd60e51b8152602060048201526006602482015265262121981a9960d11b60448201526064016102c3565b81606001515160151480613c5057508160600151516021145b613c855760405162461bcd60e51b81526020600482015260066024820152654c424330353360d01b60448201526064016102c3565b8160a0015151601514613cc35760405162461bcd60e51b8152602060048201526006602482015265131090cc0d4d60d21b60448201526064016102c3565b609f548261026001518361024001518460c00151856101800151613ce79190615661565b613cf19190615661565b613cfb9190615661565b1015613d325760405162461bcd60e51b81526020600482015260066024820152654c424330353560d01b60448201526064016102c3565b816101c0015163ffffffff16826101a0015163ffffffff16613d549190615d72565b6001600160401b031663ffffffff1015613d995760405162461bcd60e51b81526020600482015260066024820152654c424330373160d01b60448201526064016102c3565b60405162773b7960e01b815273__QuotesV2______________________________9062773b7990613aef908590600401615d92565b609754606086015160a08701516000848152609c602052604081205490936001600160a01b031692636adc013392899288928a92899230919063ffffffff1615801590613e30575060008b8152609c6020526040902054600160201b900460ff165b6040518963ffffffff1660e01b8152600401613e53989796959493929190615da5565b6020604051808303816000875af1158015613e72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e969190615a9e565b9695505050505050565b60008084138015613ee457508461026001518561024001518660c00151876101800151613ecd9190615661565b613ed79190615661565b613ee19190615661565b84105b15613ef157506000611888565b60975460405163bd0c1fff60e01b8152600481018490526000916001600160a01b03169063bd0c1fff90602401600060405180830381865afa158015613f3b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613f639190810190615833565b90506000815111613fad5760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a5908189b1bd8dac81a195a59da1d60621b60448201526064016102c3565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc90613fe7908590600401614ebf565b602060405180830381865af4158015614004573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140289190615a9e565b90506000876101c00151886101a0015161404291906158d9565b63ffffffff1690508082111561405e5760009350505050611888565b856000036140725760019350505050611888565b6097546102008901516000916001600160a01b03169063bd0c1fff9060019061409f9061ffff168a615661565b6140a9919061545e565b6040518263ffffffff1660e01b81526004016140c791815260200190565b600060405180830381865afa1580156140e4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261410c9190810190615833565b905060008151116141485760405162461bcd60e51b81526020600482015260066024820152650988486606a760d31b60448201526064016102c3565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc90614182908590600401614ebf565b602060405180830381865af415801561419f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141c39190615a9e565b9050896101e0015163ffffffff16816141dc9190615661565b8811156141f157600195505050505050611888565b5060009998505050505050505050565b60008183106142105781614212565b825b9392505050565b6001600160a01b03821660009081526098602052604081208054839290614241908490615661565b90915550506040517f42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f53906113529084908490615731565b81156143465760a9546040516000916001600160a01b03169084908381818185875af1925050503d80600081146142cb576040519150601f19603f3d011682016040523d82523d6000602084013e6142d0565b606091505b505090508061430a5760405162461bcd60e51b8152602060048201526006602482015265131090cc0dcd60d21b60448201526064016102c3565b817f58e13ac0d5c8d27d14009841e72ac8b1858e2709c2c99af2075d9bb5f340ecfc8460405161433c91815260200190565b60405180910390a2505b5050565b6001600160a01b0381166000908152609a602052604081205415801590610a4e5750506001600160a01b03166000908152609d60205260409020541590565b6001600160a01b03811660009081526099602052604081205415801590610a4e5750506001600160a01b03166000908152609d60205260409020541590565b336143d161280f565b6001600160a01b031614611d7f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102c3565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216600090815260986020526040812080548392906144a190849061545e565b90915550506040517f8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc0064587906113529084908490615731565b6097546040516339cf1b2560e11b81526004810183905260009182916001600160a01b039091169063739e364a90602401600060405180830381865afa158015614526573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261454e9190810190615833565b9050600081511161458a5760405162461bcd60e51b81526020600482015260066024820152654c424330353960d01b60448201526064016102c3565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc906145c4908590600401614ebf565b602060405180830381865af41580156145e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906146059190615a9e565b60a3546101c0880151600088815260a7602052604090205492935090916146329163ffffffff1690615661565b61463c9190615661565b81111561464e57600192505050614212565b856101e0015163ffffffff16421180614671575085610200015163ffffffff1643115b1561468157600192505050614212565b50600095945050505050565b60018101546000906146a7906001600160a01b0316614389565b806146c4575060018201546146c4906001600160a01b031661434a565b8015610a4e5750506004015460ff1690565b6040518060c001604052806000815260200160006001600160a01b031681526020016060815260200160608152602001600015158152602001606081525090565b508054614723906151a1565b6000825580601f10614733575050565b601f016020900490600052602060002090810190612b4891905b80821115614761576000815560010161474d565b5090565b634e487b7160e01b600052604160045260246000fd5b60405161026081016001600160401b038111828210171561479e5761479e614765565b60405290565b60405161028081016001600160401b038111828210171561479e5761479e614765565b604051608081016001600160401b038111828210171561479e5761479e614765565b604051601f8201601f191681016001600160401b038111828210171561481157614811614765565b604052919050565b60006001600160401b0382111561483257614832614765565b50601f01601f191660200190565b600082601f83011261485157600080fd5b813561486461485f82614819565b6147e9565b81815284602083860101111561487957600080fd5b816020850160208301376000918101602001919091529392505050565b600080604083850312156148a957600080fd5b82356001600160401b03808211156148c057600080fd5b6148cc86838701614840565b935060208501359150808211156148e257600080fd5b506148ef85828601614840565b9150509250929050565b6001600160a01b0381168114612b4857600080fd5b8035612351816148f9565b8035600781900b811461235157600080fd5b803563ffffffff8116811461235157600080fd5b803561ffff8116811461235157600080fd5b6000610260828403121561496457600080fd5b61496c61477b565b90506149778261490e565b81526149856020830161490e565b602082015260408201356001600160401b03808211156149a457600080fd5b6149b085838601614840565b60408401526149c16060850161490e565b606084015260808401359150808211156149da57600080fd5b6149e685838601614840565b608084015260a084013560a084015260c084013560c0840152614a0b60e08501614919565b60e084015261010091508184013581811115614a2657600080fd5b614a3286828701614840565b83850152505050610120808301358183015250610140614a5381840161492b565b90820152610160614a6583820161492b565b90820152610180614a7783820161493f565b908201526101a0614a8983820161493f565b908201526101c0614a9b83820161492b565b908201526101e0614aad83820161492b565b90820152610200614abf83820161492b565b9082015261022082810135908201526102409182013591810191909152919050565b600060208284031215614af357600080fd5b81356001600160401b03811115614b0957600080fd5b61188884828501614951565b80356001600160601b03198116811461235157600080fd5b8015158114612b4857600080fd5b803561235181614b2d565b60006102808284031215614b5957600080fd5b614b616147a4565b9050614b6c82614b15565b8152614b7a6020830161490e565b6020820152614b8b6040830161490e565b604082015260608201356001600160401b0380821115614baa57600080fd5b614bb685838601614840565b6060840152614bc76080850161490e565b608084015260a0840135915080821115614be057600080fd5b614bec85838601614840565b60a084015260c084013560c084015260e084013560e08401526101009150614c1582850161490e565b8284015261012091508184013581811115614c2f57600080fd5b614c3b86828701614840565b83850152505050610140614c5081840161492b565b90820152610160614c62838201614919565b9082015261018082810135908201526101a0614c7f81840161492b565b908201526101c0614c9183820161492b565b908201526101e0614ca383820161492b565b90820152610200614cb583820161493f565b90820152610220614cc7838201614b3b565b9082015261024082810135908201526102609182013591810191909152919050565b600080600080600060a08688031215614d0157600080fd5b85356001600160401b0380821115614d1857600080fd5b614d2489838a01614b46565b96506020880135915080821115614d3a57600080fd5b614d4689838a01614840565b95506040880135915080821115614d5c57600080fd5b614d6889838a01614840565b94506060880135915080821115614d7e57600080fd5b50614d8b88828901614840565b95989497509295608001359392505050565b600060208284031215614daf57600080fd5b5035919050565b60008060008060808587031215614dcc57600080fd5b84356001600160401b0380821115614de357600080fd5b614def88838901614840565b95506020870135915080821115614e0557600080fd5b614e1188838901614840565b945060408701359150614e2382614b2d565b90925060608601359080821115614e3957600080fd5b50614e4687828801614840565b91505092959194509250565b600060208284031215614e6457600080fd5b8135614212816148f9565b60005b83811015614e8a578181015183820152602001614e72565b50506000910152565b60008151808452614eab816020860160208601614e6f565b601f01601f19169290920160200192915050565b6020815260006142126020830184614e93565b6001600160a01b03169052565b8051825260018060a01b0360208201511660208301526000604082015160c06040850152614f1060c0850182614e93565b905060608301518482036060860152614f298282614e93565b91505060808301511515608085015260a083015184820360a086015261125d8282614e93565b6020815260006142126020830184614edf565b6001600160a01b0391909116815260200190565b60008060408385031215614f8957600080fd5b823591506020830135614f9b81614b2d565b809150509250929050565b60008060408385031215614fb957600080fd5b82356001600160401b0380821115614fd057600080fd5b6148cc86838701614b46565b600060208284031215614fee57600080fd5b81356001600160401b0381111561500457600080fd5b61188884828501614b46565b6000806040838503121561502357600080fd5b82356001600160401b038082111561503a57600080fd5b6148cc86838701614951565b60006001600160401b0382111561505f5761505f614765565b5060051b60200190565b600080600080600060a0868803121561508157600080fd5b853594506020808701356001600160401b03808211156150a057600080fd5b6150ac8a838b01614840565b9650604089013595506060890135945060808901359150808211156150d057600080fd5b508701601f810189136150e257600080fd5b80356150f061485f82615046565b81815260059190911b8201830190838101908b83111561510f57600080fd5b928401925b8284101561512d57833582529284019290840190615114565b80955050505050509295509295909350565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561519457603f19888603018452615182858351614edf565b94509285019290850190600101615166565b5092979650505050505050565b600181811c908216806151b557607f821691505b6020821081036151d557634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561522557600081815260208120601f850160051c810160208610156152025750805b601f850160051c820191505b818110156152215782815560010161520e565b5050505b505050565b81516001600160401b0381111561524357615243614765565b6152578161525184546151a1565b846151db565b602080601f83116001811461528c57600084156152745750858301515b600019600386901b1c1916600185901b178555615221565b600085815260208120601f198616915b828110156152bb5788860151825594840194600190910190840161529c565b50858210156152d95787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600081546152f6816151a1565b808552602060018381168015615313576001811461532d5761535b565b60ff1985168884015283151560051b88018301955061535b565b866000528260002060005b858110156153535781548a8201860152908301908401615338565b890184019650505b505050505092915050565b60408152600061537960408301856152e9565b828103602084015261125d81856152e9565b634e487b7160e01b600052601160045260246000fd5b6000600182016153b3576153b361538b565b5060010190565b6020808252600690820152654c424330303160d01b604082015260600190565b60208082526006908201526509884866064760d31b604082015260600190565b60018060a01b038416815282602082015260606040820152600061125d6060830184614e93565b60006020828403121561543357600080fd5b815161421281614b2d565b6020808252600690820152654c424330323960d01b604082015260600190565b81810381811115610a4e57610a4e61538b565b6001600160a01b039390931683526020830191909152604082015260600190565b8082028115828204841417610a4e57610a4e61538b565b634e487b7160e01b600052601260045260246000fd5b6000826154ce576154ce6154a9565b500490565b80516001600160601b0319168252600061028060208301516154f86020860182614ed2565b50604083015161550b6040860182614ed2565b50606083015181606086015261552382860182614e93565b91505060808301516155386080860182614ed2565b5060a083015184820360a08601526155508282614e93565b91505060c083015160c085015260e083015160e08501526101008084015161557a82870182614ed2565b505061012080840151858303828701526155948382614e93565b92505050610140808401516155b08287018263ffffffff169052565b5050610160808401516155c78287018260070b9052565b505061018083810151908501526101a08084015163ffffffff908116918601919091526101c0808501518216908601526101e080850151909116908501526102008084015161ffff16908501526102208084015115159085015261024080840151908501526102609283015192909301919091525090565b60408152600061565260408301856154d3565b90508260208301529392505050565b80820180821115610a4e57610a4e61538b565b6001600160a01b03949094168452602084019290925215156040830152606082015260800190565b600082516156ae818460208701614e6f565b9190910192915050565b63ffffffff8616815284602082015260a0604082015260006156dd60a0830186614e93565b931515606083015250608001529392505050565b6020808252600690820152654c424330313960d01b604082015260600190565b60208082526006908201526504c42433032360d41b604082015260600190565b6001600160a01b03929092168252602082015260400190565b643832b3b4b760d91b815260050190565b651c1959dbdd5d60d21b815260060190565b60208082526006908201526509884866060760d31b604082015260600190565b60008261579c5761579c6154a9565b500690565b848152600084516157b9816020850160208901614e6f565b808301905060018060601b03198516602082015283516157e0816034840160208801614e6f565b016034019695505050505050565b600082601f8301126157ff57600080fd5b815161580d61485f82614819565b81815284602083860101111561582257600080fd5b611888826020830160208701614e6f565b60006020828403121561584557600080fd5b81516001600160401b0381111561585b57600080fd5b611888848285016157ee565b600160fd1b8152826001820152607560f81b602182015260008251615893816022850160208701614e6f565b919091016022019392505050565b6060815260006158b46060830186614e93565b82810360208401526158c68186614e93565b9150508215156040830152949350505050565b63ffffffff8181168382160190808211156158f6576158f661538b565b5092915050565b602080825260069082015265131090cc0d8d60d21b604082015260600190565b602080825260069082015265262121981a1960d11b604082015260600190565b6000602080838503121561595057600080fd5b82516001600160401b038082111561596757600080fd5b818501915085601f83011261597b57600080fd5b815161598961485f82615046565b81815260059190911b830184019084810190888311156159a857600080fd5b8585015b83811015615a43578051858111156159c45760008081fd5b86016080818c03601f19018113156159dc5760008081fd5b6159e46147c7565b8983015188811681146159f75760008081fd5b815260408381015189811115615a0d5760008081fd5b615a1b8f8d838801016157ee565b838d0152506060848101519183019190915291909201519082015283529186019186016159ac565b5098975050505050505050565b634e487b7160e01b600052603260045260246000fd5b60ff8181168382160190811115610a4e57610a4e61538b565b600060ff821660ff8103615a9557615a9561538b565b60010192915050565b600060208284031215615ab057600080fd5b5051919050565b600060808201868352602086818501528560408501526080606085015281855180845260a086019150828701935060005b81811015615b0457845183529383019391830191600101615ae8565b50909998505050505050505050565b6001600160401b03818116838216028082169190828114615b3657615b3661538b565b505092915050565b604081526000615b516040830185614e93565b905082151560208301529392505050565b6000808354615b70816151a1565b60018281168015615b885760018114615b9d57615bcc565b60ff1984168752821515830287019450615bcc565b8760005260208060002060005b85811015615bc35781548a820152908401908201615baa565b50505082870194505b50929695505050505050565b60208152615bea602082018351614ed2565b60006020830151615bfe6040840182614ed2565b506040830151610260806060850152615c1b610280850183614e93565b91506060850151615c2f6080860182614ed2565b506080850151601f19808685030160a0870152615c4c8483614e93565b935060a087015160c087015260c087015160e087015260e08701519150610100615c7a8188018460070b9052565b80880151925050610120818786030181880152615c978584614e93565b908801516101408881019190915288015190945091506101609050615cc38187018363ffffffff169052565b8601519050610180615cdc8682018363ffffffff169052565b86015190506101a0615cf38682018361ffff169052565b86015190506101c0615d0a8682018361ffff169052565b86015190506101e0615d238682018363ffffffff169052565b8601519050610200615d3c8682018363ffffffff169052565b8601519050610220615d558682018363ffffffff169052565b860151610240868101919091529095015193019290925250919050565b6001600160401b038181168382160190808211156158f6576158f661538b565b60208152600061421260208301846154d3565b6000610100808352615db98184018c614e93565b90508960208401528281036040840152615dd3818a614e93565b90508760608401528281036080840152615ded8188614e93565b6001600160a01b03871660a085015283810360c08501529050615e108186614e93565b91505082151560e0830152999850505050505050505056fe3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f69685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80da2646970667358221220d585a79153fe9f07b7ce30a1f1ce779f7aa3d5c1d05ca8c45b4b559482e1f30f64736f6c63430008120033", + "deployedBytecode": "0x60806040526004361061027f5760003560e01c80630220f41d146102d357806304ade855146102f35780630a7bf57a1461031f5780630a9cb4a71461033457806322140009146103535780632d67952c146103735780632e1a7d4d1461039357806333f07ad3146103b357806341705518146103c8578063418663a2146103db5780634198687e14610405578063457385f21461040d5780634d0ec9711461043d57806354015ee01461045d57806354fd4d501461049057806355f21eb7146104c457806359c153be146104f157806363c671351461050657806369652fcf1461051c578063710738b114610531578063715018a61461055e57806372cbf4e81461057357806379b9550b146105935780637aefa8c2146105b35780638490a8df146105c65780638beb537a146105dc5780638d597939146105ef5780638da5cb5b146106065780638f91797d1461061b5780639b56d6c91461063b5780639cd6557f146106715780639d79b59b146106865780639e816999146106af578063a4a5ba50146106b7578063a93bb247146106cc578063ae76ce86146106e3578063ae93b67b146106fa578063b3a849aa14610711578063bd519eff14610731578063bd5798c314610767578063be6de4eb14610789578063c525cdd81461079e578063c7213163146107b5578063cfb92f0a146107d0578063d0e30db0146107e7578063d6c70de8146107ef578063e1de16c61461080f578063e30e6ea314610825578063e78cea921461083b578063e830b6901461085b578063e8fcce7114610870578063edc922a914610886578063f2fde38b146108a8578063f8b2cb4f146108c8578063fa88dcde146108fe578063fb32c5081461091357600080fd5b366102ce576097546001600160a01b031633146102cc5760405162461bcd60e51b81526020600482015260066024820152654c424330303760d01b60448201526064015b60405180910390fd5b005b600080fd5b3480156102df57600080fd5b506102cc6102ee366004614896565b610931565b3480156102ff57600080fd5b50610308600181565b60405160ff90911681526020015b60405180910390f35b34801561032b57600080fd5b50610308600281565b34801561034057600080fd5b5060a2545b604051908152602001610316565b34801561035f57600080fd5b5061034561036e366004614ae1565b610a43565b34801561037f57600080fd5b5061034561038e366004614ce9565b610a54565b34801561039f57600080fd5b506102cc6103ae366004614d9d565b611266565b3480156103bf57600080fd5b5060a154610345565b6103456103d6366004614db6565b61135e565b3480156103e757600080fd5b506103f26101301981565b60405160019190910b8152602001610316565b6102cc611890565b34801561041957600080fd5b5061042d610428366004614e52565b611915565b6040519015158152602001610316565b34801561044957600080fd5b5061042d610458366004614e52565b61194b565b34801561046957600080fd5b5061042d610478366004614d9d565b600090815260a7602052604090206001015460ff1690565b34801561049c57600080fd5b5060408051808201825260058152640312e332e360dc1b602082015290516103169190614ebf565b3480156104d057600080fd5b506104e46104df366004614e52565b611981565b6040516103169190614f4f565b3480156104fd57600080fd5b506102cc611bd6565b34801561051257600080fd5b5061034560a85481565b34801561052857600080fd5b506102cc611d81565b34801561053d57600080fd5b5060a954610551906001600160a01b031681565b6040516103169190614f62565b34801561056a57600080fd5b506102cc611e2c565b34801561057f57600080fd5b506102cc61058e366004614f76565b611e3e565b34801561059f57600080fd5b5061042d6105ae366004614fa6565b611ed8565b61042d6105c1366004614fdc565b612044565b3480156105d257600080fd5b5061034560a25481565b6102cc6105ea366004615010565b612356565b3480156105fb57600080fd5b506103f261012c1981565b34801561061257600080fd5b5061055161280f565b34801561062757600080fd5b506102cc610636366004614d9d565b61281e565b34801561064757600080fd5b50610345610656366004614e52565b6001600160a01b031660009081526099602052604090205490565b34801561067d57600080fd5b50610308600081565b34801561069257600080fd5b5061069c6188b881565b60405161ffff9091168152602001610316565b6102cc612b4b565b3480156106c357600080fd5b50610345600181565b3480156106d857600080fd5b506103f261012d1981565b3480156106ef57600080fd5b506103f261012b1981565b34801561070657600080fd5b506103f26103831981565b34801561071d57600080fd5b5061034561072c366004614fdc565b612bc6565b34801561073d57600080fd5b5061034561074c366004614e52565b6001600160a01b03166000908152609a602052604090205490565b34801561077357600080fd5b5060a054600160201b900463ffffffff16610345565b34801561079557600080fd5b50610345600081565b3480156107aa57600080fd5b506103f261012e1981565b3480156107c157600080fd5b5060a05463ffffffff16610345565b3480156107dc57600080fd5b506103f261012f1981565b6102cc612bd1565b3480156107fb57600080fd5b506102cc61080a366004615069565b612c00565b34801561081b57600080fd5b5061069c6108fc81565b34801561083157600080fd5b506103f260c71981565b34801561084757600080fd5b50609754610551906001600160a01b031681565b34801561086757600080fd5b50609e54610345565b34801561087c57600080fd5b506103f260631981565b34801561089257600080fd5b5061089b6136f3565b604051610316919061513f565b3480156108b457600080fd5b506102cc6108c3366004614e52565b6139fd565b3480156108d457600080fd5b506103456108e3366004614e52565b6001600160a01b031660009081526098602052604090205490565b34801561090a57600080fd5b50609f54610345565b34801561091f57600080fd5b506097546001600160a01b0316610551565b60008251118015610943575060008151115b6109785760405162461bcd60e51b8152602060048201526006602482015265262121981b9b60d11b60448201526064016102c3565b600060015b60a2548111610a2a576000818152609b6020526040902060018101549092506001600160a01b03163303610a1857600282016109b9858261522a565b50600382016109c8848261522a565b50336001600160a01b03167fc15f90eb34a098bb02f2641dff62935246fb005d8f06e13d5cc6be0bddcce8e38360020184600301604051610a0a929190615366565b60405180910390a250505050565b80610a22816153a1565b91505061097d565b5060405162461bcd60e51b81526004016102c3906153ba565b6000610a4e82613a73565b92915050565b6000610a5e613b42565b6000610a6987613b9b565b600081815260a56020526040902054909150600160ff9091161115610aa05760405162461bcd60e51b81526004016102c3906153da565b60408088015190516301a86b5560e41b815273__SignatureValidator____________________91631a86b55091610adf919085908b906004016153fa565b602060405180830381865af4158015610afc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b209190615421565b610b3c5760405162461bcd60e51b81526004016102c39061543e565b637fffffff8310610b785760405162461bcd60e51b815260206004820152600660248201526504c42433033360d41b60448201526064016102c3565b6000610b878887878786613dce565b905061012f8101610bc35760405162461bcd60e51b81526020600482015260066024820152654c424330333160d01b60448201526064016102c3565b61012e8101610bfd5760405162461bcd60e51b815260206004820152600660248201526526212198199960d11b60448201526064016102c3565b6101308101610c375760405162461bcd60e51b81526020600482015260066024820152654c424330333360d01b60448201526064016102c3565b6101318101610c715760405162461bcd60e51b8152602060048201526006602482015265131090cc0ccd60d21b60448201526064016102c3565b6103848101610cab5760405162461bcd60e51b81526020600482015260066024820152654c424330333560d01b60448201526064016102c3565b6000811380610cbb575060c71981145b80610cc7575060631981145b610cfc5760405162461bcd60e51b815260206004820152600660248201526526212198199b60d11b60448201526064016102c3565b6000828152609c6020526040902054610d1f908990839063ffffffff1687613ea0565b15610df05760e08801516040808a01516001600160a01b031660009081526099602052908120549091610d5191614201565b905080609960008b604001516001600160a01b03166001600160a01b031681526020019081526020016000206000828254610d8c919061545e565b90915550506040808a01519051600080516020615e4983398151915291610db69184908790615471565b60405180910390a160a054600090606490610dd79063ffffffff1684615492565b610de191906154bf565b9050610ded3382614219565b50505b60c719811480610e01575060631981145b15610e7557600082815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff1916905581518481529081018390527ffb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe910160405180910390a191506112539050565b60405163fa6ea3e760e01b8152819073__QuotesV2______________________________9063fa6ea3e790610eb0908c90859060040161563f565b60006040518083038186803b158015610ec857600080fd5b505af4158015610edc573d6000803e3d6000fd5b5050506000848152609c602052604090205463ffffffff16159050611047576000838152609c6020526040812054600160201b900460ff1615610f4e57610f47828b61026001518c60c001518d6101800151610f389190615661565b610f429190615661565b614201565b9050610f6a565b610f67828b61026001518c60c00151610f429190615661565b90505b610f788a6040015182614219565b6000610f84828461545e565b9050610f958b610240015186614278565b60a1548111156110405760808b01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114610ff3576040519150601f19603f3d011682016040523d82523d6000602084013e610ff8565b606091505b50509050600080516020615e298339815191528c608001518383896040516110239493929190615674565b60405180910390a18061103e5761103e8c6040015183614219565b505b50506111ec565b6102208901518190801561106057508961018001518110155b156111525760008a61010001516001600160a01b03168b610140015163ffffffff168c61018001518d610120015160405161109b919061569c565b600060405180830381858888f193505050503d80600081146110d9576040519150601f19603f3d011682016040523d82523d6000602084013e6110de565b606091505b505090508a61010001516001600160a01b0316336001600160a01b0316600080516020615e698339815191528d61014001518e61018001518f6101200151868b60405161112f9594939291906156b8565b60405180910390a38015611150576101808b015161114d908361545e565b91505b505b60a1548111156111ea5760808a01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d80600081146111b0576040519150601f19603f3d011682016040523d82523d6000602084013e6111b5565b606091505b50509050600080516020615e298339815191528b608001518383886040516111e09493929190615674565b60405180910390a1505b505b600083815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff19169055905183815284917f0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2910160405180910390a2509150505b61125d6001606555565b95945050505050565b336000908152609860205260409020548111156112955760405162461bcd60e51b81526004016102c3906156f1565b33600090815260986020526040812080548392906112b490849061545e565b9091555050604051600090339083908381818185875af1925050503d80600081146112fb576040519150601f19603f3d011682016040523d82523d6000602084013e611300565b606091505b50509050806113215760405162461bcd60e51b81526004016102c390615711565b7f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b653383604051611352929190615731565b60405180910390a15050565b60003233146113985760405162461bcd60e51b81526020600482015260066024820152654c424330303360d01b60448201526064016102c3565b60008551116113d25760405162461bcd60e51b815260206004820152600660248201526504c42433031360d41b60448201526064016102c3565b600084511161140c5760405162461bcd60e51b81526020600482015260066024820152654c424330313760d01b60448201526064016102c3565b60405160200161141b9061574a565b6040516020818303038152906040528051906020012082604051602001611442919061569c565b6040516020818303038152906040528051906020012014806114ad575060405160200161146e9061575b565b6040516020818303038152906040528051906020012082604051602001611495919061569c565b60405160208183030381529060405280519060200120145b806115055750604051630c4dee8d60e31b602082015260240160405160208183030381529060405280519060200120826040516020016114ed919061569c565b60405160208183030381529060405280519060200120145b61153a5760405162461bcd60e51b815260206004820152600660248201526509884866062760d31b60448201526064016102c3565b336000908152609960205260409020541580156115645750336000908152609a6020526040902054155b6115995760405162461bcd60e51b815260206004820152600660248201526504c42433037360d41b60448201526064016102c3565b336000908152609d6020526040902054156115df5760405162461bcd60e51b81526020600482015260066024820152654c424330303960d01b60448201526064016102c3565b6040516020016115ee9061574a565b6040516020818303038152906040528051906020012082604051602001611615919061569c565b604051602081830303815290604052805190602001200361166957609e543410156116525760405162461bcd60e51b81526004016102c39061576d565b33600090815260996020526040902034905561176e565b6040516020016116789061575b565b604051602081830303815290604052805190602001208260405160200161169f919061569c565b60405160208183030381529060405280519060200120036116f357609e543410156116dc5760405162461bcd60e51b81526004016102c39061576d565b336000908152609a6020526040902034905561176e565b609e54611701906002615492565b3410156117205760405162461bcd60e51b81526004016102c39061576d565b600061172d6002346154bf565b905061173a60023461578d565b1561174f5761174a816001615661565b611751565b805b33600090815260996020908152604080832093909355609a905220555b60a2805490600061177e836153a1565b90915550506040805160c08101825260a2548082523360208084019182528385018a8152606085018a9052881515608086015260a085018890526000938452609b909152939091208251815590516001820180546001600160a01b0319166001600160a01b0390921691909117905591519091906002820190611801908261522a565b5060608201516003820190611816908261522a565b50608082015160048201805460ff191691151591909117905560a08201516005820190611843908261522a565b505060a254604080519182523460208301523392507fa9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e910160405180910390a25060a2545b949350505050565b6118993361434a565b6118b55760405162461bcd60e51b81526004016102c3906153ba565b336000908152609a6020526040812080543492906118d4908490615661565b90915550506040517f873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa99061190b9033903490615731565b60405180910390a1565b600061192082614389565b8015610a4e5750609e546001600160a01b038316600090815260996020526040902054101592915050565b60006119568261434a565b8015610a4e5750609e546001600160a01b0383166000908152609a6020526040902054101592915050565b6119896146d6565b60015b60a2548111610a2a576000818152609b60205260409020600101546001600160a01b03808516911603611bc4576000818152609b6020908152604091829020825160c0810184528154815260018201546001600160a01b0316928101929092526002810180549293919291840191611a03906151a1565b80601f0160208091040260200160405190810160405280929190818152602001828054611a2f906151a1565b8015611a7c5780601f10611a5157610100808354040283529160200191611a7c565b820191906000526020600020905b815481529060010190602001808311611a5f57829003601f168201915b50505050508152602001600382018054611a95906151a1565b80601f0160208091040260200160405190810160405280929190818152602001828054611ac1906151a1565b8015611b0e5780601f10611ae357610100808354040283529160200191611b0e565b820191906000526020600020905b815481529060010190602001808311611af157829003601f168201915b5050509183525050600482015460ff1615156020820152600582018054604090920191611b3a906151a1565b80601f0160208091040260200160405190810160405280929190818152602001828054611b66906151a1565b8015611bb35780601f10611b8857610100808354040283529160200191611bb3565b820191906000526020600020905b815481529060010190602001808311611b9657829003601f168201915b505050505081525050915050919050565b80611bce816153a1565b91505061198c565b611bde613b42565b336000908152609d6020526040902054611c235760405162461bcd60e51b81526020600482015260066024820152654c424330323160d01b60448201526064016102c3565b60a054336000908152609d6020526040902054600160201b90910463ffffffff1690611c4f904361545e565b1015611c865760405162461bcd60e51b815260206004820152600660248201526526212198191960d11b60448201526064016102c3565b336000908152609a60209081526040808320546099909252822054611cab9190615661565b336000818152609a6020908152604080832083905560998252808320839055609d909152808220829055519293509183908381818185875af1925050503d8060008114611d14576040519150601f19603f3d011682016040523d82523d6000602084013e611d19565b606091505b5050905080611d3a5760405162461bcd60e51b81526004016102c390615711565b7fa8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d23383604051611d6b929190615731565b60405180910390a15050611d7f6001606555565b565b611d8a33614389565b611da65760405162461bcd60e51b81526004016102c3906153ba565b336000908152609d602052604090205415611dec5760405162461bcd60e51b81526020600482015260066024820152654c424330323360d01b60448201526064016102c3565b336000818152609d602052604090819020439055517fa6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d869161190b91614f62565b611e346143c8565b611d7f6000614427565b81611e4761280f565b6001600160a01b0316336001600160a01b03161480611e7f57506000818152609b60205260409020600101546001600160a01b031633145b611eb45760405162461bcd60e51b81526020600482015260066024820152654c424330303560d01b60448201526064016102c3565b506000918252609b6020526040909120600401805460ff1916911515919091179055565b600080611ee484612bc6565b8460600151856020015160601b8660a00151604051602001611f0994939291906157a1565b604051602081830303815290604052805190602001209050600081609760009054906101000a90046001600160a01b03166001600160a01b0316631d73d5dd6040518163ffffffff1660e01b8152600401600060405180830381865afa158015611f77573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611f9f9190810190615833565b604051602001611fb0929190615867565b60408051601f198184030181529082905260a454639b02794b60e01b835290925073__BtcUtils______________________________91639b02794b91612003918891869160ff909116906004016158a1565b602060405180830381865af4158015612020573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061125d9190615421565b600061204f33614389565b61206b5760405162461bcd60e51b81526004016102c3906153ba565b612073613b42565b81604001516001600160a01b0316336001600160a01b0316146120c15760405162461bcd60e51b8152602060048201526006602482015265131090cc0c8d60d21b60448201526064016102c3565b6101808201516040808401516001600160a01b03166000908152609860205220546120ed903490615661565b101561210b5760405162461bcd60e51b81526004016102c3906156f1565b600061211683613b9b565b600081815260a5602052604090205490915060ff16156121615760405162461bcd60e51b81526020600482015260066024820152654c424330323560d01b60448201526064016102c3565b61216f836040015134614219565b610140830151612182906188b8906158d9565b63ffffffff165a10156121c05760405162461bcd60e51b815260206004820152600660248201526526212198191b60d11b60448201526064016102c3565b60008361010001516001600160a01b031684610140015163ffffffff168561018001518661012001516040516121f6919061569c565b600060405180830381858888f193505050503d8060008114612234576040519150601f19603f3d011682016040523d82523d6000602084013e612239565b606091505b509091505063ffffffff42111561227b5760405162461bcd60e51b81526020600482015260066024820152654c424330323760d01b60448201526064016102c3565b6000828152609c60205260409020805463ffffffff19164263ffffffff1617905580156122d6576000828152609c602052604090819020805460ff60201b1916600160201b1790558401516101808501516122d69190614479565b8361010001516001600160a01b0316336001600160a01b0316600080516020615e6983398151915286610140015187610180015188610120015186886040516123239594939291906156b8565b60405180910390a3600091825260a56020526040909120805460ff1916600117905590506123516001606555565b919050565b612363826020015161434a565b6123985760405162461bcd60e51b81526020600482015260066024820152654c424330333760d01b60448201526064016102c3565b348261024001518361022001518460a001518561012001516123ba9190615661565b6123c49190615661565b6123ce9190615661565b11156124055760405162461bcd60e51b81526020600482015260066024820152654c424330363360d01b60448201526064016102c3565b81610160015163ffffffff164211156124495760405162461bcd60e51b81526020600482015260066024820152654c424330363560d01b60448201526064016102c3565b816101e0015163ffffffff1642111561248d5760405162461bcd60e51b8152602060048201526006602482015265262121981a1b60d11b60448201526064016102c3565b81610200015163ffffffff164311156124d15760405162461bcd60e51b81526020600482015260066024820152654c424330343760d01b60448201526064016102c3565b60006124dc83610a43565b60208401516040516301a86b5560e41b815291925073__SignatureValidator____________________91631a86b5509161251d91859087906004016153fa565b602060405180830381865af415801561253a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061255e9190615421565b61257a5760405162461bcd60e51b81526004016102c39061543e565b600081815260a66020908152604080832060a79092529091206001015460ff16156125b75760405162461bcd60e51b81526004016102c3906158fd565b80546001600160a01b0316156125df5760405162461bcd60e51b81526004016102c3906153da565b600082815260a66020908152604091829020865181546001600160a01b03199081166001600160a01b0392831617835592880151600183018054909416911617909155908501518591906002820190612638908261522a565b5060608201516003820180546001600160a01b0319166001600160a01b0390921691909117905560808201516004820190612673908261522a565b5060a0820151600582015560c0820151600682015560e08201516007820180546001600160401b0319166001600160401b0390921691909117905561010082015160088201906126c3908261522a565b506101208201516009820155610140820151600a820180546101608501516101808601516101a08701516101c08801516101e08901516102008a015163ffffffff9889166001600160401b031990971696909617600160201b958916959095029490941763ffffffff60401b1916600160401b61ffff9485160261ffff60501b191617600160501b939092169290920217600160601b600160a01b031916600160601b9186169190910263ffffffff60801b191617600160801b918516919091021763ffffffff60a01b1916600160a01b9390911692909202919091179055610220820151600b82015561024090910151600c90910155600082815260a760209081526040918290204290819055825134815291820152339184917fb1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f910160405180910390a350505050565b6033546001600160a01b031690565b612826613b42565b600081815260a66020526040902080546001600160a01b031661285b5760405162461bcd60e51b81526004016102c39061591d565b600a810154600160801b900463ffffffff164211801561288b5750600a810154600160a01b900463ffffffff1643115b6128c05760405162461bcd60e51b81526020600482015260066024820152654c424330343160d01b60448201526064016102c3565b600081600c015482600b0154836005015484600901546128e09190615661565b6128ea9190615661565b6128f49190615661565b6003830154600684015460018501546001600160a01b039081166000908152609a602052604081205494955092169261292d9190614201565b60018501546001600160a01b03166000908152609a602052604081208054929350839290919061295e90849061545e565b90915550506001840154604051600080516020615e4983398151915291612994916001600160a01b039091169084908990615471565b60405180910390a16003840154604080518581526001600160a01b03909216602083015286917f9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41910160405180910390a2600085815260a66020526040812080546001600160a01b03199081168255600182018054909116905590612a1c6002830182614717565b6003820180546001600160a01b0319169055612a3c600483016000614717565b600060058301819055600683018190556007830180546001600160401b0319169055612a6c906008840190614717565b50600060098201819055600a820180546001600160c01b0319169055600b8201819055600c90910181905585815260a760205260408082206001908101805460ff19169091179055516001600160a01b0384169085908381818185875af1925050503d8060008114612afa576040519150601f19603f3d011682016040523d82523d6000602084013e612aff565b606091505b5050905080612b395760405162461bcd60e51b8152602060048201526006602482015265131090cc0d0d60d21b60448201526064016102c3565b5050505050612b486001606555565b50565b612b5433614389565b612b705760405162461bcd60e51b81526004016102c3906153ba565b3360009081526099602052604081208054349290612b8f908490615661565b90915550506040517f456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af849061190b9033903490615731565b6000610a4e82613b9b565b612bda33614389565b612bf65760405162461bcd60e51b81526004016102c3906153ba565b611d7f3334614219565b612c08613b42565b612c113361434a565b612c2d5760405162461bcd60e51b81526004016102c3906153ba565b600085815260a7602052604090206001015460ff1615612c5f5760405162461bcd60e51b81526004016102c3906158fd565b600085815260a66020526040902080546001600160a01b0316612c945760405162461bcd60e51b81526004016102c39061591d565b60405162f5b49160e01b815260009073__BtcUtils______________________________9062f5b49190612ccc908990600401614ebf565b600060405180830381865af4158015612ce9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612d11919081019061593d565b9050600073__BtcUtils______________________________632d56f32383600181518110612d4257612d42615a50565b6020026020010151602001516040518263ffffffff1660e01b8152600401612d6a9190614ebf565b600060405180830381865af4158015612d87573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612daf9190810190615833565b905080516021148015612de7575080600081518110612dd057612dd0615a50565b6020910101516001600160f81b031916600160fd1b145b612e1c5760405162461bcd60e51b81526020600482015260066024820152654c424330373560d01b60448201526064016102c3565b60005b60018251612e2d919061545e565b8160ff161015612e9f5781612e43826001615a66565b60ff1681518110612e5657612e56615a50565b602001015160f81c60f81b828260ff1681518110612e7657612e76615a50565b60200101906001600160f81b031916908160001a90535080612e9781615a7f565b915050612e1f565b50600081806020019051810190612eb69190615a9e565b9050808914612ef05760405162461bcd60e51b81526020600482015260066024820152654c424330363960d01b60448201526064016102c3565b60018401546001600160a01b03163314612f355760405162461bcd60e51b815260206004820152600660248201526509884866068760d31b60448201526064016102c3565b600a84015460975460405163fea8ba6360e01b8152600160501b90920461ffff16916001600160a01b0390911690635b6445879073__BtcUtils______________________________9063fea8ba6390612f93908e90600401614ebf565b602060405180830381865af4158015612fb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fd49190615a9e565b8a8a8a6040518563ffffffff1660e01b8152600401612ff69493929190615ab7565b602060405180830381865afa158015613013573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130379190615a9e565b121561306e5760405162461bcd60e51b81526020600482015260066024820152654c424330343960d01b60448201526064016102c3565b8260008151811061308157613081615a50565b6020026020010151600001516402540be40061309d9190615b13565b6001600160401b0316846009015411156130e25760405162461bcd60e51b81526020600482015260066024820152654c424330363760d01b60448201526064016102c3565b600073__BtcUtils______________________________63c7ce85ac8560008151811061311157613111615a50565b602090810291909101810151015160a4546040516001600160e01b031960e085901b168152613147929160ff1690600401615b3e565b600060405180830381865af4158015613164573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261318c9190810190615833565b90508080519060200120856008016040516131a79190615b62565b6040518091039020146131e55760405162461bcd60e51b81526020600482015260066024820152650988486606c760d31b60448201526064016102c3565b604080516102608101825286546001600160a01b039081168252600188015416602082015260028701805461349693899290840191613223906151a1565b80601f016020809104026020016040519081016040528092919081815260200182805461324f906151a1565b801561329c5780601f106132715761010080835404028352916020019161329c565b820191906000526020600020905b81548152906001019060200180831161327f57829003601f168201915b505050918352505060038201546001600160a01b031660208201526004820180546040909201916132cc906151a1565b80601f01602080910402602001604051908101604052809291908181526020018280546132f8906151a1565b80156133455780601f1061331a57610100808354040283529160200191613345565b820191906000526020600020905b81548152906001019060200180831161332857829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b6060820152600882018054608090920191613383906151a1565b80601f01602080910402602001604051908101604052809291908181526020018280546133af906151a1565b80156133fc5780601f106133d1576101008083540402835291602001916133fc565b820191906000526020600020905b8154815290600101906020018083116133df57829003601f168201915b505050918352505060098201546020820152600a82015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b90910416610100820152600b820154610120820152600c9091015461014090910152838a6144d8565b1561353957600685015460018601546001600160a01b03166000908152609a602052604081205490916134c891614201565b60018701546001600160a01b03166000908152609a60205260408120805492935083929091906134f990849061545e565b90915550506001860154604051600080516020615e498339815191529161352f916001600160a01b039091169084908790615471565b60405180910390a1505b6001850154600586015460098701546000926001600160a01b03169161355e91615661565b604051600081818185875af1925050503d806000811461359a576040519150601f19603f3d011682016040523d82523d6000602084013e61359f565b606091505b50509050806135d95760405162461bcd60e51b815260206004820152600660248201526504c42433035360d41b60448201526064016102c3565b6135e786600b01548c614278565b600083815260a66020526040812080546001600160a01b0319908116825560018201805490911690559061361e6002830182614717565b6003820180546001600160a01b031916905561363e600483016000614717565b600060058301819055600683018190556007830180546001600160401b031916905561366e906008840190614717565b50600060098201819055600a820180546001600160c01b0319169055600b8201819055600c90910181905583815260a760205260408082206001908101805460ff191690911790555184917fb781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb38491a25050505050506136ec6001606555565b5050505050565b606060008060015b60a2548111613740576000818152609b6020526040902061371b9061468d565b1561372e578261372a816153a1565b9350505b80613738816153a1565b9150506136fb565b506000826001600160401b0381111561375b5761375b614765565b60405190808252806020026020018201604052801561379457816020015b6137816146d6565b8152602001906001900390816137795790505b5060009350905060015b60a25481116139f5576000818152609b6020526040902092506137c08361468d565b156139e3576040805160c0810182528454815260018501546001600160a01b031660208201526002850180549192869290840191906137fe906151a1565b80601f016020809104026020016040519081016040528092919081815260200182805461382a906151a1565b80156138775780601f1061384c57610100808354040283529160200191613877565b820191906000526020600020905b81548152906001019060200180831161385a57829003601f168201915b50505050508152602001600382018054613890906151a1565b80601f01602080910402602001604051908101604052809291908181526020018280546138bc906151a1565b80156139095780601f106138de57610100808354040283529160200191613909565b820191906000526020600020905b8154815290600101906020018083116138ec57829003601f168201915b5050509183525050600482015460ff1615156020820152600582018054604090920191613935906151a1565b80601f0160208091040260200160405190810160405280929190818152602001828054613961906151a1565b80156139ae5780601f10613983576101008083540402835291602001916139ae565b820191906000526020600020905b81548152906001019060200180831161399157829003601f168201915b5050505050815250508285815181106139c9576139c9615a50565b602002602001018190525083806139df906153a1565b9450505b806139ed816153a1565b91505061379e565b509392505050565b613a056143c8565b6001600160a01b038116613a6a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102c3565b612b4881614427565b80516000906001600160a01b03163014613ab85760405162461bcd60e51b8152602060048201526006602482015265262121981a9b60d11b60448201526064016102c3565b60405163025018e760e31b815273__QuotesV2______________________________90631280c73890613aef908590600401615bd8565b600060405180830381865af4158015613b0c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613b349190810190615833565b805190602001209050919050565b600260655403613b945760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016102c3565b6002606555565b600081602001516001600160a01b0316306001600160a01b031614613beb5760405162461bcd60e51b81526020600482015260066024820152654c424330353160d01b60448201526064016102c3565b6101008201516097546001600160a01b03918216911603613c375760405162461bcd60e51b8152602060048201526006602482015265262121981a9960d11b60448201526064016102c3565b81606001515160151480613c5057508160600151516021145b613c855760405162461bcd60e51b81526020600482015260066024820152654c424330353360d01b60448201526064016102c3565b8160a0015151601514613cc35760405162461bcd60e51b8152602060048201526006602482015265131090cc0d4d60d21b60448201526064016102c3565b609f548261026001518361024001518460c00151856101800151613ce79190615661565b613cf19190615661565b613cfb9190615661565b1015613d325760405162461bcd60e51b81526020600482015260066024820152654c424330353560d01b60448201526064016102c3565b816101c0015163ffffffff16826101a0015163ffffffff16613d549190615d72565b6001600160401b031663ffffffff1015613d995760405162461bcd60e51b81526020600482015260066024820152654c424330373160d01b60448201526064016102c3565b60405162773b7960e01b815273__QuotesV2______________________________9062773b7990613aef908590600401615d92565b609754606086015160a08701516000848152609c602052604081205490936001600160a01b031692636adc013392899288928a92899230919063ffffffff1615801590613e30575060008b8152609c6020526040902054600160201b900460ff165b6040518963ffffffff1660e01b8152600401613e53989796959493929190615da5565b6020604051808303816000875af1158015613e72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e969190615a9e565b9695505050505050565b60008084138015613ee457508461026001518561024001518660c00151876101800151613ecd9190615661565b613ed79190615661565b613ee19190615661565b84105b15613ef157506000611888565b60975460405163bd0c1fff60e01b8152600481018490526000916001600160a01b03169063bd0c1fff90602401600060405180830381865afa158015613f3b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613f639190810190615833565b90506000815111613fad5760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a5908189b1bd8dac81a195a59da1d60621b60448201526064016102c3565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc90613fe7908590600401614ebf565b602060405180830381865af4158015614004573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140289190615a9e565b90506000876101c00151886101a0015161404291906158d9565b63ffffffff1690508082111561405e5760009350505050611888565b856000036140725760019350505050611888565b6097546102008901516000916001600160a01b03169063bd0c1fff9060019061409f9061ffff168a615661565b6140a9919061545e565b6040518263ffffffff1660e01b81526004016140c791815260200190565b600060405180830381865afa1580156140e4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261410c9190810190615833565b905060008151116141485760405162461bcd60e51b81526020600482015260066024820152650988486606a760d31b60448201526064016102c3565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc90614182908590600401614ebf565b602060405180830381865af415801561419f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141c39190615a9e565b9050896101e0015163ffffffff16816141dc9190615661565b8811156141f157600195505050505050611888565b5060009998505050505050505050565b60008183106142105781614212565b825b9392505050565b6001600160a01b03821660009081526098602052604081208054839290614241908490615661565b90915550506040517f42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f53906113529084908490615731565b81156143465760a9546040516000916001600160a01b03169084908381818185875af1925050503d80600081146142cb576040519150601f19603f3d011682016040523d82523d6000602084013e6142d0565b606091505b505090508061430a5760405162461bcd60e51b8152602060048201526006602482015265131090cc0dcd60d21b60448201526064016102c3565b817f58e13ac0d5c8d27d14009841e72ac8b1858e2709c2c99af2075d9bb5f340ecfc8460405161433c91815260200190565b60405180910390a2505b5050565b6001600160a01b0381166000908152609a602052604081205415801590610a4e5750506001600160a01b03166000908152609d60205260409020541590565b6001600160a01b03811660009081526099602052604081205415801590610a4e5750506001600160a01b03166000908152609d60205260409020541590565b336143d161280f565b6001600160a01b031614611d7f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102c3565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216600090815260986020526040812080548392906144a190849061545e565b90915550506040517f8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc0064587906113529084908490615731565b6097546040516339cf1b2560e11b81526004810183905260009182916001600160a01b039091169063739e364a90602401600060405180830381865afa158015614526573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261454e9190810190615833565b9050600081511161458a5760405162461bcd60e51b81526020600482015260066024820152654c424330353960d01b60448201526064016102c3565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc906145c4908590600401614ebf565b602060405180830381865af41580156145e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906146059190615a9e565b60a3546101c0880151600088815260a7602052604090205492935090916146329163ffffffff1690615661565b61463c9190615661565b81111561464e57600192505050614212565b856101e0015163ffffffff16421180614671575085610200015163ffffffff1643115b1561468157600192505050614212565b50600095945050505050565b60018101546000906146a7906001600160a01b0316614389565b806146c4575060018201546146c4906001600160a01b031661434a565b8015610a4e5750506004015460ff1690565b6040518060c001604052806000815260200160006001600160a01b031681526020016060815260200160608152602001600015158152602001606081525090565b508054614723906151a1565b6000825580601f10614733575050565b601f016020900490600052602060002090810190612b4891905b80821115614761576000815560010161474d565b5090565b634e487b7160e01b600052604160045260246000fd5b60405161026081016001600160401b038111828210171561479e5761479e614765565b60405290565b60405161028081016001600160401b038111828210171561479e5761479e614765565b604051608081016001600160401b038111828210171561479e5761479e614765565b604051601f8201601f191681016001600160401b038111828210171561481157614811614765565b604052919050565b60006001600160401b0382111561483257614832614765565b50601f01601f191660200190565b600082601f83011261485157600080fd5b813561486461485f82614819565b6147e9565b81815284602083860101111561487957600080fd5b816020850160208301376000918101602001919091529392505050565b600080604083850312156148a957600080fd5b82356001600160401b03808211156148c057600080fd5b6148cc86838701614840565b935060208501359150808211156148e257600080fd5b506148ef85828601614840565b9150509250929050565b6001600160a01b0381168114612b4857600080fd5b8035612351816148f9565b8035600781900b811461235157600080fd5b803563ffffffff8116811461235157600080fd5b803561ffff8116811461235157600080fd5b6000610260828403121561496457600080fd5b61496c61477b565b90506149778261490e565b81526149856020830161490e565b602082015260408201356001600160401b03808211156149a457600080fd5b6149b085838601614840565b60408401526149c16060850161490e565b606084015260808401359150808211156149da57600080fd5b6149e685838601614840565b608084015260a084013560a084015260c084013560c0840152614a0b60e08501614919565b60e084015261010091508184013581811115614a2657600080fd5b614a3286828701614840565b83850152505050610120808301358183015250610140614a5381840161492b565b90820152610160614a6583820161492b565b90820152610180614a7783820161493f565b908201526101a0614a8983820161493f565b908201526101c0614a9b83820161492b565b908201526101e0614aad83820161492b565b90820152610200614abf83820161492b565b9082015261022082810135908201526102409182013591810191909152919050565b600060208284031215614af357600080fd5b81356001600160401b03811115614b0957600080fd5b61188884828501614951565b80356001600160601b03198116811461235157600080fd5b8015158114612b4857600080fd5b803561235181614b2d565b60006102808284031215614b5957600080fd5b614b616147a4565b9050614b6c82614b15565b8152614b7a6020830161490e565b6020820152614b8b6040830161490e565b604082015260608201356001600160401b0380821115614baa57600080fd5b614bb685838601614840565b6060840152614bc76080850161490e565b608084015260a0840135915080821115614be057600080fd5b614bec85838601614840565b60a084015260c084013560c084015260e084013560e08401526101009150614c1582850161490e565b8284015261012091508184013581811115614c2f57600080fd5b614c3b86828701614840565b83850152505050610140614c5081840161492b565b90820152610160614c62838201614919565b9082015261018082810135908201526101a0614c7f81840161492b565b908201526101c0614c9183820161492b565b908201526101e0614ca383820161492b565b90820152610200614cb583820161493f565b90820152610220614cc7838201614b3b565b9082015261024082810135908201526102609182013591810191909152919050565b600080600080600060a08688031215614d0157600080fd5b85356001600160401b0380821115614d1857600080fd5b614d2489838a01614b46565b96506020880135915080821115614d3a57600080fd5b614d4689838a01614840565b95506040880135915080821115614d5c57600080fd5b614d6889838a01614840565b94506060880135915080821115614d7e57600080fd5b50614d8b88828901614840565b95989497509295608001359392505050565b600060208284031215614daf57600080fd5b5035919050565b60008060008060808587031215614dcc57600080fd5b84356001600160401b0380821115614de357600080fd5b614def88838901614840565b95506020870135915080821115614e0557600080fd5b614e1188838901614840565b945060408701359150614e2382614b2d565b90925060608601359080821115614e3957600080fd5b50614e4687828801614840565b91505092959194509250565b600060208284031215614e6457600080fd5b8135614212816148f9565b60005b83811015614e8a578181015183820152602001614e72565b50506000910152565b60008151808452614eab816020860160208601614e6f565b601f01601f19169290920160200192915050565b6020815260006142126020830184614e93565b6001600160a01b03169052565b8051825260018060a01b0360208201511660208301526000604082015160c06040850152614f1060c0850182614e93565b905060608301518482036060860152614f298282614e93565b91505060808301511515608085015260a083015184820360a086015261125d8282614e93565b6020815260006142126020830184614edf565b6001600160a01b0391909116815260200190565b60008060408385031215614f8957600080fd5b823591506020830135614f9b81614b2d565b809150509250929050565b60008060408385031215614fb957600080fd5b82356001600160401b0380821115614fd057600080fd5b6148cc86838701614b46565b600060208284031215614fee57600080fd5b81356001600160401b0381111561500457600080fd5b61188884828501614b46565b6000806040838503121561502357600080fd5b82356001600160401b038082111561503a57600080fd5b6148cc86838701614951565b60006001600160401b0382111561505f5761505f614765565b5060051b60200190565b600080600080600060a0868803121561508157600080fd5b853594506020808701356001600160401b03808211156150a057600080fd5b6150ac8a838b01614840565b9650604089013595506060890135945060808901359150808211156150d057600080fd5b508701601f810189136150e257600080fd5b80356150f061485f82615046565b81815260059190911b8201830190838101908b83111561510f57600080fd5b928401925b8284101561512d57833582529284019290840190615114565b80955050505050509295509295909350565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561519457603f19888603018452615182858351614edf565b94509285019290850190600101615166565b5092979650505050505050565b600181811c908216806151b557607f821691505b6020821081036151d557634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561522557600081815260208120601f850160051c810160208610156152025750805b601f850160051c820191505b818110156152215782815560010161520e565b5050505b505050565b81516001600160401b0381111561524357615243614765565b6152578161525184546151a1565b846151db565b602080601f83116001811461528c57600084156152745750858301515b600019600386901b1c1916600185901b178555615221565b600085815260208120601f198616915b828110156152bb5788860151825594840194600190910190840161529c565b50858210156152d95787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600081546152f6816151a1565b808552602060018381168015615313576001811461532d5761535b565b60ff1985168884015283151560051b88018301955061535b565b866000528260002060005b858110156153535781548a8201860152908301908401615338565b890184019650505b505050505092915050565b60408152600061537960408301856152e9565b828103602084015261125d81856152e9565b634e487b7160e01b600052601160045260246000fd5b6000600182016153b3576153b361538b565b5060010190565b6020808252600690820152654c424330303160d01b604082015260600190565b60208082526006908201526509884866064760d31b604082015260600190565b60018060a01b038416815282602082015260606040820152600061125d6060830184614e93565b60006020828403121561543357600080fd5b815161421281614b2d565b6020808252600690820152654c424330323960d01b604082015260600190565b81810381811115610a4e57610a4e61538b565b6001600160a01b039390931683526020830191909152604082015260600190565b8082028115828204841417610a4e57610a4e61538b565b634e487b7160e01b600052601260045260246000fd5b6000826154ce576154ce6154a9565b500490565b80516001600160601b0319168252600061028060208301516154f86020860182614ed2565b50604083015161550b6040860182614ed2565b50606083015181606086015261552382860182614e93565b91505060808301516155386080860182614ed2565b5060a083015184820360a08601526155508282614e93565b91505060c083015160c085015260e083015160e08501526101008084015161557a82870182614ed2565b505061012080840151858303828701526155948382614e93565b92505050610140808401516155b08287018263ffffffff169052565b5050610160808401516155c78287018260070b9052565b505061018083810151908501526101a08084015163ffffffff908116918601919091526101c0808501518216908601526101e080850151909116908501526102008084015161ffff16908501526102208084015115159085015261024080840151908501526102609283015192909301919091525090565b60408152600061565260408301856154d3565b90508260208301529392505050565b80820180821115610a4e57610a4e61538b565b6001600160a01b03949094168452602084019290925215156040830152606082015260800190565b600082516156ae818460208701614e6f565b9190910192915050565b63ffffffff8616815284602082015260a0604082015260006156dd60a0830186614e93565b931515606083015250608001529392505050565b6020808252600690820152654c424330313960d01b604082015260600190565b60208082526006908201526504c42433032360d41b604082015260600190565b6001600160a01b03929092168252602082015260400190565b643832b3b4b760d91b815260050190565b651c1959dbdd5d60d21b815260060190565b60208082526006908201526509884866060760d31b604082015260600190565b60008261579c5761579c6154a9565b500690565b848152600084516157b9816020850160208901614e6f565b808301905060018060601b03198516602082015283516157e0816034840160208801614e6f565b016034019695505050505050565b600082601f8301126157ff57600080fd5b815161580d61485f82614819565b81815284602083860101111561582257600080fd5b611888826020830160208701614e6f565b60006020828403121561584557600080fd5b81516001600160401b0381111561585b57600080fd5b611888848285016157ee565b600160fd1b8152826001820152607560f81b602182015260008251615893816022850160208701614e6f565b919091016022019392505050565b6060815260006158b46060830186614e93565b82810360208401526158c68186614e93565b9150508215156040830152949350505050565b63ffffffff8181168382160190808211156158f6576158f661538b565b5092915050565b602080825260069082015265131090cc0d8d60d21b604082015260600190565b602080825260069082015265262121981a1960d11b604082015260600190565b6000602080838503121561595057600080fd5b82516001600160401b038082111561596757600080fd5b818501915085601f83011261597b57600080fd5b815161598961485f82615046565b81815260059190911b830184019084810190888311156159a857600080fd5b8585015b83811015615a43578051858111156159c45760008081fd5b86016080818c03601f19018113156159dc5760008081fd5b6159e46147c7565b8983015188811681146159f75760008081fd5b815260408381015189811115615a0d5760008081fd5b615a1b8f8d838801016157ee565b838d0152506060848101519183019190915291909201519082015283529186019186016159ac565b5098975050505050505050565b634e487b7160e01b600052603260045260246000fd5b60ff8181168382160190811115610a4e57610a4e61538b565b600060ff821660ff8103615a9557615a9561538b565b60010192915050565b600060208284031215615ab057600080fd5b5051919050565b600060808201868352602086818501528560408501526080606085015281855180845260a086019150828701935060005b81811015615b0457845183529383019391830191600101615ae8565b50909998505050505050505050565b6001600160401b03818116838216028082169190828114615b3657615b3661538b565b505092915050565b604081526000615b516040830185614e93565b905082151560208301529392505050565b6000808354615b70816151a1565b60018281168015615b885760018114615b9d57615bcc565b60ff1984168752821515830287019450615bcc565b8760005260208060002060005b85811015615bc35781548a820152908401908201615baa565b50505082870194505b50929695505050505050565b60208152615bea602082018351614ed2565b60006020830151615bfe6040840182614ed2565b506040830151610260806060850152615c1b610280850183614e93565b91506060850151615c2f6080860182614ed2565b506080850151601f19808685030160a0870152615c4c8483614e93565b935060a087015160c087015260c087015160e087015260e08701519150610100615c7a8188018460070b9052565b80880151925050610120818786030181880152615c978584614e93565b908801516101408881019190915288015190945091506101609050615cc38187018363ffffffff169052565b8601519050610180615cdc8682018363ffffffff169052565b86015190506101a0615cf38682018361ffff169052565b86015190506101c0615d0a8682018361ffff169052565b86015190506101e0615d238682018363ffffffff169052565b8601519050610200615d3c8682018363ffffffff169052565b8601519050610220615d558682018363ffffffff169052565b860151610240868101919091529095015193019290925250919050565b6001600160401b038181168382160190808211156158f6576158f661538b565b60208152600061421260208301846154d3565b6000610100808352615db98184018c614e93565b90508960208401528281036040840152615dd3818a614e93565b90508760608401528281036080840152615ded8188614e93565b6001600160a01b03871660a085015283810360c08501529050615e108186614e93565b91505082151560e0830152999850505050505050505056fe3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f69685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80da2646970667358221220d585a79153fe9f07b7ce30a1f1ce779f7aa3d5c1d05ca8c45b4b559482e1f30f64736f6c63430008120033", "immutableReferences": {}, "generatedSources": [], "deployedGeneratedSources": [ { "ast": { "nodeType": "YulBlock", - "src": "0:65491:32", + "src": "0:65067:32", "statements": [ { "nodeType": "YulBlock", @@ -2468,7 +2528,7 @@ } ] }, - "name": "allocate_memory_8784", + "name": "allocate_memory_8456", "nodeType": "YulFunctionDefinition", "returnVariables": [ { @@ -2693,7 +2753,7 @@ } ] }, - "name": "allocate_memory_8785", + "name": "allocate_memory_8457", "nodeType": "YulFunctionDefinition", "returnVariables": [ { @@ -2918,7 +2978,7 @@ } ] }, - "name": "allocate_memory_8789", + "name": "allocate_memory_8461", "nodeType": "YulFunctionDefinition", "returnVariables": [ { @@ -5250,7 +5310,7 @@ "value": { "arguments": [], "functionName": { - "name": "allocate_memory_8784", + "name": "allocate_memory_8456", "nodeType": "YulIdentifier", "src": "4038:20:32" }, @@ -7431,7 +7491,7 @@ } ] }, - "name": "abi_decode_tuple_t_struct$_PegOutQuote_$10638_memory_ptr", + "name": "abi_decode_tuple_t_struct$_PegOutQuote_$11234_memory_ptr", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -8014,7 +8074,7 @@ "value": { "arguments": [], "functionName": { - "name": "allocate_memory_8785", + "name": "allocate_memory_8457", "nodeType": "YulIdentifier", "src": "7115:20:32" }, @@ -10806,7 +10866,7 @@ } ] }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$10599_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_uint256", + "name": "abi_decode_tuple_t_struct$_PeginQuote_$11195_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_uint256", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -12408,593 +12468,912 @@ { "body": { "nodeType": "YulBlock", - "src": "12436:114:32", + "src": "12433:184:32", "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "12443:10:32", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12452:1:32", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "12447:1:32", + "type": "" + } + ] + }, { "body": { "nodeType": "YulBlock", - "src": "12480:22:32", + "src": "12512:63:32", "statements": [ { "expression": { - "arguments": [], + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "12537:3:32" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12542:1:32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12533:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "12533:11:32" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "12556:3:32" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12561:1:32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12552:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "12552:11:32" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "12546:5:32" + }, + "nodeType": "YulFunctionCall", + "src": "12546:18:32" + } + ], "functionName": { - "name": "panic_error_0x41", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "12482:16:32" + "src": "12526:6:32" }, "nodeType": "YulFunctionCall", - "src": "12482:18:32" + "src": "12526:39:32" }, "nodeType": "YulExpressionStatement", - "src": "12482:18:32" + "src": "12526:39:32" } ] }, "condition": { "arguments": [ { - "name": "length", + "name": "i", "nodeType": "YulIdentifier", - "src": "12452:6:32" + "src": "12473:1:32" }, { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12468:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12472:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "12464:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12464:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12476:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12460:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12460:18:32" + "name": "length", + "nodeType": "YulIdentifier", + "src": "12476:6:32" } ], "functionName": { - "name": "gt", + "name": "lt", "nodeType": "YulIdentifier", - "src": "12449:2:32" + "src": "12470:2:32" }, "nodeType": "YulFunctionCall", - "src": "12449:30:32" + "src": "12470:13:32" }, - "nodeType": "YulIf", - "src": "12446:56:32" + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "12484:19:32", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12486:15:32", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12495:1:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12498:2:32", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12491:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "12491:10:32" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "12486:1:32" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "12466:3:32", + "statements": [] + }, + "src": "12462:113:32" }, { - "nodeType": "YulAssignment", - "src": "12511:33:32", - "value": { + "expression": { "arguments": [ { "arguments": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12527:1:32", - "type": "", - "value": "5" + "name": "dst", + "nodeType": "YulIdentifier", + "src": "12595:3:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "12530:6:32" + "src": "12600:6:32" } ], "functionName": { - "name": "shl", + "name": "add", "nodeType": "YulIdentifier", - "src": "12523:3:32" + "src": "12591:3:32" }, "nodeType": "YulFunctionCall", - "src": "12523:14:32" + "src": "12591:16:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12539:4:32", + "src": "12609:1:32", "type": "", - "value": "0x20" + "value": "0" } ], "functionName": { - "name": "add", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "12519:3:32" + "src": "12584:6:32" }, "nodeType": "YulFunctionCall", - "src": "12519:25:32" + "src": "12584:27:32" }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "12511:4:32" - } - ] + "nodeType": "YulExpressionStatement", + "src": "12584:27:32" } ] }, - "name": "array_allocation_size_array_uint256_dyn", + "name": "copy_memory_to_memory_with_cleanup", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "length", + "name": "src", "nodeType": "YulTypedName", - "src": "12416:6:32", + "src": "12411:3:32", "type": "" - } - ], - "returnVariables": [ + }, { - "name": "size", + "name": "dst", + "nodeType": "YulTypedName", + "src": "12416:3:32", + "type": "" + }, + { + "name": "length", "nodeType": "YulTypedName", - "src": "12427:4:32", + "src": "12421:6:32", "type": "" } ], - "src": "12367:183:32" + "src": "12367:250:32" }, { "body": { "nodeType": "YulBlock", - "src": "12650:796:32", + "src": "12672:221:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "12660:12:32", + "src": "12682:26:32", "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12670:2:32", - "type": "", - "value": "32" + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "12702:5:32" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "12696:5:32" + }, + "nodeType": "YulFunctionCall", + "src": "12696:12:32" }, "variables": [ { - "name": "_1", + "name": "length", "nodeType": "YulTypedName", - "src": "12664:2:32", + "src": "12686:6:32", "type": "" } ] }, { - "body": { - "nodeType": "YulBlock", - "src": "12717:16:32", - "statements": [ + "expression": { + "arguments": [ { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12726:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12729:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "12719:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12719:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12719:12:32" + "name": "pos", + "nodeType": "YulIdentifier", + "src": "12724:3:32" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "12729:6:32" } - ] + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12717:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "12717:19:32" }, - "condition": { + "nodeType": "YulExpressionStatement", + "src": "12717:19:32" + }, + { + "expression": { "arguments": [ { "arguments": [ { - "name": "dataEnd", + "name": "value", "nodeType": "YulIdentifier", - "src": "12692:7:32" + "src": "12784:5:32" }, { - "name": "headStart", + "kind": "number", + "nodeType": "YulLiteral", + "src": "12791:4:32", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12780:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "12780:16:32" + }, + { + "arguments": [ + { + "name": "pos", "nodeType": "YulIdentifier", - "src": "12701:9:32" + "src": "12802:3:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12807:4:32", + "type": "", + "value": "0x20" } ], "functionName": { - "name": "sub", + "name": "add", "nodeType": "YulIdentifier", - "src": "12688:3:32" + "src": "12798:3:32" }, "nodeType": "YulFunctionCall", - "src": "12688:23:32" + "src": "12798:14:32" }, { - "name": "_1", + "name": "length", "nodeType": "YulIdentifier", - "src": "12713:2:32" + "src": "12814:6:32" } ], "functionName": { - "name": "slt", + "name": "copy_memory_to_memory_with_cleanup", "nodeType": "YulIdentifier", - "src": "12684:3:32" + "src": "12745:34:32" }, "nodeType": "YulFunctionCall", - "src": "12684:32:32" + "src": "12745:76:32" }, - "nodeType": "YulIf", - "src": "12681:52:32" + "nodeType": "YulExpressionStatement", + "src": "12745:76:32" }, { - "nodeType": "YulVariableDeclaration", - "src": "12742:37:32", + "nodeType": "YulAssignment", + "src": "12830:57:32", "value": { "arguments": [ { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12769:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "12756:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "12756:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "12746:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12822:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12831:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12834:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", + "arguments": [ + { + "name": "pos", "nodeType": "YulIdentifier", - "src": "12824:6:32" + "src": "12845:3:32" }, - "nodeType": "YulFunctionCall", - "src": "12824:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12824:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "12794:6:32" - }, - { - "arguments": [ { "arguments": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12810:2:32", - "type": "", - "value": "64" + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "12858:6:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12866:2:32", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12854:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "12854:15:32" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12814:1:32", - "type": "", - "value": "1" + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12875:2:32", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "12871:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "12871:7:32" } ], "functionName": { - "name": "shl", + "name": "and", "nodeType": "YulIdentifier", - "src": "12806:3:32" + "src": "12850:3:32" }, "nodeType": "YulFunctionCall", - "src": "12806:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12818:1:32", - "type": "", - "value": "1" + "src": "12850:29:32" } ], "functionName": { - "name": "sub", + "name": "add", "nodeType": "YulIdentifier", - "src": "12802:3:32" + "src": "12841:3:32" }, "nodeType": "YulFunctionCall", - "src": "12802:18:32" + "src": "12841:39:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12882:4:32", + "type": "", + "value": "0x20" } ], "functionName": { - "name": "gt", + "name": "add", "nodeType": "YulIdentifier", - "src": "12791:2:32" + "src": "12837:3:32" }, "nodeType": "YulFunctionCall", - "src": "12791:30:32" + "src": "12837:50:32" }, - "nodeType": "YulIf", - "src": "12788:50:32" - }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "12830:3:32" + } + ] + } + ] + }, + "name": "abi_encode_string", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "12649:5:32", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "12656:3:32", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "12664:3:32", + "type": "" + } + ], + "src": "12622:271:32" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13019:99:32", + "statements": [ { - "nodeType": "YulVariableDeclaration", - "src": "12847:32:32", - "value": { + "expression": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "12861:9:32" + "src": "13036:9:32" }, { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "12872:6:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "13047:2:32", + "type": "", + "value": "32" } ], "functionName": { - "name": "add", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "12857:3:32" + "src": "13029:6:32" }, "nodeType": "YulFunctionCall", - "src": "12857:22:32" + "src": "13029:21:32" }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "12851:2:32", - "type": "" - } - ] + "nodeType": "YulExpressionStatement", + "src": "13029:21:32" }, { - "body": { - "nodeType": "YulBlock", - "src": "12927:16:32", - "statements": [ + "nodeType": "YulAssignment", + "src": "13059:53:32", + "value": { + "arguments": [ { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12936:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12939:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", + "name": "value0", + "nodeType": "YulIdentifier", + "src": "13085:6:32" + }, + { + "arguments": [ + { + "name": "headStart", "nodeType": "YulIdentifier", - "src": "12929:6:32" + "src": "13097:9:32" }, - "nodeType": "YulFunctionCall", - "src": "12929:12:32" + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13108:2:32", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13093:3:32" }, - "nodeType": "YulExpressionStatement", - "src": "12929:12:32" + "nodeType": "YulFunctionCall", + "src": "13093:18:32" } - ] + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "13067:17:32" + }, + "nodeType": "YulFunctionCall", + "src": "13067:45:32" }, - "condition": { + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "13059:4:32" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "12988:9:32", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "12999:6:32", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "13010:4:32", + "type": "" + } + ], + "src": "12898:220:32" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13167:60:32", + "statements": [ + { + "expression": { "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "13184:3:32" + }, { "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13193:5:32" + }, { "arguments": [ { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "12906:2:32" + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13208:3:32", + "type": "", + "value": "160" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13213:1:32", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "13204:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "13204:11:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12910:4:32", + "src": "13217:1:32", "type": "", - "value": "0x1f" + "value": "1" } ], "functionName": { - "name": "add", + "name": "sub", "nodeType": "YulIdentifier", - "src": "12902:3:32" + "src": "13200:3:32" }, "nodeType": "YulFunctionCall", - "src": "12902:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "12917:7:32" + "src": "13200:19:32" } ], "functionName": { - "name": "slt", + "name": "and", "nodeType": "YulIdentifier", - "src": "12898:3:32" + "src": "13189:3:32" }, "nodeType": "YulFunctionCall", - "src": "12898:27:32" + "src": "13189:31:32" } ], "functionName": { - "name": "iszero", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "12891:6:32" + "src": "13177:6:32" }, "nodeType": "YulFunctionCall", - "src": "12891:35:32" + "src": "13177:44:32" }, - "nodeType": "YulIf", - "src": "12888:55:32" - }, + "nodeType": "YulExpressionStatement", + "src": "13177:44:32" + } + ] + }, + "name": "abi_encode_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "13151:5:32", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "13158:3:32", + "type": "" + } + ], + "src": "13123:104:32" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13300:675:32", + "statements": [ { - "nodeType": "YulVariableDeclaration", - "src": "12952:26:32", - "value": { + "expression": { "arguments": [ { - "name": "_2", + "name": "pos", "nodeType": "YulIdentifier", - "src": "12975:2:32" + "src": "13317:3:32" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13328:5:32" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "13322:5:32" + }, + "nodeType": "YulFunctionCall", + "src": "13322:12:32" } ], "functionName": { - "name": "calldataload", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "12962:12:32" + "src": "13310:6:32" }, "nodeType": "YulFunctionCall", - "src": "12962:16:32" + "src": "13310:25:32" }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "12956:2:32", - "type": "" - } - ] + "nodeType": "YulExpressionStatement", + "src": "13310:25:32" }, { - "nodeType": "YulVariableDeclaration", - "src": "12987:71:32", - "value": { + "expression": { "arguments": [ { "arguments": [ { - "name": "_3", + "name": "pos", "nodeType": "YulIdentifier", - "src": "13054:2:32" + "src": "13355:3:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13360:4:32", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13351:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "13351:14:32" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13381:5:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13388:4:32", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13377:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "13377:16:32" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "13371:5:32" + }, + "nodeType": "YulFunctionCall", + "src": "13371:23:32" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13404:3:32", + "type": "", + "value": "160" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13409:1:32", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "13400:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "13400:11:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13413:1:32", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "13396:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "13396:19:32" } ], "functionName": { - "name": "array_allocation_size_array_uint256_dyn", + "name": "and", "nodeType": "YulIdentifier", - "src": "13014:39:32" + "src": "13367:3:32" }, "nodeType": "YulFunctionCall", - "src": "13014:43:32" + "src": "13367:49:32" } ], "functionName": { - "name": "allocate_memory", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "12998:15:32" + "src": "13344:6:32" }, "nodeType": "YulFunctionCall", - "src": "12998:60:32" + "src": "13344:73:32" }, - "variables": [ - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "12991:3:32", - "type": "" - } - ] + "nodeType": "YulExpressionStatement", + "src": "13344:73:32" }, { "nodeType": "YulVariableDeclaration", - "src": "13067:16:32", + "src": "13426:43:32", "value": { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "13080:3:32" + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13456:5:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13463:4:32", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13452:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "13452:16:32" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "13446:5:32" + }, + "nodeType": "YulFunctionCall", + "src": "13446:23:32" }, "variables": [ { - "name": "dst_1", + "name": "memberValue0", "nodeType": "YulTypedName", - "src": "13071:5:32", + "src": "13430:12:32", "type": "" } ] @@ -13003,424 +13382,658 @@ "expression": { "arguments": [ { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "13099:3:32" + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "13489:3:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13494:4:32", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13485:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "13485:14:32" }, { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "13104:2:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "13501:4:32", + "type": "", + "value": "0xc0" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13092:6:32" + "src": "13478:6:32" }, "nodeType": "YulFunctionCall", - "src": "13092:15:32" + "src": "13478:28:32" }, "nodeType": "YulExpressionStatement", - "src": "13092:15:32" + "src": "13478:28:32" }, { - "nodeType": "YulAssignment", - "src": "13116:19:32", + "nodeType": "YulVariableDeclaration", + "src": "13515:59:32", "value": { "arguments": [ { - "name": "dst", + "name": "memberValue0", "nodeType": "YulIdentifier", - "src": "13127:3:32" + "src": "13545:12:32" }, { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13132:2:32" + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "13563:3:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13568:4:32", + "type": "", + "value": "0xc0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13559:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "13559:14:32" } ], "functionName": { - "name": "add", + "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "13123:3:32" + "src": "13527:17:32" }, "nodeType": "YulFunctionCall", - "src": "13123:12:32" + "src": "13527:47:32" }, - "variableNames": [ + "variables": [ { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "13116:3:32" + "name": "tail", + "nodeType": "YulTypedName", + "src": "13519:4:32", + "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "13144:42:32", + "src": "13583:45:32", "value": { "arguments": [ { "arguments": [ { - "name": "_2", + "name": "value", "nodeType": "YulIdentifier", - "src": "13166:2:32" + "src": "13615:5:32" }, { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13174:1:32", - "type": "", - "value": "5" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "13177:2:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "13170:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13170:10:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "13622:4:32", + "type": "", + "value": "0x60" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13162:3:32" + "src": "13611:3:32" }, "nodeType": "YulFunctionCall", - "src": "13162:19:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13183:2:32" + "src": "13611:16:32" } ], "functionName": { - "name": "add", + "name": "mload", "nodeType": "YulIdentifier", - "src": "13158:3:32" + "src": "13605:5:32" }, "nodeType": "YulFunctionCall", - "src": "13158:28:32" + "src": "13605:23:32" }, "variables": [ { - "name": "srcEnd", + "name": "memberValue0_1", "nodeType": "YulTypedName", - "src": "13148:6:32", + "src": "13587:14:32", "type": "" } ] }, { - "body": { - "nodeType": "YulBlock", - "src": "13218:16:32", - "statements": [ + "expression": { + "arguments": [ { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13227:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13230:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", + "arguments": [ + { + "name": "pos", "nodeType": "YulIdentifier", - "src": "13220:6:32" + "src": "13648:3:32" }, - "nodeType": "YulFunctionCall", - "src": "13220:12:32" + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13653:4:32", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13644:3:32" }, - "nodeType": "YulExpressionStatement", - "src": "13220:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "srcEnd", - "nodeType": "YulIdentifier", - "src": "13201:6:32" + "nodeType": "YulFunctionCall", + "src": "13644:14:32" }, { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "13209:7:32" + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "13664:4:32" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "13670:3:32" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "13660:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "13660:14:32" } ], "functionName": { - "name": "gt", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "13198:2:32" + "src": "13637:6:32" }, "nodeType": "YulFunctionCall", - "src": "13198:19:32" + "src": "13637:38:32" }, - "nodeType": "YulIf", - "src": "13195:39:32" + "nodeType": "YulExpressionStatement", + "src": "13637:38:32" }, { "nodeType": "YulVariableDeclaration", - "src": "13243:22:32", + "src": "13684:53:32", "value": { "arguments": [ { - "name": "_2", + "name": "memberValue0_1", "nodeType": "YulIdentifier", - "src": "13258:2:32" + "src": "13716:14:32" }, { - "name": "_1", + "name": "tail", "nodeType": "YulIdentifier", - "src": "13262:2:32" + "src": "13732:4:32" } ], "functionName": { - "name": "add", + "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "13254:3:32" + "src": "13698:17:32" }, "nodeType": "YulFunctionCall", - "src": "13254:11:32" + "src": "13698:39:32" }, "variables": [ { - "name": "src", + "name": "tail_1", "nodeType": "YulTypedName", - "src": "13247:3:32", + "src": "13688:6:32", "type": "" } ] }, { - "body": { - "nodeType": "YulBlock", - "src": "13330:86:32", - "statements": [ + "expression": { + "arguments": [ { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "13351:3:32" - }, - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "13369:3:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "13356:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "13356:17:32" - } - ], - "functionName": { - "name": "mstore", + "arguments": [ + { + "name": "pos", "nodeType": "YulIdentifier", - "src": "13344:6:32" + "src": "13757:3:32" }, - "nodeType": "YulFunctionCall", - "src": "13344:30:32" + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13762:4:32", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13753:3:32" }, - "nodeType": "YulExpressionStatement", - "src": "13344:30:32" + "nodeType": "YulFunctionCall", + "src": "13753:14:32" }, { - "nodeType": "YulAssignment", - "src": "13387:19:32", - "value": { - "arguments": [ - { - "name": "dst", + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13793:5:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13800:4:32", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13789:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "13789:16:32" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "13783:5:32" + }, + "nodeType": "YulFunctionCall", + "src": "13783:23:32" + } + ], + "functionName": { + "name": "iszero", "nodeType": "YulIdentifier", - "src": "13398:3:32" + "src": "13776:6:32" }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13403:2:32" - } - ], - "functionName": { - "name": "add", + "nodeType": "YulFunctionCall", + "src": "13776:31:32" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "13769:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "13769:39:32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13746:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "13746:63:32" + }, + "nodeType": "YulExpressionStatement", + "src": "13746:63:32" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "13818:45:32", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", "nodeType": "YulIdentifier", - "src": "13394:3:32" + "src": "13850:5:32" }, - "nodeType": "YulFunctionCall", - "src": "13394:12:32" + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13857:4:32", + "type": "", + "value": "0xa0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13846:3:32" }, - "variableNames": [ + "nodeType": "YulFunctionCall", + "src": "13846:16:32" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "13840:5:32" + }, + "nodeType": "YulFunctionCall", + "src": "13840:23:32" + }, + "variables": [ + { + "name": "memberValue0_2", + "nodeType": "YulTypedName", + "src": "13822:14:32", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ { - "name": "dst", + "name": "pos", "nodeType": "YulIdentifier", - "src": "13387:3:32" + "src": "13883:3:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13888:4:32", + "type": "", + "value": "0xa0" } - ] + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13879:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "13879:14:32" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "13899:6:32" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "13907:3:32" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "13895:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "13895:16:32" } - ] + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13872:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "13872:40:32" }, - "condition": { + "nodeType": "YulExpressionStatement", + "src": "13872:40:32" + }, + { + "nodeType": "YulAssignment", + "src": "13921:48:32", + "value": { "arguments": [ { - "name": "src", + "name": "memberValue0_2", "nodeType": "YulIdentifier", - "src": "13285:3:32" + "src": "13946:14:32" }, { - "name": "srcEnd", + "name": "tail_1", "nodeType": "YulIdentifier", - "src": "13290:6:32" + "src": "13962:6:32" } ], "functionName": { - "name": "lt", + "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "13282:2:32" + "src": "13928:17:32" }, "nodeType": "YulFunctionCall", - "src": "13282:15:32" + "src": "13928:41:32" }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "13298:23:32", - "statements": [ + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "13921:3:32" + } + ] + } + ] + }, + "name": "abi_encode_struct_LiquidityProvider", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "13277:5:32", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "13284:3:32", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "13292:3:32", + "type": "" + } + ], + "src": "13232:743:32" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14151:117:32", + "statements": [ + { + "expression": { + "arguments": [ { - "nodeType": "YulAssignment", - "src": "13300:19:32", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "13311:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13316:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13307:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13307:12:32" - }, - "variableNames": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "13300:3:32" - } - ] + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "14168:9:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14179:2:32", + "type": "", + "value": "32" } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "13278:3:32", - "statements": [] + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14161:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "14161:21:32" }, - "src": "13274:142:32" + "nodeType": "YulExpressionStatement", + "src": "14161:21:32" }, { "nodeType": "YulAssignment", - "src": "13425:15:32", + "src": "14191:71:32", "value": { - "name": "dst_1", - "nodeType": "YulIdentifier", - "src": "13435:5:32" + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "14235:6:32" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "14247:9:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14258:2:32", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14243:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "14243:18:32" + } + ], + "functionName": { + "name": "abi_encode_struct_LiquidityProvider", + "nodeType": "YulIdentifier", + "src": "14199:35:32" + }, + "nodeType": "YulFunctionCall", + "src": "14199:63:32" }, "variableNames": [ { - "name": "value0", + "name": "tail", "nodeType": "YulIdentifier", - "src": "13425:6:32" + "src": "14191:4:32" } ] } ] }, - "name": "abi_decode_tuple_t_array$_t_uint256_$dyn_memory_ptr", + "name": "abi_encode_tuple_t_struct$_LiquidityProvider_$8021_memory_ptr__to_t_struct$_LiquidityProvider_$8021_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "12616:9:32", + "src": "14120:9:32", "type": "" }, { - "name": "dataEnd", + "name": "value0", "nodeType": "YulTypedName", - "src": "12627:7:32", + "src": "14131:6:32", "type": "" } ], "returnVariables": [ { - "name": "value0", + "name": "tail", "nodeType": "YulTypedName", - "src": "12639:6:32", + "src": "14142:4:32", "type": "" } ], - "src": "12555:891:32" + "src": "13980:288:32" }, { "body": { "nodeType": "YulBlock", - "src": "13495:60:32", + "src": "14374:102:32", "statements": [ + { + "nodeType": "YulAssignment", + "src": "14384:26:32", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "14396:9:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14407:2:32", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14392:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "14392:18:32" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "14384:4:32" + } + ] + }, { "expression": { "arguments": [ { - "name": "pos", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "13512:3:32" + "src": "14426:9:32" }, { "arguments": [ { - "name": "value", + "name": "value0", "nodeType": "YulIdentifier", - "src": "13521:5:32" + "src": "14441:6:32" }, { "arguments": [ @@ -13429,14 +14042,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "13536:3:32", + "src": "14457:3:32", "type": "", "value": "160" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13541:1:32", + "src": "14462:1:32", "type": "", "value": "1" } @@ -13444,15 +14057,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "13532:3:32" + "src": "14453:3:32" }, "nodeType": "YulFunctionCall", - "src": "13532:11:32" + "src": "14453:11:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13545:1:32", + "src": "14466:1:32", "type": "", "value": "1" } @@ -13460,744 +14073,563 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "13528:3:32" + "src": "14449:3:32" }, "nodeType": "YulFunctionCall", - "src": "13528:19:32" + "src": "14449:19:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "13517:3:32" + "src": "14437:3:32" }, "nodeType": "YulFunctionCall", - "src": "13517:31:32" + "src": "14437:32:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13505:6:32" + "src": "14419:6:32" }, "nodeType": "YulFunctionCall", - "src": "13505:44:32" + "src": "14419:51:32" }, "nodeType": "YulExpressionStatement", - "src": "13505:44:32" + "src": "14419:51:32" } ] }, - "name": "abi_encode_address", + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "value", + "name": "headStart", "nodeType": "YulTypedName", - "src": "13479:5:32", + "src": "14343:9:32", "type": "" }, { - "name": "pos", + "name": "value0", + "nodeType": "YulTypedName", + "src": "14354:6:32", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", "nodeType": "YulTypedName", - "src": "13486:3:32", + "src": "14365:4:32", "type": "" } ], - "src": "13451:104:32" + "src": "14273:203:32" }, { "body": { "nodeType": "YulBlock", - "src": "13626:184:32", + "src": "14565:225:32", "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "13636:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13645:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "13640:1:32", - "type": "" - } - ] - }, { "body": { "nodeType": "YulBlock", - "src": "13705:63:32", + "src": "14611:16:32", "statements": [ { "expression": { "arguments": [ { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "13730:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "13735:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13726:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13726:11:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "13749:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "13754:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13745:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13745:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "13739:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "13739:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13719:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13719:39:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13719:39:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "13666:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "13669:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "13663:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "13663:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "13677:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13679:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "13688:1:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "14620:1:32", + "type": "", + "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13691:2:32", + "src": "14623:1:32", "type": "", - "value": "32" + "value": "0" } ], "functionName": { - "name": "add", + "name": "revert", "nodeType": "YulIdentifier", - "src": "13684:3:32" + "src": "14613:6:32" }, "nodeType": "YulFunctionCall", - "src": "13684:10:32" + "src": "14613:12:32" }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "13679:1:32" - } - ] + "nodeType": "YulExpressionStatement", + "src": "14613:12:32" } ] }, - "pre": { - "nodeType": "YulBlock", - "src": "13659:3:32", - "statements": [] - }, - "src": "13655:113:32" - }, - { - "expression": { + "condition": { "arguments": [ { "arguments": [ { - "name": "dst", + "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "13788:3:32" + "src": "14586:7:32" }, { - "name": "length", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "13793:6:32" + "src": "14595:9:32" } ], "functionName": { - "name": "add", + "name": "sub", "nodeType": "YulIdentifier", - "src": "13784:3:32" + "src": "14582:3:32" }, "nodeType": "YulFunctionCall", - "src": "13784:16:32" + "src": "14582:23:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13802:1:32", + "src": "14607:2:32", "type": "", - "value": "0" + "value": "64" } ], "functionName": { - "name": "mstore", + "name": "slt", "nodeType": "YulIdentifier", - "src": "13777:6:32" + "src": "14578:3:32" }, "nodeType": "YulFunctionCall", - "src": "13777:27:32" + "src": "14578:32:32" }, - "nodeType": "YulExpressionStatement", - "src": "13777:27:32" - } - ] - }, - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "13604:3:32", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "13609:3:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "13614:6:32", - "type": "" - } - ], - "src": "13560:250:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13865:221:32", - "statements": [ + "nodeType": "YulIf", + "src": "14575:52:32" + }, { - "nodeType": "YulVariableDeclaration", - "src": "13875:26:32", + "nodeType": "YulAssignment", + "src": "14636:33:32", "value": { "arguments": [ { - "name": "value", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "13895:5:32" + "src": "14659:9:32" } ], "functionName": { - "name": "mload", + "name": "calldataload", "nodeType": "YulIdentifier", - "src": "13889:5:32" + "src": "14646:12:32" }, "nodeType": "YulFunctionCall", - "src": "13889:12:32" + "src": "14646:23:32" }, - "variables": [ + "variableNames": [ { - "name": "length", - "nodeType": "YulTypedName", - "src": "13879:6:32", - "type": "" + "name": "value0", + "nodeType": "YulIdentifier", + "src": "14636:6:32" } ] }, { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13917:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "13922:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13910:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13910:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13910:19:32" - }, - { - "expression": { + "nodeType": "YulVariableDeclaration", + "src": "14678:45:32", + "value": { "arguments": [ { "arguments": [ { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13977:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13984:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13973:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13973:16:32" - }, - { - "arguments": [ - { - "name": "pos", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "13995:3:32" + "src": "14708:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14000:4:32", + "src": "14719:2:32", "type": "", - "value": "0x20" + "value": "32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13991:3:32" + "src": "14704:3:32" }, "nodeType": "YulFunctionCall", - "src": "13991:14:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "14007:6:32" + "src": "14704:18:32" } ], "functionName": { - "name": "copy_memory_to_memory_with_cleanup", + "name": "calldataload", "nodeType": "YulIdentifier", - "src": "13938:34:32" + "src": "14691:12:32" }, "nodeType": "YulFunctionCall", - "src": "13938:76:32" + "src": "14691:32:32" }, - "nodeType": "YulExpressionStatement", - "src": "13938:76:32" + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "14682:5:32", + "type": "" + } + ] }, { - "nodeType": "YulAssignment", - "src": "14023:57:32", - "value": { + "expression": { "arguments": [ { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "14038:3:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "14051:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14059:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14047:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14047:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14068:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "14064:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14064:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "14043:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14043:29:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14034:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14034:39:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14075:4:32", - "type": "", - "value": "0x20" + "name": "value", + "nodeType": "YulIdentifier", + "src": "14754:5:32" } ], "functionName": { - "name": "add", + "name": "validator_revert_bool", "nodeType": "YulIdentifier", - "src": "14030:3:32" + "src": "14732:21:32" }, "nodeType": "YulFunctionCall", - "src": "14030:50:32" + "src": "14732:28:32" + }, + "nodeType": "YulExpressionStatement", + "src": "14732:28:32" + }, + { + "nodeType": "YulAssignment", + "src": "14769:15:32", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14779:5:32" }, "variableNames": [ { - "name": "end", + "name": "value1", "nodeType": "YulIdentifier", - "src": "14023:3:32" + "src": "14769:6:32" } ] } ] }, - "name": "abi_encode_string", + "name": "abi_decode_tuple_t_uint256t_bool", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "value", + "name": "headStart", "nodeType": "YulTypedName", - "src": "13842:5:32", + "src": "14523:9:32", "type": "" }, { - "name": "pos", + "name": "dataEnd", "nodeType": "YulTypedName", - "src": "13849:3:32", + "src": "14534:7:32", "type": "" } ], "returnVariables": [ { - "name": "end", + "name": "value0", + "nodeType": "YulTypedName", + "src": "14546:6:32", + "type": "" + }, + { + "name": "value1", "nodeType": "YulTypedName", - "src": "13857:3:32", + "src": "14554:6:32", "type": "" } ], - "src": "13815:271:32" + "src": "14481:309:32" }, { "body": { "nodeType": "YulBlock", - "src": "14312:1444:32", + "src": "14920:447:32", "statements": [ { - "nodeType": "YulVariableDeclaration", - "src": "14322:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14332:2:32", - "type": "", - "value": "32" + "body": { + "nodeType": "YulBlock", + "src": "14966:16:32", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14975:1:32", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14978:1:32", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "14968:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "14968:12:32" + }, + "nodeType": "YulExpressionStatement", + "src": "14968:12:32" + } + ] }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "14326:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14343:32:32", - "value": { + "condition": { "arguments": [ { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14361:9:32" + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "14941:7:32" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "14950:9:32" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "14937:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "14937:23:32" }, { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14372:2:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "14962:2:32", + "type": "", + "value": "64" } ], "functionName": { - "name": "add", + "name": "slt", "nodeType": "YulIdentifier", - "src": "14357:3:32" + "src": "14933:3:32" }, "nodeType": "YulFunctionCall", - "src": "14357:18:32" + "src": "14933:32:32" }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "14347:6:32", - "type": "" - } - ] + "nodeType": "YulIf", + "src": "14930:52:32" }, { - "expression": { + "nodeType": "YulVariableDeclaration", + "src": "14991:37:32", + "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14391:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14402:2:32" + "src": "15018:9:32" } ], "functionName": { - "name": "mstore", + "name": "calldataload", "nodeType": "YulIdentifier", - "src": "14384:6:32" + "src": "15005:12:32" }, "nodeType": "YulFunctionCall", - "src": "14384:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14384:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14414:17:32", - "value": { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "14425:6:32" + "src": "15005:23:32" }, "variables": [ { - "name": "pos", + "name": "offset", "nodeType": "YulTypedName", - "src": "14418:3:32", + "src": "14995:6:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "14440:27:32", + "src": "15037:28:32", "value": { "arguments": [ { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "14460:6:32" + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15055:2:32", + "type": "", + "value": "64" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15059:1:32", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "15051:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15051:10:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15063:1:32", + "type": "", + "value": "1" } ], "functionName": { - "name": "mload", + "name": "sub", "nodeType": "YulIdentifier", - "src": "14454:5:32" + "src": "15047:3:32" }, "nodeType": "YulFunctionCall", - "src": "14454:13:32" + "src": "15047:18:32" }, "variables": [ { - "name": "length", + "name": "_1", "nodeType": "YulTypedName", - "src": "14444:6:32", + "src": "15041:2:32", "type": "" } ] }, { - "expression": { + "body": { + "nodeType": "YulBlock", + "src": "15092:16:32", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15101:1:32", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15104:1:32", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "15094:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "15094:12:32" + }, + "nodeType": "YulExpressionStatement", + "src": "15094:12:32" + } + ] + }, + "condition": { "arguments": [ { - "name": "tail_1", + "name": "offset", "nodeType": "YulIdentifier", - "src": "14483:6:32" + "src": "15080:6:32" }, { - "name": "length", + "name": "_1", "nodeType": "YulIdentifier", - "src": "14491:6:32" + "src": "15088:2:32" } ], "functionName": { - "name": "mstore", + "name": "gt", "nodeType": "YulIdentifier", - "src": "14476:6:32" + "src": "15077:2:32" }, "nodeType": "YulFunctionCall", - "src": "14476:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14476:22:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14507:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14517:2:32", - "type": "", - "value": "64" + "src": "15077:14:32" }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "14511:2:32", - "type": "" - } - ] + "nodeType": "YulIf", + "src": "15074:34:32" }, { "nodeType": "YulAssignment", - "src": "14528:25:32", + "src": "15117:71:32", "value": { "arguments": [ { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14539:9:32" + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15160:9:32" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "15171:6:32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15156:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15156:22:32" }, { - "name": "_2", + "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "14550:2:32" + "src": "15180:7:32" } ], "functionName": { - "name": "add", + "name": "abi_decode_struct_PeginQuote", "nodeType": "YulIdentifier", - "src": "14535:3:32" + "src": "15127:28:32" }, "nodeType": "YulFunctionCall", - "src": "14535:18:32" + "src": "15127:61:32" }, "variableNames": [ { - "name": "pos", + "name": "value0", "nodeType": "YulIdentifier", - "src": "14528:3:32" + "src": "15117:6:32" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "14562:53:32", + "src": "15197:48:32", "value": { "arguments": [ { @@ -14205,1141 +14637,1018 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14584:9:32" + "src": "15230:9:32" }, { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14599:1:32", - "type": "", - "value": "5" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "14602:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "14595:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14595:14:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "15241:2:32", + "type": "", + "value": "32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14580:3:32" + "src": "15226:3:32" }, "nodeType": "YulFunctionCall", - "src": "14580:30:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "14612:2:32" + "src": "15226:18:32" } ], "functionName": { - "name": "add", + "name": "calldataload", "nodeType": "YulIdentifier", - "src": "14576:3:32" + "src": "15213:12:32" }, "nodeType": "YulFunctionCall", - "src": "14576:39:32" + "src": "15213:32:32" }, "variables": [ { - "name": "tail_2", + "name": "offset_1", "nodeType": "YulTypedName", - "src": "14566:6:32", + "src": "15201:8:32", "type": "" } ] }, { - "nodeType": "YulVariableDeclaration", - "src": "14624:29:32", - "value": { + "body": { + "nodeType": "YulBlock", + "src": "15274:16:32", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15283:1:32", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15286:1:32", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "15276:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "15276:12:32" + }, + "nodeType": "YulExpressionStatement", + "src": "15276:12:32" + } + ] + }, + "condition": { "arguments": [ { - "name": "value0", + "name": "offset_1", "nodeType": "YulIdentifier", - "src": "14642:6:32" + "src": "15260:8:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "14650:2:32" + "src": "15270:2:32" } ], "functionName": { - "name": "add", + "name": "gt", "nodeType": "YulIdentifier", - "src": "14638:3:32" + "src": "15257:2:32" }, "nodeType": "YulFunctionCall", - "src": "14638:15:32" + "src": "15257:16:32" }, - "variables": [ - { - "name": "srcPtr", - "nodeType": "YulTypedName", - "src": "14628:6:32", - "type": "" - } - ] + "nodeType": "YulIf", + "src": "15254:36:32" }, { - "nodeType": "YulVariableDeclaration", - "src": "14662:10:32", + "nodeType": "YulAssignment", + "src": "15299:62:32", "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14671:1:32", - "type": "", - "value": "0" + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15331:9:32" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "15342:8:32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15327:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15327:24:32" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "15353:7:32" + } + ], + "functionName": { + "name": "abi_decode_string", + "nodeType": "YulIdentifier", + "src": "15309:17:32" + }, + "nodeType": "YulFunctionCall", + "src": "15309:52:32" }, - "variables": [ + "variableNames": [ { - "name": "i", - "nodeType": "YulTypedName", - "src": "14666:1:32", - "type": "" + "name": "value1", + "nodeType": "YulIdentifier", + "src": "15299:6:32" } ] - }, + } + ] + }, + "name": "abi_decode_tuple_t_struct$_PeginQuote_$11195_memory_ptrt_bytes_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "14878:9:32", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "14889:7:32", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "14901:6:32", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "14909:6:32", + "type": "" + } + ], + "src": "14795:572:32" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15471:253:32", + "statements": [ { "body": { "nodeType": "YulBlock", - "src": "14730:997:32", + "src": "15517:16:32", "statements": [ { "expression": { "arguments": [ { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "14751:3:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "15526:1:32", + "type": "", + "value": "0" }, { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "14764:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14772:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "14760:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14760:22:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14788:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "14784:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14784:7:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14756:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14756:36:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "15529:1:32", + "type": "", + "value": "0" } ], "functionName": { - "name": "mstore", + "name": "revert", "nodeType": "YulIdentifier", - "src": "14744:6:32" + "src": "15519:6:32" }, "nodeType": "YulFunctionCall", - "src": "14744:49:32" + "src": "15519:12:32" }, "nodeType": "YulExpressionStatement", - "src": "14744:49:32" - }, + "src": "15519:12:32" + } + ] + }, + "condition": { + "arguments": [ { - "nodeType": "YulVariableDeclaration", - "src": "14806:23:32", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "14822:6:32" - } - ], - "functionName": { - "name": "mload", + "arguments": [ + { + "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "14816:5:32" + "src": "15492:7:32" }, - "nodeType": "YulFunctionCall", - "src": "14816:13:32" - }, - "variables": [ { - "name": "_3", - "nodeType": "YulTypedName", - "src": "14810:2:32", - "type": "" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15501:9:32" } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14842:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14852:4:32", - "type": "", - "value": "0xc0" + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "15488:3:32" }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "14846:2:32", - "type": "" - } - ] + "nodeType": "YulFunctionCall", + "src": "15488:23:32" }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15513:2:32", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "15484:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15484:32:32" + }, + "nodeType": "YulIf", + "src": "15481:52:32" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "15542:37:32", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15569:9:32" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "15556:12:32" + }, + "nodeType": "YulFunctionCall", + "src": "15556:23:32" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "15546:6:32", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15622:16:32", + "statements": [ { "expression": { "arguments": [ { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "14876:6:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "15631:1:32", + "type": "", + "value": "0" }, { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "14890:2:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "14884:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "14884:9:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "15634:1:32", + "type": "", + "value": "0" } ], "functionName": { - "name": "mstore", + "name": "revert", "nodeType": "YulIdentifier", - "src": "14869:6:32" + "src": "15624:6:32" }, "nodeType": "YulFunctionCall", - "src": "14869:25:32" + "src": "15624:12:32" }, "nodeType": "YulExpressionStatement", - "src": "14869:25:32" + "src": "15624:12:32" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "15594:6:32" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15610:2:32", + "type": "", + "value": "64" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15614:1:32", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "15606:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15606:10:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15618:1:32", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "15602:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15602:18:32" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "15591:2:32" + }, + "nodeType": "YulFunctionCall", + "src": "15591:30:32" + }, + "nodeType": "YulIf", + "src": "15588:50:32" + }, + { + "nodeType": "YulAssignment", + "src": "15647:71:32", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15690:9:32" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "15701:6:32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15686:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15686:22:32" }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "15710:7:32" + } + ], + "functionName": { + "name": "abi_decode_struct_PeginQuote", + "nodeType": "YulIdentifier", + "src": "15657:28:32" + }, + "nodeType": "YulFunctionCall", + "src": "15657:61:32" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "15647:6:32" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_struct$_PeginQuote_$11195_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "15437:9:32", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "15448:7:32", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "15460:6:32", + "type": "" + } + ], + "src": "15372:352:32" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15855:448:32", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "15901:16:32", + "statements": [ { "expression": { "arguments": [ { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "14918:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14926:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14914:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14914:15:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "15910:1:32", + "type": "", + "value": "0" }, { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "14945:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14949:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14941:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14941:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "14935:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "14935:18:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14963:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14968:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "14959:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14959:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14972:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "14955:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14955:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "14931:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14931:44:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "15913:1:32", + "type": "", + "value": "0" } ], "functionName": { - "name": "mstore", + "name": "revert", "nodeType": "YulIdentifier", - "src": "14907:6:32" + "src": "15903:6:32" }, "nodeType": "YulFunctionCall", - "src": "14907:69:32" + "src": "15903:12:32" }, "nodeType": "YulExpressionStatement", - "src": "14907:69:32" - }, + "src": "15903:12:32" + } + ] + }, + "condition": { + "arguments": [ { - "nodeType": "YulVariableDeclaration", - "src": "14989:38:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "15019:2:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "15023:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15015:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15015:11:32" - } - ], - "functionName": { - "name": "mload", + "arguments": [ + { + "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "15009:5:32" + "src": "15876:7:32" }, - "nodeType": "YulFunctionCall", - "src": "15009:18:32" + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15885:9:32" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "15872:3:32" }, - "variables": [ + "nodeType": "YulFunctionCall", + "src": "15872:23:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15897:2:32", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "15868:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15868:32:32" + }, + "nodeType": "YulIf", + "src": "15865:52:32" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "15926:37:32", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15953:9:32" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "15940:12:32" + }, + "nodeType": "YulFunctionCall", + "src": "15940:23:32" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "15930:6:32", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "15972:28:32", + "value": { + "arguments": [ + { + "arguments": [ { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "14993:12:32", - "type": "" + "kind": "number", + "nodeType": "YulLiteral", + "src": "15990:2:32", + "type": "", + "value": "64" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15994:1:32", + "type": "", + "value": "1" } - ] + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "15986:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15986:10:32" }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15998:1:32", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "15982:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "15982:18:32" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "15976:2:32", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "16027:16:32", + "statements": [ { "expression": { "arguments": [ { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "15051:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "15059:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15047:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15047:15:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "16036:1:32", + "type": "", + "value": "0" }, { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "15064:2:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "16039:1:32", + "type": "", + "value": "0" } ], "functionName": { - "name": "mstore", + "name": "revert", "nodeType": "YulIdentifier", - "src": "15040:6:32" + "src": "16029:6:32" }, "nodeType": "YulFunctionCall", - "src": "15040:27:32" + "src": "16029:12:32" }, "nodeType": "YulExpressionStatement", - "src": "15040:27:32" + "src": "16029:12:32" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "16015:6:32" }, { - "nodeType": "YulVariableDeclaration", - "src": "15080:62:32", - "value": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "15112:12:32" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "15130:6:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "15138:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15126:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15126:15:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "15094:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "15094:48:32" - }, - "variables": [ - { - "name": "tail_3", - "nodeType": "YulTypedName", - "src": "15084:6:32", - "type": "" - } - ] - }, + "name": "_1", + "nodeType": "YulIdentifier", + "src": "16023:2:32" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "16012:2:32" + }, + "nodeType": "YulFunctionCall", + "src": "16012:14:32" + }, + "nodeType": "YulIf", + "src": "16009:34:32" + }, + { + "nodeType": "YulAssignment", + "src": "16052:72:32", + "value": { + "arguments": [ { - "nodeType": "YulVariableDeclaration", - "src": "15155:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15165:4:32", - "type": "", - "value": "0x60" - }, - "variables": [ + "arguments": [ { - "name": "_5", - "nodeType": "YulTypedName", - "src": "15159:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15182:40:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "15214:2:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "15218:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15210:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15210:11:32" - } - ], - "functionName": { - "name": "mload", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "15204:5:32" + "src": "16096:9:32" }, - "nodeType": "YulFunctionCall", - "src": "15204:18:32" - }, - "variables": [ { - "name": "memberValue0_1", - "nodeType": "YulTypedName", - "src": "15186:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "15246:6:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "15254:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15242:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15242:15:32" - }, - { - "arguments": [ - { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "15263:6:32" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "15271:6:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "15259:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15259:19:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15235:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15235:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15235:44:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15292:55:32", - "value": { - "arguments": [ - { - "name": "memberValue0_1", - "nodeType": "YulIdentifier", - "src": "15324:14:32" - }, - { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "15340:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", + "name": "offset", "nodeType": "YulIdentifier", - "src": "15306:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "15306:41:32" - }, - "variables": [ - { - "name": "tail_4", - "nodeType": "YulTypedName", - "src": "15296:6:32", - "type": "" + "src": "16107:6:32" } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15360:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15370:4:32", - "type": "", - "value": "0x80" + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16092:3:32" }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "15364:2:32", - "type": "" - } - ] + "nodeType": "YulFunctionCall", + "src": "16092:22:32" }, { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "15398:6:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "15406:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15394:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15394:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "15435:2:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "15439:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15431:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15431:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "15425:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "15425:18:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "15418:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15418:26:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "15411:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15411:34:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15387:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15387:59:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15387:59:32" - }, + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "16116:7:32" + } + ], + "functionName": { + "name": "abi_decode_struct_PegOutQuote", + "nodeType": "YulIdentifier", + "src": "16062:29:32" + }, + "nodeType": "YulFunctionCall", + "src": "16062:62:32" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "16052:6:32" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16133:48:32", + "value": { + "arguments": [ { - "nodeType": "YulVariableDeclaration", - "src": "15459:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15469:4:32", - "type": "", - "value": "0xa0" - }, - "variables": [ + "arguments": [ { - "name": "_7", - "nodeType": "YulTypedName", - "src": "15463:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15486:40:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "15518:2:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "15522:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15514:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15514:11:32" - } - ], - "functionName": { - "name": "mload", + "name": "headStart", "nodeType": "YulIdentifier", - "src": "15508:5:32" + "src": "16166:9:32" }, - "nodeType": "YulFunctionCall", - "src": "15508:18:32" - }, - "variables": [ { - "name": "memberValue0_2", - "nodeType": "YulTypedName", - "src": "15490:14:32", - "type": "" + "kind": "number", + "nodeType": "YulLiteral", + "src": "16177:2:32", + "type": "", + "value": "32" } - ] - }, + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16162:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "16162:18:32" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "16149:12:32" + }, + "nodeType": "YulFunctionCall", + "src": "16149:32:32" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "16137:8:32", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "16210:16:32", + "statements": [ { "expression": { "arguments": [ { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "15550:6:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "15558:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15546:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15546:15:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "16219:1:32", + "type": "", + "value": "0" }, { - "arguments": [ - { - "name": "tail_4", - "nodeType": "YulIdentifier", - "src": "15567:6:32" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "15575:6:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "15563:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15563:19:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "16222:1:32", + "type": "", + "value": "0" } ], "functionName": { - "name": "mstore", + "name": "revert", "nodeType": "YulIdentifier", - "src": "15539:6:32" + "src": "16212:6:32" }, "nodeType": "YulFunctionCall", - "src": "15539:44:32" + "src": "16212:12:32" }, "nodeType": "YulExpressionStatement", - "src": "15539:44:32" - }, - { - "nodeType": "YulAssignment", - "src": "15596:51:32", - "value": { - "arguments": [ - { - "name": "memberValue0_2", - "nodeType": "YulIdentifier", - "src": "15624:14:32" - }, - { - "name": "tail_4", - "nodeType": "YulIdentifier", - "src": "15640:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "15606:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "15606:41:32" - }, - "variableNames": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "15596:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "15660:25:32", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "15674:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "15682:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15670:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15670:15:32" - }, - "variableNames": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "15660:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "15698:19:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "15709:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "15714:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15705:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15705:12:32" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "15698:3:32" - } - ] + "src": "16212:12:32" } ] }, "condition": { "arguments": [ { - "name": "i", + "name": "offset_1", "nodeType": "YulIdentifier", - "src": "14692:1:32" + "src": "16196:8:32" }, { - "name": "length", + "name": "_1", "nodeType": "YulIdentifier", - "src": "14695:6:32" + "src": "16206:2:32" } ], "functionName": { - "name": "lt", + "name": "gt", "nodeType": "YulIdentifier", - "src": "14689:2:32" + "src": "16193:2:32" }, "nodeType": "YulFunctionCall", - "src": "14689:13:32" + "src": "16193:16:32" }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "14703:18:32", - "statements": [ + "nodeType": "YulIf", + "src": "16190:36:32" + }, + { + "nodeType": "YulAssignment", + "src": "16235:62:32", + "value": { + "arguments": [ { - "nodeType": "YulAssignment", - "src": "14705:14:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "14714:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14717:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", + "arguments": [ + { + "name": "headStart", "nodeType": "YulIdentifier", - "src": "14710:3:32" + "src": "16267:9:32" }, - "nodeType": "YulFunctionCall", - "src": "14710:9:32" - }, - "variableNames": [ { - "name": "i", + "name": "offset_1", "nodeType": "YulIdentifier", - "src": "14705:1:32" + "src": "16278:8:32" } - ] + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16263:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "16263:24:32" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "16289:7:32" } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "14685:3:32", - "statements": [] - }, - "src": "14681:1046:32" - }, - { - "nodeType": "YulAssignment", - "src": "15736:14:32", - "value": { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "15744:6:32" + ], + "functionName": { + "name": "abi_decode_string", + "nodeType": "YulIdentifier", + "src": "16245:17:32" + }, + "nodeType": "YulFunctionCall", + "src": "16245:52:32" }, "variableNames": [ { - "name": "tail", + "name": "value1", "nodeType": "YulIdentifier", - "src": "15736:4:32" + "src": "16235:6:32" } ] } ] }, - "name": "abi_encode_tuple_t_array$_t_struct$_LiquidityProvider_$7500_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_LiquidityProvider_$7500_memory_ptr_$dyn_memory_ptr__fromStack_reversed", + "name": "abi_decode_tuple_t_struct$_PegOutQuote_$11234_memory_ptrt_bytes_memory_ptr", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "14281:9:32", + "src": "15813:9:32", "type": "" }, { - "name": "value0", + "name": "dataEnd", "nodeType": "YulTypedName", - "src": "14292:6:32", + "src": "15824:7:32", "type": "" } ], "returnVariables": [ { - "name": "tail", + "name": "value0", + "nodeType": "YulTypedName", + "src": "15836:6:32", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "15844:6:32", + "type": "" + } + ], + "src": "15729:574:32" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "16351:47:32", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "16368:3:32" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "16377:5:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16384:6:32", + "type": "", + "value": "0xffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "16373:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "16373:18:32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16361:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "16361:31:32" + }, + "nodeType": "YulExpressionStatement", + "src": "16361:31:32" + } + ] + }, + "name": "abi_encode_uint16", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", "nodeType": "YulTypedName", - "src": "14303:4:32", + "src": "16335:5:32", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "16342:3:32", "type": "" } ], - "src": "14091:1665:32" + "src": "16308:90:32" }, { "body": { "nodeType": "YulBlock", - "src": "15862:102:32", + "src": "16502:89:32", "statements": [ { "nodeType": "YulAssignment", - "src": "15872:26:32", + "src": "16512:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15884:9:32" + "src": "16524:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15895:2:32", + "src": "16535:2:32", "type": "", "value": "32" } @@ -15347,16 +15656,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15880:3:32" + "src": "16520:3:32" }, "nodeType": "YulFunctionCall", - "src": "15880:18:32" + "src": "16520:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15872:4:32" + "src": "16512:4:32" } ] }, @@ -15366,94 +15675,58 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15914:9:32" + "src": "16554:9:32" }, { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "15929:6:32" + "src": "16569:6:32" }, { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15945:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15950:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "15941:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15941:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15954:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "15937:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15937:19:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "16577:6:32", + "type": "", + "value": "0xffff" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "15925:3:32" + "src": "16565:3:32" }, "nodeType": "YulFunctionCall", - "src": "15925:32:32" + "src": "16565:19:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15907:6:32" + "src": "16547:6:32" }, "nodeType": "YulFunctionCall", - "src": "15907:51:32" + "src": "16547:38:32" }, "nodeType": "YulExpressionStatement", - "src": "15907:51:32" + "src": "16547:38:32" } ] }, - "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "name": "abi_encode_tuple_t_uint16__to_t_uint16__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "15831:9:32", + "src": "16471:9:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "15842:6:32", + "src": "16482:6:32", "type": "" } ], @@ -15461,247 +15734,183 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "15853:4:32", + "src": "16493:4:32", "type": "" } ], - "src": "15761:203:32" + "src": "16403:188:32" }, { "body": { "nodeType": "YulBlock", - "src": "16053:225:32", + "src": "16665:114:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "16099:16:32", + "src": "16709:22:32", "statements": [ { "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16108:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16111:1:32", - "type": "", - "value": "0" - } - ], + "arguments": [], "functionName": { - "name": "revert", + "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "16101:6:32" + "src": "16711:16:32" }, "nodeType": "YulFunctionCall", - "src": "16101:12:32" + "src": "16711:18:32" }, "nodeType": "YulExpressionStatement", - "src": "16101:12:32" + "src": "16711:18:32" } ] }, "condition": { "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "16681:6:32" + }, { "arguments": [ { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "16074:7:32" + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16697:2:32", + "type": "", + "value": "64" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16701:1:32", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "16693:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "16693:10:32" }, { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16083:9:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "16705:1:32", + "type": "", + "value": "1" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "16070:3:32" + "src": "16689:3:32" }, "nodeType": "YulFunctionCall", - "src": "16070:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16095:2:32", - "type": "", - "value": "64" + "src": "16689:18:32" } ], "functionName": { - "name": "slt", + "name": "gt", "nodeType": "YulIdentifier", - "src": "16066:3:32" + "src": "16678:2:32" }, "nodeType": "YulFunctionCall", - "src": "16066:32:32" + "src": "16678:30:32" }, "nodeType": "YulIf", - "src": "16063:52:32" + "src": "16675:56:32" }, { "nodeType": "YulAssignment", - "src": "16124:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16147:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "16134:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "16134:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "16124:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16166:45:32", + "src": "16740:33:32", "value": { "arguments": [ { "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16196:9:32" - }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16207:2:32", + "src": "16756:1:32", "type": "", - "value": "32" + "value": "5" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "16759:6:32" } ], "functionName": { - "name": "add", + "name": "shl", "nodeType": "YulIdentifier", - "src": "16192:3:32" + "src": "16752:3:32" }, "nodeType": "YulFunctionCall", - "src": "16192:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "16179:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "16179:32:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "16170:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ + "src": "16752:14:32" + }, { - "name": "value", - "nodeType": "YulIdentifier", - "src": "16242:5:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "16768:4:32", + "type": "", + "value": "0x20" } ], "functionName": { - "name": "validator_revert_bool", + "name": "add", "nodeType": "YulIdentifier", - "src": "16220:21:32" + "src": "16748:3:32" }, "nodeType": "YulFunctionCall", - "src": "16220:28:32" - }, - "nodeType": "YulExpressionStatement", - "src": "16220:28:32" - }, - { - "nodeType": "YulAssignment", - "src": "16257:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "16267:5:32" + "src": "16748:25:32" }, "variableNames": [ { - "name": "value1", + "name": "size", "nodeType": "YulIdentifier", - "src": "16257:6:32" + "src": "16740:4:32" } ] } ] }, - "name": "abi_decode_tuple_t_uint256t_bool", + "name": "array_allocation_size_array_bytes32_dyn", "nodeType": "YulFunctionDefinition", "parameters": [ { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "16011:9:32", - "type": "" - }, - { - "name": "dataEnd", + "name": "length", "nodeType": "YulTypedName", - "src": "16022:7:32", + "src": "16645:6:32", "type": "" } ], "returnVariables": [ { - "name": "value0", - "nodeType": "YulTypedName", - "src": "16034:6:32", - "type": "" - }, - { - "name": "value1", + "name": "size", "nodeType": "YulTypedName", - "src": "16042:6:32", + "src": "16656:4:32", "type": "" } ], - "src": "15969:309:32" + "src": "16596:183:32" }, { "body": { "nodeType": "YulBlock", - "src": "16408:447:32", + "src": "16956:1145:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "16454:16:32", + "src": "17003:16:32", "statements": [ { "expression": { @@ -15709,14 +15918,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "16463:1:32", + "src": "17012:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16466:1:32", + "src": "17015:1:32", "type": "", "value": "0" } @@ -15724,13 +15933,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "16456:6:32" + "src": "17005:6:32" }, "nodeType": "YulFunctionCall", - "src": "16456:12:32" + "src": "17005:12:32" }, "nodeType": "YulExpressionStatement", - "src": "16456:12:32" + "src": "17005:12:32" } ] }, @@ -15741,72 +15950,134 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "16429:7:32" + "src": "16977:7:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16438:9:32" + "src": "16986:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "16425:3:32" + "src": "16973:3:32" }, "nodeType": "YulFunctionCall", - "src": "16425:23:32" + "src": "16973:23:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16450:2:32", + "src": "16998:3:32", "type": "", - "value": "64" + "value": "160" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "16421:3:32" + "src": "16969:3:32" }, "nodeType": "YulFunctionCall", - "src": "16421:32:32" + "src": "16969:33:32" }, "nodeType": "YulIf", - "src": "16418:52:32" + "src": "16966:53:32" }, { - "nodeType": "YulVariableDeclaration", - "src": "16479:37:32", + "nodeType": "YulAssignment", + "src": "17028:33:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16506:9:32" + "src": "17051:9:32" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "16493:12:32" + "src": "17038:12:32" }, "nodeType": "YulFunctionCall", - "src": "16493:23:32" + "src": "17038:23:32" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "17028:6:32" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "17070:12:32", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17080:2:32", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "17074:2:32", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "17091:46:32", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17122:9:32" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "17133:2:32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17118:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "17118:18:32" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "17105:12:32" + }, + "nodeType": "YulFunctionCall", + "src": "17105:32:32" }, "variables": [ { "name": "offset", "nodeType": "YulTypedName", - "src": "16483:6:32", + "src": "17095:6:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "16525:28:32", + "src": "17146:28:32", "value": { "arguments": [ { @@ -15814,14 +16085,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "16543:2:32", + "src": "17164:2:32", "type": "", "value": "64" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16547:1:32", + "src": "17168:1:32", "type": "", "value": "1" } @@ -15829,15 +16100,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "16539:3:32" + "src": "17160:3:32" }, "nodeType": "YulFunctionCall", - "src": "16539:10:32" + "src": "17160:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16551:1:32", + "src": "17172:1:32", "type": "", "value": "1" } @@ -15845,16 +16116,16 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "16535:3:32" + "src": "17156:3:32" }, "nodeType": "YulFunctionCall", - "src": "16535:18:32" + "src": "17156:18:32" }, "variables": [ { - "name": "_1", + "name": "_2", "nodeType": "YulTypedName", - "src": "16529:2:32", + "src": "17150:2:32", "type": "" } ] @@ -15862,7 +16133,7 @@ { "body": { "nodeType": "YulBlock", - "src": "16580:16:32", + "src": "17201:16:32", "statements": [ { "expression": { @@ -15870,14 +16141,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "16589:1:32", + "src": "17210:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16592:1:32", + "src": "17213:1:32", "type": "", "value": "0" } @@ -15885,13 +16156,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "16582:6:32" + "src": "17203:6:32" }, "nodeType": "YulFunctionCall", - "src": "16582:12:32" + "src": "17203:12:32" }, "nodeType": "YulExpressionStatement", - "src": "16582:12:32" + "src": "17203:12:32" } ] }, @@ -15900,28 +16171,28 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "16568:6:32" + "src": "17189:6:32" }, { - "name": "_1", + "name": "_2", "nodeType": "YulIdentifier", - "src": "16576:2:32" + "src": "17197:2:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "16565:2:32" + "src": "17186:2:32" }, "nodeType": "YulFunctionCall", - "src": "16565:14:32" + "src": "17186:14:32" }, "nodeType": "YulIf", - "src": "16562:34:32" + "src": "17183:34:32" }, { "nodeType": "YulAssignment", - "src": "16605:71:32", + "src": "17226:60:32", "value": { "arguments": [ { @@ -15929,47 +16200,47 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16648:9:32" + "src": "17258:9:32" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "16659:6:32" + "src": "17269:6:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16644:3:32" + "src": "17254:3:32" }, "nodeType": "YulFunctionCall", - "src": "16644:22:32" + "src": "17254:22:32" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "16668:7:32" + "src": "17278:7:32" } ], "functionName": { - "name": "abi_decode_struct_PeginQuote", + "name": "abi_decode_string", "nodeType": "YulIdentifier", - "src": "16615:28:32" + "src": "17236:17:32" }, "nodeType": "YulFunctionCall", - "src": "16615:61:32" + "src": "17236:50:32" }, "variableNames": [ { - "name": "value0", + "name": "value1", "nodeType": "YulIdentifier", - "src": "16605:6:32" + "src": "17226:6:32" } ] }, { - "nodeType": "YulVariableDeclaration", - "src": "16685:48:32", + "nodeType": "YulAssignment", + "src": "17295:42:32", "value": { "arguments": [ { @@ -15977,105 +16248,89 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16718:9:32" + "src": "17322:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16729:2:32", + "src": "17333:2:32", "type": "", - "value": "32" + "value": "64" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16714:3:32" + "src": "17318:3:32" }, "nodeType": "YulFunctionCall", - "src": "16714:18:32" + "src": "17318:18:32" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "16701:12:32" + "src": "17305:12:32" }, "nodeType": "YulFunctionCall", - "src": "16701:32:32" + "src": "17305:32:32" }, - "variables": [ + "variableNames": [ { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "16689:8:32", - "type": "" + "name": "value2", + "nodeType": "YulIdentifier", + "src": "17295:6:32" } ] }, { - "body": { - "nodeType": "YulBlock", - "src": "16762:16:32", - "statements": [ + "nodeType": "YulAssignment", + "src": "17346:42:32", + "value": { + "arguments": [ { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16771:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16774:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", + "arguments": [ + { + "name": "headStart", "nodeType": "YulIdentifier", - "src": "16764:6:32" + "src": "17373:9:32" }, - "nodeType": "YulFunctionCall", - "src": "16764:12:32" + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17384:2:32", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17369:3:32" }, - "nodeType": "YulExpressionStatement", - "src": "16764:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "16748:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "16758:2:32" + "nodeType": "YulFunctionCall", + "src": "17369:18:32" } ], "functionName": { - "name": "gt", + "name": "calldataload", "nodeType": "YulIdentifier", - "src": "16745:2:32" + "src": "17356:12:32" }, "nodeType": "YulFunctionCall", - "src": "16745:16:32" + "src": "17356:32:32" }, - "nodeType": "YulIf", - "src": "16742:36:32" + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "17346:6:32" + } + ] }, { - "nodeType": "YulAssignment", - "src": "16787:62:32", + "nodeType": "YulVariableDeclaration", + "src": "17397:49:32", "value": { "arguments": [ { @@ -16083,87 +16338,46 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16819:9:32" + "src": "17430:9:32" }, { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "16830:8:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "17441:3:32", + "type": "", + "value": "128" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16815:3:32" + "src": "17426:3:32" }, "nodeType": "YulFunctionCall", - "src": "16815:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "16841:7:32" + "src": "17426:19:32" } ], "functionName": { - "name": "abi_decode_string", + "name": "calldataload", "nodeType": "YulIdentifier", - "src": "16797:17:32" + "src": "17413:12:32" }, "nodeType": "YulFunctionCall", - "src": "16797:52:32" + "src": "17413:33:32" }, - "variableNames": [ + "variables": [ { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "16787:6:32" + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "17401:8:32", + "type": "" } ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$10599_memory_ptrt_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "16366:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "16377:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "16389:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "16397:6:32", - "type": "" - } - ], - "src": "16283:572:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16959:253:32", - "statements": [ + }, { "body": { "nodeType": "YulBlock", - "src": "17005:16:32", + "src": "17475:16:32", "statements": [ { "expression": { @@ -16171,14 +16385,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "17014:1:32", + "src": "17484:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17017:1:32", + "src": "17487:1:32", "type": "", "value": "0" } @@ -16186,82 +16400,69 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "17007:6:32" + "src": "17477:6:32" }, "nodeType": "YulFunctionCall", - "src": "17007:12:32" + "src": "17477:12:32" }, "nodeType": "YulExpressionStatement", - "src": "17007:12:32" + "src": "17477:12:32" } ] }, "condition": { "arguments": [ { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "16980:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16989:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "16976:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16976:23:32" + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "17461:8:32" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17001:2:32", - "type": "", - "value": "32" + "name": "_2", + "nodeType": "YulIdentifier", + "src": "17471:2:32" } ], "functionName": { - "name": "slt", + "name": "gt", "nodeType": "YulIdentifier", - "src": "16972:3:32" + "src": "17458:2:32" }, "nodeType": "YulFunctionCall", - "src": "16972:32:32" + "src": "17458:16:32" }, "nodeType": "YulIf", - "src": "16969:52:32" + "src": "17455:36:32" }, { "nodeType": "YulVariableDeclaration", - "src": "17030:37:32", + "src": "17500:34:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17057:9:32" + "src": "17514:9:32" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "17525:8:32" } ], "functionName": { - "name": "calldataload", + "name": "add", "nodeType": "YulIdentifier", - "src": "17044:12:32" + "src": "17510:3:32" }, "nodeType": "YulFunctionCall", - "src": "17044:23:32" + "src": "17510:24:32" }, "variables": [ { - "name": "offset", + "name": "_3", "nodeType": "YulTypedName", - "src": "17034:6:32", + "src": "17504:2:32", "type": "" } ] @@ -16269,7 +16470,7 @@ { "body": { "nodeType": "YulBlock", - "src": "17110:16:32", + "src": "17582:16:32", "statements": [ { "expression": { @@ -16277,14 +16478,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "17119:1:32", + "src": "17591:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17122:1:32", + "src": "17594:1:32", "type": "", "value": "0" } @@ -16292,316 +16493,273 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "17112:6:32" + "src": "17584:6:32" }, "nodeType": "YulFunctionCall", - "src": "17112:12:32" + "src": "17584:12:32" }, "nodeType": "YulExpressionStatement", - "src": "17112:12:32" + "src": "17584:12:32" } ] }, "condition": { "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "17082:6:32" - }, { "arguments": [ { "arguments": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17098:2:32", - "type": "", - "value": "64" + "name": "_3", + "nodeType": "YulIdentifier", + "src": "17561:2:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17102:1:32", + "src": "17565:4:32", "type": "", - "value": "1" + "value": "0x1f" } ], "functionName": { - "name": "shl", + "name": "add", "nodeType": "YulIdentifier", - "src": "17094:3:32" + "src": "17557:3:32" }, "nodeType": "YulFunctionCall", - "src": "17094:10:32" + "src": "17557:13:32" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17106:1:32", - "type": "", - "value": "1" + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "17572:7:32" } ], "functionName": { - "name": "sub", + "name": "slt", "nodeType": "YulIdentifier", - "src": "17090:3:32" + "src": "17553:3:32" }, "nodeType": "YulFunctionCall", - "src": "17090:18:32" + "src": "17553:27:32" } ], "functionName": { - "name": "gt", + "name": "iszero", "nodeType": "YulIdentifier", - "src": "17079:2:32" + "src": "17546:6:32" }, "nodeType": "YulFunctionCall", - "src": "17079:30:32" + "src": "17546:35:32" }, "nodeType": "YulIf", - "src": "17076:50:32" + "src": "17543:55:32" }, { - "nodeType": "YulAssignment", - "src": "17135:71:32", + "nodeType": "YulVariableDeclaration", + "src": "17607:26:32", "value": { "arguments": [ { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17178:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "17189:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17174:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17174:22:32" - }, - { - "name": "dataEnd", + "name": "_3", "nodeType": "YulIdentifier", - "src": "17198:7:32" + "src": "17630:2:32" } ], "functionName": { - "name": "abi_decode_struct_PeginQuote", + "name": "calldataload", "nodeType": "YulIdentifier", - "src": "17145:28:32" + "src": "17617:12:32" }, "nodeType": "YulFunctionCall", - "src": "17145:61:32" + "src": "17617:16:32" }, - "variableNames": [ + "variables": [ { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "17135:6:32" + "name": "_4", + "nodeType": "YulTypedName", + "src": "17611:2:32", + "type": "" } ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$10599_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "16925:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "16936:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "16948:6:32", - "type": "" - } - ], - "src": "16860:352:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17343:448:32", - "statements": [ + }, { - "body": { - "nodeType": "YulBlock", - "src": "17389:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17398:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17401:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "17391:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17391:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "17391:12:32" - } - ] - }, - "condition": { + "nodeType": "YulVariableDeclaration", + "src": "17642:71:32", + "value": { "arguments": [ { "arguments": [ { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "17364:7:32" - }, - { - "name": "headStart", + "name": "_4", "nodeType": "YulIdentifier", - "src": "17373:9:32" + "src": "17709:2:32" } ], "functionName": { - "name": "sub", + "name": "array_allocation_size_array_bytes32_dyn", "nodeType": "YulIdentifier", - "src": "17360:3:32" + "src": "17669:39:32" }, "nodeType": "YulFunctionCall", - "src": "17360:23:32" + "src": "17669:43:32" + } + ], + "functionName": { + "name": "allocate_memory", + "nodeType": "YulIdentifier", + "src": "17653:15:32" + }, + "nodeType": "YulFunctionCall", + "src": "17653:60:32" + }, + "variables": [ + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "17646:3:32", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "17722:16:32", + "value": { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "17735:3:32" + }, + "variables": [ + { + "name": "dst_1", + "nodeType": "YulTypedName", + "src": "17726:5:32", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "17754:3:32" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17385:2:32", - "type": "", - "value": "64" + "name": "_4", + "nodeType": "YulIdentifier", + "src": "17759:2:32" } ], "functionName": { - "name": "slt", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "17356:3:32" + "src": "17747:6:32" }, "nodeType": "YulFunctionCall", - "src": "17356:32:32" + "src": "17747:15:32" }, - "nodeType": "YulIf", - "src": "17353:52:32" + "nodeType": "YulExpressionStatement", + "src": "17747:15:32" }, { - "nodeType": "YulVariableDeclaration", - "src": "17414:37:32", + "nodeType": "YulAssignment", + "src": "17771:19:32", "value": { "arguments": [ { - "name": "headStart", + "name": "dst", + "nodeType": "YulIdentifier", + "src": "17782:3:32" + }, + { + "name": "_1", "nodeType": "YulIdentifier", - "src": "17441:9:32" + "src": "17787:2:32" } ], "functionName": { - "name": "calldataload", + "name": "add", "nodeType": "YulIdentifier", - "src": "17428:12:32" + "src": "17778:3:32" }, "nodeType": "YulFunctionCall", - "src": "17428:23:32" + "src": "17778:12:32" }, - "variables": [ + "variableNames": [ { - "name": "offset", - "nodeType": "YulTypedName", - "src": "17418:6:32", - "type": "" + "name": "dst", + "nodeType": "YulIdentifier", + "src": "17771:3:32" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "17460:28:32", + "src": "17799:42:32", "value": { "arguments": [ { "arguments": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17478:2:32", - "type": "", - "value": "64" + "name": "_3", + "nodeType": "YulIdentifier", + "src": "17821:2:32" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17482:1:32", - "type": "", - "value": "1" + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17829:1:32", + "type": "", + "value": "5" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "17832:2:32" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "17825:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "17825:10:32" } ], "functionName": { - "name": "shl", + "name": "add", "nodeType": "YulIdentifier", - "src": "17474:3:32" + "src": "17817:3:32" }, "nodeType": "YulFunctionCall", - "src": "17474:10:32" + "src": "17817:19:32" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17486:1:32", - "type": "", - "value": "1" + "name": "_1", + "nodeType": "YulIdentifier", + "src": "17838:2:32" } ], "functionName": { - "name": "sub", + "name": "add", "nodeType": "YulIdentifier", - "src": "17470:3:32" + "src": "17813:3:32" }, "nodeType": "YulFunctionCall", - "src": "17470:18:32" + "src": "17813:28:32" }, "variables": [ { - "name": "_1", + "name": "srcEnd", "nodeType": "YulTypedName", - "src": "17464:2:32", + "src": "17803:6:32", "type": "" } ] @@ -16609,7 +16767,7 @@ { "body": { "nodeType": "YulBlock", - "src": "17515:16:32", + "src": "17873:16:32", "statements": [ { "expression": { @@ -16617,14 +16775,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "17524:1:32", + "src": "17882:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17527:1:32", + "src": "17885:1:32", "type": "", "value": "0" } @@ -16632,130 +16790,69 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "17517:6:32" + "src": "17875:6:32" }, "nodeType": "YulFunctionCall", - "src": "17517:12:32" + "src": "17875:12:32" }, "nodeType": "YulExpressionStatement", - "src": "17517:12:32" + "src": "17875:12:32" } ] }, "condition": { "arguments": [ { - "name": "offset", + "name": "srcEnd", "nodeType": "YulIdentifier", - "src": "17503:6:32" + "src": "17856:6:32" }, { - "name": "_1", + "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "17511:2:32" + "src": "17864:7:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "17500:2:32" + "src": "17853:2:32" }, "nodeType": "YulFunctionCall", - "src": "17500:14:32" + "src": "17853:19:32" }, "nodeType": "YulIf", - "src": "17497:34:32" + "src": "17850:39:32" }, { - "nodeType": "YulAssignment", - "src": "17540:72:32", + "nodeType": "YulVariableDeclaration", + "src": "17898:22:32", "value": { "arguments": [ { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17584:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "17595:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17580:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17580:22:32" + "name": "_3", + "nodeType": "YulIdentifier", + "src": "17913:2:32" }, { - "name": "dataEnd", + "name": "_1", "nodeType": "YulIdentifier", - "src": "17604:7:32" - } - ], - "functionName": { - "name": "abi_decode_struct_PegOutQuote", - "nodeType": "YulIdentifier", - "src": "17550:29:32" - }, - "nodeType": "YulFunctionCall", - "src": "17550:62:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "17540:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17621:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17654:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17665:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17650:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17650:18:32" + "src": "17917:2:32" } ], "functionName": { - "name": "calldataload", + "name": "add", "nodeType": "YulIdentifier", - "src": "17637:12:32" + "src": "17909:3:32" }, "nodeType": "YulFunctionCall", - "src": "17637:32:32" + "src": "17909:11:32" }, "variables": [ { - "name": "offset_1", + "name": "src", "nodeType": "YulTypedName", - "src": "17625:8:32", + "src": "17902:3:32", "type": "" } ] @@ -16763,126 +16860,176 @@ { "body": { "nodeType": "YulBlock", - "src": "17698:16:32", + "src": "17985:86:32", "statements": [ { "expression": { "arguments": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17707:1:32", - "type": "", - "value": "0" + "name": "dst", + "nodeType": "YulIdentifier", + "src": "18006:3:32" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17710:1:32", - "type": "", - "value": "0" + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "18024:3:32" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "18011:12:32" + }, + "nodeType": "YulFunctionCall", + "src": "18011:17:32" } ], "functionName": { - "name": "revert", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "17700:6:32" + "src": "17999:6:32" }, "nodeType": "YulFunctionCall", - "src": "17700:12:32" + "src": "17999:30:32" }, "nodeType": "YulExpressionStatement", - "src": "17700:12:32" + "src": "17999:30:32" + }, + { + "nodeType": "YulAssignment", + "src": "18042:19:32", + "value": { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "18053:3:32" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "18058:2:32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18049:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "18049:12:32" + }, + "variableNames": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "18042:3:32" + } + ] } ] }, "condition": { "arguments": [ { - "name": "offset_1", + "name": "src", "nodeType": "YulIdentifier", - "src": "17684:8:32" + "src": "17940:3:32" }, { - "name": "_1", + "name": "srcEnd", "nodeType": "YulIdentifier", - "src": "17694:2:32" + "src": "17945:6:32" } ], "functionName": { - "name": "gt", + "name": "lt", "nodeType": "YulIdentifier", - "src": "17681:2:32" + "src": "17937:2:32" }, "nodeType": "YulFunctionCall", - "src": "17681:16:32" + "src": "17937:15:32" }, - "nodeType": "YulIf", - "src": "17678:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "17723:62:32", - "value": { - "arguments": [ + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "17953:23:32", + "statements": [ { - "arguments": [ - { - "name": "headStart", + "nodeType": "YulAssignment", + "src": "17955:19:32", + "value": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "17966:3:32" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "17971:2:32" + } + ], + "functionName": { + "name": "add", "nodeType": "YulIdentifier", - "src": "17755:9:32" + "src": "17962:3:32" }, + "nodeType": "YulFunctionCall", + "src": "17962:12:32" + }, + "variableNames": [ { - "name": "offset_1", + "name": "src", "nodeType": "YulIdentifier", - "src": "17766:8:32" + "src": "17955:3:32" } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17751:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17751:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "17777:7:32" + ] } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "17733:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "17733:52:32" + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "17933:3:32", + "statements": [] + }, + "src": "17929:142:32" + }, + { + "nodeType": "YulAssignment", + "src": "18080:15:32", + "value": { + "name": "dst_1", + "nodeType": "YulIdentifier", + "src": "18090:5:32" }, "variableNames": [ { - "name": "value1", + "name": "value4", "nodeType": "YulIdentifier", - "src": "17723:6:32" + "src": "18080:6:32" } ] } ] }, - "name": "abi_decode_tuple_t_struct$_PegOutQuote_$10638_memory_ptrt_bytes_memory_ptr", + "name": "abi_decode_tuple_t_bytes32t_bytes_memory_ptrt_bytes32t_uint256t_array$_t_bytes32_$dyn_memory_ptr", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "17301:9:32", + "src": "16890:9:32", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "17312:7:32", + "src": "16901:7:32", "type": "" } ], @@ -16890,105 +17037,55 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "17324:6:32", + "src": "16913:6:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "17332:6:32", + "src": "16921:6:32", "type": "" - } - ], - "src": "17217:574:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17839:47:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "17856:3:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "17865:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17872:6:32", - "type": "", - "value": "0xffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "17861:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17861:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17849:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17849:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "17849:31:32" - } - ] - }, - "name": "abi_encode_uint16", - "nodeType": "YulFunctionDefinition", - "parameters": [ + }, { - "name": "value", + "name": "value2", "nodeType": "YulTypedName", - "src": "17823:5:32", + "src": "16929:6:32", "type": "" }, { - "name": "pos", + "name": "value3", + "nodeType": "YulTypedName", + "src": "16937:6:32", + "type": "" + }, + { + "name": "value4", "nodeType": "YulTypedName", - "src": "17830:3:32", + "src": "16945:6:32", "type": "" } ], - "src": "17796:90:32" + "src": "16784:1317:32" }, { "body": { "nodeType": "YulBlock", - "src": "17990:89:32", + "src": "18230:102:32", "statements": [ { "nodeType": "YulAssignment", - "src": "18000:26:32", + "src": "18240:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18012:9:32" + "src": "18252:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18023:2:32", + "src": "18263:2:32", "type": "", "value": "32" } @@ -16996,16 +17093,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18008:3:32" + "src": "18248:3:32" }, "nodeType": "YulFunctionCall", - "src": "18008:18:32" + "src": "18248:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18000:4:32" + "src": "18240:4:32" } ] }, @@ -17015,58 +17112,94 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18042:9:32" + "src": "18282:9:32" }, { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "18057:6:32" + "src": "18297:6:32" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18065:6:32", - "type": "", - "value": "0xffff" + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18313:3:32", + "type": "", + "value": "160" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18318:1:32", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "18309:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "18309:11:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18322:1:32", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "18305:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "18305:19:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "18053:3:32" + "src": "18293:3:32" }, "nodeType": "YulFunctionCall", - "src": "18053:19:32" + "src": "18293:32:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "18035:6:32" + "src": "18275:6:32" }, "nodeType": "YulFunctionCall", - "src": "18035:38:32" + "src": "18275:51:32" }, "nodeType": "YulExpressionStatement", - "src": "18035:38:32" + "src": "18275:51:32" } ] }, - "name": "abi_encode_tuple_t_uint16__to_t_uint16__fromStack_reversed", + "name": "abi_encode_tuple_t_contract$_Bridge_$4173__to_t_address_payable__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "17959:9:32", + "src": "18199:9:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "17970:6:32", + "src": "18210:6:32", "type": "" } ], @@ -17074,351 +17207,201 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "17981:4:32", + "src": "18221:4:32", "type": "" } ], - "src": "17891:188:32" + "src": "18106:226:32" }, { "body": { "nodeType": "YulBlock", - "src": "18256:1145:32", + "src": "18558:650:32", "statements": [ { - "body": { - "nodeType": "YulBlock", - "src": "18303:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18312:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18315:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "18305:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "18305:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "18305:12:32" - } - ] + "nodeType": "YulVariableDeclaration", + "src": "18568:12:32", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18578:2:32", + "type": "", + "value": "32" }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "18277:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18286:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "18273:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18273:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18298:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "18269:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18269:33:32" - }, - "nodeType": "YulIf", - "src": "18266:53:32" + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "18572:2:32", + "type": "" + } + ] }, { - "nodeType": "YulAssignment", - "src": "18328:33:32", + "nodeType": "YulVariableDeclaration", + "src": "18589:32:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18351:9:32" + "src": "18607:9:32" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "18618:2:32" } ], "functionName": { - "name": "calldataload", + "name": "add", "nodeType": "YulIdentifier", - "src": "18338:12:32" + "src": "18603:3:32" }, "nodeType": "YulFunctionCall", - "src": "18338:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "18328:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18370:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18380:2:32", - "type": "", - "value": "32" + "src": "18603:18:32" }, "variables": [ { - "name": "_1", + "name": "tail_1", "nodeType": "YulTypedName", - "src": "18374:2:32", + "src": "18593:6:32", "type": "" } ] }, { - "nodeType": "YulVariableDeclaration", - "src": "18391:46:32", - "value": { + "expression": { "arguments": [ { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18422:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "18433:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18418:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18418:18:32" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "18637:9:32" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "18648:2:32" } ], "functionName": { - "name": "calldataload", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "18405:12:32" + "src": "18630:6:32" }, "nodeType": "YulFunctionCall", - "src": "18405:32:32" + "src": "18630:21:32" + }, + "nodeType": "YulExpressionStatement", + "src": "18630:21:32" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "18660:17:32", + "value": { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "18671:6:32" }, "variables": [ { - "name": "offset", + "name": "pos", "nodeType": "YulTypedName", - "src": "18395:6:32", + "src": "18664:3:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "18446:28:32", + "src": "18686:27:32", "value": { "arguments": [ { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18464:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18468:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "18460:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18460:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18472:1:32", - "type": "", - "value": "1" + "name": "value0", + "nodeType": "YulIdentifier", + "src": "18706:6:32" } ], "functionName": { - "name": "sub", + "name": "mload", "nodeType": "YulIdentifier", - "src": "18456:3:32" + "src": "18700:5:32" }, "nodeType": "YulFunctionCall", - "src": "18456:18:32" + "src": "18700:13:32" }, "variables": [ { - "name": "_2", + "name": "length", "nodeType": "YulTypedName", - "src": "18450:2:32", + "src": "18690:6:32", "type": "" } ] }, { - "body": { - "nodeType": "YulBlock", - "src": "18501:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18510:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18513:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "18503:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "18503:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "18503:12:32" - } - ] - }, - "condition": { + "expression": { "arguments": [ { - "name": "offset", + "name": "tail_1", "nodeType": "YulIdentifier", - "src": "18489:6:32" + "src": "18729:6:32" }, { - "name": "_2", + "name": "length", "nodeType": "YulIdentifier", - "src": "18497:2:32" + "src": "18737:6:32" } ], "functionName": { - "name": "gt", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "18486:2:32" + "src": "18722:6:32" }, "nodeType": "YulFunctionCall", - "src": "18486:14:32" + "src": "18722:22:32" }, - "nodeType": "YulIf", - "src": "18483:34:32" + "nodeType": "YulExpressionStatement", + "src": "18722:22:32" }, { "nodeType": "YulAssignment", - "src": "18526:60:32", + "src": "18753:25:32", "value": { "arguments": [ { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18558:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "18569:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18554:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18554:22:32" + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "18764:9:32" }, { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "18578:7:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "18775:2:32", + "type": "", + "value": "64" } ], "functionName": { - "name": "abi_decode_string", + "name": "add", "nodeType": "YulIdentifier", - "src": "18536:17:32" + "src": "18760:3:32" }, "nodeType": "YulFunctionCall", - "src": "18536:50:32" + "src": "18760:18:32" }, "variableNames": [ { - "name": "value1", + "name": "pos", "nodeType": "YulIdentifier", - "src": "18526:6:32" + "src": "18753:3:32" } ] }, { - "nodeType": "YulAssignment", - "src": "18595:42:32", + "nodeType": "YulVariableDeclaration", + "src": "18787:53:32", "value": { "arguments": [ { @@ -17426,128 +17409,113 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18622:9:32" + "src": "18809:9:32" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18633:2:32", - "type": "", - "value": "64" + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18824:1:32", + "type": "", + "value": "5" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "18827:6:32" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "18820:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "18820:14:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18618:3:32" + "src": "18805:3:32" }, "nodeType": "YulFunctionCall", - "src": "18618:18:32" + "src": "18805:30:32" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18837:2:32", + "type": "", + "value": "64" } ], "functionName": { - "name": "calldataload", + "name": "add", "nodeType": "YulIdentifier", - "src": "18605:12:32" + "src": "18801:3:32" }, "nodeType": "YulFunctionCall", - "src": "18605:32:32" + "src": "18801:39:32" }, - "variableNames": [ + "variables": [ { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "18595:6:32" + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "18791:6:32", + "type": "" } ] }, { - "nodeType": "YulAssignment", - "src": "18646:42:32", + "nodeType": "YulVariableDeclaration", + "src": "18849:29:32", "value": { "arguments": [ { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18673:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18684:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18669:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18669:18:32" + "name": "value0", + "nodeType": "YulIdentifier", + "src": "18867:6:32" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "18875:2:32" } ], "functionName": { - "name": "calldataload", + "name": "add", "nodeType": "YulIdentifier", - "src": "18656:12:32" + "src": "18863:3:32" }, "nodeType": "YulFunctionCall", - "src": "18656:32:32" + "src": "18863:15:32" }, - "variableNames": [ + "variables": [ { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "18646:6:32" + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "18853:6:32", + "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "18697:49:32", + "src": "18887:10:32", "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18730:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18741:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18726:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18726:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "18713:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "18713:33:32" + "kind": "number", + "nodeType": "YulLiteral", + "src": "18896:1:32", + "type": "", + "value": "0" }, "variables": [ { - "name": "offset_1", + "name": "i", "nodeType": "YulTypedName", - "src": "18701:8:32", + "src": "18891:1:32", "type": "" } ] @@ -17555,616 +17523,244 @@ { "body": { "nodeType": "YulBlock", - "src": "18775:16:32", + "src": "18955:224:32", "statements": [ { "expression": { "arguments": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18784:1:32", - "type": "", - "value": "0" + "name": "pos", + "nodeType": "YulIdentifier", + "src": "18976:3:32" }, { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18787:1:32", - "type": "", - "value": "0" + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "18989:6:32" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "18997:9:32" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "18985:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "18985:22:32" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19013:2:32", + "type": "", + "value": "63" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "19009:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "19009:7:32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18981:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "18981:36:32" } ], "functionName": { - "name": "revert", + "name": "mstore", "nodeType": "YulIdentifier", - "src": "18777:6:32" + "src": "18969:6:32" }, "nodeType": "YulFunctionCall", - "src": "18777:12:32" + "src": "18969:49:32" }, "nodeType": "YulExpressionStatement", - "src": "18777:12:32" - } - ] - }, - "condition": { - "arguments": [ + "src": "18969:49:32" + }, { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "18761:8:32" + "nodeType": "YulAssignment", + "src": "19031:68:32", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "19083:6:32" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "19077:5:32" + }, + "nodeType": "YulFunctionCall", + "src": "19077:13:32" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "19092:6:32" + } + ], + "functionName": { + "name": "abi_encode_struct_LiquidityProvider", + "nodeType": "YulIdentifier", + "src": "19041:35:32" + }, + "nodeType": "YulFunctionCall", + "src": "19041:58:32" + }, + "variableNames": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "19031:6:32" + } + ] }, { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "18771:2:32" + "nodeType": "YulAssignment", + "src": "19112:25:32", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "19126:6:32" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "19134:2:32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19122:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "19122:15:32" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "19112:6:32" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "19150:19:32", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "19161:3:32" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "19166:2:32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19157:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "19157:12:32" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "19150:3:32" + } + ] } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "18758:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "18758:16:32" + ] }, - "nodeType": "YulIf", - "src": "18755:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18800:34:32", - "value": { + "condition": { "arguments": [ { - "name": "headStart", + "name": "i", "nodeType": "YulIdentifier", - "src": "18814:9:32" + "src": "18917:1:32" }, { - "name": "offset_1", + "name": "length", "nodeType": "YulIdentifier", - "src": "18825:8:32" + "src": "18920:6:32" } ], "functionName": { - "name": "add", + "name": "lt", "nodeType": "YulIdentifier", - "src": "18810:3:32" + "src": "18914:2:32" }, "nodeType": "YulFunctionCall", - "src": "18810:24:32" + "src": "18914:13:32" }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "18804:2:32", - "type": "" - } - ] - }, - { - "body": { + "nodeType": "YulForLoop", + "post": { "nodeType": "YulBlock", - "src": "18882:16:32", + "src": "18928:18:32", "statements": [ { - "expression": { + "nodeType": "YulAssignment", + "src": "18930:14:32", + "value": { "arguments": [ { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18891:1:32", - "type": "", - "value": "0" + "name": "i", + "nodeType": "YulIdentifier", + "src": "18939:1:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18894:1:32", + "src": "18942:1:32", "type": "", - "value": "0" + "value": "1" } ], "functionName": { - "name": "revert", + "name": "add", "nodeType": "YulIdentifier", - "src": "18884:6:32" + "src": "18935:3:32" }, "nodeType": "YulFunctionCall", - "src": "18884:12:32" + "src": "18935:9:32" }, - "nodeType": "YulExpressionStatement", - "src": "18884:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "18861:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18865:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18857:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18857:13:32" - }, + "variableNames": [ { - "name": "dataEnd", + "name": "i", "nodeType": "YulIdentifier", - "src": "18872:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "18853:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18853:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "18846:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "18846:35:32" - }, - "nodeType": "YulIf", - "src": "18843:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18907:26:32", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "18930:2:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "18917:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "18917:16:32" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "18911:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18942:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "19009:2:32" - } - ], - "functionName": { - "name": "array_allocation_size_array_uint256_dyn", - "nodeType": "YulIdentifier", - "src": "18969:39:32" - }, - "nodeType": "YulFunctionCall", - "src": "18969:43:32" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "18953:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "18953:60:32" - }, - "variables": [ - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "18946:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "19022:16:32", - "value": { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "19035:3:32" - }, - "variables": [ - { - "name": "dst_1", - "nodeType": "YulTypedName", - "src": "19026:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "19054:3:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "19059:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19047:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19047:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19047:15:32" - }, - { - "nodeType": "YulAssignment", - "src": "19071:19:32", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "19082:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "19087:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19078:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19078:12:32" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "19071:3:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "19099:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "19121:2:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19129:1:32", - "type": "", - "value": "5" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "19132:2:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "19125:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19125:10:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19117:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19117:19:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "19138:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19113:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19113:28:32" - }, - "variables": [ - { - "name": "srcEnd", - "nodeType": "YulTypedName", - "src": "19103:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19173:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19182:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19185:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "19175:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19175:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19175:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "srcEnd", - "nodeType": "YulIdentifier", - "src": "19156:6:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "19164:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "19153:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "19153:19:32" - }, - "nodeType": "YulIf", - "src": "19150:39:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "19198:22:32", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "19213:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "19217:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19209:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19209:11:32" - }, - "variables": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "19202:3:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19285:86:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "19306:3:32" - }, - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "19324:3:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "19311:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "19311:17:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19299:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19299:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19299:30:32" - }, - { - "nodeType": "YulAssignment", - "src": "19342:19:32", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "19353:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "19358:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19349:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19349:12:32" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "19342:3:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "19240:3:32" - }, - { - "name": "srcEnd", - "nodeType": "YulIdentifier", - "src": "19245:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "19237:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "19237:15:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "19253:23:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "19255:19:32", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "19266:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "19271:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19262:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19262:12:32" - }, - "variableNames": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "19255:3:32" + "src": "18930:1:32" } ] } @@ -18172,212 +17768,42 @@ }, "pre": { "nodeType": "YulBlock", - "src": "19233:3:32", + "src": "18910:3:32", "statements": [] }, - "src": "19229:142:32" + "src": "18906:273:32" }, { "nodeType": "YulAssignment", - "src": "19380:15:32", + "src": "19188:14:32", "value": { - "name": "dst_1", + "name": "tail_2", "nodeType": "YulIdentifier", - "src": "19390:5:32" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "19380:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_bytes_memory_ptrt_bytes32t_uint256t_array$_t_bytes32_$dyn_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "18190:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "18201:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "18213:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "18221:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "18229:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "18237:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "18245:6:32", - "type": "" - } - ], - "src": "18084:1317:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19530:102:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "19540:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19552:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19563:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19548:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19548:18:32" + "src": "19196:6:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19540:4:32" + "src": "19188:4:32" } ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19582:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "19597:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19613:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19618:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "19609:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19609:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19622:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "19605:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19605:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "19593:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19593:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19575:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19575:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19575:51:32" } ] }, - "name": "abi_encode_tuple_t_contract$_Bridge_$3652__to_t_address_payable__fromStack_reversed", + "name": "abi_encode_tuple_t_array$_t_struct$_LiquidityProvider_$8021_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_LiquidityProvider_$8021_memory_ptr_$dyn_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "19499:9:32", + "src": "18527:9:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "19510:6:32", + "src": "18538:6:32", "type": "" } ], @@ -18385,16 +17811,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "19521:4:32", + "src": "18549:4:32", "type": "" } ], - "src": "19406:226:32" + "src": "18337:871:32" }, { "body": { "nodeType": "YulBlock", - "src": "19811:155:32", + "src": "19387:155:32", "statements": [ { "expression": { @@ -18402,12 +17828,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19828:9:32" + "src": "19404:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19839:2:32", + "src": "19415:2:32", "type": "", "value": "32" } @@ -18415,13 +17841,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "19821:6:32" + "src": "19397:6:32" }, "nodeType": "YulFunctionCall", - "src": "19821:21:32" + "src": "19397:21:32" }, "nodeType": "YulExpressionStatement", - "src": "19821:21:32" + "src": "19397:21:32" }, { "expression": { @@ -18431,12 +17857,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19862:9:32" + "src": "19438:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19873:2:32", + "src": "19449:2:32", "type": "", "value": "32" } @@ -18444,15 +17870,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19858:3:32" + "src": "19434:3:32" }, "nodeType": "YulFunctionCall", - "src": "19858:18:32" + "src": "19434:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19878:1:32", + "src": "19454:1:32", "type": "", "value": "6" } @@ -18460,13 +17886,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "19851:6:32" + "src": "19427:6:32" }, "nodeType": "YulFunctionCall", - "src": "19851:29:32" + "src": "19427:29:32" }, "nodeType": "YulExpressionStatement", - "src": "19851:29:32" + "src": "19427:29:32" }, { "expression": { @@ -18476,12 +17902,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19900:9:32" + "src": "19476:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19911:2:32", + "src": "19487:2:32", "type": "", "value": "64" } @@ -18489,16 +17915,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19896:3:32" + "src": "19472:3:32" }, "nodeType": "YulFunctionCall", - "src": "19896:18:32" + "src": "19472:18:32" }, { "hexValue": "4c4243303736", "kind": "string", "nodeType": "YulLiteral", - "src": "19916:8:32", + "src": "19492:8:32", "type": "", "value": "LBC076" } @@ -18506,28 +17932,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "19889:6:32" + "src": "19465:6:32" }, "nodeType": "YulFunctionCall", - "src": "19889:36:32" + "src": "19465:36:32" }, "nodeType": "YulExpressionStatement", - "src": "19889:36:32" + "src": "19465:36:32" }, { "nodeType": "YulAssignment", - "src": "19934:26:32", + "src": "19510:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19946:9:32" + "src": "19522:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19957:2:32", + "src": "19533:2:32", "type": "", "value": "96" } @@ -18535,16 +17961,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19942:3:32" + "src": "19518:3:32" }, "nodeType": "YulFunctionCall", - "src": "19942:18:32" + "src": "19518:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19934:4:32" + "src": "19510:4:32" } ] } @@ -18556,7 +17982,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "19788:9:32", + "src": "19364:9:32", "type": "" } ], @@ -18564,65 +17990,65 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "19802:4:32", + "src": "19378:4:32", "type": "" } ], - "src": "19637:329:32" + "src": "19213:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "20026:325:32", + "src": "19602:325:32", "statements": [ { "nodeType": "YulAssignment", - "src": "20036:22:32", + "src": "19612:22:32", "value": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "20050:1:32", + "src": "19626:1:32", "type": "", "value": "1" }, { "name": "data", "nodeType": "YulIdentifier", - "src": "20053:4:32" + "src": "19629:4:32" } ], "functionName": { "name": "shr", "nodeType": "YulIdentifier", - "src": "20046:3:32" + "src": "19622:3:32" }, "nodeType": "YulFunctionCall", - "src": "20046:12:32" + "src": "19622:12:32" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "20036:6:32" + "src": "19612:6:32" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "20067:38:32", + "src": "19643:38:32", "value": { "arguments": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "20097:4:32" + "src": "19673:4:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20103:1:32", + "src": "19679:1:32", "type": "", "value": "1" } @@ -18630,16 +18056,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "20093:3:32" + "src": "19669:3:32" }, "nodeType": "YulFunctionCall", - "src": "20093:12:32" + "src": "19669:12:32" }, "variables": [ { "name": "outOfPlaceEncoding", "nodeType": "YulTypedName", - "src": "20071:18:32", + "src": "19647:18:32", "type": "" } ] @@ -18647,22 +18073,22 @@ { "body": { "nodeType": "YulBlock", - "src": "20144:31:32", + "src": "19720:31:32", "statements": [ { "nodeType": "YulAssignment", - "src": "20146:27:32", + "src": "19722:27:32", "value": { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "20160:6:32" + "src": "19736:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20168:4:32", + "src": "19744:4:32", "type": "", "value": "0x7f" } @@ -18670,16 +18096,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "20156:3:32" + "src": "19732:3:32" }, "nodeType": "YulFunctionCall", - "src": "20156:17:32" + "src": "19732:17:32" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "20146:6:32" + "src": "19722:6:32" } ] } @@ -18690,24 +18116,24 @@ { "name": "outOfPlaceEncoding", "nodeType": "YulIdentifier", - "src": "20124:18:32" + "src": "19700:18:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "20117:6:32" + "src": "19693:6:32" }, "nodeType": "YulFunctionCall", - "src": "20117:26:32" + "src": "19693:26:32" }, "nodeType": "YulIf", - "src": "20114:61:32" + "src": "19690:61:32" }, { "body": { "nodeType": "YulBlock", - "src": "20234:111:32", + "src": "19810:111:32", "statements": [ { "expression": { @@ -18715,7 +18141,7 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "20255:1:32", + "src": "19831:1:32", "type": "", "value": "0" }, @@ -18724,14 +18150,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "20262:3:32", + "src": "19838:3:32", "type": "", "value": "224" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20267:10:32", + "src": "19843:10:32", "type": "", "value": "0x4e487b71" } @@ -18739,22 +18165,22 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "20258:3:32" + "src": "19834:3:32" }, "nodeType": "YulFunctionCall", - "src": "20258:20:32" + "src": "19834:20:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "20248:6:32" + "src": "19824:6:32" }, "nodeType": "YulFunctionCall", - "src": "20248:31:32" + "src": "19824:31:32" }, "nodeType": "YulExpressionStatement", - "src": "20248:31:32" + "src": "19824:31:32" }, { "expression": { @@ -18762,14 +18188,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "20299:1:32", + "src": "19875:1:32", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20302:4:32", + "src": "19878:4:32", "type": "", "value": "0x22" } @@ -18777,13 +18203,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "20292:6:32" + "src": "19868:6:32" }, "nodeType": "YulFunctionCall", - "src": "20292:15:32" + "src": "19868:15:32" }, "nodeType": "YulExpressionStatement", - "src": "20292:15:32" + "src": "19868:15:32" }, { "expression": { @@ -18791,14 +18217,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "20327:1:32", + "src": "19903:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20330:4:32", + "src": "19906:4:32", "type": "", "value": "0x24" } @@ -18806,13 +18232,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "20320:6:32" + "src": "19896:6:32" }, "nodeType": "YulFunctionCall", - "src": "20320:15:32" + "src": "19896:15:32" }, "nodeType": "YulExpressionStatement", - "src": "20320:15:32" + "src": "19896:15:32" } ] }, @@ -18821,19 +18247,19 @@ { "name": "outOfPlaceEncoding", "nodeType": "YulIdentifier", - "src": "20190:18:32" + "src": "19766:18:32" }, { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "20213:6:32" + "src": "19789:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20221:2:32", + "src": "19797:2:32", "type": "", "value": "32" } @@ -18841,22 +18267,22 @@ "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "20210:2:32" + "src": "19786:2:32" }, "nodeType": "YulFunctionCall", - "src": "20210:14:32" + "src": "19786:14:32" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "20187:2:32" + "src": "19763:2:32" }, "nodeType": "YulFunctionCall", - "src": "20187:38:32" + "src": "19763:38:32" }, "nodeType": "YulIf", - "src": "20184:161:32" + "src": "19760:161:32" } ] }, @@ -18866,7 +18292,7 @@ { "name": "data", "nodeType": "YulTypedName", - "src": "20006:4:32", + "src": "19582:4:32", "type": "" } ], @@ -18874,16 +18300,16 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "20015:6:32", + "src": "19591:6:32", "type": "" } ], - "src": "19971:380:32" + "src": "19547:380:32" }, { "body": { "nodeType": "YulBlock", - "src": "20412:65:32", + "src": "19988:65:32", "statements": [ { "expression": { @@ -18891,43 +18317,43 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "20429:1:32", + "src": "20005:1:32", "type": "", "value": "0" }, { "name": "ptr", "nodeType": "YulIdentifier", - "src": "20432:3:32" + "src": "20008:3:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "20422:6:32" + "src": "19998:6:32" }, "nodeType": "YulFunctionCall", - "src": "20422:14:32" + "src": "19998:14:32" }, "nodeType": "YulExpressionStatement", - "src": "20422:14:32" + "src": "19998:14:32" }, { "nodeType": "YulAssignment", - "src": "20445:26:32", + "src": "20021:26:32", "value": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "20463:1:32", + "src": "20039:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20466:4:32", + "src": "20042:4:32", "type": "", "value": "0x20" } @@ -18935,16 +18361,16 @@ "functionName": { "name": "keccak256", "nodeType": "YulIdentifier", - "src": "20453:9:32" + "src": "20029:9:32" }, "nodeType": "YulFunctionCall", - "src": "20453:18:32" + "src": "20029:18:32" }, "variableNames": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "20445:4:32" + "src": "20021:4:32" } ] } @@ -18956,7 +18382,7 @@ { "name": "ptr", "nodeType": "YulTypedName", - "src": "20395:3:32", + "src": "19971:3:32", "type": "" } ], @@ -18964,29 +18390,29 @@ { "name": "data", "nodeType": "YulTypedName", - "src": "20403:4:32", + "src": "19979:4:32", "type": "" } ], - "src": "20356:121:32" + "src": "19932:121:32" }, { "body": { "nodeType": "YulBlock", - "src": "20563:464:32", + "src": "20139:464:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "20596:425:32", + "src": "20172:425:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "20610:11:32", + "src": "20186:11:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "20620:1:32", + "src": "20196:1:32", "type": "", "value": "0" }, @@ -18994,7 +18420,7 @@ { "name": "_1", "nodeType": "YulTypedName", - "src": "20614:2:32", + "src": "20190:2:32", "type": "" } ] @@ -19005,39 +18431,39 @@ { "name": "_1", "nodeType": "YulIdentifier", - "src": "20641:2:32" + "src": "20217:2:32" }, { "name": "array", "nodeType": "YulIdentifier", - "src": "20645:5:32" + "src": "20221:5:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "20634:6:32" + "src": "20210:6:32" }, "nodeType": "YulFunctionCall", - "src": "20634:17:32" + "src": "20210:17:32" }, "nodeType": "YulExpressionStatement", - "src": "20634:17:32" + "src": "20210:17:32" }, { "nodeType": "YulVariableDeclaration", - "src": "20664:31:32", + "src": "20240:31:32", "value": { "arguments": [ { "name": "_1", "nodeType": "YulIdentifier", - "src": "20686:2:32" + "src": "20262:2:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20690:4:32", + "src": "20266:4:32", "type": "", "value": "0x20" } @@ -19045,36 +18471,36 @@ "functionName": { "name": "keccak256", "nodeType": "YulIdentifier", - "src": "20676:9:32" + "src": "20252:9:32" }, "nodeType": "YulFunctionCall", - "src": "20676:19:32" + "src": "20252:19:32" }, "variables": [ { "name": "data", "nodeType": "YulTypedName", - "src": "20668:4:32", + "src": "20244:4:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "20708:57:32", + "src": "20284:57:32", "value": { "arguments": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "20731:4:32" + "src": "20307:4:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "20741:1:32", + "src": "20317:1:32", "type": "", "value": "5" }, @@ -19083,12 +18509,12 @@ { "name": "startIndex", "nodeType": "YulIdentifier", - "src": "20748:10:32" + "src": "20324:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20760:2:32", + "src": "20336:2:32", "type": "", "value": "31" } @@ -19096,34 +18522,34 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20744:3:32" + "src": "20320:3:32" }, "nodeType": "YulFunctionCall", - "src": "20744:19:32" + "src": "20320:19:32" } ], "functionName": { "name": "shr", "nodeType": "YulIdentifier", - "src": "20737:3:32" + "src": "20313:3:32" }, "nodeType": "YulFunctionCall", - "src": "20737:27:32" + "src": "20313:27:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20727:3:32" + "src": "20303:3:32" }, "nodeType": "YulFunctionCall", - "src": "20727:38:32" + "src": "20303:38:32" }, "variables": [ { "name": "deleteStart", "nodeType": "YulTypedName", - "src": "20712:11:32", + "src": "20288:11:32", "type": "" } ] @@ -19131,21 +18557,21 @@ { "body": { "nodeType": "YulBlock", - "src": "20802:23:32", + "src": "20378:23:32", "statements": [ { "nodeType": "YulAssignment", - "src": "20804:19:32", + "src": "20380:19:32", "value": { "name": "data", "nodeType": "YulIdentifier", - "src": "20819:4:32" + "src": "20395:4:32" }, "variableNames": [ { "name": "deleteStart", "nodeType": "YulIdentifier", - "src": "20804:11:32" + "src": "20380:11:32" } ] } @@ -19156,12 +18582,12 @@ { "name": "startIndex", "nodeType": "YulIdentifier", - "src": "20784:10:32" + "src": "20360:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20796:4:32", + "src": "20372:4:32", "type": "", "value": "0x20" } @@ -19169,30 +18595,30 @@ "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "20781:2:32" + "src": "20357:2:32" }, "nodeType": "YulFunctionCall", - "src": "20781:20:32" + "src": "20357:20:32" }, "nodeType": "YulIf", - "src": "20778:47:32" + "src": "20354:47:32" }, { "nodeType": "YulVariableDeclaration", - "src": "20838:41:32", + "src": "20414:41:32", "value": { "arguments": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "20852:4:32" + "src": "20428:4:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "20862:1:32", + "src": "20438:1:32", "type": "", "value": "5" }, @@ -19201,12 +18627,12 @@ { "name": "len", "nodeType": "YulIdentifier", - "src": "20869:3:32" + "src": "20445:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20874:2:32", + "src": "20450:2:32", "type": "", "value": "31" } @@ -19214,51 +18640,51 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20865:3:32" + "src": "20441:3:32" }, "nodeType": "YulFunctionCall", - "src": "20865:12:32" + "src": "20441:12:32" } ], "functionName": { "name": "shr", "nodeType": "YulIdentifier", - "src": "20858:3:32" + "src": "20434:3:32" }, "nodeType": "YulFunctionCall", - "src": "20858:20:32" + "src": "20434:20:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20848:3:32" + "src": "20424:3:32" }, "nodeType": "YulFunctionCall", - "src": "20848:31:32" + "src": "20424:31:32" }, "variables": [ { "name": "_2", "nodeType": "YulTypedName", - "src": "20842:2:32", + "src": "20418:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "20892:24:32", + "src": "20468:24:32", "value": { "name": "deleteStart", "nodeType": "YulIdentifier", - "src": "20905:11:32" + "src": "20481:11:32" }, "variables": [ { "name": "start", "nodeType": "YulTypedName", - "src": "20896:5:32", + "src": "20472:5:32", "type": "" } ] @@ -19266,7 +18692,7 @@ { "body": { "nodeType": "YulBlock", - "src": "20990:21:32", + "src": "20566:21:32", "statements": [ { "expression": { @@ -19274,24 +18700,24 @@ { "name": "start", "nodeType": "YulIdentifier", - "src": "20999:5:32" + "src": "20575:5:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "21006:2:32" + "src": "20582:2:32" } ], "functionName": { "name": "sstore", "nodeType": "YulIdentifier", - "src": "20992:6:32" + "src": "20568:6:32" }, "nodeType": "YulFunctionCall", - "src": "20992:17:32" + "src": "20568:17:32" }, "nodeType": "YulExpressionStatement", - "src": "20992:17:32" + "src": "20568:17:32" } ] }, @@ -19300,41 +18726,41 @@ { "name": "start", "nodeType": "YulIdentifier", - "src": "20940:5:32" + "src": "20516:5:32" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "20947:2:32" + "src": "20523:2:32" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "20937:2:32" + "src": "20513:2:32" }, "nodeType": "YulFunctionCall", - "src": "20937:13:32" + "src": "20513:13:32" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "20951:26:32", + "src": "20527:26:32", "statements": [ { "nodeType": "YulAssignment", - "src": "20953:22:32", + "src": "20529:22:32", "value": { "arguments": [ { "name": "start", "nodeType": "YulIdentifier", - "src": "20966:5:32" + "src": "20542:5:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20973:1:32", + "src": "20549:1:32", "type": "", "value": "1" } @@ -19342,16 +18768,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20962:3:32" + "src": "20538:3:32" }, "nodeType": "YulFunctionCall", - "src": "20962:13:32" + "src": "20538:13:32" }, "variableNames": [ { "name": "start", "nodeType": "YulIdentifier", - "src": "20953:5:32" + "src": "20529:5:32" } ] } @@ -19359,10 +18785,10 @@ }, "pre": { "nodeType": "YulBlock", - "src": "20933:3:32", + "src": "20509:3:32", "statements": [] }, - "src": "20929:82:32" + "src": "20505:82:32" } ] }, @@ -19371,12 +18797,12 @@ { "name": "len", "nodeType": "YulIdentifier", - "src": "20579:3:32" + "src": "20155:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20584:2:32", + "src": "20160:2:32", "type": "", "value": "31" } @@ -19384,13 +18810,13 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "20576:2:32" + "src": "20152:2:32" }, "nodeType": "YulFunctionCall", - "src": "20576:11:32" + "src": "20152:11:32" }, "nodeType": "YulIf", - "src": "20573:448:32" + "src": "20149:448:32" } ] }, @@ -19400,32 +18826,32 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "20535:5:32", + "src": "20111:5:32", "type": "" }, { "name": "len", "nodeType": "YulTypedName", - "src": "20542:3:32", + "src": "20118:3:32", "type": "" }, { "name": "startIndex", "nodeType": "YulTypedName", - "src": "20547:10:32", + "src": "20123:10:32", "type": "" } ], - "src": "20482:545:32" + "src": "20058:545:32" }, { "body": { "nodeType": "YulBlock", - "src": "21117:81:32", + "src": "20693:81:32", "statements": [ { "nodeType": "YulAssignment", - "src": "21127:65:32", + "src": "20703:65:32", "value": { "arguments": [ { @@ -19433,7 +18859,7 @@ { "name": "data", "nodeType": "YulIdentifier", - "src": "21142:4:32" + "src": "20718:4:32" }, { "arguments": [ @@ -19444,30 +18870,30 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "21160:1:32", + "src": "20736:1:32", "type": "", "value": "3" }, { "name": "len", "nodeType": "YulIdentifier", - "src": "21163:3:32" + "src": "20739:3:32" } ], "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "21156:3:32" + "src": "20732:3:32" }, "nodeType": "YulFunctionCall", - "src": "21156:11:32" + "src": "20732:11:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "21173:1:32", + "src": "20749:1:32", "type": "", "value": "0" } @@ -19475,75 +18901,75 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "21169:3:32" + "src": "20745:3:32" }, "nodeType": "YulFunctionCall", - "src": "21169:6:32" + "src": "20745:6:32" } ], "functionName": { "name": "shr", "nodeType": "YulIdentifier", - "src": "21152:3:32" + "src": "20728:3:32" }, "nodeType": "YulFunctionCall", - "src": "21152:24:32" + "src": "20728:24:32" } ], "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "21148:3:32" + "src": "20724:3:32" }, "nodeType": "YulFunctionCall", - "src": "21148:29:32" + "src": "20724:29:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "21138:3:32" + "src": "20714:3:32" }, "nodeType": "YulFunctionCall", - "src": "21138:40:32" + "src": "20714:40:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "21184:1:32", + "src": "20760:1:32", "type": "", "value": "1" }, { "name": "len", "nodeType": "YulIdentifier", - "src": "21187:3:32" + "src": "20763:3:32" } ], "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "21180:3:32" + "src": "20756:3:32" }, "nodeType": "YulFunctionCall", - "src": "21180:11:32" + "src": "20756:11:32" } ], "functionName": { "name": "or", "nodeType": "YulIdentifier", - "src": "21135:2:32" + "src": "20711:2:32" }, "nodeType": "YulFunctionCall", - "src": "21135:57:32" + "src": "20711:57:32" }, "variableNames": [ { "name": "used", "nodeType": "YulIdentifier", - "src": "21127:4:32" + "src": "20703:4:32" } ] } @@ -19555,13 +18981,13 @@ { "name": "data", "nodeType": "YulTypedName", - "src": "21094:4:32", + "src": "20670:4:32", "type": "" }, { "name": "len", "nodeType": "YulTypedName", - "src": "21100:3:32", + "src": "20676:3:32", "type": "" } ], @@ -19569,41 +18995,41 @@ { "name": "used", "nodeType": "YulTypedName", - "src": "21108:4:32", + "src": "20684:4:32", "type": "" } ], - "src": "21032:166:32" + "src": "20608:166:32" }, { "body": { "nodeType": "YulBlock", - "src": "21299:1256:32", + "src": "20875:1256:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "21309:24:32", + "src": "20885:24:32", "value": { "arguments": [ { "name": "src", "nodeType": "YulIdentifier", - "src": "21329:3:32" + "src": "20905:3:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "21323:5:32" + "src": "20899:5:32" }, "nodeType": "YulFunctionCall", - "src": "21323:10:32" + "src": "20899:10:32" }, "variables": [ { "name": "newLen", "nodeType": "YulTypedName", - "src": "21313:6:32", + "src": "20889:6:32", "type": "" } ] @@ -19611,7 +19037,7 @@ { "body": { "nodeType": "YulBlock", - "src": "21376:22:32", + "src": "20952:22:32", "statements": [ { "expression": { @@ -19619,13 +19045,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "21378:16:32" + "src": "20954:16:32" }, "nodeType": "YulFunctionCall", - "src": "21378:18:32" + "src": "20954:18:32" }, "nodeType": "YulExpressionStatement", - "src": "21378:18:32" + "src": "20954:18:32" } ] }, @@ -19634,7 +19060,7 @@ { "name": "newLen", "nodeType": "YulIdentifier", - "src": "21348:6:32" + "src": "20924:6:32" }, { "arguments": [ @@ -19643,14 +19069,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "21364:2:32", + "src": "20940:2:32", "type": "", "value": "64" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21368:1:32", + "src": "20944:1:32", "type": "", "value": "1" } @@ -19658,15 +19084,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "21360:3:32" + "src": "20936:3:32" }, "nodeType": "YulFunctionCall", - "src": "21360:10:32" + "src": "20936:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21372:1:32", + "src": "20948:1:32", "type": "", "value": "1" } @@ -19674,22 +19100,22 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "21356:3:32" + "src": "20932:3:32" }, "nodeType": "YulFunctionCall", - "src": "21356:18:32" + "src": "20932:18:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "21345:2:32" + "src": "20921:2:32" }, "nodeType": "YulFunctionCall", - "src": "21345:30:32" + "src": "20921:30:32" }, "nodeType": "YulIf", - "src": "21342:56:32" + "src": "20918:56:32" }, { "expression": { @@ -19697,7 +19123,7 @@ { "name": "slot", "nodeType": "YulIdentifier", - "src": "21451:4:32" + "src": "21027:4:32" }, { "arguments": [ @@ -19706,50 +19132,50 @@ { "name": "slot", "nodeType": "YulIdentifier", - "src": "21489:4:32" + "src": "21065:4:32" } ], "functionName": { "name": "sload", "nodeType": "YulIdentifier", - "src": "21483:5:32" + "src": "21059:5:32" }, "nodeType": "YulFunctionCall", - "src": "21483:11:32" + "src": "21059:11:32" } ], "functionName": { "name": "extract_byte_array_length", "nodeType": "YulIdentifier", - "src": "21457:25:32" + "src": "21033:25:32" }, "nodeType": "YulFunctionCall", - "src": "21457:38:32" + "src": "21033:38:32" }, { "name": "newLen", "nodeType": "YulIdentifier", - "src": "21497:6:32" + "src": "21073:6:32" } ], "functionName": { "name": "clean_up_bytearray_end_slots_string_storage", "nodeType": "YulIdentifier", - "src": "21407:43:32" + "src": "20983:43:32" }, "nodeType": "YulFunctionCall", - "src": "21407:97:32" + "src": "20983:97:32" }, "nodeType": "YulExpressionStatement", - "src": "21407:97:32" + "src": "20983:97:32" }, { "nodeType": "YulVariableDeclaration", - "src": "21513:18:32", + "src": "21089:18:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "21530:1:32", + "src": "21106:1:32", "type": "", "value": "0" }, @@ -19757,18 +19183,18 @@ { "name": "srcOffset", "nodeType": "YulTypedName", - "src": "21517:9:32", + "src": "21093:9:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "21540:23:32", + "src": "21116:23:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "21559:4:32", + "src": "21135:4:32", "type": "", "value": "0x20" }, @@ -19776,24 +19202,24 @@ { "name": "srcOffset_1", "nodeType": "YulTypedName", - "src": "21544:11:32", + "src": "21120:11:32", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "21572:24:32", + "src": "21148:24:32", "value": { "name": "srcOffset_1", "nodeType": "YulIdentifier", - "src": "21585:11:32" + "src": "21161:11:32" }, "variableNames": [ { "name": "srcOffset", "nodeType": "YulIdentifier", - "src": "21572:9:32" + "src": "21148:9:32" } ] }, @@ -19802,24 +19228,24 @@ { "body": { "nodeType": "YulBlock", - "src": "21642:656:32", + "src": "21218:656:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "21656:35:32", + "src": "21232:35:32", "value": { "arguments": [ { "name": "newLen", "nodeType": "YulIdentifier", - "src": "21675:6:32" + "src": "21251:6:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "21687:2:32", + "src": "21263:2:32", "type": "", "value": "31" } @@ -19827,64 +19253,64 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "21683:3:32" + "src": "21259:3:32" }, "nodeType": "YulFunctionCall", - "src": "21683:7:32" + "src": "21259:7:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "21671:3:32" + "src": "21247:3:32" }, "nodeType": "YulFunctionCall", - "src": "21671:20:32" + "src": "21247:20:32" }, "variables": [ { "name": "loopEnd", "nodeType": "YulTypedName", - "src": "21660:7:32", + "src": "21236:7:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "21704:49:32", + "src": "21280:49:32", "value": { "arguments": [ { "name": "slot", "nodeType": "YulIdentifier", - "src": "21748:4:32" + "src": "21324:4:32" } ], "functionName": { "name": "array_dataslot_string_storage", "nodeType": "YulIdentifier", - "src": "21718:29:32" + "src": "21294:29:32" }, "nodeType": "YulFunctionCall", - "src": "21718:35:32" + "src": "21294:35:32" }, "variables": [ { "name": "dstPtr", "nodeType": "YulTypedName", - "src": "21708:6:32", + "src": "21284:6:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "21766:10:32", + "src": "21342:10:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "21775:1:32", + "src": "21351:1:32", "type": "", "value": "0" }, @@ -19892,7 +19318,7 @@ { "name": "i", "nodeType": "YulTypedName", - "src": "21770:1:32", + "src": "21346:1:32", "type": "" } ] @@ -19900,7 +19326,7 @@ { "body": { "nodeType": "YulBlock", - "src": "21853:172:32", + "src": "21429:172:32", "statements": [ { "expression": { @@ -19908,7 +19334,7 @@ { "name": "dstPtr", "nodeType": "YulIdentifier", - "src": "21878:6:32" + "src": "21454:6:32" }, { "arguments": [ @@ -19917,57 +19343,57 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "21896:3:32" + "src": "21472:3:32" }, { "name": "srcOffset", "nodeType": "YulIdentifier", - "src": "21901:9:32" + "src": "21477:9:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21892:3:32" + "src": "21468:3:32" }, "nodeType": "YulFunctionCall", - "src": "21892:19:32" + "src": "21468:19:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "21886:5:32" + "src": "21462:5:32" }, "nodeType": "YulFunctionCall", - "src": "21886:26:32" + "src": "21462:26:32" } ], "functionName": { "name": "sstore", "nodeType": "YulIdentifier", - "src": "21871:6:32" + "src": "21447:6:32" }, "nodeType": "YulFunctionCall", - "src": "21871:42:32" + "src": "21447:42:32" }, "nodeType": "YulExpressionStatement", - "src": "21871:42:32" + "src": "21447:42:32" }, { "nodeType": "YulAssignment", - "src": "21930:24:32", + "src": "21506:24:32", "value": { "arguments": [ { "name": "dstPtr", "nodeType": "YulIdentifier", - "src": "21944:6:32" + "src": "21520:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21952:1:32", + "src": "21528:1:32", "type": "", "value": "1" } @@ -19975,48 +19401,48 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21940:3:32" + "src": "21516:3:32" }, "nodeType": "YulFunctionCall", - "src": "21940:14:32" + "src": "21516:14:32" }, "variableNames": [ { "name": "dstPtr", "nodeType": "YulIdentifier", - "src": "21930:6:32" + "src": "21506:6:32" } ] }, { "nodeType": "YulAssignment", - "src": "21971:40:32", + "src": "21547:40:32", "value": { "arguments": [ { "name": "srcOffset", "nodeType": "YulIdentifier", - "src": "21988:9:32" + "src": "21564:9:32" }, { "name": "srcOffset_1", "nodeType": "YulIdentifier", - "src": "21999:11:32" + "src": "21575:11:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21984:3:32" + "src": "21560:3:32" }, "nodeType": "YulFunctionCall", - "src": "21984:27:32" + "src": "21560:27:32" }, "variableNames": [ { "name": "srcOffset", "nodeType": "YulIdentifier", - "src": "21971:9:32" + "src": "21547:9:32" } ] } @@ -20027,56 +19453,56 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "21800:1:32" + "src": "21376:1:32" }, { "name": "loopEnd", "nodeType": "YulIdentifier", - "src": "21803:7:32" + "src": "21379:7:32" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "21797:2:32" + "src": "21373:2:32" }, "nodeType": "YulFunctionCall", - "src": "21797:14:32" + "src": "21373:14:32" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "21812:28:32", + "src": "21388:28:32", "statements": [ { "nodeType": "YulAssignment", - "src": "21814:24:32", + "src": "21390:24:32", "value": { "arguments": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "21823:1:32" + "src": "21399:1:32" }, { "name": "srcOffset_1", "nodeType": "YulIdentifier", - "src": "21826:11:32" + "src": "21402:11:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21819:3:32" + "src": "21395:3:32" }, "nodeType": "YulFunctionCall", - "src": "21819:19:32" + "src": "21395:19:32" }, "variableNames": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "21814:1:32" + "src": "21390:1:32" } ] } @@ -20084,19 +19510,19 @@ }, "pre": { "nodeType": "YulBlock", - "src": "21793:3:32", + "src": "21369:3:32", "statements": [] }, - "src": "21789:236:32" + "src": "21365:236:32" }, { "body": { "nodeType": "YulBlock", - "src": "22073:166:32", + "src": "21649:166:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "22091:43:32", + "src": "21667:43:32", "value": { "arguments": [ { @@ -20104,36 +19530,36 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "22118:3:32" + "src": "21694:3:32" }, { "name": "srcOffset", "nodeType": "YulIdentifier", - "src": "22123:9:32" + "src": "21699:9:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22114:3:32" + "src": "21690:3:32" }, "nodeType": "YulFunctionCall", - "src": "22114:19:32" + "src": "21690:19:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "22108:5:32" + "src": "21684:5:32" }, "nodeType": "YulFunctionCall", - "src": "22108:26:32" + "src": "21684:26:32" }, "variables": [ { "name": "lastValue", "nodeType": "YulTypedName", - "src": "22095:9:32", + "src": "21671:9:32", "type": "" } ] @@ -20144,14 +19570,14 @@ { "name": "dstPtr", "nodeType": "YulIdentifier", - "src": "22158:6:32" + "src": "21734:6:32" }, { "arguments": [ { "name": "lastValue", "nodeType": "YulIdentifier", - "src": "22170:9:32" + "src": "21746:9:32" }, { "arguments": [ @@ -20164,28 +19590,28 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "22197:1:32", + "src": "21773:1:32", "type": "", "value": "3" }, { "name": "newLen", "nodeType": "YulIdentifier", - "src": "22200:6:32" + "src": "21776:6:32" } ], "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "22193:3:32" + "src": "21769:3:32" }, "nodeType": "YulFunctionCall", - "src": "22193:14:32" + "src": "21769:14:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22209:3:32", + "src": "21785:3:32", "type": "", "value": "248" } @@ -20193,17 +19619,17 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "22189:3:32" + "src": "21765:3:32" }, "nodeType": "YulFunctionCall", - "src": "22189:24:32" + "src": "21765:24:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "22219:1:32", + "src": "21795:1:32", "type": "", "value": "0" } @@ -20211,49 +19637,49 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "22215:3:32" + "src": "21791:3:32" }, "nodeType": "YulFunctionCall", - "src": "22215:6:32" + "src": "21791:6:32" } ], "functionName": { "name": "shr", "nodeType": "YulIdentifier", - "src": "22185:3:32" + "src": "21761:3:32" }, "nodeType": "YulFunctionCall", - "src": "22185:37:32" + "src": "21761:37:32" } ], "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "22181:3:32" + "src": "21757:3:32" }, "nodeType": "YulFunctionCall", - "src": "22181:42:32" + "src": "21757:42:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "22166:3:32" + "src": "21742:3:32" }, "nodeType": "YulFunctionCall", - "src": "22166:58:32" + "src": "21742:58:32" } ], "functionName": { "name": "sstore", "nodeType": "YulIdentifier", - "src": "22151:6:32" + "src": "21727:6:32" }, "nodeType": "YulFunctionCall", - "src": "22151:74:32" + "src": "21727:74:32" }, "nodeType": "YulExpressionStatement", - "src": "22151:74:32" + "src": "21727:74:32" } ] }, @@ -20262,24 +19688,24 @@ { "name": "loopEnd", "nodeType": "YulIdentifier", - "src": "22044:7:32" + "src": "21620:7:32" }, { "name": "newLen", "nodeType": "YulIdentifier", - "src": "22053:6:32" + "src": "21629:6:32" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "22041:2:32" + "src": "21617:2:32" }, "nodeType": "YulFunctionCall", - "src": "22041:19:32" + "src": "21617:19:32" }, "nodeType": "YulIf", - "src": "22038:201:32" + "src": "21614:201:32" }, { "expression": { @@ -20287,7 +19713,7 @@ { "name": "slot", "nodeType": "YulIdentifier", - "src": "22259:4:32" + "src": "21835:4:32" }, { "arguments": [ @@ -20296,28 +19722,28 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "22273:1:32", + "src": "21849:1:32", "type": "", "value": "1" }, { "name": "newLen", "nodeType": "YulIdentifier", - "src": "22276:6:32" + "src": "21852:6:32" } ], "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "22269:3:32" + "src": "21845:3:32" }, "nodeType": "YulFunctionCall", - "src": "22269:14:32" + "src": "21845:14:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22285:1:32", + "src": "21861:1:32", "type": "", "value": "1" } @@ -20325,31 +19751,31 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22265:3:32" + "src": "21841:3:32" }, "nodeType": "YulFunctionCall", - "src": "22265:22:32" + "src": "21841:22:32" } ], "functionName": { "name": "sstore", "nodeType": "YulIdentifier", - "src": "22252:6:32" + "src": "21828:6:32" }, "nodeType": "YulFunctionCall", - "src": "22252:36:32" + "src": "21828:36:32" }, "nodeType": "YulExpressionStatement", - "src": "22252:36:32" + "src": "21828:36:32" } ] }, "nodeType": "YulCase", - "src": "21635:663:32", + "src": "21211:663:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "21640:1:32", + "src": "21216:1:32", "type": "", "value": "1" } @@ -20357,15 +19783,15 @@ { "body": { "nodeType": "YulBlock", - "src": "22315:234:32", + "src": "21891:234:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "22329:14:32", + "src": "21905:14:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "22342:1:32", + "src": "21918:1:32", "type": "", "value": "0" }, @@ -20373,7 +19799,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "22333:5:32", + "src": "21909:5:32", "type": "" } ] @@ -20381,11 +19807,11 @@ { "body": { "nodeType": "YulBlock", - "src": "22378:67:32", + "src": "21954:67:32", "statements": [ { "nodeType": "YulAssignment", - "src": "22396:35:32", + "src": "21972:35:32", "value": { "arguments": [ { @@ -20393,36 +19819,36 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "22415:3:32" + "src": "21991:3:32" }, { "name": "srcOffset", "nodeType": "YulIdentifier", - "src": "22420:9:32" + "src": "21996:9:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22411:3:32" + "src": "21987:3:32" }, "nodeType": "YulFunctionCall", - "src": "22411:19:32" + "src": "21987:19:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "22405:5:32" + "src": "21981:5:32" }, "nodeType": "YulFunctionCall", - "src": "22405:26:32" + "src": "21981:26:32" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "22396:5:32" + "src": "21972:5:32" } ] } @@ -20431,10 +19857,10 @@ "condition": { "name": "newLen", "nodeType": "YulIdentifier", - "src": "22359:6:32" + "src": "21935:6:32" }, "nodeType": "YulIf", - "src": "22356:89:32" + "src": "21932:89:32" }, { "expression": { @@ -20442,45 +19868,45 @@ { "name": "slot", "nodeType": "YulIdentifier", - "src": "22465:4:32" + "src": "22041:4:32" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "22524:5:32" + "src": "22100:5:32" }, { "name": "newLen", "nodeType": "YulIdentifier", - "src": "22531:6:32" + "src": "22107:6:32" } ], "functionName": { "name": "extract_used_part_and_set_length_of_short_byte_array", "nodeType": "YulIdentifier", - "src": "22471:52:32" + "src": "22047:52:32" }, "nodeType": "YulFunctionCall", - "src": "22471:67:32" + "src": "22047:67:32" } ], "functionName": { "name": "sstore", "nodeType": "YulIdentifier", - "src": "22458:6:32" + "src": "22034:6:32" }, "nodeType": "YulFunctionCall", - "src": "22458:81:32" + "src": "22034:81:32" }, "nodeType": "YulExpressionStatement", - "src": "22458:81:32" + "src": "22034:81:32" } ] }, "nodeType": "YulCase", - "src": "22307:242:32", + "src": "21883:242:32", "value": "default" } ], @@ -20489,12 +19915,12 @@ { "name": "newLen", "nodeType": "YulIdentifier", - "src": "21615:6:32" + "src": "21191:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21623:2:32", + "src": "21199:2:32", "type": "", "value": "31" } @@ -20502,13 +19928,13 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "21612:2:32" + "src": "21188:2:32" }, "nodeType": "YulFunctionCall", - "src": "21612:14:32" + "src": "21188:14:32" }, "nodeType": "YulSwitch", - "src": "21605:944:32" + "src": "21181:944:32" } ] }, @@ -20518,75 +19944,75 @@ { "name": "slot", "nodeType": "YulTypedName", - "src": "21284:4:32", + "src": "20860:4:32", "type": "" }, { "name": "src", "nodeType": "YulTypedName", - "src": "21290:3:32", + "src": "20866:3:32", "type": "" } ], - "src": "21203:1352:32" + "src": "20779:1352:32" }, { "body": { "nodeType": "YulBlock", - "src": "22618:714:32", + "src": "22194:714:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "22628:29:32", + "src": "22204:29:32", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "22651:5:32" + "src": "22227:5:32" } ], "functionName": { "name": "sload", "nodeType": "YulIdentifier", - "src": "22645:5:32" + "src": "22221:5:32" }, "nodeType": "YulFunctionCall", - "src": "22645:12:32" + "src": "22221:12:32" }, "variables": [ { "name": "slotValue", "nodeType": "YulTypedName", - "src": "22632:9:32", + "src": "22208:9:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "22666:50:32", + "src": "22242:50:32", "value": { "arguments": [ { "name": "slotValue", "nodeType": "YulIdentifier", - "src": "22706:9:32" + "src": "22282:9:32" } ], "functionName": { "name": "extract_byte_array_length", "nodeType": "YulIdentifier", - "src": "22680:25:32" + "src": "22256:25:32" }, "nodeType": "YulFunctionCall", - "src": "22680:36:32" + "src": "22256:36:32" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "22670:6:32", + "src": "22246:6:32", "type": "" } ] @@ -20597,32 +20023,32 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22732:3:32" + "src": "22308:3:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "22737:6:32" + "src": "22313:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "22725:6:32" + "src": "22301:6:32" }, "nodeType": "YulFunctionCall", - "src": "22725:19:32" + "src": "22301:19:32" }, "nodeType": "YulExpressionStatement", - "src": "22725:19:32" + "src": "22301:19:32" }, { "nodeType": "YulVariableDeclaration", - "src": "22753:14:32", + "src": "22329:14:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "22763:4:32", + "src": "22339:4:32", "type": "", "value": "0x20" }, @@ -20630,18 +20056,18 @@ { "name": "_1", "nodeType": "YulTypedName", - "src": "22757:2:32", + "src": "22333:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "22776:11:32", + "src": "22352:11:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "22786:1:32", + "src": "22362:1:32", "type": "", "value": "1" }, @@ -20649,7 +20075,7 @@ { "name": "_2", "nodeType": "YulTypedName", - "src": "22780:2:32", + "src": "22356:2:32", "type": "" } ] @@ -20659,7 +20085,7 @@ { "body": { "nodeType": "YulBlock", - "src": "22837:139:32", + "src": "22413:139:32", "statements": [ { "expression": { @@ -20669,35 +20095,35 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22862:3:32" + "src": "22438:3:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "22867:2:32" + "src": "22443:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22858:3:32" + "src": "22434:3:32" }, "nodeType": "YulFunctionCall", - "src": "22858:12:32" + "src": "22434:12:32" }, { "arguments": [ { "name": "slotValue", "nodeType": "YulIdentifier", - "src": "22876:9:32" + "src": "22452:9:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "22891:3:32", + "src": "22467:3:32", "type": "", "value": "255" } @@ -20705,35 +20131,35 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "22887:3:32" + "src": "22463:3:32" }, "nodeType": "YulFunctionCall", - "src": "22887:8:32" + "src": "22463:8:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "22872:3:32" + "src": "22448:3:32" }, "nodeType": "YulFunctionCall", - "src": "22872:24:32" + "src": "22448:24:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "22851:6:32" + "src": "22427:6:32" }, "nodeType": "YulFunctionCall", - "src": "22851:46:32" + "src": "22427:46:32" }, "nodeType": "YulExpressionStatement", - "src": "22851:46:32" + "src": "22427:46:32" }, { "nodeType": "YulAssignment", - "src": "22910:56:32", + "src": "22486:56:32", "value": { "arguments": [ { @@ -20741,14 +20167,14 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22925:3:32" + "src": "22501:3:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "22934:1:32", + "src": "22510:1:32", "type": "", "value": "5" }, @@ -20759,74 +20185,74 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "22951:6:32" + "src": "22527:6:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "22944:6:32" + "src": "22520:6:32" }, "nodeType": "YulFunctionCall", - "src": "22944:14:32" + "src": "22520:14:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "22937:6:32" + "src": "22513:6:32" }, "nodeType": "YulFunctionCall", - "src": "22937:22:32" + "src": "22513:22:32" } ], "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "22930:3:32" + "src": "22506:3:32" }, "nodeType": "YulFunctionCall", - "src": "22930:30:32" + "src": "22506:30:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22921:3:32" + "src": "22497:3:32" }, "nodeType": "YulFunctionCall", - "src": "22921:40:32" + "src": "22497:40:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "22963:2:32" + "src": "22539:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22917:3:32" + "src": "22493:3:32" }, "nodeType": "YulFunctionCall", - "src": "22917:49:32" + "src": "22493:49:32" }, "variableNames": [ { "name": "ret", "nodeType": "YulIdentifier", - "src": "22910:3:32" + "src": "22486:3:32" } ] } ] }, "nodeType": "YulCase", - "src": "22830:146:32", + "src": "22406:146:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "22835:1:32", + "src": "22411:1:32", "type": "", "value": "0" } @@ -20834,7 +20260,7 @@ { "body": { "nodeType": "YulBlock", - "src": "22992:334:32", + "src": "22568:334:32", "statements": [ { "expression": { @@ -20842,69 +20268,69 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "23013:1:32", + "src": "22589:1:32", "type": "", "value": "0" }, { "name": "value", "nodeType": "YulIdentifier", - "src": "23016:5:32" + "src": "22592:5:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23006:6:32" + "src": "22582:6:32" }, "nodeType": "YulFunctionCall", - "src": "23006:16:32" + "src": "22582:16:32" }, "nodeType": "YulExpressionStatement", - "src": "23006:16:32" + "src": "22582:16:32" }, { "nodeType": "YulVariableDeclaration", - "src": "23035:31:32", + "src": "22611:31:32", "value": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "23060:1:32", + "src": "22636:1:32", "type": "", "value": "0" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "23063:2:32" + "src": "22639:2:32" } ], "functionName": { "name": "keccak256", "nodeType": "YulIdentifier", - "src": "23050:9:32" + "src": "22626:9:32" }, "nodeType": "YulFunctionCall", - "src": "23050:16:32" + "src": "22626:16:32" }, "variables": [ { "name": "dataPos", "nodeType": "YulTypedName", - "src": "23039:7:32", + "src": "22615:7:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "23079:10:32", + "src": "22655:10:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "23088:1:32", + "src": "22664:1:32", "type": "", "value": "0" }, @@ -20912,7 +20338,7 @@ { "name": "i", "nodeType": "YulTypedName", - "src": "23083:1:32", + "src": "22659:1:32", "type": "" } ] @@ -20920,7 +20346,7 @@ { "body": { "nodeType": "YulBlock", - "src": "23156:120:32", + "src": "22732:120:32", "statements": [ { "expression": { @@ -20932,93 +20358,93 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "23189:3:32" + "src": "22765:3:32" }, { "name": "i", "nodeType": "YulIdentifier", - "src": "23194:1:32" + "src": "22770:1:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23185:3:32" + "src": "22761:3:32" }, "nodeType": "YulFunctionCall", - "src": "23185:11:32" + "src": "22761:11:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "23198:2:32" + "src": "22774:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23181:3:32" + "src": "22757:3:32" }, "nodeType": "YulFunctionCall", - "src": "23181:20:32" + "src": "22757:20:32" }, { "arguments": [ { "name": "dataPos", "nodeType": "YulIdentifier", - "src": "23209:7:32" + "src": "22785:7:32" } ], "functionName": { "name": "sload", "nodeType": "YulIdentifier", - "src": "23203:5:32" + "src": "22779:5:32" }, "nodeType": "YulFunctionCall", - "src": "23203:14:32" + "src": "22779:14:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23174:6:32" + "src": "22750:6:32" }, "nodeType": "YulFunctionCall", - "src": "23174:44:32" + "src": "22750:44:32" }, "nodeType": "YulExpressionStatement", - "src": "23174:44:32" + "src": "22750:44:32" }, { "nodeType": "YulAssignment", - "src": "23235:27:32", + "src": "22811:27:32", "value": { "arguments": [ { "name": "dataPos", "nodeType": "YulIdentifier", - "src": "23250:7:32" + "src": "22826:7:32" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "23259:2:32" + "src": "22835:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23246:3:32" + "src": "22822:3:32" }, "nodeType": "YulFunctionCall", - "src": "23246:16:32" + "src": "22822:16:32" }, "variableNames": [ { "name": "dataPos", "nodeType": "YulIdentifier", - "src": "23235:7:32" + "src": "22811:7:32" } ] } @@ -21029,56 +20455,56 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "23113:1:32" + "src": "22689:1:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "23116:6:32" + "src": "22692:6:32" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "23110:2:32" + "src": "22686:2:32" }, "nodeType": "YulFunctionCall", - "src": "23110:13:32" + "src": "22686:13:32" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "23124:19:32", + "src": "22700:19:32", "statements": [ { "nodeType": "YulAssignment", - "src": "23126:15:32", + "src": "22702:15:32", "value": { "arguments": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "23135:1:32" + "src": "22711:1:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "23138:2:32" + "src": "22714:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23131:3:32" + "src": "22707:3:32" }, "nodeType": "YulFunctionCall", - "src": "23131:10:32" + "src": "22707:10:32" }, "variableNames": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "23126:1:32" + "src": "22702:1:32" } ] } @@ -21086,14 +20512,14 @@ }, "pre": { "nodeType": "YulBlock", - "src": "23106:3:32", + "src": "22682:3:32", "statements": [] }, - "src": "23102:174:32" + "src": "22678:174:32" }, { "nodeType": "YulAssignment", - "src": "23289:27:32", + "src": "22865:27:32", "value": { "arguments": [ { @@ -21101,52 +20527,52 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "23304:3:32" + "src": "22880:3:32" }, { "name": "i", "nodeType": "YulIdentifier", - "src": "23309:1:32" + "src": "22885:1:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23300:3:32" + "src": "22876:3:32" }, "nodeType": "YulFunctionCall", - "src": "23300:11:32" + "src": "22876:11:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "23313:2:32" + "src": "22889:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23296:3:32" + "src": "22872:3:32" }, "nodeType": "YulFunctionCall", - "src": "23296:20:32" + "src": "22872:20:32" }, "variableNames": [ { "name": "ret", "nodeType": "YulIdentifier", - "src": "23289:3:32" + "src": "22865:3:32" } ] } ] }, "nodeType": "YulCase", - "src": "22985:341:32", + "src": "22561:341:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "22990:1:32", + "src": "22566:1:32", "type": "", "value": "1" } @@ -21157,24 +20583,24 @@ { "name": "slotValue", "nodeType": "YulIdentifier", - "src": "22807:9:32" + "src": "22383:9:32" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "22818:2:32" + "src": "22394:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "22803:3:32" + "src": "22379:3:32" }, "nodeType": "YulFunctionCall", - "src": "22803:18:32" + "src": "22379:18:32" }, "nodeType": "YulSwitch", - "src": "22796:530:32" + "src": "22372:530:32" } ] }, @@ -21184,13 +20610,13 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "22595:5:32", + "src": "22171:5:32", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "22602:3:32", + "src": "22178:3:32", "type": "" } ], @@ -21198,16 +20624,16 @@ { "name": "ret", "nodeType": "YulTypedName", - "src": "22610:3:32", + "src": "22186:3:32", "type": "" } ], - "src": "22560:772:32" + "src": "22136:772:32" }, { "body": { "nodeType": "YulBlock", - "src": "23500:230:32", + "src": "23076:230:32", "statements": [ { "expression": { @@ -21215,12 +20641,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23517:9:32" + "src": "23093:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23528:2:32", + "src": "23104:2:32", "type": "", "value": "64" } @@ -21228,35 +20654,35 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23510:6:32" + "src": "23086:6:32" }, "nodeType": "YulFunctionCall", - "src": "23510:21:32" + "src": "23086:21:32" }, "nodeType": "YulExpressionStatement", - "src": "23510:21:32" + "src": "23086:21:32" }, { "nodeType": "YulVariableDeclaration", - "src": "23540:67:32", + "src": "23116:67:32", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "23580:6:32" + "src": "23156:6:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23592:9:32" + "src": "23168:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23603:2:32", + "src": "23179:2:32", "type": "", "value": "64" } @@ -21264,25 +20690,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23588:3:32" + "src": "23164:3:32" }, "nodeType": "YulFunctionCall", - "src": "23588:18:32" + "src": "23164:18:32" } ], "functionName": { "name": "abi_encode_string_storage", "nodeType": "YulIdentifier", - "src": "23554:25:32" + "src": "23130:25:32" }, "nodeType": "YulFunctionCall", - "src": "23554:53:32" + "src": "23130:53:32" }, "variables": [ { "name": "tail_1", "nodeType": "YulTypedName", - "src": "23544:6:32", + "src": "23120:6:32", "type": "" } ] @@ -21295,12 +20721,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23627:9:32" + "src": "23203:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23638:2:32", + "src": "23214:2:32", "type": "", "value": "32" } @@ -21308,73 +20734,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23623:3:32" + "src": "23199:3:32" }, "nodeType": "YulFunctionCall", - "src": "23623:18:32" + "src": "23199:18:32" }, { "arguments": [ { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "23647:6:32" + "src": "23223:6:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23655:9:32" + "src": "23231:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "23643:3:32" + "src": "23219:3:32" }, "nodeType": "YulFunctionCall", - "src": "23643:22:32" + "src": "23219:22:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23616:6:32" + "src": "23192:6:32" }, "nodeType": "YulFunctionCall", - "src": "23616:50:32" + "src": "23192:50:32" }, "nodeType": "YulExpressionStatement", - "src": "23616:50:32" + "src": "23192:50:32" }, { "nodeType": "YulAssignment", - "src": "23675:49:32", + "src": "23251:49:32", "value": { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "23709:6:32" + "src": "23285:6:32" }, { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "23717:6:32" + "src": "23293:6:32" } ], "functionName": { "name": "abi_encode_string_storage", "nodeType": "YulIdentifier", - "src": "23683:25:32" + "src": "23259:25:32" }, "nodeType": "YulFunctionCall", - "src": "23683:41:32" + "src": "23259:41:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "23675:4:32" + "src": "23251:4:32" } ] } @@ -21386,19 +20812,19 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "23461:9:32", + "src": "23037:9:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "23472:6:32", + "src": "23048:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "23480:6:32", + "src": "23056:6:32", "type": "" } ], @@ -21406,16 +20832,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "23491:4:32", + "src": "23067:4:32", "type": "" } ], - "src": "23337:393:32" + "src": "22913:393:32" }, { "body": { "nodeType": "YulBlock", - "src": "23767:95:32", + "src": "23343:95:32", "statements": [ { "expression": { @@ -21423,7 +20849,7 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "23784:1:32", + "src": "23360:1:32", "type": "", "value": "0" }, @@ -21432,14 +20858,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "23791:3:32", + "src": "23367:3:32", "type": "", "value": "224" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23796:10:32", + "src": "23372:10:32", "type": "", "value": "0x4e487b71" } @@ -21447,22 +20873,22 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "23787:3:32" + "src": "23363:3:32" }, "nodeType": "YulFunctionCall", - "src": "23787:20:32" + "src": "23363:20:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23777:6:32" + "src": "23353:6:32" }, "nodeType": "YulFunctionCall", - "src": "23777:31:32" + "src": "23353:31:32" }, "nodeType": "YulExpressionStatement", - "src": "23777:31:32" + "src": "23353:31:32" }, { "expression": { @@ -21470,14 +20896,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "23824:1:32", + "src": "23400:1:32", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23827:4:32", + "src": "23403:4:32", "type": "", "value": "0x11" } @@ -21485,13 +20911,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23817:6:32" + "src": "23393:6:32" }, "nodeType": "YulFunctionCall", - "src": "23817:15:32" + "src": "23393:15:32" }, "nodeType": "YulExpressionStatement", - "src": "23817:15:32" + "src": "23393:15:32" }, { "expression": { @@ -21499,14 +20925,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "23848:1:32", + "src": "23424:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23851:4:32", + "src": "23427:4:32", "type": "", "value": "0x24" } @@ -21514,29 +20940,29 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "23841:6:32" + "src": "23417:6:32" }, "nodeType": "YulFunctionCall", - "src": "23841:15:32" + "src": "23417:15:32" }, "nodeType": "YulExpressionStatement", - "src": "23841:15:32" + "src": "23417:15:32" } ] }, "name": "panic_error_0x11", "nodeType": "YulFunctionDefinition", - "src": "23735:127:32" + "src": "23311:127:32" }, { "body": { "nodeType": "YulBlock", - "src": "23914:88:32", + "src": "23490:88:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "23945:22:32", + "src": "23521:22:32", "statements": [ { "expression": { @@ -21544,13 +20970,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "23947:16:32" + "src": "23523:16:32" }, "nodeType": "YulFunctionCall", - "src": "23947:18:32" + "src": "23523:18:32" }, "nodeType": "YulExpressionStatement", - "src": "23947:18:32" + "src": "23523:18:32" } ] }, @@ -21559,14 +20985,14 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "23930:5:32" + "src": "23506:5:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "23941:1:32", + "src": "23517:1:32", "type": "", "value": "0" } @@ -21574,37 +21000,37 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "23937:3:32" + "src": "23513:3:32" }, "nodeType": "YulFunctionCall", - "src": "23937:6:32" + "src": "23513:6:32" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "23927:2:32" + "src": "23503:2:32" }, "nodeType": "YulFunctionCall", - "src": "23927:17:32" + "src": "23503:17:32" }, "nodeType": "YulIf", - "src": "23924:43:32" + "src": "23500:43:32" }, { "nodeType": "YulAssignment", - "src": "23976:20:32", + "src": "23552:20:32", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "23987:5:32" + "src": "23563:5:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23994:1:32", + "src": "23570:1:32", "type": "", "value": "1" } @@ -21612,16 +21038,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23983:3:32" + "src": "23559:3:32" }, "nodeType": "YulFunctionCall", - "src": "23983:13:32" + "src": "23559:13:32" }, "variableNames": [ { "name": "ret", "nodeType": "YulIdentifier", - "src": "23976:3:32" + "src": "23552:3:32" } ] } @@ -21633,7 +21059,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "23896:5:32", + "src": "23472:5:32", "type": "" } ], @@ -21641,16 +21067,16 @@ { "name": "ret", "nodeType": "YulTypedName", - "src": "23906:3:32", + "src": "23482:3:32", "type": "" } ], - "src": "23867:135:32" + "src": "23443:135:32" }, { "body": { "nodeType": "YulBlock", - "src": "24181:155:32", + "src": "23757:155:32", "statements": [ { "expression": { @@ -21658,12 +21084,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24198:9:32" + "src": "23774:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24209:2:32", + "src": "23785:2:32", "type": "", "value": "32" } @@ -21671,13 +21097,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24191:6:32" + "src": "23767:6:32" }, "nodeType": "YulFunctionCall", - "src": "24191:21:32" + "src": "23767:21:32" }, "nodeType": "YulExpressionStatement", - "src": "24191:21:32" + "src": "23767:21:32" }, { "expression": { @@ -21687,12 +21113,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24232:9:32" + "src": "23808:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24243:2:32", + "src": "23819:2:32", "type": "", "value": "32" } @@ -21700,15 +21126,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24228:3:32" + "src": "23804:3:32" }, "nodeType": "YulFunctionCall", - "src": "24228:18:32" + "src": "23804:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24248:1:32", + "src": "23824:1:32", "type": "", "value": "6" } @@ -21716,13 +21142,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24221:6:32" + "src": "23797:6:32" }, "nodeType": "YulFunctionCall", - "src": "24221:29:32" + "src": "23797:29:32" }, "nodeType": "YulExpressionStatement", - "src": "24221:29:32" + "src": "23797:29:32" }, { "expression": { @@ -21732,12 +21158,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24270:9:32" + "src": "23846:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24281:2:32", + "src": "23857:2:32", "type": "", "value": "64" } @@ -21745,16 +21171,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24266:3:32" + "src": "23842:3:32" }, "nodeType": "YulFunctionCall", - "src": "24266:18:32" + "src": "23842:18:32" }, { "hexValue": "4c4243303031", "kind": "string", "nodeType": "YulLiteral", - "src": "24286:8:32", + "src": "23862:8:32", "type": "", "value": "LBC001" } @@ -21762,28 +21188,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24259:6:32" + "src": "23835:6:32" }, "nodeType": "YulFunctionCall", - "src": "24259:36:32" + "src": "23835:36:32" }, "nodeType": "YulExpressionStatement", - "src": "24259:36:32" + "src": "23835:36:32" }, { "nodeType": "YulAssignment", - "src": "24304:26:32", + "src": "23880:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24316:9:32" + "src": "23892:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24327:2:32", + "src": "23903:2:32", "type": "", "value": "96" } @@ -21791,16 +21217,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24312:3:32" + "src": "23888:3:32" }, "nodeType": "YulFunctionCall", - "src": "24312:18:32" + "src": "23888:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "24304:4:32" + "src": "23880:4:32" } ] } @@ -21812,7 +21238,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "24158:9:32", + "src": "23734:9:32", "type": "" } ], @@ -21820,16 +21246,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "24172:4:32", + "src": "23748:4:32", "type": "" } ], - "src": "24007:329:32" + "src": "23583:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "24515:155:32", + "src": "24091:155:32", "statements": [ { "expression": { @@ -21837,12 +21263,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24532:9:32" + "src": "24108:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24543:2:32", + "src": "24119:2:32", "type": "", "value": "32" } @@ -21850,13 +21276,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24525:6:32" + "src": "24101:6:32" }, "nodeType": "YulFunctionCall", - "src": "24525:21:32" + "src": "24101:21:32" }, "nodeType": "YulExpressionStatement", - "src": "24525:21:32" + "src": "24101:21:32" }, { "expression": { @@ -21866,12 +21292,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24566:9:32" + "src": "24142:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24577:2:32", + "src": "24153:2:32", "type": "", "value": "32" } @@ -21879,15 +21305,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24562:3:32" + "src": "24138:3:32" }, "nodeType": "YulFunctionCall", - "src": "24562:18:32" + "src": "24138:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24582:1:32", + "src": "24158:1:32", "type": "", "value": "6" } @@ -21895,13 +21321,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24555:6:32" + "src": "24131:6:32" }, "nodeType": "YulFunctionCall", - "src": "24555:29:32" + "src": "24131:29:32" }, "nodeType": "YulExpressionStatement", - "src": "24555:29:32" + "src": "24131:29:32" }, { "expression": { @@ -21911,12 +21337,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24604:9:32" + "src": "24180:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24615:2:32", + "src": "24191:2:32", "type": "", "value": "64" } @@ -21924,16 +21350,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24600:3:32" + "src": "24176:3:32" }, "nodeType": "YulFunctionCall", - "src": "24600:18:32" + "src": "24176:18:32" }, { "hexValue": "4c4243303238", "kind": "string", "nodeType": "YulLiteral", - "src": "24620:8:32", + "src": "24196:8:32", "type": "", "value": "LBC028" } @@ -21941,28 +21367,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24593:6:32" + "src": "24169:6:32" }, "nodeType": "YulFunctionCall", - "src": "24593:36:32" + "src": "24169:36:32" }, "nodeType": "YulExpressionStatement", - "src": "24593:36:32" + "src": "24169:36:32" }, { "nodeType": "YulAssignment", - "src": "24638:26:32", + "src": "24214:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24650:9:32" + "src": "24226:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24661:2:32", + "src": "24237:2:32", "type": "", "value": "96" } @@ -21970,16 +21396,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24646:3:32" + "src": "24222:3:32" }, "nodeType": "YulFunctionCall", - "src": "24646:18:32" + "src": "24222:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "24638:4:32" + "src": "24214:4:32" } ] } @@ -21991,7 +21417,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "24492:9:32", + "src": "24068:9:32", "type": "" } ], @@ -21999,16 +21425,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "24506:4:32", + "src": "24082:4:32", "type": "" } ], - "src": "24341:329:32" + "src": "23917:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "24858:211:32", + "src": "24434:211:32", "statements": [ { "expression": { @@ -22016,14 +21442,14 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24875:9:32" + "src": "24451:9:32" }, { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "24890:6:32" + "src": "24466:6:32" }, { "arguments": [ @@ -22032,14 +21458,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "24906:3:32", + "src": "24482:3:32", "type": "", "value": "160" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24911:1:32", + "src": "24487:1:32", "type": "", "value": "1" } @@ -22047,15 +21473,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "24902:3:32" + "src": "24478:3:32" }, "nodeType": "YulFunctionCall", - "src": "24902:11:32" + "src": "24478:11:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24915:1:32", + "src": "24491:1:32", "type": "", "value": "1" } @@ -22063,31 +21489,31 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "24898:3:32" + "src": "24474:3:32" }, "nodeType": "YulFunctionCall", - "src": "24898:19:32" + "src": "24474:19:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "24886:3:32" + "src": "24462:3:32" }, "nodeType": "YulFunctionCall", - "src": "24886:32:32" + "src": "24462:32:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24868:6:32" + "src": "24444:6:32" }, "nodeType": "YulFunctionCall", - "src": "24868:51:32" + "src": "24444:51:32" }, "nodeType": "YulExpressionStatement", - "src": "24868:51:32" + "src": "24444:51:32" }, { "expression": { @@ -22097,12 +21523,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24939:9:32" + "src": "24515:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24950:2:32", + "src": "24526:2:32", "type": "", "value": "32" } @@ -22110,27 +21536,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24935:3:32" + "src": "24511:3:32" }, "nodeType": "YulFunctionCall", - "src": "24935:18:32" + "src": "24511:18:32" }, { "name": "value1", "nodeType": "YulIdentifier", - "src": "24955:6:32" + "src": "24531:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24928:6:32" + "src": "24504:6:32" }, "nodeType": "YulFunctionCall", - "src": "24928:34:32" + "src": "24504:34:32" }, "nodeType": "YulExpressionStatement", - "src": "24928:34:32" + "src": "24504:34:32" }, { "expression": { @@ -22140,12 +21566,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24982:9:32" + "src": "24558:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24993:2:32", + "src": "24569:2:32", "type": "", "value": "64" } @@ -22153,15 +21579,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24978:3:32" + "src": "24554:3:32" }, "nodeType": "YulFunctionCall", - "src": "24978:18:32" + "src": "24554:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24998:2:32", + "src": "24574:2:32", "type": "", "value": "96" } @@ -22169,35 +21595,35 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24971:6:32" + "src": "24547:6:32" }, "nodeType": "YulFunctionCall", - "src": "24971:30:32" + "src": "24547:30:32" }, "nodeType": "YulExpressionStatement", - "src": "24971:30:32" + "src": "24547:30:32" }, { "nodeType": "YulAssignment", - "src": "25010:53:32", + "src": "24586:53:32", "value": { "arguments": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "25036:6:32" + "src": "24612:6:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25048:9:32" + "src": "24624:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25059:2:32", + "src": "24635:2:32", "type": "", "value": "96" } @@ -22205,25 +21631,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25044:3:32" + "src": "24620:3:32" }, "nodeType": "YulFunctionCall", - "src": "25044:18:32" + "src": "24620:18:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "25018:17:32" + "src": "24594:17:32" }, "nodeType": "YulFunctionCall", - "src": "25018:45:32" + "src": "24594:45:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25010:4:32" + "src": "24586:4:32" } ] } @@ -22235,25 +21661,25 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "24811:9:32", + "src": "24387:9:32", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "24822:6:32", + "src": "24398:6:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "24830:6:32", + "src": "24406:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "24838:6:32", + "src": "24414:6:32", "type": "" } ], @@ -22261,21 +21687,21 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "24849:4:32", + "src": "24425:4:32", "type": "" } ], - "src": "24675:394:32" + "src": "24251:394:32" }, { "body": { "nodeType": "YulBlock", - "src": "25152:167:32", + "src": "24728:167:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "25198:16:32", + "src": "24774:16:32", "statements": [ { "expression": { @@ -22283,14 +21709,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "25207:1:32", + "src": "24783:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25210:1:32", + "src": "24786:1:32", "type": "", "value": "0" } @@ -22298,13 +21724,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "25200:6:32" + "src": "24776:6:32" }, "nodeType": "YulFunctionCall", - "src": "25200:12:32" + "src": "24776:12:32" }, "nodeType": "YulExpressionStatement", - "src": "25200:12:32" + "src": "24776:12:32" } ] }, @@ -22315,26 +21741,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "25173:7:32" + "src": "24749:7:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25182:9:32" + "src": "24758:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "25169:3:32" + "src": "24745:3:32" }, "nodeType": "YulFunctionCall", - "src": "25169:23:32" + "src": "24745:23:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25194:2:32", + "src": "24770:2:32", "type": "", "value": "32" } @@ -22342,38 +21768,38 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "25165:3:32" + "src": "24741:3:32" }, "nodeType": "YulFunctionCall", - "src": "25165:32:32" + "src": "24741:32:32" }, "nodeType": "YulIf", - "src": "25162:52:32" + "src": "24738:52:32" }, { "nodeType": "YulVariableDeclaration", - "src": "25223:29:32", + "src": "24799:29:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25242:9:32" + "src": "24818:9:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "25236:5:32" + "src": "24812:5:32" }, "nodeType": "YulFunctionCall", - "src": "25236:16:32" + "src": "24812:16:32" }, "variables": [ { "name": "value", "nodeType": "YulTypedName", - "src": "25227:5:32", + "src": "24803:5:32", "type": "" } ] @@ -22384,33 +21810,33 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "25283:5:32" + "src": "24859:5:32" } ], "functionName": { "name": "validator_revert_bool", "nodeType": "YulIdentifier", - "src": "25261:21:32" + "src": "24837:21:32" }, "nodeType": "YulFunctionCall", - "src": "25261:28:32" + "src": "24837:28:32" }, "nodeType": "YulExpressionStatement", - "src": "25261:28:32" + "src": "24837:28:32" }, { "nodeType": "YulAssignment", - "src": "25298:15:32", + "src": "24874:15:32", "value": { "name": "value", "nodeType": "YulIdentifier", - "src": "25308:5:32" + "src": "24884:5:32" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "25298:6:32" + "src": "24874:6:32" } ] } @@ -22422,13 +21848,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "25118:9:32", + "src": "24694:9:32", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "25129:7:32", + "src": "24705:7:32", "type": "" } ], @@ -22436,16 +21862,16 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "25141:6:32", + "src": "24717:6:32", "type": "" } ], - "src": "25074:245:32" + "src": "24650:245:32" }, { "body": { "nodeType": "YulBlock", - "src": "25498:155:32", + "src": "25074:155:32", "statements": [ { "expression": { @@ -22453,12 +21879,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25515:9:32" + "src": "25091:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25526:2:32", + "src": "25102:2:32", "type": "", "value": "32" } @@ -22466,13 +21892,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25508:6:32" + "src": "25084:6:32" }, "nodeType": "YulFunctionCall", - "src": "25508:21:32" + "src": "25084:21:32" }, "nodeType": "YulExpressionStatement", - "src": "25508:21:32" + "src": "25084:21:32" }, { "expression": { @@ -22482,12 +21908,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25549:9:32" + "src": "25125:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25560:2:32", + "src": "25136:2:32", "type": "", "value": "32" } @@ -22495,15 +21921,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25545:3:32" + "src": "25121:3:32" }, "nodeType": "YulFunctionCall", - "src": "25545:18:32" + "src": "25121:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25565:1:32", + "src": "25141:1:32", "type": "", "value": "6" } @@ -22511,13 +21937,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25538:6:32" + "src": "25114:6:32" }, "nodeType": "YulFunctionCall", - "src": "25538:29:32" + "src": "25114:29:32" }, "nodeType": "YulExpressionStatement", - "src": "25538:29:32" + "src": "25114:29:32" }, { "expression": { @@ -22527,12 +21953,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25587:9:32" + "src": "25163:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25598:2:32", + "src": "25174:2:32", "type": "", "value": "64" } @@ -22540,16 +21966,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25583:3:32" + "src": "25159:3:32" }, "nodeType": "YulFunctionCall", - "src": "25583:18:32" + "src": "25159:18:32" }, { "hexValue": "4c4243303239", "kind": "string", "nodeType": "YulLiteral", - "src": "25603:8:32", + "src": "25179:8:32", "type": "", "value": "LBC029" } @@ -22557,28 +21983,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25576:6:32" + "src": "25152:6:32" }, "nodeType": "YulFunctionCall", - "src": "25576:36:32" + "src": "25152:36:32" }, "nodeType": "YulExpressionStatement", - "src": "25576:36:32" + "src": "25152:36:32" }, { "nodeType": "YulAssignment", - "src": "25621:26:32", + "src": "25197:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25633:9:32" + "src": "25209:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25644:2:32", + "src": "25220:2:32", "type": "", "value": "96" } @@ -22586,16 +22012,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25629:3:32" + "src": "25205:3:32" }, "nodeType": "YulFunctionCall", - "src": "25629:18:32" + "src": "25205:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25621:4:32" + "src": "25197:4:32" } ] } @@ -22607,7 +22033,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "25475:9:32", + "src": "25051:9:32", "type": "" } ], @@ -22615,16 +22041,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "25489:4:32", + "src": "25065:4:32", "type": "" } ], - "src": "25324:329:32" + "src": "24900:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "25832:155:32", + "src": "25408:155:32", "statements": [ { "expression": { @@ -22632,12 +22058,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25849:9:32" + "src": "25425:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25860:2:32", + "src": "25436:2:32", "type": "", "value": "32" } @@ -22645,13 +22071,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25842:6:32" + "src": "25418:6:32" }, "nodeType": "YulFunctionCall", - "src": "25842:21:32" + "src": "25418:21:32" }, "nodeType": "YulExpressionStatement", - "src": "25842:21:32" + "src": "25418:21:32" }, { "expression": { @@ -22661,12 +22087,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25883:9:32" + "src": "25459:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25894:2:32", + "src": "25470:2:32", "type": "", "value": "32" } @@ -22674,15 +22100,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25879:3:32" + "src": "25455:3:32" }, "nodeType": "YulFunctionCall", - "src": "25879:18:32" + "src": "25455:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25899:1:32", + "src": "25475:1:32", "type": "", "value": "6" } @@ -22690,13 +22116,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25872:6:32" + "src": "25448:6:32" }, "nodeType": "YulFunctionCall", - "src": "25872:29:32" + "src": "25448:29:32" }, "nodeType": "YulExpressionStatement", - "src": "25872:29:32" + "src": "25448:29:32" }, { "expression": { @@ -22706,12 +22132,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25921:9:32" + "src": "25497:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25932:2:32", + "src": "25508:2:32", "type": "", "value": "64" } @@ -22719,16 +22145,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25917:3:32" + "src": "25493:3:32" }, "nodeType": "YulFunctionCall", - "src": "25917:18:32" + "src": "25493:18:32" }, { "hexValue": "4c4243303330", "kind": "string", "nodeType": "YulLiteral", - "src": "25937:8:32", + "src": "25513:8:32", "type": "", "value": "LBC030" } @@ -22736,28 +22162,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25910:6:32" + "src": "25486:6:32" }, "nodeType": "YulFunctionCall", - "src": "25910:36:32" + "src": "25486:36:32" }, "nodeType": "YulExpressionStatement", - "src": "25910:36:32" + "src": "25486:36:32" }, { "nodeType": "YulAssignment", - "src": "25955:26:32", + "src": "25531:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25967:9:32" + "src": "25543:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25978:2:32", + "src": "25554:2:32", "type": "", "value": "96" } @@ -22765,16 +22191,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25963:3:32" + "src": "25539:3:32" }, "nodeType": "YulFunctionCall", - "src": "25963:18:32" + "src": "25539:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25955:4:32" + "src": "25531:4:32" } ] } @@ -22786,7 +22212,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "25809:9:32", + "src": "25385:9:32", "type": "" } ], @@ -22794,16 +22220,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "25823:4:32", + "src": "25399:4:32", "type": "" } ], - "src": "25658:329:32" + "src": "25234:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "26166:155:32", + "src": "25742:155:32", "statements": [ { "expression": { @@ -22811,12 +22237,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26183:9:32" + "src": "25759:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26194:2:32", + "src": "25770:2:32", "type": "", "value": "32" } @@ -22824,13 +22250,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26176:6:32" + "src": "25752:6:32" }, "nodeType": "YulFunctionCall", - "src": "26176:21:32" + "src": "25752:21:32" }, "nodeType": "YulExpressionStatement", - "src": "26176:21:32" + "src": "25752:21:32" }, { "expression": { @@ -22840,12 +22266,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26217:9:32" + "src": "25793:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26228:2:32", + "src": "25804:2:32", "type": "", "value": "32" } @@ -22853,15 +22279,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26213:3:32" + "src": "25789:3:32" }, "nodeType": "YulFunctionCall", - "src": "26213:18:32" + "src": "25789:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26233:1:32", + "src": "25809:1:32", "type": "", "value": "6" } @@ -22869,13 +22295,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26206:6:32" + "src": "25782:6:32" }, "nodeType": "YulFunctionCall", - "src": "26206:29:32" + "src": "25782:29:32" }, "nodeType": "YulExpressionStatement", - "src": "26206:29:32" + "src": "25782:29:32" }, { "expression": { @@ -22885,12 +22311,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26255:9:32" + "src": "25831:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26266:2:32", + "src": "25842:2:32", "type": "", "value": "64" } @@ -22898,16 +22324,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26251:3:32" + "src": "25827:3:32" }, "nodeType": "YulFunctionCall", - "src": "26251:18:32" + "src": "25827:18:32" }, { "hexValue": "4c4243303331", "kind": "string", "nodeType": "YulLiteral", - "src": "26271:8:32", + "src": "25847:8:32", "type": "", "value": "LBC031" } @@ -22915,28 +22341,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26244:6:32" + "src": "25820:6:32" }, "nodeType": "YulFunctionCall", - "src": "26244:36:32" + "src": "25820:36:32" }, "nodeType": "YulExpressionStatement", - "src": "26244:36:32" + "src": "25820:36:32" }, { "nodeType": "YulAssignment", - "src": "26289:26:32", + "src": "25865:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26301:9:32" + "src": "25877:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26312:2:32", + "src": "25888:2:32", "type": "", "value": "96" } @@ -22944,16 +22370,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26297:3:32" + "src": "25873:3:32" }, "nodeType": "YulFunctionCall", - "src": "26297:18:32" + "src": "25873:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "26289:4:32" + "src": "25865:4:32" } ] } @@ -22965,7 +22391,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "26143:9:32", + "src": "25719:9:32", "type": "" } ], @@ -22973,16 +22399,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "26157:4:32", + "src": "25733:4:32", "type": "" } ], - "src": "25992:329:32" + "src": "25568:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "26500:155:32", + "src": "26076:155:32", "statements": [ { "expression": { @@ -22990,12 +22416,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26517:9:32" + "src": "26093:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26528:2:32", + "src": "26104:2:32", "type": "", "value": "32" } @@ -23003,13 +22429,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26510:6:32" + "src": "26086:6:32" }, "nodeType": "YulFunctionCall", - "src": "26510:21:32" + "src": "26086:21:32" }, "nodeType": "YulExpressionStatement", - "src": "26510:21:32" + "src": "26086:21:32" }, { "expression": { @@ -23019,12 +22445,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26551:9:32" + "src": "26127:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26562:2:32", + "src": "26138:2:32", "type": "", "value": "32" } @@ -23032,15 +22458,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26547:3:32" + "src": "26123:3:32" }, "nodeType": "YulFunctionCall", - "src": "26547:18:32" + "src": "26123:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26567:1:32", + "src": "26143:1:32", "type": "", "value": "6" } @@ -23048,13 +22474,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26540:6:32" + "src": "26116:6:32" }, "nodeType": "YulFunctionCall", - "src": "26540:29:32" + "src": "26116:29:32" }, "nodeType": "YulExpressionStatement", - "src": "26540:29:32" + "src": "26116:29:32" }, { "expression": { @@ -23064,12 +22490,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26589:9:32" + "src": "26165:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26600:2:32", + "src": "26176:2:32", "type": "", "value": "64" } @@ -23077,16 +22503,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26585:3:32" + "src": "26161:3:32" }, "nodeType": "YulFunctionCall", - "src": "26585:18:32" + "src": "26161:18:32" }, { "hexValue": "4c4243303332", "kind": "string", "nodeType": "YulLiteral", - "src": "26605:8:32", + "src": "26181:8:32", "type": "", "value": "LBC032" } @@ -23094,28 +22520,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26578:6:32" + "src": "26154:6:32" }, "nodeType": "YulFunctionCall", - "src": "26578:36:32" + "src": "26154:36:32" }, "nodeType": "YulExpressionStatement", - "src": "26578:36:32" + "src": "26154:36:32" }, { "nodeType": "YulAssignment", - "src": "26623:26:32", + "src": "26199:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26635:9:32" + "src": "26211:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26646:2:32", + "src": "26222:2:32", "type": "", "value": "96" } @@ -23123,16 +22549,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26631:3:32" + "src": "26207:3:32" }, "nodeType": "YulFunctionCall", - "src": "26631:18:32" + "src": "26207:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "26623:4:32" + "src": "26199:4:32" } ] } @@ -23144,7 +22570,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "26477:9:32", + "src": "26053:9:32", "type": "" } ], @@ -23152,16 +22578,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "26491:4:32", + "src": "26067:4:32", "type": "" } ], - "src": "26326:329:32" + "src": "25902:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "26834:155:32", + "src": "26410:155:32", "statements": [ { "expression": { @@ -23169,12 +22595,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26851:9:32" + "src": "26427:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26862:2:32", + "src": "26438:2:32", "type": "", "value": "32" } @@ -23182,13 +22608,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26844:6:32" + "src": "26420:6:32" }, "nodeType": "YulFunctionCall", - "src": "26844:21:32" + "src": "26420:21:32" }, "nodeType": "YulExpressionStatement", - "src": "26844:21:32" + "src": "26420:21:32" }, { "expression": { @@ -23198,12 +22624,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26885:9:32" + "src": "26461:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26896:2:32", + "src": "26472:2:32", "type": "", "value": "32" } @@ -23211,15 +22637,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26881:3:32" + "src": "26457:3:32" }, "nodeType": "YulFunctionCall", - "src": "26881:18:32" + "src": "26457:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26901:1:32", + "src": "26477:1:32", "type": "", "value": "6" } @@ -23227,13 +22653,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26874:6:32" + "src": "26450:6:32" }, "nodeType": "YulFunctionCall", - "src": "26874:29:32" + "src": "26450:29:32" }, "nodeType": "YulExpressionStatement", - "src": "26874:29:32" + "src": "26450:29:32" }, { "expression": { @@ -23243,12 +22669,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26923:9:32" + "src": "26499:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26934:2:32", + "src": "26510:2:32", "type": "", "value": "64" } @@ -23256,16 +22682,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26919:3:32" + "src": "26495:3:32" }, "nodeType": "YulFunctionCall", - "src": "26919:18:32" + "src": "26495:18:32" }, { "hexValue": "4c4243303333", "kind": "string", "nodeType": "YulLiteral", - "src": "26939:8:32", + "src": "26515:8:32", "type": "", "value": "LBC033" } @@ -23273,28 +22699,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26912:6:32" + "src": "26488:6:32" }, "nodeType": "YulFunctionCall", - "src": "26912:36:32" + "src": "26488:36:32" }, "nodeType": "YulExpressionStatement", - "src": "26912:36:32" + "src": "26488:36:32" }, { "nodeType": "YulAssignment", - "src": "26957:26:32", + "src": "26533:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26969:9:32" + "src": "26545:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26980:2:32", + "src": "26556:2:32", "type": "", "value": "96" } @@ -23302,16 +22728,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26965:3:32" + "src": "26541:3:32" }, "nodeType": "YulFunctionCall", - "src": "26965:18:32" + "src": "26541:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "26957:4:32" + "src": "26533:4:32" } ] } @@ -23323,7 +22749,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "26811:9:32", + "src": "26387:9:32", "type": "" } ], @@ -23331,16 +22757,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "26825:4:32", + "src": "26401:4:32", "type": "" } ], - "src": "26660:329:32" + "src": "26236:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "27168:155:32", + "src": "26744:155:32", "statements": [ { "expression": { @@ -23348,12 +22774,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27185:9:32" + "src": "26761:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27196:2:32", + "src": "26772:2:32", "type": "", "value": "32" } @@ -23361,13 +22787,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27178:6:32" + "src": "26754:6:32" }, "nodeType": "YulFunctionCall", - "src": "27178:21:32" + "src": "26754:21:32" }, "nodeType": "YulExpressionStatement", - "src": "27178:21:32" + "src": "26754:21:32" }, { "expression": { @@ -23377,12 +22803,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27219:9:32" + "src": "26795:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27230:2:32", + "src": "26806:2:32", "type": "", "value": "32" } @@ -23390,15 +22816,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27215:3:32" + "src": "26791:3:32" }, "nodeType": "YulFunctionCall", - "src": "27215:18:32" + "src": "26791:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27235:1:32", + "src": "26811:1:32", "type": "", "value": "6" } @@ -23406,13 +22832,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27208:6:32" + "src": "26784:6:32" }, "nodeType": "YulFunctionCall", - "src": "27208:29:32" + "src": "26784:29:32" }, "nodeType": "YulExpressionStatement", - "src": "27208:29:32" + "src": "26784:29:32" }, { "expression": { @@ -23422,12 +22848,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27257:9:32" + "src": "26833:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27268:2:32", + "src": "26844:2:32", "type": "", "value": "64" } @@ -23435,16 +22861,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27253:3:32" + "src": "26829:3:32" }, "nodeType": "YulFunctionCall", - "src": "27253:18:32" + "src": "26829:18:32" }, { "hexValue": "4c4243303334", "kind": "string", "nodeType": "YulLiteral", - "src": "27273:8:32", + "src": "26849:8:32", "type": "", "value": "LBC034" } @@ -23452,28 +22878,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27246:6:32" + "src": "26822:6:32" }, "nodeType": "YulFunctionCall", - "src": "27246:36:32" + "src": "26822:36:32" }, "nodeType": "YulExpressionStatement", - "src": "27246:36:32" + "src": "26822:36:32" }, { "nodeType": "YulAssignment", - "src": "27291:26:32", + "src": "26867:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27303:9:32" + "src": "26879:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27314:2:32", + "src": "26890:2:32", "type": "", "value": "96" } @@ -23481,16 +22907,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27299:3:32" + "src": "26875:3:32" }, "nodeType": "YulFunctionCall", - "src": "27299:18:32" + "src": "26875:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "27291:4:32" + "src": "26867:4:32" } ] } @@ -23502,7 +22928,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "27145:9:32", + "src": "26721:9:32", "type": "" } ], @@ -23510,16 +22936,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "27159:4:32", + "src": "26735:4:32", "type": "" } ], - "src": "26994:329:32" + "src": "26570:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "27502:155:32", + "src": "27078:155:32", "statements": [ { "expression": { @@ -23527,12 +22953,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27519:9:32" + "src": "27095:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27530:2:32", + "src": "27106:2:32", "type": "", "value": "32" } @@ -23540,13 +22966,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27512:6:32" + "src": "27088:6:32" }, "nodeType": "YulFunctionCall", - "src": "27512:21:32" + "src": "27088:21:32" }, "nodeType": "YulExpressionStatement", - "src": "27512:21:32" + "src": "27088:21:32" }, { "expression": { @@ -23556,12 +22982,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27553:9:32" + "src": "27129:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27564:2:32", + "src": "27140:2:32", "type": "", "value": "32" } @@ -23569,15 +22995,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27549:3:32" + "src": "27125:3:32" }, "nodeType": "YulFunctionCall", - "src": "27549:18:32" + "src": "27125:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27569:1:32", + "src": "27145:1:32", "type": "", "value": "6" } @@ -23585,13 +23011,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27542:6:32" + "src": "27118:6:32" }, "nodeType": "YulFunctionCall", - "src": "27542:29:32" + "src": "27118:29:32" }, "nodeType": "YulExpressionStatement", - "src": "27542:29:32" + "src": "27118:29:32" }, { "expression": { @@ -23601,12 +23027,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27591:9:32" + "src": "27167:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27602:2:32", + "src": "27178:2:32", "type": "", "value": "64" } @@ -23614,16 +23040,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27587:3:32" + "src": "27163:3:32" }, "nodeType": "YulFunctionCall", - "src": "27587:18:32" + "src": "27163:18:32" }, { "hexValue": "4c4243303335", "kind": "string", "nodeType": "YulLiteral", - "src": "27607:8:32", + "src": "27183:8:32", "type": "", "value": "LBC035" } @@ -23631,28 +23057,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27580:6:32" + "src": "27156:6:32" }, "nodeType": "YulFunctionCall", - "src": "27580:36:32" + "src": "27156:36:32" }, "nodeType": "YulExpressionStatement", - "src": "27580:36:32" + "src": "27156:36:32" }, { "nodeType": "YulAssignment", - "src": "27625:26:32", + "src": "27201:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27637:9:32" + "src": "27213:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27648:2:32", + "src": "27224:2:32", "type": "", "value": "96" } @@ -23660,16 +23086,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27633:3:32" + "src": "27209:3:32" }, "nodeType": "YulFunctionCall", - "src": "27633:18:32" + "src": "27209:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "27625:4:32" + "src": "27201:4:32" } ] } @@ -23681,7 +23107,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "27479:9:32", + "src": "27055:9:32", "type": "" } ], @@ -23689,16 +23115,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "27493:4:32", + "src": "27069:4:32", "type": "" } ], - "src": "27328:329:32" + "src": "26904:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "27836:155:32", + "src": "27412:155:32", "statements": [ { "expression": { @@ -23706,12 +23132,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27853:9:32" + "src": "27429:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27864:2:32", + "src": "27440:2:32", "type": "", "value": "32" } @@ -23719,13 +23145,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27846:6:32" + "src": "27422:6:32" }, "nodeType": "YulFunctionCall", - "src": "27846:21:32" + "src": "27422:21:32" }, "nodeType": "YulExpressionStatement", - "src": "27846:21:32" + "src": "27422:21:32" }, { "expression": { @@ -23735,12 +23161,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27887:9:32" + "src": "27463:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27898:2:32", + "src": "27474:2:32", "type": "", "value": "32" } @@ -23748,15 +23174,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27883:3:32" + "src": "27459:3:32" }, "nodeType": "YulFunctionCall", - "src": "27883:18:32" + "src": "27459:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27903:1:32", + "src": "27479:1:32", "type": "", "value": "6" } @@ -23764,13 +23190,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27876:6:32" + "src": "27452:6:32" }, "nodeType": "YulFunctionCall", - "src": "27876:29:32" + "src": "27452:29:32" }, "nodeType": "YulExpressionStatement", - "src": "27876:29:32" + "src": "27452:29:32" }, { "expression": { @@ -23780,12 +23206,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27925:9:32" + "src": "27501:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27936:2:32", + "src": "27512:2:32", "type": "", "value": "64" } @@ -23793,16 +23219,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27921:3:32" + "src": "27497:3:32" }, "nodeType": "YulFunctionCall", - "src": "27921:18:32" + "src": "27497:18:32" }, { "hexValue": "4c4243303336", "kind": "string", "nodeType": "YulLiteral", - "src": "27941:8:32", + "src": "27517:8:32", "type": "", "value": "LBC036" } @@ -23810,28 +23236,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27914:6:32" + "src": "27490:6:32" }, "nodeType": "YulFunctionCall", - "src": "27914:36:32" + "src": "27490:36:32" }, "nodeType": "YulExpressionStatement", - "src": "27914:36:32" + "src": "27490:36:32" }, { "nodeType": "YulAssignment", - "src": "27959:26:32", + "src": "27535:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27971:9:32" + "src": "27547:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27982:2:32", + "src": "27558:2:32", "type": "", "value": "96" } @@ -23839,16 +23265,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27967:3:32" + "src": "27543:3:32" }, "nodeType": "YulFunctionCall", - "src": "27967:18:32" + "src": "27543:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "27959:4:32" + "src": "27535:4:32" } ] } @@ -23860,7 +23286,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "27813:9:32", + "src": "27389:9:32", "type": "" } ], @@ -23868,53 +23294,53 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "27827:4:32", + "src": "27403:4:32", "type": "" } ], - "src": "27662:329:32" + "src": "27238:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "28045:79:32", + "src": "27621:79:32", "statements": [ { "nodeType": "YulAssignment", - "src": "28055:17:32", + "src": "27631:17:32", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "28067:1:32" + "src": "27643:1:32" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "28070:1:32" + "src": "27646:1:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "28063:3:32" + "src": "27639:3:32" }, "nodeType": "YulFunctionCall", - "src": "28063:9:32" + "src": "27639:9:32" }, "variableNames": [ { "name": "diff", "nodeType": "YulIdentifier", - "src": "28055:4:32" + "src": "27631:4:32" } ] }, { "body": { "nodeType": "YulBlock", - "src": "28096:22:32", + "src": "27672:22:32", "statements": [ { "expression": { @@ -23922,13 +23348,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "28098:16:32" + "src": "27674:16:32" }, "nodeType": "YulFunctionCall", - "src": "28098:18:32" + "src": "27674:18:32" }, "nodeType": "YulExpressionStatement", - "src": "28098:18:32" + "src": "27674:18:32" } ] }, @@ -23937,24 +23363,24 @@ { "name": "diff", "nodeType": "YulIdentifier", - "src": "28087:4:32" + "src": "27663:4:32" }, { "name": "x", "nodeType": "YulIdentifier", - "src": "28093:1:32" + "src": "27669:1:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "28084:2:32" + "src": "27660:2:32" }, "nodeType": "YulFunctionCall", - "src": "28084:11:32" + "src": "27660:11:32" }, "nodeType": "YulIf", - "src": "28081:37:32" + "src": "27657:37:32" } ] }, @@ -23964,13 +23390,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "28027:1:32", + "src": "27603:1:32", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "28030:1:32", + "src": "27606:1:32", "type": "" } ], @@ -23978,31 +23404,31 @@ { "name": "diff", "nodeType": "YulTypedName", - "src": "28036:4:32", + "src": "27612:4:32", "type": "" } ], - "src": "27996:128:32" + "src": "27572:128:32" }, { "body": { "nodeType": "YulBlock", - "src": "28286:188:32", + "src": "27862:188:32", "statements": [ { "nodeType": "YulAssignment", - "src": "28296:26:32", + "src": "27872:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28308:9:32" + "src": "27884:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28319:2:32", + "src": "27895:2:32", "type": "", "value": "96" } @@ -24010,16 +23436,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28304:3:32" + "src": "27880:3:32" }, "nodeType": "YulFunctionCall", - "src": "28304:18:32" + "src": "27880:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "28296:4:32" + "src": "27872:4:32" } ] }, @@ -24029,14 +23455,14 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28338:9:32" + "src": "27914:9:32" }, { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "28353:6:32" + "src": "27929:6:32" }, { "arguments": [ @@ -24045,14 +23471,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "28369:3:32", + "src": "27945:3:32", "type": "", "value": "160" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28374:1:32", + "src": "27950:1:32", "type": "", "value": "1" } @@ -24060,15 +23486,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "28365:3:32" + "src": "27941:3:32" }, "nodeType": "YulFunctionCall", - "src": "28365:11:32" + "src": "27941:11:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28378:1:32", + "src": "27954:1:32", "type": "", "value": "1" } @@ -24076,31 +23502,31 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "28361:3:32" + "src": "27937:3:32" }, "nodeType": "YulFunctionCall", - "src": "28361:19:32" + "src": "27937:19:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "28349:3:32" + "src": "27925:3:32" }, "nodeType": "YulFunctionCall", - "src": "28349:32:32" + "src": "27925:32:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28331:6:32" + "src": "27907:6:32" }, "nodeType": "YulFunctionCall", - "src": "28331:51:32" + "src": "27907:51:32" }, "nodeType": "YulExpressionStatement", - "src": "28331:51:32" + "src": "27907:51:32" }, { "expression": { @@ -24110,12 +23536,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28402:9:32" + "src": "27978:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28413:2:32", + "src": "27989:2:32", "type": "", "value": "32" } @@ -24123,27 +23549,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28398:3:32" + "src": "27974:3:32" }, "nodeType": "YulFunctionCall", - "src": "28398:18:32" + "src": "27974:18:32" }, { "name": "value1", "nodeType": "YulIdentifier", - "src": "28418:6:32" + "src": "27994:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28391:6:32" + "src": "27967:6:32" }, "nodeType": "YulFunctionCall", - "src": "28391:34:32" + "src": "27967:34:32" }, "nodeType": "YulExpressionStatement", - "src": "28391:34:32" + "src": "27967:34:32" }, { "expression": { @@ -24153,12 +23579,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28445:9:32" + "src": "28021:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28456:2:32", + "src": "28032:2:32", "type": "", "value": "64" } @@ -24166,27 +23592,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28441:3:32" + "src": "28017:3:32" }, "nodeType": "YulFunctionCall", - "src": "28441:18:32" + "src": "28017:18:32" }, { "name": "value2", "nodeType": "YulIdentifier", - "src": "28461:6:32" + "src": "28037:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28434:6:32" + "src": "28010:6:32" }, "nodeType": "YulFunctionCall", - "src": "28434:34:32" + "src": "28010:34:32" }, "nodeType": "YulExpressionStatement", - "src": "28434:34:32" + "src": "28010:34:32" } ] }, @@ -24196,25 +23622,25 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "28239:9:32", + "src": "27815:9:32", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "28250:6:32", + "src": "27826:6:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "28258:6:32", + "src": "27834:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "28266:6:32", + "src": "27842:6:32", "type": "" } ], @@ -24222,53 +23648,53 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "28277:4:32", + "src": "27853:4:32", "type": "" } ], - "src": "28129:345:32" + "src": "27705:345:32" }, { "body": { "nodeType": "YulBlock", - "src": "28531:116:32", + "src": "28107:116:32", "statements": [ { "nodeType": "YulAssignment", - "src": "28541:20:32", + "src": "28117:20:32", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "28556:1:32" + "src": "28132:1:32" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "28559:1:32" + "src": "28135:1:32" } ], "functionName": { "name": "mul", "nodeType": "YulIdentifier", - "src": "28552:3:32" + "src": "28128:3:32" }, "nodeType": "YulFunctionCall", - "src": "28552:9:32" + "src": "28128:9:32" }, "variableNames": [ { "name": "product", "nodeType": "YulIdentifier", - "src": "28541:7:32" + "src": "28117:7:32" } ] }, { "body": { "nodeType": "YulBlock", - "src": "28619:22:32", + "src": "28195:22:32", "statements": [ { "expression": { @@ -24276,13 +23702,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "28621:16:32" + "src": "28197:16:32" }, "nodeType": "YulFunctionCall", - "src": "28621:18:32" + "src": "28197:18:32" }, "nodeType": "YulExpressionStatement", - "src": "28621:18:32" + "src": "28197:18:32" } ] }, @@ -24295,74 +23721,74 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "28590:1:32" + "src": "28166:1:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "28583:6:32" + "src": "28159:6:32" }, "nodeType": "YulFunctionCall", - "src": "28583:9:32" + "src": "28159:9:32" }, { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "28597:1:32" + "src": "28173:1:32" }, { "arguments": [ { "name": "product", "nodeType": "YulIdentifier", - "src": "28604:7:32" + "src": "28180:7:32" }, { "name": "x", "nodeType": "YulIdentifier", - "src": "28613:1:32" + "src": "28189:1:32" } ], "functionName": { "name": "div", "nodeType": "YulIdentifier", - "src": "28600:3:32" + "src": "28176:3:32" }, "nodeType": "YulFunctionCall", - "src": "28600:15:32" + "src": "28176:15:32" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "28594:2:32" + "src": "28170:2:32" }, "nodeType": "YulFunctionCall", - "src": "28594:22:32" + "src": "28170:22:32" } ], "functionName": { "name": "or", "nodeType": "YulIdentifier", - "src": "28580:2:32" + "src": "28156:2:32" }, "nodeType": "YulFunctionCall", - "src": "28580:37:32" + "src": "28156:37:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "28573:6:32" + "src": "28149:6:32" }, "nodeType": "YulFunctionCall", - "src": "28573:45:32" + "src": "28149:45:32" }, "nodeType": "YulIf", - "src": "28570:71:32" + "src": "28146:71:32" } ] }, @@ -24372,13 +23798,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "28510:1:32", + "src": "28086:1:32", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "28513:1:32", + "src": "28089:1:32", "type": "" } ], @@ -24386,16 +23812,16 @@ { "name": "product", "nodeType": "YulTypedName", - "src": "28519:7:32", + "src": "28095:7:32", "type": "" } ], - "src": "28479:168:32" + "src": "28055:168:32" }, { "body": { "nodeType": "YulBlock", - "src": "28684:95:32", + "src": "28260:95:32", "statements": [ { "expression": { @@ -24403,7 +23829,7 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "28701:1:32", + "src": "28277:1:32", "type": "", "value": "0" }, @@ -24412,14 +23838,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "28708:3:32", + "src": "28284:3:32", "type": "", "value": "224" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28713:10:32", + "src": "28289:10:32", "type": "", "value": "0x4e487b71" } @@ -24427,22 +23853,22 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "28704:3:32" + "src": "28280:3:32" }, "nodeType": "YulFunctionCall", - "src": "28704:20:32" + "src": "28280:20:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28694:6:32" + "src": "28270:6:32" }, "nodeType": "YulFunctionCall", - "src": "28694:31:32" + "src": "28270:31:32" }, "nodeType": "YulExpressionStatement", - "src": "28694:31:32" + "src": "28270:31:32" }, { "expression": { @@ -24450,14 +23876,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "28741:1:32", + "src": "28317:1:32", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28744:4:32", + "src": "28320:4:32", "type": "", "value": "0x12" } @@ -24465,13 +23891,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28734:6:32" + "src": "28310:6:32" }, "nodeType": "YulFunctionCall", - "src": "28734:15:32" + "src": "28310:15:32" }, "nodeType": "YulExpressionStatement", - "src": "28734:15:32" + "src": "28310:15:32" }, { "expression": { @@ -24479,14 +23905,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "28765:1:32", + "src": "28341:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28768:4:32", + "src": "28344:4:32", "type": "", "value": "0x24" } @@ -24494,29 +23920,29 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "28758:6:32" + "src": "28334:6:32" }, "nodeType": "YulFunctionCall", - "src": "28758:15:32" + "src": "28334:15:32" }, "nodeType": "YulExpressionStatement", - "src": "28758:15:32" + "src": "28334:15:32" } ] }, "name": "panic_error_0x12", "nodeType": "YulFunctionDefinition", - "src": "28652:127:32" + "src": "28228:127:32" }, { "body": { "nodeType": "YulBlock", - "src": "28830:74:32", + "src": "28406:74:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "28853:22:32", + "src": "28429:22:32", "statements": [ { "expression": { @@ -24524,13 +23950,13 @@ "functionName": { "name": "panic_error_0x12", "nodeType": "YulIdentifier", - "src": "28855:16:32" + "src": "28431:16:32" }, "nodeType": "YulFunctionCall", - "src": "28855:18:32" + "src": "28431:18:32" }, "nodeType": "YulExpressionStatement", - "src": "28855:18:32" + "src": "28431:18:32" } ] }, @@ -24539,49 +23965,49 @@ { "name": "y", "nodeType": "YulIdentifier", - "src": "28850:1:32" + "src": "28426:1:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "28843:6:32" + "src": "28419:6:32" }, "nodeType": "YulFunctionCall", - "src": "28843:9:32" + "src": "28419:9:32" }, "nodeType": "YulIf", - "src": "28840:35:32" + "src": "28416:35:32" }, { "nodeType": "YulAssignment", - "src": "28884:14:32", + "src": "28460:14:32", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "28893:1:32" + "src": "28469:1:32" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "28896:1:32" + "src": "28472:1:32" } ], "functionName": { "name": "div", "nodeType": "YulIdentifier", - "src": "28889:3:32" + "src": "28465:3:32" }, "nodeType": "YulFunctionCall", - "src": "28889:9:32" + "src": "28465:9:32" }, "variableNames": [ { "name": "r", "nodeType": "YulIdentifier", - "src": "28884:1:32" + "src": "28460:1:32" } ] } @@ -24593,13 +24019,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "28815:1:32", + "src": "28391:1:32", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "28818:1:32", + "src": "28394:1:32", "type": "" } ], @@ -24607,31 +24033,31 @@ { "name": "r", "nodeType": "YulTypedName", - "src": "28824:1:32", + "src": "28400:1:32", "type": "" } ], - "src": "28784:120:32" + "src": "28360:120:32" }, { "body": { "nodeType": "YulBlock", - "src": "29036:119:32", + "src": "28612:119:32", "statements": [ { "nodeType": "YulAssignment", - "src": "29046:26:32", + "src": "28622:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29058:9:32" + "src": "28634:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29069:2:32", + "src": "28645:2:32", "type": "", "value": "64" } @@ -24639,16 +24065,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29054:3:32" + "src": "28630:3:32" }, "nodeType": "YulFunctionCall", - "src": "29054:18:32" + "src": "28630:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "29046:4:32" + "src": "28622:4:32" } ] }, @@ -24658,24 +24084,24 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29088:9:32" + "src": "28664:9:32" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "29099:6:32" + "src": "28675:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29081:6:32" + "src": "28657:6:32" }, "nodeType": "YulFunctionCall", - "src": "29081:25:32" + "src": "28657:25:32" }, "nodeType": "YulExpressionStatement", - "src": "29081:25:32" + "src": "28657:25:32" }, { "expression": { @@ -24685,12 +24111,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29126:9:32" + "src": "28702:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29137:2:32", + "src": "28713:2:32", "type": "", "value": "32" } @@ -24698,27 +24124,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29122:3:32" + "src": "28698:3:32" }, "nodeType": "YulFunctionCall", - "src": "29122:18:32" + "src": "28698:18:32" }, { "name": "value1", "nodeType": "YulIdentifier", - "src": "29142:6:32" + "src": "28718:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29115:6:32" + "src": "28691:6:32" }, "nodeType": "YulFunctionCall", - "src": "29115:34:32" + "src": "28691:34:32" }, "nodeType": "YulExpressionStatement", - "src": "29115:34:32" + "src": "28691:34:32" } ] }, @@ -24728,19 +24154,19 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "28997:9:32", + "src": "28573:9:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "29008:6:32", + "src": "28584:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "29016:6:32", + "src": "28592:6:32", "type": "" } ], @@ -24748,16 +24174,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "29027:4:32", + "src": "28603:4:32", "type": "" } ], - "src": "28909:246:32" + "src": "28485:246:32" }, { "body": { "nodeType": "YulBlock", - "src": "29204:64:32", + "src": "28780:64:32", "statements": [ { "expression": { @@ -24765,14 +24191,14 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "29221:3:32" + "src": "28797:3:32" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "29230:5:32" + "src": "28806:5:32" }, { "arguments": [ @@ -24783,14 +24209,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "29249:2:32", + "src": "28825:2:32", "type": "", "value": "96" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29253:1:32", + "src": "28829:1:32", "type": "", "value": "1" } @@ -24798,15 +24224,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "29245:3:32" + "src": "28821:3:32" }, "nodeType": "YulFunctionCall", - "src": "29245:10:32" + "src": "28821:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29257:1:32", + "src": "28833:1:32", "type": "", "value": "1" } @@ -24814,40 +24240,40 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "29241:3:32" + "src": "28817:3:32" }, "nodeType": "YulFunctionCall", - "src": "29241:18:32" + "src": "28817:18:32" } ], "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "29237:3:32" + "src": "28813:3:32" }, "nodeType": "YulFunctionCall", - "src": "29237:23:32" + "src": "28813:23:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "29226:3:32" + "src": "28802:3:32" }, "nodeType": "YulFunctionCall", - "src": "29226:35:32" + "src": "28802:35:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29214:6:32" + "src": "28790:6:32" }, "nodeType": "YulFunctionCall", - "src": "29214:48:32" + "src": "28790:48:32" }, "nodeType": "YulExpressionStatement", - "src": "29214:48:32" + "src": "28790:48:32" } ] }, @@ -24857,22 +24283,22 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "29188:5:32", + "src": "28764:5:32", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "29195:3:32", + "src": "28771:3:32", "type": "" } ], - "src": "29160:108:32" + "src": "28736:108:32" }, { "body": { "nodeType": "YulBlock", - "src": "29316:51:32", + "src": "28892:51:32", "statements": [ { "expression": { @@ -24880,19 +24306,19 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "29333:3:32" + "src": "28909:3:32" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "29342:5:32" + "src": "28918:5:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29349:10:32", + "src": "28925:10:32", "type": "", "value": "0xffffffff" } @@ -24900,22 +24326,22 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "29338:3:32" + "src": "28914:3:32" }, "nodeType": "YulFunctionCall", - "src": "29338:22:32" + "src": "28914:22:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29326:6:32" + "src": "28902:6:32" }, "nodeType": "YulFunctionCall", - "src": "29326:35:32" + "src": "28902:35:32" }, "nodeType": "YulExpressionStatement", - "src": "29326:35:32" + "src": "28902:35:32" } ] }, @@ -24925,22 +24351,22 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "29300:5:32", + "src": "28876:5:32", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "29307:3:32", + "src": "28883:3:32", "type": "" } ], - "src": "29273:94:32" + "src": "28849:94:32" }, { "body": { "nodeType": "YulBlock", - "src": "29414:49:32", + "src": "28990:49:32", "statements": [ { "expression": { @@ -24948,42 +24374,42 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "29431:3:32" + "src": "29007:3:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "29447:1:32", + "src": "29023:1:32", "type": "", "value": "7" }, { "name": "value", "nodeType": "YulIdentifier", - "src": "29450:5:32" + "src": "29026:5:32" } ], "functionName": { "name": "signextend", "nodeType": "YulIdentifier", - "src": "29436:10:32" + "src": "29012:10:32" }, "nodeType": "YulFunctionCall", - "src": "29436:20:32" + "src": "29012:20:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29424:6:32" + "src": "29000:6:32" }, "nodeType": "YulFunctionCall", - "src": "29424:33:32" + "src": "29000:33:32" }, "nodeType": "YulExpressionStatement", - "src": "29424:33:32" + "src": "29000:33:32" } ] }, @@ -24993,30 +24419,30 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "29398:5:32", + "src": "28974:5:32", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "29405:3:32", + "src": "28981:3:32", "type": "" } ], - "src": "29372:91:32" + "src": "28948:91:32" }, { "body": { "nodeType": "YulBlock", - "src": "29529:2368:32", + "src": "29105:2368:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "29539:16:32", + "src": "29115:16:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "29549:6:32", + "src": "29125:6:32", "type": "", "value": "0x0280" }, @@ -25024,7 +24450,7 @@ { "name": "_1", "nodeType": "YulTypedName", - "src": "29543:2:32", + "src": "29119:2:32", "type": "" } ] @@ -25037,37 +24463,37 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "29589:5:32" + "src": "29165:5:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "29583:5:32" + "src": "29159:5:32" }, "nodeType": "YulFunctionCall", - "src": "29583:12:32" + "src": "29159:12:32" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "29597:3:32" + "src": "29173:3:32" } ], "functionName": { "name": "abi_encode_bytes20", "nodeType": "YulIdentifier", - "src": "29564:18:32" + "src": "29140:18:32" }, "nodeType": "YulFunctionCall", - "src": "29564:37:32" + "src": "29140:37:32" }, "nodeType": "YulExpressionStatement", - "src": "29564:37:32" + "src": "29140:37:32" }, { "nodeType": "YulVariableDeclaration", - "src": "29610:43:32", + "src": "29186:43:32", "value": { "arguments": [ { @@ -25075,12 +24501,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "29640:5:32" + "src": "29216:5:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29647:4:32", + "src": "29223:4:32", "type": "", "value": "0x20" } @@ -25088,25 +24514,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29636:3:32" + "src": "29212:3:32" }, "nodeType": "YulFunctionCall", - "src": "29636:16:32" + "src": "29212:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "29630:5:32" + "src": "29206:5:32" }, "nodeType": "YulFunctionCall", - "src": "29630:23:32" + "src": "29206:23:32" }, "variables": [ { "name": "memberValue0", "nodeType": "YulTypedName", - "src": "29614:12:32", + "src": "29190:12:32", "type": "" } ] @@ -25117,19 +24543,19 @@ { "name": "memberValue0", "nodeType": "YulIdentifier", - "src": "29681:12:32" + "src": "29257:12:32" }, { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "29699:3:32" + "src": "29275:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29704:4:32", + "src": "29280:4:32", "type": "", "value": "0x20" } @@ -25137,26 +24563,26 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29695:3:32" + "src": "29271:3:32" }, "nodeType": "YulFunctionCall", - "src": "29695:14:32" + "src": "29271:14:32" } ], "functionName": { "name": "abi_encode_address", "nodeType": "YulIdentifier", - "src": "29662:18:32" + "src": "29238:18:32" }, "nodeType": "YulFunctionCall", - "src": "29662:48:32" + "src": "29238:48:32" }, "nodeType": "YulExpressionStatement", - "src": "29662:48:32" + "src": "29238:48:32" }, { "nodeType": "YulVariableDeclaration", - "src": "29719:45:32", + "src": "29295:45:32", "value": { "arguments": [ { @@ -25164,12 +24590,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "29751:5:32" + "src": "29327:5:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29758:4:32", + "src": "29334:4:32", "type": "", "value": "0x40" } @@ -25177,25 +24603,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29747:3:32" + "src": "29323:3:32" }, "nodeType": "YulFunctionCall", - "src": "29747:16:32" + "src": "29323:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "29741:5:32" + "src": "29317:5:32" }, "nodeType": "YulFunctionCall", - "src": "29741:23:32" + "src": "29317:23:32" }, "variables": [ { "name": "memberValue0_1", "nodeType": "YulTypedName", - "src": "29723:14:32", + "src": "29299:14:32", "type": "" } ] @@ -25206,19 +24632,19 @@ { "name": "memberValue0_1", "nodeType": "YulIdentifier", - "src": "29792:14:32" + "src": "29368:14:32" }, { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "29812:3:32" + "src": "29388:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29817:4:32", + "src": "29393:4:32", "type": "", "value": "0x40" } @@ -25226,26 +24652,26 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29808:3:32" + "src": "29384:3:32" }, "nodeType": "YulFunctionCall", - "src": "29808:14:32" + "src": "29384:14:32" } ], "functionName": { "name": "abi_encode_address", "nodeType": "YulIdentifier", - "src": "29773:18:32" + "src": "29349:18:32" }, "nodeType": "YulFunctionCall", - "src": "29773:50:32" + "src": "29349:50:32" }, "nodeType": "YulExpressionStatement", - "src": "29773:50:32" + "src": "29349:50:32" }, { "nodeType": "YulVariableDeclaration", - "src": "29832:45:32", + "src": "29408:45:32", "value": { "arguments": [ { @@ -25253,12 +24679,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "29864:5:32" + "src": "29440:5:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29871:4:32", + "src": "29447:4:32", "type": "", "value": "0x60" } @@ -25266,25 +24692,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29860:3:32" + "src": "29436:3:32" }, "nodeType": "YulFunctionCall", - "src": "29860:16:32" + "src": "29436:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "29854:5:32" + "src": "29430:5:32" }, "nodeType": "YulFunctionCall", - "src": "29854:23:32" + "src": "29430:23:32" }, "variables": [ { "name": "memberValue0_2", "nodeType": "YulTypedName", - "src": "29836:14:32", + "src": "29412:14:32", "type": "" } ] @@ -25297,12 +24723,12 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "29897:3:32" + "src": "29473:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29902:4:32", + "src": "29478:4:32", "type": "", "value": "0x60" } @@ -25310,80 +24736,80 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29893:3:32" + "src": "29469:3:32" }, "nodeType": "YulFunctionCall", - "src": "29893:14:32" + "src": "29469:14:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "29909:2:32" + "src": "29485:2:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29886:6:32" + "src": "29462:6:32" }, "nodeType": "YulFunctionCall", - "src": "29886:26:32" + "src": "29462:26:32" }, "nodeType": "YulExpressionStatement", - "src": "29886:26:32" + "src": "29462:26:32" }, { "nodeType": "YulVariableDeclaration", - "src": "29921:59:32", + "src": "29497:59:32", "value": { "arguments": [ { "name": "memberValue0_2", "nodeType": "YulIdentifier", - "src": "29951:14:32" + "src": "29527:14:32" }, { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "29971:3:32" + "src": "29547:3:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "29976:2:32" + "src": "29552:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29967:3:32" + "src": "29543:3:32" }, "nodeType": "YulFunctionCall", - "src": "29967:12:32" + "src": "29543:12:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "29933:17:32" + "src": "29509:17:32" }, "nodeType": "YulFunctionCall", - "src": "29933:47:32" + "src": "29509:47:32" }, "variables": [ { "name": "tail", "nodeType": "YulTypedName", - "src": "29925:4:32", + "src": "29501:4:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "29989:45:32", + "src": "29565:45:32", "value": { "arguments": [ { @@ -25391,12 +24817,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "30021:5:32" + "src": "29597:5:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30028:4:32", + "src": "29604:4:32", "type": "", "value": "0x80" } @@ -25404,25 +24830,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30017:3:32" + "src": "29593:3:32" }, "nodeType": "YulFunctionCall", - "src": "30017:16:32" + "src": "29593:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "30011:5:32" + "src": "29587:5:32" }, "nodeType": "YulFunctionCall", - "src": "30011:23:32" + "src": "29587:23:32" }, "variables": [ { "name": "memberValue0_3", "nodeType": "YulTypedName", - "src": "29993:14:32", + "src": "29569:14:32", "type": "" } ] @@ -25433,19 +24859,19 @@ { "name": "memberValue0_3", "nodeType": "YulIdentifier", - "src": "30062:14:32" + "src": "29638:14:32" }, { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30082:3:32" + "src": "29658:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30087:4:32", + "src": "29663:4:32", "type": "", "value": "0x80" } @@ -25453,26 +24879,26 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30078:3:32" + "src": "29654:3:32" }, "nodeType": "YulFunctionCall", - "src": "30078:14:32" + "src": "29654:14:32" } ], "functionName": { "name": "abi_encode_address", "nodeType": "YulIdentifier", - "src": "30043:18:32" + "src": "29619:18:32" }, "nodeType": "YulFunctionCall", - "src": "30043:50:32" + "src": "29619:50:32" }, "nodeType": "YulExpressionStatement", - "src": "30043:50:32" + "src": "29619:50:32" }, { "nodeType": "YulVariableDeclaration", - "src": "30102:45:32", + "src": "29678:45:32", "value": { "arguments": [ { @@ -25480,12 +24906,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "30134:5:32" + "src": "29710:5:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30141:4:32", + "src": "29717:4:32", "type": "", "value": "0xa0" } @@ -25493,25 +24919,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30130:3:32" + "src": "29706:3:32" }, "nodeType": "YulFunctionCall", - "src": "30130:16:32" + "src": "29706:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "30124:5:32" + "src": "29700:5:32" }, "nodeType": "YulFunctionCall", - "src": "30124:23:32" + "src": "29700:23:32" }, "variables": [ { "name": "memberValue0_4", "nodeType": "YulTypedName", - "src": "30106:14:32", + "src": "29682:14:32", "type": "" } ] @@ -25524,12 +24950,12 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30167:3:32" + "src": "29743:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30172:4:32", + "src": "29748:4:32", "type": "", "value": "0xa0" } @@ -25537,73 +24963,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30163:3:32" + "src": "29739:3:32" }, "nodeType": "YulFunctionCall", - "src": "30163:14:32" + "src": "29739:14:32" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "30183:4:32" + "src": "29759:4:32" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "30189:3:32" + "src": "29765:3:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "30179:3:32" + "src": "29755:3:32" }, "nodeType": "YulFunctionCall", - "src": "30179:14:32" + "src": "29755:14:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "30156:6:32" + "src": "29732:6:32" }, "nodeType": "YulFunctionCall", - "src": "30156:38:32" + "src": "29732:38:32" }, "nodeType": "YulExpressionStatement", - "src": "30156:38:32" + "src": "29732:38:32" }, { "nodeType": "YulVariableDeclaration", - "src": "30203:53:32", + "src": "29779:53:32", "value": { "arguments": [ { "name": "memberValue0_4", "nodeType": "YulIdentifier", - "src": "30235:14:32" + "src": "29811:14:32" }, { "name": "tail", "nodeType": "YulIdentifier", - "src": "30251:4:32" + "src": "29827:4:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "30217:17:32" + "src": "29793:17:32" }, "nodeType": "YulFunctionCall", - "src": "30217:39:32" + "src": "29793:39:32" }, "variables": [ { "name": "tail_1", "nodeType": "YulTypedName", - "src": "30207:6:32", + "src": "29783:6:32", "type": "" } ] @@ -25616,12 +25042,12 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30276:3:32" + "src": "29852:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30281:4:32", + "src": "29857:4:32", "type": "", "value": "0xc0" } @@ -25629,10 +25055,10 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30272:3:32" + "src": "29848:3:32" }, "nodeType": "YulFunctionCall", - "src": "30272:14:32" + "src": "29848:14:32" }, { "arguments": [ @@ -25641,12 +25067,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "30298:5:32" + "src": "29874:5:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30305:4:32", + "src": "29881:4:32", "type": "", "value": "0xc0" } @@ -25654,31 +25080,31 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30294:3:32" + "src": "29870:3:32" }, "nodeType": "YulFunctionCall", - "src": "30294:16:32" + "src": "29870:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "30288:5:32" + "src": "29864:5:32" }, "nodeType": "YulFunctionCall", - "src": "30288:23:32" + "src": "29864:23:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "30265:6:32" + "src": "29841:6:32" }, "nodeType": "YulFunctionCall", - "src": "30265:47:32" + "src": "29841:47:32" }, "nodeType": "YulExpressionStatement", - "src": "30265:47:32" + "src": "29841:47:32" }, { "expression": { @@ -25688,12 +25114,12 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30332:3:32" + "src": "29908:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30337:4:32", + "src": "29913:4:32", "type": "", "value": "0xe0" } @@ -25701,10 +25127,10 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30328:3:32" + "src": "29904:3:32" }, "nodeType": "YulFunctionCall", - "src": "30328:14:32" + "src": "29904:14:32" }, { "arguments": [ @@ -25713,12 +25139,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "30354:5:32" + "src": "29930:5:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30361:4:32", + "src": "29937:4:32", "type": "", "value": "0xe0" } @@ -25726,39 +25152,39 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30350:3:32" + "src": "29926:3:32" }, "nodeType": "YulFunctionCall", - "src": "30350:16:32" + "src": "29926:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "30344:5:32" + "src": "29920:5:32" }, "nodeType": "YulFunctionCall", - "src": "30344:23:32" + "src": "29920:23:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "30321:6:32" + "src": "29897:6:32" }, "nodeType": "YulFunctionCall", - "src": "30321:47:32" + "src": "29897:47:32" }, "nodeType": "YulExpressionStatement", - "src": "30321:47:32" + "src": "29897:47:32" }, { "nodeType": "YulVariableDeclaration", - "src": "30377:16:32", + "src": "29953:16:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "30387:6:32", + "src": "29963:6:32", "type": "", "value": "0x0100" }, @@ -25766,14 +25192,14 @@ { "name": "_2", "nodeType": "YulTypedName", - "src": "30381:2:32", + "src": "29957:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "30402:43:32", + "src": "29978:43:32", "value": { "arguments": [ { @@ -25781,36 +25207,36 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "30434:5:32" + "src": "30010:5:32" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "30441:2:32" + "src": "30017:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30430:3:32" + "src": "30006:3:32" }, "nodeType": "YulFunctionCall", - "src": "30430:14:32" + "src": "30006:14:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "30424:5:32" + "src": "30000:5:32" }, "nodeType": "YulFunctionCall", - "src": "30424:21:32" + "src": "30000:21:32" }, "variables": [ { "name": "memberValue0_5", "nodeType": "YulTypedName", - "src": "30406:14:32", + "src": "29982:14:32", "type": "" } ] @@ -25821,48 +25247,48 @@ { "name": "memberValue0_5", "nodeType": "YulIdentifier", - "src": "30473:14:32" + "src": "30049:14:32" }, { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30493:3:32" + "src": "30069:3:32" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "30498:2:32" + "src": "30074:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30489:3:32" + "src": "30065:3:32" }, "nodeType": "YulFunctionCall", - "src": "30489:12:32" + "src": "30065:12:32" } ], "functionName": { "name": "abi_encode_address", "nodeType": "YulIdentifier", - "src": "30454:18:32" + "src": "30030:18:32" }, "nodeType": "YulFunctionCall", - "src": "30454:48:32" + "src": "30030:48:32" }, "nodeType": "YulExpressionStatement", - "src": "30454:48:32" + "src": "30030:48:32" }, { "nodeType": "YulVariableDeclaration", - "src": "30511:16:32", + "src": "30087:16:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "30521:6:32", + "src": "30097:6:32", "type": "", "value": "0x0120" }, @@ -25870,14 +25296,14 @@ { "name": "_3", "nodeType": "YulTypedName", - "src": "30515:2:32", + "src": "30091:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "30536:43:32", + "src": "30112:43:32", "value": { "arguments": [ { @@ -25885,36 +25311,36 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "30568:5:32" + "src": "30144:5:32" }, { "name": "_3", "nodeType": "YulIdentifier", - "src": "30575:2:32" + "src": "30151:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30564:3:32" + "src": "30140:3:32" }, "nodeType": "YulFunctionCall", - "src": "30564:14:32" + "src": "30140:14:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "30558:5:32" + "src": "30134:5:32" }, "nodeType": "YulFunctionCall", - "src": "30558:21:32" + "src": "30134:21:32" }, "variables": [ { "name": "memberValue0_6", "nodeType": "YulTypedName", - "src": "30540:14:32", + "src": "30116:14:32", "type": "" } ] @@ -25927,95 +25353,95 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30599:3:32" + "src": "30175:3:32" }, { "name": "_3", "nodeType": "YulIdentifier", - "src": "30604:2:32" + "src": "30180:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30595:3:32" + "src": "30171:3:32" }, "nodeType": "YulFunctionCall", - "src": "30595:12:32" + "src": "30171:12:32" }, { "arguments": [ { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "30613:6:32" + "src": "30189:6:32" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "30621:3:32" + "src": "30197:3:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "30609:3:32" + "src": "30185:3:32" }, "nodeType": "YulFunctionCall", - "src": "30609:16:32" + "src": "30185:16:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "30588:6:32" + "src": "30164:6:32" }, "nodeType": "YulFunctionCall", - "src": "30588:38:32" + "src": "30164:38:32" }, "nodeType": "YulExpressionStatement", - "src": "30588:38:32" + "src": "30164:38:32" }, { "nodeType": "YulVariableDeclaration", - "src": "30635:55:32", + "src": "30211:55:32", "value": { "arguments": [ { "name": "memberValue0_6", "nodeType": "YulIdentifier", - "src": "30667:14:32" + "src": "30243:14:32" }, { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "30683:6:32" + "src": "30259:6:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "30649:17:32" + "src": "30225:17:32" }, "nodeType": "YulFunctionCall", - "src": "30649:41:32" + "src": "30225:41:32" }, "variables": [ { "name": "tail_2", "nodeType": "YulTypedName", - "src": "30639:6:32", + "src": "30215:6:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "30699:16:32", + "src": "30275:16:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "30709:6:32", + "src": "30285:6:32", "type": "", "value": "0x0140" }, @@ -26023,14 +25449,14 @@ { "name": "_4", "nodeType": "YulTypedName", - "src": "30703:2:32", + "src": "30279:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "30724:43:32", + "src": "30300:43:32", "value": { "arguments": [ { @@ -26038,36 +25464,36 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "30756:5:32" + "src": "30332:5:32" }, { "name": "_4", "nodeType": "YulIdentifier", - "src": "30763:2:32" + "src": "30339:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30752:3:32" + "src": "30328:3:32" }, "nodeType": "YulFunctionCall", - "src": "30752:14:32" + "src": "30328:14:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "30746:5:32" + "src": "30322:5:32" }, "nodeType": "YulFunctionCall", - "src": "30746:21:32" + "src": "30322:21:32" }, "variables": [ { "name": "memberValue0_7", "nodeType": "YulTypedName", - "src": "30728:14:32", + "src": "30304:14:32", "type": "" } ] @@ -26078,48 +25504,48 @@ { "name": "memberValue0_7", "nodeType": "YulIdentifier", - "src": "30794:14:32" + "src": "30370:14:32" }, { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30814:3:32" + "src": "30390:3:32" }, { "name": "_4", "nodeType": "YulIdentifier", - "src": "30819:2:32" + "src": "30395:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30810:3:32" + "src": "30386:3:32" }, "nodeType": "YulFunctionCall", - "src": "30810:12:32" + "src": "30386:12:32" } ], "functionName": { "name": "abi_encode_uint32", "nodeType": "YulIdentifier", - "src": "30776:17:32" + "src": "30352:17:32" }, "nodeType": "YulFunctionCall", - "src": "30776:47:32" + "src": "30352:47:32" }, "nodeType": "YulExpressionStatement", - "src": "30776:47:32" + "src": "30352:47:32" }, { "nodeType": "YulVariableDeclaration", - "src": "30832:16:32", + "src": "30408:16:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "30842:6:32", + "src": "30418:6:32", "type": "", "value": "0x0160" }, @@ -26127,14 +25553,14 @@ { "name": "_5", "nodeType": "YulTypedName", - "src": "30836:2:32", + "src": "30412:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "30857:43:32", + "src": "30433:43:32", "value": { "arguments": [ { @@ -26142,36 +25568,36 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "30889:5:32" + "src": "30465:5:32" }, { "name": "_5", "nodeType": "YulIdentifier", - "src": "30896:2:32" + "src": "30472:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30885:3:32" + "src": "30461:3:32" }, "nodeType": "YulFunctionCall", - "src": "30885:14:32" + "src": "30461:14:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "30879:5:32" + "src": "30455:5:32" }, "nodeType": "YulFunctionCall", - "src": "30879:21:32" + "src": "30455:21:32" }, "variables": [ { "name": "memberValue0_8", "nodeType": "YulTypedName", - "src": "30861:14:32", + "src": "30437:14:32", "type": "" } ] @@ -26182,48 +25608,48 @@ { "name": "memberValue0_8", "nodeType": "YulIdentifier", - "src": "30926:14:32" + "src": "30502:14:32" }, { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30946:3:32" + "src": "30522:3:32" }, { "name": "_5", "nodeType": "YulIdentifier", - "src": "30951:2:32" + "src": "30527:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30942:3:32" + "src": "30518:3:32" }, "nodeType": "YulFunctionCall", - "src": "30942:12:32" + "src": "30518:12:32" } ], "functionName": { "name": "abi_encode_int64", "nodeType": "YulIdentifier", - "src": "30909:16:32" + "src": "30485:16:32" }, "nodeType": "YulFunctionCall", - "src": "30909:46:32" + "src": "30485:46:32" }, "nodeType": "YulExpressionStatement", - "src": "30909:46:32" + "src": "30485:46:32" }, { "nodeType": "YulVariableDeclaration", - "src": "30964:16:32", + "src": "30540:16:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "30974:6:32", + "src": "30550:6:32", "type": "", "value": "0x0180" }, @@ -26231,7 +25657,7 @@ { "name": "_6", "nodeType": "YulTypedName", - "src": "30968:2:32", + "src": "30544:2:32", "type": "" } ] @@ -26244,21 +25670,21 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31000:3:32" + "src": "30576:3:32" }, { "name": "_6", "nodeType": "YulIdentifier", - "src": "31005:2:32" + "src": "30581:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30996:3:32" + "src": "30572:3:32" }, "nodeType": "YulFunctionCall", - "src": "30996:12:32" + "src": "30572:12:32" }, { "arguments": [ @@ -26267,50 +25693,50 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "31020:5:32" + "src": "30596:5:32" }, { "name": "_6", "nodeType": "YulIdentifier", - "src": "31027:2:32" + "src": "30603:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31016:3:32" + "src": "30592:3:32" }, "nodeType": "YulFunctionCall", - "src": "31016:14:32" + "src": "30592:14:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "31010:5:32" + "src": "30586:5:32" }, "nodeType": "YulFunctionCall", - "src": "31010:21:32" + "src": "30586:21:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "30989:6:32" + "src": "30565:6:32" }, "nodeType": "YulFunctionCall", - "src": "30989:43:32" + "src": "30565:43:32" }, "nodeType": "YulExpressionStatement", - "src": "30989:43:32" + "src": "30565:43:32" }, { "nodeType": "YulVariableDeclaration", - "src": "31041:16:32", + "src": "30617:16:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "31051:6:32", + "src": "30627:6:32", "type": "", "value": "0x01a0" }, @@ -26318,14 +25744,14 @@ { "name": "_7", "nodeType": "YulTypedName", - "src": "31045:2:32", + "src": "30621:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "31066:43:32", + "src": "30642:43:32", "value": { "arguments": [ { @@ -26333,36 +25759,36 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "31098:5:32" + "src": "30674:5:32" }, { "name": "_7", "nodeType": "YulIdentifier", - "src": "31105:2:32" + "src": "30681:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31094:3:32" + "src": "30670:3:32" }, "nodeType": "YulFunctionCall", - "src": "31094:14:32" + "src": "30670:14:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "31088:5:32" + "src": "30664:5:32" }, "nodeType": "YulFunctionCall", - "src": "31088:21:32" + "src": "30664:21:32" }, "variables": [ { "name": "memberValue0_9", "nodeType": "YulTypedName", - "src": "31070:14:32", + "src": "30646:14:32", "type": "" } ] @@ -26373,48 +25799,48 @@ { "name": "memberValue0_9", "nodeType": "YulIdentifier", - "src": "31136:14:32" + "src": "30712:14:32" }, { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31156:3:32" + "src": "30732:3:32" }, { "name": "_7", "nodeType": "YulIdentifier", - "src": "31161:2:32" + "src": "30737:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31152:3:32" + "src": "30728:3:32" }, "nodeType": "YulFunctionCall", - "src": "31152:12:32" + "src": "30728:12:32" } ], "functionName": { "name": "abi_encode_uint32", "nodeType": "YulIdentifier", - "src": "31118:17:32" + "src": "30694:17:32" }, "nodeType": "YulFunctionCall", - "src": "31118:47:32" + "src": "30694:47:32" }, "nodeType": "YulExpressionStatement", - "src": "31118:47:32" + "src": "30694:47:32" }, { "nodeType": "YulVariableDeclaration", - "src": "31174:16:32", + "src": "30750:16:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "31184:6:32", + "src": "30760:6:32", "type": "", "value": "0x01c0" }, @@ -26422,14 +25848,14 @@ { "name": "_8", "nodeType": "YulTypedName", - "src": "31178:2:32", + "src": "30754:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "31199:44:32", + "src": "30775:44:32", "value": { "arguments": [ { @@ -26437,36 +25863,36 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "31232:5:32" + "src": "30808:5:32" }, { "name": "_8", "nodeType": "YulIdentifier", - "src": "31239:2:32" + "src": "30815:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31228:3:32" + "src": "30804:3:32" }, "nodeType": "YulFunctionCall", - "src": "31228:14:32" + "src": "30804:14:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "31222:5:32" + "src": "30798:5:32" }, "nodeType": "YulFunctionCall", - "src": "31222:21:32" + "src": "30798:21:32" }, "variables": [ { "name": "memberValue0_10", "nodeType": "YulTypedName", - "src": "31203:15:32", + "src": "30779:15:32", "type": "" } ] @@ -26477,48 +25903,48 @@ { "name": "memberValue0_10", "nodeType": "YulIdentifier", - "src": "31270:15:32" + "src": "30846:15:32" }, { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31291:3:32" + "src": "30867:3:32" }, { "name": "_8", "nodeType": "YulIdentifier", - "src": "31296:2:32" + "src": "30872:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31287:3:32" + "src": "30863:3:32" }, "nodeType": "YulFunctionCall", - "src": "31287:12:32" + "src": "30863:12:32" } ], "functionName": { "name": "abi_encode_uint32", "nodeType": "YulIdentifier", - "src": "31252:17:32" + "src": "30828:17:32" }, "nodeType": "YulFunctionCall", - "src": "31252:48:32" + "src": "30828:48:32" }, "nodeType": "YulExpressionStatement", - "src": "31252:48:32" + "src": "30828:48:32" }, { "nodeType": "YulVariableDeclaration", - "src": "31309:16:32", + "src": "30885:16:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "31319:6:32", + "src": "30895:6:32", "type": "", "value": "0x01e0" }, @@ -26526,14 +25952,14 @@ { "name": "_9", "nodeType": "YulTypedName", - "src": "31313:2:32", + "src": "30889:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "31334:44:32", + "src": "30910:44:32", "value": { "arguments": [ { @@ -26541,36 +25967,36 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "31367:5:32" + "src": "30943:5:32" }, { "name": "_9", "nodeType": "YulIdentifier", - "src": "31374:2:32" + "src": "30950:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31363:3:32" + "src": "30939:3:32" }, "nodeType": "YulFunctionCall", - "src": "31363:14:32" + "src": "30939:14:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "31357:5:32" + "src": "30933:5:32" }, "nodeType": "YulFunctionCall", - "src": "31357:21:32" + "src": "30933:21:32" }, "variables": [ { "name": "memberValue0_11", "nodeType": "YulTypedName", - "src": "31338:15:32", + "src": "30914:15:32", "type": "" } ] @@ -26581,48 +26007,48 @@ { "name": "memberValue0_11", "nodeType": "YulIdentifier", - "src": "31405:15:32" + "src": "30981:15:32" }, { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31426:3:32" + "src": "31002:3:32" }, { "name": "_9", "nodeType": "YulIdentifier", - "src": "31431:2:32" + "src": "31007:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31422:3:32" + "src": "30998:3:32" }, "nodeType": "YulFunctionCall", - "src": "31422:12:32" + "src": "30998:12:32" } ], "functionName": { "name": "abi_encode_uint32", "nodeType": "YulIdentifier", - "src": "31387:17:32" + "src": "30963:17:32" }, "nodeType": "YulFunctionCall", - "src": "31387:48:32" + "src": "30963:48:32" }, "nodeType": "YulExpressionStatement", - "src": "31387:48:32" + "src": "30963:48:32" }, { "nodeType": "YulVariableDeclaration", - "src": "31444:17:32", + "src": "31020:17:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "31455:6:32", + "src": "31031:6:32", "type": "", "value": "0x0200" }, @@ -26630,14 +26056,14 @@ { "name": "_10", "nodeType": "YulTypedName", - "src": "31448:3:32", + "src": "31024:3:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "31470:45:32", + "src": "31046:45:32", "value": { "arguments": [ { @@ -26645,36 +26071,36 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "31503:5:32" + "src": "31079:5:32" }, { "name": "_10", "nodeType": "YulIdentifier", - "src": "31510:3:32" + "src": "31086:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31499:3:32" + "src": "31075:3:32" }, "nodeType": "YulFunctionCall", - "src": "31499:15:32" + "src": "31075:15:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "31493:5:32" + "src": "31069:5:32" }, "nodeType": "YulFunctionCall", - "src": "31493:22:32" + "src": "31069:22:32" }, "variables": [ { "name": "memberValue0_12", "nodeType": "YulTypedName", - "src": "31474:15:32", + "src": "31050:15:32", "type": "" } ] @@ -26685,48 +26111,48 @@ { "name": "memberValue0_12", "nodeType": "YulIdentifier", - "src": "31542:15:32" + "src": "31118:15:32" }, { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31563:3:32" + "src": "31139:3:32" }, { "name": "_10", "nodeType": "YulIdentifier", - "src": "31568:3:32" + "src": "31144:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31559:3:32" + "src": "31135:3:32" }, "nodeType": "YulFunctionCall", - "src": "31559:13:32" + "src": "31135:13:32" } ], "functionName": { "name": "abi_encode_uint16", "nodeType": "YulIdentifier", - "src": "31524:17:32" + "src": "31100:17:32" }, "nodeType": "YulFunctionCall", - "src": "31524:49:32" + "src": "31100:49:32" }, "nodeType": "YulExpressionStatement", - "src": "31524:49:32" + "src": "31100:49:32" }, { "nodeType": "YulVariableDeclaration", - "src": "31582:17:32", + "src": "31158:17:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "31593:6:32", + "src": "31169:6:32", "type": "", "value": "0x0220" }, @@ -26734,14 +26160,14 @@ { "name": "_11", "nodeType": "YulTypedName", - "src": "31586:3:32", + "src": "31162:3:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "31608:45:32", + "src": "31184:45:32", "value": { "arguments": [ { @@ -26749,36 +26175,36 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "31641:5:32" + "src": "31217:5:32" }, { "name": "_11", "nodeType": "YulIdentifier", - "src": "31648:3:32" + "src": "31224:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31637:3:32" + "src": "31213:3:32" }, "nodeType": "YulFunctionCall", - "src": "31637:15:32" + "src": "31213:15:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "31631:5:32" + "src": "31207:5:32" }, "nodeType": "YulFunctionCall", - "src": "31631:22:32" + "src": "31207:22:32" }, "variables": [ { "name": "memberValue0_13", "nodeType": "YulTypedName", - "src": "31612:15:32", + "src": "31188:15:32", "type": "" } ] @@ -26789,48 +26215,48 @@ { "name": "memberValue0_13", "nodeType": "YulIdentifier", - "src": "31678:15:32" + "src": "31254:15:32" }, { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31699:3:32" + "src": "31275:3:32" }, { "name": "_11", "nodeType": "YulIdentifier", - "src": "31704:3:32" + "src": "31280:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31695:3:32" + "src": "31271:3:32" }, "nodeType": "YulFunctionCall", - "src": "31695:13:32" + "src": "31271:13:32" } ], "functionName": { "name": "abi_encode_bool", "nodeType": "YulIdentifier", - "src": "31662:15:32" + "src": "31238:15:32" }, "nodeType": "YulFunctionCall", - "src": "31662:47:32" + "src": "31238:47:32" }, "nodeType": "YulExpressionStatement", - "src": "31662:47:32" + "src": "31238:47:32" }, { "nodeType": "YulVariableDeclaration", - "src": "31718:17:32", + "src": "31294:17:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "31729:6:32", + "src": "31305:6:32", "type": "", "value": "0x0240" }, @@ -26838,7 +26264,7 @@ { "name": "_12", "nodeType": "YulTypedName", - "src": "31722:3:32", + "src": "31298:3:32", "type": "" } ] @@ -26851,21 +26277,21 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31755:3:32" + "src": "31331:3:32" }, { "name": "_12", "nodeType": "YulIdentifier", - "src": "31760:3:32" + "src": "31336:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31751:3:32" + "src": "31327:3:32" }, "nodeType": "YulFunctionCall", - "src": "31751:13:32" + "src": "31327:13:32" }, { "arguments": [ @@ -26874,50 +26300,50 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "31776:5:32" + "src": "31352:5:32" }, { "name": "_12", "nodeType": "YulIdentifier", - "src": "31783:3:32" + "src": "31359:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31772:3:32" + "src": "31348:3:32" }, "nodeType": "YulFunctionCall", - "src": "31772:15:32" + "src": "31348:15:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "31766:5:32" + "src": "31342:5:32" }, "nodeType": "YulFunctionCall", - "src": "31766:22:32" + "src": "31342:22:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "31744:6:32" + "src": "31320:6:32" }, "nodeType": "YulFunctionCall", - "src": "31744:45:32" + "src": "31320:45:32" }, "nodeType": "YulExpressionStatement", - "src": "31744:45:32" + "src": "31320:45:32" }, { "nodeType": "YulVariableDeclaration", - "src": "31798:17:32", + "src": "31374:17:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "31809:6:32", + "src": "31385:6:32", "type": "", "value": "0x0260" }, @@ -26925,7 +26351,7 @@ { "name": "_13", "nodeType": "YulTypedName", - "src": "31802:3:32", + "src": "31378:3:32", "type": "" } ] @@ -26938,21 +26364,21 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31835:3:32" + "src": "31411:3:32" }, { "name": "_13", "nodeType": "YulIdentifier", - "src": "31840:3:32" + "src": "31416:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31831:3:32" + "src": "31407:3:32" }, "nodeType": "YulFunctionCall", - "src": "31831:13:32" + "src": "31407:13:32" }, { "arguments": [ @@ -26961,56 +26387,56 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "31856:5:32" + "src": "31432:5:32" }, { "name": "_13", "nodeType": "YulIdentifier", - "src": "31863:3:32" + "src": "31439:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31852:3:32" + "src": "31428:3:32" }, "nodeType": "YulFunctionCall", - "src": "31852:15:32" + "src": "31428:15:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "31846:5:32" + "src": "31422:5:32" }, "nodeType": "YulFunctionCall", - "src": "31846:22:32" + "src": "31422:22:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "31824:6:32" + "src": "31400:6:32" }, "nodeType": "YulFunctionCall", - "src": "31824:45:32" + "src": "31400:45:32" }, "nodeType": "YulExpressionStatement", - "src": "31824:45:32" + "src": "31400:45:32" }, { "nodeType": "YulAssignment", - "src": "31878:13:32", + "src": "31454:13:32", "value": { "name": "tail_2", "nodeType": "YulIdentifier", - "src": "31885:6:32" + "src": "31461:6:32" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "31878:3:32" + "src": "31454:3:32" } ] } @@ -27022,13 +26448,13 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "29506:5:32", + "src": "29082:5:32", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "29513:3:32", + "src": "29089:3:32", "type": "" } ], @@ -27036,16 +26462,16 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "29521:3:32", + "src": "29097:3:32", "type": "" } ], - "src": "29468:2429:32" + "src": "29044:2429:32" }, { "body": { "nodeType": "YulBlock", - "src": "32097:153:32", + "src": "31673:153:32", "statements": [ { "expression": { @@ -27053,12 +26479,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "32114:9:32" + "src": "31690:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "32125:2:32", + "src": "31701:2:32", "type": "", "value": "64" } @@ -27066,35 +26492,35 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "32107:6:32" + "src": "31683:6:32" }, "nodeType": "YulFunctionCall", - "src": "32107:21:32" + "src": "31683:21:32" }, "nodeType": "YulExpressionStatement", - "src": "32107:21:32" + "src": "31683:21:32" }, { "nodeType": "YulAssignment", - "src": "32137:64:32", + "src": "31713:64:32", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "32174:6:32" + "src": "31750:6:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "32186:9:32" + "src": "31762:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "32197:2:32", + "src": "31773:2:32", "type": "", "value": "64" } @@ -27102,25 +26528,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "32182:3:32" + "src": "31758:3:32" }, "nodeType": "YulFunctionCall", - "src": "32182:18:32" + "src": "31758:18:32" } ], "functionName": { "name": "abi_encode_struct_PeginQuote", "nodeType": "YulIdentifier", - "src": "32145:28:32" + "src": "31721:28:32" }, "nodeType": "YulFunctionCall", - "src": "32145:56:32" + "src": "31721:56:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "32137:4:32" + "src": "31713:4:32" } ] }, @@ -27132,12 +26558,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "32221:9:32" + "src": "31797:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "32232:2:32", + "src": "31808:2:32", "type": "", "value": "32" } @@ -27145,49 +26571,49 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "32217:3:32" + "src": "31793:3:32" }, "nodeType": "YulFunctionCall", - "src": "32217:18:32" + "src": "31793:18:32" }, { "name": "value1", "nodeType": "YulIdentifier", - "src": "32237:6:32" + "src": "31813:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "32210:6:32" + "src": "31786:6:32" }, "nodeType": "YulFunctionCall", - "src": "32210:34:32" + "src": "31786:34:32" }, "nodeType": "YulExpressionStatement", - "src": "32210:34:32" + "src": "31786:34:32" } ] }, - "name": "abi_encode_tuple_t_struct$_PeginQuote_$10599_memory_ptr_t_uint256__to_t_struct$_PeginQuote_$10599_memory_ptr_t_uint256__fromStack_library_reversed", + "name": "abi_encode_tuple_t_struct$_PeginQuote_$11195_memory_ptr_t_uint256__to_t_struct$_PeginQuote_$11195_memory_ptr_t_uint256__fromStack_library_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "32058:9:32", + "src": "31634:9:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "32069:6:32", + "src": "31645:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "32077:6:32", + "src": "31653:6:32", "type": "" } ], @@ -27195,53 +26621,53 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "32088:4:32", + "src": "31664:4:32", "type": "" } ], - "src": "31902:348:32" + "src": "31478:348:32" }, { "body": { "nodeType": "YulBlock", - "src": "32303:77:32", + "src": "31879:77:32", "statements": [ { "nodeType": "YulAssignment", - "src": "32313:16:32", + "src": "31889:16:32", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "32324:1:32" + "src": "31900:1:32" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "32327:1:32" + "src": "31903:1:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "32320:3:32" + "src": "31896:3:32" }, "nodeType": "YulFunctionCall", - "src": "32320:9:32" + "src": "31896:9:32" }, "variableNames": [ { "name": "sum", "nodeType": "YulIdentifier", - "src": "32313:3:32" + "src": "31889:3:32" } ] }, { "body": { "nodeType": "YulBlock", - "src": "32352:22:32", + "src": "31928:22:32", "statements": [ { "expression": { @@ -27249,13 +26675,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "32354:16:32" + "src": "31930:16:32" }, "nodeType": "YulFunctionCall", - "src": "32354:18:32" + "src": "31930:18:32" }, "nodeType": "YulExpressionStatement", - "src": "32354:18:32" + "src": "31930:18:32" } ] }, @@ -27264,24 +26690,24 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "32344:1:32" + "src": "31920:1:32" }, { "name": "sum", "nodeType": "YulIdentifier", - "src": "32347:3:32" + "src": "31923:3:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "32341:2:32" + "src": "31917:2:32" }, "nodeType": "YulFunctionCall", - "src": "32341:10:32" + "src": "31917:10:32" }, "nodeType": "YulIf", - "src": "32338:36:32" + "src": "31914:36:32" } ] }, @@ -27291,13 +26717,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "32286:1:32", + "src": "31862:1:32", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "32289:1:32", + "src": "31865:1:32", "type": "" } ], @@ -27305,30 +26731,30 @@ { "name": "sum", "nodeType": "YulTypedName", - "src": "32295:3:32", + "src": "31871:3:32", "type": "" } ], - "src": "32255:125:32" + "src": "31831:125:32" }, { "body": { "nodeType": "YulBlock", - "src": "32576:14:32", + "src": "32152:14:32", "statements": [ { "nodeType": "YulAssignment", - "src": "32578:10:32", + "src": "32154:10:32", "value": { "name": "pos", "nodeType": "YulIdentifier", - "src": "32585:3:32" + "src": "32161:3:32" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "32578:3:32" + "src": "32154:3:32" } ] } @@ -27340,7 +26766,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "32560:3:32", + "src": "32136:3:32", "type": "" } ], @@ -27348,31 +26774,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "32568:3:32", + "src": "32144:3:32", "type": "" } ], - "src": "32385:205:32" + "src": "31961:205:32" }, { "body": { "nodeType": "YulBlock", - "src": "32782:248:32", + "src": "32358:248:32", "statements": [ { "nodeType": "YulAssignment", - "src": "32792:27:32", + "src": "32368:27:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "32804:9:32" + "src": "32380:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "32815:3:32", + "src": "32391:3:32", "type": "", "value": "128" } @@ -27380,16 +26806,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "32800:3:32" + "src": "32376:3:32" }, "nodeType": "YulFunctionCall", - "src": "32800:19:32" + "src": "32376:19:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "32792:4:32" + "src": "32368:4:32" } ] }, @@ -27399,14 +26825,14 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "32835:9:32" + "src": "32411:9:32" }, { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "32850:6:32" + "src": "32426:6:32" }, { "arguments": [ @@ -27415,14 +26841,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "32866:3:32", + "src": "32442:3:32", "type": "", "value": "160" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "32871:1:32", + "src": "32447:1:32", "type": "", "value": "1" } @@ -27430,15 +26856,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "32862:3:32" + "src": "32438:3:32" }, "nodeType": "YulFunctionCall", - "src": "32862:11:32" + "src": "32438:11:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "32875:1:32", + "src": "32451:1:32", "type": "", "value": "1" } @@ -27446,31 +26872,31 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "32858:3:32" + "src": "32434:3:32" }, "nodeType": "YulFunctionCall", - "src": "32858:19:32" + "src": "32434:19:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "32846:3:32" + "src": "32422:3:32" }, "nodeType": "YulFunctionCall", - "src": "32846:32:32" + "src": "32422:32:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "32828:6:32" + "src": "32404:6:32" }, "nodeType": "YulFunctionCall", - "src": "32828:51:32" + "src": "32404:51:32" }, "nodeType": "YulExpressionStatement", - "src": "32828:51:32" + "src": "32404:51:32" }, { "expression": { @@ -27480,12 +26906,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "32899:9:32" + "src": "32475:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "32910:2:32", + "src": "32486:2:32", "type": "", "value": "32" } @@ -27493,27 +26919,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "32895:3:32" + "src": "32471:3:32" }, "nodeType": "YulFunctionCall", - "src": "32895:18:32" + "src": "32471:18:32" }, { "name": "value1", "nodeType": "YulIdentifier", - "src": "32915:6:32" + "src": "32491:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "32888:6:32" + "src": "32464:6:32" }, "nodeType": "YulFunctionCall", - "src": "32888:34:32" + "src": "32464:34:32" }, "nodeType": "YulExpressionStatement", - "src": "32888:34:32" + "src": "32464:34:32" }, { "expression": { @@ -27523,12 +26949,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "32942:9:32" + "src": "32518:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "32953:2:32", + "src": "32529:2:32", "type": "", "value": "64" } @@ -27536,10 +26962,10 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "32938:3:32" + "src": "32514:3:32" }, "nodeType": "YulFunctionCall", - "src": "32938:18:32" + "src": "32514:18:32" }, { "arguments": [ @@ -27548,37 +26974,37 @@ { "name": "value2", "nodeType": "YulIdentifier", - "src": "32972:6:32" + "src": "32548:6:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "32965:6:32" + "src": "32541:6:32" }, "nodeType": "YulFunctionCall", - "src": "32965:14:32" + "src": "32541:14:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "32958:6:32" + "src": "32534:6:32" }, "nodeType": "YulFunctionCall", - "src": "32958:22:32" + "src": "32534:22:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "32931:6:32" + "src": "32507:6:32" }, "nodeType": "YulFunctionCall", - "src": "32931:50:32" + "src": "32507:50:32" }, "nodeType": "YulExpressionStatement", - "src": "32931:50:32" + "src": "32507:50:32" }, { "expression": { @@ -27588,12 +27014,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "33001:9:32" + "src": "32577:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33012:2:32", + "src": "32588:2:32", "type": "", "value": "96" } @@ -27601,27 +27027,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "32997:3:32" + "src": "32573:3:32" }, "nodeType": "YulFunctionCall", - "src": "32997:18:32" + "src": "32573:18:32" }, { "name": "value3", "nodeType": "YulIdentifier", - "src": "33017:6:32" + "src": "32593:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "32990:6:32" + "src": "32566:6:32" }, "nodeType": "YulFunctionCall", - "src": "32990:34:32" + "src": "32566:34:32" }, "nodeType": "YulExpressionStatement", - "src": "32990:34:32" + "src": "32566:34:32" } ] }, @@ -27631,31 +27057,31 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "32727:9:32", + "src": "32303:9:32", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "32738:6:32", + "src": "32314:6:32", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "32746:6:32", + "src": "32322:6:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "32754:6:32", + "src": "32330:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "32762:6:32", + "src": "32338:6:32", "type": "" } ], @@ -27663,41 +27089,41 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "32773:4:32", + "src": "32349:4:32", "type": "" } ], - "src": "32595:435:32" + "src": "32171:435:32" }, { "body": { "nodeType": "YulBlock", - "src": "33172:150:32", + "src": "32748:150:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "33182:27:32", + "src": "32758:27:32", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "33202:6:32" + "src": "32778:6:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "33196:5:32" + "src": "32772:5:32" }, "nodeType": "YulFunctionCall", - "src": "33196:13:32" + "src": "32772:13:32" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "33186:6:32", + "src": "32762:6:32", "type": "" } ] @@ -27710,12 +27136,12 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "33257:6:32" + "src": "32833:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33265:4:32", + "src": "32841:4:32", "type": "", "value": "0x20" } @@ -27723,62 +27149,62 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "33253:3:32" + "src": "32829:3:32" }, "nodeType": "YulFunctionCall", - "src": "33253:17:32" + "src": "32829:17:32" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "33272:3:32" + "src": "32848:3:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "33277:6:32" + "src": "32853:6:32" } ], "functionName": { "name": "copy_memory_to_memory_with_cleanup", "nodeType": "YulIdentifier", - "src": "33218:34:32" + "src": "32794:34:32" }, "nodeType": "YulFunctionCall", - "src": "33218:66:32" + "src": "32794:66:32" }, "nodeType": "YulExpressionStatement", - "src": "33218:66:32" + "src": "32794:66:32" }, { "nodeType": "YulAssignment", - "src": "33293:23:32", + "src": "32869:23:32", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "33304:3:32" + "src": "32880:3:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "33309:6:32" + "src": "32885:6:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "33300:3:32" + "src": "32876:3:32" }, "nodeType": "YulFunctionCall", - "src": "33300:16:32" + "src": "32876:16:32" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "33293:3:32" + "src": "32869:3:32" } ] } @@ -27790,13 +27216,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "33148:3:32", + "src": "32724:3:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "33153:6:32", + "src": "32729:6:32", "type": "" } ], @@ -27804,16 +27230,16 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "33164:3:32", + "src": "32740:3:32", "type": "" } ], - "src": "33035:287:32" + "src": "32611:287:32" }, { "body": { "nodeType": "YulBlock", - "src": "33551:307:32", + "src": "33127:307:32", "statements": [ { "expression": { @@ -27821,19 +27247,19 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "33568:9:32" + "src": "33144:9:32" }, { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "33583:6:32" + "src": "33159:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33591:10:32", + "src": "33167:10:32", "type": "", "value": "0xffffffff" } @@ -27841,22 +27267,22 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "33579:3:32" + "src": "33155:3:32" }, "nodeType": "YulFunctionCall", - "src": "33579:23:32" + "src": "33155:23:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "33561:6:32" + "src": "33137:6:32" }, "nodeType": "YulFunctionCall", - "src": "33561:42:32" + "src": "33137:42:32" }, "nodeType": "YulExpressionStatement", - "src": "33561:42:32" + "src": "33137:42:32" }, { "expression": { @@ -27866,12 +27292,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "33623:9:32" + "src": "33199:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33634:2:32", + "src": "33210:2:32", "type": "", "value": "32" } @@ -27879,27 +27305,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "33619:3:32" + "src": "33195:3:32" }, "nodeType": "YulFunctionCall", - "src": "33619:18:32" + "src": "33195:18:32" }, { "name": "value1", "nodeType": "YulIdentifier", - "src": "33639:6:32" + "src": "33215:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "33612:6:32" + "src": "33188:6:32" }, "nodeType": "YulFunctionCall", - "src": "33612:34:32" + "src": "33188:34:32" }, "nodeType": "YulExpressionStatement", - "src": "33612:34:32" + "src": "33188:34:32" }, { "expression": { @@ -27909,12 +27335,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "33666:9:32" + "src": "33242:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33677:2:32", + "src": "33253:2:32", "type": "", "value": "64" } @@ -27922,15 +27348,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "33662:3:32" + "src": "33238:3:32" }, "nodeType": "YulFunctionCall", - "src": "33662:18:32" + "src": "33238:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33682:3:32", + "src": "33258:3:32", "type": "", "value": "160" } @@ -27938,35 +27364,35 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "33655:6:32" + "src": "33231:6:32" }, "nodeType": "YulFunctionCall", - "src": "33655:31:32" + "src": "33231:31:32" }, "nodeType": "YulExpressionStatement", - "src": "33655:31:32" + "src": "33231:31:32" }, { "nodeType": "YulAssignment", - "src": "33695:54:32", + "src": "33271:54:32", "value": { "arguments": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "33721:6:32" + "src": "33297:6:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "33733:9:32" + "src": "33309:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33744:3:32", + "src": "33320:3:32", "type": "", "value": "160" } @@ -27974,25 +27400,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "33729:3:32" + "src": "33305:3:32" }, "nodeType": "YulFunctionCall", - "src": "33729:19:32" + "src": "33305:19:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "33703:17:32" + "src": "33279:17:32" }, "nodeType": "YulFunctionCall", - "src": "33703:46:32" + "src": "33279:46:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "33695:4:32" + "src": "33271:4:32" } ] }, @@ -28004,12 +27430,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "33769:9:32" + "src": "33345:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33780:2:32", + "src": "33356:2:32", "type": "", "value": "96" } @@ -28017,10 +27443,10 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "33765:3:32" + "src": "33341:3:32" }, "nodeType": "YulFunctionCall", - "src": "33765:18:32" + "src": "33341:18:32" }, { "arguments": [ @@ -28029,37 +27455,37 @@ { "name": "value3", "nodeType": "YulIdentifier", - "src": "33799:6:32" + "src": "33375:6:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "33792:6:32" + "src": "33368:6:32" }, "nodeType": "YulFunctionCall", - "src": "33792:14:32" + "src": "33368:14:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "33785:6:32" + "src": "33361:6:32" }, "nodeType": "YulFunctionCall", - "src": "33785:22:32" + "src": "33361:22:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "33758:6:32" + "src": "33334:6:32" }, "nodeType": "YulFunctionCall", - "src": "33758:50:32" + "src": "33334:50:32" }, "nodeType": "YulExpressionStatement", - "src": "33758:50:32" + "src": "33334:50:32" }, { "expression": { @@ -28069,12 +27495,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "33828:9:32" + "src": "33404:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33839:3:32", + "src": "33415:3:32", "type": "", "value": "128" } @@ -28082,27 +27508,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "33824:3:32" + "src": "33400:3:32" }, "nodeType": "YulFunctionCall", - "src": "33824:19:32" + "src": "33400:19:32" }, { "name": "value4", "nodeType": "YulIdentifier", - "src": "33845:6:32" + "src": "33421:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "33817:6:32" + "src": "33393:6:32" }, "nodeType": "YulFunctionCall", - "src": "33817:35:32" + "src": "33393:35:32" }, "nodeType": "YulExpressionStatement", - "src": "33817:35:32" + "src": "33393:35:32" } ] }, @@ -28112,37 +27538,37 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "33488:9:32", + "src": "33064:9:32", "type": "" }, { "name": "value4", "nodeType": "YulTypedName", - "src": "33499:6:32", + "src": "33075:6:32", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "33507:6:32", + "src": "33083:6:32", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "33515:6:32", + "src": "33091:6:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "33523:6:32", + "src": "33099:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "33531:6:32", + "src": "33107:6:32", "type": "" } ], @@ -28150,16 +27576,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "33542:4:32", + "src": "33118:4:32", "type": "" } ], - "src": "33327:531:32" + "src": "32903:531:32" }, { "body": { "nodeType": "YulBlock", - "src": "34037:155:32", + "src": "33613:155:32", "statements": [ { "expression": { @@ -28167,12 +27593,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "34054:9:32" + "src": "33630:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "34065:2:32", + "src": "33641:2:32", "type": "", "value": "32" } @@ -28180,13 +27606,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "34047:6:32" + "src": "33623:6:32" }, "nodeType": "YulFunctionCall", - "src": "34047:21:32" + "src": "33623:21:32" }, "nodeType": "YulExpressionStatement", - "src": "34047:21:32" + "src": "33623:21:32" }, { "expression": { @@ -28196,12 +27622,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "34088:9:32" + "src": "33664:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "34099:2:32", + "src": "33675:2:32", "type": "", "value": "32" } @@ -28209,15 +27635,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "34084:3:32" + "src": "33660:3:32" }, "nodeType": "YulFunctionCall", - "src": "34084:18:32" + "src": "33660:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "34104:1:32", + "src": "33680:1:32", "type": "", "value": "6" } @@ -28225,13 +27651,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "34077:6:32" + "src": "33653:6:32" }, "nodeType": "YulFunctionCall", - "src": "34077:29:32" + "src": "33653:29:32" }, "nodeType": "YulExpressionStatement", - "src": "34077:29:32" + "src": "33653:29:32" }, { "expression": { @@ -28241,12 +27667,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "34126:9:32" + "src": "33702:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "34137:2:32", + "src": "33713:2:32", "type": "", "value": "64" } @@ -28254,16 +27680,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "34122:3:32" + "src": "33698:3:32" }, "nodeType": "YulFunctionCall", - "src": "34122:18:32" + "src": "33698:18:32" }, { "hexValue": "4c4243303139", "kind": "string", "nodeType": "YulLiteral", - "src": "34142:8:32", + "src": "33718:8:32", "type": "", "value": "LBC019" } @@ -28271,28 +27697,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "34115:6:32" + "src": "33691:6:32" }, "nodeType": "YulFunctionCall", - "src": "34115:36:32" + "src": "33691:36:32" }, "nodeType": "YulExpressionStatement", - "src": "34115:36:32" + "src": "33691:36:32" }, { "nodeType": "YulAssignment", - "src": "34160:26:32", + "src": "33736:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "34172:9:32" + "src": "33748:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "34183:2:32", + "src": "33759:2:32", "type": "", "value": "96" } @@ -28300,16 +27726,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "34168:3:32" + "src": "33744:3:32" }, "nodeType": "YulFunctionCall", - "src": "34168:18:32" + "src": "33744:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "34160:4:32" + "src": "33736:4:32" } ] } @@ -28321,7 +27747,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "34014:9:32", + "src": "33590:9:32", "type": "" } ], @@ -28329,16 +27755,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "34028:4:32", + "src": "33604:4:32", "type": "" } ], - "src": "33863:329:32" + "src": "33439:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "34371:155:32", + "src": "33947:155:32", "statements": [ { "expression": { @@ -28346,12 +27772,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "34388:9:32" + "src": "33964:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "34399:2:32", + "src": "33975:2:32", "type": "", "value": "32" } @@ -28359,13 +27785,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "34381:6:32" + "src": "33957:6:32" }, "nodeType": "YulFunctionCall", - "src": "34381:21:32" + "src": "33957:21:32" }, "nodeType": "YulExpressionStatement", - "src": "34381:21:32" + "src": "33957:21:32" }, { "expression": { @@ -28375,12 +27801,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "34422:9:32" + "src": "33998:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "34433:2:32", + "src": "34009:2:32", "type": "", "value": "32" } @@ -28388,15 +27814,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "34418:3:32" + "src": "33994:3:32" }, "nodeType": "YulFunctionCall", - "src": "34418:18:32" + "src": "33994:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "34438:1:32", + "src": "34014:1:32", "type": "", "value": "6" } @@ -28404,13 +27830,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "34411:6:32" + "src": "33987:6:32" }, "nodeType": "YulFunctionCall", - "src": "34411:29:32" + "src": "33987:29:32" }, "nodeType": "YulExpressionStatement", - "src": "34411:29:32" + "src": "33987:29:32" }, { "expression": { @@ -28420,12 +27846,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "34460:9:32" + "src": "34036:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "34471:2:32", + "src": "34047:2:32", "type": "", "value": "64" } @@ -28433,16 +27859,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "34456:3:32" + "src": "34032:3:32" }, "nodeType": "YulFunctionCall", - "src": "34456:18:32" + "src": "34032:18:32" }, { "hexValue": "4c4243303230", "kind": "string", "nodeType": "YulLiteral", - "src": "34476:8:32", + "src": "34052:8:32", "type": "", "value": "LBC020" } @@ -28450,28 +27876,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "34449:6:32" + "src": "34025:6:32" }, "nodeType": "YulFunctionCall", - "src": "34449:36:32" + "src": "34025:36:32" }, "nodeType": "YulExpressionStatement", - "src": "34449:36:32" + "src": "34025:36:32" }, { "nodeType": "YulAssignment", - "src": "34494:26:32", + "src": "34070:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "34506:9:32" + "src": "34082:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "34517:2:32", + "src": "34093:2:32", "type": "", "value": "96" } @@ -28479,16 +27905,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "34502:3:32" + "src": "34078:3:32" }, "nodeType": "YulFunctionCall", - "src": "34502:18:32" + "src": "34078:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "34494:4:32" + "src": "34070:4:32" } ] } @@ -28500,7 +27926,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "34348:9:32", + "src": "33924:9:32", "type": "" } ], @@ -28508,31 +27934,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "34362:4:32", + "src": "33938:4:32", "type": "" } ], - "src": "34197:329:32" + "src": "33773:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "34660:145:32", + "src": "34236:145:32", "statements": [ { "nodeType": "YulAssignment", - "src": "34670:26:32", + "src": "34246:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "34682:9:32" + "src": "34258:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "34693:2:32", + "src": "34269:2:32", "type": "", "value": "64" } @@ -28540,16 +27966,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "34678:3:32" + "src": "34254:3:32" }, "nodeType": "YulFunctionCall", - "src": "34678:18:32" + "src": "34254:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "34670:4:32" + "src": "34246:4:32" } ] }, @@ -28559,14 +27985,14 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "34712:9:32" + "src": "34288:9:32" }, { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "34727:6:32" + "src": "34303:6:32" }, { "arguments": [ @@ -28575,14 +28001,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "34743:3:32", + "src": "34319:3:32", "type": "", "value": "160" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "34748:1:32", + "src": "34324:1:32", "type": "", "value": "1" } @@ -28590,15 +28016,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "34739:3:32" + "src": "34315:3:32" }, "nodeType": "YulFunctionCall", - "src": "34739:11:32" + "src": "34315:11:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "34752:1:32", + "src": "34328:1:32", "type": "", "value": "1" } @@ -28606,31 +28032,31 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "34735:3:32" + "src": "34311:3:32" }, "nodeType": "YulFunctionCall", - "src": "34735:19:32" + "src": "34311:19:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "34723:3:32" + "src": "34299:3:32" }, "nodeType": "YulFunctionCall", - "src": "34723:32:32" + "src": "34299:32:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "34705:6:32" + "src": "34281:6:32" }, "nodeType": "YulFunctionCall", - "src": "34705:51:32" + "src": "34281:51:32" }, "nodeType": "YulExpressionStatement", - "src": "34705:51:32" + "src": "34281:51:32" }, { "expression": { @@ -28640,12 +28066,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "34776:9:32" + "src": "34352:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "34787:2:32", + "src": "34363:2:32", "type": "", "value": "32" } @@ -28653,27 +28079,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "34772:3:32" + "src": "34348:3:32" }, "nodeType": "YulFunctionCall", - "src": "34772:18:32" + "src": "34348:18:32" }, { "name": "value1", "nodeType": "YulIdentifier", - "src": "34792:6:32" + "src": "34368:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "34765:6:32" + "src": "34341:6:32" }, "nodeType": "YulFunctionCall", - "src": "34765:34:32" + "src": "34341:34:32" }, "nodeType": "YulExpressionStatement", - "src": "34765:34:32" + "src": "34341:34:32" } ] }, @@ -28683,19 +28109,19 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "34621:9:32", + "src": "34197:9:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "34632:6:32", + "src": "34208:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "34640:6:32", + "src": "34216:6:32", "type": "" } ], @@ -28703,16 +28129,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "34651:4:32", + "src": "34227:4:32", "type": "" } ], - "src": "34531:274:32" + "src": "34107:274:32" }, { "body": { "nodeType": "YulBlock", - "src": "34984:155:32", + "src": "34560:155:32", "statements": [ { "expression": { @@ -28720,12 +28146,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "35001:9:32" + "src": "34577:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35012:2:32", + "src": "34588:2:32", "type": "", "value": "32" } @@ -28733,13 +28159,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "34994:6:32" + "src": "34570:6:32" }, "nodeType": "YulFunctionCall", - "src": "34994:21:32" + "src": "34570:21:32" }, "nodeType": "YulExpressionStatement", - "src": "34994:21:32" + "src": "34570:21:32" }, { "expression": { @@ -28749,12 +28175,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "35035:9:32" + "src": "34611:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35046:2:32", + "src": "34622:2:32", "type": "", "value": "32" } @@ -28762,15 +28188,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "35031:3:32" + "src": "34607:3:32" }, "nodeType": "YulFunctionCall", - "src": "35031:18:32" + "src": "34607:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35051:1:32", + "src": "34627:1:32", "type": "", "value": "6" } @@ -28778,13 +28204,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "35024:6:32" + "src": "34600:6:32" }, "nodeType": "YulFunctionCall", - "src": "35024:29:32" + "src": "34600:29:32" }, "nodeType": "YulExpressionStatement", - "src": "35024:29:32" + "src": "34600:29:32" }, { "expression": { @@ -28794,12 +28220,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "35073:9:32" + "src": "34649:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35084:2:32", + "src": "34660:2:32", "type": "", "value": "64" } @@ -28807,16 +28233,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "35069:3:32" + "src": "34645:3:32" }, "nodeType": "YulFunctionCall", - "src": "35069:18:32" + "src": "34645:18:32" }, { "hexValue": "4c4243303033", "kind": "string", "nodeType": "YulLiteral", - "src": "35089:8:32", + "src": "34665:8:32", "type": "", "value": "LBC003" } @@ -28824,28 +28250,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "35062:6:32" + "src": "34638:6:32" }, "nodeType": "YulFunctionCall", - "src": "35062:36:32" + "src": "34638:36:32" }, "nodeType": "YulExpressionStatement", - "src": "35062:36:32" + "src": "34638:36:32" }, { "nodeType": "YulAssignment", - "src": "35107:26:32", + "src": "34683:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "35119:9:32" + "src": "34695:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35130:2:32", + "src": "34706:2:32", "type": "", "value": "96" } @@ -28853,16 +28279,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "35115:3:32" + "src": "34691:3:32" }, "nodeType": "YulFunctionCall", - "src": "35115:18:32" + "src": "34691:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "35107:4:32" + "src": "34683:4:32" } ] } @@ -28874,7 +28300,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "34961:9:32", + "src": "34537:9:32", "type": "" } ], @@ -28882,16 +28308,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "34975:4:32", + "src": "34551:4:32", "type": "" } ], - "src": "34810:329:32" + "src": "34386:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "35318:155:32", + "src": "34894:155:32", "statements": [ { "expression": { @@ -28899,12 +28325,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "35335:9:32" + "src": "34911:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35346:2:32", + "src": "34922:2:32", "type": "", "value": "32" } @@ -28912,13 +28338,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "35328:6:32" + "src": "34904:6:32" }, "nodeType": "YulFunctionCall", - "src": "35328:21:32" + "src": "34904:21:32" }, "nodeType": "YulExpressionStatement", - "src": "35328:21:32" + "src": "34904:21:32" }, { "expression": { @@ -28928,12 +28354,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "35369:9:32" + "src": "34945:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35380:2:32", + "src": "34956:2:32", "type": "", "value": "32" } @@ -28941,15 +28367,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "35365:3:32" + "src": "34941:3:32" }, "nodeType": "YulFunctionCall", - "src": "35365:18:32" + "src": "34941:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35385:1:32", + "src": "34961:1:32", "type": "", "value": "6" } @@ -28957,13 +28383,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "35358:6:32" + "src": "34934:6:32" }, "nodeType": "YulFunctionCall", - "src": "35358:29:32" + "src": "34934:29:32" }, "nodeType": "YulExpressionStatement", - "src": "35358:29:32" + "src": "34934:29:32" }, { "expression": { @@ -28973,12 +28399,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "35407:9:32" + "src": "34983:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35418:2:32", + "src": "34994:2:32", "type": "", "value": "64" } @@ -28986,16 +28412,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "35403:3:32" + "src": "34979:3:32" }, "nodeType": "YulFunctionCall", - "src": "35403:18:32" + "src": "34979:18:32" }, { "hexValue": "4c4243303130", "kind": "string", "nodeType": "YulLiteral", - "src": "35423:8:32", + "src": "34999:8:32", "type": "", "value": "LBC010" } @@ -29003,28 +28429,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "35396:6:32" + "src": "34972:6:32" }, "nodeType": "YulFunctionCall", - "src": "35396:36:32" + "src": "34972:36:32" }, "nodeType": "YulExpressionStatement", - "src": "35396:36:32" + "src": "34972:36:32" }, { "nodeType": "YulAssignment", - "src": "35441:26:32", + "src": "35017:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "35453:9:32" + "src": "35029:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35464:2:32", + "src": "35040:2:32", "type": "", "value": "96" } @@ -29032,16 +28458,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "35449:3:32" + "src": "35025:3:32" }, "nodeType": "YulFunctionCall", - "src": "35449:18:32" + "src": "35025:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "35441:4:32" + "src": "35017:4:32" } ] } @@ -29053,7 +28479,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "35295:9:32", + "src": "34871:9:32", "type": "" } ], @@ -29061,16 +28487,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "35309:4:32", + "src": "34885:4:32", "type": "" } ], - "src": "35144:329:32" + "src": "34720:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "35652:155:32", + "src": "35228:155:32", "statements": [ { "expression": { @@ -29078,12 +28504,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "35669:9:32" + "src": "35245:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35680:2:32", + "src": "35256:2:32", "type": "", "value": "32" } @@ -29091,13 +28517,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "35662:6:32" + "src": "35238:6:32" }, "nodeType": "YulFunctionCall", - "src": "35662:21:32" + "src": "35238:21:32" }, "nodeType": "YulExpressionStatement", - "src": "35662:21:32" + "src": "35238:21:32" }, { "expression": { @@ -29107,12 +28533,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "35703:9:32" + "src": "35279:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35714:2:32", + "src": "35290:2:32", "type": "", "value": "32" } @@ -29120,15 +28546,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "35699:3:32" + "src": "35275:3:32" }, "nodeType": "YulFunctionCall", - "src": "35699:18:32" + "src": "35275:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35719:1:32", + "src": "35295:1:32", "type": "", "value": "6" } @@ -29136,13 +28562,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "35692:6:32" + "src": "35268:6:32" }, "nodeType": "YulFunctionCall", - "src": "35692:29:32" + "src": "35268:29:32" }, "nodeType": "YulExpressionStatement", - "src": "35692:29:32" + "src": "35268:29:32" }, { "expression": { @@ -29152,12 +28578,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "35741:9:32" + "src": "35317:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35752:2:32", + "src": "35328:2:32", "type": "", "value": "64" } @@ -29165,16 +28591,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "35737:3:32" + "src": "35313:3:32" }, "nodeType": "YulFunctionCall", - "src": "35737:18:32" + "src": "35313:18:32" }, { "hexValue": "4c4243303137", "kind": "string", "nodeType": "YulLiteral", - "src": "35757:8:32", + "src": "35333:8:32", "type": "", "value": "LBC017" } @@ -29182,28 +28608,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "35730:6:32" + "src": "35306:6:32" }, "nodeType": "YulFunctionCall", - "src": "35730:36:32" + "src": "35306:36:32" }, "nodeType": "YulExpressionStatement", - "src": "35730:36:32" + "src": "35306:36:32" }, { "nodeType": "YulAssignment", - "src": "35775:26:32", + "src": "35351:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "35787:9:32" + "src": "35363:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35798:2:32", + "src": "35374:2:32", "type": "", "value": "96" } @@ -29211,16 +28637,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "35783:3:32" + "src": "35359:3:32" }, "nodeType": "YulFunctionCall", - "src": "35783:18:32" + "src": "35359:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "35775:4:32" + "src": "35351:4:32" } ] } @@ -29232,7 +28658,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "35629:9:32", + "src": "35205:9:32", "type": "" } ], @@ -29240,16 +28666,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "35643:4:32", + "src": "35219:4:32", "type": "" } ], - "src": "35478:329:32" + "src": "35054:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "36004:63:32", + "src": "35580:63:32", "statements": [ { "expression": { @@ -29257,13 +28683,13 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "36021:3:32" + "src": "35597:3:32" }, { "hexValue": "706567696e", "kind": "string", "nodeType": "YulLiteral", - "src": "36026:7:32", + "src": "35602:7:32", "type": "", "value": "pegin" } @@ -29271,28 +28697,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "36014:6:32" + "src": "35590:6:32" }, "nodeType": "YulFunctionCall", - "src": "36014:20:32" + "src": "35590:20:32" }, "nodeType": "YulExpressionStatement", - "src": "36014:20:32" + "src": "35590:20:32" }, { "nodeType": "YulAssignment", - "src": "36043:18:32", + "src": "35619:18:32", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "36054:3:32" + "src": "35630:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "36059:1:32", + "src": "35635:1:32", "type": "", "value": "5" } @@ -29300,16 +28726,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "36050:3:32" + "src": "35626:3:32" }, "nodeType": "YulFunctionCall", - "src": "36050:11:32" + "src": "35626:11:32" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "36043:3:32" + "src": "35619:3:32" } ] } @@ -29321,7 +28747,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "35988:3:32", + "src": "35564:3:32", "type": "" } ], @@ -29329,41 +28755,41 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "35996:3:32", + "src": "35572:3:32", "type": "" } ], - "src": "35812:255:32" + "src": "35388:255:32" }, { "body": { "nodeType": "YulBlock", - "src": "36211:150:32", + "src": "35787:150:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "36221:27:32", + "src": "35797:27:32", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "36241:6:32" + "src": "35817:6:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "36235:5:32" + "src": "35811:5:32" }, "nodeType": "YulFunctionCall", - "src": "36235:13:32" + "src": "35811:13:32" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "36225:6:32", + "src": "35801:6:32", "type": "" } ] @@ -29376,12 +28802,12 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "36296:6:32" + "src": "35872:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "36304:4:32", + "src": "35880:4:32", "type": "", "value": "0x20" } @@ -29389,62 +28815,62 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "36292:3:32" + "src": "35868:3:32" }, "nodeType": "YulFunctionCall", - "src": "36292:17:32" + "src": "35868:17:32" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "36311:3:32" + "src": "35887:3:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "36316:6:32" + "src": "35892:6:32" } ], "functionName": { "name": "copy_memory_to_memory_with_cleanup", "nodeType": "YulIdentifier", - "src": "36257:34:32" + "src": "35833:34:32" }, "nodeType": "YulFunctionCall", - "src": "36257:66:32" + "src": "35833:66:32" }, "nodeType": "YulExpressionStatement", - "src": "36257:66:32" + "src": "35833:66:32" }, { "nodeType": "YulAssignment", - "src": "36332:23:32", + "src": "35908:23:32", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "36343:3:32" + "src": "35919:3:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "36348:6:32" + "src": "35924:6:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "36339:3:32" + "src": "35915:3:32" }, "nodeType": "YulFunctionCall", - "src": "36339:16:32" + "src": "35915:16:32" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "36332:3:32" + "src": "35908:3:32" } ] } @@ -29456,13 +28882,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "36187:3:32", + "src": "35763:3:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "36192:6:32", + "src": "35768:6:32", "type": "" } ], @@ -29470,16 +28896,16 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "36203:3:32", + "src": "35779:3:32", "type": "" } ], - "src": "36072:289:32" + "src": "35648:289:32" }, { "body": { "nodeType": "YulBlock", - "src": "36558:64:32", + "src": "36134:64:32", "statements": [ { "expression": { @@ -29487,13 +28913,13 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "36575:3:32" + "src": "36151:3:32" }, { "hexValue": "7065676f7574", "kind": "string", "nodeType": "YulLiteral", - "src": "36580:8:32", + "src": "36156:8:32", "type": "", "value": "pegout" } @@ -29501,28 +28927,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "36568:6:32" + "src": "36144:6:32" }, "nodeType": "YulFunctionCall", - "src": "36568:21:32" + "src": "36144:21:32" }, "nodeType": "YulExpressionStatement", - "src": "36568:21:32" + "src": "36144:21:32" }, { "nodeType": "YulAssignment", - "src": "36598:18:32", + "src": "36174:18:32", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "36609:3:32" + "src": "36185:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "36614:1:32", + "src": "36190:1:32", "type": "", "value": "6" } @@ -29530,16 +28956,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "36605:3:32" + "src": "36181:3:32" }, "nodeType": "YulFunctionCall", - "src": "36605:11:32" + "src": "36181:11:32" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "36598:3:32" + "src": "36174:3:32" } ] } @@ -29551,7 +28977,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "36542:3:32", + "src": "36118:3:32", "type": "" } ], @@ -29559,16 +28985,16 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "36550:3:32", + "src": "36126:3:32", "type": "" } ], - "src": "36366:256:32" + "src": "35942:256:32" }, { "body": { "nodeType": "YulBlock", - "src": "36819:62:32", + "src": "36395:62:32", "statements": [ { "expression": { @@ -29576,13 +29002,13 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "36836:3:32" + "src": "36412:3:32" }, { "hexValue": "626f7468", "kind": "string", "nodeType": "YulLiteral", - "src": "36841:6:32", + "src": "36417:6:32", "type": "", "value": "both" } @@ -29590,28 +29016,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "36829:6:32" + "src": "36405:6:32" }, "nodeType": "YulFunctionCall", - "src": "36829:19:32" + "src": "36405:19:32" }, "nodeType": "YulExpressionStatement", - "src": "36829:19:32" + "src": "36405:19:32" }, { "nodeType": "YulAssignment", - "src": "36857:18:32", + "src": "36433:18:32", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "36868:3:32" + "src": "36444:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "36873:1:32", + "src": "36449:1:32", "type": "", "value": "4" } @@ -29619,16 +29045,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "36864:3:32" + "src": "36440:3:32" }, "nodeType": "YulFunctionCall", - "src": "36864:11:32" + "src": "36440:11:32" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "36857:3:32" + "src": "36433:3:32" } ] } @@ -29640,7 +29066,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "36803:3:32", + "src": "36379:3:32", "type": "" } ], @@ -29648,16 +29074,16 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "36811:3:32", + "src": "36387:3:32", "type": "" } ], - "src": "36627:254:32" + "src": "36203:254:32" }, { "body": { "nodeType": "YulBlock", - "src": "37060:155:32", + "src": "36636:155:32", "statements": [ { "expression": { @@ -29665,12 +29091,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "37077:9:32" + "src": "36653:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37088:2:32", + "src": "36664:2:32", "type": "", "value": "32" } @@ -29678,13 +29104,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "37070:6:32" + "src": "36646:6:32" }, "nodeType": "YulFunctionCall", - "src": "37070:21:32" + "src": "36646:21:32" }, "nodeType": "YulExpressionStatement", - "src": "37070:21:32" + "src": "36646:21:32" }, { "expression": { @@ -29694,12 +29120,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "37111:9:32" + "src": "36687:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37122:2:32", + "src": "36698:2:32", "type": "", "value": "32" } @@ -29707,15 +29133,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "37107:3:32" + "src": "36683:3:32" }, "nodeType": "YulFunctionCall", - "src": "37107:18:32" + "src": "36683:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37127:1:32", + "src": "36703:1:32", "type": "", "value": "6" } @@ -29723,13 +29149,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "37100:6:32" + "src": "36676:6:32" }, "nodeType": "YulFunctionCall", - "src": "37100:29:32" + "src": "36676:29:32" }, "nodeType": "YulExpressionStatement", - "src": "37100:29:32" + "src": "36676:29:32" }, { "expression": { @@ -29739,12 +29165,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "37149:9:32" + "src": "36725:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37160:2:32", + "src": "36736:2:32", "type": "", "value": "64" } @@ -29752,16 +29178,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "37145:3:32" + "src": "36721:3:32" }, "nodeType": "YulFunctionCall", - "src": "37145:18:32" + "src": "36721:18:32" }, { "hexValue": "4c4243303138", "kind": "string", "nodeType": "YulLiteral", - "src": "37165:8:32", + "src": "36741:8:32", "type": "", "value": "LBC018" } @@ -29769,28 +29195,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "37138:6:32" + "src": "36714:6:32" }, "nodeType": "YulFunctionCall", - "src": "37138:36:32" + "src": "36714:36:32" }, "nodeType": "YulExpressionStatement", - "src": "37138:36:32" + "src": "36714:36:32" }, { "nodeType": "YulAssignment", - "src": "37183:26:32", + "src": "36759:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "37195:9:32" + "src": "36771:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37206:2:32", + "src": "36782:2:32", "type": "", "value": "96" } @@ -29798,16 +29224,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "37191:3:32" + "src": "36767:3:32" }, "nodeType": "YulFunctionCall", - "src": "37191:18:32" + "src": "36767:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "37183:4:32" + "src": "36759:4:32" } ] } @@ -29819,7 +29245,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "37037:9:32", + "src": "36613:9:32", "type": "" } ], @@ -29827,16 +29253,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "37051:4:32", + "src": "36627:4:32", "type": "" } ], - "src": "36886:329:32" + "src": "36462:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "37394:155:32", + "src": "36970:155:32", "statements": [ { "expression": { @@ -29844,12 +29270,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "37411:9:32" + "src": "36987:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37422:2:32", + "src": "36998:2:32", "type": "", "value": "32" } @@ -29857,13 +29283,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "37404:6:32" + "src": "36980:6:32" }, "nodeType": "YulFunctionCall", - "src": "37404:21:32" + "src": "36980:21:32" }, "nodeType": "YulExpressionStatement", - "src": "37404:21:32" + "src": "36980:21:32" }, { "expression": { @@ -29873,12 +29299,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "37445:9:32" + "src": "37021:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37456:2:32", + "src": "37032:2:32", "type": "", "value": "32" } @@ -29886,15 +29312,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "37441:3:32" + "src": "37017:3:32" }, "nodeType": "YulFunctionCall", - "src": "37441:18:32" + "src": "37017:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37461:1:32", + "src": "37037:1:32", "type": "", "value": "6" } @@ -29902,13 +29328,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "37434:6:32" + "src": "37010:6:32" }, "nodeType": "YulFunctionCall", - "src": "37434:29:32" + "src": "37010:29:32" }, "nodeType": "YulExpressionStatement", - "src": "37434:29:32" + "src": "37010:29:32" }, { "expression": { @@ -29918,12 +29344,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "37483:9:32" + "src": "37059:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37494:2:32", + "src": "37070:2:32", "type": "", "value": "64" } @@ -29931,16 +29357,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "37479:3:32" + "src": "37055:3:32" }, "nodeType": "YulFunctionCall", - "src": "37479:18:32" + "src": "37055:18:32" }, { "hexValue": "4c4243303730", "kind": "string", "nodeType": "YulLiteral", - "src": "37499:8:32", + "src": "37075:8:32", "type": "", "value": "LBC070" } @@ -29948,28 +29374,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "37472:6:32" + "src": "37048:6:32" }, "nodeType": "YulFunctionCall", - "src": "37472:36:32" + "src": "37048:36:32" }, "nodeType": "YulExpressionStatement", - "src": "37472:36:32" + "src": "37048:36:32" }, { "nodeType": "YulAssignment", - "src": "37517:26:32", + "src": "37093:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "37529:9:32" + "src": "37105:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37540:2:32", + "src": "37116:2:32", "type": "", "value": "96" } @@ -29977,16 +29403,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "37525:3:32" + "src": "37101:3:32" }, "nodeType": "YulFunctionCall", - "src": "37525:18:32" + "src": "37101:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "37517:4:32" + "src": "37093:4:32" } ] } @@ -29998,7 +29424,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "37371:9:32", + "src": "36947:9:32", "type": "" } ], @@ -30006,16 +29432,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "37385:4:32", + "src": "36961:4:32", "type": "" } ], - "src": "37220:329:32" + "src": "36796:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "37728:155:32", + "src": "37304:155:32", "statements": [ { "expression": { @@ -30023,12 +29449,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "37745:9:32" + "src": "37321:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37756:2:32", + "src": "37332:2:32", "type": "", "value": "32" } @@ -30036,13 +29462,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "37738:6:32" + "src": "37314:6:32" }, "nodeType": "YulFunctionCall", - "src": "37738:21:32" + "src": "37314:21:32" }, "nodeType": "YulExpressionStatement", - "src": "37738:21:32" + "src": "37314:21:32" }, { "expression": { @@ -30052,12 +29478,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "37779:9:32" + "src": "37355:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37790:2:32", + "src": "37366:2:32", "type": "", "value": "32" } @@ -30065,15 +29491,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "37775:3:32" + "src": "37351:3:32" }, "nodeType": "YulFunctionCall", - "src": "37775:18:32" + "src": "37351:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37795:1:32", + "src": "37371:1:32", "type": "", "value": "6" } @@ -30081,13 +29507,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "37768:6:32" + "src": "37344:6:32" }, "nodeType": "YulFunctionCall", - "src": "37768:29:32" + "src": "37344:29:32" }, "nodeType": "YulExpressionStatement", - "src": "37768:29:32" + "src": "37344:29:32" }, { "expression": { @@ -30097,12 +29523,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "37817:9:32" + "src": "37393:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37828:2:32", + "src": "37404:2:32", "type": "", "value": "64" } @@ -30110,16 +29536,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "37813:3:32" + "src": "37389:3:32" }, "nodeType": "YulFunctionCall", - "src": "37813:18:32" + "src": "37389:18:32" }, { "hexValue": "4c4243303039", "kind": "string", "nodeType": "YulLiteral", - "src": "37833:8:32", + "src": "37409:8:32", "type": "", "value": "LBC009" } @@ -30127,28 +29553,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "37806:6:32" + "src": "37382:6:32" }, "nodeType": "YulFunctionCall", - "src": "37806:36:32" + "src": "37382:36:32" }, "nodeType": "YulExpressionStatement", - "src": "37806:36:32" + "src": "37382:36:32" }, { "nodeType": "YulAssignment", - "src": "37851:26:32", + "src": "37427:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "37863:9:32" + "src": "37439:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37874:2:32", + "src": "37450:2:32", "type": "", "value": "96" } @@ -30156,16 +29582,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "37859:3:32" + "src": "37435:3:32" }, "nodeType": "YulFunctionCall", - "src": "37859:18:32" + "src": "37435:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "37851:4:32" + "src": "37427:4:32" } ] } @@ -30177,7 +29603,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "37705:9:32", + "src": "37281:9:32", "type": "" } ], @@ -30185,16 +29611,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "37719:4:32", + "src": "37295:4:32", "type": "" } ], - "src": "37554:329:32" + "src": "37130:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "38062:155:32", + "src": "37638:155:32", "statements": [ { "expression": { @@ -30202,12 +29628,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "38079:9:32" + "src": "37655:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38090:2:32", + "src": "37666:2:32", "type": "", "value": "32" } @@ -30215,13 +29641,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "38072:6:32" + "src": "37648:6:32" }, "nodeType": "YulFunctionCall", - "src": "38072:21:32" + "src": "37648:21:32" }, "nodeType": "YulExpressionStatement", - "src": "38072:21:32" + "src": "37648:21:32" }, { "expression": { @@ -30231,12 +29657,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "38113:9:32" + "src": "37689:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38124:2:32", + "src": "37700:2:32", "type": "", "value": "32" } @@ -30244,15 +29670,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "38109:3:32" + "src": "37685:3:32" }, "nodeType": "YulFunctionCall", - "src": "38109:18:32" + "src": "37685:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38129:1:32", + "src": "37705:1:32", "type": "", "value": "6" } @@ -30260,13 +29686,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "38102:6:32" + "src": "37678:6:32" }, "nodeType": "YulFunctionCall", - "src": "38102:29:32" + "src": "37678:29:32" }, "nodeType": "YulExpressionStatement", - "src": "38102:29:32" + "src": "37678:29:32" }, { "expression": { @@ -30276,12 +29702,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "38151:9:32" + "src": "37727:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38162:2:32", + "src": "37738:2:32", "type": "", "value": "64" } @@ -30289,16 +29715,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "38147:3:32" + "src": "37723:3:32" }, "nodeType": "YulFunctionCall", - "src": "38147:18:32" + "src": "37723:18:32" }, { "hexValue": "4c4243303038", "kind": "string", "nodeType": "YulLiteral", - "src": "38167:8:32", + "src": "37743:8:32", "type": "", "value": "LBC008" } @@ -30306,28 +29732,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "38140:6:32" + "src": "37716:6:32" }, "nodeType": "YulFunctionCall", - "src": "38140:36:32" + "src": "37716:36:32" }, "nodeType": "YulExpressionStatement", - "src": "38140:36:32" + "src": "37716:36:32" }, { "nodeType": "YulAssignment", - "src": "38185:26:32", + "src": "37761:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "38197:9:32" + "src": "37773:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38208:2:32", + "src": "37784:2:32", "type": "", "value": "96" } @@ -30335,16 +29761,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "38193:3:32" + "src": "37769:3:32" }, "nodeType": "YulFunctionCall", - "src": "38193:18:32" + "src": "37769:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "38185:4:32" + "src": "37761:4:32" } ] } @@ -30356,7 +29782,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "38039:9:32", + "src": "37615:9:32", "type": "" } ], @@ -30364,21 +29790,21 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "38053:4:32", + "src": "37629:4:32", "type": "" } ], - "src": "37888:329:32" + "src": "37464:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "38260:74:32", + "src": "37836:74:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "38283:22:32", + "src": "37859:22:32", "statements": [ { "expression": { @@ -30386,13 +29812,13 @@ "functionName": { "name": "panic_error_0x12", "nodeType": "YulIdentifier", - "src": "38285:16:32" + "src": "37861:16:32" }, "nodeType": "YulFunctionCall", - "src": "38285:18:32" + "src": "37861:18:32" }, "nodeType": "YulExpressionStatement", - "src": "38285:18:32" + "src": "37861:18:32" } ] }, @@ -30401,49 +29827,49 @@ { "name": "y", "nodeType": "YulIdentifier", - "src": "38280:1:32" + "src": "37856:1:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "38273:6:32" + "src": "37849:6:32" }, "nodeType": "YulFunctionCall", - "src": "38273:9:32" + "src": "37849:9:32" }, "nodeType": "YulIf", - "src": "38270:35:32" + "src": "37846:35:32" }, { "nodeType": "YulAssignment", - "src": "38314:14:32", + "src": "37890:14:32", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "38323:1:32" + "src": "37899:1:32" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "38326:1:32" + "src": "37902:1:32" } ], "functionName": { "name": "mod", "nodeType": "YulIdentifier", - "src": "38319:3:32" + "src": "37895:3:32" }, "nodeType": "YulFunctionCall", - "src": "38319:9:32" + "src": "37895:9:32" }, "variableNames": [ { "name": "r", "nodeType": "YulIdentifier", - "src": "38314:1:32" + "src": "37890:1:32" } ] } @@ -30455,13 +29881,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "38245:1:32", + "src": "37821:1:32", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "38248:1:32", + "src": "37824:1:32", "type": "" } ], @@ -30469,31 +29895,31 @@ { "name": "r", "nodeType": "YulTypedName", - "src": "38254:1:32", + "src": "37830:1:32", "type": "" } ], - "src": "38222:112:32" + "src": "37798:112:32" }, { "body": { "nodeType": "YulBlock", - "src": "38468:119:32", + "src": "38044:119:32", "statements": [ { "nodeType": "YulAssignment", - "src": "38478:26:32", + "src": "38054:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "38490:9:32" + "src": "38066:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38501:2:32", + "src": "38077:2:32", "type": "", "value": "64" } @@ -30501,16 +29927,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "38486:3:32" + "src": "38062:3:32" }, "nodeType": "YulFunctionCall", - "src": "38486:18:32" + "src": "38062:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "38478:4:32" + "src": "38054:4:32" } ] }, @@ -30520,24 +29946,24 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "38520:9:32" + "src": "38096:9:32" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "38531:6:32" + "src": "38107:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "38513:6:32" + "src": "38089:6:32" }, "nodeType": "YulFunctionCall", - "src": "38513:25:32" + "src": "38089:25:32" }, "nodeType": "YulExpressionStatement", - "src": "38513:25:32" + "src": "38089:25:32" }, { "expression": { @@ -30547,12 +29973,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "38558:9:32" + "src": "38134:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38569:2:32", + "src": "38145:2:32", "type": "", "value": "32" } @@ -30560,27 +29986,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "38554:3:32" + "src": "38130:3:32" }, "nodeType": "YulFunctionCall", - "src": "38554:18:32" + "src": "38130:18:32" }, { "name": "value1", "nodeType": "YulIdentifier", - "src": "38574:6:32" + "src": "38150:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "38547:6:32" + "src": "38123:6:32" }, "nodeType": "YulFunctionCall", - "src": "38547:34:32" + "src": "38123:34:32" }, "nodeType": "YulExpressionStatement", - "src": "38547:34:32" + "src": "38123:34:32" } ] }, @@ -30590,19 +30016,19 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "38429:9:32", + "src": "38005:9:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "38440:6:32", + "src": "38016:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "38448:6:32", + "src": "38024:6:32", "type": "" } ], @@ -30610,16 +30036,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "38459:4:32", + "src": "38035:4:32", "type": "" } ], - "src": "38339:248:32" + "src": "37915:248:32" }, { "body": { "nodeType": "YulBlock", - "src": "38766:155:32", + "src": "38342:155:32", "statements": [ { "expression": { @@ -30627,12 +30053,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "38783:9:32" + "src": "38359:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38794:2:32", + "src": "38370:2:32", "type": "", "value": "32" } @@ -30640,13 +30066,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "38776:6:32" + "src": "38352:6:32" }, "nodeType": "YulFunctionCall", - "src": "38776:21:32" + "src": "38352:21:32" }, "nodeType": "YulExpressionStatement", - "src": "38776:21:32" + "src": "38352:21:32" }, { "expression": { @@ -30656,12 +30082,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "38817:9:32" + "src": "38393:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38828:2:32", + "src": "38404:2:32", "type": "", "value": "32" } @@ -30669,15 +30095,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "38813:3:32" + "src": "38389:3:32" }, "nodeType": "YulFunctionCall", - "src": "38813:18:32" + "src": "38389:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38833:1:32", + "src": "38409:1:32", "type": "", "value": "6" } @@ -30685,13 +30111,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "38806:6:32" + "src": "38382:6:32" }, "nodeType": "YulFunctionCall", - "src": "38806:29:32" + "src": "38382:29:32" }, "nodeType": "YulExpressionStatement", - "src": "38806:29:32" + "src": "38382:29:32" }, { "expression": { @@ -30701,12 +30127,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "38855:9:32" + "src": "38431:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38866:2:32", + "src": "38442:2:32", "type": "", "value": "64" } @@ -30714,16 +30140,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "38851:3:32" + "src": "38427:3:32" }, "nodeType": "YulFunctionCall", - "src": "38851:18:32" + "src": "38427:18:32" }, { "hexValue": "4c4243303231", "kind": "string", "nodeType": "YulLiteral", - "src": "38871:8:32", + "src": "38447:8:32", "type": "", "value": "LBC021" } @@ -30731,28 +30157,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "38844:6:32" + "src": "38420:6:32" }, "nodeType": "YulFunctionCall", - "src": "38844:36:32" + "src": "38420:36:32" }, "nodeType": "YulExpressionStatement", - "src": "38844:36:32" + "src": "38420:36:32" }, { "nodeType": "YulAssignment", - "src": "38889:26:32", + "src": "38465:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "38901:9:32" + "src": "38477:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38912:2:32", + "src": "38488:2:32", "type": "", "value": "96" } @@ -30760,16 +30186,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "38897:3:32" + "src": "38473:3:32" }, "nodeType": "YulFunctionCall", - "src": "38897:18:32" + "src": "38473:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "38889:4:32" + "src": "38465:4:32" } ] } @@ -30781,7 +30207,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "38743:9:32", + "src": "38319:9:32", "type": "" } ], @@ -30789,16 +30215,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "38757:4:32", + "src": "38333:4:32", "type": "" } ], - "src": "38592:329:32" + "src": "38168:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "39100:155:32", + "src": "38676:155:32", "statements": [ { "expression": { @@ -30806,12 +30232,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "39117:9:32" + "src": "38693:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39128:2:32", + "src": "38704:2:32", "type": "", "value": "32" } @@ -30819,13 +30245,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "39110:6:32" + "src": "38686:6:32" }, "nodeType": "YulFunctionCall", - "src": "39110:21:32" + "src": "38686:21:32" }, "nodeType": "YulExpressionStatement", - "src": "39110:21:32" + "src": "38686:21:32" }, { "expression": { @@ -30835,12 +30261,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "39151:9:32" + "src": "38727:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39162:2:32", + "src": "38738:2:32", "type": "", "value": "32" } @@ -30848,15 +30274,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "39147:3:32" + "src": "38723:3:32" }, "nodeType": "YulFunctionCall", - "src": "39147:18:32" + "src": "38723:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39167:1:32", + "src": "38743:1:32", "type": "", "value": "6" } @@ -30864,13 +30290,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "39140:6:32" + "src": "38716:6:32" }, "nodeType": "YulFunctionCall", - "src": "39140:29:32" + "src": "38716:29:32" }, "nodeType": "YulExpressionStatement", - "src": "39140:29:32" + "src": "38716:29:32" }, { "expression": { @@ -30880,12 +30306,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "39189:9:32" + "src": "38765:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39200:2:32", + "src": "38776:2:32", "type": "", "value": "64" } @@ -30893,16 +30319,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "39185:3:32" + "src": "38761:3:32" }, "nodeType": "YulFunctionCall", - "src": "39185:18:32" + "src": "38761:18:32" }, { "hexValue": "4c4243303232", "kind": "string", "nodeType": "YulLiteral", - "src": "39205:8:32", + "src": "38781:8:32", "type": "", "value": "LBC022" } @@ -30910,28 +30336,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "39178:6:32" + "src": "38754:6:32" }, "nodeType": "YulFunctionCall", - "src": "39178:36:32" + "src": "38754:36:32" }, "nodeType": "YulExpressionStatement", - "src": "39178:36:32" + "src": "38754:36:32" }, { "nodeType": "YulAssignment", - "src": "39223:26:32", + "src": "38799:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "39235:9:32" + "src": "38811:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39246:2:32", + "src": "38822:2:32", "type": "", "value": "96" } @@ -30939,16 +30365,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "39231:3:32" + "src": "38807:3:32" }, "nodeType": "YulFunctionCall", - "src": "39231:18:32" + "src": "38807:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "39223:4:32" + "src": "38799:4:32" } ] } @@ -30960,7 +30386,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "39077:9:32", + "src": "38653:9:32", "type": "" } ], @@ -30968,132 +30394,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "39091:4:32", + "src": "38667:4:32", "type": "" } ], - "src": "38926:329:32" + "src": "38502:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "39292:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39309:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39316:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39321:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "39312:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39312:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "39302:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "39302:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39302:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39349:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39352:4:32", - "type": "", - "value": "0x32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "39342:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "39342:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39342:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39373:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39376:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "39366:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "39366:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39366:15:32" - } - ] - }, - "name": "panic_error_0x32", - "nodeType": "YulFunctionDefinition", - "src": "39260:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "39566:155:32", + "src": "39010:155:32", "statements": [ { "expression": { @@ -31101,12 +30411,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "39583:9:32" + "src": "39027:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39594:2:32", + "src": "39038:2:32", "type": "", "value": "32" } @@ -31114,13 +30424,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "39576:6:32" + "src": "39020:6:32" }, "nodeType": "YulFunctionCall", - "src": "39576:21:32" + "src": "39020:21:32" }, "nodeType": "YulExpressionStatement", - "src": "39576:21:32" + "src": "39020:21:32" }, { "expression": { @@ -31130,12 +30440,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "39617:9:32" + "src": "39061:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39628:2:32", + "src": "39072:2:32", "type": "", "value": "32" } @@ -31143,15 +30453,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "39613:3:32" + "src": "39057:3:32" }, "nodeType": "YulFunctionCall", - "src": "39613:18:32" + "src": "39057:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39633:1:32", + "src": "39077:1:32", "type": "", "value": "6" } @@ -31159,13 +30469,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "39606:6:32" + "src": "39050:6:32" }, "nodeType": "YulFunctionCall", - "src": "39606:29:32" + "src": "39050:29:32" }, "nodeType": "YulExpressionStatement", - "src": "39606:29:32" + "src": "39050:29:32" }, { "expression": { @@ -31175,12 +30485,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "39655:9:32" + "src": "39099:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39666:2:32", + "src": "39110:2:32", "type": "", "value": "64" } @@ -31188,16 +30498,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "39651:3:32" + "src": "39095:3:32" }, "nodeType": "YulFunctionCall", - "src": "39651:18:32" + "src": "39095:18:32" }, { "hexValue": "4c4243303233", "kind": "string", "nodeType": "YulLiteral", - "src": "39671:8:32", + "src": "39115:8:32", "type": "", "value": "LBC023" } @@ -31205,28 +30515,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "39644:6:32" + "src": "39088:6:32" }, "nodeType": "YulFunctionCall", - "src": "39644:36:32" + "src": "39088:36:32" }, "nodeType": "YulExpressionStatement", - "src": "39644:36:32" + "src": "39088:36:32" }, { "nodeType": "YulAssignment", - "src": "39689:26:32", + "src": "39133:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "39701:9:32" + "src": "39145:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39712:2:32", + "src": "39156:2:32", "type": "", "value": "96" } @@ -31234,16 +30544,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "39697:3:32" + "src": "39141:3:32" }, "nodeType": "YulFunctionCall", - "src": "39697:18:32" + "src": "39141:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "39689:4:32" + "src": "39133:4:32" } ] } @@ -31255,7 +30565,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "39543:9:32", + "src": "38987:9:32", "type": "" } ], @@ -31263,16 +30573,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "39557:4:32", + "src": "39001:4:32", "type": "" } ], - "src": "39392:329:32" + "src": "38836:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "39900:155:32", + "src": "39344:155:32", "statements": [ { "expression": { @@ -31280,12 +30590,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "39917:9:32" + "src": "39361:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39928:2:32", + "src": "39372:2:32", "type": "", "value": "32" } @@ -31293,13 +30603,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "39910:6:32" + "src": "39354:6:32" }, "nodeType": "YulFunctionCall", - "src": "39910:21:32" + "src": "39354:21:32" }, "nodeType": "YulExpressionStatement", - "src": "39910:21:32" + "src": "39354:21:32" }, { "expression": { @@ -31309,12 +30619,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "39951:9:32" + "src": "39395:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39962:2:32", + "src": "39406:2:32", "type": "", "value": "32" } @@ -31322,15 +30632,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "39947:3:32" + "src": "39391:3:32" }, "nodeType": "YulFunctionCall", - "src": "39947:18:32" + "src": "39391:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39967:1:32", + "src": "39411:1:32", "type": "", "value": "6" } @@ -31338,13 +30648,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "39940:6:32" + "src": "39384:6:32" }, "nodeType": "YulFunctionCall", - "src": "39940:29:32" + "src": "39384:29:32" }, "nodeType": "YulExpressionStatement", - "src": "39940:29:32" + "src": "39384:29:32" }, { "expression": { @@ -31354,12 +30664,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "39989:9:32" + "src": "39433:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40000:2:32", + "src": "39444:2:32", "type": "", "value": "64" } @@ -31367,16 +30677,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "39985:3:32" + "src": "39429:3:32" }, "nodeType": "YulFunctionCall", - "src": "39985:18:32" + "src": "39429:18:32" }, { "hexValue": "4c4243303035", "kind": "string", "nodeType": "YulLiteral", - "src": "40005:8:32", + "src": "39449:8:32", "type": "", "value": "LBC005" } @@ -31384,28 +30694,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "39978:6:32" + "src": "39422:6:32" }, "nodeType": "YulFunctionCall", - "src": "39978:36:32" + "src": "39422:36:32" }, "nodeType": "YulExpressionStatement", - "src": "39978:36:32" + "src": "39422:36:32" }, { "nodeType": "YulAssignment", - "src": "40023:26:32", + "src": "39467:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "40035:9:32" + "src": "39479:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40046:2:32", + "src": "39490:2:32", "type": "", "value": "96" } @@ -31413,16 +30723,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "40031:3:32" + "src": "39475:3:32" }, "nodeType": "YulFunctionCall", - "src": "40031:18:32" + "src": "39475:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "40023:4:32" + "src": "39467:4:32" } ] } @@ -31434,7 +30744,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "39877:9:32", + "src": "39321:9:32", "type": "" } ], @@ -31442,16 +30752,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "39891:4:32", + "src": "39335:4:32", "type": "" } ], - "src": "39726:329:32" + "src": "39170:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "40299:417:32", + "src": "39743:417:32", "statements": [ { "expression": { @@ -31459,49 +30769,49 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "40316:3:32" + "src": "39760:3:32" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "40321:6:32" + "src": "39765:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "40309:6:32" + "src": "39753:6:32" }, "nodeType": "YulFunctionCall", - "src": "40309:19:32" + "src": "39753:19:32" }, "nodeType": "YulExpressionStatement", - "src": "40309:19:32" + "src": "39753:19:32" }, { "nodeType": "YulVariableDeclaration", - "src": "40337:27:32", + "src": "39781:27:32", "value": { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "40357:6:32" + "src": "39801:6:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "40351:5:32" + "src": "39795:5:32" }, "nodeType": "YulFunctionCall", - "src": "40351:13:32" + "src": "39795:13:32" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "40341:6:32", + "src": "39785:6:32", "type": "" } ] @@ -31514,12 +30824,12 @@ { "name": "value1", "nodeType": "YulIdentifier", - "src": "40412:6:32" + "src": "39856:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40420:2:32", + "src": "39864:2:32", "type": "", "value": "32" } @@ -31527,22 +30837,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "40408:3:32" + "src": "39852:3:32" }, "nodeType": "YulFunctionCall", - "src": "40408:15:32" + "src": "39852:15:32" }, { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "40429:3:32" + "src": "39873:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40434:2:32", + "src": "39878:2:32", "type": "", "value": "32" } @@ -31550,57 +30860,57 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "40425:3:32" + "src": "39869:3:32" }, "nodeType": "YulFunctionCall", - "src": "40425:12:32" + "src": "39869:12:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "40439:6:32" + "src": "39883:6:32" } ], "functionName": { "name": "copy_memory_to_memory_with_cleanup", "nodeType": "YulIdentifier", - "src": "40373:34:32" + "src": "39817:34:32" }, "nodeType": "YulFunctionCall", - "src": "40373:73:32" + "src": "39817:73:32" }, "nodeType": "YulExpressionStatement", - "src": "40373:73:32" + "src": "39817:73:32" }, { "nodeType": "YulVariableDeclaration", - "src": "40455:26:32", + "src": "39899:26:32", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "40469:3:32" + "src": "39913:3:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "40474:6:32" + "src": "39918:6:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "40465:3:32" + "src": "39909:3:32" }, "nodeType": "YulFunctionCall", - "src": "40465:16:32" + "src": "39909:16:32" }, "variables": [ { "name": "_1", "nodeType": "YulTypedName", - "src": "40459:2:32", + "src": "39903:2:32", "type": "" } ] @@ -31613,12 +30923,12 @@ { "name": "_1", "nodeType": "YulIdentifier", - "src": "40501:2:32" + "src": "39945:2:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40505:2:32", + "src": "39949:2:32", "type": "", "value": "32" } @@ -31626,17 +30936,17 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "40497:3:32" + "src": "39941:3:32" }, "nodeType": "YulFunctionCall", - "src": "40497:11:32" + "src": "39941:11:32" }, { "arguments": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "40514:6:32" + "src": "39958:6:32" }, { "arguments": [ @@ -31647,14 +30957,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "40534:2:32", + "src": "39978:2:32", "type": "", "value": "96" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40538:1:32", + "src": "39982:1:32", "type": "", "value": "1" } @@ -31662,15 +30972,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "40530:3:32" + "src": "39974:3:32" }, "nodeType": "YulFunctionCall", - "src": "40530:10:32" + "src": "39974:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40542:1:32", + "src": "39986:1:32", "type": "", "value": "1" } @@ -31678,65 +30988,65 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "40526:3:32" + "src": "39970:3:32" }, "nodeType": "YulFunctionCall", - "src": "40526:18:32" + "src": "39970:18:32" } ], "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "40522:3:32" + "src": "39966:3:32" }, "nodeType": "YulFunctionCall", - "src": "40522:23:32" + "src": "39966:23:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "40510:3:32" + "src": "39954:3:32" }, "nodeType": "YulFunctionCall", - "src": "40510:36:32" + "src": "39954:36:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "40490:6:32" + "src": "39934:6:32" }, "nodeType": "YulFunctionCall", - "src": "40490:57:32" + "src": "39934:57:32" }, "nodeType": "YulExpressionStatement", - "src": "40490:57:32" + "src": "39934:57:32" }, { "nodeType": "YulVariableDeclaration", - "src": "40556:29:32", + "src": "40000:29:32", "value": { "arguments": [ { "name": "value3", "nodeType": "YulIdentifier", - "src": "40578:6:32" + "src": "40022:6:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "40572:5:32" + "src": "40016:5:32" }, "nodeType": "YulFunctionCall", - "src": "40572:13:32" + "src": "40016:13:32" }, "variables": [ { "name": "length_1", "nodeType": "YulTypedName", - "src": "40560:8:32", + "src": "40004:8:32", "type": "" } ] @@ -31749,12 +31059,12 @@ { "name": "value3", "nodeType": "YulIdentifier", - "src": "40633:6:32" + "src": "40077:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40641:2:32", + "src": "40085:2:32", "type": "", "value": "32" } @@ -31762,22 +31072,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "40629:3:32" + "src": "40073:3:32" }, "nodeType": "YulFunctionCall", - "src": "40629:15:32" + "src": "40073:15:32" }, { "arguments": [ { "name": "_1", "nodeType": "YulIdentifier", - "src": "40650:2:32" + "src": "40094:2:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40654:2:32", + "src": "40098:2:32", "type": "", "value": "52" } @@ -31785,31 +31095,31 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "40646:3:32" + "src": "40090:3:32" }, "nodeType": "YulFunctionCall", - "src": "40646:11:32" + "src": "40090:11:32" }, { "name": "length_1", "nodeType": "YulIdentifier", - "src": "40659:8:32" + "src": "40103:8:32" } ], "functionName": { "name": "copy_memory_to_memory_with_cleanup", "nodeType": "YulIdentifier", - "src": "40594:34:32" + "src": "40038:34:32" }, "nodeType": "YulFunctionCall", - "src": "40594:74:32" + "src": "40038:74:32" }, "nodeType": "YulExpressionStatement", - "src": "40594:74:32" + "src": "40038:74:32" }, { "nodeType": "YulAssignment", - "src": "40677:33:32", + "src": "40121:33:32", "value": { "arguments": [ { @@ -31817,26 +31127,26 @@ { "name": "_1", "nodeType": "YulIdentifier", - "src": "40692:2:32" + "src": "40136:2:32" }, { "name": "length_1", "nodeType": "YulIdentifier", - "src": "40696:8:32" + "src": "40140:8:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "40688:3:32" + "src": "40132:3:32" }, "nodeType": "YulFunctionCall", - "src": "40688:17:32" + "src": "40132:17:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40707:2:32", + "src": "40151:2:32", "type": "", "value": "52" } @@ -31844,16 +31154,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "40684:3:32" + "src": "40128:3:32" }, "nodeType": "YulFunctionCall", - "src": "40684:26:32" + "src": "40128:26:32" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "40677:3:32" + "src": "40121:3:32" } ] } @@ -31865,31 +31175,31 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "40251:3:32", + "src": "39695:3:32", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "40256:6:32", + "src": "39700:6:32", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "40264:6:32", + "src": "39708:6:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "40272:6:32", + "src": "39716:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "40280:6:32", + "src": "39724:6:32", "type": "" } ], @@ -31897,21 +31207,21 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "40291:3:32", + "src": "39735:3:32", "type": "" } ], - "src": "40060:656:32" + "src": "39504:656:32" }, { "body": { "nodeType": "YulBlock", - "src": "40784:379:32", + "src": "40228:379:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "40833:16:32", + "src": "40277:16:32", "statements": [ { "expression": { @@ -31919,14 +31229,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "40842:1:32", + "src": "40286:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40845:1:32", + "src": "40289:1:32", "type": "", "value": "0" } @@ -31934,13 +31244,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "40835:6:32" + "src": "40279:6:32" }, "nodeType": "YulFunctionCall", - "src": "40835:12:32" + "src": "40279:12:32" }, "nodeType": "YulExpressionStatement", - "src": "40835:12:32" + "src": "40279:12:32" } ] }, @@ -31953,12 +31263,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "40812:6:32" + "src": "40256:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40820:4:32", + "src": "40264:4:32", "type": "", "value": "0x1f" } @@ -31966,68 +31276,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "40808:3:32" + "src": "40252:3:32" }, "nodeType": "YulFunctionCall", - "src": "40808:17:32" + "src": "40252:17:32" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "40827:3:32" + "src": "40271:3:32" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "40804:3:32" + "src": "40248:3:32" }, "nodeType": "YulFunctionCall", - "src": "40804:27:32" + "src": "40248:27:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "40797:6:32" + "src": "40241:6:32" }, "nodeType": "YulFunctionCall", - "src": "40797:35:32" + "src": "40241:35:32" }, "nodeType": "YulIf", - "src": "40794:55:32" + "src": "40238:55:32" }, { "nodeType": "YulVariableDeclaration", - "src": "40858:23:32", + "src": "40302:23:32", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "40874:6:32" + "src": "40318:6:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "40868:5:32" + "src": "40312:5:32" }, "nodeType": "YulFunctionCall", - "src": "40868:13:32" + "src": "40312:13:32" }, "variables": [ { "name": "_1", "nodeType": "YulTypedName", - "src": "40862:2:32", + "src": "40306:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "40890:64:32", + "src": "40334:64:32", "value": { "arguments": [ { @@ -32035,31 +31345,31 @@ { "name": "_1", "nodeType": "YulIdentifier", - "src": "40950:2:32" + "src": "40394:2:32" } ], "functionName": { "name": "array_allocation_size_string", "nodeType": "YulIdentifier", - "src": "40921:28:32" + "src": "40365:28:32" }, "nodeType": "YulFunctionCall", - "src": "40921:32:32" + "src": "40365:32:32" } ], "functionName": { "name": "allocate_memory", "nodeType": "YulIdentifier", - "src": "40905:15:32" + "src": "40349:15:32" }, "nodeType": "YulFunctionCall", - "src": "40905:49:32" + "src": "40349:49:32" }, "variables": [ { "name": "array_1", "nodeType": "YulTypedName", - "src": "40894:7:32", + "src": "40338:7:32", "type": "" } ] @@ -32070,29 +31380,29 @@ { "name": "array_1", "nodeType": "YulIdentifier", - "src": "40970:7:32" + "src": "40414:7:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "40979:2:32" + "src": "40423:2:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "40963:6:32" + "src": "40407:6:32" }, "nodeType": "YulFunctionCall", - "src": "40963:19:32" + "src": "40407:19:32" }, "nodeType": "YulExpressionStatement", - "src": "40963:19:32" + "src": "40407:19:32" }, { "body": { "nodeType": "YulBlock", - "src": "41030:16:32", + "src": "40474:16:32", "statements": [ { "expression": { @@ -32100,14 +31410,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "41039:1:32", + "src": "40483:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41042:1:32", + "src": "40486:1:32", "type": "", "value": "0" } @@ -32115,13 +31425,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "41032:6:32" + "src": "40476:6:32" }, "nodeType": "YulFunctionCall", - "src": "41032:12:32" + "src": "40476:12:32" }, "nodeType": "YulExpressionStatement", - "src": "41032:12:32" + "src": "40476:12:32" } ] }, @@ -32134,26 +31444,26 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "41005:6:32" + "src": "40449:6:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "41013:2:32" + "src": "40457:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "41001:3:32" + "src": "40445:3:32" }, "nodeType": "YulFunctionCall", - "src": "41001:15:32" + "src": "40445:15:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41018:4:32", + "src": "40462:4:32", "type": "", "value": "0x20" } @@ -32161,27 +31471,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "40997:3:32" + "src": "40441:3:32" }, "nodeType": "YulFunctionCall", - "src": "40997:26:32" + "src": "40441:26:32" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "41025:3:32" + "src": "40469:3:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "40994:2:32" + "src": "40438:2:32" }, "nodeType": "YulFunctionCall", - "src": "40994:35:32" + "src": "40438:35:32" }, "nodeType": "YulIf", - "src": "40991:55:32" + "src": "40435:55:32" }, { "expression": { @@ -32191,12 +31501,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "41094:6:32" + "src": "40538:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41102:4:32", + "src": "40546:4:32", "type": "", "value": "0x20" } @@ -32204,22 +31514,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "41090:3:32" + "src": "40534:3:32" }, "nodeType": "YulFunctionCall", - "src": "41090:17:32" + "src": "40534:17:32" }, { "arguments": [ { "name": "array_1", "nodeType": "YulIdentifier", - "src": "41113:7:32" + "src": "40557:7:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41122:4:32", + "src": "40566:4:32", "type": "", "value": "0x20" } @@ -32227,41 +31537,41 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "41109:3:32" + "src": "40553:3:32" }, "nodeType": "YulFunctionCall", - "src": "41109:18:32" + "src": "40553:18:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "41129:2:32" + "src": "40573:2:32" } ], "functionName": { "name": "copy_memory_to_memory_with_cleanup", "nodeType": "YulIdentifier", - "src": "41055:34:32" + "src": "40499:34:32" }, "nodeType": "YulFunctionCall", - "src": "41055:77:32" + "src": "40499:77:32" }, "nodeType": "YulExpressionStatement", - "src": "41055:77:32" + "src": "40499:77:32" }, { "nodeType": "YulAssignment", - "src": "41141:16:32", + "src": "40585:16:32", "value": { "name": "array_1", "nodeType": "YulIdentifier", - "src": "41150:7:32" + "src": "40594:7:32" }, "variableNames": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "41141:5:32" + "src": "40585:5:32" } ] } @@ -32273,13 +31583,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "40758:6:32", + "src": "40202:6:32", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "40766:3:32", + "src": "40210:3:32", "type": "" } ], @@ -32287,21 +31597,21 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "40774:5:32", + "src": "40218:5:32", "type": "" } ], - "src": "40721:442:32" + "src": "40165:442:32" }, { "body": { "nodeType": "YulBlock", - "src": "41258:245:32", + "src": "40702:245:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "41304:16:32", + "src": "40748:16:32", "statements": [ { "expression": { @@ -32309,14 +31619,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "41313:1:32", + "src": "40757:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41316:1:32", + "src": "40760:1:32", "type": "", "value": "0" } @@ -32324,13 +31634,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "41306:6:32" + "src": "40750:6:32" }, "nodeType": "YulFunctionCall", - "src": "41306:12:32" + "src": "40750:12:32" }, "nodeType": "YulExpressionStatement", - "src": "41306:12:32" + "src": "40750:12:32" } ] }, @@ -32341,26 +31651,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "41279:7:32" + "src": "40723:7:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "41288:9:32" + "src": "40732:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "41275:3:32" + "src": "40719:3:32" }, "nodeType": "YulFunctionCall", - "src": "41275:23:32" + "src": "40719:23:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41300:2:32", + "src": "40744:2:32", "type": "", "value": "32" } @@ -32368,38 +31678,38 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "41271:3:32" + "src": "40715:3:32" }, "nodeType": "YulFunctionCall", - "src": "41271:32:32" + "src": "40715:32:32" }, "nodeType": "YulIf", - "src": "41268:52:32" + "src": "40712:52:32" }, { "nodeType": "YulVariableDeclaration", - "src": "41329:30:32", + "src": "40773:30:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "41349:9:32" + "src": "40793:9:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "41343:5:32" + "src": "40787:5:32" }, "nodeType": "YulFunctionCall", - "src": "41343:16:32" + "src": "40787:16:32" }, "variables": [ { "name": "offset", "nodeType": "YulTypedName", - "src": "41333:6:32", + "src": "40777:6:32", "type": "" } ] @@ -32407,7 +31717,7 @@ { "body": { "nodeType": "YulBlock", - "src": "41402:16:32", + "src": "40846:16:32", "statements": [ { "expression": { @@ -32415,14 +31725,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "41411:1:32", + "src": "40855:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41414:1:32", + "src": "40858:1:32", "type": "", "value": "0" } @@ -32430,13 +31740,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "41404:6:32" + "src": "40848:6:32" }, "nodeType": "YulFunctionCall", - "src": "41404:12:32" + "src": "40848:12:32" }, "nodeType": "YulExpressionStatement", - "src": "41404:12:32" + "src": "40848:12:32" } ] }, @@ -32445,7 +31755,7 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "41374:6:32" + "src": "40818:6:32" }, { "arguments": [ @@ -32454,14 +31764,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "41390:2:32", + "src": "40834:2:32", "type": "", "value": "64" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41394:1:32", + "src": "40838:1:32", "type": "", "value": "1" } @@ -32469,15 +31779,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "41386:3:32" + "src": "40830:3:32" }, "nodeType": "YulFunctionCall", - "src": "41386:10:32" + "src": "40830:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41398:1:32", + "src": "40842:1:32", "type": "", "value": "1" } @@ -32485,26 +31795,26 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "41382:3:32" + "src": "40826:3:32" }, "nodeType": "YulFunctionCall", - "src": "41382:18:32" + "src": "40826:18:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "41371:2:32" + "src": "40815:2:32" }, "nodeType": "YulFunctionCall", - "src": "41371:30:32" + "src": "40815:30:32" }, "nodeType": "YulIf", - "src": "41368:50:32" + "src": "40812:50:32" }, { "nodeType": "YulAssignment", - "src": "41427:70:32", + "src": "40871:70:32", "value": { "arguments": [ { @@ -32512,41 +31822,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "41469:9:32" + "src": "40913:9:32" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "41480:6:32" + "src": "40924:6:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "41465:3:32" + "src": "40909:3:32" }, "nodeType": "YulFunctionCall", - "src": "41465:22:32" + "src": "40909:22:32" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "41489:7:32" + "src": "40933:7:32" } ], "functionName": { "name": "abi_decode_bytes_fromMemory", "nodeType": "YulIdentifier", - "src": "41437:27:32" + "src": "40881:27:32" }, "nodeType": "YulFunctionCall", - "src": "41437:60:32" + "src": "40881:60:32" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "41427:6:32" + "src": "40871:6:32" } ] } @@ -32558,13 +31868,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "41224:9:32", + "src": "40668:9:32", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "41235:7:32", + "src": "40679:7:32", "type": "" } ], @@ -32572,16 +31882,16 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "41247:6:32", + "src": "40691:6:32", "type": "" } ], - "src": "41168:335:32" + "src": "40612:335:32" }, { "body": { "nodeType": "YulBlock", - "src": "41853:263:32", + "src": "41297:263:32", "statements": [ { "expression": { @@ -32589,13 +31899,13 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "41870:3:32" + "src": "41314:3:32" }, { "hexValue": "20", "kind": "string", "nodeType": "YulLiteral", - "src": "41875:3:32", + "src": "41319:3:32", "type": "", "value": " " } @@ -32603,13 +31913,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "41863:6:32" + "src": "41307:6:32" }, "nodeType": "YulFunctionCall", - "src": "41863:16:32" + "src": "41307:16:32" }, "nodeType": "YulExpressionStatement", - "src": "41863:16:32" + "src": "41307:16:32" }, { "expression": { @@ -32619,12 +31929,12 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "41899:3:32" + "src": "41343:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41904:1:32", + "src": "41348:1:32", "type": "", "value": "1" } @@ -32632,27 +31942,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "41895:3:32" + "src": "41339:3:32" }, "nodeType": "YulFunctionCall", - "src": "41895:11:32" + "src": "41339:11:32" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "41908:6:32" + "src": "41352:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "41888:6:32" + "src": "41332:6:32" }, "nodeType": "YulFunctionCall", - "src": "41888:27:32" + "src": "41332:27:32" }, "nodeType": "YulExpressionStatement", - "src": "41888:27:32" + "src": "41332:27:32" }, { "expression": { @@ -32662,12 +31972,12 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "41935:3:32" + "src": "41379:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41940:2:32", + "src": "41384:2:32", "type": "", "value": "33" } @@ -32675,16 +31985,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "41931:3:32" + "src": "41375:3:32" }, "nodeType": "YulFunctionCall", - "src": "41931:12:32" + "src": "41375:12:32" }, { "hexValue": "75", "kind": "string", "nodeType": "YulLiteral", - "src": "41945:3:32", + "src": "41389:3:32", "type": "", "value": "u" } @@ -32692,38 +32002,38 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "41924:6:32" + "src": "41368:6:32" }, "nodeType": "YulFunctionCall", - "src": "41924:25:32" + "src": "41368:25:32" }, "nodeType": "YulExpressionStatement", - "src": "41924:25:32" + "src": "41368:25:32" }, { "nodeType": "YulVariableDeclaration", - "src": "41958:27:32", + "src": "41402:27:32", "value": { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "41978:6:32" + "src": "41422:6:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "41972:5:32" + "src": "41416:5:32" }, "nodeType": "YulFunctionCall", - "src": "41972:13:32" + "src": "41416:13:32" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "41962:6:32", + "src": "41406:6:32", "type": "" } ] @@ -32736,12 +32046,12 @@ { "name": "value1", "nodeType": "YulIdentifier", - "src": "42033:6:32" + "src": "41477:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "42041:4:32", + "src": "41485:4:32", "type": "", "value": "0x20" } @@ -32749,22 +32059,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "42029:3:32" + "src": "41473:3:32" }, "nodeType": "YulFunctionCall", - "src": "42029:17:32" + "src": "41473:17:32" }, { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "42052:3:32" + "src": "41496:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "42057:2:32", + "src": "41501:2:32", "type": "", "value": "34" } @@ -32772,31 +32082,31 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "42048:3:32" + "src": "41492:3:32" }, "nodeType": "YulFunctionCall", - "src": "42048:12:32" + "src": "41492:12:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "42062:6:32" + "src": "41506:6:32" } ], "functionName": { "name": "copy_memory_to_memory_with_cleanup", "nodeType": "YulIdentifier", - "src": "41994:34:32" + "src": "41438:34:32" }, "nodeType": "YulFunctionCall", - "src": "41994:75:32" + "src": "41438:75:32" }, "nodeType": "YulExpressionStatement", - "src": "41994:75:32" + "src": "41438:75:32" }, { "nodeType": "YulAssignment", - "src": "42078:32:32", + "src": "41522:32:32", "value": { "arguments": [ { @@ -32804,26 +32114,26 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "42093:3:32" + "src": "41537:3:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "42098:6:32" + "src": "41542:6:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "42089:3:32" + "src": "41533:3:32" }, "nodeType": "YulFunctionCall", - "src": "42089:16:32" + "src": "41533:16:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "42107:2:32", + "src": "41551:2:32", "type": "", "value": "34" } @@ -32831,16 +32141,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "42085:3:32" + "src": "41529:3:32" }, "nodeType": "YulFunctionCall", - "src": "42085:25:32" + "src": "41529:25:32" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "42078:3:32" + "src": "41522:3:32" } ] } @@ -32852,19 +32162,19 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "41821:3:32", + "src": "41265:3:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "41826:6:32", + "src": "41270:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "41834:6:32", + "src": "41278:6:32", "type": "" } ], @@ -32872,16 +32182,16 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "41845:3:32", + "src": "41289:3:32", "type": "" } ], - "src": "41508:608:32" + "src": "40952:608:32" }, { "body": { "nodeType": "YulBlock", - "src": "42316:273:32", + "src": "41760:273:32", "statements": [ { "expression": { @@ -32889,12 +32199,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "42333:9:32" + "src": "41777:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "42344:2:32", + "src": "41788:2:32", "type": "", "value": "96" } @@ -32902,35 +32212,35 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "42326:6:32" + "src": "41770:6:32" }, "nodeType": "YulFunctionCall", - "src": "42326:21:32" + "src": "41770:21:32" }, "nodeType": "YulExpressionStatement", - "src": "42326:21:32" + "src": "41770:21:32" }, { "nodeType": "YulVariableDeclaration", - "src": "42356:59:32", + "src": "41800:59:32", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "42388:6:32" + "src": "41832:6:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "42400:9:32" + "src": "41844:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "42411:2:32", + "src": "41855:2:32", "type": "", "value": "96" } @@ -32938,25 +32248,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "42396:3:32" + "src": "41840:3:32" }, "nodeType": "YulFunctionCall", - "src": "42396:18:32" + "src": "41840:18:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "42370:17:32" + "src": "41814:17:32" }, "nodeType": "YulFunctionCall", - "src": "42370:45:32" + "src": "41814:45:32" }, "variables": [ { "name": "tail_1", "nodeType": "YulTypedName", - "src": "42360:6:32", + "src": "41804:6:32", "type": "" } ] @@ -32969,12 +32279,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "42435:9:32" + "src": "41879:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "42446:2:32", + "src": "41890:2:32", "type": "", "value": "32" } @@ -32982,73 +32292,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "42431:3:32" + "src": "41875:3:32" }, "nodeType": "YulFunctionCall", - "src": "42431:18:32" + "src": "41875:18:32" }, { "arguments": [ { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "42455:6:32" + "src": "41899:6:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "42463:9:32" + "src": "41907:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "42451:3:32" + "src": "41895:3:32" }, "nodeType": "YulFunctionCall", - "src": "42451:22:32" + "src": "41895:22:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "42424:6:32" + "src": "41868:6:32" }, "nodeType": "YulFunctionCall", - "src": "42424:50:32" + "src": "41868:50:32" }, "nodeType": "YulExpressionStatement", - "src": "42424:50:32" + "src": "41868:50:32" }, { "nodeType": "YulAssignment", - "src": "42483:41:32", + "src": "41927:41:32", "value": { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "42509:6:32" + "src": "41953:6:32" }, { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "42517:6:32" + "src": "41961:6:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "42491:17:32" + "src": "41935:17:32" }, "nodeType": "YulFunctionCall", - "src": "42491:33:32" + "src": "41935:33:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "42483:4:32" + "src": "41927:4:32" } ] }, @@ -33060,12 +32370,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "42544:9:32" + "src": "41988:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "42555:2:32", + "src": "41999:2:32", "type": "", "value": "64" } @@ -33073,10 +32383,10 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "42540:3:32" + "src": "41984:3:32" }, "nodeType": "YulFunctionCall", - "src": "42540:18:32" + "src": "41984:18:32" }, { "arguments": [ @@ -33085,37 +32395,37 @@ { "name": "value2", "nodeType": "YulIdentifier", - "src": "42574:6:32" + "src": "42018:6:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "42567:6:32" + "src": "42011:6:32" }, "nodeType": "YulFunctionCall", - "src": "42567:14:32" + "src": "42011:14:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "42560:6:32" + "src": "42004:6:32" }, "nodeType": "YulFunctionCall", - "src": "42560:22:32" + "src": "42004:22:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "42533:6:32" + "src": "41977:6:32" }, "nodeType": "YulFunctionCall", - "src": "42533:50:32" + "src": "41977:50:32" }, "nodeType": "YulExpressionStatement", - "src": "42533:50:32" + "src": "41977:50:32" } ] }, @@ -33125,25 +32435,25 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "42269:9:32", + "src": "41713:9:32", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "42280:6:32", + "src": "41724:6:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "42288:6:32", + "src": "41732:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "42296:6:32", + "src": "41740:6:32", "type": "" } ], @@ -33151,16 +32461,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "42307:4:32", + "src": "41751:4:32", "type": "" } ], - "src": "42121:468:32" + "src": "41565:468:32" }, { "body": { "nodeType": "YulBlock", - "src": "42768:155:32", + "src": "42212:155:32", "statements": [ { "expression": { @@ -33168,12 +32478,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "42785:9:32" + "src": "42229:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "42796:2:32", + "src": "42240:2:32", "type": "", "value": "32" } @@ -33181,13 +32491,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "42778:6:32" + "src": "42222:6:32" }, "nodeType": "YulFunctionCall", - "src": "42778:21:32" + "src": "42222:21:32" }, "nodeType": "YulExpressionStatement", - "src": "42778:21:32" + "src": "42222:21:32" }, { "expression": { @@ -33197,12 +32507,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "42819:9:32" + "src": "42263:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "42830:2:32", + "src": "42274:2:32", "type": "", "value": "32" } @@ -33210,15 +32520,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "42815:3:32" + "src": "42259:3:32" }, "nodeType": "YulFunctionCall", - "src": "42815:18:32" + "src": "42259:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "42835:1:32", + "src": "42279:1:32", "type": "", "value": "6" } @@ -33226,13 +32536,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "42808:6:32" + "src": "42252:6:32" }, "nodeType": "YulFunctionCall", - "src": "42808:29:32" + "src": "42252:29:32" }, "nodeType": "YulExpressionStatement", - "src": "42808:29:32" + "src": "42252:29:32" }, { "expression": { @@ -33242,12 +32552,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "42857:9:32" + "src": "42301:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "42868:2:32", + "src": "42312:2:32", "type": "", "value": "64" } @@ -33255,16 +32565,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "42853:3:32" + "src": "42297:3:32" }, "nodeType": "YulFunctionCall", - "src": "42853:18:32" + "src": "42297:18:32" }, { "hexValue": "4c4243303234", "kind": "string", "nodeType": "YulLiteral", - "src": "42873:8:32", + "src": "42317:8:32", "type": "", "value": "LBC024" } @@ -33272,28 +32582,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "42846:6:32" + "src": "42290:6:32" }, "nodeType": "YulFunctionCall", - "src": "42846:36:32" + "src": "42290:36:32" }, "nodeType": "YulExpressionStatement", - "src": "42846:36:32" + "src": "42290:36:32" }, { "nodeType": "YulAssignment", - "src": "42891:26:32", + "src": "42335:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "42903:9:32" + "src": "42347:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "42914:2:32", + "src": "42358:2:32", "type": "", "value": "96" } @@ -33301,16 +32611,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "42899:3:32" + "src": "42343:3:32" }, "nodeType": "YulFunctionCall", - "src": "42899:18:32" + "src": "42343:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "42891:4:32" + "src": "42335:4:32" } ] } @@ -33322,7 +32632,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "42745:9:32", + "src": "42189:9:32", "type": "" } ], @@ -33330,16 +32640,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "42759:4:32", + "src": "42203:4:32", "type": "" } ], - "src": "42594:329:32" + "src": "42038:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "43102:155:32", + "src": "42546:155:32", "statements": [ { "expression": { @@ -33347,12 +32657,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "43119:9:32" + "src": "42563:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "43130:2:32", + "src": "42574:2:32", "type": "", "value": "32" } @@ -33360,13 +32670,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "43112:6:32" + "src": "42556:6:32" }, "nodeType": "YulFunctionCall", - "src": "43112:21:32" + "src": "42556:21:32" }, "nodeType": "YulExpressionStatement", - "src": "43112:21:32" + "src": "42556:21:32" }, { "expression": { @@ -33376,12 +32686,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "43153:9:32" + "src": "42597:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "43164:2:32", + "src": "42608:2:32", "type": "", "value": "32" } @@ -33389,15 +32699,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "43149:3:32" + "src": "42593:3:32" }, "nodeType": "YulFunctionCall", - "src": "43149:18:32" + "src": "42593:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "43169:1:32", + "src": "42613:1:32", "type": "", "value": "6" } @@ -33405,13 +32715,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "43142:6:32" + "src": "42586:6:32" }, "nodeType": "YulFunctionCall", - "src": "43142:29:32" + "src": "42586:29:32" }, "nodeType": "YulExpressionStatement", - "src": "43142:29:32" + "src": "42586:29:32" }, { "expression": { @@ -33421,12 +32731,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "43191:9:32" + "src": "42635:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "43202:2:32", + "src": "42646:2:32", "type": "", "value": "64" } @@ -33434,16 +32744,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "43187:3:32" + "src": "42631:3:32" }, "nodeType": "YulFunctionCall", - "src": "43187:18:32" + "src": "42631:18:32" }, { "hexValue": "4c4243303235", "kind": "string", "nodeType": "YulLiteral", - "src": "43207:8:32", + "src": "42651:8:32", "type": "", "value": "LBC025" } @@ -33451,28 +32761,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "43180:6:32" + "src": "42624:6:32" }, "nodeType": "YulFunctionCall", - "src": "43180:36:32" + "src": "42624:36:32" }, "nodeType": "YulExpressionStatement", - "src": "43180:36:32" + "src": "42624:36:32" }, { "nodeType": "YulAssignment", - "src": "43225:26:32", + "src": "42669:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "43237:9:32" + "src": "42681:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "43248:2:32", + "src": "42692:2:32", "type": "", "value": "96" } @@ -33480,16 +32790,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "43233:3:32" + "src": "42677:3:32" }, "nodeType": "YulFunctionCall", - "src": "43233:18:32" + "src": "42677:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "43225:4:32" + "src": "42669:4:32" } ] } @@ -33501,7 +32811,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "43079:9:32", + "src": "42523:9:32", "type": "" } ], @@ -33509,24 +32819,24 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "43093:4:32", + "src": "42537:4:32", "type": "" } ], - "src": "42928:329:32" + "src": "42372:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "43309:125:32", + "src": "42753:125:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "43319:20:32", + "src": "42763:20:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "43329:10:32", + "src": "42773:10:32", "type": "", "value": "0xffffffff" }, @@ -33534,14 +32844,14 @@ { "name": "_1", "nodeType": "YulTypedName", - "src": "43323:2:32", + "src": "42767:2:32", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "43348:34:32", + "src": "42792:34:32", "value": { "arguments": [ { @@ -33549,64 +32859,64 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "43363:1:32" + "src": "42807:1:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "43366:2:32" + "src": "42810:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "43359:3:32" + "src": "42803:3:32" }, "nodeType": "YulFunctionCall", - "src": "43359:10:32" + "src": "42803:10:32" }, { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "43375:1:32" + "src": "42819:1:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "43378:2:32" + "src": "42822:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "43371:3:32" + "src": "42815:3:32" }, "nodeType": "YulFunctionCall", - "src": "43371:10:32" + "src": "42815:10:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "43355:3:32" + "src": "42799:3:32" }, "nodeType": "YulFunctionCall", - "src": "43355:27:32" + "src": "42799:27:32" }, "variableNames": [ { "name": "sum", "nodeType": "YulIdentifier", - "src": "43348:3:32" + "src": "42792:3:32" } ] }, { "body": { "nodeType": "YulBlock", - "src": "43406:22:32", + "src": "42850:22:32", "statements": [ { "expression": { @@ -33614,13 +32924,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "43408:16:32" + "src": "42852:16:32" }, "nodeType": "YulFunctionCall", - "src": "43408:18:32" + "src": "42852:18:32" }, "nodeType": "YulExpressionStatement", - "src": "43408:18:32" + "src": "42852:18:32" } ] }, @@ -33629,24 +32939,24 @@ { "name": "sum", "nodeType": "YulIdentifier", - "src": "43397:3:32" + "src": "42841:3:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "43402:2:32" + "src": "42846:2:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "43394:2:32" + "src": "42838:2:32" }, "nodeType": "YulFunctionCall", - "src": "43394:11:32" + "src": "42838:11:32" }, "nodeType": "YulIf", - "src": "43391:37:32" + "src": "42835:37:32" } ] }, @@ -33656,13 +32966,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "43292:1:32", + "src": "42736:1:32", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "43295:1:32", + "src": "42739:1:32", "type": "" } ], @@ -33670,16 +32980,16 @@ { "name": "sum", "nodeType": "YulTypedName", - "src": "43301:3:32", + "src": "42745:3:32", "type": "" } ], - "src": "43262:172:32" + "src": "42706:172:32" }, { "body": { "nodeType": "YulBlock", - "src": "43613:155:32", + "src": "43057:155:32", "statements": [ { "expression": { @@ -33687,12 +32997,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "43630:9:32" + "src": "43074:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "43641:2:32", + "src": "43085:2:32", "type": "", "value": "32" } @@ -33700,13 +33010,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "43623:6:32" + "src": "43067:6:32" }, "nodeType": "YulFunctionCall", - "src": "43623:21:32" + "src": "43067:21:32" }, "nodeType": "YulExpressionStatement", - "src": "43623:21:32" + "src": "43067:21:32" }, { "expression": { @@ -33716,12 +33026,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "43664:9:32" + "src": "43108:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "43675:2:32", + "src": "43119:2:32", "type": "", "value": "32" } @@ -33729,15 +33039,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "43660:3:32" + "src": "43104:3:32" }, "nodeType": "YulFunctionCall", - "src": "43660:18:32" + "src": "43104:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "43680:1:32", + "src": "43124:1:32", "type": "", "value": "6" } @@ -33745,13 +33055,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "43653:6:32" + "src": "43097:6:32" }, "nodeType": "YulFunctionCall", - "src": "43653:29:32" + "src": "43097:29:32" }, "nodeType": "YulExpressionStatement", - "src": "43653:29:32" + "src": "43097:29:32" }, { "expression": { @@ -33761,12 +33071,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "43702:9:32" + "src": "43146:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "43713:2:32", + "src": "43157:2:32", "type": "", "value": "64" } @@ -33774,16 +33084,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "43698:3:32" + "src": "43142:3:32" }, "nodeType": "YulFunctionCall", - "src": "43698:18:32" + "src": "43142:18:32" }, { "hexValue": "4c4243303236", "kind": "string", "nodeType": "YulLiteral", - "src": "43718:8:32", + "src": "43162:8:32", "type": "", "value": "LBC026" } @@ -33791,28 +33101,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "43691:6:32" + "src": "43135:6:32" }, "nodeType": "YulFunctionCall", - "src": "43691:36:32" + "src": "43135:36:32" }, "nodeType": "YulExpressionStatement", - "src": "43691:36:32" + "src": "43135:36:32" }, { "nodeType": "YulAssignment", - "src": "43736:26:32", + "src": "43180:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "43748:9:32" + "src": "43192:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "43759:2:32", + "src": "43203:2:32", "type": "", "value": "96" } @@ -33820,16 +33130,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "43744:3:32" + "src": "43188:3:32" }, "nodeType": "YulFunctionCall", - "src": "43744:18:32" + "src": "43188:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "43736:4:32" + "src": "43180:4:32" } ] } @@ -33841,7 +33151,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "43590:9:32", + "src": "43034:9:32", "type": "" } ], @@ -33849,16 +33159,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "43604:4:32", + "src": "43048:4:32", "type": "" } ], - "src": "43439:329:32" + "src": "42883:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "43947:155:32", + "src": "43391:155:32", "statements": [ { "expression": { @@ -33866,12 +33176,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "43964:9:32" + "src": "43408:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "43975:2:32", + "src": "43419:2:32", "type": "", "value": "32" } @@ -33879,13 +33189,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "43957:6:32" + "src": "43401:6:32" }, "nodeType": "YulFunctionCall", - "src": "43957:21:32" + "src": "43401:21:32" }, "nodeType": "YulExpressionStatement", - "src": "43957:21:32" + "src": "43401:21:32" }, { "expression": { @@ -33895,12 +33205,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "43998:9:32" + "src": "43442:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "44009:2:32", + "src": "43453:2:32", "type": "", "value": "32" } @@ -33908,15 +33218,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "43994:3:32" + "src": "43438:3:32" }, "nodeType": "YulFunctionCall", - "src": "43994:18:32" + "src": "43438:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "44014:1:32", + "src": "43458:1:32", "type": "", "value": "6" } @@ -33924,13 +33234,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "43987:6:32" + "src": "43431:6:32" }, "nodeType": "YulFunctionCall", - "src": "43987:29:32" + "src": "43431:29:32" }, "nodeType": "YulExpressionStatement", - "src": "43987:29:32" + "src": "43431:29:32" }, { "expression": { @@ -33940,12 +33250,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "44036:9:32" + "src": "43480:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "44047:2:32", + "src": "43491:2:32", "type": "", "value": "64" } @@ -33953,16 +33263,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "44032:3:32" + "src": "43476:3:32" }, "nodeType": "YulFunctionCall", - "src": "44032:18:32" + "src": "43476:18:32" }, { "hexValue": "4c4243303237", "kind": "string", "nodeType": "YulLiteral", - "src": "44052:8:32", + "src": "43496:8:32", "type": "", "value": "LBC027" } @@ -33970,28 +33280,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "44025:6:32" + "src": "43469:6:32" }, "nodeType": "YulFunctionCall", - "src": "44025:36:32" + "src": "43469:36:32" }, "nodeType": "YulExpressionStatement", - "src": "44025:36:32" + "src": "43469:36:32" }, { "nodeType": "YulAssignment", - "src": "44070:26:32", + "src": "43514:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "44082:9:32" + "src": "43526:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "44093:2:32", + "src": "43537:2:32", "type": "", "value": "96" } @@ -33999,16 +33309,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "44078:3:32" + "src": "43522:3:32" }, "nodeType": "YulFunctionCall", - "src": "44078:18:32" + "src": "43522:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "44070:4:32" + "src": "43514:4:32" } ] } @@ -34020,7 +33330,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "43924:9:32", + "src": "43368:9:32", "type": "" } ], @@ -34028,16 +33338,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "43938:4:32", + "src": "43382:4:32", "type": "" } ], - "src": "43773:329:32" + "src": "43217:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "44281:155:32", + "src": "43725:155:32", "statements": [ { "expression": { @@ -34045,12 +33355,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "44298:9:32" + "src": "43742:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "44309:2:32", + "src": "43753:2:32", "type": "", "value": "32" } @@ -34058,13 +33368,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "44291:6:32" + "src": "43735:6:32" }, "nodeType": "YulFunctionCall", - "src": "44291:21:32" + "src": "43735:21:32" }, "nodeType": "YulExpressionStatement", - "src": "44291:21:32" + "src": "43735:21:32" }, { "expression": { @@ -34074,12 +33384,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "44332:9:32" + "src": "43776:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "44343:2:32", + "src": "43787:2:32", "type": "", "value": "32" } @@ -34087,15 +33397,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "44328:3:32" + "src": "43772:3:32" }, "nodeType": "YulFunctionCall", - "src": "44328:18:32" + "src": "43772:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "44348:1:32", + "src": "43792:1:32", "type": "", "value": "6" } @@ -34103,13 +33413,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "44321:6:32" + "src": "43765:6:32" }, "nodeType": "YulFunctionCall", - "src": "44321:29:32" + "src": "43765:29:32" }, "nodeType": "YulExpressionStatement", - "src": "44321:29:32" + "src": "43765:29:32" }, { "expression": { @@ -34119,12 +33429,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "44370:9:32" + "src": "43814:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "44381:2:32", + "src": "43825:2:32", "type": "", "value": "64" } @@ -34132,16 +33442,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "44366:3:32" + "src": "43810:3:32" }, "nodeType": "YulFunctionCall", - "src": "44366:18:32" + "src": "43810:18:32" }, { "hexValue": "4c4243303337", "kind": "string", "nodeType": "YulLiteral", - "src": "44386:8:32", + "src": "43830:8:32", "type": "", "value": "LBC037" } @@ -34149,28 +33459,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "44359:6:32" + "src": "43803:6:32" }, "nodeType": "YulFunctionCall", - "src": "44359:36:32" + "src": "43803:36:32" }, "nodeType": "YulExpressionStatement", - "src": "44359:36:32" + "src": "43803:36:32" }, { "nodeType": "YulAssignment", - "src": "44404:26:32", + "src": "43848:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "44416:9:32" + "src": "43860:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "44427:2:32", + "src": "43871:2:32", "type": "", "value": "96" } @@ -34178,16 +33488,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "44412:3:32" + "src": "43856:3:32" }, "nodeType": "YulFunctionCall", - "src": "44412:18:32" + "src": "43856:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "44404:4:32" + "src": "43848:4:32" } ] } @@ -34199,7 +33509,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "44258:9:32", + "src": "43702:9:32", "type": "" } ], @@ -34207,16 +33517,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "44272:4:32", + "src": "43716:4:32", "type": "" } ], - "src": "44107:329:32" + "src": "43551:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "44615:155:32", + "src": "44059:155:32", "statements": [ { "expression": { @@ -34224,12 +33534,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "44632:9:32" + "src": "44076:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "44643:2:32", + "src": "44087:2:32", "type": "", "value": "32" } @@ -34237,13 +33547,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "44625:6:32" + "src": "44069:6:32" }, "nodeType": "YulFunctionCall", - "src": "44625:21:32" + "src": "44069:21:32" }, "nodeType": "YulExpressionStatement", - "src": "44625:21:32" + "src": "44069:21:32" }, { "expression": { @@ -34253,12 +33563,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "44666:9:32" + "src": "44110:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "44677:2:32", + "src": "44121:2:32", "type": "", "value": "32" } @@ -34266,15 +33576,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "44662:3:32" + "src": "44106:3:32" }, "nodeType": "YulFunctionCall", - "src": "44662:18:32" + "src": "44106:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "44682:1:32", + "src": "44126:1:32", "type": "", "value": "6" } @@ -34282,13 +33592,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "44655:6:32" + "src": "44099:6:32" }, "nodeType": "YulFunctionCall", - "src": "44655:29:32" + "src": "44099:29:32" }, "nodeType": "YulExpressionStatement", - "src": "44655:29:32" + "src": "44099:29:32" }, { "expression": { @@ -34298,12 +33608,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "44704:9:32" + "src": "44148:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "44715:2:32", + "src": "44159:2:32", "type": "", "value": "64" } @@ -34311,16 +33621,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "44700:3:32" + "src": "44144:3:32" }, "nodeType": "YulFunctionCall", - "src": "44700:18:32" + "src": "44144:18:32" }, { "hexValue": "4c4243303633", "kind": "string", "nodeType": "YulLiteral", - "src": "44720:8:32", + "src": "44164:8:32", "type": "", "value": "LBC063" } @@ -34328,28 +33638,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "44693:6:32" + "src": "44137:6:32" }, "nodeType": "YulFunctionCall", - "src": "44693:36:32" + "src": "44137:36:32" }, "nodeType": "YulExpressionStatement", - "src": "44693:36:32" + "src": "44137:36:32" }, { "nodeType": "YulAssignment", - "src": "44738:26:32", + "src": "44182:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "44750:9:32" + "src": "44194:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "44761:2:32", + "src": "44205:2:32", "type": "", "value": "96" } @@ -34357,16 +33667,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "44746:3:32" + "src": "44190:3:32" }, "nodeType": "YulFunctionCall", - "src": "44746:18:32" + "src": "44190:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "44738:4:32" + "src": "44182:4:32" } ] } @@ -34378,7 +33688,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "44592:9:32", + "src": "44036:9:32", "type": "" } ], @@ -34386,16 +33696,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "44606:4:32", + "src": "44050:4:32", "type": "" } ], - "src": "44441:329:32" + "src": "43885:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "44949:155:32", + "src": "44393:155:32", "statements": [ { "expression": { @@ -34403,12 +33713,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "44966:9:32" + "src": "44410:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "44977:2:32", + "src": "44421:2:32", "type": "", "value": "32" } @@ -34416,13 +33726,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "44959:6:32" + "src": "44403:6:32" }, "nodeType": "YulFunctionCall", - "src": "44959:21:32" + "src": "44403:21:32" }, "nodeType": "YulExpressionStatement", - "src": "44959:21:32" + "src": "44403:21:32" }, { "expression": { @@ -34432,12 +33742,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "45000:9:32" + "src": "44444:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "45011:2:32", + "src": "44455:2:32", "type": "", "value": "32" } @@ -34445,15 +33755,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "44996:3:32" + "src": "44440:3:32" }, "nodeType": "YulFunctionCall", - "src": "44996:18:32" + "src": "44440:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "45016:1:32", + "src": "44460:1:32", "type": "", "value": "6" } @@ -34461,13 +33771,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "44989:6:32" + "src": "44433:6:32" }, "nodeType": "YulFunctionCall", - "src": "44989:29:32" + "src": "44433:29:32" }, "nodeType": "YulExpressionStatement", - "src": "44989:29:32" + "src": "44433:29:32" }, { "expression": { @@ -34477,12 +33787,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "45038:9:32" + "src": "44482:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "45049:2:32", + "src": "44493:2:32", "type": "", "value": "64" } @@ -34490,16 +33800,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "45034:3:32" + "src": "44478:3:32" }, "nodeType": "YulFunctionCall", - "src": "45034:18:32" + "src": "44478:18:32" }, { "hexValue": "4c4243303635", "kind": "string", "nodeType": "YulLiteral", - "src": "45054:8:32", + "src": "44498:8:32", "type": "", "value": "LBC065" } @@ -34507,28 +33817,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "45027:6:32" + "src": "44471:6:32" }, "nodeType": "YulFunctionCall", - "src": "45027:36:32" + "src": "44471:36:32" }, "nodeType": "YulExpressionStatement", - "src": "45027:36:32" + "src": "44471:36:32" }, { "nodeType": "YulAssignment", - "src": "45072:26:32", + "src": "44516:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "45084:9:32" + "src": "44528:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "45095:2:32", + "src": "44539:2:32", "type": "", "value": "96" } @@ -34536,16 +33846,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "45080:3:32" + "src": "44524:3:32" }, "nodeType": "YulFunctionCall", - "src": "45080:18:32" + "src": "44524:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "45072:4:32" + "src": "44516:4:32" } ] } @@ -34557,7 +33867,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "44926:9:32", + "src": "44370:9:32", "type": "" } ], @@ -34565,16 +33875,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "44940:4:32", + "src": "44384:4:32", "type": "" } ], - "src": "44775:329:32" + "src": "44219:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "45283:155:32", + "src": "44727:155:32", "statements": [ { "expression": { @@ -34582,12 +33892,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "45300:9:32" + "src": "44744:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "45311:2:32", + "src": "44755:2:32", "type": "", "value": "32" } @@ -34595,13 +33905,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "45293:6:32" + "src": "44737:6:32" }, "nodeType": "YulFunctionCall", - "src": "45293:21:32" + "src": "44737:21:32" }, "nodeType": "YulExpressionStatement", - "src": "45293:21:32" + "src": "44737:21:32" }, { "expression": { @@ -34611,12 +33921,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "45334:9:32" + "src": "44778:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "45345:2:32", + "src": "44789:2:32", "type": "", "value": "32" } @@ -34624,15 +33934,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "45330:3:32" + "src": "44774:3:32" }, "nodeType": "YulFunctionCall", - "src": "45330:18:32" + "src": "44774:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "45350:1:32", + "src": "44794:1:32", "type": "", "value": "6" } @@ -34640,13 +33950,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "45323:6:32" + "src": "44767:6:32" }, "nodeType": "YulFunctionCall", - "src": "45323:29:32" + "src": "44767:29:32" }, "nodeType": "YulExpressionStatement", - "src": "45323:29:32" + "src": "44767:29:32" }, { "expression": { @@ -34656,12 +33966,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "45372:9:32" + "src": "44816:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "45383:2:32", + "src": "44827:2:32", "type": "", "value": "64" } @@ -34669,16 +33979,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "45368:3:32" + "src": "44812:3:32" }, "nodeType": "YulFunctionCall", - "src": "45368:18:32" + "src": "44812:18:32" }, { "hexValue": "4c4243303436", "kind": "string", "nodeType": "YulLiteral", - "src": "45388:8:32", + "src": "44832:8:32", "type": "", "value": "LBC046" } @@ -34686,28 +33996,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "45361:6:32" + "src": "44805:6:32" }, "nodeType": "YulFunctionCall", - "src": "45361:36:32" + "src": "44805:36:32" }, "nodeType": "YulExpressionStatement", - "src": "45361:36:32" + "src": "44805:36:32" }, { "nodeType": "YulAssignment", - "src": "45406:26:32", + "src": "44850:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "45418:9:32" + "src": "44862:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "45429:2:32", + "src": "44873:2:32", "type": "", "value": "96" } @@ -34715,16 +34025,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "45414:3:32" + "src": "44858:3:32" }, "nodeType": "YulFunctionCall", - "src": "45414:18:32" + "src": "44858:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "45406:4:32" + "src": "44850:4:32" } ] } @@ -34736,7 +34046,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "45260:9:32", + "src": "44704:9:32", "type": "" } ], @@ -34744,16 +34054,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "45274:4:32", + "src": "44718:4:32", "type": "" } ], - "src": "45109:329:32" + "src": "44553:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "45617:155:32", + "src": "45061:155:32", "statements": [ { "expression": { @@ -34761,12 +34071,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "45634:9:32" + "src": "45078:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "45645:2:32", + "src": "45089:2:32", "type": "", "value": "32" } @@ -34774,13 +34084,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "45627:6:32" + "src": "45071:6:32" }, "nodeType": "YulFunctionCall", - "src": "45627:21:32" + "src": "45071:21:32" }, "nodeType": "YulExpressionStatement", - "src": "45627:21:32" + "src": "45071:21:32" }, { "expression": { @@ -34790,12 +34100,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "45668:9:32" + "src": "45112:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "45679:2:32", + "src": "45123:2:32", "type": "", "value": "32" } @@ -34803,15 +34113,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "45664:3:32" + "src": "45108:3:32" }, "nodeType": "YulFunctionCall", - "src": "45664:18:32" + "src": "45108:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "45684:1:32", + "src": "45128:1:32", "type": "", "value": "6" } @@ -34819,13 +34129,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "45657:6:32" + "src": "45101:6:32" }, "nodeType": "YulFunctionCall", - "src": "45657:29:32" + "src": "45101:29:32" }, "nodeType": "YulExpressionStatement", - "src": "45657:29:32" + "src": "45101:29:32" }, { "expression": { @@ -34835,12 +34145,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "45706:9:32" + "src": "45150:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "45717:2:32", + "src": "45161:2:32", "type": "", "value": "64" } @@ -34848,16 +34158,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "45702:3:32" + "src": "45146:3:32" }, "nodeType": "YulFunctionCall", - "src": "45702:18:32" + "src": "45146:18:32" }, { "hexValue": "4c4243303437", "kind": "string", "nodeType": "YulLiteral", - "src": "45722:8:32", + "src": "45166:8:32", "type": "", "value": "LBC047" } @@ -34865,28 +34175,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "45695:6:32" + "src": "45139:6:32" }, "nodeType": "YulFunctionCall", - "src": "45695:36:32" + "src": "45139:36:32" }, "nodeType": "YulExpressionStatement", - "src": "45695:36:32" + "src": "45139:36:32" }, { "nodeType": "YulAssignment", - "src": "45740:26:32", + "src": "45184:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "45752:9:32" + "src": "45196:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "45763:2:32", + "src": "45207:2:32", "type": "", "value": "96" } @@ -34894,16 +34204,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "45748:3:32" + "src": "45192:3:32" }, "nodeType": "YulFunctionCall", - "src": "45748:18:32" + "src": "45192:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "45740:4:32" + "src": "45184:4:32" } ] } @@ -34915,7 +34225,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "45594:9:32", + "src": "45038:9:32", "type": "" } ], @@ -34923,16 +34233,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "45608:4:32", + "src": "45052:4:32", "type": "" } ], - "src": "45443:329:32" + "src": "44887:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "45951:155:32", + "src": "45395:155:32", "statements": [ { "expression": { @@ -34940,12 +34250,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "45968:9:32" + "src": "45412:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "45979:2:32", + "src": "45423:2:32", "type": "", "value": "32" } @@ -34953,13 +34263,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "45961:6:32" + "src": "45405:6:32" }, "nodeType": "YulFunctionCall", - "src": "45961:21:32" + "src": "45405:21:32" }, "nodeType": "YulExpressionStatement", - "src": "45961:21:32" + "src": "45405:21:32" }, { "expression": { @@ -34969,12 +34279,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "46002:9:32" + "src": "45446:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "46013:2:32", + "src": "45457:2:32", "type": "", "value": "32" } @@ -34982,15 +34292,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "45998:3:32" + "src": "45442:3:32" }, "nodeType": "YulFunctionCall", - "src": "45998:18:32" + "src": "45442:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "46018:1:32", + "src": "45462:1:32", "type": "", "value": "6" } @@ -34998,13 +34308,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "45991:6:32" + "src": "45435:6:32" }, "nodeType": "YulFunctionCall", - "src": "45991:29:32" + "src": "45435:29:32" }, "nodeType": "YulExpressionStatement", - "src": "45991:29:32" + "src": "45435:29:32" }, { "expression": { @@ -35014,12 +34324,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "46040:9:32" + "src": "45484:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "46051:2:32", + "src": "45495:2:32", "type": "", "value": "64" } @@ -35027,16 +34337,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "46036:3:32" + "src": "45480:3:32" }, "nodeType": "YulFunctionCall", - "src": "46036:18:32" + "src": "45480:18:32" }, { "hexValue": "4c4243303634", "kind": "string", "nodeType": "YulLiteral", - "src": "46056:8:32", + "src": "45500:8:32", "type": "", "value": "LBC064" } @@ -35044,28 +34354,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "46029:6:32" + "src": "45473:6:32" }, "nodeType": "YulFunctionCall", - "src": "46029:36:32" + "src": "45473:36:32" }, "nodeType": "YulExpressionStatement", - "src": "46029:36:32" + "src": "45473:36:32" }, { "nodeType": "YulAssignment", - "src": "46074:26:32", + "src": "45518:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "46086:9:32" + "src": "45530:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "46097:2:32", + "src": "45541:2:32", "type": "", "value": "96" } @@ -35073,16 +34383,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "46082:3:32" + "src": "45526:3:32" }, "nodeType": "YulFunctionCall", - "src": "46082:18:32" + "src": "45526:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "46074:4:32" + "src": "45518:4:32" } ] } @@ -35094,7 +34404,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "45928:9:32", + "src": "45372:9:32", "type": "" } ], @@ -35102,41 +34412,41 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "45942:4:32", + "src": "45386:4:32", "type": "" } ], - "src": "45777:329:32" + "src": "45221:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "46205:1256:32", + "src": "45649:1256:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "46215:24:32", + "src": "45659:24:32", "value": { "arguments": [ { "name": "src", "nodeType": "YulIdentifier", - "src": "46235:3:32" + "src": "45679:3:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "46229:5:32" + "src": "45673:5:32" }, "nodeType": "YulFunctionCall", - "src": "46229:10:32" + "src": "45673:10:32" }, "variables": [ { "name": "newLen", "nodeType": "YulTypedName", - "src": "46219:6:32", + "src": "45663:6:32", "type": "" } ] @@ -35144,7 +34454,7 @@ { "body": { "nodeType": "YulBlock", - "src": "46282:22:32", + "src": "45726:22:32", "statements": [ { "expression": { @@ -35152,13 +34462,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "46284:16:32" + "src": "45728:16:32" }, "nodeType": "YulFunctionCall", - "src": "46284:18:32" + "src": "45728:18:32" }, "nodeType": "YulExpressionStatement", - "src": "46284:18:32" + "src": "45728:18:32" } ] }, @@ -35167,7 +34477,7 @@ { "name": "newLen", "nodeType": "YulIdentifier", - "src": "46254:6:32" + "src": "45698:6:32" }, { "arguments": [ @@ -35176,14 +34486,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "46270:2:32", + "src": "45714:2:32", "type": "", "value": "64" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "46274:1:32", + "src": "45718:1:32", "type": "", "value": "1" } @@ -35191,15 +34501,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "46266:3:32" + "src": "45710:3:32" }, "nodeType": "YulFunctionCall", - "src": "46266:10:32" + "src": "45710:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "46278:1:32", + "src": "45722:1:32", "type": "", "value": "1" } @@ -35207,22 +34517,22 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "46262:3:32" + "src": "45706:3:32" }, "nodeType": "YulFunctionCall", - "src": "46262:18:32" + "src": "45706:18:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "46251:2:32" + "src": "45695:2:32" }, "nodeType": "YulFunctionCall", - "src": "46251:30:32" + "src": "45695:30:32" }, "nodeType": "YulIf", - "src": "46248:56:32" + "src": "45692:56:32" }, { "expression": { @@ -35230,7 +34540,7 @@ { "name": "slot", "nodeType": "YulIdentifier", - "src": "46357:4:32" + "src": "45801:4:32" }, { "arguments": [ @@ -35239,50 +34549,50 @@ { "name": "slot", "nodeType": "YulIdentifier", - "src": "46395:4:32" + "src": "45839:4:32" } ], "functionName": { "name": "sload", "nodeType": "YulIdentifier", - "src": "46389:5:32" + "src": "45833:5:32" }, "nodeType": "YulFunctionCall", - "src": "46389:11:32" + "src": "45833:11:32" } ], "functionName": { "name": "extract_byte_array_length", "nodeType": "YulIdentifier", - "src": "46363:25:32" + "src": "45807:25:32" }, "nodeType": "YulFunctionCall", - "src": "46363:38:32" + "src": "45807:38:32" }, { "name": "newLen", "nodeType": "YulIdentifier", - "src": "46403:6:32" + "src": "45847:6:32" } ], "functionName": { "name": "clean_up_bytearray_end_slots_string_storage", "nodeType": "YulIdentifier", - "src": "46313:43:32" + "src": "45757:43:32" }, "nodeType": "YulFunctionCall", - "src": "46313:97:32" + "src": "45757:97:32" }, "nodeType": "YulExpressionStatement", - "src": "46313:97:32" + "src": "45757:97:32" }, { "nodeType": "YulVariableDeclaration", - "src": "46419:18:32", + "src": "45863:18:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "46436:1:32", + "src": "45880:1:32", "type": "", "value": "0" }, @@ -35290,18 +34600,18 @@ { "name": "srcOffset", "nodeType": "YulTypedName", - "src": "46423:9:32", + "src": "45867:9:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "46446:23:32", + "src": "45890:23:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "46465:4:32", + "src": "45909:4:32", "type": "", "value": "0x20" }, @@ -35309,24 +34619,24 @@ { "name": "srcOffset_1", "nodeType": "YulTypedName", - "src": "46450:11:32", + "src": "45894:11:32", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "46478:24:32", + "src": "45922:24:32", "value": { "name": "srcOffset_1", "nodeType": "YulIdentifier", - "src": "46491:11:32" + "src": "45935:11:32" }, "variableNames": [ { "name": "srcOffset", "nodeType": "YulIdentifier", - "src": "46478:9:32" + "src": "45922:9:32" } ] }, @@ -35335,24 +34645,24 @@ { "body": { "nodeType": "YulBlock", - "src": "46548:656:32", + "src": "45992:656:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "46562:35:32", + "src": "46006:35:32", "value": { "arguments": [ { "name": "newLen", "nodeType": "YulIdentifier", - "src": "46581:6:32" + "src": "46025:6:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "46593:2:32", + "src": "46037:2:32", "type": "", "value": "31" } @@ -35360,64 +34670,64 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "46589:3:32" + "src": "46033:3:32" }, "nodeType": "YulFunctionCall", - "src": "46589:7:32" + "src": "46033:7:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "46577:3:32" + "src": "46021:3:32" }, "nodeType": "YulFunctionCall", - "src": "46577:20:32" + "src": "46021:20:32" }, "variables": [ { "name": "loopEnd", "nodeType": "YulTypedName", - "src": "46566:7:32", + "src": "46010:7:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "46610:49:32", + "src": "46054:49:32", "value": { "arguments": [ { "name": "slot", "nodeType": "YulIdentifier", - "src": "46654:4:32" + "src": "46098:4:32" } ], "functionName": { "name": "array_dataslot_string_storage", "nodeType": "YulIdentifier", - "src": "46624:29:32" + "src": "46068:29:32" }, "nodeType": "YulFunctionCall", - "src": "46624:35:32" + "src": "46068:35:32" }, "variables": [ { "name": "dstPtr", "nodeType": "YulTypedName", - "src": "46614:6:32", + "src": "46058:6:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "46672:10:32", + "src": "46116:10:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "46681:1:32", + "src": "46125:1:32", "type": "", "value": "0" }, @@ -35425,7 +34735,7 @@ { "name": "i", "nodeType": "YulTypedName", - "src": "46676:1:32", + "src": "46120:1:32", "type": "" } ] @@ -35433,7 +34743,7 @@ { "body": { "nodeType": "YulBlock", - "src": "46759:172:32", + "src": "46203:172:32", "statements": [ { "expression": { @@ -35441,7 +34751,7 @@ { "name": "dstPtr", "nodeType": "YulIdentifier", - "src": "46784:6:32" + "src": "46228:6:32" }, { "arguments": [ @@ -35450,57 +34760,57 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "46802:3:32" + "src": "46246:3:32" }, { "name": "srcOffset", "nodeType": "YulIdentifier", - "src": "46807:9:32" + "src": "46251:9:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "46798:3:32" + "src": "46242:3:32" }, "nodeType": "YulFunctionCall", - "src": "46798:19:32" + "src": "46242:19:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "46792:5:32" + "src": "46236:5:32" }, "nodeType": "YulFunctionCall", - "src": "46792:26:32" + "src": "46236:26:32" } ], "functionName": { "name": "sstore", "nodeType": "YulIdentifier", - "src": "46777:6:32" + "src": "46221:6:32" }, "nodeType": "YulFunctionCall", - "src": "46777:42:32" + "src": "46221:42:32" }, "nodeType": "YulExpressionStatement", - "src": "46777:42:32" + "src": "46221:42:32" }, { "nodeType": "YulAssignment", - "src": "46836:24:32", + "src": "46280:24:32", "value": { "arguments": [ { "name": "dstPtr", "nodeType": "YulIdentifier", - "src": "46850:6:32" + "src": "46294:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "46858:1:32", + "src": "46302:1:32", "type": "", "value": "1" } @@ -35508,48 +34818,48 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "46846:3:32" + "src": "46290:3:32" }, "nodeType": "YulFunctionCall", - "src": "46846:14:32" + "src": "46290:14:32" }, "variableNames": [ { "name": "dstPtr", "nodeType": "YulIdentifier", - "src": "46836:6:32" + "src": "46280:6:32" } ] }, { "nodeType": "YulAssignment", - "src": "46877:40:32", + "src": "46321:40:32", "value": { "arguments": [ { "name": "srcOffset", "nodeType": "YulIdentifier", - "src": "46894:9:32" + "src": "46338:9:32" }, { "name": "srcOffset_1", "nodeType": "YulIdentifier", - "src": "46905:11:32" + "src": "46349:11:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "46890:3:32" + "src": "46334:3:32" }, "nodeType": "YulFunctionCall", - "src": "46890:27:32" + "src": "46334:27:32" }, "variableNames": [ { "name": "srcOffset", "nodeType": "YulIdentifier", - "src": "46877:9:32" + "src": "46321:9:32" } ] } @@ -35560,56 +34870,56 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "46706:1:32" + "src": "46150:1:32" }, { "name": "loopEnd", "nodeType": "YulIdentifier", - "src": "46709:7:32" + "src": "46153:7:32" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "46703:2:32" + "src": "46147:2:32" }, "nodeType": "YulFunctionCall", - "src": "46703:14:32" + "src": "46147:14:32" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "46718:28:32", + "src": "46162:28:32", "statements": [ { "nodeType": "YulAssignment", - "src": "46720:24:32", + "src": "46164:24:32", "value": { "arguments": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "46729:1:32" + "src": "46173:1:32" }, { "name": "srcOffset_1", "nodeType": "YulIdentifier", - "src": "46732:11:32" + "src": "46176:11:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "46725:3:32" + "src": "46169:3:32" }, "nodeType": "YulFunctionCall", - "src": "46725:19:32" + "src": "46169:19:32" }, "variableNames": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "46720:1:32" + "src": "46164:1:32" } ] } @@ -35617,19 +34927,19 @@ }, "pre": { "nodeType": "YulBlock", - "src": "46699:3:32", + "src": "46143:3:32", "statements": [] }, - "src": "46695:236:32" + "src": "46139:236:32" }, { "body": { "nodeType": "YulBlock", - "src": "46979:166:32", + "src": "46423:166:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "46997:43:32", + "src": "46441:43:32", "value": { "arguments": [ { @@ -35637,36 +34947,36 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "47024:3:32" + "src": "46468:3:32" }, { "name": "srcOffset", "nodeType": "YulIdentifier", - "src": "47029:9:32" + "src": "46473:9:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "47020:3:32" + "src": "46464:3:32" }, "nodeType": "YulFunctionCall", - "src": "47020:19:32" + "src": "46464:19:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "47014:5:32" + "src": "46458:5:32" }, "nodeType": "YulFunctionCall", - "src": "47014:26:32" + "src": "46458:26:32" }, "variables": [ { "name": "lastValue", "nodeType": "YulTypedName", - "src": "47001:9:32", + "src": "46445:9:32", "type": "" } ] @@ -35677,14 +34987,14 @@ { "name": "dstPtr", "nodeType": "YulIdentifier", - "src": "47064:6:32" + "src": "46508:6:32" }, { "arguments": [ { "name": "lastValue", "nodeType": "YulIdentifier", - "src": "47076:9:32" + "src": "46520:9:32" }, { "arguments": [ @@ -35697,28 +35007,28 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "47103:1:32", + "src": "46547:1:32", "type": "", "value": "3" }, { "name": "newLen", "nodeType": "YulIdentifier", - "src": "47106:6:32" + "src": "46550:6:32" } ], "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "47099:3:32" + "src": "46543:3:32" }, "nodeType": "YulFunctionCall", - "src": "47099:14:32" + "src": "46543:14:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "47115:3:32", + "src": "46559:3:32", "type": "", "value": "248" } @@ -35726,17 +35036,17 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "47095:3:32" + "src": "46539:3:32" }, "nodeType": "YulFunctionCall", - "src": "47095:24:32" + "src": "46539:24:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "47125:1:32", + "src": "46569:1:32", "type": "", "value": "0" } @@ -35744,49 +35054,49 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "47121:3:32" + "src": "46565:3:32" }, "nodeType": "YulFunctionCall", - "src": "47121:6:32" + "src": "46565:6:32" } ], "functionName": { "name": "shr", "nodeType": "YulIdentifier", - "src": "47091:3:32" + "src": "46535:3:32" }, "nodeType": "YulFunctionCall", - "src": "47091:37:32" + "src": "46535:37:32" } ], "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "47087:3:32" + "src": "46531:3:32" }, "nodeType": "YulFunctionCall", - "src": "47087:42:32" + "src": "46531:42:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "47072:3:32" + "src": "46516:3:32" }, "nodeType": "YulFunctionCall", - "src": "47072:58:32" + "src": "46516:58:32" } ], "functionName": { "name": "sstore", "nodeType": "YulIdentifier", - "src": "47057:6:32" + "src": "46501:6:32" }, "nodeType": "YulFunctionCall", - "src": "47057:74:32" + "src": "46501:74:32" }, "nodeType": "YulExpressionStatement", - "src": "47057:74:32" + "src": "46501:74:32" } ] }, @@ -35795,24 +35105,24 @@ { "name": "loopEnd", "nodeType": "YulIdentifier", - "src": "46950:7:32" + "src": "46394:7:32" }, { "name": "newLen", "nodeType": "YulIdentifier", - "src": "46959:6:32" + "src": "46403:6:32" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "46947:2:32" + "src": "46391:2:32" }, "nodeType": "YulFunctionCall", - "src": "46947:19:32" + "src": "46391:19:32" }, "nodeType": "YulIf", - "src": "46944:201:32" + "src": "46388:201:32" }, { "expression": { @@ -35820,7 +35130,7 @@ { "name": "slot", "nodeType": "YulIdentifier", - "src": "47165:4:32" + "src": "46609:4:32" }, { "arguments": [ @@ -35829,28 +35139,28 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "47179:1:32", + "src": "46623:1:32", "type": "", "value": "1" }, { "name": "newLen", "nodeType": "YulIdentifier", - "src": "47182:6:32" + "src": "46626:6:32" } ], "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "47175:3:32" + "src": "46619:3:32" }, "nodeType": "YulFunctionCall", - "src": "47175:14:32" + "src": "46619:14:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "47191:1:32", + "src": "46635:1:32", "type": "", "value": "1" } @@ -35858,31 +35168,31 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "47171:3:32" + "src": "46615:3:32" }, "nodeType": "YulFunctionCall", - "src": "47171:22:32" + "src": "46615:22:32" } ], "functionName": { "name": "sstore", "nodeType": "YulIdentifier", - "src": "47158:6:32" + "src": "46602:6:32" }, "nodeType": "YulFunctionCall", - "src": "47158:36:32" + "src": "46602:36:32" }, "nodeType": "YulExpressionStatement", - "src": "47158:36:32" + "src": "46602:36:32" } ] }, "nodeType": "YulCase", - "src": "46541:663:32", + "src": "45985:663:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "46546:1:32", + "src": "45990:1:32", "type": "", "value": "1" } @@ -35890,15 +35200,15 @@ { "body": { "nodeType": "YulBlock", - "src": "47221:234:32", + "src": "46665:234:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "47235:14:32", + "src": "46679:14:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "47248:1:32", + "src": "46692:1:32", "type": "", "value": "0" }, @@ -35906,7 +35216,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "47239:5:32", + "src": "46683:5:32", "type": "" } ] @@ -35914,11 +35224,11 @@ { "body": { "nodeType": "YulBlock", - "src": "47284:67:32", + "src": "46728:67:32", "statements": [ { "nodeType": "YulAssignment", - "src": "47302:35:32", + "src": "46746:35:32", "value": { "arguments": [ { @@ -35926,36 +35236,36 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "47321:3:32" + "src": "46765:3:32" }, { "name": "srcOffset", "nodeType": "YulIdentifier", - "src": "47326:9:32" + "src": "46770:9:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "47317:3:32" + "src": "46761:3:32" }, "nodeType": "YulFunctionCall", - "src": "47317:19:32" + "src": "46761:19:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "47311:5:32" + "src": "46755:5:32" }, "nodeType": "YulFunctionCall", - "src": "47311:26:32" + "src": "46755:26:32" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "47302:5:32" + "src": "46746:5:32" } ] } @@ -35964,10 +35274,10 @@ "condition": { "name": "newLen", "nodeType": "YulIdentifier", - "src": "47265:6:32" + "src": "46709:6:32" }, "nodeType": "YulIf", - "src": "47262:89:32" + "src": "46706:89:32" }, { "expression": { @@ -35975,45 +35285,45 @@ { "name": "slot", "nodeType": "YulIdentifier", - "src": "47371:4:32" + "src": "46815:4:32" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "47430:5:32" + "src": "46874:5:32" }, { "name": "newLen", "nodeType": "YulIdentifier", - "src": "47437:6:32" + "src": "46881:6:32" } ], "functionName": { "name": "extract_used_part_and_set_length_of_short_byte_array", "nodeType": "YulIdentifier", - "src": "47377:52:32" + "src": "46821:52:32" }, "nodeType": "YulFunctionCall", - "src": "47377:67:32" + "src": "46821:67:32" } ], "functionName": { "name": "sstore", "nodeType": "YulIdentifier", - "src": "47364:6:32" + "src": "46808:6:32" }, "nodeType": "YulFunctionCall", - "src": "47364:81:32" + "src": "46808:81:32" }, "nodeType": "YulExpressionStatement", - "src": "47364:81:32" + "src": "46808:81:32" } ] }, "nodeType": "YulCase", - "src": "47213:242:32", + "src": "46657:242:32", "value": "default" } ], @@ -36022,12 +35332,12 @@ { "name": "newLen", "nodeType": "YulIdentifier", - "src": "46521:6:32" + "src": "45965:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "46529:2:32", + "src": "45973:2:32", "type": "", "value": "31" } @@ -36035,13 +35345,13 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "46518:2:32" + "src": "45962:2:32" }, "nodeType": "YulFunctionCall", - "src": "46518:14:32" + "src": "45962:14:32" }, "nodeType": "YulSwitch", - "src": "46511:944:32" + "src": "45955:944:32" } ] }, @@ -36051,22 +35361,22 @@ { "name": "slot", "nodeType": "YulTypedName", - "src": "46190:4:32", + "src": "45634:4:32", "type": "" }, { "name": "src", "nodeType": "YulTypedName", - "src": "46196:3:32", + "src": "45640:3:32", "type": "" } ], - "src": "46111:1350:32" + "src": "45555:1350:32" }, { "body": { "nodeType": "YulBlock", - "src": "47640:155:32", + "src": "47084:155:32", "statements": [ { "expression": { @@ -36074,12 +35384,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "47657:9:32" + "src": "47101:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "47668:2:32", + "src": "47112:2:32", "type": "", "value": "32" } @@ -36087,13 +35397,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "47650:6:32" + "src": "47094:6:32" }, "nodeType": "YulFunctionCall", - "src": "47650:21:32" + "src": "47094:21:32" }, "nodeType": "YulExpressionStatement", - "src": "47650:21:32" + "src": "47094:21:32" }, { "expression": { @@ -36103,12 +35413,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "47691:9:32" + "src": "47135:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "47702:2:32", + "src": "47146:2:32", "type": "", "value": "32" } @@ -36116,15 +35426,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "47687:3:32" + "src": "47131:3:32" }, "nodeType": "YulFunctionCall", - "src": "47687:18:32" + "src": "47131:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "47707:1:32", + "src": "47151:1:32", "type": "", "value": "6" } @@ -36132,13 +35442,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "47680:6:32" + "src": "47124:6:32" }, "nodeType": "YulFunctionCall", - "src": "47680:29:32" + "src": "47124:29:32" }, "nodeType": "YulExpressionStatement", - "src": "47680:29:32" + "src": "47124:29:32" }, { "expression": { @@ -36148,12 +35458,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "47729:9:32" + "src": "47173:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "47740:2:32", + "src": "47184:2:32", "type": "", "value": "64" } @@ -36161,16 +35471,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "47725:3:32" + "src": "47169:3:32" }, "nodeType": "YulFunctionCall", - "src": "47725:18:32" + "src": "47169:18:32" }, { "hexValue": "4c4243303432", "kind": "string", "nodeType": "YulLiteral", - "src": "47745:8:32", + "src": "47189:8:32", "type": "", "value": "LBC042" } @@ -36178,28 +35488,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "47718:6:32" + "src": "47162:6:32" }, "nodeType": "YulFunctionCall", - "src": "47718:36:32" + "src": "47162:36:32" }, "nodeType": "YulExpressionStatement", - "src": "47718:36:32" + "src": "47162:36:32" }, { "nodeType": "YulAssignment", - "src": "47763:26:32", + "src": "47207:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "47775:9:32" + "src": "47219:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "47786:2:32", + "src": "47230:2:32", "type": "", "value": "96" } @@ -36207,16 +35517,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "47771:3:32" + "src": "47215:3:32" }, "nodeType": "YulFunctionCall", - "src": "47771:18:32" + "src": "47215:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "47763:4:32" + "src": "47207:4:32" } ] } @@ -36228,7 +35538,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "47617:9:32", + "src": "47061:9:32", "type": "" } ], @@ -36236,16 +35546,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "47631:4:32", + "src": "47075:4:32", "type": "" } ], - "src": "47466:329:32" + "src": "46910:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "47974:155:32", + "src": "47418:155:32", "statements": [ { "expression": { @@ -36253,12 +35563,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "47991:9:32" + "src": "47435:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48002:2:32", + "src": "47446:2:32", "type": "", "value": "32" } @@ -36266,13 +35576,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "47984:6:32" + "src": "47428:6:32" }, "nodeType": "YulFunctionCall", - "src": "47984:21:32" + "src": "47428:21:32" }, "nodeType": "YulExpressionStatement", - "src": "47984:21:32" + "src": "47428:21:32" }, { "expression": { @@ -36282,12 +35592,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "48025:9:32" + "src": "47469:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48036:2:32", + "src": "47480:2:32", "type": "", "value": "32" } @@ -36295,15 +35605,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "48021:3:32" + "src": "47465:3:32" }, "nodeType": "YulFunctionCall", - "src": "48021:18:32" + "src": "47465:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48041:1:32", + "src": "47485:1:32", "type": "", "value": "6" } @@ -36311,13 +35621,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "48014:6:32" + "src": "47458:6:32" }, "nodeType": "YulFunctionCall", - "src": "48014:29:32" + "src": "47458:29:32" }, "nodeType": "YulExpressionStatement", - "src": "48014:29:32" + "src": "47458:29:32" }, { "expression": { @@ -36327,12 +35637,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "48063:9:32" + "src": "47507:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48074:2:32", + "src": "47518:2:32", "type": "", "value": "64" } @@ -36340,16 +35650,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "48059:3:32" + "src": "47503:3:32" }, "nodeType": "YulFunctionCall", - "src": "48059:18:32" + "src": "47503:18:32" }, { "hexValue": "4c4243303431", "kind": "string", "nodeType": "YulLiteral", - "src": "48079:8:32", + "src": "47523:8:32", "type": "", "value": "LBC041" } @@ -36357,28 +35667,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "48052:6:32" + "src": "47496:6:32" }, "nodeType": "YulFunctionCall", - "src": "48052:36:32" + "src": "47496:36:32" }, "nodeType": "YulExpressionStatement", - "src": "48052:36:32" + "src": "47496:36:32" }, { "nodeType": "YulAssignment", - "src": "48097:26:32", + "src": "47541:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "48109:9:32" + "src": "47553:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48120:2:32", + "src": "47564:2:32", "type": "", "value": "96" } @@ -36386,16 +35696,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "48105:3:32" + "src": "47549:3:32" }, "nodeType": "YulFunctionCall", - "src": "48105:18:32" + "src": "47549:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "48097:4:32" + "src": "47541:4:32" } ] } @@ -36407,7 +35717,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "47951:9:32", + "src": "47395:9:32", "type": "" } ], @@ -36415,31 +35725,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "47965:4:32", + "src": "47409:4:32", "type": "" } ], - "src": "47800:329:32" + "src": "47244:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "48263:145:32", + "src": "47707:145:32", "statements": [ { "nodeType": "YulAssignment", - "src": "48273:26:32", + "src": "47717:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "48285:9:32" + "src": "47729:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48296:2:32", + "src": "47740:2:32", "type": "", "value": "64" } @@ -36447,16 +35757,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "48281:3:32" + "src": "47725:3:32" }, "nodeType": "YulFunctionCall", - "src": "48281:18:32" + "src": "47725:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "48273:4:32" + "src": "47717:4:32" } ] }, @@ -36466,24 +35776,24 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "48315:9:32" + "src": "47759:9:32" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "48326:6:32" + "src": "47770:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "48308:6:32" + "src": "47752:6:32" }, "nodeType": "YulFunctionCall", - "src": "48308:25:32" + "src": "47752:25:32" }, "nodeType": "YulExpressionStatement", - "src": "48308:25:32" + "src": "47752:25:32" }, { "expression": { @@ -36493,12 +35803,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "48353:9:32" + "src": "47797:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48364:2:32", + "src": "47808:2:32", "type": "", "value": "32" } @@ -36506,17 +35816,17 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "48349:3:32" + "src": "47793:3:32" }, "nodeType": "YulFunctionCall", - "src": "48349:18:32" + "src": "47793:18:32" }, { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "48373:6:32" + "src": "47817:6:32" }, { "arguments": [ @@ -36525,14 +35835,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "48389:3:32", + "src": "47833:3:32", "type": "", "value": "160" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48394:1:32", + "src": "47838:1:32", "type": "", "value": "1" } @@ -36540,15 +35850,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "48385:3:32" + "src": "47829:3:32" }, "nodeType": "YulFunctionCall", - "src": "48385:11:32" + "src": "47829:11:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48398:1:32", + "src": "47842:1:32", "type": "", "value": "1" } @@ -36556,31 +35866,31 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "48381:3:32" + "src": "47825:3:32" }, "nodeType": "YulFunctionCall", - "src": "48381:19:32" + "src": "47825:19:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "48369:3:32" + "src": "47813:3:32" }, "nodeType": "YulFunctionCall", - "src": "48369:32:32" + "src": "47813:32:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "48342:6:32" + "src": "47786:6:32" }, "nodeType": "YulFunctionCall", - "src": "48342:60:32" + "src": "47786:60:32" }, "nodeType": "YulExpressionStatement", - "src": "48342:60:32" + "src": "47786:60:32" } ] }, @@ -36590,19 +35900,19 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "48224:9:32", + "src": "47668:9:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "48235:6:32", + "src": "47679:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "48243:6:32", + "src": "47687:6:32", "type": "" } ], @@ -36610,16 +35920,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "48254:4:32", + "src": "47698:4:32", "type": "" } ], - "src": "48134:274:32" + "src": "47578:274:32" }, { "body": { "nodeType": "YulBlock", - "src": "48587:155:32", + "src": "48031:155:32", "statements": [ { "expression": { @@ -36627,12 +35937,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "48604:9:32" + "src": "48048:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48615:2:32", + "src": "48059:2:32", "type": "", "value": "32" } @@ -36640,13 +35950,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "48597:6:32" + "src": "48041:6:32" }, "nodeType": "YulFunctionCall", - "src": "48597:21:32" + "src": "48041:21:32" }, "nodeType": "YulExpressionStatement", - "src": "48597:21:32" + "src": "48041:21:32" }, { "expression": { @@ -36656,12 +35966,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "48638:9:32" + "src": "48082:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48649:2:32", + "src": "48093:2:32", "type": "", "value": "32" } @@ -36669,15 +35979,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "48634:3:32" + "src": "48078:3:32" }, "nodeType": "YulFunctionCall", - "src": "48634:18:32" + "src": "48078:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48654:1:32", + "src": "48098:1:32", "type": "", "value": "6" } @@ -36685,13 +35995,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "48627:6:32" + "src": "48071:6:32" }, "nodeType": "YulFunctionCall", - "src": "48627:29:32" + "src": "48071:29:32" }, "nodeType": "YulExpressionStatement", - "src": "48627:29:32" + "src": "48071:29:32" }, { "expression": { @@ -36701,12 +36011,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "48676:9:32" + "src": "48120:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48687:2:32", + "src": "48131:2:32", "type": "", "value": "64" } @@ -36714,16 +36024,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "48672:3:32" + "src": "48116:3:32" }, "nodeType": "YulFunctionCall", - "src": "48672:18:32" + "src": "48116:18:32" }, { "hexValue": "4c4243303434", "kind": "string", "nodeType": "YulLiteral", - "src": "48692:8:32", + "src": "48136:8:32", "type": "", "value": "LBC044" } @@ -36731,28 +36041,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "48665:6:32" + "src": "48109:6:32" }, "nodeType": "YulFunctionCall", - "src": "48665:36:32" + "src": "48109:36:32" }, "nodeType": "YulExpressionStatement", - "src": "48665:36:32" + "src": "48109:36:32" }, { "nodeType": "YulAssignment", - "src": "48710:26:32", + "src": "48154:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "48722:9:32" + "src": "48166:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48733:2:32", + "src": "48177:2:32", "type": "", "value": "96" } @@ -36760,16 +36070,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "48718:3:32" + "src": "48162:3:32" }, "nodeType": "YulFunctionCall", - "src": "48718:18:32" + "src": "48162:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "48710:4:32" + "src": "48154:4:32" } ] } @@ -36781,7 +36091,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "48564:9:32", + "src": "48008:9:32", "type": "" } ], @@ -36789,16 +36099,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "48578:4:32", + "src": "48022:4:32", "type": "" } ], - "src": "48413:329:32" + "src": "47857:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "48874:99:32", + "src": "48318:99:32", "statements": [ { "expression": { @@ -36806,12 +36116,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "48891:9:32" + "src": "48335:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48902:2:32", + "src": "48346:2:32", "type": "", "value": "32" } @@ -36819,35 +36129,35 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "48884:6:32" + "src": "48328:6:32" }, "nodeType": "YulFunctionCall", - "src": "48884:21:32" + "src": "48328:21:32" }, "nodeType": "YulExpressionStatement", - "src": "48884:21:32" + "src": "48328:21:32" }, { "nodeType": "YulAssignment", - "src": "48914:53:32", + "src": "48358:53:32", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "48940:6:32" + "src": "48384:6:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "48952:9:32" + "src": "48396:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "48963:2:32", + "src": "48407:2:32", "type": "", "value": "32" } @@ -36855,25 +36165,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "48948:3:32" + "src": "48392:3:32" }, "nodeType": "YulFunctionCall", - "src": "48948:18:32" + "src": "48392:18:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "48922:17:32" + "src": "48366:17:32" }, "nodeType": "YulFunctionCall", - "src": "48922:45:32" + "src": "48366:45:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "48914:4:32" + "src": "48358:4:32" } ] } @@ -36885,13 +36195,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "48843:9:32", + "src": "48287:9:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "48854:6:32", + "src": "48298:6:32", "type": "" } ], @@ -36899,24 +36209,24 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "48865:4:32", + "src": "48309:4:32", "type": "" } ], - "src": "48747:226:32" + "src": "48191:226:32" }, { "body": { "nodeType": "YulBlock", - "src": "49113:1872:32", + "src": "48557:1872:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "49123:12:32", + "src": "48567:12:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "49133:2:32", + "src": "48577:2:32", "type": "", "value": "32" }, @@ -36924,7 +36234,7 @@ { "name": "_1", "nodeType": "YulTypedName", - "src": "49127:2:32", + "src": "48571:2:32", "type": "" } ] @@ -36932,7 +36242,7 @@ { "body": { "nodeType": "YulBlock", - "src": "49180:16:32", + "src": "48624:16:32", "statements": [ { "expression": { @@ -36940,14 +36250,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "49189:1:32", + "src": "48633:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "49192:1:32", + "src": "48636:1:32", "type": "", "value": "0" } @@ -36955,13 +36265,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "49182:6:32" + "src": "48626:6:32" }, "nodeType": "YulFunctionCall", - "src": "49182:12:32" + "src": "48626:12:32" }, "nodeType": "YulExpressionStatement", - "src": "49182:12:32" + "src": "48626:12:32" } ] }, @@ -36972,70 +36282,70 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "49155:7:32" + "src": "48599:7:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "49164:9:32" + "src": "48608:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "49151:3:32" + "src": "48595:3:32" }, "nodeType": "YulFunctionCall", - "src": "49151:23:32" + "src": "48595:23:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "49176:2:32" + "src": "48620:2:32" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "49147:3:32" + "src": "48591:3:32" }, "nodeType": "YulFunctionCall", - "src": "49147:32:32" + "src": "48591:32:32" }, "nodeType": "YulIf", - "src": "49144:52:32" + "src": "48588:52:32" }, { "nodeType": "YulVariableDeclaration", - "src": "49205:30:32", + "src": "48649:30:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "49225:9:32" + "src": "48669:9:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "49219:5:32" + "src": "48663:5:32" }, "nodeType": "YulFunctionCall", - "src": "49219:16:32" + "src": "48663:16:32" }, "variables": [ { "name": "offset", "nodeType": "YulTypedName", - "src": "49209:6:32", + "src": "48653:6:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "49244:28:32", + "src": "48688:28:32", "value": { "arguments": [ { @@ -37043,14 +36353,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "49262:2:32", + "src": "48706:2:32", "type": "", "value": "64" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "49266:1:32", + "src": "48710:1:32", "type": "", "value": "1" } @@ -37058,15 +36368,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "49258:3:32" + "src": "48702:3:32" }, "nodeType": "YulFunctionCall", - "src": "49258:10:32" + "src": "48702:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "49270:1:32", + "src": "48714:1:32", "type": "", "value": "1" } @@ -37074,16 +36384,16 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "49254:3:32" + "src": "48698:3:32" }, "nodeType": "YulFunctionCall", - "src": "49254:18:32" + "src": "48698:18:32" }, "variables": [ { "name": "_2", "nodeType": "YulTypedName", - "src": "49248:2:32", + "src": "48692:2:32", "type": "" } ] @@ -37091,7 +36401,7 @@ { "body": { "nodeType": "YulBlock", - "src": "49299:16:32", + "src": "48743:16:32", "statements": [ { "expression": { @@ -37099,14 +36409,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "49308:1:32", + "src": "48752:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "49311:1:32", + "src": "48755:1:32", "type": "", "value": "0" } @@ -37114,13 +36424,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "49301:6:32" + "src": "48745:6:32" }, "nodeType": "YulFunctionCall", - "src": "49301:12:32" + "src": "48745:12:32" }, "nodeType": "YulExpressionStatement", - "src": "49301:12:32" + "src": "48745:12:32" } ] }, @@ -37129,54 +36439,54 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "49287:6:32" + "src": "48731:6:32" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "49295:2:32" + "src": "48739:2:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "49284:2:32" + "src": "48728:2:32" }, "nodeType": "YulFunctionCall", - "src": "49284:14:32" + "src": "48728:14:32" }, "nodeType": "YulIf", - "src": "49281:34:32" + "src": "48725:34:32" }, { "nodeType": "YulVariableDeclaration", - "src": "49324:32:32", + "src": "48768:32:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "49338:9:32" + "src": "48782:9:32" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "49349:6:32" + "src": "48793:6:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "49334:3:32" + "src": "48778:3:32" }, "nodeType": "YulFunctionCall", - "src": "49334:22:32" + "src": "48778:22:32" }, "variables": [ { "name": "_3", "nodeType": "YulTypedName", - "src": "49328:2:32", + "src": "48772:2:32", "type": "" } ] @@ -37184,7 +36494,7 @@ { "body": { "nodeType": "YulBlock", - "src": "49404:16:32", + "src": "48848:16:32", "statements": [ { "expression": { @@ -37192,14 +36502,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "49413:1:32", + "src": "48857:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "49416:1:32", + "src": "48860:1:32", "type": "", "value": "0" } @@ -37207,13 +36517,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "49406:6:32" + "src": "48850:6:32" }, "nodeType": "YulFunctionCall", - "src": "49406:12:32" + "src": "48850:12:32" }, "nodeType": "YulExpressionStatement", - "src": "49406:12:32" + "src": "48850:12:32" } ] }, @@ -37226,12 +36536,12 @@ { "name": "_3", "nodeType": "YulIdentifier", - "src": "49383:2:32" + "src": "48827:2:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "49387:4:32", + "src": "48831:4:32", "type": "", "value": "0x1f" } @@ -37239,68 +36549,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "49379:3:32" + "src": "48823:3:32" }, "nodeType": "YulFunctionCall", - "src": "49379:13:32" + "src": "48823:13:32" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "49394:7:32" + "src": "48838:7:32" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "49375:3:32" + "src": "48819:3:32" }, "nodeType": "YulFunctionCall", - "src": "49375:27:32" + "src": "48819:27:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "49368:6:32" + "src": "48812:6:32" }, "nodeType": "YulFunctionCall", - "src": "49368:35:32" + "src": "48812:35:32" }, "nodeType": "YulIf", - "src": "49365:55:32" + "src": "48809:55:32" }, { "nodeType": "YulVariableDeclaration", - "src": "49429:19:32", + "src": "48873:19:32", "value": { "arguments": [ { "name": "_3", "nodeType": "YulIdentifier", - "src": "49445:2:32" + "src": "48889:2:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "49439:5:32" + "src": "48883:5:32" }, "nodeType": "YulFunctionCall", - "src": "49439:9:32" + "src": "48883:9:32" }, "variables": [ { "name": "_4", "nodeType": "YulTypedName", - "src": "49433:2:32", + "src": "48877:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "49457:71:32", + "src": "48901:71:32", "value": { "arguments": [ { @@ -37308,48 +36618,48 @@ { "name": "_4", "nodeType": "YulIdentifier", - "src": "49524:2:32" + "src": "48968:2:32" } ], "functionName": { - "name": "array_allocation_size_array_uint256_dyn", + "name": "array_allocation_size_array_bytes32_dyn", "nodeType": "YulIdentifier", - "src": "49484:39:32" + "src": "48928:39:32" }, "nodeType": "YulFunctionCall", - "src": "49484:43:32" + "src": "48928:43:32" } ], "functionName": { "name": "allocate_memory", "nodeType": "YulIdentifier", - "src": "49468:15:32" + "src": "48912:15:32" }, "nodeType": "YulFunctionCall", - "src": "49468:60:32" + "src": "48912:60:32" }, "variables": [ { "name": "dst", "nodeType": "YulTypedName", - "src": "49461:3:32", + "src": "48905:3:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "49537:16:32", + "src": "48981:16:32", "value": { "name": "dst", "nodeType": "YulIdentifier", - "src": "49550:3:32" + "src": "48994:3:32" }, "variables": [ { "name": "dst_1", "nodeType": "YulTypedName", - "src": "49541:5:32", + "src": "48985:5:32", "type": "" } ] @@ -37360,60 +36670,60 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "49569:3:32" + "src": "49013:3:32" }, { "name": "_4", "nodeType": "YulIdentifier", - "src": "49574:2:32" + "src": "49018:2:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "49562:6:32" + "src": "49006:6:32" }, "nodeType": "YulFunctionCall", - "src": "49562:15:32" + "src": "49006:15:32" }, "nodeType": "YulExpressionStatement", - "src": "49562:15:32" + "src": "49006:15:32" }, { "nodeType": "YulAssignment", - "src": "49586:19:32", + "src": "49030:19:32", "value": { "arguments": [ { "name": "dst", "nodeType": "YulIdentifier", - "src": "49597:3:32" + "src": "49041:3:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "49602:2:32" + "src": "49046:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "49593:3:32" + "src": "49037:3:32" }, "nodeType": "YulFunctionCall", - "src": "49593:12:32" + "src": "49037:12:32" }, "variableNames": [ { "name": "dst", "nodeType": "YulIdentifier", - "src": "49586:3:32" + "src": "49030:3:32" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "49614:42:32", + "src": "49058:42:32", "value": { "arguments": [ { @@ -37421,59 +36731,59 @@ { "name": "_3", "nodeType": "YulIdentifier", - "src": "49636:2:32" + "src": "49080:2:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "49644:1:32", + "src": "49088:1:32", "type": "", "value": "5" }, { "name": "_4", "nodeType": "YulIdentifier", - "src": "49647:2:32" + "src": "49091:2:32" } ], "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "49640:3:32" + "src": "49084:3:32" }, "nodeType": "YulFunctionCall", - "src": "49640:10:32" + "src": "49084:10:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "49632:3:32" + "src": "49076:3:32" }, "nodeType": "YulFunctionCall", - "src": "49632:19:32" + "src": "49076:19:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "49653:2:32" + "src": "49097:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "49628:3:32" + "src": "49072:3:32" }, "nodeType": "YulFunctionCall", - "src": "49628:28:32" + "src": "49072:28:32" }, "variables": [ { "name": "srcEnd", "nodeType": "YulTypedName", - "src": "49618:6:32", + "src": "49062:6:32", "type": "" } ] @@ -37481,7 +36791,7 @@ { "body": { "nodeType": "YulBlock", - "src": "49688:16:32", + "src": "49132:16:32", "statements": [ { "expression": { @@ -37489,14 +36799,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "49697:1:32", + "src": "49141:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "49700:1:32", + "src": "49144:1:32", "type": "", "value": "0" } @@ -37504,13 +36814,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "49690:6:32" + "src": "49134:6:32" }, "nodeType": "YulFunctionCall", - "src": "49690:12:32" + "src": "49134:12:32" }, "nodeType": "YulExpressionStatement", - "src": "49690:12:32" + "src": "49134:12:32" } ] }, @@ -37519,54 +36829,54 @@ { "name": "srcEnd", "nodeType": "YulIdentifier", - "src": "49671:6:32" + "src": "49115:6:32" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "49679:7:32" + "src": "49123:7:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "49668:2:32" + "src": "49112:2:32" }, "nodeType": "YulFunctionCall", - "src": "49668:19:32" + "src": "49112:19:32" }, "nodeType": "YulIf", - "src": "49665:39:32" + "src": "49109:39:32" }, { "nodeType": "YulVariableDeclaration", - "src": "49713:22:32", + "src": "49157:22:32", "value": { "arguments": [ { "name": "_3", "nodeType": "YulIdentifier", - "src": "49728:2:32" + "src": "49172:2:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "49732:2:32" + "src": "49176:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "49724:3:32" + "src": "49168:3:32" }, "nodeType": "YulFunctionCall", - "src": "49724:11:32" + "src": "49168:11:32" }, "variables": [ { "name": "src", "nodeType": "YulTypedName", - "src": "49717:3:32", + "src": "49161:3:32", "type": "" } ] @@ -37574,32 +36884,32 @@ { "body": { "nodeType": "YulBlock", - "src": "49800:1155:32", + "src": "49244:1155:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "49814:29:32", + "src": "49258:29:32", "value": { "arguments": [ { "name": "src", "nodeType": "YulIdentifier", - "src": "49839:3:32" + "src": "49283:3:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "49833:5:32" + "src": "49277:5:32" }, "nodeType": "YulFunctionCall", - "src": "49833:10:32" + "src": "49277:10:32" }, "variables": [ { "name": "innerOffset", "nodeType": "YulTypedName", - "src": "49818:11:32", + "src": "49262:11:32", "type": "" } ] @@ -37607,15 +36917,15 @@ { "body": { "nodeType": "YulBlock", - "src": "49891:74:32", + "src": "49335:74:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "49909:11:32", + "src": "49353:11:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "49919:1:32", + "src": "49363:1:32", "type": "", "value": "0" }, @@ -37623,7 +36933,7 @@ { "name": "_5", "nodeType": "YulTypedName", - "src": "49913:2:32", + "src": "49357:2:32", "type": "" } ] @@ -37634,24 +36944,24 @@ { "name": "_5", "nodeType": "YulIdentifier", - "src": "49944:2:32" + "src": "49388:2:32" }, { "name": "_5", "nodeType": "YulIdentifier", - "src": "49948:2:32" + "src": "49392:2:32" } ], "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "49937:6:32" + "src": "49381:6:32" }, "nodeType": "YulFunctionCall", - "src": "49937:14:32" + "src": "49381:14:32" }, "nodeType": "YulExpressionStatement", - "src": "49937:14:32" + "src": "49381:14:32" } ] }, @@ -37660,65 +36970,65 @@ { "name": "innerOffset", "nodeType": "YulIdentifier", - "src": "49862:11:32" + "src": "49306:11:32" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "49875:2:32" + "src": "49319:2:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "49859:2:32" + "src": "49303:2:32" }, "nodeType": "YulFunctionCall", - "src": "49859:19:32" + "src": "49303:19:32" }, "nodeType": "YulIf", - "src": "49856:109:32" + "src": "49300:109:32" }, { "nodeType": "YulVariableDeclaration", - "src": "49978:30:32", + "src": "49422:30:32", "value": { "arguments": [ { "name": "_3", "nodeType": "YulIdentifier", - "src": "49992:2:32" + "src": "49436:2:32" }, { "name": "innerOffset", "nodeType": "YulIdentifier", - "src": "49996:11:32" + "src": "49440:11:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "49988:3:32" + "src": "49432:3:32" }, "nodeType": "YulFunctionCall", - "src": "49988:20:32" + "src": "49432:20:32" }, "variables": [ { "name": "_6", "nodeType": "YulTypedName", - "src": "49982:2:32", + "src": "49426:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "50021:14:32", + "src": "49465:14:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "50031:4:32", + "src": "49475:4:32", "type": "", "value": "0x80" }, @@ -37726,7 +37036,7 @@ { "name": "_7", "nodeType": "YulTypedName", - "src": "50025:2:32", + "src": "49469:2:32", "type": "" } ] @@ -37734,15 +37044,15 @@ { "body": { "nodeType": "YulBlock", - "src": "50103:74:32", + "src": "49547:74:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "50121:11:32", + "src": "49565:11:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "50131:1:32", + "src": "49575:1:32", "type": "", "value": "0" }, @@ -37750,7 +37060,7 @@ { "name": "_8", "nodeType": "YulTypedName", - "src": "50125:2:32", + "src": "49569:2:32", "type": "" } ] @@ -37761,24 +37071,24 @@ { "name": "_8", "nodeType": "YulIdentifier", - "src": "50156:2:32" + "src": "49600:2:32" }, { "name": "_8", "nodeType": "YulIdentifier", - "src": "50160:2:32" + "src": "49604:2:32" } ], "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "50149:6:32" + "src": "49593:6:32" }, "nodeType": "YulFunctionCall", - "src": "50149:14:32" + "src": "49593:14:32" }, "nodeType": "YulExpressionStatement", - "src": "50149:14:32" + "src": "49593:14:32" } ] }, @@ -37791,28 +37101,28 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "50063:7:32" + "src": "49507:7:32" }, { "name": "_6", "nodeType": "YulIdentifier", - "src": "50072:2:32" + "src": "49516:2:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "50059:3:32" + "src": "49503:3:32" }, "nodeType": "YulFunctionCall", - "src": "50059:16:32" + "src": "49503:16:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "50081:2:32", + "src": "49525:2:32", "type": "", "value": "31" } @@ -37820,62 +37130,62 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "50077:3:32" + "src": "49521:3:32" }, "nodeType": "YulFunctionCall", - "src": "50077:7:32" + "src": "49521:7:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "50055:3:32" + "src": "49499:3:32" }, "nodeType": "YulFunctionCall", - "src": "50055:30:32" + "src": "49499:30:32" }, { "name": "_7", "nodeType": "YulIdentifier", - "src": "50087:2:32" + "src": "49531:2:32" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "50051:3:32" + "src": "49495:3:32" }, "nodeType": "YulFunctionCall", - "src": "50051:39:32" + "src": "49495:39:32" }, "nodeType": "YulIf", - "src": "50048:129:32" + "src": "49492:129:32" }, { "nodeType": "YulVariableDeclaration", - "src": "50190:35:32", + "src": "49634:35:32", "value": { "arguments": [], "functionName": { - "name": "allocate_memory_8789", + "name": "allocate_memory_8461", "nodeType": "YulIdentifier", - "src": "50203:20:32" + "src": "49647:20:32" }, "nodeType": "YulFunctionCall", - "src": "50203:22:32" + "src": "49647:22:32" }, "variables": [ { "name": "value", "nodeType": "YulTypedName", - "src": "50194:5:32", + "src": "49638:5:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "50238:33:32", + "src": "49682:33:32", "value": { "arguments": [ { @@ -37883,36 +37193,36 @@ { "name": "_6", "nodeType": "YulIdentifier", - "src": "50263:2:32" + "src": "49707:2:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "50267:2:32" + "src": "49711:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "50259:3:32" + "src": "49703:3:32" }, "nodeType": "YulFunctionCall", - "src": "50259:11:32" + "src": "49703:11:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "50253:5:32" + "src": "49697:5:32" }, "nodeType": "YulFunctionCall", - "src": "50253:18:32" + "src": "49697:18:32" }, "variables": [ { "name": "value_1", "nodeType": "YulTypedName", - "src": "50242:7:32", + "src": "49686:7:32", "type": "" } ] @@ -37920,15 +37230,15 @@ { "body": { "nodeType": "YulBlock", - "src": "50337:74:32", + "src": "49781:74:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "50355:11:32", + "src": "49799:11:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "50365:1:32", + "src": "49809:1:32", "type": "", "value": "0" }, @@ -37936,7 +37246,7 @@ { "name": "_9", "nodeType": "YulTypedName", - "src": "50359:2:32", + "src": "49803:2:32", "type": "" } ] @@ -37947,24 +37257,24 @@ { "name": "_9", "nodeType": "YulIdentifier", - "src": "50390:2:32" + "src": "49834:2:32" }, { "name": "_9", "nodeType": "YulIdentifier", - "src": "50394:2:32" + "src": "49838:2:32" } ], "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "50383:6:32" + "src": "49827:6:32" }, "nodeType": "YulFunctionCall", - "src": "50383:14:32" + "src": "49827:14:32" }, "nodeType": "YulExpressionStatement", - "src": "50383:14:32" + "src": "49827:14:32" } ] }, @@ -37975,49 +37285,49 @@ { "name": "value_1", "nodeType": "YulIdentifier", - "src": "50297:7:32" + "src": "49741:7:32" }, { "arguments": [ { "name": "value_1", "nodeType": "YulIdentifier", - "src": "50310:7:32" + "src": "49754:7:32" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "50319:2:32" + "src": "49763:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "50306:3:32" + "src": "49750:3:32" }, "nodeType": "YulFunctionCall", - "src": "50306:16:32" + "src": "49750:16:32" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "50294:2:32" + "src": "49738:2:32" }, "nodeType": "YulFunctionCall", - "src": "50294:29:32" + "src": "49738:29:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "50287:6:32" + "src": "49731:6:32" }, "nodeType": "YulFunctionCall", - "src": "50287:37:32" + "src": "49731:37:32" }, "nodeType": "YulIf", - "src": "50284:127:32" + "src": "49728:127:32" }, { "expression": { @@ -38025,32 +37335,32 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "50431:5:32" + "src": "49875:5:32" }, { "name": "value_1", "nodeType": "YulIdentifier", - "src": "50438:7:32" + "src": "49882:7:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "50424:6:32" + "src": "49868:6:32" }, "nodeType": "YulFunctionCall", - "src": "50424:22:32" + "src": "49868:22:32" }, "nodeType": "YulExpressionStatement", - "src": "50424:22:32" + "src": "49868:22:32" }, { "nodeType": "YulVariableDeclaration", - "src": "50459:13:32", + "src": "49903:13:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "50470:2:32", + "src": "49914:2:32", "type": "", "value": "64" }, @@ -38058,14 +37368,14 @@ { "name": "_10", "nodeType": "YulTypedName", - "src": "50463:3:32", + "src": "49907:3:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "50485:35:32", + "src": "49929:35:32", "value": { "arguments": [ { @@ -38073,36 +37383,36 @@ { "name": "_6", "nodeType": "YulIdentifier", - "src": "50511:2:32" + "src": "49955:2:32" }, { "name": "_10", "nodeType": "YulIdentifier", - "src": "50515:3:32" + "src": "49959:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "50507:3:32" + "src": "49951:3:32" }, "nodeType": "YulFunctionCall", - "src": "50507:12:32" + "src": "49951:12:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "50501:5:32" + "src": "49945:5:32" }, "nodeType": "YulFunctionCall", - "src": "50501:19:32" + "src": "49945:19:32" }, "variables": [ { "name": "offset_1", "nodeType": "YulTypedName", - "src": "50489:8:32", + "src": "49933:8:32", "type": "" } ] @@ -38110,15 +37420,15 @@ { "body": { "nodeType": "YulBlock", - "src": "50565:77:32", + "src": "50009:77:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "50583:12:32", + "src": "50027:12:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "50594:1:32", + "src": "50038:1:32", "type": "", "value": "0" }, @@ -38126,7 +37436,7 @@ { "name": "_11", "nodeType": "YulTypedName", - "src": "50587:3:32", + "src": "50031:3:32", "type": "" } ] @@ -38137,24 +37447,24 @@ { "name": "_11", "nodeType": "YulIdentifier", - "src": "50619:3:32" + "src": "50063:3:32" }, { "name": "_11", "nodeType": "YulIdentifier", - "src": "50624:3:32" + "src": "50068:3:32" } ], "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "50612:6:32" + "src": "50056:6:32" }, "nodeType": "YulFunctionCall", - "src": "50612:16:32" + "src": "50056:16:32" }, "nodeType": "YulExpressionStatement", - "src": "50612:16:32" + "src": "50056:16:32" } ] }, @@ -38163,24 +37473,24 @@ { "name": "offset_1", "nodeType": "YulIdentifier", - "src": "50539:8:32" + "src": "49983:8:32" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "50549:2:32" + "src": "49993:2:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "50536:2:32" + "src": "49980:2:32" }, "nodeType": "YulFunctionCall", - "src": "50536:16:32" + "src": "49980:16:32" }, "nodeType": "YulIf", - "src": "50533:109:32" + "src": "49977:109:32" }, { "expression": { @@ -38190,21 +37500,21 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "50666:5:32" + "src": "50110:5:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "50673:2:32" + "src": "50117:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "50662:3:32" + "src": "50106:3:32" }, "nodeType": "YulFunctionCall", - "src": "50662:14:32" + "src": "50106:14:32" }, { "arguments": [ @@ -38215,69 +37525,69 @@ { "name": "_6", "nodeType": "YulIdentifier", - "src": "50714:2:32" + "src": "50158:2:32" }, { "name": "offset_1", "nodeType": "YulIdentifier", - "src": "50718:8:32" + "src": "50162:8:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "50710:3:32" + "src": "50154:3:32" }, "nodeType": "YulFunctionCall", - "src": "50710:17:32" + "src": "50154:17:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "50729:2:32" + "src": "50173:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "50706:3:32" + "src": "50150:3:32" }, "nodeType": "YulFunctionCall", - "src": "50706:26:32" + "src": "50150:26:32" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "50734:7:32" + "src": "50178:7:32" } ], "functionName": { "name": "abi_decode_bytes_fromMemory", "nodeType": "YulIdentifier", - "src": "50678:27:32" + "src": "50122:27:32" }, "nodeType": "YulFunctionCall", - "src": "50678:64:32" + "src": "50122:64:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "50655:6:32" + "src": "50099:6:32" }, "nodeType": "YulFunctionCall", - "src": "50655:88:32" + "src": "50099:88:32" }, "nodeType": "YulExpressionStatement", - "src": "50655:88:32" + "src": "50099:88:32" }, { "nodeType": "YulVariableDeclaration", - "src": "50756:13:32", + "src": "50200:13:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "50767:2:32", + "src": "50211:2:32", "type": "", "value": "96" }, @@ -38285,7 +37595,7 @@ { "name": "_12", "nodeType": "YulTypedName", - "src": "50760:3:32", + "src": "50204:3:32", "type": "" } ] @@ -38298,21 +37608,21 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "50793:5:32" + "src": "50237:5:32" }, { "name": "_10", "nodeType": "YulIdentifier", - "src": "50800:3:32" + "src": "50244:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "50789:3:32" + "src": "50233:3:32" }, "nodeType": "YulFunctionCall", - "src": "50789:15:32" + "src": "50233:15:32" }, { "arguments": [ @@ -38321,42 +37631,42 @@ { "name": "_6", "nodeType": "YulIdentifier", - "src": "50816:2:32" + "src": "50260:2:32" }, { "name": "_12", "nodeType": "YulIdentifier", - "src": "50820:3:32" + "src": "50264:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "50812:3:32" + "src": "50256:3:32" }, "nodeType": "YulFunctionCall", - "src": "50812:12:32" + "src": "50256:12:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "50806:5:32" + "src": "50250:5:32" }, "nodeType": "YulFunctionCall", - "src": "50806:19:32" + "src": "50250:19:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "50782:6:32" + "src": "50226:6:32" }, "nodeType": "YulFunctionCall", - "src": "50782:44:32" + "src": "50226:44:32" }, "nodeType": "YulExpressionStatement", - "src": "50782:44:32" + "src": "50226:44:32" }, { "expression": { @@ -38366,21 +37676,21 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "50850:5:32" + "src": "50294:5:32" }, { "name": "_12", "nodeType": "YulIdentifier", - "src": "50857:3:32" + "src": "50301:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "50846:3:32" + "src": "50290:3:32" }, "nodeType": "YulFunctionCall", - "src": "50846:15:32" + "src": "50290:15:32" }, { "arguments": [ @@ -38389,42 +37699,42 @@ { "name": "_6", "nodeType": "YulIdentifier", - "src": "50873:2:32" + "src": "50317:2:32" }, { "name": "_7", "nodeType": "YulIdentifier", - "src": "50877:2:32" + "src": "50321:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "50869:3:32" + "src": "50313:3:32" }, "nodeType": "YulFunctionCall", - "src": "50869:11:32" + "src": "50313:11:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "50863:5:32" + "src": "50307:5:32" }, "nodeType": "YulFunctionCall", - "src": "50863:18:32" + "src": "50307:18:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "50839:6:32" + "src": "50283:6:32" }, "nodeType": "YulFunctionCall", - "src": "50839:43:32" + "src": "50283:43:32" }, "nodeType": "YulExpressionStatement", - "src": "50839:43:32" + "src": "50283:43:32" }, { "expression": { @@ -38432,54 +37742,54 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "50902:3:32" + "src": "50346:3:32" }, { "name": "value", "nodeType": "YulIdentifier", - "src": "50907:5:32" + "src": "50351:5:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "50895:6:32" + "src": "50339:6:32" }, "nodeType": "YulFunctionCall", - "src": "50895:18:32" + "src": "50339:18:32" }, "nodeType": "YulExpressionStatement", - "src": "50895:18:32" + "src": "50339:18:32" }, { "nodeType": "YulAssignment", - "src": "50926:19:32", + "src": "50370:19:32", "value": { "arguments": [ { "name": "dst", "nodeType": "YulIdentifier", - "src": "50937:3:32" + "src": "50381:3:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "50942:2:32" + "src": "50386:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "50933:3:32" + "src": "50377:3:32" }, "nodeType": "YulFunctionCall", - "src": "50933:12:32" + "src": "50377:12:32" }, "variableNames": [ { "name": "dst", "nodeType": "YulIdentifier", - "src": "50926:3:32" + "src": "50370:3:32" } ] } @@ -38490,56 +37800,56 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "49755:3:32" + "src": "49199:3:32" }, { "name": "srcEnd", "nodeType": "YulIdentifier", - "src": "49760:6:32" + "src": "49204:6:32" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "49752:2:32" + "src": "49196:2:32" }, "nodeType": "YulFunctionCall", - "src": "49752:15:32" + "src": "49196:15:32" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "49768:23:32", + "src": "49212:23:32", "statements": [ { "nodeType": "YulAssignment", - "src": "49770:19:32", + "src": "49214:19:32", "value": { "arguments": [ { "name": "src", "nodeType": "YulIdentifier", - "src": "49781:3:32" + "src": "49225:3:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "49786:2:32" + "src": "49230:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "49777:3:32" + "src": "49221:3:32" }, "nodeType": "YulFunctionCall", - "src": "49777:12:32" + "src": "49221:12:32" }, "variableNames": [ { "name": "src", "nodeType": "YulIdentifier", - "src": "49770:3:32" + "src": "49214:3:32" } ] } @@ -38547,42 +37857,42 @@ }, "pre": { "nodeType": "YulBlock", - "src": "49748:3:32", + "src": "49192:3:32", "statements": [] }, - "src": "49744:1211:32" + "src": "49188:1211:32" }, { "nodeType": "YulAssignment", - "src": "50964:15:32", + "src": "50408:15:32", "value": { "name": "dst_1", "nodeType": "YulIdentifier", - "src": "50974:5:32" + "src": "50418:5:32" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "50964:6:32" + "src": "50408:6:32" } ] } ] }, - "name": "abi_decode_tuple_t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr_fromMemory", + "name": "abi_decode_tuple_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr_fromMemory", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "49079:9:32", + "src": "48523:9:32", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "49090:7:32", + "src": "48534:7:32", "type": "" } ], @@ -38590,16 +37900,132 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "49102:6:32", + "src": "48546:6:32", "type": "" } ], - "src": "48978:2007:32" + "src": "48422:2007:32" }, { "body": { "nodeType": "YulBlock", - "src": "51164:155:32", + "src": "50466:95:32", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "50483:1:32", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "50490:3:32", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "50495:10:32", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "50486:3:32" + }, + "nodeType": "YulFunctionCall", + "src": "50486:20:32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "50476:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "50476:31:32" + }, + "nodeType": "YulExpressionStatement", + "src": "50476:31:32" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "50523:1:32", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "50526:4:32", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "50516:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "50516:15:32" + }, + "nodeType": "YulExpressionStatement", + "src": "50516:15:32" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "50547:1:32", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "50550:4:32", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "50540:6:32" + }, + "nodeType": "YulFunctionCall", + "src": "50540:15:32" + }, + "nodeType": "YulExpressionStatement", + "src": "50540:15:32" + } + ] + }, + "name": "panic_error_0x32", + "nodeType": "YulFunctionDefinition", + "src": "50434:127:32" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "50740:155:32", "statements": [ { "expression": { @@ -38607,12 +38033,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "51181:9:32" + "src": "50757:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "51192:2:32", + "src": "50768:2:32", "type": "", "value": "32" } @@ -38620,13 +38046,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "51174:6:32" + "src": "50750:6:32" }, "nodeType": "YulFunctionCall", - "src": "51174:21:32" + "src": "50750:21:32" }, "nodeType": "YulExpressionStatement", - "src": "51174:21:32" + "src": "50750:21:32" }, { "expression": { @@ -38636,12 +38062,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "51215:9:32" + "src": "50791:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "51226:2:32", + "src": "50802:2:32", "type": "", "value": "32" } @@ -38649,15 +38075,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "51211:3:32" + "src": "50787:3:32" }, "nodeType": "YulFunctionCall", - "src": "51211:18:32" + "src": "50787:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "51231:1:32", + "src": "50807:1:32", "type": "", "value": "6" } @@ -38665,13 +38091,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "51204:6:32" + "src": "50780:6:32" }, "nodeType": "YulFunctionCall", - "src": "51204:29:32" + "src": "50780:29:32" }, "nodeType": "YulExpressionStatement", - "src": "51204:29:32" + "src": "50780:29:32" }, { "expression": { @@ -38681,12 +38107,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "51253:9:32" + "src": "50829:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "51264:2:32", + "src": "50840:2:32", "type": "", "value": "64" } @@ -38694,16 +38120,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "51249:3:32" + "src": "50825:3:32" }, "nodeType": "YulFunctionCall", - "src": "51249:18:32" + "src": "50825:18:32" }, { "hexValue": "4c4243303735", "kind": "string", "nodeType": "YulLiteral", - "src": "51269:8:32", + "src": "50845:8:32", "type": "", "value": "LBC075" } @@ -38711,28 +38137,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "51242:6:32" + "src": "50818:6:32" }, "nodeType": "YulFunctionCall", - "src": "51242:36:32" + "src": "50818:36:32" }, "nodeType": "YulExpressionStatement", - "src": "51242:36:32" + "src": "50818:36:32" }, { "nodeType": "YulAssignment", - "src": "51287:26:32", + "src": "50863:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "51299:9:32" + "src": "50875:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "51310:2:32", + "src": "50886:2:32", "type": "", "value": "96" } @@ -38740,16 +38166,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "51295:3:32" + "src": "50871:3:32" }, "nodeType": "YulFunctionCall", - "src": "51295:18:32" + "src": "50871:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "51287:4:32" + "src": "50863:4:32" } ] } @@ -38761,7 +38187,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "51141:9:32", + "src": "50717:9:32", "type": "" } ], @@ -38769,20 +38195,20 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "51155:4:32", + "src": "50731:4:32", "type": "" } ], - "src": "50990:329:32" + "src": "50566:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "51370:102:32", + "src": "50946:102:32", "statements": [ { "nodeType": "YulAssignment", - "src": "51380:38:32", + "src": "50956:38:32", "value": { "arguments": [ { @@ -38790,12 +38216,12 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "51395:1:32" + "src": "50971:1:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "51398:4:32", + "src": "50974:4:32", "type": "", "value": "0xff" } @@ -38803,22 +38229,22 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "51391:3:32" + "src": "50967:3:32" }, "nodeType": "YulFunctionCall", - "src": "51391:12:32" + "src": "50967:12:32" }, { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "51409:1:32" + "src": "50985:1:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "51412:4:32", + "src": "50988:4:32", "type": "", "value": "0xff" } @@ -38826,32 +38252,32 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "51405:3:32" + "src": "50981:3:32" }, "nodeType": "YulFunctionCall", - "src": "51405:12:32" + "src": "50981:12:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "51387:3:32" + "src": "50963:3:32" }, "nodeType": "YulFunctionCall", - "src": "51387:31:32" + "src": "50963:31:32" }, "variableNames": [ { "name": "sum", "nodeType": "YulIdentifier", - "src": "51380:3:32" + "src": "50956:3:32" } ] }, { "body": { "nodeType": "YulBlock", - "src": "51444:22:32", + "src": "51020:22:32", "statements": [ { "expression": { @@ -38859,13 +38285,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "51446:16:32" + "src": "51022:16:32" }, "nodeType": "YulFunctionCall", - "src": "51446:18:32" + "src": "51022:18:32" }, "nodeType": "YulExpressionStatement", - "src": "51446:18:32" + "src": "51022:18:32" } ] }, @@ -38874,12 +38300,12 @@ { "name": "sum", "nodeType": "YulIdentifier", - "src": "51433:3:32" + "src": "51009:3:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "51438:4:32", + "src": "51014:4:32", "type": "", "value": "0xff" } @@ -38887,13 +38313,13 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "51430:2:32" + "src": "51006:2:32" }, "nodeType": "YulFunctionCall", - "src": "51430:13:32" + "src": "51006:13:32" }, "nodeType": "YulIf", - "src": "51427:39:32" + "src": "51003:39:32" } ] }, @@ -38903,13 +38329,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "51353:1:32", + "src": "50929:1:32", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "51356:1:32", + "src": "50932:1:32", "type": "" } ], @@ -38917,31 +38343,31 @@ { "name": "sum", "nodeType": "YulTypedName", - "src": "51362:3:32", + "src": "50938:3:32", "type": "" } ], - "src": "51324:148:32" + "src": "50900:148:32" }, { "body": { "nodeType": "YulBlock", - "src": "51522:130:32", + "src": "51098:130:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "51532:31:32", + "src": "51108:31:32", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "51551:5:32" + "src": "51127:5:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "51558:4:32", + "src": "51134:4:32", "type": "", "value": "0xff" } @@ -38949,16 +38375,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "51547:3:32" + "src": "51123:3:32" }, "nodeType": "YulFunctionCall", - "src": "51547:16:32" + "src": "51123:16:32" }, "variables": [ { "name": "value_1", "nodeType": "YulTypedName", - "src": "51536:7:32", + "src": "51112:7:32", "type": "" } ] @@ -38966,7 +38392,7 @@ { "body": { "nodeType": "YulBlock", - "src": "51593:22:32", + "src": "51169:22:32", "statements": [ { "expression": { @@ -38974,13 +38400,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "51595:16:32" + "src": "51171:16:32" }, "nodeType": "YulFunctionCall", - "src": "51595:18:32" + "src": "51171:18:32" }, "nodeType": "YulExpressionStatement", - "src": "51595:18:32" + "src": "51171:18:32" } ] }, @@ -38989,12 +38415,12 @@ { "name": "value_1", "nodeType": "YulIdentifier", - "src": "51578:7:32" + "src": "51154:7:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "51587:4:32", + "src": "51163:4:32", "type": "", "value": "0xff" } @@ -39002,28 +38428,28 @@ "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "51575:2:32" + "src": "51151:2:32" }, "nodeType": "YulFunctionCall", - "src": "51575:17:32" + "src": "51151:17:32" }, "nodeType": "YulIf", - "src": "51572:43:32" + "src": "51148:43:32" }, { "nodeType": "YulAssignment", - "src": "51624:22:32", + "src": "51200:22:32", "value": { "arguments": [ { "name": "value_1", "nodeType": "YulIdentifier", - "src": "51635:7:32" + "src": "51211:7:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "51644:1:32", + "src": "51220:1:32", "type": "", "value": "1" } @@ -39031,16 +38457,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "51631:3:32" + "src": "51207:3:32" }, "nodeType": "YulFunctionCall", - "src": "51631:15:32" + "src": "51207:15:32" }, "variableNames": [ { "name": "ret", "nodeType": "YulIdentifier", - "src": "51624:3:32" + "src": "51200:3:32" } ] } @@ -39052,7 +38478,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "51504:5:32", + "src": "51080:5:32", "type": "" } ], @@ -39060,21 +38486,21 @@ { "name": "ret", "nodeType": "YulTypedName", - "src": "51514:3:32", + "src": "51090:3:32", "type": "" } ], - "src": "51477:175:32" + "src": "51053:175:32" }, { "body": { "nodeType": "YulBlock", - "src": "51738:103:32", + "src": "51314:103:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "51784:16:32", + "src": "51360:16:32", "statements": [ { "expression": { @@ -39082,14 +38508,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "51793:1:32", + "src": "51369:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "51796:1:32", + "src": "51372:1:32", "type": "", "value": "0" } @@ -39097,13 +38523,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "51786:6:32" + "src": "51362:6:32" }, "nodeType": "YulFunctionCall", - "src": "51786:12:32" + "src": "51362:12:32" }, "nodeType": "YulExpressionStatement", - "src": "51786:12:32" + "src": "51362:12:32" } ] }, @@ -39114,26 +38540,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "51759:7:32" + "src": "51335:7:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "51768:9:32" + "src": "51344:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "51755:3:32" + "src": "51331:3:32" }, "nodeType": "YulFunctionCall", - "src": "51755:23:32" + "src": "51331:23:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "51780:2:32", + "src": "51356:2:32", "type": "", "value": "32" } @@ -39141,38 +38567,38 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "51751:3:32" + "src": "51327:3:32" }, "nodeType": "YulFunctionCall", - "src": "51751:32:32" + "src": "51327:32:32" }, "nodeType": "YulIf", - "src": "51748:52:32" + "src": "51324:52:32" }, { "nodeType": "YulAssignment", - "src": "51809:26:32", + "src": "51385:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "51825:9:32" + "src": "51401:9:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "51819:5:32" + "src": "51395:5:32" }, "nodeType": "YulFunctionCall", - "src": "51819:16:32" + "src": "51395:16:32" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "51809:6:32" + "src": "51385:6:32" } ] } @@ -39184,13 +38610,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "51704:9:32", + "src": "51280:9:32", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "51715:7:32", + "src": "51291:7:32", "type": "" } ], @@ -39198,16 +38624,16 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "51727:6:32", + "src": "51303:6:32", "type": "" } ], - "src": "51657:184:32" + "src": "51233:184:32" }, { "body": { "nodeType": "YulBlock", - "src": "52020:155:32", + "src": "51596:155:32", "statements": [ { "expression": { @@ -39215,12 +38641,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "52037:9:32" + "src": "51613:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "52048:2:32", + "src": "51624:2:32", "type": "", "value": "32" } @@ -39228,13 +38654,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "52030:6:32" + "src": "51606:6:32" }, "nodeType": "YulFunctionCall", - "src": "52030:21:32" + "src": "51606:21:32" }, "nodeType": "YulExpressionStatement", - "src": "52030:21:32" + "src": "51606:21:32" }, { "expression": { @@ -39244,12 +38670,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "52071:9:32" + "src": "51647:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "52082:2:32", + "src": "51658:2:32", "type": "", "value": "32" } @@ -39257,15 +38683,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "52067:3:32" + "src": "51643:3:32" }, "nodeType": "YulFunctionCall", - "src": "52067:18:32" + "src": "51643:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "52087:1:32", + "src": "51663:1:32", "type": "", "value": "6" } @@ -39273,13 +38699,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "52060:6:32" + "src": "51636:6:32" }, "nodeType": "YulFunctionCall", - "src": "52060:29:32" + "src": "51636:29:32" }, "nodeType": "YulExpressionStatement", - "src": "52060:29:32" + "src": "51636:29:32" }, { "expression": { @@ -39289,12 +38715,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "52109:9:32" + "src": "51685:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "52120:2:32", + "src": "51696:2:32", "type": "", "value": "64" } @@ -39302,16 +38728,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "52105:3:32" + "src": "51681:3:32" }, "nodeType": "YulFunctionCall", - "src": "52105:18:32" + "src": "51681:18:32" }, { "hexValue": "4c4243303639", "kind": "string", "nodeType": "YulLiteral", - "src": "52125:8:32", + "src": "51701:8:32", "type": "", "value": "LBC069" } @@ -39319,28 +38745,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "52098:6:32" + "src": "51674:6:32" }, "nodeType": "YulFunctionCall", - "src": "52098:36:32" + "src": "51674:36:32" }, "nodeType": "YulExpressionStatement", - "src": "52098:36:32" + "src": "51674:36:32" }, { "nodeType": "YulAssignment", - "src": "52143:26:32", + "src": "51719:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "52155:9:32" + "src": "51731:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "52166:2:32", + "src": "51742:2:32", "type": "", "value": "96" } @@ -39348,16 +38774,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "52151:3:32" + "src": "51727:3:32" }, "nodeType": "YulFunctionCall", - "src": "52151:18:32" + "src": "51727:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "52143:4:32" + "src": "51719:4:32" } ] } @@ -39369,7 +38795,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "51997:9:32", + "src": "51573:9:32", "type": "" } ], @@ -39377,16 +38803,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "52011:4:32", + "src": "51587:4:32", "type": "" } ], - "src": "51846:329:32" + "src": "51422:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "52354:155:32", + "src": "51930:155:32", "statements": [ { "expression": { @@ -39394,12 +38820,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "52371:9:32" + "src": "51947:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "52382:2:32", + "src": "51958:2:32", "type": "", "value": "32" } @@ -39407,13 +38833,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "52364:6:32" + "src": "51940:6:32" }, "nodeType": "YulFunctionCall", - "src": "52364:21:32" + "src": "51940:21:32" }, "nodeType": "YulExpressionStatement", - "src": "52364:21:32" + "src": "51940:21:32" }, { "expression": { @@ -39423,12 +38849,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "52405:9:32" + "src": "51981:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "52416:2:32", + "src": "51992:2:32", "type": "", "value": "32" } @@ -39436,15 +38862,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "52401:3:32" + "src": "51977:3:32" }, "nodeType": "YulFunctionCall", - "src": "52401:18:32" + "src": "51977:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "52421:1:32", + "src": "51997:1:32", "type": "", "value": "6" } @@ -39452,13 +38878,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "52394:6:32" + "src": "51970:6:32" }, "nodeType": "YulFunctionCall", - "src": "52394:29:32" + "src": "51970:29:32" }, "nodeType": "YulExpressionStatement", - "src": "52394:29:32" + "src": "51970:29:32" }, { "expression": { @@ -39468,12 +38894,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "52443:9:32" + "src": "52019:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "52454:2:32", + "src": "52030:2:32", "type": "", "value": "64" } @@ -39481,16 +38907,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "52439:3:32" + "src": "52015:3:32" }, "nodeType": "YulFunctionCall", - "src": "52439:18:32" + "src": "52015:18:32" }, { "hexValue": "4c4243303438", "kind": "string", "nodeType": "YulLiteral", - "src": "52459:8:32", + "src": "52035:8:32", "type": "", "value": "LBC048" } @@ -39498,28 +38924,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "52432:6:32" + "src": "52008:6:32" }, "nodeType": "YulFunctionCall", - "src": "52432:36:32" + "src": "52008:36:32" }, "nodeType": "YulExpressionStatement", - "src": "52432:36:32" + "src": "52008:36:32" }, { "nodeType": "YulAssignment", - "src": "52477:26:32", + "src": "52053:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "52489:9:32" + "src": "52065:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "52500:2:32", + "src": "52076:2:32", "type": "", "value": "96" } @@ -39527,16 +38953,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "52485:3:32" + "src": "52061:3:32" }, "nodeType": "YulFunctionCall", - "src": "52485:18:32" + "src": "52061:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "52477:4:32" + "src": "52053:4:32" } ] } @@ -39548,7 +38974,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "52331:9:32", + "src": "51907:9:32", "type": "" } ], @@ -39556,31 +38982,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "52345:4:32", + "src": "51921:4:32", "type": "" } ], - "src": "52180:329:32" + "src": "51756:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "52749:613:32", + "src": "52325:613:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "52759:33:32", + "src": "52335:33:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "52777:9:32" + "src": "52353:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "52788:3:32", + "src": "52364:3:32", "type": "", "value": "128" } @@ -39588,16 +39014,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "52773:3:32" + "src": "52349:3:32" }, "nodeType": "YulFunctionCall", - "src": "52773:19:32" + "src": "52349:19:32" }, "variables": [ { "name": "tail_1", "nodeType": "YulTypedName", - "src": "52763:6:32", + "src": "52339:6:32", "type": "" } ] @@ -39608,32 +39034,32 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "52808:9:32" + "src": "52384:9:32" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "52819:6:32" + "src": "52395:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "52801:6:32" + "src": "52377:6:32" }, "nodeType": "YulFunctionCall", - "src": "52801:25:32" + "src": "52377:25:32" }, "nodeType": "YulExpressionStatement", - "src": "52801:25:32" + "src": "52377:25:32" }, { "nodeType": "YulVariableDeclaration", - "src": "52835:12:32", + "src": "52411:12:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "52845:2:32", + "src": "52421:2:32", "type": "", "value": "32" }, @@ -39641,7 +39067,7 @@ { "name": "_1", "nodeType": "YulTypedName", - "src": "52839:2:32", + "src": "52415:2:32", "type": "" } ] @@ -39654,38 +39080,38 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "52867:9:32" + "src": "52443:9:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "52878:2:32" + "src": "52454:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "52863:3:32" + "src": "52439:3:32" }, "nodeType": "YulFunctionCall", - "src": "52863:18:32" + "src": "52439:18:32" }, { "name": "value1", "nodeType": "YulIdentifier", - "src": "52883:6:32" + "src": "52459:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "52856:6:32" + "src": "52432:6:32" }, "nodeType": "YulFunctionCall", - "src": "52856:34:32" + "src": "52432:34:32" }, "nodeType": "YulExpressionStatement", - "src": "52856:34:32" + "src": "52432:34:32" }, { "expression": { @@ -39695,12 +39121,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "52910:9:32" + "src": "52486:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "52921:2:32", + "src": "52497:2:32", "type": "", "value": "64" } @@ -39708,27 +39134,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "52906:3:32" + "src": "52482:3:32" }, "nodeType": "YulFunctionCall", - "src": "52906:18:32" + "src": "52482:18:32" }, { "name": "value2", "nodeType": "YulIdentifier", - "src": "52926:6:32" + "src": "52502:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "52899:6:32" + "src": "52475:6:32" }, "nodeType": "YulFunctionCall", - "src": "52899:34:32" + "src": "52475:34:32" }, "nodeType": "YulExpressionStatement", - "src": "52899:34:32" + "src": "52475:34:32" }, { "expression": { @@ -39738,12 +39164,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "52953:9:32" + "src": "52529:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "52964:2:32", + "src": "52540:2:32", "type": "", "value": "96" } @@ -39751,15 +39177,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "52949:3:32" + "src": "52525:3:32" }, "nodeType": "YulFunctionCall", - "src": "52949:18:32" + "src": "52525:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "52969:3:32", + "src": "52545:3:32", "type": "", "value": "128" } @@ -39767,55 +39193,55 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "52942:6:32" + "src": "52518:6:32" }, "nodeType": "YulFunctionCall", - "src": "52942:31:32" + "src": "52518:31:32" }, "nodeType": "YulExpressionStatement", - "src": "52942:31:32" + "src": "52518:31:32" }, { "nodeType": "YulVariableDeclaration", - "src": "52982:17:32", + "src": "52558:17:32", "value": { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "52993:6:32" + "src": "52569:6:32" }, "variables": [ { "name": "pos", "nodeType": "YulTypedName", - "src": "52986:3:32", + "src": "52562:3:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "53008:27:32", + "src": "52584:27:32", "value": { "arguments": [ { "name": "value3", "nodeType": "YulIdentifier", - "src": "53028:6:32" + "src": "52604:6:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "53022:5:32" + "src": "52598:5:32" }, "nodeType": "YulFunctionCall", - "src": "53022:13:32" + "src": "52598:13:32" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "53012:6:32", + "src": "52588:6:32", "type": "" } ] @@ -39826,39 +39252,39 @@ { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "53051:6:32" + "src": "52627:6:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "53059:6:32" + "src": "52635:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "53044:6:32" + "src": "52620:6:32" }, "nodeType": "YulFunctionCall", - "src": "53044:22:32" + "src": "52620:22:32" }, "nodeType": "YulExpressionStatement", - "src": "53044:22:32" + "src": "52620:22:32" }, { "nodeType": "YulAssignment", - "src": "53075:26:32", + "src": "52651:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "53086:9:32" + "src": "52662:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "53097:3:32", + "src": "52673:3:32", "type": "", "value": "160" } @@ -39866,59 +39292,59 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "53082:3:32" + "src": "52658:3:32" }, "nodeType": "YulFunctionCall", - "src": "53082:19:32" + "src": "52658:19:32" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "53075:3:32" + "src": "52651:3:32" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "53110:29:32", + "src": "52686:29:32", "value": { "arguments": [ { "name": "value3", "nodeType": "YulIdentifier", - "src": "53128:6:32" + "src": "52704:6:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "53136:2:32" + "src": "52712:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "53124:3:32" + "src": "52700:3:32" }, "nodeType": "YulFunctionCall", - "src": "53124:15:32" + "src": "52700:15:32" }, "variables": [ { "name": "srcPtr", "nodeType": "YulTypedName", - "src": "53114:6:32", + "src": "52690:6:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "53148:10:32", + "src": "52724:10:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "53157:1:32", + "src": "52733:1:32", "type": "", "value": "0" }, @@ -39926,7 +39352,7 @@ { "name": "i", "nodeType": "YulTypedName", - "src": "53152:1:32", + "src": "52728:1:32", "type": "" } ] @@ -39934,7 +39360,7 @@ { "body": { "nodeType": "YulBlock", - "src": "53216:120:32", + "src": "52792:120:32", "statements": [ { "expression": { @@ -39942,97 +39368,97 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "53237:3:32" + "src": "52813:3:32" }, { "arguments": [ { "name": "srcPtr", "nodeType": "YulIdentifier", - "src": "53248:6:32" + "src": "52824:6:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "53242:5:32" + "src": "52818:5:32" }, "nodeType": "YulFunctionCall", - "src": "53242:13:32" + "src": "52818:13:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "53230:6:32" + "src": "52806:6:32" }, "nodeType": "YulFunctionCall", - "src": "53230:26:32" + "src": "52806:26:32" }, "nodeType": "YulExpressionStatement", - "src": "53230:26:32" + "src": "52806:26:32" }, { "nodeType": "YulAssignment", - "src": "53269:19:32", + "src": "52845:19:32", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "53280:3:32" + "src": "52856:3:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "53285:2:32" + "src": "52861:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "53276:3:32" + "src": "52852:3:32" }, "nodeType": "YulFunctionCall", - "src": "53276:12:32" + "src": "52852:12:32" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "53269:3:32" + "src": "52845:3:32" } ] }, { "nodeType": "YulAssignment", - "src": "53301:25:32", + "src": "52877:25:32", "value": { "arguments": [ { "name": "srcPtr", "nodeType": "YulIdentifier", - "src": "53315:6:32" + "src": "52891:6:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "53323:2:32" + "src": "52899:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "53311:3:32" + "src": "52887:3:32" }, "nodeType": "YulFunctionCall", - "src": "53311:15:32" + "src": "52887:15:32" }, "variableNames": [ { "name": "srcPtr", "nodeType": "YulIdentifier", - "src": "53301:6:32" + "src": "52877:6:32" } ] } @@ -40043,41 +39469,41 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "53178:1:32" + "src": "52754:1:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "53181:6:32" + "src": "52757:6:32" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "53175:2:32" + "src": "52751:2:32" }, "nodeType": "YulFunctionCall", - "src": "53175:13:32" + "src": "52751:13:32" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "53189:18:32", + "src": "52765:18:32", "statements": [ { "nodeType": "YulAssignment", - "src": "53191:14:32", + "src": "52767:14:32", "value": { "arguments": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "53200:1:32" + "src": "52776:1:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "53203:1:32", + "src": "52779:1:32", "type": "", "value": "1" } @@ -40085,16 +39511,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "53196:3:32" + "src": "52772:3:32" }, "nodeType": "YulFunctionCall", - "src": "53196:9:32" + "src": "52772:9:32" }, "variableNames": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "53191:1:32" + "src": "52767:1:32" } ] } @@ -40102,24 +39528,24 @@ }, "pre": { "nodeType": "YulBlock", - "src": "53171:3:32", + "src": "52747:3:32", "statements": [] }, - "src": "53167:169:32" + "src": "52743:169:32" }, { "nodeType": "YulAssignment", - "src": "53345:11:32", + "src": "52921:11:32", "value": { "name": "pos", "nodeType": "YulIdentifier", - "src": "53353:3:32" + "src": "52929:3:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "53345:4:32" + "src": "52921:4:32" } ] } @@ -40131,31 +39557,31 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "52694:9:32", + "src": "52270:9:32", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "52705:6:32", + "src": "52281:6:32", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "52713:6:32", + "src": "52289:6:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "52721:6:32", + "src": "52297:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "52729:6:32", + "src": "52305:6:32", "type": "" } ], @@ -40163,21 +39589,21 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "52740:4:32", + "src": "52316:4:32", "type": "" } ], - "src": "52514:848:32" + "src": "52090:848:32" }, { "body": { "nodeType": "YulBlock", - "src": "53447:103:32", + "src": "53023:103:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "53493:16:32", + "src": "53069:16:32", "statements": [ { "expression": { @@ -40185,14 +39611,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "53502:1:32", + "src": "53078:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "53505:1:32", + "src": "53081:1:32", "type": "", "value": "0" } @@ -40200,13 +39626,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "53495:6:32" + "src": "53071:6:32" }, "nodeType": "YulFunctionCall", - "src": "53495:12:32" + "src": "53071:12:32" }, "nodeType": "YulExpressionStatement", - "src": "53495:12:32" + "src": "53071:12:32" } ] }, @@ -40217,26 +39643,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "53468:7:32" + "src": "53044:7:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "53477:9:32" + "src": "53053:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "53464:3:32" + "src": "53040:3:32" }, "nodeType": "YulFunctionCall", - "src": "53464:23:32" + "src": "53040:23:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "53489:2:32", + "src": "53065:2:32", "type": "", "value": "32" } @@ -40244,38 +39670,38 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "53460:3:32" + "src": "53036:3:32" }, "nodeType": "YulFunctionCall", - "src": "53460:32:32" + "src": "53036:32:32" }, "nodeType": "YulIf", - "src": "53457:52:32" + "src": "53033:52:32" }, { "nodeType": "YulAssignment", - "src": "53518:26:32", + "src": "53094:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "53534:9:32" + "src": "53110:9:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "53528:5:32" + "src": "53104:5:32" }, "nodeType": "YulFunctionCall", - "src": "53528:16:32" + "src": "53104:16:32" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "53518:6:32" + "src": "53094:6:32" } ] } @@ -40287,13 +39713,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "53413:9:32", + "src": "52989:9:32", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "53424:7:32", + "src": "53000:7:32", "type": "" } ], @@ -40301,16 +39727,16 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "53436:6:32", + "src": "53012:6:32", "type": "" } ], - "src": "53367:183:32" + "src": "52943:183:32" }, { "body": { "nodeType": "YulBlock", - "src": "53729:155:32", + "src": "53305:155:32", "statements": [ { "expression": { @@ -40318,12 +39744,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "53746:9:32" + "src": "53322:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "53757:2:32", + "src": "53333:2:32", "type": "", "value": "32" } @@ -40331,13 +39757,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "53739:6:32" + "src": "53315:6:32" }, "nodeType": "YulFunctionCall", - "src": "53739:21:32" + "src": "53315:21:32" }, "nodeType": "YulExpressionStatement", - "src": "53739:21:32" + "src": "53315:21:32" }, { "expression": { @@ -40347,12 +39773,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "53780:9:32" + "src": "53356:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "53791:2:32", + "src": "53367:2:32", "type": "", "value": "32" } @@ -40360,15 +39786,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "53776:3:32" + "src": "53352:3:32" }, "nodeType": "YulFunctionCall", - "src": "53776:18:32" + "src": "53352:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "53796:1:32", + "src": "53372:1:32", "type": "", "value": "6" } @@ -40376,13 +39802,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "53769:6:32" + "src": "53345:6:32" }, "nodeType": "YulFunctionCall", - "src": "53769:29:32" + "src": "53345:29:32" }, "nodeType": "YulExpressionStatement", - "src": "53769:29:32" + "src": "53345:29:32" }, { "expression": { @@ -40392,12 +39818,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "53818:9:32" + "src": "53394:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "53829:2:32", + "src": "53405:2:32", "type": "", "value": "64" } @@ -40405,16 +39831,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "53814:3:32" + "src": "53390:3:32" }, "nodeType": "YulFunctionCall", - "src": "53814:18:32" + "src": "53390:18:32" }, { "hexValue": "4c4243303439", "kind": "string", "nodeType": "YulLiteral", - "src": "53834:8:32", + "src": "53410:8:32", "type": "", "value": "LBC049" } @@ -40422,28 +39848,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "53807:6:32" + "src": "53383:6:32" }, "nodeType": "YulFunctionCall", - "src": "53807:36:32" + "src": "53383:36:32" }, "nodeType": "YulExpressionStatement", - "src": "53807:36:32" + "src": "53383:36:32" }, { "nodeType": "YulAssignment", - "src": "53852:26:32", + "src": "53428:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "53864:9:32" + "src": "53440:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "53875:2:32", + "src": "53451:2:32", "type": "", "value": "96" } @@ -40451,16 +39877,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "53860:3:32" + "src": "53436:3:32" }, "nodeType": "YulFunctionCall", - "src": "53860:18:32" + "src": "53436:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "53852:4:32" + "src": "53428:4:32" } ] } @@ -40472,7 +39898,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "53706:9:32", + "src": "53282:9:32", "type": "" } ], @@ -40480,20 +39906,20 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "53720:4:32", + "src": "53296:4:32", "type": "" } ], - "src": "53555:329:32" + "src": "53131:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "53940:206:32", + "src": "53516:206:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "53950:28:32", + "src": "53526:28:32", "value": { "arguments": [ { @@ -40501,14 +39927,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "53968:2:32", + "src": "53544:2:32", "type": "", "value": "64" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "53972:1:32", + "src": "53548:1:32", "type": "", "value": "1" } @@ -40516,15 +39942,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "53964:3:32" + "src": "53540:3:32" }, "nodeType": "YulFunctionCall", - "src": "53964:10:32" + "src": "53540:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "53976:1:32", + "src": "53552:1:32", "type": "", "value": "1" } @@ -40532,23 +39958,23 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "53960:3:32" + "src": "53536:3:32" }, "nodeType": "YulFunctionCall", - "src": "53960:18:32" + "src": "53536:18:32" }, "variables": [ { "name": "_1", "nodeType": "YulTypedName", - "src": "53954:2:32", + "src": "53530:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "53987:46:32", + "src": "53563:46:32", "value": { "arguments": [ { @@ -40556,97 +39982,97 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "54014:1:32" + "src": "53590:1:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "54017:2:32" + "src": "53593:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "54010:3:32" + "src": "53586:3:32" }, "nodeType": "YulFunctionCall", - "src": "54010:10:32" + "src": "53586:10:32" }, { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "54026:1:32" + "src": "53602:1:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "54029:2:32" + "src": "53605:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "54022:3:32" + "src": "53598:3:32" }, "nodeType": "YulFunctionCall", - "src": "54022:10:32" + "src": "53598:10:32" } ], "functionName": { "name": "mul", "nodeType": "YulIdentifier", - "src": "54006:3:32" + "src": "53582:3:32" }, "nodeType": "YulFunctionCall", - "src": "54006:27:32" + "src": "53582:27:32" }, "variables": [ { "name": "product_raw", "nodeType": "YulTypedName", - "src": "53991:11:32", + "src": "53567:11:32", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "54042:31:32", + "src": "53618:31:32", "value": { "arguments": [ { "name": "product_raw", "nodeType": "YulIdentifier", - "src": "54057:11:32" + "src": "53633:11:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "54070:2:32" + "src": "53646:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "54053:3:32" + "src": "53629:3:32" }, "nodeType": "YulFunctionCall", - "src": "54053:20:32" + "src": "53629:20:32" }, "variableNames": [ { "name": "product", "nodeType": "YulIdentifier", - "src": "54042:7:32" + "src": "53618:7:32" } ] }, { "body": { "nodeType": "YulBlock", - "src": "54118:22:32", + "src": "53694:22:32", "statements": [ { "expression": { @@ -40654,13 +40080,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "54120:16:32" + "src": "53696:16:32" }, "nodeType": "YulFunctionCall", - "src": "54120:18:32" + "src": "53696:18:32" }, "nodeType": "YulExpressionStatement", - "src": "54120:18:32" + "src": "53696:18:32" } ] }, @@ -40671,33 +40097,33 @@ { "name": "product", "nodeType": "YulIdentifier", - "src": "54095:7:32" + "src": "53671:7:32" }, { "name": "product_raw", "nodeType": "YulIdentifier", - "src": "54104:11:32" + "src": "53680:11:32" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "54092:2:32" + "src": "53668:2:32" }, "nodeType": "YulFunctionCall", - "src": "54092:24:32" + "src": "53668:24:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "54085:6:32" + "src": "53661:6:32" }, "nodeType": "YulFunctionCall", - "src": "54085:32:32" + "src": "53661:32:32" }, "nodeType": "YulIf", - "src": "54082:58:32" + "src": "53658:58:32" } ] }, @@ -40707,13 +40133,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "53919:1:32", + "src": "53495:1:32", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "53922:1:32", + "src": "53498:1:32", "type": "" } ], @@ -40721,16 +40147,16 @@ { "name": "product", "nodeType": "YulTypedName", - "src": "53928:7:32", + "src": "53504:7:32", "type": "" } ], - "src": "53889:257:32" + "src": "53465:257:32" }, { "body": { "nodeType": "YulBlock", - "src": "54325:155:32", + "src": "53901:155:32", "statements": [ { "expression": { @@ -40738,12 +40164,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "54342:9:32" + "src": "53918:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "54353:2:32", + "src": "53929:2:32", "type": "", "value": "32" } @@ -40751,13 +40177,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "54335:6:32" + "src": "53911:6:32" }, "nodeType": "YulFunctionCall", - "src": "54335:21:32" + "src": "53911:21:32" }, "nodeType": "YulExpressionStatement", - "src": "54335:21:32" + "src": "53911:21:32" }, { "expression": { @@ -40767,12 +40193,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "54376:9:32" + "src": "53952:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "54387:2:32", + "src": "53963:2:32", "type": "", "value": "32" } @@ -40780,15 +40206,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "54372:3:32" + "src": "53948:3:32" }, "nodeType": "YulFunctionCall", - "src": "54372:18:32" + "src": "53948:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "54392:1:32", + "src": "53968:1:32", "type": "", "value": "6" } @@ -40796,13 +40222,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "54365:6:32" + "src": "53941:6:32" }, "nodeType": "YulFunctionCall", - "src": "54365:29:32" + "src": "53941:29:32" }, "nodeType": "YulExpressionStatement", - "src": "54365:29:32" + "src": "53941:29:32" }, { "expression": { @@ -40812,12 +40238,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "54414:9:32" + "src": "53990:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "54425:2:32", + "src": "54001:2:32", "type": "", "value": "64" } @@ -40825,16 +40251,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "54410:3:32" + "src": "53986:3:32" }, "nodeType": "YulFunctionCall", - "src": "54410:18:32" + "src": "53986:18:32" }, { "hexValue": "4c4243303637", "kind": "string", "nodeType": "YulLiteral", - "src": "54430:8:32", + "src": "54006:8:32", "type": "", "value": "LBC067" } @@ -40842,28 +40268,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "54403:6:32" + "src": "53979:6:32" }, "nodeType": "YulFunctionCall", - "src": "54403:36:32" + "src": "53979:36:32" }, "nodeType": "YulExpressionStatement", - "src": "54403:36:32" + "src": "53979:36:32" }, { "nodeType": "YulAssignment", - "src": "54448:26:32", + "src": "54024:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "54460:9:32" + "src": "54036:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "54471:2:32", + "src": "54047:2:32", "type": "", "value": "96" } @@ -40871,16 +40297,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "54456:3:32" + "src": "54032:3:32" }, "nodeType": "YulFunctionCall", - "src": "54456:18:32" + "src": "54032:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "54448:4:32" + "src": "54024:4:32" } ] } @@ -40892,7 +40318,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "54302:9:32", + "src": "53878:9:32", "type": "" } ], @@ -40900,16 +40326,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "54316:4:32", + "src": "53892:4:32", "type": "" } ], - "src": "54151:329:32" + "src": "53727:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "54634:158:32", + "src": "54210:158:32", "statements": [ { "expression": { @@ -40917,12 +40343,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "54651:9:32" + "src": "54227:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "54662:2:32", + "src": "54238:2:32", "type": "", "value": "64" } @@ -40930,35 +40356,35 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "54644:6:32" + "src": "54220:6:32" }, "nodeType": "YulFunctionCall", - "src": "54644:21:32" + "src": "54220:21:32" }, "nodeType": "YulExpressionStatement", - "src": "54644:21:32" + "src": "54220:21:32" }, { "nodeType": "YulAssignment", - "src": "54674:53:32", + "src": "54250:53:32", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "54700:6:32" + "src": "54276:6:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "54712:9:32" + "src": "54288:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "54723:2:32", + "src": "54299:2:32", "type": "", "value": "64" } @@ -40966,25 +40392,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "54708:3:32" + "src": "54284:3:32" }, "nodeType": "YulFunctionCall", - "src": "54708:18:32" + "src": "54284:18:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "54682:17:32" + "src": "54258:17:32" }, "nodeType": "YulFunctionCall", - "src": "54682:45:32" + "src": "54258:45:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "54674:4:32" + "src": "54250:4:32" } ] }, @@ -40996,12 +40422,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "54747:9:32" + "src": "54323:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "54758:2:32", + "src": "54334:2:32", "type": "", "value": "32" } @@ -41009,10 +40435,10 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "54743:3:32" + "src": "54319:3:32" }, "nodeType": "YulFunctionCall", - "src": "54743:18:32" + "src": "54319:18:32" }, { "arguments": [ @@ -41021,37 +40447,37 @@ { "name": "value1", "nodeType": "YulIdentifier", - "src": "54777:6:32" + "src": "54353:6:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "54770:6:32" + "src": "54346:6:32" }, "nodeType": "YulFunctionCall", - "src": "54770:14:32" + "src": "54346:14:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "54763:6:32" + "src": "54339:6:32" }, "nodeType": "YulFunctionCall", - "src": "54763:22:32" + "src": "54339:22:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "54736:6:32" + "src": "54312:6:32" }, "nodeType": "YulFunctionCall", - "src": "54736:50:32" + "src": "54312:50:32" }, "nodeType": "YulExpressionStatement", - "src": "54736:50:32" + "src": "54312:50:32" } ] }, @@ -41061,19 +40487,19 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "54595:9:32", + "src": "54171:9:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "54606:6:32", + "src": "54182:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "54614:6:32", + "src": "54190:6:32", "type": "" } ], @@ -41081,24 +40507,24 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "54625:4:32", + "src": "54201:4:32", "type": "" } ], - "src": "54485:307:32" + "src": "54061:307:32" }, { "body": { "nodeType": "YulBlock", - "src": "54931:706:32", + "src": "54507:706:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "54941:12:32", + "src": "54517:12:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "54952:1:32", + "src": "54528:1:32", "type": "", "value": "0" }, @@ -41106,74 +40532,74 @@ { "name": "ret", "nodeType": "YulTypedName", - "src": "54945:3:32", + "src": "54521:3:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "54962:30:32", + "src": "54538:30:32", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "54985:6:32" + "src": "54561:6:32" } ], "functionName": { "name": "sload", "nodeType": "YulIdentifier", - "src": "54979:5:32" + "src": "54555:5:32" }, "nodeType": "YulFunctionCall", - "src": "54979:13:32" + "src": "54555:13:32" }, "variables": [ { "name": "slotValue", "nodeType": "YulTypedName", - "src": "54966:9:32", + "src": "54542:9:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "55001:50:32", + "src": "54577:50:32", "value": { "arguments": [ { "name": "slotValue", "nodeType": "YulIdentifier", - "src": "55041:9:32" + "src": "54617:9:32" } ], "functionName": { "name": "extract_byte_array_length", "nodeType": "YulIdentifier", - "src": "55015:25:32" + "src": "54591:25:32" }, "nodeType": "YulFunctionCall", - "src": "55015:36:32" + "src": "54591:36:32" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "55005:6:32", + "src": "54581:6:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "55060:11:32", + "src": "54636:11:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "55070:1:32", + "src": "54646:1:32", "type": "", "value": "1" }, @@ -41181,7 +40607,7 @@ { "name": "_1", "nodeType": "YulTypedName", - "src": "55064:2:32", + "src": "54640:2:32", "type": "" } ] @@ -41191,7 +40617,7 @@ { "body": { "nodeType": "YulBlock", - "src": "55121:126:32", + "src": "54697:126:32", "statements": [ { "expression": { @@ -41199,21 +40625,21 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "55142:3:32" + "src": "54718:3:32" }, { "arguments": [ { "name": "slotValue", "nodeType": "YulIdentifier", - "src": "55151:9:32" + "src": "54727:9:32" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "55166:3:32", + "src": "54742:3:32", "type": "", "value": "255" } @@ -41221,48 +40647,48 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "55162:3:32" + "src": "54738:3:32" }, "nodeType": "YulFunctionCall", - "src": "55162:8:32" + "src": "54738:8:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "55147:3:32" + "src": "54723:3:32" }, "nodeType": "YulFunctionCall", - "src": "55147:24:32" + "src": "54723:24:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "55135:6:32" + "src": "54711:6:32" }, "nodeType": "YulFunctionCall", - "src": "55135:37:32" + "src": "54711:37:32" }, "nodeType": "YulExpressionStatement", - "src": "55135:37:32" + "src": "54711:37:32" }, { "nodeType": "YulAssignment", - "src": "55185:52:32", + "src": "54761:52:32", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "55196:3:32" + "src": "54772:3:32" }, { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "55205:6:32" + "src": "54781:6:32" }, { "arguments": [ @@ -41271,60 +40697,60 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "55227:6:32" + "src": "54803:6:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "55220:6:32" + "src": "54796:6:32" }, "nodeType": "YulFunctionCall", - "src": "55220:14:32" + "src": "54796:14:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "55213:6:32" + "src": "54789:6:32" }, "nodeType": "YulFunctionCall", - "src": "55213:22:32" + "src": "54789:22:32" } ], "functionName": { "name": "mul", "nodeType": "YulIdentifier", - "src": "55201:3:32" + "src": "54777:3:32" }, "nodeType": "YulFunctionCall", - "src": "55201:35:32" + "src": "54777:35:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "55192:3:32" + "src": "54768:3:32" }, "nodeType": "YulFunctionCall", - "src": "55192:45:32" + "src": "54768:45:32" }, "variableNames": [ { "name": "ret", "nodeType": "YulIdentifier", - "src": "55185:3:32" + "src": "54761:3:32" } ] } ] }, "nodeType": "YulCase", - "src": "55114:133:32", + "src": "54690:133:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "55119:1:32", + "src": "54695:1:32", "type": "", "value": "0" } @@ -41332,7 +40758,7 @@ { "body": { "nodeType": "YulBlock", - "src": "55263:349:32", + "src": "54839:349:32", "statements": [ { "expression": { @@ -41340,34 +40766,34 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "55284:1:32", + "src": "54860:1:32", "type": "", "value": "0" }, { "name": "value0", "nodeType": "YulIdentifier", - "src": "55287:6:32" + "src": "54863:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "55277:6:32" + "src": "54853:6:32" }, "nodeType": "YulFunctionCall", - "src": "55277:17:32" + "src": "54853:17:32" }, "nodeType": "YulExpressionStatement", - "src": "55277:17:32" + "src": "54853:17:32" }, { "nodeType": "YulVariableDeclaration", - "src": "55307:14:32", + "src": "54883:14:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "55317:4:32", + "src": "54893:4:32", "type": "", "value": "0x20" }, @@ -41375,53 +40801,53 @@ { "name": "_2", "nodeType": "YulTypedName", - "src": "55311:2:32", + "src": "54887:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "55334:31:32", + "src": "54910:31:32", "value": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "55359:1:32", + "src": "54935:1:32", "type": "", "value": "0" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "55362:2:32" + "src": "54938:2:32" } ], "functionName": { "name": "keccak256", "nodeType": "YulIdentifier", - "src": "55349:9:32" + "src": "54925:9:32" }, "nodeType": "YulFunctionCall", - "src": "55349:16:32" + "src": "54925:16:32" }, "variables": [ { "name": "dataPos", "nodeType": "YulTypedName", - "src": "55338:7:32", + "src": "54914:7:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "55378:10:32", + "src": "54954:10:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "55387:1:32", + "src": "54963:1:32", "type": "", "value": "0" }, @@ -41429,7 +40855,7 @@ { "name": "i", "nodeType": "YulTypedName", - "src": "55382:1:32", + "src": "54958:1:32", "type": "" } ] @@ -41437,7 +40863,7 @@ { "body": { "nodeType": "YulBlock", - "src": "55455:111:32", + "src": "55031:111:32", "statements": [ { "expression": { @@ -41447,79 +40873,79 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "55484:3:32" + "src": "55060:3:32" }, { "name": "i", "nodeType": "YulIdentifier", - "src": "55489:1:32" + "src": "55065:1:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "55480:3:32" + "src": "55056:3:32" }, "nodeType": "YulFunctionCall", - "src": "55480:11:32" + "src": "55056:11:32" }, { "arguments": [ { "name": "dataPos", "nodeType": "YulIdentifier", - "src": "55499:7:32" + "src": "55075:7:32" } ], "functionName": { "name": "sload", "nodeType": "YulIdentifier", - "src": "55493:5:32" + "src": "55069:5:32" }, "nodeType": "YulFunctionCall", - "src": "55493:14:32" + "src": "55069:14:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "55473:6:32" + "src": "55049:6:32" }, "nodeType": "YulFunctionCall", - "src": "55473:35:32" + "src": "55049:35:32" }, "nodeType": "YulExpressionStatement", - "src": "55473:35:32" + "src": "55049:35:32" }, { "nodeType": "YulAssignment", - "src": "55525:27:32", + "src": "55101:27:32", "value": { "arguments": [ { "name": "dataPos", "nodeType": "YulIdentifier", - "src": "55540:7:32" + "src": "55116:7:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "55549:2:32" + "src": "55125:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "55536:3:32" + "src": "55112:3:32" }, "nodeType": "YulFunctionCall", - "src": "55536:16:32" + "src": "55112:16:32" }, "variableNames": [ { "name": "dataPos", "nodeType": "YulIdentifier", - "src": "55525:7:32" + "src": "55101:7:32" } ] } @@ -41530,56 +40956,56 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "55412:1:32" + "src": "54988:1:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "55415:6:32" + "src": "54991:6:32" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "55409:2:32" + "src": "54985:2:32" }, "nodeType": "YulFunctionCall", - "src": "55409:13:32" + "src": "54985:13:32" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "55423:19:32", + "src": "54999:19:32", "statements": [ { "nodeType": "YulAssignment", - "src": "55425:15:32", + "src": "55001:15:32", "value": { "arguments": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "55434:1:32" + "src": "55010:1:32" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "55437:2:32" + "src": "55013:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "55430:3:32" + "src": "55006:3:32" }, "nodeType": "YulFunctionCall", - "src": "55430:10:32" + "src": "55006:10:32" }, "variableNames": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "55425:1:32" + "src": "55001:1:32" } ] } @@ -41587,51 +41013,51 @@ }, "pre": { "nodeType": "YulBlock", - "src": "55405:3:32", + "src": "54981:3:32", "statements": [] }, - "src": "55401:165:32" + "src": "54977:165:32" }, { "nodeType": "YulAssignment", - "src": "55579:23:32", + "src": "55155:23:32", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "55590:3:32" + "src": "55166:3:32" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "55595:6:32" + "src": "55171:6:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "55586:3:32" + "src": "55162:3:32" }, "nodeType": "YulFunctionCall", - "src": "55586:16:32" + "src": "55162:16:32" }, "variableNames": [ { "name": "ret", "nodeType": "YulIdentifier", - "src": "55579:3:32" + "src": "55155:3:32" } ] } ] }, "nodeType": "YulCase", - "src": "55256:356:32", + "src": "54832:356:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "55261:1:32", + "src": "54837:1:32", "type": "", "value": "1" } @@ -41642,38 +41068,38 @@ { "name": "slotValue", "nodeType": "YulIdentifier", - "src": "55091:9:32" + "src": "54667:9:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "55102:2:32" + "src": "54678:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "55087:3:32" + "src": "54663:3:32" }, "nodeType": "YulFunctionCall", - "src": "55087:18:32" + "src": "54663:18:32" }, "nodeType": "YulSwitch", - "src": "55080:532:32" + "src": "54656:532:32" }, { "nodeType": "YulAssignment", - "src": "55621:10:32", + "src": "55197:10:32", "value": { "name": "ret", "nodeType": "YulIdentifier", - "src": "55628:3:32" + "src": "55204:3:32" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "55621:3:32" + "src": "55197:3:32" } ] } @@ -41685,13 +41111,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "54907:3:32", + "src": "54483:3:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "54912:6:32", + "src": "54488:6:32", "type": "" } ], @@ -41699,16 +41125,16 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "54923:3:32", + "src": "54499:3:32", "type": "" } ], - "src": "54797:840:32" + "src": "54373:840:32" }, { "body": { "nodeType": "YulBlock", - "src": "55816:155:32", + "src": "55392:155:32", "statements": [ { "expression": { @@ -41716,12 +41142,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "55833:9:32" + "src": "55409:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "55844:2:32", + "src": "55420:2:32", "type": "", "value": "32" } @@ -41729,13 +41155,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "55826:6:32" + "src": "55402:6:32" }, "nodeType": "YulFunctionCall", - "src": "55826:21:32" + "src": "55402:21:32" }, "nodeType": "YulExpressionStatement", - "src": "55826:21:32" + "src": "55402:21:32" }, { "expression": { @@ -41745,12 +41171,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "55867:9:32" + "src": "55443:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "55878:2:32", + "src": "55454:2:32", "type": "", "value": "32" } @@ -41758,15 +41184,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "55863:3:32" + "src": "55439:3:32" }, "nodeType": "YulFunctionCall", - "src": "55863:18:32" + "src": "55439:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "55883:1:32", + "src": "55459:1:32", "type": "", "value": "6" } @@ -41774,13 +41200,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "55856:6:32" + "src": "55432:6:32" }, "nodeType": "YulFunctionCall", - "src": "55856:29:32" + "src": "55432:29:32" }, "nodeType": "YulExpressionStatement", - "src": "55856:29:32" + "src": "55432:29:32" }, { "expression": { @@ -41790,12 +41216,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "55905:9:32" + "src": "55481:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "55916:2:32", + "src": "55492:2:32", "type": "", "value": "64" } @@ -41803,16 +41229,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "55901:3:32" + "src": "55477:3:32" }, "nodeType": "YulFunctionCall", - "src": "55901:18:32" + "src": "55477:18:32" }, { "hexValue": "4c4243303638", "kind": "string", "nodeType": "YulLiteral", - "src": "55921:8:32", + "src": "55497:8:32", "type": "", "value": "LBC068" } @@ -41820,28 +41246,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "55894:6:32" + "src": "55470:6:32" }, "nodeType": "YulFunctionCall", - "src": "55894:36:32" + "src": "55470:36:32" }, "nodeType": "YulExpressionStatement", - "src": "55894:36:32" + "src": "55470:36:32" }, { "nodeType": "YulAssignment", - "src": "55939:26:32", + "src": "55515:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "55951:9:32" + "src": "55527:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "55962:2:32", + "src": "55538:2:32", "type": "", "value": "96" } @@ -41849,16 +41275,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "55947:3:32" + "src": "55523:3:32" }, "nodeType": "YulFunctionCall", - "src": "55947:18:32" + "src": "55523:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "55939:4:32" + "src": "55515:4:32" } ] } @@ -41870,7 +41296,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "55793:9:32", + "src": "55369:9:32", "type": "" } ], @@ -41878,16 +41304,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "55807:4:32", + "src": "55383:4:32", "type": "" } ], - "src": "55642:329:32" + "src": "55218:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "56150:155:32", + "src": "55726:155:32", "statements": [ { "expression": { @@ -41895,12 +41321,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "56167:9:32" + "src": "55743:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "56178:2:32", + "src": "55754:2:32", "type": "", "value": "32" } @@ -41908,13 +41334,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "56160:6:32" + "src": "55736:6:32" }, "nodeType": "YulFunctionCall", - "src": "56160:21:32" + "src": "55736:21:32" }, "nodeType": "YulExpressionStatement", - "src": "56160:21:32" + "src": "55736:21:32" }, { "expression": { @@ -41924,12 +41350,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "56201:9:32" + "src": "55777:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "56212:2:32", + "src": "55788:2:32", "type": "", "value": "32" } @@ -41937,15 +41363,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "56197:3:32" + "src": "55773:3:32" }, "nodeType": "YulFunctionCall", - "src": "56197:18:32" + "src": "55773:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "56217:1:32", + "src": "55793:1:32", "type": "", "value": "6" } @@ -41953,13 +41379,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "56190:6:32" + "src": "55766:6:32" }, "nodeType": "YulFunctionCall", - "src": "56190:29:32" + "src": "55766:29:32" }, "nodeType": "YulExpressionStatement", - "src": "56190:29:32" + "src": "55766:29:32" }, { "expression": { @@ -41969,12 +41395,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "56239:9:32" + "src": "55815:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "56250:2:32", + "src": "55826:2:32", "type": "", "value": "64" } @@ -41982,16 +41408,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "56235:3:32" + "src": "55811:3:32" }, "nodeType": "YulFunctionCall", - "src": "56235:18:32" + "src": "55811:18:32" }, { "hexValue": "4c4243303530", "kind": "string", "nodeType": "YulLiteral", - "src": "56255:8:32", + "src": "55831:8:32", "type": "", "value": "LBC050" } @@ -41999,28 +41425,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "56228:6:32" + "src": "55804:6:32" }, "nodeType": "YulFunctionCall", - "src": "56228:36:32" + "src": "55804:36:32" }, "nodeType": "YulExpressionStatement", - "src": "56228:36:32" + "src": "55804:36:32" }, { "nodeType": "YulAssignment", - "src": "56273:26:32", + "src": "55849:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "56285:9:32" + "src": "55861:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "56296:2:32", + "src": "55872:2:32", "type": "", "value": "96" } @@ -42028,16 +41454,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "56281:3:32" + "src": "55857:3:32" }, "nodeType": "YulFunctionCall", - "src": "56281:18:32" + "src": "55857:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "56273:4:32" + "src": "55849:4:32" } ] } @@ -42049,7 +41475,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "56127:9:32", + "src": "55703:9:32", "type": "" } ], @@ -42057,16 +41483,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "56141:4:32", + "src": "55717:4:32", "type": "" } ], - "src": "55976:329:32" + "src": "55552:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "56484:228:32", + "src": "56060:228:32", "statements": [ { "expression": { @@ -42074,12 +41500,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "56501:9:32" + "src": "56077:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "56512:2:32", + "src": "56088:2:32", "type": "", "value": "32" } @@ -42087,13 +41513,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "56494:6:32" + "src": "56070:6:32" }, "nodeType": "YulFunctionCall", - "src": "56494:21:32" + "src": "56070:21:32" }, "nodeType": "YulExpressionStatement", - "src": "56494:21:32" + "src": "56070:21:32" }, { "expression": { @@ -42103,12 +41529,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "56535:9:32" + "src": "56111:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "56546:2:32", + "src": "56122:2:32", "type": "", "value": "32" } @@ -42116,15 +41542,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "56531:3:32" + "src": "56107:3:32" }, "nodeType": "YulFunctionCall", - "src": "56531:18:32" + "src": "56107:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "56551:2:32", + "src": "56127:2:32", "type": "", "value": "38" } @@ -42132,13 +41558,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "56524:6:32" + "src": "56100:6:32" }, "nodeType": "YulFunctionCall", - "src": "56524:30:32" + "src": "56100:30:32" }, "nodeType": "YulExpressionStatement", - "src": "56524:30:32" + "src": "56100:30:32" }, { "expression": { @@ -42148,12 +41574,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "56574:9:32" + "src": "56150:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "56585:2:32", + "src": "56161:2:32", "type": "", "value": "64" } @@ -42161,16 +41587,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "56570:3:32" + "src": "56146:3:32" }, "nodeType": "YulFunctionCall", - "src": "56570:18:32" + "src": "56146:18:32" }, { "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061", "kind": "string", "nodeType": "YulLiteral", - "src": "56590:34:32", + "src": "56166:34:32", "type": "", "value": "Ownable: new owner is the zero a" } @@ -42178,13 +41604,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "56563:6:32" + "src": "56139:6:32" }, "nodeType": "YulFunctionCall", - "src": "56563:62:32" + "src": "56139:62:32" }, "nodeType": "YulExpressionStatement", - "src": "56563:62:32" + "src": "56139:62:32" }, { "expression": { @@ -42194,12 +41620,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "56645:9:32" + "src": "56221:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "56656:2:32", + "src": "56232:2:32", "type": "", "value": "96" } @@ -42207,16 +41633,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "56641:3:32" + "src": "56217:3:32" }, "nodeType": "YulFunctionCall", - "src": "56641:18:32" + "src": "56217:18:32" }, { "hexValue": "646472657373", "kind": "string", "nodeType": "YulLiteral", - "src": "56661:8:32", + "src": "56237:8:32", "type": "", "value": "ddress" } @@ -42224,28 +41650,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "56634:6:32" + "src": "56210:6:32" }, "nodeType": "YulFunctionCall", - "src": "56634:36:32" + "src": "56210:36:32" }, "nodeType": "YulExpressionStatement", - "src": "56634:36:32" + "src": "56210:36:32" }, { "nodeType": "YulAssignment", - "src": "56679:27:32", + "src": "56255:27:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "56691:9:32" + "src": "56267:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "56702:3:32", + "src": "56278:3:32", "type": "", "value": "128" } @@ -42253,16 +41679,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "56687:3:32" + "src": "56263:3:32" }, "nodeType": "YulFunctionCall", - "src": "56687:19:32" + "src": "56263:19:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "56679:4:32" + "src": "56255:4:32" } ] } @@ -42274,7 +41700,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "56461:9:32", + "src": "56037:9:32", "type": "" } ], @@ -42282,16 +41708,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "56475:4:32", + "src": "56051:4:32", "type": "" } ], - "src": "56310:402:32" + "src": "55886:402:32" }, { "body": { "nodeType": "YulBlock", - "src": "56891:155:32", + "src": "56467:155:32", "statements": [ { "expression": { @@ -42299,12 +41725,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "56908:9:32" + "src": "56484:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "56919:2:32", + "src": "56495:2:32", "type": "", "value": "32" } @@ -42312,13 +41738,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "56901:6:32" + "src": "56477:6:32" }, "nodeType": "YulFunctionCall", - "src": "56901:21:32" + "src": "56477:21:32" }, "nodeType": "YulExpressionStatement", - "src": "56901:21:32" + "src": "56477:21:32" }, { "expression": { @@ -42328,12 +41754,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "56942:9:32" + "src": "56518:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "56953:2:32", + "src": "56529:2:32", "type": "", "value": "32" } @@ -42341,15 +41767,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "56938:3:32" + "src": "56514:3:32" }, "nodeType": "YulFunctionCall", - "src": "56938:18:32" + "src": "56514:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "56958:1:32", + "src": "56534:1:32", "type": "", "value": "6" } @@ -42357,13 +41783,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "56931:6:32" + "src": "56507:6:32" }, "nodeType": "YulFunctionCall", - "src": "56931:29:32" + "src": "56507:29:32" }, "nodeType": "YulExpressionStatement", - "src": "56931:29:32" + "src": "56507:29:32" }, { "expression": { @@ -42373,12 +41799,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "56980:9:32" + "src": "56556:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "56991:2:32", + "src": "56567:2:32", "type": "", "value": "64" } @@ -42386,16 +41812,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "56976:3:32" + "src": "56552:3:32" }, "nodeType": "YulFunctionCall", - "src": "56976:18:32" + "src": "56552:18:32" }, { "hexValue": "4c4243303536", "kind": "string", "nodeType": "YulLiteral", - "src": "56996:8:32", + "src": "56572:8:32", "type": "", "value": "LBC056" } @@ -42403,28 +41829,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "56969:6:32" + "src": "56545:6:32" }, "nodeType": "YulFunctionCall", - "src": "56969:36:32" + "src": "56545:36:32" }, "nodeType": "YulExpressionStatement", - "src": "56969:36:32" + "src": "56545:36:32" }, { "nodeType": "YulAssignment", - "src": "57014:26:32", + "src": "56590:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "57026:9:32" + "src": "56602:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "57037:2:32", + "src": "56613:2:32", "type": "", "value": "96" } @@ -42432,16 +41858,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "57022:3:32" + "src": "56598:3:32" }, "nodeType": "YulFunctionCall", - "src": "57022:18:32" + "src": "56598:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "57014:4:32" + "src": "56590:4:32" } ] } @@ -42453,7 +41879,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "56868:9:32", + "src": "56444:9:32", "type": "" } ], @@ -42461,16 +41887,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "56882:4:32", + "src": "56458:4:32", "type": "" } ], - "src": "56717:329:32" + "src": "56293:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "57220:2469:32", + "src": "56796:2469:32", "statements": [ { "expression": { @@ -42478,12 +41904,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "57237:9:32" + "src": "56813:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "57248:2:32", + "src": "56824:2:32", "type": "", "value": "32" } @@ -42491,13 +41917,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "57230:6:32" + "src": "56806:6:32" }, "nodeType": "YulFunctionCall", - "src": "57230:21:32" + "src": "56806:21:32" }, "nodeType": "YulExpressionStatement", - "src": "57230:21:32" + "src": "56806:21:32" }, { "expression": { @@ -42507,28 +41933,28 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "57285:6:32" + "src": "56861:6:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "57279:5:32" + "src": "56855:5:32" }, "nodeType": "YulFunctionCall", - "src": "57279:13:32" + "src": "56855:13:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "57298:9:32" + "src": "56874:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "57309:2:32", + "src": "56885:2:32", "type": "", "value": "32" } @@ -42536,26 +41962,26 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "57294:3:32" + "src": "56870:3:32" }, "nodeType": "YulFunctionCall", - "src": "57294:18:32" + "src": "56870:18:32" } ], "functionName": { "name": "abi_encode_address", "nodeType": "YulIdentifier", - "src": "57260:18:32" + "src": "56836:18:32" }, "nodeType": "YulFunctionCall", - "src": "57260:53:32" + "src": "56836:53:32" }, "nodeType": "YulExpressionStatement", - "src": "57260:53:32" + "src": "56836:53:32" }, { "nodeType": "YulVariableDeclaration", - "src": "57322:42:32", + "src": "56898:42:32", "value": { "arguments": [ { @@ -42563,12 +41989,12 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "57352:6:32" + "src": "56928:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "57360:2:32", + "src": "56936:2:32", "type": "", "value": "32" } @@ -42576,25 +42002,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "57348:3:32" + "src": "56924:3:32" }, "nodeType": "YulFunctionCall", - "src": "57348:15:32" + "src": "56924:15:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "57342:5:32" + "src": "56918:5:32" }, "nodeType": "YulFunctionCall", - "src": "57342:22:32" + "src": "56918:22:32" }, "variables": [ { "name": "memberValue0", "nodeType": "YulTypedName", - "src": "57326:12:32", + "src": "56902:12:32", "type": "" } ] @@ -42605,19 +42031,19 @@ { "name": "memberValue0", "nodeType": "YulIdentifier", - "src": "57392:12:32" + "src": "56968:12:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "57410:9:32" + "src": "56986:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "57421:2:32", + "src": "56997:2:32", "type": "", "value": "64" } @@ -42625,26 +42051,26 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "57406:3:32" + "src": "56982:3:32" }, "nodeType": "YulFunctionCall", - "src": "57406:18:32" + "src": "56982:18:32" } ], "functionName": { "name": "abi_encode_address", "nodeType": "YulIdentifier", - "src": "57373:18:32" + "src": "56949:18:32" }, "nodeType": "YulFunctionCall", - "src": "57373:52:32" + "src": "56949:52:32" }, "nodeType": "YulExpressionStatement", - "src": "57373:52:32" + "src": "56949:52:32" }, { "nodeType": "YulVariableDeclaration", - "src": "57434:44:32", + "src": "57010:44:32", "value": { "arguments": [ { @@ -42652,12 +42078,12 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "57466:6:32" + "src": "57042:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "57474:2:32", + "src": "57050:2:32", "type": "", "value": "64" } @@ -42665,36 +42091,36 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "57462:3:32" + "src": "57038:3:32" }, "nodeType": "YulFunctionCall", - "src": "57462:15:32" + "src": "57038:15:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "57456:5:32" + "src": "57032:5:32" }, "nodeType": "YulFunctionCall", - "src": "57456:22:32" + "src": "57032:22:32" }, "variables": [ { "name": "memberValue0_1", "nodeType": "YulTypedName", - "src": "57438:14:32", + "src": "57014:14:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "57487:16:32", + "src": "57063:16:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "57497:6:32", + "src": "57073:6:32", "type": "", "value": "0x0260" }, @@ -42702,7 +42128,7 @@ { "name": "_1", "nodeType": "YulTypedName", - "src": "57491:2:32", + "src": "57067:2:32", "type": "" } ] @@ -42715,12 +42141,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "57523:9:32" + "src": "57099:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "57534:2:32", + "src": "57110:2:32", "type": "", "value": "96" } @@ -42728,49 +42154,49 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "57519:3:32" + "src": "57095:3:32" }, "nodeType": "YulFunctionCall", - "src": "57519:18:32" + "src": "57095:18:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "57539:2:32" + "src": "57115:2:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "57512:6:32" + "src": "57088:6:32" }, "nodeType": "YulFunctionCall", - "src": "57512:30:32" + "src": "57088:30:32" }, "nodeType": "YulExpressionStatement", - "src": "57512:30:32" + "src": "57088:30:32" }, { "nodeType": "YulVariableDeclaration", - "src": "57551:68:32", + "src": "57127:68:32", "value": { "arguments": [ { "name": "memberValue0_1", "nodeType": "YulIdentifier", - "src": "57583:14:32" + "src": "57159:14:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "57603:9:32" + "src": "57179:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "57614:3:32", + "src": "57190:3:32", "type": "", "value": "640" } @@ -42778,32 +42204,32 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "57599:3:32" + "src": "57175:3:32" }, "nodeType": "YulFunctionCall", - "src": "57599:19:32" + "src": "57175:19:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "57565:17:32" + "src": "57141:17:32" }, "nodeType": "YulFunctionCall", - "src": "57565:54:32" + "src": "57141:54:32" }, "variables": [ { "name": "tail_1", "nodeType": "YulTypedName", - "src": "57555:6:32", + "src": "57131:6:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "57628:44:32", + "src": "57204:44:32", "value": { "arguments": [ { @@ -42811,12 +42237,12 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "57660:6:32" + "src": "57236:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "57668:2:32", + "src": "57244:2:32", "type": "", "value": "96" } @@ -42824,25 +42250,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "57656:3:32" + "src": "57232:3:32" }, "nodeType": "YulFunctionCall", - "src": "57656:15:32" + "src": "57232:15:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "57650:5:32" + "src": "57226:5:32" }, "nodeType": "YulFunctionCall", - "src": "57650:22:32" + "src": "57226:22:32" }, "variables": [ { "name": "memberValue0_2", "nodeType": "YulTypedName", - "src": "57632:14:32", + "src": "57208:14:32", "type": "" } ] @@ -42853,19 +42279,19 @@ { "name": "memberValue0_2", "nodeType": "YulIdentifier", - "src": "57700:14:32" + "src": "57276:14:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "57720:9:32" + "src": "57296:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "57731:3:32", + "src": "57307:3:32", "type": "", "value": "128" } @@ -42873,26 +42299,26 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "57716:3:32" + "src": "57292:3:32" }, "nodeType": "YulFunctionCall", - "src": "57716:19:32" + "src": "57292:19:32" } ], "functionName": { "name": "abi_encode_address", "nodeType": "YulIdentifier", - "src": "57681:18:32" + "src": "57257:18:32" }, "nodeType": "YulFunctionCall", - "src": "57681:55:32" + "src": "57257:55:32" }, "nodeType": "YulExpressionStatement", - "src": "57681:55:32" + "src": "57257:55:32" }, { "nodeType": "YulVariableDeclaration", - "src": "57745:45:32", + "src": "57321:45:32", "value": { "arguments": [ { @@ -42900,12 +42326,12 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "57777:6:32" + "src": "57353:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "57785:3:32", + "src": "57361:3:32", "type": "", "value": "128" } @@ -42913,38 +42339,38 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "57773:3:32" + "src": "57349:3:32" }, "nodeType": "YulFunctionCall", - "src": "57773:16:32" + "src": "57349:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "57767:5:32" + "src": "57343:5:32" }, "nodeType": "YulFunctionCall", - "src": "57767:23:32" + "src": "57343:23:32" }, "variables": [ { "name": "memberValue0_3", "nodeType": "YulTypedName", - "src": "57749:14:32", + "src": "57325:14:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "57799:17:32", + "src": "57375:17:32", "value": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "57813:2:32", + "src": "57389:2:32", "type": "", "value": "31" } @@ -42952,16 +42378,16 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "57809:3:32" + "src": "57385:3:32" }, "nodeType": "YulFunctionCall", - "src": "57809:7:32" + "src": "57385:7:32" }, "variables": [ { "name": "_2", "nodeType": "YulTypedName", - "src": "57803:2:32", + "src": "57379:2:32", "type": "" } ] @@ -42974,12 +42400,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "57836:9:32" + "src": "57412:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "57847:3:32", + "src": "57423:3:32", "type": "", "value": "160" } @@ -42987,10 +42413,10 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "57832:3:32" + "src": "57408:3:32" }, "nodeType": "YulFunctionCall", - "src": "57832:19:32" + "src": "57408:19:32" }, { "arguments": [ @@ -42999,77 +42425,77 @@ { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "57861:6:32" + "src": "57437:6:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "57869:9:32" + "src": "57445:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "57857:3:32" + "src": "57433:3:32" }, "nodeType": "YulFunctionCall", - "src": "57857:22:32" + "src": "57433:22:32" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "57881:2:32" + "src": "57457:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "57853:3:32" + "src": "57429:3:32" }, "nodeType": "YulFunctionCall", - "src": "57853:31:32" + "src": "57429:31:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "57825:6:32" + "src": "57401:6:32" }, "nodeType": "YulFunctionCall", - "src": "57825:60:32" + "src": "57401:60:32" }, "nodeType": "YulExpressionStatement", - "src": "57825:60:32" + "src": "57401:60:32" }, { "nodeType": "YulVariableDeclaration", - "src": "57894:55:32", + "src": "57470:55:32", "value": { "arguments": [ { "name": "memberValue0_3", "nodeType": "YulIdentifier", - "src": "57926:14:32" + "src": "57502:14:32" }, { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "57942:6:32" + "src": "57518:6:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "57908:17:32" + "src": "57484:17:32" }, "nodeType": "YulFunctionCall", - "src": "57908:41:32" + "src": "57484:41:32" }, "variables": [ { "name": "tail_2", "nodeType": "YulTypedName", - "src": "57898:6:32", + "src": "57474:6:32", "type": "" } ] @@ -43082,12 +42508,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "57969:9:32" + "src": "57545:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "57980:3:32", + "src": "57556:3:32", "type": "", "value": "192" } @@ -43095,10 +42521,10 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "57965:3:32" + "src": "57541:3:32" }, "nodeType": "YulFunctionCall", - "src": "57965:19:32" + "src": "57541:19:32" }, { "arguments": [ @@ -43107,12 +42533,12 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "57996:6:32" + "src": "57572:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "58004:3:32", + "src": "57580:3:32", "type": "", "value": "160" } @@ -43120,31 +42546,31 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "57992:3:32" + "src": "57568:3:32" }, "nodeType": "YulFunctionCall", - "src": "57992:16:32" + "src": "57568:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "57986:5:32" + "src": "57562:5:32" }, "nodeType": "YulFunctionCall", - "src": "57986:23:32" + "src": "57562:23:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "57958:6:32" + "src": "57534:6:32" }, "nodeType": "YulFunctionCall", - "src": "57958:52:32" + "src": "57534:52:32" }, "nodeType": "YulExpressionStatement", - "src": "57958:52:32" + "src": "57534:52:32" }, { "expression": { @@ -43154,12 +42580,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "58030:9:32" + "src": "57606:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "58041:3:32", + "src": "57617:3:32", "type": "", "value": "224" } @@ -43167,10 +42593,10 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58026:3:32" + "src": "57602:3:32" }, "nodeType": "YulFunctionCall", - "src": "58026:19:32" + "src": "57602:19:32" }, { "arguments": [ @@ -43179,12 +42605,12 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "58057:6:32" + "src": "57633:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "58065:3:32", + "src": "57641:3:32", "type": "", "value": "192" } @@ -43192,35 +42618,35 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58053:3:32" + "src": "57629:3:32" }, "nodeType": "YulFunctionCall", - "src": "58053:16:32" + "src": "57629:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "58047:5:32" + "src": "57623:5:32" }, "nodeType": "YulFunctionCall", - "src": "58047:23:32" + "src": "57623:23:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "58019:6:32" + "src": "57595:6:32" }, "nodeType": "YulFunctionCall", - "src": "58019:52:32" + "src": "57595:52:32" }, "nodeType": "YulExpressionStatement", - "src": "58019:52:32" + "src": "57595:52:32" }, { "nodeType": "YulVariableDeclaration", - "src": "58080:45:32", + "src": "57656:45:32", "value": { "arguments": [ { @@ -43228,12 +42654,12 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "58112:6:32" + "src": "57688:6:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "58120:3:32", + "src": "57696:3:32", "type": "", "value": "224" } @@ -43241,36 +42667,36 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58108:3:32" + "src": "57684:3:32" }, "nodeType": "YulFunctionCall", - "src": "58108:16:32" + "src": "57684:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "58102:5:32" + "src": "57678:5:32" }, "nodeType": "YulFunctionCall", - "src": "58102:23:32" + "src": "57678:23:32" }, "variables": [ { "name": "memberValue0_4", "nodeType": "YulTypedName", - "src": "58084:14:32", + "src": "57660:14:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "58134:13:32", + "src": "57710:13:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "58144:3:32", + "src": "57720:3:32", "type": "", "value": "256" }, @@ -43278,7 +42704,7 @@ { "name": "_3", "nodeType": "YulTypedName", - "src": "58138:2:32", + "src": "57714:2:32", "type": "" } ] @@ -43289,44 +42715,44 @@ { "name": "memberValue0_4", "nodeType": "YulIdentifier", - "src": "58173:14:32" + "src": "57749:14:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "58193:9:32" + "src": "57769:9:32" }, { "name": "_3", "nodeType": "YulIdentifier", - "src": "58204:2:32" + "src": "57780:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58189:3:32" + "src": "57765:3:32" }, "nodeType": "YulFunctionCall", - "src": "58189:18:32" + "src": "57765:18:32" } ], "functionName": { "name": "abi_encode_int64", "nodeType": "YulIdentifier", - "src": "58156:16:32" + "src": "57732:16:32" }, "nodeType": "YulFunctionCall", - "src": "58156:52:32" + "src": "57732:52:32" }, "nodeType": "YulExpressionStatement", - "src": "58156:52:32" + "src": "57732:52:32" }, { "nodeType": "YulVariableDeclaration", - "src": "58217:44:32", + "src": "57793:44:32", "value": { "arguments": [ { @@ -43334,47 +42760,47 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "58249:6:32" + "src": "57825:6:32" }, { "name": "_3", "nodeType": "YulIdentifier", - "src": "58257:2:32" + "src": "57833:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58245:3:32" + "src": "57821:3:32" }, "nodeType": "YulFunctionCall", - "src": "58245:15:32" + "src": "57821:15:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "58239:5:32" + "src": "57815:5:32" }, "nodeType": "YulFunctionCall", - "src": "58239:22:32" + "src": "57815:22:32" }, "variables": [ { "name": "memberValue0_5", "nodeType": "YulTypedName", - "src": "58221:14:32", + "src": "57797:14:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "58270:13:32", + "src": "57846:13:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "58280:3:32", + "src": "57856:3:32", "type": "", "value": "288" }, @@ -43382,7 +42808,7 @@ { "name": "_4", "nodeType": "YulTypedName", - "src": "58274:2:32", + "src": "57850:2:32", "type": "" } ] @@ -43395,21 +42821,21 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "58303:9:32" + "src": "57879:9:32" }, { "name": "_4", "nodeType": "YulIdentifier", - "src": "58314:2:32" + "src": "57890:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58299:3:32" + "src": "57875:3:32" }, "nodeType": "YulFunctionCall", - "src": "58299:18:32" + "src": "57875:18:32" }, { "arguments": [ @@ -43418,84 +42844,84 @@ { "name": "tail_2", "nodeType": "YulIdentifier", - "src": "58327:6:32" + "src": "57903:6:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "58335:9:32" + "src": "57911:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "58323:3:32" + "src": "57899:3:32" }, "nodeType": "YulFunctionCall", - "src": "58323:22:32" + "src": "57899:22:32" }, { "name": "_2", "nodeType": "YulIdentifier", - "src": "58347:2:32" + "src": "57923:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58319:3:32" + "src": "57895:3:32" }, "nodeType": "YulFunctionCall", - "src": "58319:31:32" + "src": "57895:31:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "58292:6:32" + "src": "57868:6:32" }, "nodeType": "YulFunctionCall", - "src": "58292:59:32" + "src": "57868:59:32" }, "nodeType": "YulExpressionStatement", - "src": "58292:59:32" + "src": "57868:59:32" }, { "nodeType": "YulVariableDeclaration", - "src": "58360:55:32", + "src": "57936:55:32", "value": { "arguments": [ { "name": "memberValue0_5", "nodeType": "YulIdentifier", - "src": "58392:14:32" + "src": "57968:14:32" }, { "name": "tail_2", "nodeType": "YulIdentifier", - "src": "58408:6:32" + "src": "57984:6:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "58374:17:32" + "src": "57950:17:32" }, "nodeType": "YulFunctionCall", - "src": "58374:41:32" + "src": "57950:41:32" }, "variables": [ { "name": "tail_3", "nodeType": "YulTypedName", - "src": "58364:6:32", + "src": "57940:6:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "58424:32:32", + "src": "58000:32:32", "value": { "arguments": [ { @@ -43503,47 +42929,47 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "58444:6:32" + "src": "58020:6:32" }, { "name": "_4", "nodeType": "YulIdentifier", - "src": "58452:2:32" + "src": "58028:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58440:3:32" + "src": "58016:3:32" }, "nodeType": "YulFunctionCall", - "src": "58440:15:32" + "src": "58016:15:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "58434:5:32" + "src": "58010:5:32" }, "nodeType": "YulFunctionCall", - "src": "58434:22:32" + "src": "58010:22:32" }, "variables": [ { "name": "_5", "nodeType": "YulTypedName", - "src": "58428:2:32", + "src": "58004:2:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "58465:13:32", + "src": "58041:13:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "58475:3:32", + "src": "58051:3:32", "type": "", "value": "320" }, @@ -43551,7 +42977,7 @@ { "name": "_6", "nodeType": "YulTypedName", - "src": "58469:2:32", + "src": "58045:2:32", "type": "" } ] @@ -43564,42 +42990,42 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "58498:9:32" + "src": "58074:9:32" }, { "name": "_6", "nodeType": "YulIdentifier", - "src": "58509:2:32" + "src": "58085:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58494:3:32" + "src": "58070:3:32" }, "nodeType": "YulFunctionCall", - "src": "58494:18:32" + "src": "58070:18:32" }, { "name": "_5", "nodeType": "YulIdentifier", - "src": "58514:2:32" + "src": "58090:2:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "58487:6:32" + "src": "58063:6:32" }, "nodeType": "YulFunctionCall", - "src": "58487:30:32" + "src": "58063:30:32" }, "nodeType": "YulExpressionStatement", - "src": "58487:30:32" + "src": "58063:30:32" }, { "nodeType": "YulVariableDeclaration", - "src": "58526:44:32", + "src": "58102:44:32", "value": { "arguments": [ { @@ -43607,47 +43033,47 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "58558:6:32" + "src": "58134:6:32" }, { "name": "_6", "nodeType": "YulIdentifier", - "src": "58566:2:32" + "src": "58142:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58554:3:32" + "src": "58130:3:32" }, "nodeType": "YulFunctionCall", - "src": "58554:15:32" + "src": "58130:15:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "58548:5:32" + "src": "58124:5:32" }, "nodeType": "YulFunctionCall", - "src": "58548:22:32" + "src": "58124:22:32" }, "variables": [ { "name": "memberValue0_6", "nodeType": "YulTypedName", - "src": "58530:14:32", + "src": "58106:14:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "58579:13:32", + "src": "58155:13:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "58589:3:32", + "src": "58165:3:32", "type": "", "value": "352" }, @@ -43655,7 +43081,7 @@ { "name": "_7", "nodeType": "YulTypedName", - "src": "58583:2:32", + "src": "58159:2:32", "type": "" } ] @@ -43666,44 +43092,44 @@ { "name": "memberValue0_6", "nodeType": "YulIdentifier", - "src": "58619:14:32" + "src": "58195:14:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "58639:9:32" + "src": "58215:9:32" }, { "name": "_7", "nodeType": "YulIdentifier", - "src": "58650:2:32" + "src": "58226:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58635:3:32" + "src": "58211:3:32" }, "nodeType": "YulFunctionCall", - "src": "58635:18:32" + "src": "58211:18:32" } ], "functionName": { "name": "abi_encode_uint32", "nodeType": "YulIdentifier", - "src": "58601:17:32" + "src": "58177:17:32" }, "nodeType": "YulFunctionCall", - "src": "58601:53:32" + "src": "58177:53:32" }, "nodeType": "YulExpressionStatement", - "src": "58601:53:32" + "src": "58177:53:32" }, { "nodeType": "YulVariableDeclaration", - "src": "58663:44:32", + "src": "58239:44:32", "value": { "arguments": [ { @@ -43711,47 +43137,47 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "58695:6:32" + "src": "58271:6:32" }, { "name": "_7", "nodeType": "YulIdentifier", - "src": "58703:2:32" + "src": "58279:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58691:3:32" + "src": "58267:3:32" }, "nodeType": "YulFunctionCall", - "src": "58691:15:32" + "src": "58267:15:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "58685:5:32" + "src": "58261:5:32" }, "nodeType": "YulFunctionCall", - "src": "58685:22:32" + "src": "58261:22:32" }, "variables": [ { "name": "memberValue0_7", "nodeType": "YulTypedName", - "src": "58667:14:32", + "src": "58243:14:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "58716:13:32", + "src": "58292:13:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "58726:3:32", + "src": "58302:3:32", "type": "", "value": "384" }, @@ -43759,7 +43185,7 @@ { "name": "_8", "nodeType": "YulTypedName", - "src": "58720:2:32", + "src": "58296:2:32", "type": "" } ] @@ -43770,44 +43196,44 @@ { "name": "memberValue0_7", "nodeType": "YulIdentifier", - "src": "58756:14:32" + "src": "58332:14:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "58776:9:32" + "src": "58352:9:32" }, { "name": "_8", "nodeType": "YulIdentifier", - "src": "58787:2:32" + "src": "58363:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58772:3:32" + "src": "58348:3:32" }, "nodeType": "YulFunctionCall", - "src": "58772:18:32" + "src": "58348:18:32" } ], "functionName": { "name": "abi_encode_uint32", "nodeType": "YulIdentifier", - "src": "58738:17:32" + "src": "58314:17:32" }, "nodeType": "YulFunctionCall", - "src": "58738:53:32" + "src": "58314:53:32" }, "nodeType": "YulExpressionStatement", - "src": "58738:53:32" + "src": "58314:53:32" }, { "nodeType": "YulVariableDeclaration", - "src": "58800:44:32", + "src": "58376:44:32", "value": { "arguments": [ { @@ -43815,47 +43241,47 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "58832:6:32" + "src": "58408:6:32" }, { "name": "_8", "nodeType": "YulIdentifier", - "src": "58840:2:32" + "src": "58416:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58828:3:32" + "src": "58404:3:32" }, "nodeType": "YulFunctionCall", - "src": "58828:15:32" + "src": "58404:15:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "58822:5:32" + "src": "58398:5:32" }, "nodeType": "YulFunctionCall", - "src": "58822:22:32" + "src": "58398:22:32" }, "variables": [ { "name": "memberValue0_8", "nodeType": "YulTypedName", - "src": "58804:14:32", + "src": "58380:14:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "58853:13:32", + "src": "58429:13:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "58863:3:32", + "src": "58439:3:32", "type": "", "value": "416" }, @@ -43863,7 +43289,7 @@ { "name": "_9", "nodeType": "YulTypedName", - "src": "58857:2:32", + "src": "58433:2:32", "type": "" } ] @@ -43874,44 +43300,44 @@ { "name": "memberValue0_8", "nodeType": "YulIdentifier", - "src": "58893:14:32" + "src": "58469:14:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "58913:9:32" + "src": "58489:9:32" }, { "name": "_9", "nodeType": "YulIdentifier", - "src": "58924:2:32" + "src": "58500:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58909:3:32" + "src": "58485:3:32" }, "nodeType": "YulFunctionCall", - "src": "58909:18:32" + "src": "58485:18:32" } ], "functionName": { "name": "abi_encode_uint16", "nodeType": "YulIdentifier", - "src": "58875:17:32" + "src": "58451:17:32" }, "nodeType": "YulFunctionCall", - "src": "58875:53:32" + "src": "58451:53:32" }, "nodeType": "YulExpressionStatement", - "src": "58875:53:32" + "src": "58451:53:32" }, { "nodeType": "YulVariableDeclaration", - "src": "58937:44:32", + "src": "58513:44:32", "value": { "arguments": [ { @@ -43919,47 +43345,47 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "58969:6:32" + "src": "58545:6:32" }, { "name": "_9", "nodeType": "YulIdentifier", - "src": "58977:2:32" + "src": "58553:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "58965:3:32" + "src": "58541:3:32" }, "nodeType": "YulFunctionCall", - "src": "58965:15:32" + "src": "58541:15:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "58959:5:32" + "src": "58535:5:32" }, "nodeType": "YulFunctionCall", - "src": "58959:22:32" + "src": "58535:22:32" }, "variables": [ { "name": "memberValue0_9", "nodeType": "YulTypedName", - "src": "58941:14:32", + "src": "58517:14:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "58990:14:32", + "src": "58566:14:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "59001:3:32", + "src": "58577:3:32", "type": "", "value": "448" }, @@ -43967,7 +43393,7 @@ { "name": "_10", "nodeType": "YulTypedName", - "src": "58994:3:32", + "src": "58570:3:32", "type": "" } ] @@ -43978,44 +43404,44 @@ { "name": "memberValue0_9", "nodeType": "YulIdentifier", - "src": "59031:14:32" + "src": "58607:14:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "59051:9:32" + "src": "58627:9:32" }, { "name": "_10", "nodeType": "YulIdentifier", - "src": "59062:3:32" + "src": "58638:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "59047:3:32" + "src": "58623:3:32" }, "nodeType": "YulFunctionCall", - "src": "59047:19:32" + "src": "58623:19:32" } ], "functionName": { "name": "abi_encode_uint16", "nodeType": "YulIdentifier", - "src": "59013:17:32" + "src": "58589:17:32" }, "nodeType": "YulFunctionCall", - "src": "59013:54:32" + "src": "58589:54:32" }, "nodeType": "YulExpressionStatement", - "src": "59013:54:32" + "src": "58589:54:32" }, { "nodeType": "YulVariableDeclaration", - "src": "59076:46:32", + "src": "58652:46:32", "value": { "arguments": [ { @@ -44023,47 +43449,47 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "59109:6:32" + "src": "58685:6:32" }, { "name": "_10", "nodeType": "YulIdentifier", - "src": "59117:3:32" + "src": "58693:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "59105:3:32" + "src": "58681:3:32" }, "nodeType": "YulFunctionCall", - "src": "59105:16:32" + "src": "58681:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "59099:5:32" + "src": "58675:5:32" }, "nodeType": "YulFunctionCall", - "src": "59099:23:32" + "src": "58675:23:32" }, "variables": [ { "name": "memberValue0_10", "nodeType": "YulTypedName", - "src": "59080:15:32", + "src": "58656:15:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "59131:14:32", + "src": "58707:14:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "59142:3:32", + "src": "58718:3:32", "type": "", "value": "480" }, @@ -44071,7 +43497,7 @@ { "name": "_11", "nodeType": "YulTypedName", - "src": "59135:3:32", + "src": "58711:3:32", "type": "" } ] @@ -44082,44 +43508,44 @@ { "name": "memberValue0_10", "nodeType": "YulIdentifier", - "src": "59172:15:32" + "src": "58748:15:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "59193:9:32" + "src": "58769:9:32" }, { "name": "_11", "nodeType": "YulIdentifier", - "src": "59204:3:32" + "src": "58780:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "59189:3:32" + "src": "58765:3:32" }, "nodeType": "YulFunctionCall", - "src": "59189:19:32" + "src": "58765:19:32" } ], "functionName": { "name": "abi_encode_uint32", "nodeType": "YulIdentifier", - "src": "59154:17:32" + "src": "58730:17:32" }, "nodeType": "YulFunctionCall", - "src": "59154:55:32" + "src": "58730:55:32" }, "nodeType": "YulExpressionStatement", - "src": "59154:55:32" + "src": "58730:55:32" }, { "nodeType": "YulVariableDeclaration", - "src": "59218:46:32", + "src": "58794:46:32", "value": { "arguments": [ { @@ -44127,47 +43553,47 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "59251:6:32" + "src": "58827:6:32" }, { "name": "_11", "nodeType": "YulIdentifier", - "src": "59259:3:32" + "src": "58835:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "59247:3:32" + "src": "58823:3:32" }, "nodeType": "YulFunctionCall", - "src": "59247:16:32" + "src": "58823:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "59241:5:32" + "src": "58817:5:32" }, "nodeType": "YulFunctionCall", - "src": "59241:23:32" + "src": "58817:23:32" }, "variables": [ { "name": "memberValue0_11", "nodeType": "YulTypedName", - "src": "59222:15:32", + "src": "58798:15:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "59273:14:32", + "src": "58849:14:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "59284:3:32", + "src": "58860:3:32", "type": "", "value": "512" }, @@ -44175,7 +43601,7 @@ { "name": "_12", "nodeType": "YulTypedName", - "src": "59277:3:32", + "src": "58853:3:32", "type": "" } ] @@ -44186,44 +43612,44 @@ { "name": "memberValue0_11", "nodeType": "YulIdentifier", - "src": "59314:15:32" + "src": "58890:15:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "59335:9:32" + "src": "58911:9:32" }, { "name": "_12", "nodeType": "YulIdentifier", - "src": "59346:3:32" + "src": "58922:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "59331:3:32" + "src": "58907:3:32" }, "nodeType": "YulFunctionCall", - "src": "59331:19:32" + "src": "58907:19:32" } ], "functionName": { "name": "abi_encode_uint32", "nodeType": "YulIdentifier", - "src": "59296:17:32" + "src": "58872:17:32" }, "nodeType": "YulFunctionCall", - "src": "59296:55:32" + "src": "58872:55:32" }, "nodeType": "YulExpressionStatement", - "src": "59296:55:32" + "src": "58872:55:32" }, { "nodeType": "YulVariableDeclaration", - "src": "59360:46:32", + "src": "58936:46:32", "value": { "arguments": [ { @@ -44231,47 +43657,47 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "59393:6:32" + "src": "58969:6:32" }, { "name": "_12", "nodeType": "YulIdentifier", - "src": "59401:3:32" + "src": "58977:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "59389:3:32" + "src": "58965:3:32" }, "nodeType": "YulFunctionCall", - "src": "59389:16:32" + "src": "58965:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "59383:5:32" + "src": "58959:5:32" }, "nodeType": "YulFunctionCall", - "src": "59383:23:32" + "src": "58959:23:32" }, "variables": [ { "name": "memberValue0_12", "nodeType": "YulTypedName", - "src": "59364:15:32", + "src": "58940:15:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "59415:14:32", + "src": "58991:14:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "59426:3:32", + "src": "59002:3:32", "type": "", "value": "544" }, @@ -44279,7 +43705,7 @@ { "name": "_13", "nodeType": "YulTypedName", - "src": "59419:3:32", + "src": "58995:3:32", "type": "" } ] @@ -44290,44 +43716,44 @@ { "name": "memberValue0_12", "nodeType": "YulIdentifier", - "src": "59456:15:32" + "src": "59032:15:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "59477:9:32" + "src": "59053:9:32" }, { "name": "_13", "nodeType": "YulIdentifier", - "src": "59488:3:32" + "src": "59064:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "59473:3:32" + "src": "59049:3:32" }, "nodeType": "YulFunctionCall", - "src": "59473:19:32" + "src": "59049:19:32" } ], "functionName": { "name": "abi_encode_uint32", "nodeType": "YulIdentifier", - "src": "59438:17:32" + "src": "59014:17:32" }, "nodeType": "YulFunctionCall", - "src": "59438:55:32" + "src": "59014:55:32" }, "nodeType": "YulExpressionStatement", - "src": "59438:55:32" + "src": "59014:55:32" }, { "nodeType": "YulVariableDeclaration", - "src": "59502:34:32", + "src": "59078:34:32", "value": { "arguments": [ { @@ -44335,47 +43761,47 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "59523:6:32" + "src": "59099:6:32" }, { "name": "_13", "nodeType": "YulIdentifier", - "src": "59531:3:32" + "src": "59107:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "59519:3:32" + "src": "59095:3:32" }, "nodeType": "YulFunctionCall", - "src": "59519:16:32" + "src": "59095:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "59513:5:32" + "src": "59089:5:32" }, "nodeType": "YulFunctionCall", - "src": "59513:23:32" + "src": "59089:23:32" }, "variables": [ { "name": "_14", "nodeType": "YulTypedName", - "src": "59506:3:32", + "src": "59082:3:32", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "59545:14:32", + "src": "59121:14:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "59556:3:32", + "src": "59132:3:32", "type": "", "value": "576" }, @@ -44383,7 +43809,7 @@ { "name": "_15", "nodeType": "YulTypedName", - "src": "59549:3:32", + "src": "59125:3:32", "type": "" } ] @@ -44396,38 +43822,38 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "59579:9:32" + "src": "59155:9:32" }, { "name": "_15", "nodeType": "YulIdentifier", - "src": "59590:3:32" + "src": "59166:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "59575:3:32" + "src": "59151:3:32" }, "nodeType": "YulFunctionCall", - "src": "59575:19:32" + "src": "59151:19:32" }, { "name": "_14", "nodeType": "YulIdentifier", - "src": "59596:3:32" + "src": "59172:3:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "59568:6:32" + "src": "59144:6:32" }, "nodeType": "YulFunctionCall", - "src": "59568:32:32" + "src": "59144:32:32" }, "nodeType": "YulExpressionStatement", - "src": "59568:32:32" + "src": "59144:32:32" }, { "expression": { @@ -44437,21 +43863,21 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "59620:9:32" + "src": "59196:9:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "59631:2:32" + "src": "59207:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "59616:3:32" + "src": "59192:3:32" }, "nodeType": "YulFunctionCall", - "src": "59616:18:32" + "src": "59192:18:32" }, { "arguments": [ @@ -44460,74 +43886,74 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "59646:6:32" + "src": "59222:6:32" }, { "name": "_15", "nodeType": "YulIdentifier", - "src": "59654:3:32" + "src": "59230:3:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "59642:3:32" + "src": "59218:3:32" }, "nodeType": "YulFunctionCall", - "src": "59642:16:32" + "src": "59218:16:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "59636:5:32" + "src": "59212:5:32" }, "nodeType": "YulFunctionCall", - "src": "59636:23:32" + "src": "59212:23:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "59609:6:32" + "src": "59185:6:32" }, "nodeType": "YulFunctionCall", - "src": "59609:51:32" + "src": "59185:51:32" }, "nodeType": "YulExpressionStatement", - "src": "59609:51:32" + "src": "59185:51:32" }, { "nodeType": "YulAssignment", - "src": "59669:14:32", + "src": "59245:14:32", "value": { "name": "tail_3", "nodeType": "YulIdentifier", - "src": "59677:6:32" + "src": "59253:6:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "59669:4:32" + "src": "59245:4:32" } ] } ] }, - "name": "abi_encode_tuple_t_struct$_PegOutQuote_$10638_memory_ptr__to_t_struct$_PegOutQuote_$10638_memory_ptr__fromStack_library_reversed", + "name": "abi_encode_tuple_t_struct$_PegOutQuote_$11234_memory_ptr__to_t_struct$_PegOutQuote_$11234_memory_ptr__fromStack_library_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "57189:9:32", + "src": "56765:9:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "57200:6:32", + "src": "56776:6:32", "type": "" } ], @@ -44535,16 +43961,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "57211:4:32", + "src": "56787:4:32", "type": "" } ], - "src": "57051:2638:32" + "src": "56627:2638:32" }, { "body": { "nodeType": "YulBlock", - "src": "59868:181:32", + "src": "59444:181:32", "statements": [ { "expression": { @@ -44552,12 +43978,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "59885:9:32" + "src": "59461:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "59896:2:32", + "src": "59472:2:32", "type": "", "value": "32" } @@ -44565,13 +43991,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "59878:6:32" + "src": "59454:6:32" }, "nodeType": "YulFunctionCall", - "src": "59878:21:32" + "src": "59454:21:32" }, "nodeType": "YulExpressionStatement", - "src": "59878:21:32" + "src": "59454:21:32" }, { "expression": { @@ -44581,12 +44007,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "59919:9:32" + "src": "59495:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "59930:2:32", + "src": "59506:2:32", "type": "", "value": "32" } @@ -44594,15 +44020,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "59915:3:32" + "src": "59491:3:32" }, "nodeType": "YulFunctionCall", - "src": "59915:18:32" + "src": "59491:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "59935:2:32", + "src": "59511:2:32", "type": "", "value": "31" } @@ -44610,13 +44036,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "59908:6:32" + "src": "59484:6:32" }, "nodeType": "YulFunctionCall", - "src": "59908:30:32" + "src": "59484:30:32" }, "nodeType": "YulExpressionStatement", - "src": "59908:30:32" + "src": "59484:30:32" }, { "expression": { @@ -44626,12 +44052,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "59958:9:32" + "src": "59534:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "59969:2:32", + "src": "59545:2:32", "type": "", "value": "64" } @@ -44639,16 +44065,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "59954:3:32" + "src": "59530:3:32" }, "nodeType": "YulFunctionCall", - "src": "59954:18:32" + "src": "59530:18:32" }, { "hexValue": "5265656e7472616e637947756172643a207265656e7472616e742063616c6c", "kind": "string", "nodeType": "YulLiteral", - "src": "59974:33:32", + "src": "59550:33:32", "type": "", "value": "ReentrancyGuard: reentrant call" } @@ -44656,28 +44082,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "59947:6:32" + "src": "59523:6:32" }, "nodeType": "YulFunctionCall", - "src": "59947:61:32" + "src": "59523:61:32" }, "nodeType": "YulExpressionStatement", - "src": "59947:61:32" + "src": "59523:61:32" }, { "nodeType": "YulAssignment", - "src": "60017:26:32", + "src": "59593:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "60029:9:32" + "src": "59605:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "60040:2:32", + "src": "59616:2:32", "type": "", "value": "96" } @@ -44685,16 +44111,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "60025:3:32" + "src": "59601:3:32" }, "nodeType": "YulFunctionCall", - "src": "60025:18:32" + "src": "59601:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "60017:4:32" + "src": "59593:4:32" } ] } @@ -44706,7 +44132,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "59845:9:32", + "src": "59421:9:32", "type": "" } ], @@ -44714,16 +44140,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "59859:4:32", + "src": "59435:4:32", "type": "" } ], - "src": "59694:355:32" + "src": "59270:355:32" }, { "body": { "nodeType": "YulBlock", - "src": "60228:155:32", + "src": "59804:155:32", "statements": [ { "expression": { @@ -44731,12 +44157,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "60245:9:32" + "src": "59821:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "60256:2:32", + "src": "59832:2:32", "type": "", "value": "32" } @@ -44744,13 +44170,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "60238:6:32" + "src": "59814:6:32" }, "nodeType": "YulFunctionCall", - "src": "60238:21:32" + "src": "59814:21:32" }, "nodeType": "YulExpressionStatement", - "src": "60238:21:32" + "src": "59814:21:32" }, { "expression": { @@ -44760,12 +44186,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "60279:9:32" + "src": "59855:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "60290:2:32", + "src": "59866:2:32", "type": "", "value": "32" } @@ -44773,15 +44199,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "60275:3:32" + "src": "59851:3:32" }, "nodeType": "YulFunctionCall", - "src": "60275:18:32" + "src": "59851:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "60295:1:32", + "src": "59871:1:32", "type": "", "value": "6" } @@ -44789,13 +44215,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "60268:6:32" + "src": "59844:6:32" }, "nodeType": "YulFunctionCall", - "src": "60268:29:32" + "src": "59844:29:32" }, "nodeType": "YulExpressionStatement", - "src": "60268:29:32" + "src": "59844:29:32" }, { "expression": { @@ -44805,12 +44231,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "60317:9:32" + "src": "59893:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "60328:2:32", + "src": "59904:2:32", "type": "", "value": "64" } @@ -44818,16 +44244,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "60313:3:32" + "src": "59889:3:32" }, "nodeType": "YulFunctionCall", - "src": "60313:18:32" + "src": "59889:18:32" }, { "hexValue": "4c4243303531", "kind": "string", "nodeType": "YulLiteral", - "src": "60333:8:32", + "src": "59909:8:32", "type": "", "value": "LBC051" } @@ -44835,28 +44261,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "60306:6:32" + "src": "59882:6:32" }, "nodeType": "YulFunctionCall", - "src": "60306:36:32" + "src": "59882:36:32" }, "nodeType": "YulExpressionStatement", - "src": "60306:36:32" + "src": "59882:36:32" }, { "nodeType": "YulAssignment", - "src": "60351:26:32", + "src": "59927:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "60363:9:32" + "src": "59939:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "60374:2:32", + "src": "59950:2:32", "type": "", "value": "96" } @@ -44864,16 +44290,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "60359:3:32" + "src": "59935:3:32" }, "nodeType": "YulFunctionCall", - "src": "60359:18:32" + "src": "59935:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "60351:4:32" + "src": "59927:4:32" } ] } @@ -44885,7 +44311,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "60205:9:32", + "src": "59781:9:32", "type": "" } ], @@ -44893,16 +44319,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "60219:4:32", + "src": "59795:4:32", "type": "" } ], - "src": "60054:329:32" + "src": "59630:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "60562:155:32", + "src": "60138:155:32", "statements": [ { "expression": { @@ -44910,12 +44336,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "60579:9:32" + "src": "60155:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "60590:2:32", + "src": "60166:2:32", "type": "", "value": "32" } @@ -44923,13 +44349,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "60572:6:32" + "src": "60148:6:32" }, "nodeType": "YulFunctionCall", - "src": "60572:21:32" + "src": "60148:21:32" }, "nodeType": "YulExpressionStatement", - "src": "60572:21:32" + "src": "60148:21:32" }, { "expression": { @@ -44939,12 +44365,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "60613:9:32" + "src": "60189:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "60624:2:32", + "src": "60200:2:32", "type": "", "value": "32" } @@ -44952,15 +44378,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "60609:3:32" + "src": "60185:3:32" }, "nodeType": "YulFunctionCall", - "src": "60609:18:32" + "src": "60185:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "60629:1:32", + "src": "60205:1:32", "type": "", "value": "6" } @@ -44968,13 +44394,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "60602:6:32" + "src": "60178:6:32" }, "nodeType": "YulFunctionCall", - "src": "60602:29:32" + "src": "60178:29:32" }, "nodeType": "YulExpressionStatement", - "src": "60602:29:32" + "src": "60178:29:32" }, { "expression": { @@ -44984,12 +44410,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "60651:9:32" + "src": "60227:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "60662:2:32", + "src": "60238:2:32", "type": "", "value": "64" } @@ -44997,16 +44423,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "60647:3:32" + "src": "60223:3:32" }, "nodeType": "YulFunctionCall", - "src": "60647:18:32" + "src": "60223:18:32" }, { "hexValue": "4c4243303532", "kind": "string", "nodeType": "YulLiteral", - "src": "60667:8:32", + "src": "60243:8:32", "type": "", "value": "LBC052" } @@ -45014,28 +44440,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "60640:6:32" + "src": "60216:6:32" }, "nodeType": "YulFunctionCall", - "src": "60640:36:32" + "src": "60216:36:32" }, "nodeType": "YulExpressionStatement", - "src": "60640:36:32" + "src": "60216:36:32" }, { "nodeType": "YulAssignment", - "src": "60685:26:32", + "src": "60261:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "60697:9:32" + "src": "60273:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "60708:2:32", + "src": "60284:2:32", "type": "", "value": "96" } @@ -45043,16 +44469,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "60693:3:32" + "src": "60269:3:32" }, "nodeType": "YulFunctionCall", - "src": "60693:18:32" + "src": "60269:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "60685:4:32" + "src": "60261:4:32" } ] } @@ -45064,7 +44490,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "60539:9:32", + "src": "60115:9:32", "type": "" } ], @@ -45072,16 +44498,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "60553:4:32", + "src": "60129:4:32", "type": "" } ], - "src": "60388:329:32" + "src": "59964:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "60896:155:32", + "src": "60472:155:32", "statements": [ { "expression": { @@ -45089,12 +44515,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "60913:9:32" + "src": "60489:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "60924:2:32", + "src": "60500:2:32", "type": "", "value": "32" } @@ -45102,13 +44528,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "60906:6:32" + "src": "60482:6:32" }, "nodeType": "YulFunctionCall", - "src": "60906:21:32" + "src": "60482:21:32" }, "nodeType": "YulExpressionStatement", - "src": "60906:21:32" + "src": "60482:21:32" }, { "expression": { @@ -45118,12 +44544,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "60947:9:32" + "src": "60523:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "60958:2:32", + "src": "60534:2:32", "type": "", "value": "32" } @@ -45131,15 +44557,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "60943:3:32" + "src": "60519:3:32" }, "nodeType": "YulFunctionCall", - "src": "60943:18:32" + "src": "60519:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "60963:1:32", + "src": "60539:1:32", "type": "", "value": "6" } @@ -45147,13 +44573,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "60936:6:32" + "src": "60512:6:32" }, "nodeType": "YulFunctionCall", - "src": "60936:29:32" + "src": "60512:29:32" }, "nodeType": "YulExpressionStatement", - "src": "60936:29:32" + "src": "60512:29:32" }, { "expression": { @@ -45163,12 +44589,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "60985:9:32" + "src": "60561:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "60996:2:32", + "src": "60572:2:32", "type": "", "value": "64" } @@ -45176,16 +44602,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "60981:3:32" + "src": "60557:3:32" }, "nodeType": "YulFunctionCall", - "src": "60981:18:32" + "src": "60557:18:32" }, { "hexValue": "4c4243303533", "kind": "string", "nodeType": "YulLiteral", - "src": "61001:8:32", + "src": "60577:8:32", "type": "", "value": "LBC053" } @@ -45193,28 +44619,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "60974:6:32" + "src": "60550:6:32" }, "nodeType": "YulFunctionCall", - "src": "60974:36:32" + "src": "60550:36:32" }, "nodeType": "YulExpressionStatement", - "src": "60974:36:32" + "src": "60550:36:32" }, { "nodeType": "YulAssignment", - "src": "61019:26:32", + "src": "60595:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "61031:9:32" + "src": "60607:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "61042:2:32", + "src": "60618:2:32", "type": "", "value": "96" } @@ -45222,16 +44648,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "61027:3:32" + "src": "60603:3:32" }, "nodeType": "YulFunctionCall", - "src": "61027:18:32" + "src": "60603:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "61019:4:32" + "src": "60595:4:32" } ] } @@ -45243,7 +44669,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "60873:9:32", + "src": "60449:9:32", "type": "" } ], @@ -45251,16 +44677,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "60887:4:32", + "src": "60463:4:32", "type": "" } ], - "src": "60722:329:32" + "src": "60298:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "61230:155:32", + "src": "60806:155:32", "statements": [ { "expression": { @@ -45268,12 +44694,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "61247:9:32" + "src": "60823:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "61258:2:32", + "src": "60834:2:32", "type": "", "value": "32" } @@ -45281,13 +44707,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "61240:6:32" + "src": "60816:6:32" }, "nodeType": "YulFunctionCall", - "src": "61240:21:32" + "src": "60816:21:32" }, "nodeType": "YulExpressionStatement", - "src": "61240:21:32" + "src": "60816:21:32" }, { "expression": { @@ -45297,12 +44723,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "61281:9:32" + "src": "60857:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "61292:2:32", + "src": "60868:2:32", "type": "", "value": "32" } @@ -45310,15 +44736,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "61277:3:32" + "src": "60853:3:32" }, "nodeType": "YulFunctionCall", - "src": "61277:18:32" + "src": "60853:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "61297:1:32", + "src": "60873:1:32", "type": "", "value": "6" } @@ -45326,13 +44752,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "61270:6:32" + "src": "60846:6:32" }, "nodeType": "YulFunctionCall", - "src": "61270:29:32" + "src": "60846:29:32" }, "nodeType": "YulExpressionStatement", - "src": "61270:29:32" + "src": "60846:29:32" }, { "expression": { @@ -45342,12 +44768,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "61319:9:32" + "src": "60895:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "61330:2:32", + "src": "60906:2:32", "type": "", "value": "64" } @@ -45355,16 +44781,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "61315:3:32" + "src": "60891:3:32" }, "nodeType": "YulFunctionCall", - "src": "61315:18:32" + "src": "60891:18:32" }, { "hexValue": "4c4243303534", "kind": "string", "nodeType": "YulLiteral", - "src": "61335:8:32", + "src": "60911:8:32", "type": "", "value": "LBC054" } @@ -45372,28 +44798,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "61308:6:32" + "src": "60884:6:32" }, "nodeType": "YulFunctionCall", - "src": "61308:36:32" + "src": "60884:36:32" }, "nodeType": "YulExpressionStatement", - "src": "61308:36:32" + "src": "60884:36:32" }, { "nodeType": "YulAssignment", - "src": "61353:26:32", + "src": "60929:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "61365:9:32" + "src": "60941:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "61376:2:32", + "src": "60952:2:32", "type": "", "value": "96" } @@ -45401,16 +44827,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "61361:3:32" + "src": "60937:3:32" }, "nodeType": "YulFunctionCall", - "src": "61361:18:32" + "src": "60937:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "61353:4:32" + "src": "60929:4:32" } ] } @@ -45422,7 +44848,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "61207:9:32", + "src": "60783:9:32", "type": "" } ], @@ -45430,16 +44856,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "61221:4:32", + "src": "60797:4:32", "type": "" } ], - "src": "61056:329:32" + "src": "60632:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "61564:155:32", + "src": "61140:155:32", "statements": [ { "expression": { @@ -45447,12 +44873,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "61581:9:32" + "src": "61157:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "61592:2:32", + "src": "61168:2:32", "type": "", "value": "32" } @@ -45460,13 +44886,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "61574:6:32" + "src": "61150:6:32" }, "nodeType": "YulFunctionCall", - "src": "61574:21:32" + "src": "61150:21:32" }, "nodeType": "YulExpressionStatement", - "src": "61574:21:32" + "src": "61150:21:32" }, { "expression": { @@ -45476,12 +44902,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "61615:9:32" + "src": "61191:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "61626:2:32", + "src": "61202:2:32", "type": "", "value": "32" } @@ -45489,15 +44915,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "61611:3:32" + "src": "61187:3:32" }, "nodeType": "YulFunctionCall", - "src": "61611:18:32" + "src": "61187:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "61631:1:32", + "src": "61207:1:32", "type": "", "value": "6" } @@ -45505,13 +44931,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "61604:6:32" + "src": "61180:6:32" }, "nodeType": "YulFunctionCall", - "src": "61604:29:32" + "src": "61180:29:32" }, "nodeType": "YulExpressionStatement", - "src": "61604:29:32" + "src": "61180:29:32" }, { "expression": { @@ -45521,12 +44947,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "61653:9:32" + "src": "61229:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "61664:2:32", + "src": "61240:2:32", "type": "", "value": "64" } @@ -45534,16 +44960,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "61649:3:32" + "src": "61225:3:32" }, "nodeType": "YulFunctionCall", - "src": "61649:18:32" + "src": "61225:18:32" }, { "hexValue": "4c4243303535", "kind": "string", "nodeType": "YulLiteral", - "src": "61669:8:32", + "src": "61245:8:32", "type": "", "value": "LBC055" } @@ -45551,28 +44977,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "61642:6:32" + "src": "61218:6:32" }, "nodeType": "YulFunctionCall", - "src": "61642:36:32" + "src": "61218:36:32" }, "nodeType": "YulExpressionStatement", - "src": "61642:36:32" + "src": "61218:36:32" }, { "nodeType": "YulAssignment", - "src": "61687:26:32", + "src": "61263:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "61699:9:32" + "src": "61275:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "61710:2:32", + "src": "61286:2:32", "type": "", "value": "96" } @@ -45580,16 +45006,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "61695:3:32" + "src": "61271:3:32" }, "nodeType": "YulFunctionCall", - "src": "61695:18:32" + "src": "61271:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "61687:4:32" + "src": "61263:4:32" } ] } @@ -45601,7 +45027,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "61541:9:32", + "src": "61117:9:32", "type": "" } ], @@ -45609,20 +45035,20 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "61555:4:32", + "src": "61131:4:32", "type": "" } ], - "src": "61390:329:32" + "src": "60966:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "61771:133:32", + "src": "61347:133:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "61781:28:32", + "src": "61357:28:32", "value": { "arguments": [ { @@ -45630,14 +45056,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "61799:2:32", + "src": "61375:2:32", "type": "", "value": "64" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "61803:1:32", + "src": "61379:1:32", "type": "", "value": "1" } @@ -45645,15 +45071,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "61795:3:32" + "src": "61371:3:32" }, "nodeType": "YulFunctionCall", - "src": "61795:10:32" + "src": "61371:10:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "61807:1:32", + "src": "61383:1:32", "type": "", "value": "1" } @@ -45661,23 +45087,23 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "61791:3:32" + "src": "61367:3:32" }, "nodeType": "YulFunctionCall", - "src": "61791:18:32" + "src": "61367:18:32" }, "variables": [ { "name": "_1", "nodeType": "YulTypedName", - "src": "61785:2:32", + "src": "61361:2:32", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "61818:34:32", + "src": "61394:34:32", "value": { "arguments": [ { @@ -45685,64 +45111,64 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "61833:1:32" + "src": "61409:1:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "61836:2:32" + "src": "61412:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "61829:3:32" + "src": "61405:3:32" }, "nodeType": "YulFunctionCall", - "src": "61829:10:32" + "src": "61405:10:32" }, { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "61845:1:32" + "src": "61421:1:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "61848:2:32" + "src": "61424:2:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "61841:3:32" + "src": "61417:3:32" }, "nodeType": "YulFunctionCall", - "src": "61841:10:32" + "src": "61417:10:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "61825:3:32" + "src": "61401:3:32" }, "nodeType": "YulFunctionCall", - "src": "61825:27:32" + "src": "61401:27:32" }, "variableNames": [ { "name": "sum", "nodeType": "YulIdentifier", - "src": "61818:3:32" + "src": "61394:3:32" } ] }, { "body": { "nodeType": "YulBlock", - "src": "61876:22:32", + "src": "61452:22:32", "statements": [ { "expression": { @@ -45750,13 +45176,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "61878:16:32" + "src": "61454:16:32" }, "nodeType": "YulFunctionCall", - "src": "61878:18:32" + "src": "61454:18:32" }, "nodeType": "YulExpressionStatement", - "src": "61878:18:32" + "src": "61454:18:32" } ] }, @@ -45765,24 +45191,24 @@ { "name": "sum", "nodeType": "YulIdentifier", - "src": "61867:3:32" + "src": "61443:3:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "61872:2:32" + "src": "61448:2:32" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "61864:2:32" + "src": "61440:2:32" }, "nodeType": "YulFunctionCall", - "src": "61864:11:32" + "src": "61440:11:32" }, "nodeType": "YulIf", - "src": "61861:37:32" + "src": "61437:37:32" } ] }, @@ -45792,13 +45218,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "61754:1:32", + "src": "61330:1:32", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "61757:1:32", + "src": "61333:1:32", "type": "" } ], @@ -45806,16 +45232,16 @@ { "name": "sum", "nodeType": "YulTypedName", - "src": "61763:3:32", + "src": "61339:3:32", "type": "" } ], - "src": "61724:180:32" + "src": "61300:180:32" }, { "body": { "nodeType": "YulBlock", - "src": "62083:155:32", + "src": "61659:155:32", "statements": [ { "expression": { @@ -45823,12 +45249,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "62100:9:32" + "src": "61676:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "62111:2:32", + "src": "61687:2:32", "type": "", "value": "32" } @@ -45836,13 +45262,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "62093:6:32" + "src": "61669:6:32" }, "nodeType": "YulFunctionCall", - "src": "62093:21:32" + "src": "61669:21:32" }, "nodeType": "YulExpressionStatement", - "src": "62093:21:32" + "src": "61669:21:32" }, { "expression": { @@ -45852,12 +45278,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "62134:9:32" + "src": "61710:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "62145:2:32", + "src": "61721:2:32", "type": "", "value": "32" } @@ -45865,15 +45291,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "62130:3:32" + "src": "61706:3:32" }, "nodeType": "YulFunctionCall", - "src": "62130:18:32" + "src": "61706:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "62150:1:32", + "src": "61726:1:32", "type": "", "value": "6" } @@ -45881,13 +45307,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "62123:6:32" + "src": "61699:6:32" }, "nodeType": "YulFunctionCall", - "src": "62123:29:32" + "src": "61699:29:32" }, "nodeType": "YulExpressionStatement", - "src": "62123:29:32" + "src": "61699:29:32" }, { "expression": { @@ -45897,12 +45323,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "62172:9:32" + "src": "61748:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "62183:2:32", + "src": "61759:2:32", "type": "", "value": "64" } @@ -45910,16 +45336,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "62168:3:32" + "src": "61744:3:32" }, "nodeType": "YulFunctionCall", - "src": "62168:18:32" + "src": "61744:18:32" }, { "hexValue": "4c4243303731", "kind": "string", "nodeType": "YulLiteral", - "src": "62188:8:32", + "src": "61764:8:32", "type": "", "value": "LBC071" } @@ -45927,28 +45353,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "62161:6:32" + "src": "61737:6:32" }, "nodeType": "YulFunctionCall", - "src": "62161:36:32" + "src": "61737:36:32" }, "nodeType": "YulExpressionStatement", - "src": "62161:36:32" + "src": "61737:36:32" }, { "nodeType": "YulAssignment", - "src": "62206:26:32", + "src": "61782:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "62218:9:32" + "src": "61794:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "62229:2:32", + "src": "61805:2:32", "type": "", "value": "96" } @@ -45956,16 +45382,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "62214:3:32" + "src": "61790:3:32" }, "nodeType": "YulFunctionCall", - "src": "62214:18:32" + "src": "61790:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "62206:4:32" + "src": "61782:4:32" } ] } @@ -45977,7 +45403,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "62060:9:32", + "src": "61636:9:32", "type": "" } ], @@ -45985,16 +45411,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "62074:4:32", + "src": "61650:4:32", "type": "" } ], - "src": "61909:329:32" + "src": "61485:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "62410:110:32", + "src": "61986:110:32", "statements": [ { "expression": { @@ -46002,12 +45428,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "62427:9:32" + "src": "62003:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "62438:2:32", + "src": "62014:2:32", "type": "", "value": "32" } @@ -46015,35 +45441,35 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "62420:6:32" + "src": "61996:6:32" }, "nodeType": "YulFunctionCall", - "src": "62420:21:32" + "src": "61996:21:32" }, "nodeType": "YulExpressionStatement", - "src": "62420:21:32" + "src": "61996:21:32" }, { "nodeType": "YulAssignment", - "src": "62450:64:32", + "src": "62026:64:32", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "62487:6:32" + "src": "62063:6:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "62499:9:32" + "src": "62075:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "62510:2:32", + "src": "62086:2:32", "type": "", "value": "32" } @@ -46051,43 +45477,43 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "62495:3:32" + "src": "62071:3:32" }, "nodeType": "YulFunctionCall", - "src": "62495:18:32" + "src": "62071:18:32" } ], "functionName": { "name": "abi_encode_struct_PeginQuote", "nodeType": "YulIdentifier", - "src": "62458:28:32" + "src": "62034:28:32" }, "nodeType": "YulFunctionCall", - "src": "62458:56:32" + "src": "62034:56:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "62450:4:32" + "src": "62026:4:32" } ] } ] }, - "name": "abi_encode_tuple_t_struct$_PeginQuote_$10599_memory_ptr__to_t_struct$_PeginQuote_$10599_memory_ptr__fromStack_library_reversed", + "name": "abi_encode_tuple_t_struct$_PeginQuote_$11195_memory_ptr__to_t_struct$_PeginQuote_$11195_memory_ptr__fromStack_library_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "62379:9:32", + "src": "61955:9:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "62390:6:32", + "src": "61966:6:32", "type": "" } ], @@ -46095,24 +45521,24 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "62401:4:32", + "src": "61977:4:32", "type": "" } ], - "src": "62243:277:32" + "src": "61819:277:32" }, { "body": { "nodeType": "YulBlock", - "src": "62904:684:32", + "src": "62480:684:32", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "62914:13:32", + "src": "62490:13:32", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "62924:3:32", + "src": "62500:3:32", "type": "", "value": "256" }, @@ -46120,7 +45546,7 @@ { "name": "_1", "nodeType": "YulTypedName", - "src": "62918:2:32", + "src": "62494:2:32", "type": "" } ] @@ -46131,70 +45557,70 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "62943:9:32" + "src": "62519:9:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "62954:2:32" + "src": "62530:2:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "62936:6:32" + "src": "62512:6:32" }, "nodeType": "YulFunctionCall", - "src": "62936:21:32" + "src": "62512:21:32" }, "nodeType": "YulExpressionStatement", - "src": "62936:21:32" + "src": "62512:21:32" }, { "nodeType": "YulVariableDeclaration", - "src": "62966:59:32", + "src": "62542:59:32", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "62998:6:32" + "src": "62574:6:32" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "63010:9:32" + "src": "62586:9:32" }, { "name": "_1", "nodeType": "YulIdentifier", - "src": "63021:2:32" + "src": "62597:2:32" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "63006:3:32" + "src": "62582:3:32" }, "nodeType": "YulFunctionCall", - "src": "63006:18:32" + "src": "62582:18:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "62980:17:32" + "src": "62556:17:32" }, "nodeType": "YulFunctionCall", - "src": "62980:45:32" + "src": "62556:45:32" }, "variables": [ { "name": "tail_1", "nodeType": "YulTypedName", - "src": "62970:6:32", + "src": "62546:6:32", "type": "" } ] @@ -46207,12 +45633,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "63045:9:32" + "src": "62621:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "63056:2:32", + "src": "62632:2:32", "type": "", "value": "32" } @@ -46220,27 +45646,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "63041:3:32" + "src": "62617:3:32" }, "nodeType": "YulFunctionCall", - "src": "63041:18:32" + "src": "62617:18:32" }, { "name": "value1", "nodeType": "YulIdentifier", - "src": "63061:6:32" + "src": "62637:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "63034:6:32" + "src": "62610:6:32" }, "nodeType": "YulFunctionCall", - "src": "63034:34:32" + "src": "62610:34:32" }, "nodeType": "YulExpressionStatement", - "src": "63034:34:32" + "src": "62610:34:32" }, { "expression": { @@ -46250,12 +45676,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "63088:9:32" + "src": "62664:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "63099:2:32", + "src": "62675:2:32", "type": "", "value": "64" } @@ -46263,73 +45689,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "63084:3:32" + "src": "62660:3:32" }, "nodeType": "YulFunctionCall", - "src": "63084:18:32" + "src": "62660:18:32" }, { "arguments": [ { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "63108:6:32" + "src": "62684:6:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "63116:9:32" + "src": "62692:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "63104:3:32" + "src": "62680:3:32" }, "nodeType": "YulFunctionCall", - "src": "63104:22:32" + "src": "62680:22:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "63077:6:32" + "src": "62653:6:32" }, "nodeType": "YulFunctionCall", - "src": "63077:50:32" + "src": "62653:50:32" }, "nodeType": "YulExpressionStatement", - "src": "63077:50:32" + "src": "62653:50:32" }, { "nodeType": "YulVariableDeclaration", - "src": "63136:47:32", + "src": "62712:47:32", "value": { "arguments": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "63168:6:32" + "src": "62744:6:32" }, { "name": "tail_1", "nodeType": "YulIdentifier", - "src": "63176:6:32" + "src": "62752:6:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "63150:17:32" + "src": "62726:17:32" }, "nodeType": "YulFunctionCall", - "src": "63150:33:32" + "src": "62726:33:32" }, "variables": [ { "name": "tail_2", "nodeType": "YulTypedName", - "src": "63140:6:32", + "src": "62716:6:32", "type": "" } ] @@ -46342,12 +45768,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "63203:9:32" + "src": "62779:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "63214:2:32", + "src": "62790:2:32", "type": "", "value": "96" } @@ -46355,27 +45781,27 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "63199:3:32" + "src": "62775:3:32" }, "nodeType": "YulFunctionCall", - "src": "63199:18:32" + "src": "62775:18:32" }, { "name": "value3", "nodeType": "YulIdentifier", - "src": "63219:6:32" + "src": "62795:6:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "63192:6:32" + "src": "62768:6:32" }, "nodeType": "YulFunctionCall", - "src": "63192:34:32" + "src": "62768:34:32" }, "nodeType": "YulExpressionStatement", - "src": "63192:34:32" + "src": "62768:34:32" }, { "expression": { @@ -46385,12 +45811,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "63246:9:32" + "src": "62822:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "63257:3:32", + "src": "62833:3:32", "type": "", "value": "128" } @@ -46398,73 +45824,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "63242:3:32" + "src": "62818:3:32" }, "nodeType": "YulFunctionCall", - "src": "63242:19:32" + "src": "62818:19:32" }, { "arguments": [ { "name": "tail_2", "nodeType": "YulIdentifier", - "src": "63267:6:32" + "src": "62843:6:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "63275:9:32" + "src": "62851:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "63263:3:32" + "src": "62839:3:32" }, "nodeType": "YulFunctionCall", - "src": "63263:22:32" + "src": "62839:22:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "63235:6:32" + "src": "62811:6:32" }, "nodeType": "YulFunctionCall", - "src": "63235:51:32" + "src": "62811:51:32" }, "nodeType": "YulExpressionStatement", - "src": "63235:51:32" + "src": "62811:51:32" }, { "nodeType": "YulVariableDeclaration", - "src": "63295:47:32", + "src": "62871:47:32", "value": { "arguments": [ { "name": "value4", "nodeType": "YulIdentifier", - "src": "63327:6:32" + "src": "62903:6:32" }, { "name": "tail_2", "nodeType": "YulIdentifier", - "src": "63335:6:32" + "src": "62911:6:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "63309:17:32" + "src": "62885:17:32" }, "nodeType": "YulFunctionCall", - "src": "63309:33:32" + "src": "62885:33:32" }, "variables": [ { "name": "tail_3", "nodeType": "YulTypedName", - "src": "63299:6:32", + "src": "62875:6:32", "type": "" } ] @@ -46477,12 +45903,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "63362:9:32" + "src": "62938:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "63373:3:32", + "src": "62949:3:32", "type": "", "value": "160" } @@ -46490,17 +45916,17 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "63358:3:32" + "src": "62934:3:32" }, "nodeType": "YulFunctionCall", - "src": "63358:19:32" + "src": "62934:19:32" }, { "arguments": [ { "name": "value5", "nodeType": "YulIdentifier", - "src": "63383:6:32" + "src": "62959:6:32" }, { "arguments": [ @@ -46509,14 +45935,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "63399:3:32", + "src": "62975:3:32", "type": "", "value": "160" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "63404:1:32", + "src": "62980:1:32", "type": "", "value": "1" } @@ -46524,15 +45950,15 @@ "functionName": { "name": "shl", "nodeType": "YulIdentifier", - "src": "63395:3:32" + "src": "62971:3:32" }, "nodeType": "YulFunctionCall", - "src": "63395:11:32" + "src": "62971:11:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "63408:1:32", + "src": "62984:1:32", "type": "", "value": "1" } @@ -46540,31 +45966,31 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "63391:3:32" + "src": "62967:3:32" }, "nodeType": "YulFunctionCall", - "src": "63391:19:32" + "src": "62967:19:32" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "63379:3:32" + "src": "62955:3:32" }, "nodeType": "YulFunctionCall", - "src": "63379:32:32" + "src": "62955:32:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "63351:6:32" + "src": "62927:6:32" }, "nodeType": "YulFunctionCall", - "src": "63351:61:32" + "src": "62927:61:32" }, "nodeType": "YulExpressionStatement", - "src": "63351:61:32" + "src": "62927:61:32" }, { "expression": { @@ -46574,12 +46000,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "63432:9:32" + "src": "63008:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "63443:3:32", + "src": "63019:3:32", "type": "", "value": "192" } @@ -46587,73 +46013,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "63428:3:32" + "src": "63004:3:32" }, "nodeType": "YulFunctionCall", - "src": "63428:19:32" + "src": "63004:19:32" }, { "arguments": [ { "name": "tail_3", "nodeType": "YulIdentifier", - "src": "63453:6:32" + "src": "63029:6:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "63461:9:32" + "src": "63037:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "63449:3:32" + "src": "63025:3:32" }, "nodeType": "YulFunctionCall", - "src": "63449:22:32" + "src": "63025:22:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "63421:6:32" + "src": "62997:6:32" }, "nodeType": "YulFunctionCall", - "src": "63421:51:32" + "src": "62997:51:32" }, "nodeType": "YulExpressionStatement", - "src": "63421:51:32" + "src": "62997:51:32" }, { "nodeType": "YulAssignment", - "src": "63481:41:32", + "src": "63057:41:32", "value": { "arguments": [ { "name": "value6", "nodeType": "YulIdentifier", - "src": "63507:6:32" + "src": "63083:6:32" }, { "name": "tail_3", "nodeType": "YulIdentifier", - "src": "63515:6:32" + "src": "63091:6:32" } ], "functionName": { "name": "abi_encode_string", "nodeType": "YulIdentifier", - "src": "63489:17:32" + "src": "63065:17:32" }, "nodeType": "YulFunctionCall", - "src": "63489:33:32" + "src": "63065:33:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "63481:4:32" + "src": "63057:4:32" } ] }, @@ -46665,12 +46091,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "63542:9:32" + "src": "63118:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "63553:3:32", + "src": "63129:3:32", "type": "", "value": "224" } @@ -46678,10 +46104,10 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "63538:3:32" + "src": "63114:3:32" }, "nodeType": "YulFunctionCall", - "src": "63538:19:32" + "src": "63114:19:32" }, { "arguments": [ @@ -46690,37 +46116,37 @@ { "name": "value7", "nodeType": "YulIdentifier", - "src": "63573:6:32" + "src": "63149:6:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "63566:6:32" + "src": "63142:6:32" }, "nodeType": "YulFunctionCall", - "src": "63566:14:32" + "src": "63142:14:32" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "63559:6:32" + "src": "63135:6:32" }, "nodeType": "YulFunctionCall", - "src": "63559:22:32" + "src": "63135:22:32" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "63531:6:32" + "src": "63107:6:32" }, "nodeType": "YulFunctionCall", - "src": "63531:51:32" + "src": "63107:51:32" }, "nodeType": "YulExpressionStatement", - "src": "63531:51:32" + "src": "63107:51:32" } ] }, @@ -46730,55 +46156,55 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "62817:9:32", + "src": "62393:9:32", "type": "" }, { "name": "value7", "nodeType": "YulTypedName", - "src": "62828:6:32", + "src": "62404:6:32", "type": "" }, { "name": "value6", "nodeType": "YulTypedName", - "src": "62836:6:32", + "src": "62412:6:32", "type": "" }, { "name": "value5", "nodeType": "YulTypedName", - "src": "62844:6:32", + "src": "62420:6:32", "type": "" }, { "name": "value4", "nodeType": "YulTypedName", - "src": "62852:6:32", + "src": "62428:6:32", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "62860:6:32", + "src": "62436:6:32", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "62868:6:32", + "src": "62444:6:32", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "62876:6:32", + "src": "62452:6:32", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "62884:6:32", + "src": "62460:6:32", "type": "" } ], @@ -46786,16 +46212,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "62895:4:32", + "src": "62471:4:32", "type": "" } ], - "src": "62525:1063:32" + "src": "62101:1063:32" }, { "body": { "nodeType": "YulBlock", - "src": "63767:170:32", + "src": "63343:170:32", "statements": [ { "expression": { @@ -46803,12 +46229,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "63784:9:32" + "src": "63360:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "63795:2:32", + "src": "63371:2:32", "type": "", "value": "32" } @@ -46816,13 +46242,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "63777:6:32" + "src": "63353:6:32" }, "nodeType": "YulFunctionCall", - "src": "63777:21:32" + "src": "63353:21:32" }, "nodeType": "YulExpressionStatement", - "src": "63777:21:32" + "src": "63353:21:32" }, { "expression": { @@ -46832,12 +46258,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "63818:9:32" + "src": "63394:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "63829:2:32", + "src": "63405:2:32", "type": "", "value": "32" } @@ -46845,15 +46271,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "63814:3:32" + "src": "63390:3:32" }, "nodeType": "YulFunctionCall", - "src": "63814:18:32" + "src": "63390:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "63834:2:32", + "src": "63410:2:32", "type": "", "value": "20" } @@ -46861,13 +46287,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "63807:6:32" + "src": "63383:6:32" }, "nodeType": "YulFunctionCall", - "src": "63807:30:32" + "src": "63383:30:32" }, "nodeType": "YulExpressionStatement", - "src": "63807:30:32" + "src": "63383:30:32" }, { "expression": { @@ -46877,12 +46303,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "63857:9:32" + "src": "63433:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "63868:2:32", + "src": "63444:2:32", "type": "", "value": "64" } @@ -46890,16 +46316,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "63853:3:32" + "src": "63429:3:32" }, "nodeType": "YulFunctionCall", - "src": "63853:18:32" + "src": "63429:18:32" }, { "hexValue": "496e76616c696420626c6f636b20686569676874", "kind": "string", "nodeType": "YulLiteral", - "src": "63873:22:32", + "src": "63449:22:32", "type": "", "value": "Invalid block height" } @@ -46907,28 +46333,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "63846:6:32" + "src": "63422:6:32" }, "nodeType": "YulFunctionCall", - "src": "63846:50:32" + "src": "63422:50:32" }, "nodeType": "YulExpressionStatement", - "src": "63846:50:32" + "src": "63422:50:32" }, { "nodeType": "YulAssignment", - "src": "63905:26:32", + "src": "63481:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "63917:9:32" + "src": "63493:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "63928:2:32", + "src": "63504:2:32", "type": "", "value": "96" } @@ -46936,16 +46362,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "63913:3:32" + "src": "63489:3:32" }, "nodeType": "YulFunctionCall", - "src": "63913:18:32" + "src": "63489:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "63905:4:32" + "src": "63481:4:32" } ] } @@ -46957,7 +46383,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "63744:9:32", + "src": "63320:9:32", "type": "" } ], @@ -46965,21 +46391,21 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "63758:4:32", + "src": "63334:4:32", "type": "" } ], - "src": "63593:344:32" + "src": "63169:344:32" }, { "body": { "nodeType": "YulBlock", - "src": "64023:103:32", + "src": "63599:103:32", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "64069:16:32", + "src": "63645:16:32", "statements": [ { "expression": { @@ -46987,14 +46413,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "64078:1:32", + "src": "63654:1:32", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "64081:1:32", + "src": "63657:1:32", "type": "", "value": "0" } @@ -47002,13 +46428,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "64071:6:32" + "src": "63647:6:32" }, "nodeType": "YulFunctionCall", - "src": "64071:12:32" + "src": "63647:12:32" }, "nodeType": "YulExpressionStatement", - "src": "64071:12:32" + "src": "63647:12:32" } ] }, @@ -47019,26 +46445,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "64044:7:32" + "src": "63620:7:32" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "64053:9:32" + "src": "63629:9:32" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "64040:3:32" + "src": "63616:3:32" }, "nodeType": "YulFunctionCall", - "src": "64040:23:32" + "src": "63616:23:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "64065:2:32", + "src": "63641:2:32", "type": "", "value": "32" } @@ -47046,38 +46472,38 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "64036:3:32" + "src": "63612:3:32" }, "nodeType": "YulFunctionCall", - "src": "64036:32:32" + "src": "63612:32:32" }, "nodeType": "YulIf", - "src": "64033:52:32" + "src": "63609:52:32" }, { "nodeType": "YulAssignment", - "src": "64094:26:32", + "src": "63670:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "64110:9:32" + "src": "63686:9:32" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "64104:5:32" + "src": "63680:5:32" }, "nodeType": "YulFunctionCall", - "src": "64104:16:32" + "src": "63680:16:32" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "64094:6:32" + "src": "63670:6:32" } ] } @@ -47089,13 +46515,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "63989:9:32", + "src": "63565:9:32", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "64000:7:32", + "src": "63576:7:32", "type": "" } ], @@ -47103,16 +46529,16 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "64012:6:32", + "src": "63588:6:32", "type": "" } ], - "src": "63942:184:32" + "src": "63518:184:32" }, { "body": { "nodeType": "YulBlock", - "src": "64305:155:32", + "src": "63881:155:32", "statements": [ { "expression": { @@ -47120,12 +46546,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "64322:9:32" + "src": "63898:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "64333:2:32", + "src": "63909:2:32", "type": "", "value": "32" } @@ -47133,13 +46559,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "64315:6:32" + "src": "63891:6:32" }, "nodeType": "YulFunctionCall", - "src": "64315:21:32" + "src": "63891:21:32" }, "nodeType": "YulExpressionStatement", - "src": "64315:21:32" + "src": "63891:21:32" }, { "expression": { @@ -47149,12 +46575,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "64356:9:32" + "src": "63932:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "64367:2:32", + "src": "63943:2:32", "type": "", "value": "32" } @@ -47162,15 +46588,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "64352:3:32" + "src": "63928:3:32" }, "nodeType": "YulFunctionCall", - "src": "64352:18:32" + "src": "63928:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "64372:1:32", + "src": "63948:1:32", "type": "", "value": "6" } @@ -47178,13 +46604,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "64345:6:32" + "src": "63921:6:32" }, "nodeType": "YulFunctionCall", - "src": "64345:29:32" + "src": "63921:29:32" }, "nodeType": "YulExpressionStatement", - "src": "64345:29:32" + "src": "63921:29:32" }, { "expression": { @@ -47194,12 +46620,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "64394:9:32" + "src": "63970:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "64405:2:32", + "src": "63981:2:32", "type": "", "value": "64" } @@ -47207,16 +46633,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "64390:3:32" + "src": "63966:3:32" }, "nodeType": "YulFunctionCall", - "src": "64390:18:32" + "src": "63966:18:32" }, { "hexValue": "4c4243303538", "kind": "string", "nodeType": "YulLiteral", - "src": "64410:8:32", + "src": "63986:8:32", "type": "", "value": "LBC058" } @@ -47224,28 +46650,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "64383:6:32" + "src": "63959:6:32" }, "nodeType": "YulFunctionCall", - "src": "64383:36:32" + "src": "63959:36:32" }, "nodeType": "YulExpressionStatement", - "src": "64383:36:32" + "src": "63959:36:32" }, { "nodeType": "YulAssignment", - "src": "64428:26:32", + "src": "64004:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "64440:9:32" + "src": "64016:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "64451:2:32", + "src": "64027:2:32", "type": "", "value": "96" } @@ -47253,16 +46679,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "64436:3:32" + "src": "64012:3:32" }, "nodeType": "YulFunctionCall", - "src": "64436:18:32" + "src": "64012:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "64428:4:32" + "src": "64004:4:32" } ] } @@ -47274,7 +46700,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "64282:9:32", + "src": "63858:9:32", "type": "" } ], @@ -47282,16 +46708,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "64296:4:32", + "src": "63872:4:32", "type": "" } ], - "src": "64131:329:32" + "src": "63707:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "64639:155:32", + "src": "64215:155:32", "statements": [ { "expression": { @@ -47299,12 +46725,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "64656:9:32" + "src": "64232:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "64667:2:32", + "src": "64243:2:32", "type": "", "value": "32" } @@ -47312,13 +46738,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "64649:6:32" + "src": "64225:6:32" }, "nodeType": "YulFunctionCall", - "src": "64649:21:32" + "src": "64225:21:32" }, "nodeType": "YulExpressionStatement", - "src": "64649:21:32" + "src": "64225:21:32" }, { "expression": { @@ -47328,12 +46754,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "64690:9:32" + "src": "64266:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "64701:2:32", + "src": "64277:2:32", "type": "", "value": "32" } @@ -47341,15 +46767,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "64686:3:32" + "src": "64262:3:32" }, "nodeType": "YulFunctionCall", - "src": "64686:18:32" + "src": "64262:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "64706:1:32", + "src": "64282:1:32", "type": "", "value": "6" } @@ -47357,13 +46783,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "64679:6:32" + "src": "64255:6:32" }, "nodeType": "YulFunctionCall", - "src": "64679:29:32" + "src": "64255:29:32" }, "nodeType": "YulExpressionStatement", - "src": "64679:29:32" + "src": "64255:29:32" }, { "expression": { @@ -47373,12 +46799,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "64728:9:32" + "src": "64304:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "64739:2:32", + "src": "64315:2:32", "type": "", "value": "64" } @@ -47386,16 +46812,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "64724:3:32" + "src": "64300:3:32" }, "nodeType": "YulFunctionCall", - "src": "64724:18:32" + "src": "64300:18:32" }, { "hexValue": "4c4243303734", "kind": "string", "nodeType": "YulLiteral", - "src": "64744:8:32", + "src": "64320:8:32", "type": "", "value": "LBC074" } @@ -47403,28 +46829,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "64717:6:32" + "src": "64293:6:32" }, "nodeType": "YulFunctionCall", - "src": "64717:36:32" + "src": "64293:36:32" }, "nodeType": "YulExpressionStatement", - "src": "64717:36:32" + "src": "64293:36:32" }, { "nodeType": "YulAssignment", - "src": "64762:26:32", + "src": "64338:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "64774:9:32" + "src": "64350:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "64785:2:32", + "src": "64361:2:32", "type": "", "value": "96" } @@ -47432,16 +46858,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "64770:3:32" + "src": "64346:3:32" }, "nodeType": "YulFunctionCall", - "src": "64770:18:32" + "src": "64346:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "64762:4:32" + "src": "64338:4:32" } ] } @@ -47453,7 +46879,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "64616:9:32", + "src": "64192:9:32", "type": "" } ], @@ -47461,16 +46887,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "64630:4:32", + "src": "64206:4:32", "type": "" } ], - "src": "64465:329:32" + "src": "64041:329:32" }, { "body": { "nodeType": "YulBlock", - "src": "64973:182:32", + "src": "64549:182:32", "statements": [ { "expression": { @@ -47478,12 +46904,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "64990:9:32" + "src": "64566:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "65001:2:32", + "src": "64577:2:32", "type": "", "value": "32" } @@ -47491,13 +46917,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "64983:6:32" + "src": "64559:6:32" }, "nodeType": "YulFunctionCall", - "src": "64983:21:32" + "src": "64559:21:32" }, "nodeType": "YulExpressionStatement", - "src": "64983:21:32" + "src": "64559:21:32" }, { "expression": { @@ -47507,12 +46933,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "65024:9:32" + "src": "64600:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "65035:2:32", + "src": "64611:2:32", "type": "", "value": "32" } @@ -47520,15 +46946,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "65020:3:32" + "src": "64596:3:32" }, "nodeType": "YulFunctionCall", - "src": "65020:18:32" + "src": "64596:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "65040:2:32", + "src": "64616:2:32", "type": "", "value": "32" } @@ -47536,13 +46962,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "65013:6:32" + "src": "64589:6:32" }, "nodeType": "YulFunctionCall", - "src": "65013:30:32" + "src": "64589:30:32" }, "nodeType": "YulExpressionStatement", - "src": "65013:30:32" + "src": "64589:30:32" }, { "expression": { @@ -47552,12 +46978,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "65063:9:32" + "src": "64639:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "65074:2:32", + "src": "64650:2:32", "type": "", "value": "64" } @@ -47565,16 +46991,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "65059:3:32" + "src": "64635:3:32" }, "nodeType": "YulFunctionCall", - "src": "65059:18:32" + "src": "64635:18:32" }, { "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", "kind": "string", "nodeType": "YulLiteral", - "src": "65079:34:32", + "src": "64655:34:32", "type": "", "value": "Ownable: caller is not the owner" } @@ -47582,28 +47008,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "65052:6:32" + "src": "64628:6:32" }, "nodeType": "YulFunctionCall", - "src": "65052:62:32" + "src": "64628:62:32" }, "nodeType": "YulExpressionStatement", - "src": "65052:62:32" + "src": "64628:62:32" }, { "nodeType": "YulAssignment", - "src": "65123:26:32", + "src": "64699:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "65135:9:32" + "src": "64711:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "65146:2:32", + "src": "64722:2:32", "type": "", "value": "96" } @@ -47611,16 +47037,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "65131:3:32" + "src": "64707:3:32" }, "nodeType": "YulFunctionCall", - "src": "65131:18:32" + "src": "64707:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "65123:4:32" + "src": "64699:4:32" } ] } @@ -47632,7 +47058,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "64950:9:32", + "src": "64526:9:32", "type": "" } ], @@ -47640,16 +47066,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "64964:4:32", + "src": "64540:4:32", "type": "" } ], - "src": "64799:356:32" + "src": "64375:356:32" }, { "body": { "nodeType": "YulBlock", - "src": "65334:155:32", + "src": "64910:155:32", "statements": [ { "expression": { @@ -47657,12 +47083,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "65351:9:32" + "src": "64927:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "65362:2:32", + "src": "64938:2:32", "type": "", "value": "32" } @@ -47670,13 +47096,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "65344:6:32" + "src": "64920:6:32" }, "nodeType": "YulFunctionCall", - "src": "65344:21:32" + "src": "64920:21:32" }, "nodeType": "YulExpressionStatement", - "src": "65344:21:32" + "src": "64920:21:32" }, { "expression": { @@ -47686,12 +47112,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "65385:9:32" + "src": "64961:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "65396:2:32", + "src": "64972:2:32", "type": "", "value": "32" } @@ -47699,15 +47125,15 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "65381:3:32" + "src": "64957:3:32" }, "nodeType": "YulFunctionCall", - "src": "65381:18:32" + "src": "64957:18:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "65401:1:32", + "src": "64977:1:32", "type": "", "value": "6" } @@ -47715,13 +47141,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "65374:6:32" + "src": "64950:6:32" }, "nodeType": "YulFunctionCall", - "src": "65374:29:32" + "src": "64950:29:32" }, "nodeType": "YulExpressionStatement", - "src": "65374:29:32" + "src": "64950:29:32" }, { "expression": { @@ -47731,12 +47157,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "65423:9:32" + "src": "64999:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "65434:2:32", + "src": "65010:2:32", "type": "", "value": "64" } @@ -47744,16 +47170,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "65419:3:32" + "src": "64995:3:32" }, "nodeType": "YulFunctionCall", - "src": "65419:18:32" + "src": "64995:18:32" }, { "hexValue": "4c4243303539", "kind": "string", "nodeType": "YulLiteral", - "src": "65439:8:32", + "src": "65015:8:32", "type": "", "value": "LBC059" } @@ -47761,28 +47187,28 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "65412:6:32" + "src": "64988:6:32" }, "nodeType": "YulFunctionCall", - "src": "65412:36:32" + "src": "64988:36:32" }, "nodeType": "YulExpressionStatement", - "src": "65412:36:32" + "src": "64988:36:32" }, { "nodeType": "YulAssignment", - "src": "65457:26:32", + "src": "65033:26:32", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "65469:9:32" + "src": "65045:9:32" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "65480:2:32", + "src": "65056:2:32", "type": "", "value": "96" } @@ -47790,16 +47216,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "65465:3:32" + "src": "65041:3:32" }, "nodeType": "YulFunctionCall", - "src": "65465:18:32" + "src": "65041:18:32" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "65457:4:32" + "src": "65033:4:32" } ] } @@ -47811,7 +47237,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "65311:9:32", + "src": "64887:9:32", "type": "" } ], @@ -47819,32 +47245,32 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "65325:4:32", + "src": "64901:4:32", "type": "" } ], - "src": "65160:329:32" + "src": "64736:329:32" } ] }, - "contents": "{\n { }\n function abi_encode_tuple_t_stringliteral_a23daf30bd1e42cc69e3bea751166702f08d640860ab6f4c84d6bacb970360da__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC007\")\n tail := add(headStart, 96)\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function allocate_memory_8784() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0260)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory_8785() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0280)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory_8789() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x80)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory(size) -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(size, 31), not(31)))\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function array_allocation_size_string(length) -> size\n {\n if gt(length, sub(shl(64, 1), 1)) { panic_error_0x41() }\n size := add(and(add(length, 31), not(31)), 0x20)\n }\n function abi_decode_string(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let array_1 := allocate_memory(array_allocation_size_string(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(array_1, 0x20), add(offset, 0x20), _1)\n mstore(add(add(array_1, _1), 0x20), 0)\n array := array_1\n }\n function abi_decode_tuple_t_string_memory_ptrt_string_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_string(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset_1), dataEnd)\n }\n function abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xff))\n }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function validator_revert_address(value)\n {\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n validator_revert_address(value)\n }\n function abi_decode_int64(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, signextend(7, value))) { revert(0, 0) }\n }\n function abi_decode_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_uint16(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n }\n function abi_decode_struct_PegOutQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0260) { revert(0, 0) }\n value := allocate_memory_8784()\n mstore(value, abi_decode_address(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n let offset := calldataload(add(headStart, 64))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 64), abi_decode_string(add(headStart, offset), end))\n mstore(add(value, 96), abi_decode_address(add(headStart, 96)))\n let offset_1 := calldataload(add(headStart, 128))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 128), abi_decode_string(add(headStart, offset_1), end))\n mstore(add(value, 160), calldataload(add(headStart, 160)))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), abi_decode_int64(add(headStart, 224)))\n let _2 := 256\n let offset_2 := calldataload(add(headStart, _2))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _2), abi_decode_string(add(headStart, offset_2), end))\n let _3 := 288\n mstore(add(value, _3), calldataload(add(headStart, _3)))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_uint32(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), abi_decode_uint16(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint16(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint32(add(headStart, _10)))\n let _11 := 544\n mstore(add(value, _11), calldataload(add(headStart, _11)))\n let _12 := 576\n mstore(add(value, _12), calldataload(add(headStart, _12)))\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$10638_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PegOutQuote(add(headStart, offset), dataEnd)\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_bytes20(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, not(sub(shl(96, 1), 1))))) { revert(0, 0) }\n }\n function validator_revert_bool(value)\n {\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n validator_revert_bool(value)\n }\n function abi_decode_struct_PeginQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0280) { revert(0, 0) }\n value := allocate_memory_8785()\n mstore(value, abi_decode_bytes20(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n mstore(add(value, 64), abi_decode_address(add(headStart, 64)))\n let offset := calldataload(add(headStart, 96))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 96), abi_decode_string(add(headStart, offset), end))\n mstore(add(value, 128), abi_decode_address(add(headStart, 128)))\n let offset_1 := calldataload(add(headStart, 160))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 160), abi_decode_string(add(headStart, offset_1), end))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), calldataload(add(headStart, 224)))\n let _2 := 256\n mstore(add(value, _2), abi_decode_address(add(headStart, _2)))\n let _3 := 288\n let offset_2 := calldataload(add(headStart, _3))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_string(add(headStart, offset_2), end))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_int64(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), calldataload(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint32(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint16(add(headStart, _10)))\n let _11 := 544\n mstore(add(value, _11), abi_decode_bool(add(headStart, _11)))\n let _12 := 576\n mstore(add(value, _12), calldataload(add(headStart, _12)))\n let _13 := 608\n mstore(add(value, _13), calldataload(add(headStart, _13)))\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10599_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset_1), dataEnd)\n let offset_2 := calldataload(add(headStart, 64))\n if gt(offset_2, _1) { revert(0, 0) }\n value2 := abi_decode_string(add(headStart, offset_2), dataEnd)\n let offset_3 := calldataload(add(headStart, 96))\n if gt(offset_3, _1) { revert(0, 0) }\n value3 := abi_decode_string(add(headStart, offset_3), dataEnd)\n value4 := calldataload(add(headStart, 128))\n }\n function abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function abi_decode_tuple_t_string_memory_ptrt_string_memory_ptrt_boolt_string_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_string(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset_1), dataEnd)\n let value := calldataload(add(headStart, 64))\n validator_revert_bool(value)\n value2 := value\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n value3 := abi_decode_string(add(headStart, offset_2), dataEnd)\n }\n function abi_encode_tuple_t_int16__to_t_int16__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, signextend(1, value0))\n }\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_encode_bool(value, pos)\n {\n mstore(pos, iszero(iszero(value)))\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function array_allocation_size_array_uint256_dyn(length) -> size\n {\n if gt(length, sub(shl(64, 1), 1)) { panic_error_0x41() }\n size := add(shl(5, length), 0x20)\n }\n function abi_decode_tuple_t_array$_t_uint256_$dyn_memory_ptr(headStart, dataEnd) -> value0\n {\n let _1 := 32\n if slt(sub(dataEnd, headStart), _1) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if iszero(slt(add(_2, 0x1f), dataEnd)) { revert(0, 0) }\n let _3 := calldataload(_2)\n let dst := allocate_memory(array_allocation_size_array_uint256_dyn(_3))\n let dst_1 := dst\n mstore(dst, _3)\n dst := add(dst, _1)\n let srcEnd := add(add(_2, shl(5, _3)), _1)\n if gt(srcEnd, dataEnd) { revert(0, 0) }\n let src := add(_2, _1)\n for { } lt(src, srcEnd) { src := add(src, _1) }\n {\n mstore(dst, calldataload(src))\n dst := add(dst, _1)\n }\n value0 := dst_1\n }\n function abi_encode_address(value, pos)\n {\n mstore(pos, and(value, sub(shl(160, 1), 1)))\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_encode_string(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_array$_t_struct$_LiquidityProvider_$7500_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_LiquidityProvider_$7500_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n let tail_1 := add(headStart, _1)\n mstore(headStart, _1)\n let pos := tail_1\n let length := mload(value0)\n mstore(tail_1, length)\n let _2 := 64\n pos := add(headStart, _2)\n let tail_2 := add(add(headStart, shl(5, length)), _2)\n let srcPtr := add(value0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), not(63)))\n let _3 := mload(srcPtr)\n let _4 := 0xc0\n mstore(tail_2, mload(_3))\n mstore(add(tail_2, _1), and(mload(add(_3, _1)), sub(shl(160, 1), 1)))\n let memberValue0 := mload(add(_3, _2))\n mstore(add(tail_2, _2), _4)\n let tail_3 := abi_encode_string(memberValue0, add(tail_2, _4))\n let _5 := 0x60\n let memberValue0_1 := mload(add(_3, _5))\n mstore(add(tail_2, _5), sub(tail_3, tail_2))\n let tail_4 := abi_encode_string(memberValue0_1, tail_3)\n let _6 := 0x80\n mstore(add(tail_2, _6), iszero(iszero(mload(add(_3, _6)))))\n let _7 := 0xa0\n let memberValue0_2 := mload(add(_3, _7))\n mstore(add(tail_2, _7), sub(tail_4, tail_2))\n tail_2 := abi_encode_string(memberValue0_2, tail_4)\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n }\n function abi_decode_tuple_t_uint256t_bool(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := calldataload(headStart)\n let value := calldataload(add(headStart, 32))\n validator_revert_bool(value)\n value1 := value\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10599_memory_ptrt_bytes_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset_1), dataEnd)\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10599_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$10638_memory_ptrt_bytes_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PegOutQuote(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset_1), dataEnd)\n }\n function abi_encode_uint16(value, pos)\n {\n mstore(pos, and(value, 0xffff))\n }\n function abi_encode_tuple_t_uint16__to_t_uint16__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffff))\n }\n function abi_decode_tuple_t_bytes32t_bytes_memory_ptrt_bytes32t_uint256t_array$_t_bytes32_$dyn_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n value0 := calldataload(headStart)\n let _1 := 32\n let offset := calldataload(add(headStart, _1))\n let _2 := sub(shl(64, 1), 1)\n if gt(offset, _2) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset), dataEnd)\n value2 := calldataload(add(headStart, 64))\n value3 := calldataload(add(headStart, 96))\n let offset_1 := calldataload(add(headStart, 128))\n if gt(offset_1, _2) { revert(0, 0) }\n let _3 := add(headStart, offset_1)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := calldataload(_3)\n let dst := allocate_memory(array_allocation_size_array_uint256_dyn(_4))\n let dst_1 := dst\n mstore(dst, _4)\n dst := add(dst, _1)\n let srcEnd := add(add(_3, shl(5, _4)), _1)\n if gt(srcEnd, dataEnd) { revert(0, 0) }\n let src := add(_3, _1)\n for { } lt(src, srcEnd) { src := add(src, _1) }\n {\n mstore(dst, calldataload(src))\n dst := add(dst, _1)\n }\n value4 := dst_1\n }\n function abi_encode_tuple_t_contract$_Bridge_$3652__to_t_address_payable__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n }\n function abi_encode_tuple_t_stringliteral_686eb4b4538782c6c5d7601cff771332305044e1e5a85d59133150cea60acf31__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC076\")\n tail := add(headStart, 96)\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), not(0)))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function abi_encode_string_storage(value, pos) -> ret\n {\n let slotValue := sload(value)\n let length := extract_byte_array_length(slotValue)\n mstore(pos, length)\n let _1 := 0x20\n let _2 := 1\n switch and(slotValue, _2)\n case 0 {\n mstore(add(pos, _1), and(slotValue, not(255)))\n ret := add(add(pos, shl(5, iszero(iszero(length)))), _1)\n }\n case 1 {\n mstore(0, value)\n let dataPos := keccak256(0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, _1) }\n {\n mstore(add(add(pos, i), _1), sload(dataPos))\n dataPos := add(dataPos, _2)\n }\n ret := add(add(pos, i), _1)\n }\n }\n function abi_encode_tuple_t_string_storage_t_string_storage__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n let tail_1 := abi_encode_string_storage(value0, add(headStart, 64))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_string_storage(value1, tail_1)\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, not(0)) { panic_error_0x11() }\n ret := add(value, 1)\n }\n function abi_encode_tuple_t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC001\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC028\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_address_t_bytes32_t_bytes_memory_ptr__to_t_address_t_bytes32_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), 96)\n tail := abi_encode_string(value2, add(headStart, 96))\n }\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_bool(value)\n value0 := value\n }\n function abi_encode_tuple_t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC029\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_6b987c2142a6ed89e76021f4d9a60f3cbfc2f7110bd81bc33ff58ad7cf27befa__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC030\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b9f5a33cea5e5738277827f2f81faa92d1d3c73cf030e2542a7b80c6f7bdc8a7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC031\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5d8d108d93a53583cf1949d2287cc7f0af5603bd102faf9db90e7e6bbc90ade8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC032\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_e976d8a3febca36c67dcd5b38ae845ffd2f248a24eaf2d7a97f208ffd80ff125__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC033\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_745436b16371784f7b451bf4bed6f0978e2f007f74e71dfa0c49414b3a522759__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC034\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_37570ea73114ff69cb8aab9e09d6f5beb11b36ce1a2ae19ee6f5de28dc42d754__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC035\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5ccb4449252c316623411606962515c0966208bcce5fe352c2e850b058d1077c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC036\")\n tail := add(headStart, 96)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_address_t_uint256_t_bytes32__to_t_address_t_uint256_t_bytes32__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n tail := add(headStart, 96)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), value2)\n }\n function checked_mul_t_uint256(x, y) -> product\n {\n product := mul(x, y)\n if iszero(or(iszero(x), eq(y, div(product, x)))) { panic_error_0x11() }\n }\n function panic_error_0x12()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n function checked_div_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := div(x, y)\n }\n function abi_encode_tuple_t_bytes32_t_int256__to_t_bytes32_t_int256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_bytes20(value, pos)\n {\n mstore(pos, and(value, not(sub(shl(96, 1), 1))))\n }\n function abi_encode_uint32(value, pos)\n {\n mstore(pos, and(value, 0xffffffff))\n }\n function abi_encode_int64(value, pos)\n {\n mstore(pos, signextend(7, value))\n }\n function abi_encode_struct_PeginQuote(value, pos) -> end\n {\n let _1 := 0x0280\n abi_encode_bytes20(mload(value), pos)\n let memberValue0 := mload(add(value, 0x20))\n abi_encode_address(memberValue0, add(pos, 0x20))\n let memberValue0_1 := mload(add(value, 0x40))\n abi_encode_address(memberValue0_1, add(pos, 0x40))\n let memberValue0_2 := mload(add(value, 0x60))\n mstore(add(pos, 0x60), _1)\n let tail := abi_encode_string(memberValue0_2, add(pos, _1))\n let memberValue0_3 := mload(add(value, 0x80))\n abi_encode_address(memberValue0_3, add(pos, 0x80))\n let memberValue0_4 := mload(add(value, 0xa0))\n mstore(add(pos, 0xa0), sub(tail, pos))\n let tail_1 := abi_encode_string(memberValue0_4, tail)\n mstore(add(pos, 0xc0), mload(add(value, 0xc0)))\n mstore(add(pos, 0xe0), mload(add(value, 0xe0)))\n let _2 := 0x0100\n let memberValue0_5 := mload(add(value, _2))\n abi_encode_address(memberValue0_5, add(pos, _2))\n let _3 := 0x0120\n let memberValue0_6 := mload(add(value, _3))\n mstore(add(pos, _3), sub(tail_1, pos))\n let tail_2 := abi_encode_string(memberValue0_6, tail_1)\n let _4 := 0x0140\n let memberValue0_7 := mload(add(value, _4))\n abi_encode_uint32(memberValue0_7, add(pos, _4))\n let _5 := 0x0160\n let memberValue0_8 := mload(add(value, _5))\n abi_encode_int64(memberValue0_8, add(pos, _5))\n let _6 := 0x0180\n mstore(add(pos, _6), mload(add(value, _6)))\n let _7 := 0x01a0\n let memberValue0_9 := mload(add(value, _7))\n abi_encode_uint32(memberValue0_9, add(pos, _7))\n let _8 := 0x01c0\n let memberValue0_10 := mload(add(value, _8))\n abi_encode_uint32(memberValue0_10, add(pos, _8))\n let _9 := 0x01e0\n let memberValue0_11 := mload(add(value, _9))\n abi_encode_uint32(memberValue0_11, add(pos, _9))\n let _10 := 0x0200\n let memberValue0_12 := mload(add(value, _10))\n abi_encode_uint16(memberValue0_12, add(pos, _10))\n let _11 := 0x0220\n let memberValue0_13 := mload(add(value, _11))\n abi_encode_bool(memberValue0_13, add(pos, _11))\n let _12 := 0x0240\n mstore(add(pos, _12), mload(add(value, _12)))\n let _13 := 0x0260\n mstore(add(pos, _13), mload(add(value, _13)))\n end := tail_2\n }\n function abi_encode_tuple_t_struct$_PeginQuote_$10599_memory_ptr_t_uint256__to_t_struct$_PeginQuote_$10599_memory_ptr_t_uint256__fromStack_library_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n tail := abi_encode_struct_PeginQuote(value0, add(headStart, 64))\n mstore(add(headStart, 32), value1)\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function abi_encode_tuple_packed_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n { end := pos }\n function abi_encode_tuple_t_address_payable_t_uint256_t_bool_t_bytes32__to_t_address_t_uint256_t_bool_t_bytes32__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 128)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), iszero(iszero(value2)))\n mstore(add(headStart, 96), value3)\n }\n function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function abi_encode_tuple_t_uint32_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__to_t_uint256_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__fromStack_reversed(headStart, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, and(value0, 0xffffffff))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), 160)\n tail := abi_encode_string(value2, add(headStart, 160))\n mstore(add(headStart, 96), iszero(iszero(value3)))\n mstore(add(headStart, 128), value4)\n }\n function abi_encode_tuple_t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC019\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC020\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_stringliteral_7e21a7b13292bf184f2fc166cca229506aa89a730258f15cdce6a2f8dc225415__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC003\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b91014d5c812b217b1f7abf06d04044851a14f3d4efa9b6795d3964c23897cc9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC010\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_849663c0a27b21987cfc03f3233af0a7a46b23f0af09d39a18720d9610bcba81__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC017\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"pegin\")\n end := add(pos, 5)\n }\n function abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function abi_encode_tuple_packed_t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"pegout\")\n end := add(pos, 6)\n }\n function abi_encode_tuple_packed_t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"both\")\n end := add(pos, 4)\n }\n function abi_encode_tuple_t_stringliteral_c8a2f96b1c149a2cda2dda6db9bbdafbecddac69bce104e31ad4dd14842e4820__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC018\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_a80fe4c2764b7c4b52829ebb2b1bb3117b2b8ffa6a6401dbe00248ec851a73a8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC070\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_f838e22b544c153329abcc9856d1b1f7e7f6c83118dc13d7a0606e65edb3cdd8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC009\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC008\")\n tail := add(headStart, 96)\n }\n function mod_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := mod(x, y)\n }\n function abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_stringliteral_ccfdeeda37cff52b8b53c7f459ead001a00858d8cd279133dc1e599c6257c485__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC021\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ae5a5bd2536c79a56736074670f517df1b8a17deb822b59dfa1648888074b4cc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC022\")\n tail := add(headStart, 96)\n }\n function panic_error_0x32()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_stringliteral_1e153c8413fa71b1dc88c42214ae3211e20bbd7d323adc3a7cb82fb90c05d672__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC023\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_0a36b25bf1b768acf545d4a7d22e9fceeba3414a7a19dc34973fc2e1be01a831__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC005\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__to_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value3, value2, value1, value0) -> end\n {\n mstore(pos, value0)\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 32), add(pos, 32), length)\n let _1 := add(pos, length)\n mstore(add(_1, 32), and(value2, not(sub(shl(96, 1), 1))))\n let length_1 := mload(value3)\n copy_memory_to_memory_with_cleanup(add(value3, 32), add(_1, 52), length_1)\n end := add(add(_1, length_1), 52)\n }\n function abi_decode_bytes_fromMemory(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := mload(offset)\n let array_1 := allocate_memory(array_allocation_size_string(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n copy_memory_to_memory_with_cleanup(add(offset, 0x20), add(array_1, 0x20), _1)\n array := array_1\n }\n function abi_decode_tuple_t_bytes_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := mload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_bytes_fromMemory(add(headStart, offset), dataEnd)\n }\n function abi_encode_tuple_packed_t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a_t_bytes32_t_stringliteral_32cefdcd8e794145c9af8dd1f4b1fbd92d6e547ae855553080fc8bd19c4883a0_t_bytes_memory_ptr__to_t_bytes1_t_bytes32_t_bytes1_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, \" \")\n mstore(add(pos, 1), value0)\n mstore(add(pos, 33), \"u\")\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 0x20), add(pos, 34), length)\n end := add(add(pos, length), 34)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__fromStack_library_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, 96)\n let tail_1 := abi_encode_string(value0, add(headStart, 96))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_string(value1, tail_1)\n mstore(add(headStart, 64), iszero(iszero(value2)))\n }\n function abi_encode_tuple_t_stringliteral_9c6c58d5603e5b2aab0d13c183f0136466f0ce13826630d90e079bf910078715__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC024\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ceda09d74f8a59745bfad5393e75482469dc6db77c24fde6f52df4409a3f744c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC025\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint32(x, y) -> sum\n {\n let _1 := 0xffffffff\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_2d63cc93f65e3c34ca5cba24271c3d6869155fb2ffc83f083d82378f26d56cb0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC026\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5a937cad92792f08abdaf15eed65a070909c29d924f856ec65923c138fd39a48__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC027\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ecc75ee801269ba7670799af84ad7f1d968d59315783a708807424c72ec63d04__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC037\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_0267b5bcac1113eea8a4dc81e170e6fe59336df7f2c6a4d2ae7ad240f894a2f9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC063\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_39eacc26aa588693c014f46e6dd86f6cac22eb3287098210ddf746f1a6af8214__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC065\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_c8999eb883ba6531127283b89d3773d87761ac547946da55d1f52c5931d8838f__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC046\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b400745c4fd650850c2059b2d13f12980ca63b7ccd87c008204992f11af559c2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC047\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC064\")\n tail := add(headStart, 96)\n }\n function copy_byte_array_to_storage_from_t_bytes_memory_ptr_to_t_bytes_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function abi_encode_tuple_t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC042\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_476e33256b298fee7fc3dab0c339427caa3a9a4a44654f7f02b328083d44ca74__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC041\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, sub(shl(160, 1), 1)))\n }\n function abi_encode_tuple_t_stringliteral_0a7ff570d31f7e351d06bf5b8d0ef26a9275a9d32a7dffd7981a6c6ac58227c6__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC044\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_string(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n let _1 := 32\n if slt(sub(dataEnd, headStart), _1) { revert(0, 0) }\n let offset := mload(headStart)\n let _2 := sub(shl(64, 1), 1)\n if gt(offset, _2) { revert(0, 0) }\n let _3 := add(headStart, offset)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := mload(_3)\n let dst := allocate_memory(array_allocation_size_array_uint256_dyn(_4))\n let dst_1 := dst\n mstore(dst, _4)\n dst := add(dst, _1)\n let srcEnd := add(add(_3, shl(5, _4)), _1)\n if gt(srcEnd, dataEnd) { revert(0, 0) }\n let src := add(_3, _1)\n for { } lt(src, srcEnd) { src := add(src, _1) }\n {\n let innerOffset := mload(src)\n if gt(innerOffset, _2)\n {\n let _5 := 0\n revert(_5, _5)\n }\n let _6 := add(_3, innerOffset)\n let _7 := 0x80\n if slt(add(sub(dataEnd, _6), not(31)), _7)\n {\n let _8 := 0\n revert(_8, _8)\n }\n let value := allocate_memory_8789()\n let value_1 := mload(add(_6, _1))\n if iszero(eq(value_1, and(value_1, _2)))\n {\n let _9 := 0\n revert(_9, _9)\n }\n mstore(value, value_1)\n let _10 := 64\n let offset_1 := mload(add(_6, _10))\n if gt(offset_1, _2)\n {\n let _11 := 0\n revert(_11, _11)\n }\n mstore(add(value, _1), abi_decode_bytes_fromMemory(add(add(_6, offset_1), _1), dataEnd))\n let _12 := 96\n mstore(add(value, _10), mload(add(_6, _12)))\n mstore(add(value, _12), mload(add(_6, _7)))\n mstore(dst, value)\n dst := add(dst, _1)\n }\n value0 := dst_1\n }\n function abi_encode_tuple_t_stringliteral_d0a12d6767c9352a89748f00976b0ffc4b9ff4b643d9cc1082f2df3b625d402a__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC075\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint8(x, y) -> sum\n {\n sum := add(and(x, 0xff), and(y, 0xff))\n if gt(sum, 0xff) { panic_error_0x11() }\n }\n function increment_t_uint8(value) -> ret\n {\n let value_1 := and(value, 0xff)\n if eq(value_1, 0xff) { panic_error_0x11() }\n ret := add(value_1, 1)\n }\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_5cf5f7c75a2357c5697933702fe9f20c432f8f5205def7bf18572d390cea5cc1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC069\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3c14ff4570332247d29826742fdf7f014a86ddbee2c49b0252a79ef49351f196__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC048\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__to_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n let tail_1 := add(headStart, 128)\n mstore(headStart, value0)\n let _1 := 32\n mstore(add(headStart, _1), value1)\n mstore(add(headStart, 64), value2)\n mstore(add(headStart, 96), 128)\n let pos := tail_1\n let length := mload(value3)\n mstore(tail_1, length)\n pos := add(headStart, 160)\n let srcPtr := add(value3, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, mload(srcPtr))\n pos := add(pos, _1)\n srcPtr := add(srcPtr, _1)\n }\n tail := pos\n }\n function abi_decode_tuple_t_int256_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_41cc9877d5a72c2a0ef0c602e024ddc86a1f279ef7306bab75dd3c5447ffb6e0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC049\")\n tail := add(headStart, 96)\n }\n function checked_mul_t_uint64(x, y) -> product\n {\n let _1 := sub(shl(64, 1), 1)\n let product_raw := mul(and(x, _1), and(y, _1))\n product := and(product_raw, _1)\n if iszero(eq(product, product_raw)) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_94643b69f05d64f660a022cd48046be494c1ed271b5d9ae602f6fdadc77976be__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC067\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bool__fromStack_library_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n tail := abi_encode_string(value0, add(headStart, 64))\n mstore(add(headStart, 32), iszero(iszero(value1)))\n }\n function abi_encode_tuple_packed_t_bytes_storage__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let ret := 0\n let slotValue := sload(value0)\n let length := extract_byte_array_length(slotValue)\n let _1 := 1\n switch and(slotValue, _1)\n case 0 {\n mstore(pos, and(slotValue, not(255)))\n ret := add(pos, mul(length, iszero(iszero(length))))\n }\n case 1 {\n mstore(0, value0)\n let _2 := 0x20\n let dataPos := keccak256(0, _2)\n let i := 0\n for { } lt(i, length) { i := add(i, _2) }\n {\n mstore(add(pos, i), sload(dataPos))\n dataPos := add(dataPos, _1)\n }\n ret := add(pos, length)\n }\n end := ret\n }\n function abi_encode_tuple_t_stringliteral_7cd3d68dd2419ceccbacf2f69bda9c4c2f3bdb0c0535db4bbef90be788c8f7de__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC068\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3dcf1159943f9eee729b997e5df9acd0f1771321696b1fb47efa6e54bee2f352__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC050\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"Ownable: new owner is the zero a\")\n mstore(add(headStart, 96), \"ddress\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_5004352c178489e456f74ee0937a3403e68ee3fa72f6afa5bff20fe549075132__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC056\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_struct$_PegOutQuote_$10638_memory_ptr__to_t_struct$_PegOutQuote_$10638_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n abi_encode_address(mload(value0), add(headStart, 32))\n let memberValue0 := mload(add(value0, 32))\n abi_encode_address(memberValue0, add(headStart, 64))\n let memberValue0_1 := mload(add(value0, 64))\n let _1 := 0x0260\n mstore(add(headStart, 96), _1)\n let tail_1 := abi_encode_string(memberValue0_1, add(headStart, 640))\n let memberValue0_2 := mload(add(value0, 96))\n abi_encode_address(memberValue0_2, add(headStart, 128))\n let memberValue0_3 := mload(add(value0, 128))\n let _2 := not(31)\n mstore(add(headStart, 160), add(sub(tail_1, headStart), _2))\n let tail_2 := abi_encode_string(memberValue0_3, tail_1)\n mstore(add(headStart, 192), mload(add(value0, 160)))\n mstore(add(headStart, 224), mload(add(value0, 192)))\n let memberValue0_4 := mload(add(value0, 224))\n let _3 := 256\n abi_encode_int64(memberValue0_4, add(headStart, _3))\n let memberValue0_5 := mload(add(value0, _3))\n let _4 := 288\n mstore(add(headStart, _4), add(sub(tail_2, headStart), _2))\n let tail_3 := abi_encode_string(memberValue0_5, tail_2)\n let _5 := mload(add(value0, _4))\n let _6 := 320\n mstore(add(headStart, _6), _5)\n let memberValue0_6 := mload(add(value0, _6))\n let _7 := 352\n abi_encode_uint32(memberValue0_6, add(headStart, _7))\n let memberValue0_7 := mload(add(value0, _7))\n let _8 := 384\n abi_encode_uint32(memberValue0_7, add(headStart, _8))\n let memberValue0_8 := mload(add(value0, _8))\n let _9 := 416\n abi_encode_uint16(memberValue0_8, add(headStart, _9))\n let memberValue0_9 := mload(add(value0, _9))\n let _10 := 448\n abi_encode_uint16(memberValue0_9, add(headStart, _10))\n let memberValue0_10 := mload(add(value0, _10))\n let _11 := 480\n abi_encode_uint32(memberValue0_10, add(headStart, _11))\n let memberValue0_11 := mload(add(value0, _11))\n let _12 := 512\n abi_encode_uint32(memberValue0_11, add(headStart, _12))\n let memberValue0_12 := mload(add(value0, _12))\n let _13 := 544\n abi_encode_uint32(memberValue0_12, add(headStart, _13))\n let _14 := mload(add(value0, _13))\n let _15 := 576\n mstore(add(headStart, _15), _14)\n mstore(add(headStart, _1), mload(add(value0, _15)))\n tail := tail_3\n }\n function abi_encode_tuple_t_stringliteral_ebf73bba305590e4764d5cb53b69bffd6d4d092d1a67551cb346f8cfcdab8619__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 31)\n mstore(add(headStart, 64), \"ReentrancyGuard: reentrant call\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ed7029e52dbf10ed9f0aafb2c33265c713a3f4dfd10cc113f22ba3c1270e1ddb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC051\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_a1a398356814e2eac3017ce127db7657cbb8e2f1d90a78bc426eaa92c56969eb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC052\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_923b965409721a83cf4ae76f34fa52de6eb09679d5b7141d2c0fc518a94192db__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC053\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_472231c5f3abacc190b5fd56153fbfc4b6c39c18040d443b29faee14791d54d9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC054\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_1bdc71792e300c3b19739ad62e7651b4b49de502b7d1b6227970563bffaad71e__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC055\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint64(x, y) -> sum\n {\n let _1 := sub(shl(64, 1), 1)\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_79d3c6c4bda42d819072ed97d83e6147bd9ad75bd5415529ecb6a41984271fb2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC071\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_struct$_PeginQuote_$10599_memory_ptr__to_t_struct$_PeginQuote_$10599_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_struct_PeginQuote(value0, add(headStart, 32))\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__fromStack_reversed(headStart, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 256\n mstore(headStart, _1)\n let tail_1 := abi_encode_string(value0, add(headStart, _1))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string(value2, tail_1)\n mstore(add(headStart, 96), value3)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n let tail_3 := abi_encode_string(value4, tail_2)\n mstore(add(headStart, 160), and(value5, sub(shl(160, 1), 1)))\n mstore(add(headStart, 192), sub(tail_3, headStart))\n tail := abi_encode_string(value6, tail_3)\n mstore(add(headStart, 224), iszero(iszero(value7)))\n }\n function abi_encode_tuple_t_stringliteral_b13cbe420d932534b4c4c376e19a45f25e0ca05c6f1a458489ccb0574b26a6d9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 20)\n mstore(add(headStart, 64), \"Invalid block height\")\n tail := add(headStart, 96)\n }\n function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_bac19bb4c4dce4ec87196bdccebfa1c4310f60332f1259cdc0bb93303ee1c2a0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC058\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_e9fc4e098febe7043f1662405d88fa2495f2ac8d8f35918e247815b713cfd00a__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC074\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Ownable: caller is not the owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_319f398ccb7cc8c2c2304e07f301f618437c863aa2ff561ced1eaa40fcd3df63__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC059\")\n tail := add(headStart, 96)\n }\n}", + "contents": "{\n { }\n function abi_encode_tuple_t_stringliteral_a23daf30bd1e42cc69e3bea751166702f08d640860ab6f4c84d6bacb970360da__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC007\")\n tail := add(headStart, 96)\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function allocate_memory_8456() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0260)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory_8457() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0280)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory_8461() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x80)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory(size) -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(size, 31), not(31)))\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function array_allocation_size_string(length) -> size\n {\n if gt(length, sub(shl(64, 1), 1)) { panic_error_0x41() }\n size := add(and(add(length, 31), not(31)), 0x20)\n }\n function abi_decode_string(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let array_1 := allocate_memory(array_allocation_size_string(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(array_1, 0x20), add(offset, 0x20), _1)\n mstore(add(add(array_1, _1), 0x20), 0)\n array := array_1\n }\n function abi_decode_tuple_t_string_memory_ptrt_string_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_string(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset_1), dataEnd)\n }\n function abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xff))\n }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function validator_revert_address(value)\n {\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n validator_revert_address(value)\n }\n function abi_decode_int64(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, signextend(7, value))) { revert(0, 0) }\n }\n function abi_decode_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_uint16(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n }\n function abi_decode_struct_PegOutQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0260) { revert(0, 0) }\n value := allocate_memory_8456()\n mstore(value, abi_decode_address(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n let offset := calldataload(add(headStart, 64))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 64), abi_decode_string(add(headStart, offset), end))\n mstore(add(value, 96), abi_decode_address(add(headStart, 96)))\n let offset_1 := calldataload(add(headStart, 128))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 128), abi_decode_string(add(headStart, offset_1), end))\n mstore(add(value, 160), calldataload(add(headStart, 160)))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), abi_decode_int64(add(headStart, 224)))\n let _2 := 256\n let offset_2 := calldataload(add(headStart, _2))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _2), abi_decode_string(add(headStart, offset_2), end))\n let _3 := 288\n mstore(add(value, _3), calldataload(add(headStart, _3)))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_uint32(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), abi_decode_uint16(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint16(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint32(add(headStart, _10)))\n let _11 := 544\n mstore(add(value, _11), calldataload(add(headStart, _11)))\n let _12 := 576\n mstore(add(value, _12), calldataload(add(headStart, _12)))\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$11234_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PegOutQuote(add(headStart, offset), dataEnd)\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_bytes20(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, not(sub(shl(96, 1), 1))))) { revert(0, 0) }\n }\n function validator_revert_bool(value)\n {\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n validator_revert_bool(value)\n }\n function abi_decode_struct_PeginQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0280) { revert(0, 0) }\n value := allocate_memory_8457()\n mstore(value, abi_decode_bytes20(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n mstore(add(value, 64), abi_decode_address(add(headStart, 64)))\n let offset := calldataload(add(headStart, 96))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 96), abi_decode_string(add(headStart, offset), end))\n mstore(add(value, 128), abi_decode_address(add(headStart, 128)))\n let offset_1 := calldataload(add(headStart, 160))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 160), abi_decode_string(add(headStart, offset_1), end))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), calldataload(add(headStart, 224)))\n let _2 := 256\n mstore(add(value, _2), abi_decode_address(add(headStart, _2)))\n let _3 := 288\n let offset_2 := calldataload(add(headStart, _3))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_string(add(headStart, offset_2), end))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_int64(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), calldataload(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint32(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint16(add(headStart, _10)))\n let _11 := 544\n mstore(add(value, _11), abi_decode_bool(add(headStart, _11)))\n let _12 := 576\n mstore(add(value, _12), calldataload(add(headStart, _12)))\n let _13 := 608\n mstore(add(value, _13), calldataload(add(headStart, _13)))\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$11195_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset_1), dataEnd)\n let offset_2 := calldataload(add(headStart, 64))\n if gt(offset_2, _1) { revert(0, 0) }\n value2 := abi_decode_string(add(headStart, offset_2), dataEnd)\n let offset_3 := calldataload(add(headStart, 96))\n if gt(offset_3, _1) { revert(0, 0) }\n value3 := abi_decode_string(add(headStart, offset_3), dataEnd)\n value4 := calldataload(add(headStart, 128))\n }\n function abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function abi_decode_tuple_t_string_memory_ptrt_string_memory_ptrt_boolt_string_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_string(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset_1), dataEnd)\n let value := calldataload(add(headStart, 64))\n validator_revert_bool(value)\n value2 := value\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n value3 := abi_decode_string(add(headStart, offset_2), dataEnd)\n }\n function abi_encode_tuple_t_int16__to_t_int16__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, signextend(1, value0))\n }\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_encode_bool(value, pos)\n {\n mstore(pos, iszero(iszero(value)))\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_encode_string(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_string(value0, add(headStart, 32))\n }\n function abi_encode_address(value, pos)\n {\n mstore(pos, and(value, sub(shl(160, 1), 1)))\n }\n function abi_encode_struct_LiquidityProvider(value, pos) -> end\n {\n mstore(pos, mload(value))\n mstore(add(pos, 0x20), and(mload(add(value, 0x20)), sub(shl(160, 1), 1)))\n let memberValue0 := mload(add(value, 0x40))\n mstore(add(pos, 0x40), 0xc0)\n let tail := abi_encode_string(memberValue0, add(pos, 0xc0))\n let memberValue0_1 := mload(add(value, 0x60))\n mstore(add(pos, 0x60), sub(tail, pos))\n let tail_1 := abi_encode_string(memberValue0_1, tail)\n mstore(add(pos, 0x80), iszero(iszero(mload(add(value, 0x80)))))\n let memberValue0_2 := mload(add(value, 0xa0))\n mstore(add(pos, 0xa0), sub(tail_1, pos))\n end := abi_encode_string(memberValue0_2, tail_1)\n }\n function abi_encode_tuple_t_struct$_LiquidityProvider_$8021_memory_ptr__to_t_struct$_LiquidityProvider_$8021_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_struct_LiquidityProvider(value0, add(headStart, 32))\n }\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n }\n function abi_decode_tuple_t_uint256t_bool(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := calldataload(headStart)\n let value := calldataload(add(headStart, 32))\n validator_revert_bool(value)\n value1 := value\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$11195_memory_ptrt_bytes_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset_1), dataEnd)\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$11195_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$11234_memory_ptrt_bytes_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PegOutQuote(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset_1), dataEnd)\n }\n function abi_encode_uint16(value, pos)\n {\n mstore(pos, and(value, 0xffff))\n }\n function abi_encode_tuple_t_uint16__to_t_uint16__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffff))\n }\n function array_allocation_size_array_bytes32_dyn(length) -> size\n {\n if gt(length, sub(shl(64, 1), 1)) { panic_error_0x41() }\n size := add(shl(5, length), 0x20)\n }\n function abi_decode_tuple_t_bytes32t_bytes_memory_ptrt_bytes32t_uint256t_array$_t_bytes32_$dyn_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n value0 := calldataload(headStart)\n let _1 := 32\n let offset := calldataload(add(headStart, _1))\n let _2 := sub(shl(64, 1), 1)\n if gt(offset, _2) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset), dataEnd)\n value2 := calldataload(add(headStart, 64))\n value3 := calldataload(add(headStart, 96))\n let offset_1 := calldataload(add(headStart, 128))\n if gt(offset_1, _2) { revert(0, 0) }\n let _3 := add(headStart, offset_1)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := calldataload(_3)\n let dst := allocate_memory(array_allocation_size_array_bytes32_dyn(_4))\n let dst_1 := dst\n mstore(dst, _4)\n dst := add(dst, _1)\n let srcEnd := add(add(_3, shl(5, _4)), _1)\n if gt(srcEnd, dataEnd) { revert(0, 0) }\n let src := add(_3, _1)\n for { } lt(src, srcEnd) { src := add(src, _1) }\n {\n mstore(dst, calldataload(src))\n dst := add(dst, _1)\n }\n value4 := dst_1\n }\n function abi_encode_tuple_t_contract$_Bridge_$4173__to_t_address_payable__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n }\n function abi_encode_tuple_t_array$_t_struct$_LiquidityProvider_$8021_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_LiquidityProvider_$8021_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n let tail_1 := add(headStart, _1)\n mstore(headStart, _1)\n let pos := tail_1\n let length := mload(value0)\n mstore(tail_1, length)\n pos := add(headStart, 64)\n let tail_2 := add(add(headStart, shl(5, length)), 64)\n let srcPtr := add(value0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), not(63)))\n tail_2 := abi_encode_struct_LiquidityProvider(mload(srcPtr), tail_2)\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_encode_tuple_t_stringliteral_686eb4b4538782c6c5d7601cff771332305044e1e5a85d59133150cea60acf31__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC076\")\n tail := add(headStart, 96)\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), not(0)))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function abi_encode_string_storage(value, pos) -> ret\n {\n let slotValue := sload(value)\n let length := extract_byte_array_length(slotValue)\n mstore(pos, length)\n let _1 := 0x20\n let _2 := 1\n switch and(slotValue, _2)\n case 0 {\n mstore(add(pos, _1), and(slotValue, not(255)))\n ret := add(add(pos, shl(5, iszero(iszero(length)))), _1)\n }\n case 1 {\n mstore(0, value)\n let dataPos := keccak256(0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, _1) }\n {\n mstore(add(add(pos, i), _1), sload(dataPos))\n dataPos := add(dataPos, _2)\n }\n ret := add(add(pos, i), _1)\n }\n }\n function abi_encode_tuple_t_string_storage_t_string_storage__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n let tail_1 := abi_encode_string_storage(value0, add(headStart, 64))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_string_storage(value1, tail_1)\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, not(0)) { panic_error_0x11() }\n ret := add(value, 1)\n }\n function abi_encode_tuple_t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC001\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC028\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_address_t_bytes32_t_bytes_memory_ptr__to_t_address_t_bytes32_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), 96)\n tail := abi_encode_string(value2, add(headStart, 96))\n }\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_bool(value)\n value0 := value\n }\n function abi_encode_tuple_t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC029\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_6b987c2142a6ed89e76021f4d9a60f3cbfc2f7110bd81bc33ff58ad7cf27befa__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC030\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b9f5a33cea5e5738277827f2f81faa92d1d3c73cf030e2542a7b80c6f7bdc8a7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC031\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5d8d108d93a53583cf1949d2287cc7f0af5603bd102faf9db90e7e6bbc90ade8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC032\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_e976d8a3febca36c67dcd5b38ae845ffd2f248a24eaf2d7a97f208ffd80ff125__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC033\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_745436b16371784f7b451bf4bed6f0978e2f007f74e71dfa0c49414b3a522759__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC034\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_37570ea73114ff69cb8aab9e09d6f5beb11b36ce1a2ae19ee6f5de28dc42d754__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC035\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5ccb4449252c316623411606962515c0966208bcce5fe352c2e850b058d1077c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC036\")\n tail := add(headStart, 96)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_address_t_uint256_t_bytes32__to_t_address_t_uint256_t_bytes32__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n tail := add(headStart, 96)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), value2)\n }\n function checked_mul_t_uint256(x, y) -> product\n {\n product := mul(x, y)\n if iszero(or(iszero(x), eq(y, div(product, x)))) { panic_error_0x11() }\n }\n function panic_error_0x12()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n function checked_div_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := div(x, y)\n }\n function abi_encode_tuple_t_bytes32_t_int256__to_t_bytes32_t_int256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_bytes20(value, pos)\n {\n mstore(pos, and(value, not(sub(shl(96, 1), 1))))\n }\n function abi_encode_uint32(value, pos)\n {\n mstore(pos, and(value, 0xffffffff))\n }\n function abi_encode_int64(value, pos)\n {\n mstore(pos, signextend(7, value))\n }\n function abi_encode_struct_PeginQuote(value, pos) -> end\n {\n let _1 := 0x0280\n abi_encode_bytes20(mload(value), pos)\n let memberValue0 := mload(add(value, 0x20))\n abi_encode_address(memberValue0, add(pos, 0x20))\n let memberValue0_1 := mload(add(value, 0x40))\n abi_encode_address(memberValue0_1, add(pos, 0x40))\n let memberValue0_2 := mload(add(value, 0x60))\n mstore(add(pos, 0x60), _1)\n let tail := abi_encode_string(memberValue0_2, add(pos, _1))\n let memberValue0_3 := mload(add(value, 0x80))\n abi_encode_address(memberValue0_3, add(pos, 0x80))\n let memberValue0_4 := mload(add(value, 0xa0))\n mstore(add(pos, 0xa0), sub(tail, pos))\n let tail_1 := abi_encode_string(memberValue0_4, tail)\n mstore(add(pos, 0xc0), mload(add(value, 0xc0)))\n mstore(add(pos, 0xe0), mload(add(value, 0xe0)))\n let _2 := 0x0100\n let memberValue0_5 := mload(add(value, _2))\n abi_encode_address(memberValue0_5, add(pos, _2))\n let _3 := 0x0120\n let memberValue0_6 := mload(add(value, _3))\n mstore(add(pos, _3), sub(tail_1, pos))\n let tail_2 := abi_encode_string(memberValue0_6, tail_1)\n let _4 := 0x0140\n let memberValue0_7 := mload(add(value, _4))\n abi_encode_uint32(memberValue0_7, add(pos, _4))\n let _5 := 0x0160\n let memberValue0_8 := mload(add(value, _5))\n abi_encode_int64(memberValue0_8, add(pos, _5))\n let _6 := 0x0180\n mstore(add(pos, _6), mload(add(value, _6)))\n let _7 := 0x01a0\n let memberValue0_9 := mload(add(value, _7))\n abi_encode_uint32(memberValue0_9, add(pos, _7))\n let _8 := 0x01c0\n let memberValue0_10 := mload(add(value, _8))\n abi_encode_uint32(memberValue0_10, add(pos, _8))\n let _9 := 0x01e0\n let memberValue0_11 := mload(add(value, _9))\n abi_encode_uint32(memberValue0_11, add(pos, _9))\n let _10 := 0x0200\n let memberValue0_12 := mload(add(value, _10))\n abi_encode_uint16(memberValue0_12, add(pos, _10))\n let _11 := 0x0220\n let memberValue0_13 := mload(add(value, _11))\n abi_encode_bool(memberValue0_13, add(pos, _11))\n let _12 := 0x0240\n mstore(add(pos, _12), mload(add(value, _12)))\n let _13 := 0x0260\n mstore(add(pos, _13), mload(add(value, _13)))\n end := tail_2\n }\n function abi_encode_tuple_t_struct$_PeginQuote_$11195_memory_ptr_t_uint256__to_t_struct$_PeginQuote_$11195_memory_ptr_t_uint256__fromStack_library_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n tail := abi_encode_struct_PeginQuote(value0, add(headStart, 64))\n mstore(add(headStart, 32), value1)\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function abi_encode_tuple_packed_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n { end := pos }\n function abi_encode_tuple_t_address_payable_t_uint256_t_bool_t_bytes32__to_t_address_t_uint256_t_bool_t_bytes32__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 128)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), iszero(iszero(value2)))\n mstore(add(headStart, 96), value3)\n }\n function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function abi_encode_tuple_t_uint32_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__to_t_uint256_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__fromStack_reversed(headStart, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, and(value0, 0xffffffff))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), 160)\n tail := abi_encode_string(value2, add(headStart, 160))\n mstore(add(headStart, 96), iszero(iszero(value3)))\n mstore(add(headStart, 128), value4)\n }\n function abi_encode_tuple_t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC019\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC020\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_stringliteral_7e21a7b13292bf184f2fc166cca229506aa89a730258f15cdce6a2f8dc225415__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC003\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b91014d5c812b217b1f7abf06d04044851a14f3d4efa9b6795d3964c23897cc9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC010\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_849663c0a27b21987cfc03f3233af0a7a46b23f0af09d39a18720d9610bcba81__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC017\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"pegin\")\n end := add(pos, 5)\n }\n function abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function abi_encode_tuple_packed_t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"pegout\")\n end := add(pos, 6)\n }\n function abi_encode_tuple_packed_t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"both\")\n end := add(pos, 4)\n }\n function abi_encode_tuple_t_stringliteral_c8a2f96b1c149a2cda2dda6db9bbdafbecddac69bce104e31ad4dd14842e4820__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC018\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_a80fe4c2764b7c4b52829ebb2b1bb3117b2b8ffa6a6401dbe00248ec851a73a8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC070\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_f838e22b544c153329abcc9856d1b1f7e7f6c83118dc13d7a0606e65edb3cdd8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC009\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC008\")\n tail := add(headStart, 96)\n }\n function mod_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := mod(x, y)\n }\n function abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_stringliteral_ccfdeeda37cff52b8b53c7f459ead001a00858d8cd279133dc1e599c6257c485__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC021\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ae5a5bd2536c79a56736074670f517df1b8a17deb822b59dfa1648888074b4cc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC022\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_1e153c8413fa71b1dc88c42214ae3211e20bbd7d323adc3a7cb82fb90c05d672__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC023\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_0a36b25bf1b768acf545d4a7d22e9fceeba3414a7a19dc34973fc2e1be01a831__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC005\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__to_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value3, value2, value1, value0) -> end\n {\n mstore(pos, value0)\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 32), add(pos, 32), length)\n let _1 := add(pos, length)\n mstore(add(_1, 32), and(value2, not(sub(shl(96, 1), 1))))\n let length_1 := mload(value3)\n copy_memory_to_memory_with_cleanup(add(value3, 32), add(_1, 52), length_1)\n end := add(add(_1, length_1), 52)\n }\n function abi_decode_bytes_fromMemory(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := mload(offset)\n let array_1 := allocate_memory(array_allocation_size_string(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n copy_memory_to_memory_with_cleanup(add(offset, 0x20), add(array_1, 0x20), _1)\n array := array_1\n }\n function abi_decode_tuple_t_bytes_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := mload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_bytes_fromMemory(add(headStart, offset), dataEnd)\n }\n function abi_encode_tuple_packed_t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a_t_bytes32_t_stringliteral_32cefdcd8e794145c9af8dd1f4b1fbd92d6e547ae855553080fc8bd19c4883a0_t_bytes_memory_ptr__to_t_bytes1_t_bytes32_t_bytes1_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, \" \")\n mstore(add(pos, 1), value0)\n mstore(add(pos, 33), \"u\")\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 0x20), add(pos, 34), length)\n end := add(add(pos, length), 34)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__fromStack_library_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, 96)\n let tail_1 := abi_encode_string(value0, add(headStart, 96))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_string(value1, tail_1)\n mstore(add(headStart, 64), iszero(iszero(value2)))\n }\n function abi_encode_tuple_t_stringliteral_9c6c58d5603e5b2aab0d13c183f0136466f0ce13826630d90e079bf910078715__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC024\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ceda09d74f8a59745bfad5393e75482469dc6db77c24fde6f52df4409a3f744c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC025\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint32(x, y) -> sum\n {\n let _1 := 0xffffffff\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_2d63cc93f65e3c34ca5cba24271c3d6869155fb2ffc83f083d82378f26d56cb0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC026\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5a937cad92792f08abdaf15eed65a070909c29d924f856ec65923c138fd39a48__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC027\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ecc75ee801269ba7670799af84ad7f1d968d59315783a708807424c72ec63d04__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC037\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_0267b5bcac1113eea8a4dc81e170e6fe59336df7f2c6a4d2ae7ad240f894a2f9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC063\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_39eacc26aa588693c014f46e6dd86f6cac22eb3287098210ddf746f1a6af8214__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC065\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_c8999eb883ba6531127283b89d3773d87761ac547946da55d1f52c5931d8838f__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC046\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b400745c4fd650850c2059b2d13f12980ca63b7ccd87c008204992f11af559c2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC047\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC064\")\n tail := add(headStart, 96)\n }\n function copy_byte_array_to_storage_from_t_bytes_memory_ptr_to_t_bytes_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function abi_encode_tuple_t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC042\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_476e33256b298fee7fc3dab0c339427caa3a9a4a44654f7f02b328083d44ca74__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC041\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, sub(shl(160, 1), 1)))\n }\n function abi_encode_tuple_t_stringliteral_0a7ff570d31f7e351d06bf5b8d0ef26a9275a9d32a7dffd7981a6c6ac58227c6__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC044\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_string(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n let _1 := 32\n if slt(sub(dataEnd, headStart), _1) { revert(0, 0) }\n let offset := mload(headStart)\n let _2 := sub(shl(64, 1), 1)\n if gt(offset, _2) { revert(0, 0) }\n let _3 := add(headStart, offset)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := mload(_3)\n let dst := allocate_memory(array_allocation_size_array_bytes32_dyn(_4))\n let dst_1 := dst\n mstore(dst, _4)\n dst := add(dst, _1)\n let srcEnd := add(add(_3, shl(5, _4)), _1)\n if gt(srcEnd, dataEnd) { revert(0, 0) }\n let src := add(_3, _1)\n for { } lt(src, srcEnd) { src := add(src, _1) }\n {\n let innerOffset := mload(src)\n if gt(innerOffset, _2)\n {\n let _5 := 0\n revert(_5, _5)\n }\n let _6 := add(_3, innerOffset)\n let _7 := 0x80\n if slt(add(sub(dataEnd, _6), not(31)), _7)\n {\n let _8 := 0\n revert(_8, _8)\n }\n let value := allocate_memory_8461()\n let value_1 := mload(add(_6, _1))\n if iszero(eq(value_1, and(value_1, _2)))\n {\n let _9 := 0\n revert(_9, _9)\n }\n mstore(value, value_1)\n let _10 := 64\n let offset_1 := mload(add(_6, _10))\n if gt(offset_1, _2)\n {\n let _11 := 0\n revert(_11, _11)\n }\n mstore(add(value, _1), abi_decode_bytes_fromMemory(add(add(_6, offset_1), _1), dataEnd))\n let _12 := 96\n mstore(add(value, _10), mload(add(_6, _12)))\n mstore(add(value, _12), mload(add(_6, _7)))\n mstore(dst, value)\n dst := add(dst, _1)\n }\n value0 := dst_1\n }\n function panic_error_0x32()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_stringliteral_d0a12d6767c9352a89748f00976b0ffc4b9ff4b643d9cc1082f2df3b625d402a__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC075\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint8(x, y) -> sum\n {\n sum := add(and(x, 0xff), and(y, 0xff))\n if gt(sum, 0xff) { panic_error_0x11() }\n }\n function increment_t_uint8(value) -> ret\n {\n let value_1 := and(value, 0xff)\n if eq(value_1, 0xff) { panic_error_0x11() }\n ret := add(value_1, 1)\n }\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_5cf5f7c75a2357c5697933702fe9f20c432f8f5205def7bf18572d390cea5cc1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC069\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3c14ff4570332247d29826742fdf7f014a86ddbee2c49b0252a79ef49351f196__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC048\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__to_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n let tail_1 := add(headStart, 128)\n mstore(headStart, value0)\n let _1 := 32\n mstore(add(headStart, _1), value1)\n mstore(add(headStart, 64), value2)\n mstore(add(headStart, 96), 128)\n let pos := tail_1\n let length := mload(value3)\n mstore(tail_1, length)\n pos := add(headStart, 160)\n let srcPtr := add(value3, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, mload(srcPtr))\n pos := add(pos, _1)\n srcPtr := add(srcPtr, _1)\n }\n tail := pos\n }\n function abi_decode_tuple_t_int256_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_41cc9877d5a72c2a0ef0c602e024ddc86a1f279ef7306bab75dd3c5447ffb6e0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC049\")\n tail := add(headStart, 96)\n }\n function checked_mul_t_uint64(x, y) -> product\n {\n let _1 := sub(shl(64, 1), 1)\n let product_raw := mul(and(x, _1), and(y, _1))\n product := and(product_raw, _1)\n if iszero(eq(product, product_raw)) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_94643b69f05d64f660a022cd48046be494c1ed271b5d9ae602f6fdadc77976be__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC067\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bool__fromStack_library_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n tail := abi_encode_string(value0, add(headStart, 64))\n mstore(add(headStart, 32), iszero(iszero(value1)))\n }\n function abi_encode_tuple_packed_t_bytes_storage__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let ret := 0\n let slotValue := sload(value0)\n let length := extract_byte_array_length(slotValue)\n let _1 := 1\n switch and(slotValue, _1)\n case 0 {\n mstore(pos, and(slotValue, not(255)))\n ret := add(pos, mul(length, iszero(iszero(length))))\n }\n case 1 {\n mstore(0, value0)\n let _2 := 0x20\n let dataPos := keccak256(0, _2)\n let i := 0\n for { } lt(i, length) { i := add(i, _2) }\n {\n mstore(add(pos, i), sload(dataPos))\n dataPos := add(dataPos, _1)\n }\n ret := add(pos, length)\n }\n end := ret\n }\n function abi_encode_tuple_t_stringliteral_7cd3d68dd2419ceccbacf2f69bda9c4c2f3bdb0c0535db4bbef90be788c8f7de__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC068\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3dcf1159943f9eee729b997e5df9acd0f1771321696b1fb47efa6e54bee2f352__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC050\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"Ownable: new owner is the zero a\")\n mstore(add(headStart, 96), \"ddress\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_5004352c178489e456f74ee0937a3403e68ee3fa72f6afa5bff20fe549075132__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC056\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_struct$_PegOutQuote_$11234_memory_ptr__to_t_struct$_PegOutQuote_$11234_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n abi_encode_address(mload(value0), add(headStart, 32))\n let memberValue0 := mload(add(value0, 32))\n abi_encode_address(memberValue0, add(headStart, 64))\n let memberValue0_1 := mload(add(value0, 64))\n let _1 := 0x0260\n mstore(add(headStart, 96), _1)\n let tail_1 := abi_encode_string(memberValue0_1, add(headStart, 640))\n let memberValue0_2 := mload(add(value0, 96))\n abi_encode_address(memberValue0_2, add(headStart, 128))\n let memberValue0_3 := mload(add(value0, 128))\n let _2 := not(31)\n mstore(add(headStart, 160), add(sub(tail_1, headStart), _2))\n let tail_2 := abi_encode_string(memberValue0_3, tail_1)\n mstore(add(headStart, 192), mload(add(value0, 160)))\n mstore(add(headStart, 224), mload(add(value0, 192)))\n let memberValue0_4 := mload(add(value0, 224))\n let _3 := 256\n abi_encode_int64(memberValue0_4, add(headStart, _3))\n let memberValue0_5 := mload(add(value0, _3))\n let _4 := 288\n mstore(add(headStart, _4), add(sub(tail_2, headStart), _2))\n let tail_3 := abi_encode_string(memberValue0_5, tail_2)\n let _5 := mload(add(value0, _4))\n let _6 := 320\n mstore(add(headStart, _6), _5)\n let memberValue0_6 := mload(add(value0, _6))\n let _7 := 352\n abi_encode_uint32(memberValue0_6, add(headStart, _7))\n let memberValue0_7 := mload(add(value0, _7))\n let _8 := 384\n abi_encode_uint32(memberValue0_7, add(headStart, _8))\n let memberValue0_8 := mload(add(value0, _8))\n let _9 := 416\n abi_encode_uint16(memberValue0_8, add(headStart, _9))\n let memberValue0_9 := mload(add(value0, _9))\n let _10 := 448\n abi_encode_uint16(memberValue0_9, add(headStart, _10))\n let memberValue0_10 := mload(add(value0, _10))\n let _11 := 480\n abi_encode_uint32(memberValue0_10, add(headStart, _11))\n let memberValue0_11 := mload(add(value0, _11))\n let _12 := 512\n abi_encode_uint32(memberValue0_11, add(headStart, _12))\n let memberValue0_12 := mload(add(value0, _12))\n let _13 := 544\n abi_encode_uint32(memberValue0_12, add(headStart, _13))\n let _14 := mload(add(value0, _13))\n let _15 := 576\n mstore(add(headStart, _15), _14)\n mstore(add(headStart, _1), mload(add(value0, _15)))\n tail := tail_3\n }\n function abi_encode_tuple_t_stringliteral_ebf73bba305590e4764d5cb53b69bffd6d4d092d1a67551cb346f8cfcdab8619__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 31)\n mstore(add(headStart, 64), \"ReentrancyGuard: reentrant call\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ed7029e52dbf10ed9f0aafb2c33265c713a3f4dfd10cc113f22ba3c1270e1ddb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC051\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_a1a398356814e2eac3017ce127db7657cbb8e2f1d90a78bc426eaa92c56969eb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC052\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_923b965409721a83cf4ae76f34fa52de6eb09679d5b7141d2c0fc518a94192db__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC053\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_472231c5f3abacc190b5fd56153fbfc4b6c39c18040d443b29faee14791d54d9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC054\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_1bdc71792e300c3b19739ad62e7651b4b49de502b7d1b6227970563bffaad71e__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC055\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint64(x, y) -> sum\n {\n let _1 := sub(shl(64, 1), 1)\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_79d3c6c4bda42d819072ed97d83e6147bd9ad75bd5415529ecb6a41984271fb2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC071\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_struct$_PeginQuote_$11195_memory_ptr__to_t_struct$_PeginQuote_$11195_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_struct_PeginQuote(value0, add(headStart, 32))\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__fromStack_reversed(headStart, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 256\n mstore(headStart, _1)\n let tail_1 := abi_encode_string(value0, add(headStart, _1))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string(value2, tail_1)\n mstore(add(headStart, 96), value3)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n let tail_3 := abi_encode_string(value4, tail_2)\n mstore(add(headStart, 160), and(value5, sub(shl(160, 1), 1)))\n mstore(add(headStart, 192), sub(tail_3, headStart))\n tail := abi_encode_string(value6, tail_3)\n mstore(add(headStart, 224), iszero(iszero(value7)))\n }\n function abi_encode_tuple_t_stringliteral_b13cbe420d932534b4c4c376e19a45f25e0ca05c6f1a458489ccb0574b26a6d9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 20)\n mstore(add(headStart, 64), \"Invalid block height\")\n tail := add(headStart, 96)\n }\n function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_bac19bb4c4dce4ec87196bdccebfa1c4310f60332f1259cdc0bb93303ee1c2a0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC058\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_e9fc4e098febe7043f1662405d88fa2495f2ac8d8f35918e247815b713cfd00a__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC074\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Ownable: caller is not the owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_319f398ccb7cc8c2c2304e07f301f618437c863aa2ff561ced1eaa40fcd3df63__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC059\")\n tail := add(headStart, 96)\n }\n}", "id": 32, "language": "Yul", "name": "#utility.yul" } ], - "sourceMap": "481:33717:24:-:0;;;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "481:33717:24:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5027:6;;-1:-1:-1;;;;;5027:6:24;5005:10;:29;4997:48;;;;-1:-1:-1;;;4997:48:24;;216:2:32;4997:48:24;;;198:21:32;255:1;235:18;;;228:29;-1:-1:-1;;;273:18:32;;;266:36;319:18;;4997:48:24;;;;;;;;;481:33717;;;;;33647:549;;;;;;;;;;-1:-1:-1;33647:549:24;;;;;:::i;:::-;;:::i;752:40::-;;;;;;;;;;;;791:1;752:40;;;;;2919:4:32;2907:17;;;2889:36;;2877:2;2862:18;752:40:24;;;;;;;;798:46;;;;;;;;;;;;843:1;798:46;;5058:89;;;;;;;;;;-1:-1:-1;5130:10:24;;5058:89;;;3082:25:32;;;3070:2;3055:18;5058:89:24;2936:177:32;27056:161:24;;;;;;;;;;-1:-1:-1;27056:161:24;;;;;:::i;:::-;;:::i;14662:6502::-;;;;;;;;;;-1:-1:-1;14662:6502:24;;;;;:::i;:::-;;:::i;10357:292::-;;;;;;;;;;-1:-1:-1;10357:292:24;;;;;:::i;:::-;;:::i;5653:85::-;;;;;;;;;;-1:-1:-1;5727:4:24;;5653:85;;6717:2171;;;;;;:::i;:::-;;:::i;1392:94::-;;;;;;;;;;;;-1:-1:-1;;1392:94:24;;;;;11620:1:32;11609:21;;;;11591:40;;11579:2;11564:18;1392:94:24;11449:188:32;9885:192:24;;;:::i;6076:145::-;;;;;;;;;;-1:-1:-1;6076:145:24;;;;;:::i;:::-;;:::i;:::-;;;12155:14:32;;12148:22;12130:41;;12118:2;12103:18;6076:145:24;11990:187:32;6415:193:24;;;;;;;;;;-1:-1:-1;6415:193:24;;;;;:::i;:::-;;:::i;5744:139::-;;;;;;;;;;-1:-1:-1;5744:139:24;;;;;:::i;:::-;5818:4;5841:25;;;:14;:25;;;;;:35;;;;;;5744:139;10723:618;;;;;;;;;;;;;:::i;4232:35::-;;;;;;;;;;;;;;;;8894:736;;;;;;;;;;-1:-1:-1;8894:736:24;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;11415:205::-;;;;;;;;;;;;;:::i;4273:37::-;;;;;;;;;;-1:-1:-1;4273:37:24;;;;-1:-1:-1;;;;;4273:37:24;;;;;;;;;;:::i;2085:101:0:-;;;;;;;;;;;;;:::i;4767:187:24:-;;;;;;;;;;-1:-1:-1;4767:187:24;;;;;:::i;:::-;;:::i;26006:699::-;;;;;;;;;;-1:-1:-1;26006:699:24;;;;;:::i;:::-;;:::i;12554:1591::-;;;;;;:::i;:::-;;:::i;3951:22::-;;;;;;;;;;;;;;;;21170:1183;;;;;;:::i;:::-;;:::i;1066:79::-;;;;;;;;;;;;-1:-1:-1;;1066:79:24;;1462:85:0;;;;;;;;;;;;;:::i;22359:1084:24:-;;;;;;;;;;-1:-1:-1;22359:1084:24;;;;;:::i;:::-;;:::i;11818:109::-;;;;;;;;;;-1:-1:-1;11818:109:24;;;;;:::i;:::-;-1:-1:-1;;;;;11904:16:24;11878:7;11904:16;;;:10;:16;;;;;;;11818:109;698:48;;;;;;;;;;;;745:1;698:48;;587;;;;;;;;;;;;630:5;587:48;;;;;18065:6:32;18053:19;;;18035:38;;18023:2;18008:18;587:48:24;17891:188:32;9714:165:24;;;:::i;1600:42::-;;;;;;;;;;;;1641:1;1600:42;;1151:82;;;;;;;;;;;;-1:-1:-1;;1151:82:24;;983:77;;;;;;;;;;;;-1:-1:-1;;983:77:24;;1492:50;;;;;;;;;;;;-1:-1:-1;;1492:50:24;;26916:134;;;;;;;;;;-1:-1:-1;26916:134:24;;;;;:::i;:::-;;:::i;11933:121::-;;;;;;;;;;-1:-1:-1;11933:121:24;;;;;:::i;:::-;-1:-1:-1;;;;;12025:22:24;11999:7;12025:22;;;:16;:22;;;;;;;11933:121;5543:104;;;;;;;;;;-1:-1:-1;5621:19:24;;-1:-1:-1;;;5621:19:24;;;;5543:104;;1548:46;;;;;;;;;;;;1593:1;1548:46;;1239:71;;;;;;;;;;;;-1:-1:-1;;1239:71:24;;5446:91;;;;;;;;;;-1:-1:-1;5523:7:24;;;;5446:91;;1316:70;;;;;;;;;;;;-1:-1:-1;;1316:70:24;;10148:106;;;:::i;23449:2551::-;;;;;;;;;;-1:-1:-1;23449:2551:24;;;;;:::i;:::-;;:::i;641:50::-;;;;;;;;;;;;687:4;641:50;;918:59;;;;;;;;;;;;-1:-1:-1;;918:59:24;;3424:20;;;;;;;;;;-1:-1:-1;3424:20:24;;;;-1:-1:-1;;;;;3424:20:24;;;5258:92;;;;;;;;;;-1:-1:-1;5330:13:24;;5258:92;;851:61;;;;;;;;;;;;-1:-1:-1;;851:61:24;;2335:198:0;;;;;;;;;;-1:-1:-1;2335:198:0;;;;;:::i;:::-;;:::i;12253:104:24:-;;;;;;;;;;-1:-1:-1;12253:104:24;;;;;:::i;:::-;-1:-1:-1;;;;;12336:14:24;12310:7;12336:14;;;:8;:14;;;;;;;12253:104;5356:84;;;;;;;;;;-1:-1:-1;5425:8:24;;5356:84;;5153:99;;;;;;;;;;-1:-1:-1;5238:6:24;;-1:-1:-1;;;;;5238:6:24;5153:99;;33647:549;33761:1;33745:5;33739:19;:23;:49;;;;;33787:1;33772:4;33766:18;:22;33739:49;33731:68;;;;-1:-1:-1;;;33731:68:24;;19839:2:32;33731:68:24;;;19821:21:32;19878:1;19858:18;;;19851:29;-1:-1:-1;;;19896:18:32;;;19889:36;19942:18;;33731:68:24;19637:329:32;33731:68:24;33809:28;33861:1;33847:317;33869:10;;33864:1;:15;33847:317;;33905:21;;;;:18;:21;;;;;33958:11;;;;33905:21;;-1:-1:-1;;;;;;33958:11:24;33944:10;:25;33940:214;;33989:7;;;:15;33999:5;33989:7;:15;:::i;:::-;-1:-1:-1;34022:13:24;;;:20;34038:4;34022:13;:20;:::i;:::-;;34080:10;-1:-1:-1;;;;;34065:50:24;;34092:2;:7;;34101:2;:13;;34065:50;;;;;;;:::i;:::-;;;;;;;;34133:7;;33647:549;;:::o;33940:214::-;33881:3;;;;:::i;:::-;;;;33847:317;;;;34173:16;;-1:-1:-1;;;34173:16:24;;;;;;;:::i;27056:161::-;27151:7;27177:33;27204:5;27177:26;:33::i;:::-;27170:40;27056:161;-1:-1:-1;;27056:161:24:o;14662:6502::-;14900:6;2526:21:2;:19;:21::i;:::-;14918:17:24::1;14938:27;14959:5;14938:20;:27::i;:::-;15091:26;::::0;;;:15:::1;:26;::::0;;;;;;;-1:-1:-1;791:1:24::1;15091:44;:26:::0;;::::1;:44;;15070:97;;;;-1:-1:-1::0;;;15070:97:24::1;;;;;;;:::i;:::-;15241:33;::::0;;::::1;::::0;15198:144;;-1:-1:-1;;;15198:144:24;;:18:::1;::::0;:25:::1;::::0;:144:::1;::::0;15241:33;15292:9;;15319;;15198:144:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15177:197;;;;-1:-1:-1::0;;;15177:197:24::1;;;;;;;:::i;:::-;15416:15;15392:41:::0;::::1;15384:60;;;::::0;-1:-1:-1;;;15384:60:24;;25860:2:32;15384:60:24::1;::::0;::::1;25842:21:32::0;25899:1;25879:18;;;25872:29;-1:-1:-1;;;25917:18:32;;;25910:36;25963:18;;15384:60:24::1;25658:329:32::0;15384:60:24::1;15455:35;15493:148;15521:5;15540:17;15571;15602:6;15622:9;15493:14;:148::i;:::-;15455:186:::0;-1:-1:-1;15673:85:24;;;15652:138:::1;;;::::0;-1:-1:-1;;;15652:138:24;;26194:2:32;15652:138:24::1;::::0;::::1;26176:21:32::0;26233:1;26213:18;;;26206:29;-1:-1:-1;;;26251:18:32;;;26244:36;26297:18;;15652:138:24::1;25992:329:32::0;15652:138:24::1;15821:96:::0;;;15800:149:::1;;;::::0;-1:-1:-1;;;15800:149:24;;26528:2:32;15800:149:24::1;::::0;::::1;26510:21:32::0;26567:1;26547:18;;;26540:29;-1:-1:-1;;;26585:18:32;;;26578:36;26631:18;;15800:149:24::1;26326:329:32::0;15800:149:24::1;15980:84:::0;;;15959:137:::1;;;::::0;-1:-1:-1;;;15959:137:24;;26862:2:32;15959:137:24::1;::::0;::::1;26844:21:32::0;26901:1;26881:18;;;26874:29;-1:-1:-1;;;26919:18:32;;;26912:36;26965:18;;15959:137:24::1;26660:329:32::0;15959:137:24::1;16127:104:::0;;;16106:157:::1;;;::::0;-1:-1:-1;;;16106:157:24;;27196:2:32;16106:157:24::1;::::0;::::1;27178:21:32::0;27235:1;27215:18;;;27208:29;-1:-1:-1;;;27253:18:32;;;27246:36;27299:18;;16106:157:24::1;26994:329:32::0;16106:157:24::1;16294:52:::0;;;16273:105:::1;;;::::0;-1:-1:-1;;;16273:105:24;;27530:2:32;16273:105:24::1;::::0;::::1;27512:21:32::0;27569:1;27549:18;;;27542:29;-1:-1:-1;;;27587:18:32;;;27580:36;27633:18;;16273:105:24::1;27328:329:32::0;16273:105:24::1;16440:1;16409:28;:32;:109;;;-1:-1:-1::0;;;16457:61:24;::::1;16409:109;:188;;;-1:-1:-1::0;;;16534:63:24;::::1;16409:188;16388:241;;;::::0;-1:-1:-1;;;16388:241:24;;27864:2:32;16388:241:24::1;::::0;::::1;27846:21:32::0;27903:1;27883:18;;;27876:29;-1:-1:-1;;;27921:18:32;;;27914:36;27967:18;;16388:241:24::1;27662:329:32::0;16388:241:24::1;16748:23;::::0;;;:12:::1;:23;::::0;;;;:33;16657:154:::1;::::0;16687:5;;16706:28;;16748:33:::1;;16795:6:::0;16657:16:::1;:154::i;:::-;16640:816;;;16883:16;::::0;::::1;::::0;16928:33:::1;::::0;;::::1;::::0;-1:-1:-1;;;;;16917:45:24::1;16836:23;16917:45:::0;;;:10:::1;:45;::::0;;;;;16836:23;;16862:114:::1;::::0;:3:::1;:114::i;:::-;16836:140;;17102:18;17053:10;:45;17064:5;:33;;;-1:-1:-1::0;;;;;17053:45:24::1;-1:-1:-1::0;;;;;17053:45:24::1;;;;;;;;;;;;;:67;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;17166:33:24::1;::::0;;::::1;::::0;17139:137;;-1:-1:-1;;;;;;;;;;;17139:137:24;::::1;::::0;17217:18;;17253:9;;17139:137:::1;:::i;:::-;;;;;;;;17374:7;::::0;17327:22:::1;::::0;17385:3:::1;::::0;17353:28:::1;::::0;17374:7:::1;;17353:18:::0;:28:::1;:::i;:::-;17352:36;;;;:::i;:::-;17327:61;;17402:43;17418:10;17430:14;17402:15;:43::i;:::-;16822:634;;16640:816;-1:-1:-1::0;;17483:61:24;::::1;::::0;:140:::1;;-1:-1:-1::0;;;17560:63:24;::::1;17483:140;17466:447;;;17683:26;::::0;;;:15:::1;:26;::::0;;;;;;;:49;;-1:-1:-1;;17683:49:24::1;843:1;17683:49;::::0;;17753:12:::1;:23:::0;;;;;;17746:30;;-1:-1:-1;;17746:30:24;;;17795:58;;29081:25:32;;;29122:18;;;29115:34;;;17795:58:24::1;::::0;29054:18:32;17795:58:24::1;;;;;;;17874:28:::0;-1:-1:-1;17867:35:24::1;::::0;-1:-1:-1;17867:35:24::1;17466:447;18169:52;::::0;-1:-1:-1;;;18169:52:24;;18129:28;;18169:8:::1;::::0;:26:::1;::::0;:52:::1;::::0;18196:5;;18129:28;;18169:52:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;;18272:1:24::1;18236:23:::0;;;:12:::1;:23;::::0;;;;:33;::::1;;:37:::0;;-1:-1:-1;18232:2711:24::1;;18289:17;18325:23:::0;;;:12:::1;:23;::::0;;;;:31;-1:-1:-1;;;18325:31:24;::::1;;;18321:315;;;18391:124;18416:17;18485:5;:12;;;18469:5;:13;;;18455:5;:11;;;:27;;;;:::i;:::-;:42;;;;:::i;:::-;18391:3;:124::i;:::-;18376:139;;18321:315;;;18569:52;18573:17;18608:5;:12;;;18592:5;:13;;;:28;;;;:::i;18569:52::-;18554:67;;18321:315;18649:64;18665:5;:33;;;18700:12;18649:15;:64::i;:::-;18728:20;18751:32;18771:12:::0;18751:17;:32:::1;:::i;:::-;18728:55;;18797:52;18815:5;:22;;;18839:9;18797:17;:52::i;:::-;18886:4;;18868:15;:22;18864:829;;;19010:22;::::0;::::1;::::0;:152:::1;::::0;18993:12:::1;::::0;-1:-1:-1;;;;;19010:27:24::1;::::0;687:4:::1;::::0;19121:15;;18993:12;19010:152;18993:12;19010:152;19121:15;19010:27;687:4;19010:152:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18992:170;;;-1:-1:-1::0;;;;;;;;;;;19213:5:24::1;:22;;;19257:15;19294:7;19323:9;19185:165;;;;;;;;;:::i;:::-;;;;;;;;19374:7;19369:310;;19523:137;19564:5;:33;;;19623:15;19523;:137::i;:::-;18892:801;18864:829;18275:1428;;18232:2711;;;19779:20;::::0;::::1;::::0;19743:17;;19779:51;::::1;;;;19819:5;:11;;;19803:12;:27;;19779:51;19775:656;;;19851:16;19872:5;:21;;;-1:-1:-1::0;;;;;19872:26:24::1;19929:5;:14;;;19872:149;;19976:5;:11;;;20010:5;:10;;;19872:149;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19850:171;;;20109:5;:21;;;-1:-1:-1::0;;;;;20044:269:24::1;20077:10;-1:-1:-1::0;;;;;20044:269:24::1;-1:-1:-1::0;;;;;;;;;;;20152:5:24::1;:14;;;20188:5;:11;;;20221:5;:10;;;20253:11;20286:9;20044:269;;;;;;;;;;:::i;:::-;;;;;;;;20336:11;20332:85;;;20387:11;::::0;::::1;::::0;20371:27:::1;::::0;;::::1;:::i;:::-;;;20332:85;19832:599;19775:656;20463:4;;20448:12;:19;20444:489;;;20584:22;::::0;::::1;::::0;:149:::1;::::0;20567:12:::1;::::0;-1:-1:-1;;;;;20584:27:24::1;::::0;687:4:::1;::::0;20695:12;;20567;20584:149;20567:12;20584:149;20695:12;20584:27;687:4;20584:149:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20566:167;;;-1:-1:-1::0;;;;;;;;;;;20784:5:24::1;:22;;;20828:12;20862:7;20891:9;20756:162;;;;;;;;;:::i;:::-;;;;;;;;20469:464;20444:489;19709:1234;18232:2711;20952:26;::::0;;;:15:::1;:26;::::0;;;;;;;:49;;-1:-1:-1;;20952:49:24::1;843:1;20952:49;::::0;;21018:12:::1;:23:::0;;;;;;21011:30;;-1:-1:-1;;21011:30:24;;;21056:56;;3082:25:32;;;20952:26:24;;21056:56:::1;::::0;3055:18:32;21056:56:24::1;;;;;;;-1:-1:-1::0;21129:28:24;-1:-1:-1;;2557:1:2::1;2568:20:::0;1808:1;3074:7;:22;2894:209;2568:20;14662:6502:24;;;;;;;:::o;10357:292::-;10427:10;10418:20;;;;:8;:20;;;;;;:30;-1:-1:-1;10418:30:24;10410:49;;;;-1:-1:-1;;;10410:49:24;;;;;;;:::i;:::-;10478:10;10469:20;;;;:8;:20;;;;;:30;;10493:6;;10469:20;:30;;10493:6;;10469:30;:::i;:::-;;;;-1:-1:-1;;10527:34:24;;10510:12;;10527:10;;10550:6;;10510:12;10527:34;10510:12;10527:34;10550:6;10527:10;:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10509:52;;;10579:7;10571:26;;;;-1:-1:-1;;;10571:26:24;;;;;;;:::i;:::-;10612:30;10623:10;10635:6;10612:30;;;;;;;:::i;:::-;;;;;;;;10400:249;10357:292;:::o;6717:2171::-;6890:4;6914:9;6927:10;6914:23;6906:42;;;;-1:-1:-1;;;6906:42:24;;35012:2:32;6906:42:24;;;34994:21:32;35051:1;35031:18;;;35024:29;-1:-1:-1;;;35069:18:32;;;35062:36;35115:18;;6906:42:24;34810:329:32;6906:42:24;7058:1;7042:5;7036:19;:23;7028:42;;;;-1:-1:-1;;;7028:42:24;;35346:2:32;7028:42:24;;;35328:21:32;35385:1;35365:18;;;35358:29;-1:-1:-1;;;35403:18:32;;;35396:36;35449:18;;7028:42:24;35144:329:32;7028:42:24;7129:1;7107:11;7101:25;:29;7080:82;;;;-1:-1:-1;;;7080:82:24;;35680:2:32;7080:82:24;;;35662:21:32;35719:1;35699:18;;;35692:29;-1:-1:-1;;;35737:18:32;;;35730:36;35783:18;;7080:82:24;35478:329:32;7080:82:24;7324:25;;;;;;;:::i;:::-;;;;;;;;;;;;;7314:36;;;;;;7283:13;7266:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;7256:42;;;;;;:94;:205;;;;7434:26;;;;;;;:::i;:::-;;;;;;;;;;;;;7424:37;;;;;;7393:13;7376:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;7366:42;;;;;;:95;7256:205;:314;;;-1:-1:-1;7545:24:24;;-1:-1:-1;;;7545:24:24;;;36829:19:32;36864:11;;7545:24:24;;;;;;;;;;;;7535:35;;;;;;7504:13;7487:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;7477:42;;;;;;:93;7256:314;7235:367;;;;-1:-1:-1;;;7235:367:24;;37088:2:32;7235:367:24;;;37070:21:32;37127:1;37107:18;;;37100:29;-1:-1:-1;;;37145:18:32;;;37138:36;37191:18;;7235:367:24;36886:329:32;7235:367:24;7632:10;7621:22;;;;:10;:22;;;;;;:27;:64;;;;-1:-1:-1;7669:10:24;7652:28;;;;:16;:28;;;;;;:33;7621:64;7613:83;;;;-1:-1:-1;;;7613:83:24;;37422:2:32;7613:83:24;;;37404:21:32;37461:1;37441:18;;;37434:29;-1:-1:-1;;;37479:18:32;;;37472:36;37525:18;;7613:83:24;37220:329:32;7613:83:24;7747:10;7727:31;;;;:19;:31;;;;;;:36;7706:89;;;;-1:-1:-1;;;7706:89:24;;37756:2:32;7706:89:24;;;37738:21:32;37795:1;37775:18;;;37768:29;-1:-1:-1;;;37813:18:32;;;37806:36;37859:18;;7706:89:24;37554:329:32;7706:89:24;7866:25;;;;;;;:::i;:::-;;;;;;;;;;;;;7856:36;;;;;;7837:13;7820:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;7810:42;;;;;;:82;7806:700;;7929:13;;7916:9;:26;;7908:45;;;;-1:-1:-1;;;7908:45:24;;;;;;;:::i;:::-;7978:10;7967:22;;;;:10;:22;;;;;7992:9;7967:34;;7806:700;;;8078:26;;;;;;;:::i;:::-;;;;;;;;;;;;;8068:37;;;;;;8049:13;8032:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;8022:42;;;;;;:83;8018:488;;8142:13;;8129:9;:26;;8121:45;;;;-1:-1:-1;;;8121:45:24;;;;;;;:::i;:::-;8197:10;8180:28;;;;:16;:28;;;;;8211:9;8180:40;;8018:488;;;8272:13;;:17;;8288:1;8272:17;:::i;:::-;8259:9;:30;;8251:49;;;;-1:-1:-1;;;8251:49:24;;;;;;;:::i;:::-;8314:17;8334:13;8346:1;8334:9;:13;:::i;:::-;8314:33;-1:-1:-1;8386:13:24;8398:1;8386:9;:13;:::i;:::-;:18;:52;;8422:16;:12;8437:1;8422:16;:::i;:::-;8386:52;;;8407:12;8386:52;8372:10;8361:22;;;;:10;:22;;;;;;;;:77;;;;8452:16;:28;;;:43;8018:488;8516:10;:12;;;:10;:12;;;:::i;:::-;;;;-1:-1:-1;;8571:223:24;;;;;;;;8607:10;;8571:223;;;8641:10;8571:223;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8538:30:24;;;:18;:30;;;;;;;:256;;;;;;;;;;;-1:-1:-1;;;;;;8538:256:24;-1:-1:-1;;;;;8538:256:24;;;;;;;;;;;8571:223;;8538:30;:256;;;;;;;;:::i;:::-;-1:-1:-1;8538:256:24;;;;;;;;;;;;:::i;:::-;-1:-1:-1;8538:256:24;;;;;;;;;-1:-1:-1;;8538:256:24;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;8818:10:24;;8809:43;;;29081:25:32;;;8842:9:24;29137:2:32;29122:18;;29115:34;8830:10:24;;-1:-1:-1;8809:43:24;;29054:18:32;8809:43:24;;;;;;;-1:-1:-1;8870:10:24;;6717:2171;;;;;;;:::o;9885:192::-;4473:33;4495:10;4473:21;:33::i;:::-;4465:52;;;;-1:-1:-1;;;4465:52:24;;;;;;;:::i;:::-;9984:10:::1;9967:28;::::0;;;:16:::1;:28;::::0;;;;:41;;9999:9:::1;::::0;9967:28;:41:::1;::::0;9999:9;;9967:41:::1;:::i;:::-;::::0;;;-1:-1:-1;;10023:47:24::1;::::0;::::1;::::0;::::1;::::0;10048:10:::1;::::0;10060:9:::1;::::0;10023:47:::1;:::i;:::-;;;;;;;;9885:192::o:0;6076:145::-;6136:4;6159:18;6172:4;6159:12;:18::i;:::-;:55;;;;-1:-1:-1;6201:13:24;;-1:-1:-1;;;;;6181:16:24;;;;;;:10;:16;;;;;;:33;;6152:62;6076:145;-1:-1:-1;;6076:145:24:o;6415:193::-;6484:4;6519:27;6541:4;6519:21;:27::i;:::-;:82;;;;-1:-1:-1;6588:13:24;;-1:-1:-1;;;;;6562:22:24;;;;;;:16;:22;;;;;;:39;;6500:101;6415:193;-1:-1:-1;;6415:193:24:o;10723:618::-;2526:21:2;:19;:21::i;:::-;10813:10:24::1;10827:1;10793:31:::0;;;:19:::1;:31;::::0;;;;;10785:54:::1;;;::::0;-1:-1:-1;;;10785:54:24;;38794:2:32;10785:54:24::1;::::0;::::1;38776:21:32::0;38833:1;38813:18;;;38806:29;-1:-1:-1;;;38851:18:32;;;38844:36;38897:18;;10785:54:24::1;38592:329:32::0;10785:54:24::1;10932:19;::::0;10905:10:::1;10885:31;::::0;;;:19:::1;:31;::::0;;;;;-1:-1:-1;;;10932:19:24;;::::1;;;::::0;10870:46:::1;::::0;:12:::1;:46;:::i;:::-;:81;;10849:134;;;::::0;-1:-1:-1;;;10849:134:24;;39128:2:32;10849:134:24::1;::::0;::::1;39110:21:32::0;39167:1;39147:18;;;39140:29;-1:-1:-1;;;39185:18:32;;;39178:36;39231:18;;10849:134:24::1;38926:329:32::0;10849:134:24::1;11049:10;10993:11;11032:28:::0;;;:16:::1;:28;::::0;;;;;;;;11007:10:::1;:22:::0;;;;;;:53:::1;::::0;11032:28;11007:53:::1;:::i;:::-;11087:10;11101:1;11070:28:::0;;;:16:::1;:28;::::0;;;;;;;:32;;;11112:10:::1;:22:::0;;;;;:26;;;11148:19:::1;:31:::0;;;;;;:35;;;11211:34;10993:67;;-1:-1:-1;11101:1:24;10993:67;;11101:1;11211:34;11101:1;11211:34;10993:67;11087:10;11211:34:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11193:52;;;11263:7;11255:26;;;;-1:-1:-1::0;;;11255:26:24::1;;;;;;;:::i;:::-;11296:38;11315:10;11327:6;11296:38;;;;;;;:::i;:::-;;;;;;;;10775:566;;2568:20:2::0;1808:1;3074:7;:22;2894:209;2568:20;10723:618:24:o;8894:736::-;8980:26;9018:44;9102:11;:18;-1:-1:-1;;;;;9065:65:24;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9065:65:24;;;;;;;;;;;;;;;;;9018:112;;9140:10;9170:6;9165:425;9186:11;:18;9182:1;:22;9165:425;;;9225:7;9235:11;9247:1;9235:14;;;;;;;;:::i;:::-;;;;;;;;;;;;9298:22;;;;:18;:22;;;;;;;:31;;;9235:14;;-1:-1:-1;9285:45:24;;-1:-1:-1;;;;;9298:31:24;9285:12;:45::i;:::-;:123;;;-1:-1:-1;9376:22:24;;;;:18;:22;;;;;:31;;;9354:54;;-1:-1:-1;;;;;9376:31:24;9354:21;:54::i;:::-;9284:174;;;;-1:-1:-1;9429:22:24;;;;:18;:22;;;;;:29;;;;;9284:174;9263:317;;;9518:22;;;;:18;:22;;;;;;;;;9491:49;;;;;;;;;;;;;;;-1:-1:-1;;;;;9491:49:24;;;;;;;;;;;;;;;9518:22;;9491:49;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9491:49:24;;;-1:-1:-1;;9491:49:24;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:17;9509:5;9491:24;;;;;;;;:::i;:::-;;;;;;:49;;;;9558:7;;;;;:::i;:::-;;;;9263:317;-1:-1:-1;9206:3:24;;;;:::i;:::-;;;;9165:425;;;-1:-1:-1;9606:17:24;;8894:736;-1:-1:-1;;;8894:736:24:o;11415:205::-;4361:24;4374:10;4361:12;:24::i;:::-;4353:43;;;;-1:-1:-1;;;4353:43:24;;;;;;;:::i;:::-;11495:10:::1;11475:31;::::0;;;:19:::1;:31;::::0;;;;;:36;11467:55:::1;;;::::0;-1:-1:-1;;;11467:55:24;;39594:2:32;11467:55:24::1;::::0;::::1;39576:21:32::0;39633:1;39613:18;;;39606:29;-1:-1:-1;;;39651:18:32;;;39644:36;39697:18;;11467:55:24::1;39392:329:32::0;11467:55:24::1;11552:10;11532:31;::::0;;;:19:::1;:31;::::0;;;;;;11566:12:::1;11532:46:::0;;11593:20;::::1;::::0;::::1;::::0;::::1;:::i;2085:101:0:-:0;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;4767:187:24:-:0;4877:11;4634:7;:5;:7::i;:::-;-1:-1:-1;;;;;4620:21:24;:10;-1:-1:-1;;;;;4620:21:24;;:91;;;-1:-1:-1;4671:31:24;;;;:18;:31;;;;;:40;;;-1:-1:-1;;;;;4671:40:24;4657:10;:54;4620:91;4599:144;;;;-1:-1:-1;;;4599:144:24;;39928:2:32;4599:144:24;;;39910:21:32;39967:1;39947:18;;;39940:29;-1:-1:-1;;;39985:18:32;;;39978:36;40031:18;;4599:144:24;39726:329:32;4599:144:24;-1:-1:-1;4900:31:24::1;::::0;;;:18:::1;:31;::::0;;;;;:38:::1;;:47:::0;;-1:-1:-1;;4900:47:24::1;::::0;::::1;;::::0;;;::::1;::::0;;4767:187::o;26006:699::-;26151:4;26167:23;26246:16;26256:5;26246:9;:16::i;:::-;26280:5;:22;;;26328:5;:16;;;26320:25;;26363:5;:33;;;26216:194;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;26193:227;;;;;;26167:253;;26430:32;26512:15;26562:6;;;;;;;;;-1:-1:-1;;;;;26562:6:24;-1:-1:-1;;;;;26562:34:24;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;26562:36:24;;;;;;;;;;;;:::i;:::-;26465:143;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;26465:143:24;;;;;;;;;;26690:7;;-1:-1:-1;;;26625:73:24;;26465:143;;-1:-1:-1;26625:8:24;;:27;;:73;;26653:14;;26465:143;;26690:7;;;;;26625:73;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;12554:1591::-;12677:4;4361:24;4374:10;4361:12;:24::i;:::-;4353:43;;;;-1:-1:-1;;;4353:43:24;;;;;;;:::i;:::-;2526:21:2::1;:19;:21::i;:::-;12728:5:24::2;:33;;;-1:-1:-1::0;;;;;12714:47:24::2;:10;-1:-1:-1::0;;;;;12714:47:24::2;;12693:100;;;::::0;-1:-1:-1;;;12693:100:24;;42796:2:32;12693:100:24::2;::::0;::::2;42778:21:32::0;42835:1;42815:18;;;42808:29;-1:-1:-1;;;42853:18:32;;;42846:36;42899:18;;12693:100:24::2;42594:329:32::0;12693:100:24::2;12895:11;::::0;::::2;::::0;12833:33:::2;::::0;;::::2;::::0;-1:-1:-1;;;;;12824:43:24::2;;::::0;;;:8:::2;:43;::::0;;;:55:::2;::::0;12870:9:::2;::::0;12824:55:::2;:::i;:::-;:82;;12803:135;;;;-1:-1:-1::0;;;12803:135:24::2;;;;;;;:::i;:::-;12949:17;12969:27;12990:5;12969:20;:27::i;:::-;745:1;13027:26:::0;;;:15:::2;:26;::::0;;;;;12949:47;;-1:-1:-1;13027:52:24::2;:26;:52:::0;13006:105:::2;;;::::0;-1:-1:-1;;;13006:105:24;;43130:2:32;13006:105:24::2;::::0;::::2;43112:21:32::0;43169:1;43149:18;;;43142:29;-1:-1:-1;;;43187:18:32;;;43180:36;43233:18;;13006:105:24::2;42928:329:32::0;13006:105:24::2;13122:61;13138:5;:33;;;13173:9;13122:15;:61::i;:::-;13329:14;::::0;::::2;::::0;:34:::2;::::0;630:5:::2;::::0;13329:34:::2;:::i;:::-;13316:47;;:9;:47;;13295:100;;;::::0;-1:-1:-1;;;13295:100:24;;43641:2:32;13295:100:24::2;::::0;::::2;43623:21:32::0;43680:1;43660:18;;;43653:29;-1:-1:-1;;;43698:18:32;;;43691:36;43744:18;;13295:100:24::2;43439:329:32::0;13295:100:24::2;13406:12;13423:5;:21;;;-1:-1:-1::0;;;;;13423:26:24::2;13472:5;:14;;;13423:125;;13511:5;:11;;;13537:5;:10;;;13423:125;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;13405:143:24;;-1:-1:-1;;13586:16:24::2;13567:15;:35;;13559:54;;;::::0;-1:-1:-1;;;13559:54:24;;43975:2:32;13559:54:24::2;::::0;::::2;43957:21:32::0;44014:1;43994:18;;;43987:29;-1:-1:-1;;;44032:18:32;;;44025:36;44078:18;;13559:54:24::2;43773:329:32::0;13559:54:24::2;13623:23;::::0;;;:12:::2;:23;::::0;;;;:59;;-1:-1:-1;;13623:59:24::2;13666:15;13623:59;;;::::0;;13693:153;::::2;;;13720:23;::::0;;;:12:::2;:23;::::0;;;;;;:38;;-1:-1:-1;;;;13720:38:24::2;-1:-1:-1::0;;;13720:38:24::2;::::0;;13788:33;::::2;::::0;13823:11:::2;::::0;::::2;::::0;13772:63:::2;::::0;13788:33;13772:15:::2;:63::i;:::-;13909:5;:21;;;-1:-1:-1::0;;;;;13860:201:24::2;13885:10;-1:-1:-1::0;;;;;13860:201:24::2;-1:-1:-1::0;;;;;;;;;;;13944:5:24::2;:14;;;13972:5;:11;;;13997:5;:10;;;14021:7;14042:9;13860:201;;;;;;;;;;:::i;:::-;;;;;;;;14071:26;::::0;;;:15:::2;:26;::::0;;;;;:43;;-1:-1:-1;;14071:43:24::2;791:1;14071:43;::::0;;14131:7;-1:-1:-1;2568:20:2::1;1808:1:::0;3074:7;:22;2894:209;2568:20:::1;12554:1591:24::0;;;:::o;21170:1183::-;21373:41;21395:5;:18;;;21373:21;:41::i;:::-;21365:60;;;;-1:-1:-1;;;21365:60:24;;44309:2:32;21365:60:24;;;44291:21:32;44348:1;44328:18;;;44321:29;-1:-1:-1;;;44366:18:32;;;44359:36;44412:18;;21365:60:24;44107:329:32;21365:60:24;21514:9;21498:5;:12;;;21473:5;:22;;;21457:5;:13;;;21443:5;:11;;;:27;;;;:::i;:::-;:52;;;;:::i;:::-;:67;;;;:::i;:::-;:80;;21435:99;;;;-1:-1:-1;;;21435:99:24;;44643:2:32;21435:99:24;;;44625:21:32;44682:1;44662:18;;;44655:29;-1:-1:-1;;;44700:18:32;;;44693:36;44746:18;;21435:99:24;44441:329:32;21435:99:24;21571:5;:22;;;21552:41;;:15;:41;;21544:60;;;;-1:-1:-1;;;21544:60:24;;44977:2:32;21544:60:24;;;44959:21:32;45016:1;44996:18;;;44989:29;-1:-1:-1;;;45034:18:32;;;45027:36;45080:18;;21544:60:24;44775:329:32;21544:60:24;21641:5;:16;;;21622:35;;:15;:35;;21614:54;;;;-1:-1:-1;;;21614:54:24;;45311:2:32;21614:54:24;;;45293:21:32;45350:1;45330:18;;;45323:29;-1:-1:-1;;;45368:18:32;;;45361:36;45414:18;;21614:54:24;45109:329:32;21614:54:24;21702:5;:17;;;21686:33;;:12;:33;;21678:52;;;;-1:-1:-1;;;21678:52:24;;45645:2:32;21678:52:24;;;45627:21:32;45684:1;45664:18;;;45657:29;-1:-1:-1;;;45702:18:32;;;45695:36;45748:18;;21678:52:24;45443:329:32;21678:52:24;21740:17;21760:22;21776:5;21760:15;:22::i;:::-;21839:18;;;;21813:67;;-1:-1:-1;;;21813:67:24;;21740:42;;-1:-1:-1;21813:18:24;;:25;;:67;;21740:42;;21870:9;;21813:67;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21792:120;;;;-1:-1:-1;;;21792:120:24;;;;;;;:::i;:::-;21923:44;21970:33;;;:22;:33;;;;;;;;22022:14;:25;;;;;;:35;;;;;:44;22014:63;;;;-1:-1:-1;;;22014:63:24;;;;;;;:::i;:::-;22095:26;;-1:-1:-1;;;;;22095:26:24;:40;22087:59;;;;-1:-1:-1;;;22087:59:24;;;;;;;:::i;:::-;22156:33;;;;:22;:33;;;;;;;;;:41;;;;-1:-1:-1;;;;;;22156:41:24;;;-1:-1:-1;;;;;22156:41:24;;;;;;;;;;-1:-1:-1;22156:41:24;;;;;;;;;;;;;;;;;;;:33;:41;;;;;;;;:::i;:::-;-1:-1:-1;22156:41:24;;;;;;;;;-1:-1:-1;;;;;;22156:41:24;-1:-1:-1;;;;;22156:41:24;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;22156:41:24;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;22156:41:24;-1:-1:-1;;;;;22156:41:24;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;22156:41:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;22156:41:24;;;;;;;-1:-1:-1;;;22156:41:24;;;;;;;;;;;-1:-1:-1;;;;22156:41:24;-1:-1:-1;;;22156:41:24;;;;;-1:-1:-1;;;;22156:41:24;;-1:-1:-1;;;22156:41:24;;;;;;;;;-1:-1:-1;;;;;;;;22156:41:24;-1:-1:-1;;;22156:41:24;;;;;;;-1:-1:-1;;;;22156:41:24;;-1:-1:-1;;;22156:41:24;;;;;;;;-1:-1:-1;;;;22156:41:24;-1:-1:-1;;;22156:41:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;22207:25:24;;;:14;:25;;;;;;;;;22252:15;22207:60;;;;22282:64;;22319:9;29081:25:32;;29122:18;;;29115:34;22307:10:24;;22207:25;;22282:64;;29054:18:32;22282:64:24;;;;;;;21355:998;;21170:1183;;:::o;1462:85:0:-;1534:6;;-1:-1:-1;;;;;1534:6:0;;1462:85::o;22359:1084:24:-;2526:21:2;:19;:21::i;:::-;22450:34:24::1;22487:33:::0;;;:22:::1;:33;::::0;;;;22539:16;;-1:-1:-1;;;;;22539:16:24::1;22531:49;;;;-1:-1:-1::0;;;22531:49:24::1;;;;;;;:::i;:::-;22629:16;::::0;::::1;::::0;-1:-1:-1;;;22629:16:24;::::1;;;22611:15;:34;:82:::0;::::1;;;-1:-1:-1::0;22676:17:24::1;::::0;::::1;::::0;-1:-1:-1;;;22676:17:24;::::1;;;22661:12;:32;22611:82;22590:135;;;::::0;-1:-1:-1;;;22590:135:24;;48002:2:32;22590:135:24::1;::::0;::::1;47984:21:32::0;48041:1;48021:18;;;48014:29;-1:-1:-1;;;48059:18:32;;;48052:36;48105:18;;22590:135:24::1;47800:329:32::0;22590:135:24::1;22736:20;22814:5;:12;;;22789:5;:22;;;22773:5;:13;;;22759:5;:11;;;:27;;;;:::i;:::-;:52;;;;:::i;:::-;:67;;;;:::i;:::-;22864:22;::::0;::::1;::::0;22916:16:::1;::::0;::::1;::::0;22864:22;22951:18;::::1;::::0;-1:-1:-1;;;;;22951:18:24;;::::1;22836:25;22934:36:::0;;;:16:::1;:36;::::0;;;;;22736:90;;-1:-1:-1;22864:22:24;::::1;::::0;22912:59:::1;::::0;22916:16;22912:3:::1;:59::i;:::-;22998:18;::::0;::::1;::::0;-1:-1:-1;;;;;22998:18:24::1;22981:36;::::0;;;:16:::1;:36;::::0;;;;:47;;22897:74;;-1:-1:-1;22897:74:24;;22981:36;;;:47:::1;::::0;22897:74;;22981:47:::1;:::i;:::-;::::0;;;-1:-1:-1;;23054:18:24::1;::::0;::::1;::::0;23044:49:::1;::::0;-1:-1:-1;;;;;;;;;;;23044:49:24;::::1;::::0;-1:-1:-1;;;;;23054:18:24;;::::1;::::0;23074:7;;23083:9;;23044:49:::1;:::i;:::-;;;;;;;;23192:22;::::0;::::1;::::0;23108:116:::1;::::0;;48308:25:32;;;-1:-1:-1;;;;;23192:22:24;;::::1;48364:2:32::0;48349:18;;48342:60;23140:9:24;;23108:116:::1;::::0;48281:18:32;23108:116:24::1;;;;;;;23242:33;::::0;;;:22:::1;:33;::::0;;;;23235:40;;-1:-1:-1;;;;;;23235:40:24;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;23242:33;23235:40:::1;;::::0;::::1;23242:33:::0;23235:40:::1;:::i;:::-;;::::0;::::1;::::0;;-1:-1:-1;;;;;;23235:40:24::1;::::0;;::::1;;::::0;::::1;;;:::i;:::-;;;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;;-1:-1:-1;;;;;;23235:40:24::1;::::0;;::::1;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;23235:40:24::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;;-1:-1:-1;;;;;;23235:40:24;;;::::1;::::0;::::1;::::0;;;::::1;::::0;;::::1;::::0;;;23285:25;;;:14:::1;:25;::::0;;;;;-1:-1:-1;23285:35:24;;::::1;:42:::0;;-1:-1:-1;;23285:42:24::1;::::0;;::::1;::::0;;23353:50;-1:-1:-1;;;;;23353:22:24;::::1;::::0;23383:15;;23235:40;23353:50;23235:40;23353:50;23383:15;23353:22;:50:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23338:65;;;23421:4;23413:23;;;::::0;-1:-1:-1;;;23413:23:24;;48615:2:32;23413:23:24::1;::::0;::::1;48597:21:32::0;48654:1;48634:18;;;48627:29;-1:-1:-1;;;48672:18:32;;;48665:36;48718:18;;23413:23:24::1;48413:329:32::0;23413:23:24::1;22440:1003;;;;;2568:20:2::0;1808:1;3074:7;:22;2894:209;2568:20;22359:1084:24;:::o;9714:165::-;4361:24;4374:10;4361:12;:24::i;:::-;4353:43;;;;-1:-1:-1;;;4353:43:24;;;;;;;:::i;:::-;9792:10:::1;9781:22;::::0;;;:10:::1;:22;::::0;;;;:35;;9807:9:::1;::::0;9781:22;:35:::1;::::0;9807:9;;9781:35:::1;:::i;:::-;::::0;;;-1:-1:-1;;9831:41:24::1;::::0;::::1;::::0;::::1;::::0;9850:10:::1;::::0;9862:9:::1;::::0;9831:41:::1;:::i;26916:134::-:0;26990:7;27016:27;27037:5;27016:20;:27::i;10148:106::-;4361:24;4374:10;4361:12;:24::i;:::-;4353:43;;;;-1:-1:-1;;;4353:43:24;;;;;;;:::i;:::-;10209:38:::1;10225:10;10237:9;10209:15;:38::i;23449:2551::-:0;2526:21:2;:19;:21::i;:::-;4473:33:24::1;4495:10;4473:21;:33::i;:::-;4465:52;;;;-1:-1:-1::0;;;4465:52:24::1;;;;;;;:::i;:::-;23712:25:::2;::::0;;;:14:::2;:25;::::0;;;;:35:::2;;::::0;::::2;;:44;23704:63;;;;-1:-1:-1::0;;;23704:63:24::2;;;;;;;:::i;:::-;23777:34;23814:33:::0;;;:22:::2;:33;::::0;;;;23865:16;;-1:-1:-1;;;;;23865:16:24::2;23857:49;;;;-1:-1:-1::0;;;23857:49:24::2;;;;;;;:::i;:::-;23956:26;::::0;-1:-1:-1;;;23956:26:24;;23916:37:::2;::::0;23956:8:::2;::::0;:19:::2;::::0;:26:::2;::::0;23976:5;;23956:26:::2;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;::::0;;::::2;-1:-1:-1::0;;23956:26:24::2;::::0;::::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;:::i;:::-;23916:66;;23992:26;24021:8;:28;24050:7;1641:1;24050:26;;;;;;;;:::i;:::-;;;;;;;:35;;;24021:65;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;::::0;;::::2;-1:-1:-1::0;;24021:65:24::2;::::0;::::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;:::i;:::-;23992:94;;24104:13;:20;24128:2;24104:26;:54;;;;;24134:13;24148:1;24134:16;;;;;;;;:::i;:::-;;::::0;;;;-1:-1:-1;;;;;;24134:16:24;-1:-1:-1;;;24134:24:24::2;24104:54;24096:73;;;::::0;-1:-1:-1;;;24096:73:24;;51192:2:32;24096:73:24::2;::::0;::::2;51174:21:32::0;51231:1;51211:18;;;51204:29;-1:-1:-1;;;51249:18:32;;;51242:36;51295:18;;24096:73:24::2;50990:329:32::0;24096:73:24::2;24247:7;24242:118;24288:1;24265:13;:20;:24;;;;:::i;:::-;24261:1;:28;;;24242:118;;;24329:13:::0;24343:5:::2;:1:::0;24347::::2;24343:5;:::i;:::-;24329:20;;;;;;;;;;:::i;:::-;;;;;;;;;24310:13;24324:1;24310:16;;;;;;;;;;:::i;:::-;;;;:39;-1:-1:-1::0;;;;;24310:39:24::2;;;;;;;;-1:-1:-1::0;24291:3:24;::::2;::::0;::::2;:::i;:::-;;;;24242:118;;;;24369:19;24402:13;24391:36;;;;;;;;;;;;:::i;:::-;24369:58;;24458:11;24445:9;:24;24437:43;;;::::0;-1:-1:-1;;;24437:43:24;;52048:2:32;24437:43:24::2;::::0;::::2;52030:21:32::0;52087:1;52067:18;;;52060:29;-1:-1:-1;;;52105:18:32;;;52098:36;52151:18;;24437:43:24::2;51846:329:32::0;24437:43:24::2;24512:18;::::0;::::2;::::0;-1:-1:-1;;;;;24512:18:24::2;24498:10;:32;24490:51;;;::::0;-1:-1:-1;;;24490:51:24;;52382:2:32;24490:51:24::2;::::0;::::2;52364:21:32::0;52421:1;52401:18;;;52394:29;-1:-1:-1;;;52439:18:32;;;52432:36;52485:18;;24490:51:24::2;52180:329:32::0;24490:51:24::2;24789:27;::::0;::::2;::::0;24572:6:::2;::::0;24627:25:::2;::::0;-1:-1:-1;;;24627:25:24;;-1:-1:-1;;;24789:27:24;;::::2;;;::::0;-1:-1:-1;;;;;24572:6:24;;::::2;::::0;:37:::2;::::0;24627:8:::2;::::0;:18:::2;::::0;:25:::2;::::0;24646:5;;24627:25:::2;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;24670:18;24706:17;24741:18;24572:201;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:246;;24551:299;;;::::0;-1:-1:-1;;;24551:299:24;;53757:2:32;24551:299:24::2;::::0;::::2;53739:21:32::0;53796:1;53776:18;;;53769:29;-1:-1:-1;;;53814:18:32;;;53807:36;53860:18;;24551:299:24::2;53555:329:32::0;24551:299:24::2;24883:7;1593:1;24883:30;;;;;;;;:::i;:::-;;;;;;;:36;;;24923:6;24883:47;;;;:::i;:::-;-1:-1:-1::0;;;;;24868:62:24::2;:5;:11;;;:62;;24860:81;;;::::0;-1:-1:-1;;;24860:81:24;;54353:2:32;24860:81:24::2;::::0;::::2;54335:21:32::0;54392:1;54372:18;;;54365:29;-1:-1:-1;;;54410:18:32;;;54403:36;54456:18;;24860:81:24::2;54151:329:32::0;24860:81:24::2;24969:29;25001:8;:30;25045:7;1593:1;25045:30;;;;;;;;:::i;:::-;;::::0;;::::2;::::0;;;;;;;:39:::2;::::0;25098:7:::2;::::0;25001:114:::2;::::0;-1:-1:-1;;;;;;25001:114:24::2;::::0;;;;;;::::2;::::0;25045:39;25098:7:::2;;::::0;25001:114:::2;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;::::0;;::::2;-1:-1:-1::0;;25001:114:24::2;::::0;::::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;:::i;:::-;24969:146;;25179:16;25169:27;;;;;;25143:5;:21;;25133:32;;;;;;:::i;:::-;;;;;;;;:63;25125:82;;;::::0;-1:-1:-1;;;25125:82:24;;55844:2:32;25125:82:24::2;::::0;::::2;55826:21:32::0;55883:1;55863:18;;;55856:29;-1:-1:-1;;;55901:18:32;;;55894:36;55947:18;;25125:82:24::2;55642:329:32::0;25125:82:24::2;25235:108;::::0;;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;;;25235:108:24;;::::2;::::0;;;;::::2;::::0;::::2;;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;::::2;::::0;25271:5;;25235:108;;;;::::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;25235:108:24;;;-1:-1:-1;;25235:108:24::2;::::0;::::2;::::0;-1:-1:-1;;;;;25235:108:24::2;;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;;;;;;::::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;25235:108:24;;;-1:-1:-1;;25235:108:24::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;;;;::::2;::::0;;::::2;::::0;;::::2;::::0;;;;::::2;::::0;::::2;::::0;;;;;;;::::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;25235:108:24;;;-1:-1:-1;;25235:108:24::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;::::2;::::0;;;;-1:-1:-1;;;25235:108:24;::::2;::::0;::::2;::::0;;;;::::2;-1:-1:-1::0;;;25235:108:24;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;25235:108:24;::::2;;::::0;;;;-1:-1:-1;;;25235:108:24;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;25235:108:24;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;25235:108:24;;::::2;;;::::0;;;::::2;::::0;::::2;::::0;;;;;::::2;::::0;;::::2;::::0;;;;;;25290:11;25315:18;25235:22:::2;:108::i;:::-;25218:412;;;25404:16;::::0;::::2;::::0;25455:18:::2;::::0;::::2;::::0;-1:-1:-1;;;;;25455:18:24::2;25368:12;25438:36:::0;;;:16:::2;:36;::::0;;;;;25368:12;;25383:105:::2;::::0;:3:::2;:105::i;:::-;25519:18;::::0;::::2;::::0;-1:-1:-1;;;;;25519:18:24::2;25502:36;::::0;;;:16:::2;:36;::::0;;;;:47;;25368:120;;-1:-1:-1;25368:120:24;;25502:36;;;:47:::2;::::0;25368:120;;25502:47:::2;:::i;:::-;::::0;;;-1:-1:-1;;25578:18:24::2;::::0;::::2;::::0;25568:51:::2;::::0;-1:-1:-1;;;;;;;;;;;25568:51:24;::::2;::::0;-1:-1:-1;;;;;25578:18:24;;::::2;::::0;25598:7;;25607:11;;25568:51:::2;:::i;:::-;;;;;;;;25354:276;25218:412;25655:18;::::0;::::2;::::0;25717:13:::2;::::0;::::2;::::0;25703:11:::2;::::0;::::2;::::0;25641:9:::2;::::0;-1:-1:-1;;;;;25655:18:24::2;::::0;25703:27:::2;::::0;::::2;:::i;:::-;25655:93;::::0;::::2;::::0;;;;;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25640:108;;;25766:4;25758:23;;;::::0;-1:-1:-1;;;25758:23:24;;56178:2:32;25758:23:24::2;::::0;::::2;56160:21:32::0;56217:1;56197:18;;;56190:29;-1:-1:-1;;;56235:18:32;;;56228:36;56281:18;;25758:23:24::2;55976:329:32::0;25758:23:24::2;25792:52;25810:5;:22;;;25834:9;25792:17;:52::i;:::-;25862:35;::::0;;;:22:::2;:35;::::0;;;;25855:42;;-1:-1:-1;;;;;;25855:42:24;;::::2;::::0;;;;::::2;::::0;;;;::::2;::::0;;25862:35;25855:42:::2;;::::0;::::2;25862:35:::0;25855:42:::2;:::i;:::-;;::::0;::::2;::::0;;-1:-1:-1;;;;;;25855:42:24::2;::::0;;::::2;;::::0;::::2;;;:::i;:::-;;;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;;-1:-1:-1;;;;;;25855:42:24::2;::::0;;::::2;::::0;::::2;::::0;::::2;::::0;::::2;:::i;:::-;-1:-1:-1::0;25855:42:24::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;;-1:-1:-1;;;;;;25855:42:24;;;::::2;::::0;::::2;::::0;;;::::2;::::0;;::::2;::::0;;;25907:27;;;:14:::2;:27;::::0;;;;;25855:42;25907:37;;::::2;:44:::0;;-1:-1:-1;;25907:44:24::2;::::0;;::::2;::::0;;25966:27;25922:11;;25966:27:::2;::::0;::::2;23694:2306;;;;;;2568:20:2::0;1808:1;3074:7;:22;2894:209;2568:20;23449:2551:24;;;;;:::o;2335:198:0:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:0;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:0;;56512:2:32;2415:73:0::1;::::0;::::1;56494:21:32::0;56551:2;56531:18;;;56524:30;56590:34;56570:18;;;56563:62;-1:-1:-1;;;56641:18:32;;;56634:36;56687:19;;2415:73:0::1;56310:402:32::0;2415:73:0::1;2498:28;2517:8;2498:18;:28::i;28112:247:24:-:0;28263:16;;28219:7;;-1:-1:-1;;;;;28246:33:24;28254:4;28246:33;28238:52;;;;-1:-1:-1;;;28238:52:24;;56919:2:32;28238:52:24;;;56901:21:32;56958:1;56938:18;;;56931:29;-1:-1:-1;;;56976:18:32;;;56969:36;57022:18;;28238:52:24;56717:329:32;28238:52:24;28318:33;;-1:-1:-1;;;28318:33:24;;:8;;:26;;:33;;28345:5;;28318:33;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;28318:33:24;;;;;;;;;;;;:::i;:::-;28308:44;;;;;;28301:51;;28112:247;;;:::o;2601:287:2:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:2;;59896:2:32;2725:63:2;;;59878:21:32;59935:2;59915:18;;;59908:30;59974:33;59954:18;;;59947:61;60025:18;;2725:63:2;59694:355:32;2725:63:2;1851:1;2863:7;:18;2601:287::o;27223:883:24:-;27323:7;27367:5;:16;;;-1:-1:-1;;;;;27350:33:24;27358:4;-1:-1:-1;;;;;27350:33:24;;27342:52;;;;-1:-1:-1;;;27342:52:24;;60256:2:32;27342:52:24;;;60238:21:32;60295:1;60275:18;;;60268:29;-1:-1:-1;;;60313:18:32;;;60306:36;60359:18;;27342:52:24;60054:329:32;27342:52:24;27444:21;;;;27433:6;;-1:-1:-1;;;;;27425:40:24;;;27433:6;;27425:40;27404:93;;;;-1:-1:-1;;;27404:93:24;;60590:2:32;27404:93:24;;;60572:21:32;60629:1;60609:18;;;60602:29;-1:-1:-1;;;60647:18:32;;;60640:36;60693:18;;27404:93:24;60388:329:32;27404:93:24;27528:5;:22;;;:29;27561:2;27528:35;:86;;;;27579:5;:22;;;:29;27612:2;27579:35;27528:86;27507:139;;;;-1:-1:-1;;;27507:139:24;;60924:2:32;27507:139:24;;;60906:21:32;60963:1;60943:18;;;60936:29;-1:-1:-1;;;60981:18:32;;;60974:36;61027:18;;27507:139:24;60722:329:32;27507:139:24;27677:5;:33;;;:40;27721:2;27677:46;27656:99;;;;-1:-1:-1;;;27656:99:24;;61258:2:32;27656:99:24;;;61240:21:32;61297:1;61277:18;;;61270:29;-1:-1:-1;;;61315:18:32;;;61308:36;61361:18;;27656:99:24;61056:329:32;27656:99:24;27857:8;;27841:5;:12;;;27816:5;:22;;;27800:5;:13;;;27786:5;:11;;;:27;;;;:::i;:::-;:52;;;;:::i;:::-;:67;;;;:::i;:::-;:79;;27765:132;;;;-1:-1:-1;;;27765:132:24;;61592:2:32;27765:132:24;;;61574:21:32;61631:1;61611:18;;;61604:29;-1:-1:-1;;;61649:18:32;;;61642:36;61695:18;;27765:132:24;61390:329:32;27765:132:24;27990:5;:20;;;27983:28;;27955:5;:24;;;27948:32;;:63;;;;:::i;:::-;-1:-1:-1;;;;;27928:83:24;:16;:83;;27907:136;;;;-1:-1:-1;;;27907:136:24;;62111:2:32;27907:136:24;;;62093:21:32;62150:1;62130:18;;;62123:29;-1:-1:-1;;;62168:18:32;;;62161:36;62214:18;;27907:136:24;61909:329:32;27907:136:24;28071:27;;-1:-1:-1;;;28071:27:24;;:8;;:20;;:27;;28092:5;;28071:27;;;:::i;29778:634::-;30040:6;;30203:22;;;;30266:33;;;;30003:6;30313:28;;;:12;:28;;;;;:38;30003:6;;-1:-1:-1;;;;;30040:6:24;;:39;;30093:17;;30124:6;;30144:17;;30175:14;;30247:4;;30266:33;30313:38;;:42;;;;:82;;-1:-1:-1;30359:28:24;;;;:12;:28;;;;;:36;-1:-1:-1;;;30359:36:24;;;;30313:82;30040:365;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;30021:384;29778:634;-1:-1:-1;;;;;;29778:634:24:o;30834:1644::-;31008:4;31098:1;31089:6;:10;:99;;;;;31176:5;:12;;;31151:5;:22;;;31135:5;:13;;;31121:5;:11;;;:27;;;;:::i;:::-;:52;;;;:::i;:::-;:67;;;;:::i;:::-;31111:6;31103:85;31089:99;31085:142;;;-1:-1:-1;31211:5:24;31204:12;;31085:142;31276:6;;:63;;-1:-1:-1;;;31276:63:24;;;;;3082:25:32;;;31237:36:24;;-1:-1:-1;;;;;31276:6:24;;:55;;3055:18:32;;31276:63:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;31276:63:24;;;;;;;;;;;;:::i;:::-;31237:102;;31390:1;31357:23;:30;:34;31349:67;;;;-1:-1:-1;;;31349:67:24;;63795:2:32;31349:67:24;;;63777:21:32;63834:2;63814:18;;;63807:30;-1:-1:-1;;;63853:18:32;;;63846:50;63913:18;;31349:67:24;63593:344:32;31349:67:24;31464:76;;-1:-1:-1;;;31464:76:24;;31427:34;;31464:8;;:29;;:76;;31507:23;;31464:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;31427:113;;31680:14;31724:5;:20;;;31697:5;:24;;;:47;;;;:::i;:::-;31680:64;;;;31787:9;31758:26;:38;31754:81;;;31819:5;31812:12;;;;;;;31754:81;31890:13;31907:1;31890:18;31886:60;;31931:4;31924:11;;;;;;;31886:60;31992:6;;32070:26;;;;31956:33;;-1:-1:-1;;;;;31992:6:24;;:55;;:6;;32061:35;;;;:6;:35;:::i;:::-;:39;;;;:::i;:::-;31992:118;;;;;;;;;;;;;3082:25:32;;3070:2;3055:18;;2936:177;31992:118:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;31992:118:24;;;;;;;;;;;;:::i;:::-;31956:154;;32158:1;32128:20;:27;:31;32120:50;;;;-1:-1:-1;;;32120:50:24;;64333:2:32;32120:50:24;;;64315:21:32;64372:1;64352:18;;;64345:29;-1:-1:-1;;;64390:18:32;;;64383:36;64436:18;;32120:50:24;64131:329:32;32120:50:24;32215:73;;-1:-1:-1;;;32215:73:24;;32181:31;;32215:8;;:29;;:73;;32258:20;;32215:73;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;32181:107;;32398:5;:14;;;32372:40;;:23;:40;;;;:::i;:::-;32356:13;:56;32352:98;;;32435:4;32428:11;;;;;;;;;32352:98;-1:-1:-1;32466:5:24;;30834:1644;-1:-1:-1;;;;;;;;;30834:1644:24:o;28365:94::-;28416:4;28443:1;28439;:5;:13;;28451:1;28439:13;;;28447:1;28439:13;28432:20;28365:94;-1:-1:-1;;;28365:94:24:o;28532:145::-;-1:-1:-1;;;;;28602:14:24;;;;;;:8;:14;;;;;:24;;28620:6;;28602:14;:24;;28620:6;;28602:24;:::i;:::-;;;;-1:-1:-1;;28641:29:24;;;;;;28657:4;;28663:6;;28641:29;:::i;33350:291::-;33431:10;;33427:208;;33486:22;;33478:55;;33458:15;;-1:-1:-1;;;;;33486:22:24;;33522:6;;33458:15;33478:55;33458:15;33478:55;33522:6;33486:22;33478:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;33457:76;;;33555:10;33547:29;;;;-1:-1:-1;;;33547:29:24;;64667:2:32;33547:29:24;;;64649:21:32;64706:1;64686:18;;;64679:29;-1:-1:-1;;;64724:18:32;;;64717:36;64770:18;;33547:29:24;64465:329:32;33547:29:24;33606:9;33595:29;33617:6;33595:29;;;;3082:25:32;;3070:2;3055:18;;2936:177;33595:29:24;;;;;;;;33443:192;33427:208;33350:291;;:::o;29194:157::-;-1:-1:-1;;;;;29284:22:24;;29261:4;29284:22;;;:16;:22;;;;;;:26;;;;:60;;-1:-1:-1;;;;;;;29314:25:24;;;;;:19;:25;;;;;;:30;;29194:157::o;29046:142::-;-1:-1:-1;;;;;29127:16:24;;29104:4;29127:16;;;:10;:16;;;;;;:20;;;;:54;;-1:-1:-1;;;;;;;29151:25:24;;;;;:19;:25;;;;;;:30;;29046:142::o;1620:130:0:-;965:10:4;1683:7:0;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:0;;1675:68;;;;-1:-1:-1;;;1675:68:0;;65001:2:32;1675:68:0;;;64983:21:32;;;65020:18;;;65013:30;65079:34;65059:18;;;65052:62;65131:18;;1675:68:0;64799:356:32;2687:187:0;2779:6;;;-1:-1:-1;;;;;2795:17:0;;;-1:-1:-1;;;;;;2795:17:0;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;28683:145:24:-;-1:-1:-1;;;;;28753:14:24;;;;;;:8;:14;;;;;:24;;28771:6;;28753:14;:24;;28771:6;;28753:24;:::i;:::-;;;;-1:-1:-1;;28792:29:24;;;;;;28808:4;;28814:6;;28792:29;:::i;32484:860::-;32696:6;;:51;;-1:-1:-1;;;32696:51:24;;;;;3082:25:32;;;32641:4:24;;;;-1:-1:-1;;;;;32696:6:24;;;;:40;;3055:18:32;;32696:51:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;32696:51:24;;;;;;;;;;;;:::i;:::-;32657:90;;32798:1;32765:23;:30;:34;32757:53;;;;-1:-1:-1;;;32757:53:24;;65362:2:32;32757:53:24;;;65344:21:32;65401:1;65381:18;;;65374:29;-1:-1:-1;;;65419:18:32;;;65412:36;65465:18;;32757:53:24;65160:329:32;32757:53:24;32858:54;;-1:-1:-1;;;32858:54:24;;32821:34;;32858:8;;:29;;:54;;32888:23;;32858:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;33087:12;;33066:18;;;;33013:25;;;;:14;:25;;;;;:42;32821:91;;-1:-1:-1;33087:12:24;;33013:71;;;;;;:::i;:::-;:86;;;;:::i;:::-;32984:26;:115;32980:157;;;33122:4;33115:11;;;;;;32980:157;33225:5;:16;;;33207:34;;:15;:34;:70;;;;33260:5;:17;;;33245:32;;:12;:32;33207:70;33203:112;;;33300:4;33293:11;;;;;;33203:112;-1:-1:-1;33332:5:24;;32484:860;-1:-1:-1;;;;;32484:860:24:o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;348:127:32:-;409:10;404:3;400:20;397:1;390:31;440:4;437:1;430:15;464:4;461:1;454:15;480:255;552:2;546:9;594:6;582:19;;-1:-1:-1;;;;;616:34:32;;652:22;;;613:62;610:88;;;678:18;;:::i;:::-;714:2;707:22;480:255;:::o;740:::-;812:2;806:9;854:6;842:19;;-1:-1:-1;;;;;876:34:32;;912:22;;;873:62;870:88;;;938:18;;:::i;1000:253::-;1072:2;1066:9;1114:4;1102:17;;-1:-1:-1;;;;;1134:34:32;;1170:22;;;1131:62;1128:88;;;1196:18;;:::i;1258:275::-;1329:2;1323:9;1394:2;1375:13;;-1:-1:-1;;1371:27:32;1359:40;;-1:-1:-1;;;;;1414:34:32;;1450:22;;;1411:62;1408:88;;;1476:18;;:::i;:::-;1512:2;1505:22;1258:275;;-1:-1:-1;1258:275:32:o;1538:187::-;1587:4;-1:-1:-1;;;;;1609:30:32;;1606:56;;;1642:18;;:::i;:::-;-1:-1:-1;1708:2:32;1687:15;-1:-1:-1;;1683:29:32;1714:4;1679:40;;1538:187::o;1730:464::-;1773:5;1826:3;1819:4;1811:6;1807:17;1803:27;1793:55;;1844:1;1841;1834:12;1793:55;1880:6;1867:20;1911:49;1927:32;1956:2;1927:32;:::i;:::-;1911:49;:::i;:::-;1985:2;1976:7;1969:19;2031:3;2024:4;2019:2;2011:6;2007:15;2003:26;2000:35;1997:55;;;2048:1;2045;2038:12;1997:55;2113:2;2106:4;2098:6;2094:17;2087:4;2078:7;2074:18;2061:55;2161:1;2136:16;;;2154:4;2132:27;2125:38;;;;2140:7;1730:464;-1:-1:-1;;;1730:464:32:o;2199:543::-;2287:6;2295;2348:2;2336:9;2327:7;2323:23;2319:32;2316:52;;;2364:1;2361;2354:12;2316:52;2391:23;;-1:-1:-1;;;;;2463:14:32;;;2460:34;;;2490:1;2487;2480:12;2460:34;2513:50;2555:7;2546:6;2535:9;2531:22;2513:50;:::i;:::-;2503:60;;2616:2;2605:9;2601:18;2588:32;2572:48;;2645:2;2635:8;2632:16;2629:36;;;2661:1;2658;2651:12;2629:36;;2684:52;2728:7;2717:8;2706:9;2702:24;2684:52;:::i;:::-;2674:62;;;2199:543;;;;;:::o;3118:131::-;-1:-1:-1;;;;;3193:31:32;;3183:42;;3173:70;;3239:1;3236;3229:12;3254:134;3322:20;;3351:31;3322:20;3351:31;:::i;3393:160::-;3459:20;;3519:1;3508:20;;;3498:31;;3488:59;;3543:1;3540;3533:12;3558:163;3625:20;;3685:10;3674:22;;3664:33;;3654:61;;3711:1;3708;3701:12;3726:159;3793:20;;3853:6;3842:18;;3832:29;;3822:57;;3875:1;3872;3865:12;3890:2094;3948:5;3996:6;3984:9;3979:3;3975:19;3971:32;3968:52;;;4016:1;4013;4006:12;3968:52;4038:22;;:::i;:::-;4029:31;;4083:29;4102:9;4083:29;:::i;:::-;4076:5;4069:44;4145:38;4179:2;4168:9;4164:18;4145:38;:::i;:::-;4140:2;4129:14;;4122:62;4235:2;4220:18;;4207:32;-1:-1:-1;;;;;4288:14:32;;;4285:34;;;4315:1;4312;4305:12;4285:34;4351:46;4393:3;4384:6;4373:9;4369:22;4351:46;:::i;:::-;4346:2;4339:5;4335:14;4328:70;4430:38;4464:2;4453:9;4449:18;4430:38;:::i;:::-;4425:2;4418:5;4414:14;4407:62;4522:3;4511:9;4507:19;4494:33;4478:49;;4552:2;4542:8;4539:16;4536:36;;;4568:1;4565;4558:12;4536:36;4605:48;4649:3;4638:8;4627:9;4623:24;4605:48;:::i;:::-;4599:3;4592:5;4588:15;4581:73;4715:3;4704:9;4700:19;4687:33;4681:3;4674:5;4670:15;4663:58;4782:3;4771:9;4767:19;4754:33;4748:3;4741:5;4737:15;4730:58;4821:37;4853:3;4842:9;4838:19;4821:37;:::i;:::-;4815:3;4808:5;4804:15;4797:62;4878:3;4868:13;;4934:2;4923:9;4919:18;4906:32;4963:2;4953:8;4950:16;4947:36;;;4979:1;4976;4969:12;4947:36;5015:48;5059:3;5048:8;5037:9;5033:24;5015:48;:::i;:::-;5010:2;5003:5;4999:14;4992:72;;;;5083:3;5146:2;5135:9;5131:18;5118:32;5113:2;5106:5;5102:14;5095:56;;5170:3;5205:37;5238:2;5227:9;5223:18;5205:37;:::i;:::-;5189:14;;;5182:61;5262:3;5297:37;5315:18;;;5297:37;:::i;:::-;5281:14;;;5274:61;5354:3;5389:37;5407:18;;;5389:37;:::i;:::-;5373:14;;;5366:61;5446:3;5481:37;5499:18;;;5481:37;:::i;:::-;5465:14;;;5458:61;5538:3;5573:37;5591:18;;;5573:37;:::i;:::-;5557:14;;;5550:61;5630:3;5665:37;5683:18;;;5665:37;:::i;:::-;5649:14;;;5642:61;5723:3;5759:38;5777:19;;;5759:38;:::i;:::-;5742:15;;;5735:63;5818:3;5867:19;;;5854:33;5837:15;;;5830:58;5908:3;5957:19;;;5944:33;5927:15;;;5920:58;;;;5746:5;3890:2094;-1:-1:-1;3890:2094:32:o;5989:354::-;6078:6;6131:2;6119:9;6110:7;6106:23;6102:32;6099:52;;;6147:1;6144;6137:12;6099:52;6174:23;;-1:-1:-1;;;;;6209:30:32;;6206:50;;;6252:1;6249;6242:12;6206:50;6275:62;6329:7;6320:6;6309:9;6305:22;6275:62;:::i;6530:177::-;6598:20;;-1:-1:-1;;;;;;6647:35:32;;6637:46;;6627:74;;6697:1;6694;6687:12;6712:118;6798:5;6791:13;6784:21;6777:5;6774:32;6764:60;;6820:1;6817;6810:12;6835:128;6900:20;;6929:28;6900:20;6929:28;:::i;6968:2188::-;7025:5;7073:6;7061:9;7056:3;7052:19;7048:32;7045:52;;;7093:1;7090;7083:12;7045:52;7115:22;;:::i;:::-;7106:31;;7160:29;7179:9;7160:29;:::i;:::-;7153:5;7146:44;7222:38;7256:2;7245:9;7241:18;7222:38;:::i;:::-;7217:2;7210:5;7206:14;7199:62;7293:38;7327:2;7316:9;7312:18;7293:38;:::i;:::-;7288:2;7277:14;;7270:62;7383:2;7368:18;;7355:32;-1:-1:-1;;;;;7436:14:32;;;7433:34;;;7463:1;7460;7453:12;7433:34;7499:46;7541:3;7532:6;7521:9;7517:22;7499:46;:::i;:::-;7494:2;7487:5;7483:14;7476:70;7579:39;7613:3;7602:9;7598:19;7579:39;:::i;:::-;7573:3;7566:5;7562:15;7555:64;7672:3;7661:9;7657:19;7644:33;7628:49;;7702:2;7692:8;7689:16;7686:36;;;7718:1;7715;7708:12;7686:36;7755:48;7799:3;7788:8;7777:9;7773:24;7755:48;:::i;:::-;7749:3;7742:5;7738:15;7731:73;7865:3;7854:9;7850:19;7837:33;7831:3;7824:5;7820:15;7813:58;7932:3;7921:9;7917:19;7904:33;7898:3;7891:5;7887:15;7880:58;7957:3;7947:13;;7992:38;8026:2;8015:9;8011:18;7992:38;:::i;:::-;7987:2;7980:5;7976:14;7969:62;8050:3;8040:13;;8106:2;8095:9;8091:18;8078:32;8135:2;8125:8;8122:16;8119:36;;;8151:1;8148;8141:12;8119:36;8187:48;8231:3;8220:8;8209:9;8205:24;8187:48;:::i;:::-;8182:2;8175:5;8171:14;8164:72;;;;8255:3;8290:37;8323:2;8312:9;8308:18;8290:37;:::i;:::-;8274:14;;;8267:61;8347:3;8382:36;8399:18;;;8382:36;:::i;:::-;8366:14;;;8359:60;8438:3;8486:18;;;8473:32;8457:14;;;8450:56;8525:3;8560:37;8578:18;;;8560:37;:::i;:::-;8544:14;;;8537:61;8617:3;8652:37;8670:18;;;8652:37;:::i;:::-;8636:14;;;8629:61;8709:3;8744:37;8762:18;;;8744:37;:::i;:::-;8728:14;;;8721:61;8802:3;8838:38;8856:19;;;8838:38;:::i;:::-;8821:15;;;8814:63;8897:3;8933:36;8949:19;;;8933:36;:::i;:::-;8916:15;;;8909:61;8990:3;9039:19;;;9026:33;9009:15;;;9002:58;9080:3;9129:19;;;9116:33;9099:15;;;9092:58;;;;8920:5;6968:2188;-1:-1:-1;6968:2188:32:o;9161:1040::-;9312:6;9320;9328;9336;9344;9397:3;9385:9;9376:7;9372:23;9368:33;9365:53;;;9414:1;9411;9404:12;9365:53;9441:23;;-1:-1:-1;;;;;9513:14:32;;;9510:34;;;9540:1;9537;9530:12;9510:34;9563:61;9616:7;9607:6;9596:9;9592:22;9563:61;:::i;:::-;9553:71;;9677:2;9666:9;9662:18;9649:32;9633:48;;9706:2;9696:8;9693:16;9690:36;;;9722:1;9719;9712:12;9690:36;9745:52;9789:7;9778:8;9767:9;9763:24;9745:52;:::i;:::-;9735:62;;9850:2;9839:9;9835:18;9822:32;9806:48;;9879:2;9869:8;9866:16;9863:36;;;9895:1;9892;9885:12;9863:36;9918:52;9962:7;9951:8;9940:9;9936:24;9918:52;:::i;:::-;9908:62;;10023:2;10012:9;10008:18;9995:32;9979:48;;10052:2;10042:8;10039:16;10036:36;;;10068:1;10065;10058:12;10036:36;;10091:52;10135:7;10124:8;10113:9;10109:24;10091:52;:::i;:::-;9161:1040;;;;-1:-1:-1;9161:1040:32;;10190:3;10175:19;10162:33;;9161:1040;-1:-1:-1;;;9161:1040:32:o;10386:180::-;10445:6;10498:2;10486:9;10477:7;10473:23;10469:32;10466:52;;;10514:1;10511;10504:12;10466:52;-1:-1:-1;10537:23:32;;10386:180;-1:-1:-1;10386:180:32:o;10571:873::-;10684:6;10692;10700;10708;10761:3;10749:9;10740:7;10736:23;10732:33;10729:53;;;10778:1;10775;10768:12;10729:53;10805:23;;-1:-1:-1;;;;;10877:14:32;;;10874:34;;;10904:1;10901;10894:12;10874:34;10927:50;10969:7;10960:6;10949:9;10945:22;10927:50;:::i;:::-;10917:60;;11030:2;11019:9;11015:18;11002:32;10986:48;;11059:2;11049:8;11046:16;11043:36;;;11075:1;11072;11065:12;11043:36;11098:52;11142:7;11131:8;11120:9;11116:24;11098:52;:::i;:::-;11088:62;;11200:2;11189:9;11185:18;11172:32;11159:45;;11213:28;11235:5;11213:28;:::i;:::-;11260:5;;-1:-1:-1;11318:2:32;11303:18;;11290:32;;11334:16;;;11331:36;;;11363:1;11360;11353:12;11331:36;;11386:52;11430:7;11419:8;11408:9;11404:24;11386:52;:::i;:::-;11376:62;;;10571:873;;;;;;;:::o;11642:247::-;11701:6;11754:2;11742:9;11733:7;11729:23;11725:32;11722:52;;;11770:1;11767;11760:12;11722:52;11809:9;11796:23;11828:31;11853:5;11828:31;:::i;12367:183::-;12427:4;-1:-1:-1;;;;;12449:30:32;;12446:56;;;12482:18;;:::i;:::-;-1:-1:-1;12527:1:32;12523:14;12539:4;12519:25;;12367:183::o;12555:891::-;12639:6;12670:2;12713;12701:9;12692:7;12688:23;12684:32;12681:52;;;12729:1;12726;12719:12;12681:52;12756:23;;-1:-1:-1;;;;;12791:30:32;;12788:50;;;12834:1;12831;12824:12;12788:50;12857:22;;12910:4;12902:13;;12898:27;-1:-1:-1;12888:55:32;;12939:1;12936;12929:12;12888:55;12975:2;12962:16;12998:60;13014:43;13054:2;13014:43;:::i;12998:60::-;13092:15;;;13174:1;13170:10;;;;13162:19;;13158:28;;;13123:12;;;;13198:19;;;13195:39;;;13230:1;13227;13220:12;13195:39;13254:11;;;;13274:142;13290:6;13285:3;13282:15;13274:142;;;13356:17;;13344:30;;13307:12;;;;13394;;;;13274:142;;;13435:5;12555:891;-1:-1:-1;;;;;;;12555:891:32:o;13451:104::-;-1:-1:-1;;;;;13517:31:32;13505:44;;13451:104::o;13560:250::-;13645:1;13655:113;13669:6;13666:1;13663:13;13655:113;;;13745:11;;;13739:18;13726:11;;;13719:39;13691:2;13684:10;13655:113;;;-1:-1:-1;;13802:1:32;13784:16;;13777:27;13560:250::o;13815:271::-;13857:3;13895:5;13889:12;13922:6;13917:3;13910:19;13938:76;14007:6;14000:4;13995:3;13991:14;13984:4;13977:5;13973:16;13938:76;:::i;:::-;14068:2;14047:15;-1:-1:-1;;14043:29:32;14034:39;;;;14075:4;14030:50;;13815:271;-1:-1:-1;;13815:271:32:o;14091:1665::-;14303:4;14332:2;14372;14361:9;14357:18;14402:2;14391:9;14384:21;14425:6;14460;14454:13;14491:6;14483;14476:22;14517:2;14507:12;;14550:2;14539:9;14535:18;14528:25;;14612:2;14602:6;14599:1;14595:14;14584:9;14580:30;14576:39;14650:2;14642:6;14638:15;14671:1;14681:1046;14695:6;14692:1;14689:13;14681:1046;;;14760:22;;;-1:-1:-1;;14756:36:32;14744:49;;14816:13;;14884:9;;14869:25;;14941:11;;;14935:18;-1:-1:-1;;;;;14931:44:32;14914:15;;;14907:69;15015:11;;;15009:18;14852:4;15047:15;;;15040:27;;;14852:4;15094:48;15126:15;;;15009:18;15094:48;:::i;:::-;15080:62;;;15165:4;15218:2;15214;15210:11;15204:18;15271:6;15263;15259:19;15254:2;15246:6;15242:15;15235:44;15306:41;15340:6;15324:14;15306:41;:::i;:::-;15292:55;;;;15370:4;15439:2;15435;15431:11;15425:18;15418:26;15411:34;15406:2;15398:6;15394:15;15387:59;;15469:4;15522:2;15518;15514:11;15508:18;15486:40;;15575:6;15567;15563:19;15558:2;15550:6;15546:15;15539:44;;15606:41;15640:6;15624:14;15606:41;:::i;:::-;15705:12;;;;15596:51;-1:-1:-1;;;15670:15:32;;;;14717:1;14710:9;14681:1046;;;-1:-1:-1;15744:6:32;;14091:1665;-1:-1:-1;;;;;;;;14091:1665:32:o;15761:203::-;-1:-1:-1;;;;;15925:32:32;;;;15907:51;;15895:2;15880:18;;15761:203::o;15969:309::-;16034:6;16042;16095:2;16083:9;16074:7;16070:23;16066:32;16063:52;;;16111:1;16108;16101:12;16063:52;16147:9;16134:23;16124:33;;16207:2;16196:9;16192:18;16179:32;16220:28;16242:5;16220:28;:::i;:::-;16267:5;16257:15;;;15969:309;;;;;:::o;16283:572::-;16389:6;16397;16450:2;16438:9;16429:7;16425:23;16421:32;16418:52;;;16466:1;16463;16456:12;16418:52;16493:23;;-1:-1:-1;;;;;16565:14:32;;;16562:34;;;16592:1;16589;16582:12;16562:34;16615:61;16668:7;16659:6;16648:9;16644:22;16615:61;:::i;16860:352::-;16948:6;17001:2;16989:9;16980:7;16976:23;16972:32;16969:52;;;17017:1;17014;17007:12;16969:52;17044:23;;-1:-1:-1;;;;;17079:30:32;;17076:50;;;17122:1;17119;17112:12;17076:50;17145:61;17198:7;17189:6;17178:9;17174:22;17145:61;:::i;17217:574::-;17324:6;17332;17385:2;17373:9;17364:7;17360:23;17356:32;17353:52;;;17401:1;17398;17391:12;17353:52;17428:23;;-1:-1:-1;;;;;17500:14:32;;;17497:34;;;17527:1;17524;17517:12;17497:34;17550:62;17604:7;17595:6;17584:9;17580:22;17550:62;:::i;18084:1317::-;18213:6;18221;18229;18237;18245;18298:3;18286:9;18277:7;18273:23;18269:33;18266:53;;;18315:1;18312;18305:12;18266:53;18338:23;;;-1:-1:-1;18380:2:32;18418:18;;;18405:32;-1:-1:-1;;;;;18486:14:32;;;18483:34;;;18513:1;18510;18503:12;18483:34;18536:50;18578:7;18569:6;18558:9;18554:22;18536:50;:::i;:::-;18526:60;;18633:2;18622:9;18618:18;18605:32;18595:42;;18684:2;18673:9;18669:18;18656:32;18646:42;;18741:3;18730:9;18726:19;18713:33;18697:49;;18771:2;18761:8;18758:16;18755:36;;;18787:1;18784;18777:12;18755:36;-1:-1:-1;18810:24:32;;18865:4;18857:13;;18853:27;-1:-1:-1;18843:55:32;;18894:1;18891;18884:12;18843:55;18930:2;18917:16;18953:60;18969:43;19009:2;18969:43;:::i;18953:60::-;19047:15;;;19129:1;19125:10;;;;19117:19;;19113:28;;;19078:12;;;;19153:19;;;19150:39;;;19185:1;19182;19175:12;19150:39;19209:11;;;;19229:142;19245:6;19240:3;19237:15;19229:142;;;19311:17;;19299:30;;19262:12;;;;19349;;;;19229:142;;;19390:5;19380:15;;;;;;;18084:1317;;;;;;;;:::o;19971:380::-;20050:1;20046:12;;;;20093;;;20114:61;;20168:4;20160:6;20156:17;20146:27;;20114:61;20221:2;20213:6;20210:14;20190:18;20187:38;20184:161;;20267:10;20262:3;20258:20;20255:1;20248:31;20302:4;20299:1;20292:15;20330:4;20327:1;20320:15;20184:161;;19971:380;;;:::o;20482:545::-;20584:2;20579:3;20576:11;20573:448;;;20620:1;20645:5;20641:2;20634:17;20690:4;20686:2;20676:19;20760:2;20748:10;20744:19;20741:1;20737:27;20731:4;20727:38;20796:4;20784:10;20781:20;20778:47;;;-1:-1:-1;20819:4:32;20778:47;20874:2;20869:3;20865:12;20862:1;20858:20;20852:4;20848:31;20838:41;;20929:82;20947:2;20940:5;20937:13;20929:82;;;20992:17;;;20973:1;20962:13;20929:82;;;20933:3;;;20573:448;20482:545;;;:::o;21203:1352::-;21323:10;;-1:-1:-1;;;;;21345:30:32;;21342:56;;;21378:18;;:::i;:::-;21407:97;21497:6;21457:38;21489:4;21483:11;21457:38;:::i;:::-;21451:4;21407:97;:::i;:::-;21559:4;;21623:2;21612:14;;21640:1;21635:663;;;;22342:1;22359:6;22356:89;;;-1:-1:-1;22411:19:32;;;22405:26;22356:89;-1:-1:-1;;21160:1:32;21156:11;;;21152:24;21148:29;21138:40;21184:1;21180:11;;;21135:57;22458:81;;21605:944;;21635:663;20429:1;20422:14;;;20466:4;20453:18;;-1:-1:-1;;21671:20:32;;;21789:236;21803:7;21800:1;21797:14;21789:236;;;21892:19;;;21886:26;21871:42;;21984:27;;;;21952:1;21940:14;;;;21819:19;;21789:236;;;21793:3;22053:6;22044:7;22041:19;22038:201;;;22114:19;;;22108:26;-1:-1:-1;;22197:1:32;22193:14;;;22209:3;22189:24;22185:37;22181:42;22166:58;22151:74;;22038:201;-1:-1:-1;;;;;22285:1:32;22269:14;;;22265:22;22252:36;;-1:-1:-1;21203:1352:32:o;22560:772::-;22610:3;22651:5;22645:12;22680:36;22706:9;22680:36;:::i;:::-;22725:19;;;22763:4;22786:1;22803:18;;;22830:146;;;;22990:1;22985:341;;;;22796:530;;22830:146;-1:-1:-1;;22872:24:32;;22858:12;;;22851:46;22944:14;;22937:22;22934:1;22930:30;22921:40;;22917:49;;;-1:-1:-1;22830:146:32;;22985:341;23016:5;23013:1;23006:16;23063:2;23060:1;23050:16;23088:1;23102:174;23116:6;23113:1;23110:13;23102:174;;;23203:14;;23185:11;;;23181:20;;23174:44;23246:16;;;;23131:10;;23102:174;;;23300:11;;23296:20;;;-1:-1:-1;;22796:530:32;;;;;;22560:772;;;;:::o;23337:393::-;23528:2;23517:9;23510:21;23491:4;23554:53;23603:2;23592:9;23588:18;23580:6;23554:53;:::i;:::-;23655:9;23647:6;23643:22;23638:2;23627:9;23623:18;23616:50;23683:41;23717:6;23709;23683:41;:::i;23735:127::-;23796:10;23791:3;23787:20;23784:1;23777:31;23827:4;23824:1;23817:15;23851:4;23848:1;23841:15;23867:135;23906:3;23927:17;;;23924:43;;23947:18;;:::i;:::-;-1:-1:-1;23994:1:32;23983:13;;23867:135::o;24007:329::-;24209:2;24191:21;;;24248:1;24228:18;;;24221:29;-1:-1:-1;;;24281:2:32;24266:18;;24259:36;24327:2;24312:18;;24007:329::o;24341:::-;24543:2;24525:21;;;24582:1;24562:18;;;24555:29;-1:-1:-1;;;24615:2:32;24600:18;;24593:36;24661:2;24646:18;;24341:329::o;24675:394::-;24915:1;24911;24906:3;24902:11;24898:19;24890:6;24886:32;24875:9;24868:51;24955:6;24950:2;24939:9;24935:18;24928:34;24998:2;24993;24982:9;24978:18;24971:30;24849:4;25018:45;25059:2;25048:9;25044:18;25036:6;25018:45;:::i;25074:245::-;25141:6;25194:2;25182:9;25173:7;25169:23;25165:32;25162:52;;;25210:1;25207;25200:12;25162:52;25242:9;25236:16;25261:28;25283:5;25261:28;:::i;25324:329::-;25526:2;25508:21;;;25565:1;25545:18;;;25538:29;-1:-1:-1;;;25598:2:32;25583:18;;25576:36;25644:2;25629:18;;25324:329::o;27996:128::-;28063:9;;;28084:11;;;28081:37;;;28098:18;;:::i;28129:345::-;-1:-1:-1;;;;;28349:32:32;;;;28331:51;;28413:2;28398:18;;28391:34;;;;28456:2;28441:18;;28434:34;28319:2;28304:18;;28129:345::o;28479:168::-;28552:9;;;28583;;28600:15;;;28594:22;;28580:37;28570:71;;28621:18;;:::i;28652:127::-;28713:10;28708:3;28704:20;28701:1;28694:31;28744:4;28741:1;28734:15;28768:4;28765:1;28758:15;28784:120;28824:1;28850;28840:35;;28855:18;;:::i;:::-;-1:-1:-1;28889:9:32;;28784:120::o;29468:2429::-;29583:12;;-1:-1:-1;;;;;;29226:35:32;29214:48;;29521:3;29549:6;29647:4;29640:5;29636:16;29630:23;29662:48;29704:4;29699:3;29695:14;29681:12;29662:48;:::i;:::-;;29758:4;29751:5;29747:16;29741:23;29773:50;29817:4;29812:3;29808:14;29792;29773:50;:::i;:::-;;29871:4;29864:5;29860:16;29854:23;29909:2;29902:4;29897:3;29893:14;29886:26;29933:47;29976:2;29971:3;29967:12;29951:14;29933:47;:::i;:::-;29921:59;;;30028:4;30021:5;30017:16;30011:23;30043:50;30087:4;30082:3;30078:14;30062;30043:50;:::i;:::-;;30141:4;30134:5;30130:16;30124:23;30189:3;30183:4;30179:14;30172:4;30167:3;30163:14;30156:38;30217:39;30251:4;30235:14;30217:39;:::i;:::-;30203:53;;;30305:4;30298:5;30294:16;30288:23;30281:4;30276:3;30272:14;30265:47;30361:4;30354:5;30350:16;30344:23;30337:4;30332:3;30328:14;30321:47;30387:6;30441:2;30434:5;30430:14;30424:21;30454:48;30498:2;30493:3;30489:12;30473:14;30454:48;:::i;:::-;;;30521:6;30575:2;30568:5;30564:14;30558:21;30621:3;30613:6;30609:16;30604:2;30599:3;30595:12;30588:38;30649:41;30683:6;30667:14;30649:41;:::i;:::-;30635:55;;;;30709:6;30763:2;30756:5;30752:14;30746:21;30776:47;30819:2;30814:3;30810:12;30794:14;29349:10;29338:22;29326:35;;29273:94;30776:47;;;30842:6;30896:2;30889:5;30885:14;30879:21;30909:46;30951:2;30946:3;30942:12;30926:14;29447:1;29436:20;29424:33;;29372:91;30909:46;-1:-1:-1;;30974:6:32;31016:14;;;31010:21;30996:12;;;30989:43;31051:6;31094:14;;;31088:21;29349:10;29338:22;;;31152:12;;;29326:35;;;;31184:6;31228:14;;;31222:21;29338:22;;31287:12;;;29326:35;31319:6;31363:14;;;31357:21;29338:22;;;31422:12;;;29326:35;31455:6;31499:15;;;31493:22;17872:6;17861:18;31559:13;;;17849:31;31593:6;31637:15;;;31631:22;11964:13;11957:21;31695:13;;;11945:34;31729:6;31772:15;;;31766:22;31751:13;;;31744:45;31809:6;31852:15;;;31846:22;31831:13;;;;31824:45;;;;-1:-1:-1;31831:13:32;29468:2429::o;31902:348::-;32125:2;32114:9;32107:21;32088:4;32145:56;32197:2;32186:9;32182:18;32174:6;32145:56;:::i;:::-;32137:64;;32237:6;32232:2;32221:9;32217:18;32210:34;31902:348;;;;;:::o;32255:125::-;32320:9;;;32341:10;;;32338:36;;;32354:18;;:::i;32595:435::-;-1:-1:-1;;;;;32846:32:32;;;;32828:51;;32910:2;32895:18;;32888:34;;;;32965:14;32958:22;32953:2;32938:18;;32931:50;33012:2;32997:18;;32990:34;32815:3;32800:19;;32595:435::o;33035:287::-;33164:3;33202:6;33196:13;33218:66;33277:6;33272:3;33265:4;33257:6;33253:17;33218:66;:::i;:::-;33300:16;;;;;33035:287;-1:-1:-1;;33035:287:32:o;33327:531::-;33591:10;33583:6;33579:23;33568:9;33561:42;33639:6;33634:2;33623:9;33619:18;33612:34;33682:3;33677:2;33666:9;33662:18;33655:31;33542:4;33703:46;33744:3;33733:9;33729:19;33721:6;33703:46;:::i;:::-;33792:14;;33785:22;33780:2;33765:18;;33758:50;-1:-1:-1;33839:3:32;33824:19;33817:35;33695:54;33327:531;-1:-1:-1;;;33327:531:32:o;33863:329::-;34065:2;34047:21;;;34104:1;34084:18;;;34077:29;-1:-1:-1;;;34137:2:32;34122:18;;34115:36;34183:2;34168:18;;33863:329::o;34197:::-;34399:2;34381:21;;;34438:1;34418:18;;;34411:29;-1:-1:-1;;;34471:2:32;34456:18;;34449:36;34517:2;34502:18;;34197:329::o;34531:274::-;-1:-1:-1;;;;;34723:32:32;;;;34705:51;;34787:2;34772:18;;34765:34;34693:2;34678:18;;34531:274::o;35812:255::-;-1:-1:-1;;;36014:20:32;;36059:1;36050:11;;35812:255::o;36366:256::-;-1:-1:-1;;;36568:21:32;;36614:1;36605:11;;36366:256::o;37888:329::-;38090:2;38072:21;;;38129:1;38109:18;;;38102:29;-1:-1:-1;;;38162:2:32;38147:18;;38140:36;38208:2;38193:18;;37888:329::o;38222:112::-;38254:1;38280;38270:35;;38285:18;;:::i;:::-;-1:-1:-1;38319:9:32;;38222:112::o;39260:127::-;39321:10;39316:3;39312:20;39309:1;39302:31;39352:4;39349:1;39342:15;39376:4;39373:1;39366:15;40060:656;40321:6;40316:3;40309:19;40291:3;40357:6;40351:13;40373:73;40439:6;40434:2;40429:3;40425:12;40420:2;40412:6;40408:15;40373:73;:::i;:::-;40474:6;40469:3;40465:16;40455:26;;40542:1;40538;40534:2;40530:10;40526:18;40522:23;40514:6;40510:36;40505:2;40501;40497:11;40490:57;40578:6;40572:13;40594:74;40659:8;40654:2;40650;40646:11;40641:2;40633:6;40629:15;40594:74;:::i;:::-;40688:17;40707:2;40684:26;;40060:656;-1:-1:-1;;;;;;40060:656:32:o;40721:442::-;40774:5;40827:3;40820:4;40812:6;40808:17;40804:27;40794:55;;40845:1;40842;40835:12;40794:55;40874:6;40868:13;40905:49;40921:32;40950:2;40921:32;:::i;40905:49::-;40979:2;40970:7;40963:19;41025:3;41018:4;41013:2;41005:6;41001:15;40997:26;40994:35;40991:55;;;41042:1;41039;41032:12;40991:55;41055:77;41129:2;41122:4;41113:7;41109:18;41102:4;41094:6;41090:17;41055:77;:::i;41168:335::-;41247:6;41300:2;41288:9;41279:7;41275:23;41271:32;41268:52;;;41316:1;41313;41306:12;41268:52;41343:16;;-1:-1:-1;;;;;41371:30:32;;41368:50;;;41414:1;41411;41404:12;41368:50;41437:60;41489:7;41480:6;41469:9;41465:22;41437:60;:::i;41508:608::-;-1:-1:-1;;;41870:3:32;41863:16;41908:6;41904:1;41899:3;41895:11;41888:27;-1:-1:-1;;;41940:2:32;41935:3;41931:12;41924:25;41845:3;41978:6;41972:13;41994:75;42062:6;42057:2;42052:3;42048:12;42041:4;42033:6;42029:17;41994:75;:::i;:::-;42089:16;;;;42107:2;42085:25;;41508:608;-1:-1:-1;;;41508:608:32:o;42121:468::-;42344:2;42333:9;42326:21;42307:4;42370:45;42411:2;42400:9;42396:18;42388:6;42370:45;:::i;:::-;42463:9;42455:6;42451:22;42446:2;42435:9;42431:18;42424:50;42491:33;42517:6;42509;42491:33;:::i;:::-;42483:41;;;42574:6;42567:14;42560:22;42555:2;42544:9;42540:18;42533:50;42121:468;;;;;;:::o;43262:172::-;43329:10;43359;;;43371;;;43355:27;;43394:11;;;43391:37;;;43408:18;;:::i;:::-;43391:37;43262:172;;;;:::o;45777:329::-;45979:2;45961:21;;;46018:1;45998:18;;;45991:29;-1:-1:-1;;;46051:2:32;46036:18;;46029:36;46097:2;46082:18;;45777:329::o;47466:::-;47668:2;47650:21;;;47707:1;47687:18;;;47680:29;-1:-1:-1;;;47740:2:32;47725:18;;47718:36;47786:2;47771:18;;47466:329::o;48747:226::-;48902:2;48891:9;48884:21;48865:4;48922:45;48963:2;48952:9;48948:18;48940:6;48922:45;:::i;48978:2007::-;49102:6;49133:2;49176;49164:9;49155:7;49151:23;49147:32;49144:52;;;49192:1;49189;49182:12;49144:52;49219:16;;-1:-1:-1;;;;;49284:14:32;;;49281:34;;;49311:1;49308;49301:12;49281:34;49349:6;49338:9;49334:22;49324:32;;49394:7;49387:4;49383:2;49379:13;49375:27;49365:55;;49416:1;49413;49406:12;49365:55;49445:2;49439:9;49468:60;49484:43;49524:2;49484:43;:::i;49468:60::-;49562:15;;;49644:1;49640:10;;;;49632:19;;49628:28;;;49593:12;;;;49668:19;;;49665:39;;;49700:1;49697;49690:12;49665:39;49732:2;49728;49724:11;49744:1211;49760:6;49755:3;49752:15;49744:1211;;;49839:3;49833:10;49875:2;49862:11;49859:19;49856:109;;;49919:1;49948:2;49944;49937:14;49856:109;49988:20;;50031:4;50059:16;;;-1:-1:-1;;50055:30:32;50051:39;-1:-1:-1;50048:129:32;;;50131:1;50160:2;50156;50149:14;50048:129;50203:22;;:::i;:::-;50267:2;50263;50259:11;50253:18;50319:2;50310:7;50306:16;50297:7;50294:29;50284:127;;50365:1;50394:2;50390;50383:14;50284:127;50424:22;;50470:2;50507:12;;;50501:19;50536:16;;;50533:109;;;50594:1;50624:3;50619;50612:16;50533:109;50678:64;50734:7;50729:2;50718:8;50714:2;50710:17;50706:26;50678:64;:::i;:::-;50662:14;;;50655:88;-1:-1:-1;50767:2:32;50812:12;;;50806:19;50789:15;;;50782:44;;;;50869:11;;;;50863:18;50846:15;;;50839:43;50895:18;;50933:12;;;;49777;;49744:1211;;;-1:-1:-1;50974:5:32;48978:2007;-1:-1:-1;;;;;;;;48978:2007:32:o;51324:148::-;51412:4;51391:12;;;51405;;;51387:31;;51430:13;;51427:39;;;51446:18;;:::i;51477:175::-;51514:3;51558:4;51551:5;51547:16;51587:4;51578:7;51575:17;51572:43;;51595:18;;:::i;:::-;51644:1;51631:15;;51477:175;-1:-1:-1;;51477:175:32:o;51657:184::-;51727:6;51780:2;51768:9;51759:7;51755:23;51751:32;51748:52;;;51796:1;51793;51786:12;51748:52;-1:-1:-1;51819:16:32;;51657:184;-1:-1:-1;51657:184:32:o;52514:848::-;52740:4;52788:3;52777:9;52773:19;52819:6;52808:9;52801:25;52845:2;52883:6;52878:2;52867:9;52863:18;52856:34;52926:6;52921:2;52910:9;52906:18;52899:34;52969:3;52964:2;52953:9;52949:18;52942:31;52993:6;53028;53022:13;53059:6;53051;53044:22;53097:3;53086:9;53082:19;53075:26;;53136:2;53128:6;53124:15;53110:29;;53157:1;53167:169;53181:6;53178:1;53175:13;53167:169;;;53242:13;;53230:26;;53311:15;;;;53276:12;;;;53203:1;53196:9;53167:169;;;-1:-1:-1;53353:3:32;;52514:848;-1:-1:-1;;;;;;;;;52514:848:32:o;53889:257::-;-1:-1:-1;;;;;54010:10:32;;;54022;;;54006:27;54053:20;;;;53960:18;54092:24;;;54082:58;;54120:18;;:::i;:::-;54082:58;;53889:257;;;;:::o;54485:307::-;54662:2;54651:9;54644:21;54625:4;54682:45;54723:2;54712:9;54708:18;54700:6;54682:45;:::i;:::-;54674:53;;54777:6;54770:14;54763:22;54758:2;54747:9;54743:18;54736:50;54485:307;;;;;:::o;54797:840::-;54923:3;54952:1;54985:6;54979:13;55015:36;55041:9;55015:36;:::i;:::-;55070:1;55087:18;;;55114:133;;;;55261:1;55256:356;;;;55080:532;;55114:133;-1:-1:-1;;55147:24:32;;55135:37;;55220:14;;55213:22;55201:35;;55192:45;;;-1:-1:-1;55114:133:32;;55256:356;55287:6;55284:1;55277:17;55317:4;55362:2;55359:1;55349:16;55387:1;55401:165;55415:6;55412:1;55409:13;55401:165;;;55493:14;;55480:11;;;55473:35;55536:16;;;;55430:10;;55401:165;;;55405:3;;;55595:6;55590:3;55586:16;55579:23;;55080:532;-1:-1:-1;55628:3:32;;54797:840;-1:-1:-1;;;;;;54797:840:32:o;57051:2638::-;57248:2;57237:9;57230:21;57260:53;57309:2;57298:9;57294:18;57285:6;57279:13;57260:53;:::i;:::-;57211:4;57360:2;57352:6;57348:15;57342:22;57373:52;57421:2;57410:9;57406:18;57392:12;57373:52;:::i;:::-;;57474:2;57466:6;57462:15;57456:22;57497:6;57539:2;57534;57523:9;57519:18;57512:30;57565:54;57614:3;57603:9;57599:19;57583:14;57565:54;:::i;:::-;57551:68;;57668:2;57660:6;57656:15;57650:22;57681:55;57731:3;57720:9;57716:19;57700:14;57681:55;:::i;:::-;;57785:3;57777:6;57773:16;57767:23;57813:2;57809:7;57881:2;57869:9;57861:6;57857:22;57853:31;57847:3;57836:9;57832:19;57825:60;57908:41;57942:6;57926:14;57908:41;:::i;:::-;57894:55;;58004:3;57996:6;57992:16;57986:23;57980:3;57969:9;57965:19;57958:52;58065:3;58057:6;58053:16;58047:23;58041:3;58030:9;58026:19;58019:52;58120:3;58112:6;58108:16;58102:23;58080:45;;58144:3;58156:52;58204:2;58193:9;58189:18;58173:14;29447:1;29436:20;29424:33;;29372:91;58156:52;58257:2;58249:6;58245:15;58239:22;58217:44;;;58280:3;58347:2;58335:9;58327:6;58323:22;58319:31;58314:2;58303:9;58299:18;58292:59;58374:41;58408:6;58392:14;58374:41;:::i;:::-;58440:15;;;58434:22;58475:3;58494:18;;;58487:30;;;;58554:15;;58548:22;58360:55;;-1:-1:-1;58548:22:32;-1:-1:-1;58589:3:32;;-1:-1:-1;58601:53:32;58635:18;;;58548:22;29349:10;29338:22;29326:35;;29273:94;58601:53;58691:15;;58685:22;;-1:-1:-1;58726:3:32;58738:53;58772:18;;;58685:22;29349:10;29338:22;29326:35;;29273:94;58738:53;58828:15;;58822:22;;-1:-1:-1;58863:3:32;58875:53;58909:18;;;58822:22;17872:6;17861:18;17849:31;;17796:90;58875:53;58965:15;;58959:22;;-1:-1:-1;59001:3:32;59013:54;59047:19;;;58959:22;17872:6;17861:18;17849:31;;17796:90;59013:54;59105:16;;59099:23;;-1:-1:-1;59142:3:32;59154:55;59189:19;;;59099:23;29349:10;29338:22;29326:35;;29273:94;59154:55;59247:16;;59241:23;;-1:-1:-1;59284:3:32;59296:55;59331:19;;;59241:23;29349:10;29338:22;29326:35;;29273:94;59296:55;59389:16;;59383:23;;-1:-1:-1;59426:3:32;59438:55;59473:19;;;59383:23;29349:10;29338:22;29326:35;;29273:94;59438:55;59519:16;;59513:23;59556:3;59575:19;;;59568:32;;;;59642:16;;;59636:23;59616:18;;59609:51;;;;-1:-1:-1;59677:6:32;57051:2638;-1:-1:-1;57051:2638:32:o;61724:180::-;-1:-1:-1;;;;;61829:10:32;;;61841;;;61825:27;;61864:11;;;61861:37;;;61878:18;;:::i;62243:277::-;62438:2;62427:9;62420:21;62401:4;62458:56;62510:2;62499:9;62495:18;62487:6;62458:56;:::i;62525:1063::-;62895:4;62924:3;62954:2;62943:9;62936:21;62980:45;63021:2;63010:9;63006:18;62998:6;62980:45;:::i;:::-;62966:59;;63061:6;63056:2;63045:9;63041:18;63034:34;63116:9;63108:6;63104:22;63099:2;63088:9;63084:18;63077:50;63150:33;63176:6;63168;63150:33;:::i;:::-;63136:47;;63219:6;63214:2;63203:9;63199:18;63192:34;63275:9;63267:6;63263:22;63257:3;63246:9;63242:19;63235:51;63309:33;63335:6;63327;63309:33;:::i;:::-;-1:-1:-1;;;;;63379:32:32;;63399:3;63358:19;;63351:61;63449:22;;;63443:3;63428:19;;63421:51;63295:47;-1:-1:-1;63489:33:32;63295:47;63507:6;63489:33;:::i;:::-;63481:41;;;63573:6;63566:14;63559:22;63553:3;63542:9;63538:19;63531:51;62525:1063;;;;;;;;;;;:::o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\npragma experimental ABIEncoderV2;\n\nimport \"./Bridge.sol\";\nimport \"./QuotesV2.sol\";\nimport \"./SignatureValidator.sol\";\nimport \"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\";\nimport \"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\";\nimport \"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\";\n\n/**\n @title Contract that assists with the Flyover protocol\n */\n\ncontract LiquidityBridgeContractV2 is Initializable, OwnableUpgradeable, ReentrancyGuardUpgradeable {\n uint16 constant public MAX_CALL_GAS_COST = 35000;\n uint16 constant public MAX_REFUND_GAS_LIMIT = 2300;\n\n uint8 constant public UNPROCESSED_QUOTE_CODE = 0;\n uint8 constant public CALL_DONE_CODE = 1;\n uint8 constant public PROCESSED_QUOTE_CODE = 2;\n\n int16 constant public BRIDGE_REFUNDED_USER_ERROR_CODE = - 100;\n int16 constant public BRIDGE_REFUNDED_LP_ERROR_CODE = - 200;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE = - 300;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE = - 301;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE = - 302;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR = - 303;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR = - 304;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR =\n - 305;\n int16 constant public BRIDGE_GENERIC_ERROR = - 900;\n uint constant public PAY_TO_ADDRESS_OUTPUT = 0;\n uint constant public QUOTE_HASH_OUTPUT = 1;\n\n struct Registry {\n uint32 timestamp;\n bool success;\n }\n\n struct PegoutRecord {\n uint256 depositTimestamp;\n bool completed;\n }\n\n struct LiquidityProvider {\n uint id;\n address provider;\n string name;\n string apiBaseUrl;\n bool status;\n string providerType;\n }\n\n event Register(uint id, address indexed from, uint256 amount);\n event CollateralIncrease(address from, uint256 amount);\n event PegoutCollateralIncrease(address from, uint256 amount);\n event Withdrawal(address from, uint256 amount);\n event WithdrawCollateral(address from, uint256 amount);\n event Resigned(address from);\n event CallForUser(\n address indexed from,\n address indexed dest,\n uint gasLimit,\n uint value,\n bytes data,\n bool success,\n bytes32 quoteHash\n );\n event PegInRegistered(bytes32 indexed quoteHash, int256 transferredAmount);\n event Penalized(address liquidityProvider, uint penalty, bytes32 quoteHash);\n event BridgeCapExceeded(bytes32 quoteHash, int256 errorCode);\n event BalanceIncrease(address dest, uint amount);\n event BalanceDecrease(address dest, uint amount);\n event Refund(address dest, uint amount, bool success, bytes32 quoteHash);\n event PegOutRefunded(bytes32 indexed quoteHash);\n event PegOutDeposit(\n bytes32 indexed quoteHash,\n address indexed sender,\n uint256 amount,\n uint256 timestamp\n );\n event PegOutUserRefunded(\n bytes32 indexed quoteHash,\n uint256 value,\n address userAddress\n );\n event DaoFeeSent(bytes32 indexed quoteHash, uint256 amount);\n event ProviderUpdate(address indexed providerAddress, string name, string url);\n\n Bridge public bridge;\n mapping(address => uint256) private balances;\n mapping(address => uint256) private collateral;\n mapping(address => uint256) private pegoutCollateral;\n mapping(uint => LiquidityProvider) private liquidityProviders;\n mapping(bytes32 => Registry) private callRegistry;\n mapping(address => uint256) private resignationBlockNum;\n\n uint256 private minCollateral;\n uint256 private minPegIn;\n\n uint32 private rewardP;\n uint32 private resignDelayInBlocks;\n uint private dust;\n uint public providerId;\n\n uint private btcBlockTime;\n bool private mainnet;\n\n mapping(bytes32 => uint8) private processedQuotes;\n mapping(bytes32 => QuotesV2.PegOutQuote) private registeredPegoutQuotes;\n mapping(bytes32 => PegoutRecord) private pegoutRegistry;\n\n uint256 public productFeePercentage;\n address public daoFeeCollectorAddress;\n\n modifier onlyRegistered() {\n require(isRegistered(msg.sender), \"LBC001\");\n _;\n }\n\n modifier onlyRegisteredForPegout() {\n require(isRegisteredForPegout(msg.sender), \"LBC001\");\n _;\n }\n\n modifier onlyOwnerAndProvider(uint _providerId) {\n require(\n msg.sender == owner() ||\n msg.sender == liquidityProviders[_providerId].provider,\n \"LBC005\"\n );\n _;\n }\n\n function setProviderStatus(\n uint _providerId,\n bool status\n ) external onlyOwnerAndProvider(_providerId) {\n liquidityProviders[_providerId].status = status;\n }\n\n receive() external payable {\n require(msg.sender == address(bridge), \"LBC007\");\n }\n\n function getProviderIds() external view returns (uint) {\n return providerId;\n }\n\n function getBridgeAddress() external view returns (address) {\n return address(bridge);\n }\n\n function getMinCollateral() public view returns (uint) {\n return minCollateral;\n }\n\n function getMinPegIn() external view returns (uint) {\n return minPegIn;\n }\n\n function getRewardPercentage() external view returns (uint) {\n return rewardP;\n }\n\n function getResignDelayBlocks() external view returns (uint) {\n return resignDelayInBlocks;\n }\n\n function getDustThreshold() external view returns (uint) {\n return dust;\n }\n\n function isPegOutQuoteCompleted(bytes32 quoteHash) external view returns (bool) {\n return pegoutRegistry[quoteHash].completed;\n }\n\n /**\n @dev Checks whether a liquidity provider can deliver a pegin service\n @return Whether the liquidity provider is registered and has enough locked collateral\n */\n function isOperational(address addr) external view returns (bool) {\n return isRegistered(addr) && collateral[addr] >= minCollateral;\n }\n\n /**\n @dev Checks whether a liquidity provider can deliver a pegout service\n @return Whether the liquidity provider is registered and has enough locked collateral\n */\n function isOperationalForPegout(address addr) external view returns (bool) {\n return\n isRegisteredForPegout(addr) &&\n pegoutCollateral[addr] >= minCollateral;\n }\n\n /**\n @dev Registers msg.sender as a liquidity provider with msg.value as collateral\n */\n function register(\n string memory _name,\n string memory _apiBaseUrl,\n bool _status,\n string memory _providerType\n ) external payable returns (uint) {\n require(tx.origin == msg.sender, \"LBC003\");\n //require(collateral[msg.sender] == 0, \"Already registered\");\n require(bytes(_name).length > 0, \"LBC010\");\n require(\n bytes(_apiBaseUrl).length > 0,\n \"LBC017\"\n );\n\n // Check if _providerType is one of the valid strings\n require(\n keccak256(abi.encodePacked(_providerType)) ==\n keccak256(abi.encodePacked(\"pegin\")) ||\n keccak256(abi.encodePacked(_providerType)) ==\n keccak256(abi.encodePacked(\"pegout\")) ||\n keccak256(abi.encodePacked(_providerType)) ==\n keccak256(abi.encodePacked(\"both\")),\n \"LBC018\"\n );\n\n require(collateral[msg.sender] == 0 && pegoutCollateral[msg.sender] == 0, \"LBC070\");\n require(\n resignationBlockNum[msg.sender] == 0,\n \"LBC009\"\n );\n\n if (keccak256(abi.encodePacked(_providerType)) == keccak256(abi.encodePacked(\"pegin\"))) {\n require(msg.value >= minCollateral, \"LBC008\");\n collateral[msg.sender] = msg.value;\n } else if (keccak256(abi.encodePacked(_providerType)) == keccak256(abi.encodePacked(\"pegout\"))) {\n require(msg.value >= minCollateral, \"LBC008\");\n pegoutCollateral[msg.sender] = msg.value;\n } else {\n require(msg.value >= minCollateral * 2, \"LBC008\");\n uint halfMsgValue = msg.value / 2;\n collateral[msg.sender] = msg.value % 2 == 0 ? halfMsgValue : halfMsgValue + 1;\n pegoutCollateral[msg.sender] = halfMsgValue;\n }\n\n providerId++;\n liquidityProviders[providerId] = LiquidityProvider({\n id: providerId,\n provider: msg.sender,\n name: _name,\n apiBaseUrl: _apiBaseUrl,\n status: _status,\n providerType: _providerType\n });\n emit Register(providerId, msg.sender, msg.value);\n return (providerId);\n }\n\n function getProviders(\n uint[] memory providerIds\n ) external view returns (LiquidityProvider[] memory) {\n LiquidityProvider[] memory providersToReturn = new LiquidityProvider[](\n providerIds.length\n );\n uint count = 0;\n\n for (uint i = 0; i < providerIds.length; i++) {\n uint id = providerIds[i];\n if (\n (isRegistered(liquidityProviders[id].provider) ||\n isRegisteredForPegout(liquidityProviders[id].provider)) &&\n liquidityProviders[id].status\n ) {\n providersToReturn[count] = liquidityProviders[id];\n count++;\n }\n }\n return providersToReturn;\n }\n\n /**\n @dev Increases the amount of collateral of the sender\n */\n function addCollateral() external payable onlyRegistered {\n collateral[msg.sender] += msg.value;\n emit CollateralIncrease(msg.sender, msg.value);\n }\n\n function addPegoutCollateral() external payable onlyRegisteredForPegout {\n pegoutCollateral[msg.sender] += msg.value;\n emit PegoutCollateralIncrease(msg.sender, msg.value);\n }\n\n /**\n @dev Increases the balance of the sender\n */\n function deposit() external payable onlyRegistered {\n increaseBalance(msg.sender, msg.value);\n }\n\n /**\n @dev Used to withdraw funds\n @param amount The amount to withdraw\n */\n function withdraw(uint256 amount) external {\n require(balances[msg.sender] >= amount, \"LBC019\");\n balances[msg.sender] -= amount;\n (bool success,) = msg.sender.call{value: amount}(\"\");\n require(success, \"LBC020\");\n emit Withdrawal(msg.sender, amount);\n }\n\n /**\n @dev Used to withdraw the locked collateral\n */\n function withdrawCollateral() external nonReentrant {\n require(resignationBlockNum[msg.sender] > 0, \"LBC021\");\n require(\n block.number - resignationBlockNum[msg.sender] >=\n resignDelayInBlocks,\n \"LBC022\"\n );\n uint amount = collateral[msg.sender] + pegoutCollateral[msg.sender];\n pegoutCollateral[msg.sender] = 0;\n collateral[msg.sender] = 0;\n resignationBlockNum[msg.sender] = 0;\n (bool success,) = msg.sender.call{value: amount}(\"\");\n require(success, \"LBC020\");\n emit WithdrawCollateral(msg.sender, amount);\n }\n\n /**\n @dev Used to resign as a liquidity provider\n */\n function resign() external onlyRegistered {\n require(resignationBlockNum[msg.sender] == 0, \"LBC023\");\n resignationBlockNum[msg.sender] = block.number;\n emit Resigned(msg.sender);\n }\n\n /**\n @dev Returns the amount of collateral of a liquidity provider\n @param addr The address of the liquidity provider\n @return The amount of locked collateral\n */\n function getCollateral(address addr) external view returns (uint256) {\n return collateral[addr];\n }\n\n function getPegoutCollateral(address addr) external view returns (uint256) {\n return pegoutCollateral[addr];\n }\n\n /**\n @dev Returns the amount of funds of a liquidity provider\n @param addr The address of the liquidity provider\n @return The balance of the liquidity provider\n */\n function getBalance(address addr) external view returns (uint256) {\n return balances[addr];\n }\n\n /**\n @dev Performs a call on behalf of a user\n @param quote The quote that identifies the service\n @return Boolean indicating whether the call was successful\n */\n function callForUser(\n QuotesV2.PeginQuote memory quote\n ) external payable onlyRegistered nonReentrant returns (bool) {\n require(\n msg.sender == quote.liquidityProviderRskAddress,\n \"LBC024\"\n );\n require(\n balances[quote.liquidityProviderRskAddress] + msg.value >=\n quote.value,\n \"LBC019\"\n );\n\n bytes32 quoteHash = validateAndHashQuote(quote);\n require(\n processedQuotes[quoteHash] == UNPROCESSED_QUOTE_CODE,\n \"LBC025\"\n );\n\n increaseBalance(quote.liquidityProviderRskAddress, msg.value);\n\n // This check ensures that the call cannot be performed with less gas than the agreed amount\n require(\n gasleft() >= quote.gasLimit + MAX_CALL_GAS_COST,\n \"LBC026\"\n );\n (bool success,) = quote.contractAddress.call{\n gas: quote.gasLimit,\n value: quote.value\n }(quote.data);\n\n require(block.timestamp <= type(uint32).max, \"LBC027\");\n callRegistry[quoteHash].timestamp = uint32(block.timestamp);\n\n if (success) {\n callRegistry[quoteHash].success = true;\n decreaseBalance(quote.liquidityProviderRskAddress, quote.value);\n }\n emit CallForUser(\n msg.sender,\n quote.contractAddress,\n quote.gasLimit,\n quote.value,\n quote.data,\n success,\n quoteHash\n );\n processedQuotes[quoteHash] = CALL_DONE_CODE;\n return success;\n }\n\n /**\n @dev Registers a peg-in transaction with the bridge and pays to the involved parties\n @param quote The quote of the service\n @param signature The signature of the quote\n @param btcRawTransaction The peg-in transaction\n @param partialMerkleTree The merkle tree path that proves transaction inclusion\n @param height The block that contains the peg-in transaction\n @return The total peg-in amount received from the bridge contract or an error code\n */\n function registerPegIn(\n QuotesV2.PeginQuote memory quote,\n bytes memory signature,\n bytes memory btcRawTransaction,\n bytes memory partialMerkleTree,\n uint256 height\n ) external nonReentrant returns (int256) {\n bytes32 quoteHash = validateAndHashQuote(quote);\n\n // TODO: allow multiple registerPegIns for the same quote with different transactions\n require(\n processedQuotes[quoteHash] <= CALL_DONE_CODE,\n \"LBC028\"\n );\n require(\n SignatureValidator.verify(\n quote.liquidityProviderRskAddress,\n quoteHash,\n signature\n ),\n \"LBC029\"\n );\n require(height < uint256(int256(type(int32).max)), \"LBC030\");\n\n int256 transferredAmountOrErrorCode = registerBridge(\n quote,\n btcRawTransaction,\n partialMerkleTree,\n height,\n quoteHash\n );\n\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR,\n \"LBC031\"\n );\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE,\n \"LBC032\"\n );\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR,\n \"LBC033\"\n );\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR,\n \"LBC034\"\n );\n require(\n transferredAmountOrErrorCode != BRIDGE_GENERIC_ERROR,\n \"LBC035\"\n );\n require(\n transferredAmountOrErrorCode > 0 ||\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_LP_ERROR_CODE ||\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_USER_ERROR_CODE,\n \"LBC036\"\n );\n\n if (\n shouldPenalizeLP(\n quote,\n transferredAmountOrErrorCode,\n callRegistry[quoteHash].timestamp,\n height\n )\n ) {\n uint penalizationAmount = min(\n quote.penaltyFee,\n collateral[quote.liquidityProviderRskAddress]\n ); // prevent underflow when collateral is less than penalty fee.\n collateral[quote.liquidityProviderRskAddress] -= penalizationAmount;\n emit Penalized(\n quote.liquidityProviderRskAddress,\n penalizationAmount,\n quoteHash\n );\n\n // pay reward to sender\n uint256 punisherReward = (penalizationAmount * rewardP) / 100;\n increaseBalance(msg.sender, punisherReward);\n }\n\n if (\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_LP_ERROR_CODE ||\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_USER_ERROR_CODE\n ) {\n // Bridge cap exceeded\n processedQuotes[quoteHash] = PROCESSED_QUOTE_CODE;\n delete callRegistry[quoteHash];\n emit BridgeCapExceeded(quoteHash, transferredAmountOrErrorCode);\n return transferredAmountOrErrorCode;\n }\n\n // the amount is safely assumed positive because it's already been\n // validated in lines 287/298 there's no (negative) error code being returned by the bridge.\n uint transferredAmount = uint(transferredAmountOrErrorCode);\n\n QuotesV2.checkAgreedAmount(quote, transferredAmount);\n\n if (callRegistry[quoteHash].timestamp > 0) {\n uint refundAmount;\n\n if (callRegistry[quoteHash].success) {\n refundAmount = min(\n transferredAmount,\n quote.value + quote.callFee + quote.gasFee\n );\n } else {\n refundAmount = min(transferredAmount, quote.callFee + quote.gasFee);\n }\n increaseBalance(quote.liquidityProviderRskAddress, refundAmount);\n\n uint remainingAmount = transferredAmount - refundAmount;\n payToFeeCollector(quote.productFeeAmount, quoteHash);\n\n if (remainingAmount > dust) {\n // refund rskRefundAddress, if remaining amount greater than dust\n (bool success,) = quote.rskRefundAddress.call{\n gas: MAX_REFUND_GAS_LIMIT,\n value: remainingAmount\n }(\"\");\n emit Refund(\n quote.rskRefundAddress,\n remainingAmount,\n success,\n quoteHash\n );\n\n if (!success) {\n // transfer funds to LP instead, if for some reason transfer to rskRefundAddress was unsuccessful\n increaseBalance(\n quote.liquidityProviderRskAddress,\n remainingAmount\n );\n }\n }\n } else {\n uint refundAmount = transferredAmount;\n\n if (quote.callOnRegister && refundAmount >= quote.value) {\n (bool callSuccess,) = quote.contractAddress.call{\n gas: quote.gasLimit,\n value: quote.value\n }(quote.data);\n emit CallForUser(\n msg.sender,\n quote.contractAddress,\n quote.gasLimit,\n quote.value,\n quote.data,\n callSuccess,\n quoteHash\n );\n\n if (callSuccess) {\n refundAmount -= quote.value;\n }\n }\n if (refundAmount > dust) {\n // refund rskRefundAddress, if refund amount greater than dust\n (bool success,) = quote.rskRefundAddress.call{\n gas: MAX_REFUND_GAS_LIMIT,\n value: refundAmount\n }(\"\");\n emit Refund(\n quote.rskRefundAddress,\n refundAmount,\n success,\n quoteHash\n );\n }\n }\n processedQuotes[quoteHash] = PROCESSED_QUOTE_CODE;\n delete callRegistry[quoteHash];\n emit PegInRegistered(quoteHash, transferredAmountOrErrorCode);\n return transferredAmountOrErrorCode;\n }\n\n function depositPegout( // TODO convert to calldata when contract size issues are fixed\n QuotesV2.PegOutQuote memory quote,\n bytes memory signature\n ) external payable {\n require(isRegisteredForPegout(quote.lpRskAddress), \"LBC037\");\n require(quote.value + quote.callFee + quote.productFeeAmount + quote.gasFee <= msg.value, \"LBC063\");\n require(block.timestamp <= quote.depositDateLimit, \"LBC065\");\n require(block.timestamp <= quote.expireDate, \"LBC046\");\n require(block.number <= quote.expireBlock, \"LBC047\");\n bytes32 quoteHash = hashPegoutQuote(quote);\n require(\n SignatureValidator.verify(quote.lpRskAddress, quoteHash, signature),\n \"LBC029\"\n );\n\n QuotesV2.PegOutQuote storage registeredQuote = registeredPegoutQuotes[quoteHash];\n\n require(pegoutRegistry[quoteHash].completed == false, \"LBC064\");\n require(registeredQuote.lbcAddress == address(0), \"LBC028\");\n registeredPegoutQuotes[quoteHash] = quote;\n pegoutRegistry[quoteHash].depositTimestamp = block.timestamp;\n emit PegOutDeposit(quoteHash, msg.sender, msg.value, block.timestamp);\n }\n\n function refundUserPegOut(\n bytes32 quoteHash\n ) external nonReentrant {\n QuotesV2.PegOutQuote storage quote = registeredPegoutQuotes[quoteHash];\n\n require(quote.lbcAddress != address(0), \"LBC042\");\n require(\n block.timestamp > quote.expireDate &&\n block.number > quote.expireBlock,\n \"LBC041\"\n );\n\n uint valueToTransfer = quote.value + quote.callFee + quote.productFeeAmount + quote.gasFee;\n address addressToTransfer = quote.rskRefundAddress;\n\n uint penalty = min(quote.penaltyFee, pegoutCollateral[quote.lpRskAddress]);\n pegoutCollateral[quote.lpRskAddress] -= penalty;\n\n emit Penalized(quote.lpRskAddress, penalty, quoteHash);\n emit PegOutUserRefunded(\n quoteHash,\n valueToTransfer,\n quote.rskRefundAddress\n );\n\n delete registeredPegoutQuotes[quoteHash];\n pegoutRegistry[quoteHash].completed = true;\n\n (bool sent,) = addressToTransfer.call{value: valueToTransfer}(\"\");\n require(sent, \"LBC044\");\n }\n\n function refundPegOut(\n bytes32 quoteHash,\n bytes memory btcTx,\n bytes32 btcBlockHeaderHash,\n uint256 partialMerkleTree,\n bytes32[] memory merkleBranchHashes\n ) external nonReentrant onlyRegisteredForPegout {\n require(pegoutRegistry[quoteHash].completed == false, \"LBC064\");\n QuotesV2.PegOutQuote storage quote = registeredPegoutQuotes[quoteHash];\n require(quote.lbcAddress != address(0), \"LBC042\");\n BtcUtils.TxRawOutput[] memory outputs = BtcUtils.getOutputs(btcTx);\n bytes memory scriptContent = BtcUtils.parseNullDataScript(outputs[QUOTE_HASH_OUTPUT].pkScript);\n require(scriptContent.length == 33 && scriptContent[0] == 0x20, \"LBC075\");\n // shift the array to remove the first byte (the size)\n for (uint8 i = 0 ; i < scriptContent.length - 1; i++) {\n scriptContent[i] = scriptContent[i + 1];\n }\n bytes32 txQuoteHash = abi.decode(scriptContent, (bytes32));\n require(quoteHash == txQuoteHash, \"LBC069\");\n require(msg.sender == quote.lpRskAddress, \"LBC048\");\n require(\n bridge.getBtcTransactionConfirmations(\n BtcUtils.hashBtcTx(btcTx),\n btcBlockHeaderHash,\n partialMerkleTree,\n merkleBranchHashes\n ) >= int(uint256(quote.transferConfirmations)),\n \"LBC049\"\n );\n require(quote.value <= outputs[PAY_TO_ADDRESS_OUTPUT].value * (10**10), \"LBC067\"); // satoshi to wei\n bytes memory btcTxDestination = BtcUtils.outputScriptToAddress(\n outputs[PAY_TO_ADDRESS_OUTPUT].pkScript,\n mainnet\n );\n require(keccak256(quote.deposityAddress) == keccak256(btcTxDestination), \"LBC068\");\n\n if (\n shouldPenalizePegOutLP(\n quote,\n txQuoteHash,\n btcBlockHeaderHash\n )\n ) {\n uint penalty = min(\n quote.penaltyFee,\n pegoutCollateral[quote.lpRskAddress]\n );\n pegoutCollateral[quote.lpRskAddress] -= penalty;\n emit Penalized(quote.lpRskAddress, penalty, txQuoteHash);\n }\n\n (bool sent,) = quote.lpRskAddress.call{\n value: quote.value + quote.callFee\n }(\"\");\n require(sent, \"LBC050\");\n\n payToFeeCollector(quote.productFeeAmount, quoteHash);\n\n delete registeredPegoutQuotes[txQuoteHash];\n pegoutRegistry[txQuoteHash].completed = true;\n emit PegOutRefunded(txQuoteHash);\n }\n\n function validatePeginDepositAddress(\n QuotesV2.PeginQuote memory quote,\n bytes memory depositAddress\n ) external view returns (bool) {\n bytes32 derivationValue = keccak256(\n bytes.concat(\n hashQuote(quote),\n quote.btcRefundAddress,\n bytes20(quote.lbcAddress),\n quote.liquidityProviderBtcAddress\n )\n );\n bytes memory flyoverRedeemScript = bytes.concat(\n hex\"20\",\n derivationValue,\n hex\"75\",\n bridge.getActivePowpegRedeemScript()\n );\n return BtcUtils.validateP2SHAdress(depositAddress, flyoverRedeemScript, mainnet);\n }\n\n /**\n @dev Calculates hash of a quote. Note: besides calculation this function also validates the quote.\n @param quote The quote of the service\n @return The hash of a quote\n */\n function hashQuote(QuotesV2.PeginQuote memory quote) public view returns (bytes32) {\n return validateAndHashQuote(quote);\n }\n\n function hashPegoutQuote(\n QuotesV2.PegOutQuote memory quote\n ) public view returns (bytes32) {\n return validateAndHashPegOutQuote(quote);\n }\n\n function validateAndHashQuote(\n QuotesV2.PeginQuote memory quote\n ) private view returns (bytes32) {\n require(address(this) == quote.lbcAddress, \"LBC051\");\n require(\n address(bridge) != quote.contractAddress,\n \"LBC052\"\n );\n require(\n quote.btcRefundAddress.length == 21 ||\n quote.btcRefundAddress.length == 33,\n \"LBC053\"\n );\n require(\n quote.liquidityProviderBtcAddress.length == 21,\n \"LBC054\"\n );\n require(\n quote.value + quote.callFee + quote.productFeeAmount + quote.gasFee >= minPegIn,\n \"LBC055\"\n );\n require(\n type(uint32).max >= uint64(quote.agreementTimestamp) + uint64(quote.timeForDeposit),\n \"LBC071\"\n );\n\n return keccak256(QuotesV2.encodeQuote(quote));\n }\n\n function validateAndHashPegOutQuote(\n QuotesV2.PegOutQuote memory quote\n ) private view returns (bytes32) {\n require(address(this) == quote.lbcAddress, \"LBC056\");\n\n return keccak256(QuotesV2.encodePegOutQuote(quote));\n }\n\n function min(uint a, uint b) private pure returns (uint) {\n return a < b ? a : b;\n }\n\n // IMPORTANT: These methods should remain private at all costs\n function increaseBalance(address dest, uint amount) private {\n balances[dest] += amount;\n emit BalanceIncrease(dest, amount);\n }\n\n function decreaseBalance(address dest, uint amount) private {\n balances[dest] -= amount;\n emit BalanceDecrease(dest, amount);\n }\n\n /**\n @dev Checks if a liquidity provider is registered\n @param addr The address of the liquidity provider\n @return Boolean indicating whether the liquidity provider is registered\n */\n function isRegistered(address addr) private view returns (bool) {\n return collateral[addr] > 0 && resignationBlockNum[addr] == 0;\n }\n\n function isRegisteredForPegout(address addr) private view returns (bool) {\n return pegoutCollateral[addr] > 0 && resignationBlockNum[addr] == 0;\n }\n\n /**\n @dev Registers a transaction with the bridge contract\n @param quote The quote of the service\n @param btcRawTransaction The peg-in transaction\n @param partialMerkleTree The merkle tree path that proves transaction inclusion\n @param height The block that contains the transaction\n @return The total peg-in amount received from the bridge contract or an error code\n */\n function registerBridge(\n QuotesV2.PeginQuote memory quote,\n bytes memory btcRawTransaction,\n bytes memory partialMerkleTree,\n uint256 height,\n bytes32 derivationHash\n ) private returns (int256) {\n return\n bridge.registerFastBridgeBtcTransaction(\n btcRawTransaction,\n height,\n partialMerkleTree,\n derivationHash,\n quote.btcRefundAddress,\n payable(this),\n quote.liquidityProviderBtcAddress,\n callRegistry[derivationHash].timestamp > 0 && callRegistry[derivationHash].success\n );\n }\n\n /**\n @dev Checks if a liquidity provider should be penalized\n @param quote The quote of the service\n @param amount The transferred amount or an error code\n @param callTimestamp The time that the liquidity provider called callForUser\n @param height The block height where the peg-in transaction is included\n @return Boolean indicating whether the penalty applies\n */\n function shouldPenalizeLP(\n QuotesV2.PeginQuote memory quote,\n int256 amount,\n uint256 callTimestamp,\n uint256 height\n ) private view returns (bool) {\n // do not penalize if deposit amount is insufficient\n if (amount > 0 && uint256(amount) < quote.value + quote.callFee + quote.productFeeAmount + quote.gasFee) {\n return false;\n }\n\n bytes memory firstConfirmationHeader = bridge\n .getBtcBlockchainBlockHeaderByHeight(height);\n require(firstConfirmationHeader.length > 0, \"Invalid block height\");\n\n uint256 firstConfirmationTimestamp = BtcUtils.getBtcBlockTimestamp(\n firstConfirmationHeader\n );\n\n // do not penalize if deposit was not made on time\n // prevent overflow when collateral is less than penalty fee.\n uint timeLimit = quote.agreementTimestamp + quote.timeForDeposit;\n if (firstConfirmationTimestamp > timeLimit) {\n return false;\n }\n\n // penalize if call was not made\n if (callTimestamp == 0) {\n return true;\n }\n\n bytes memory nConfirmationsHeader = bridge\n .getBtcBlockchainBlockHeaderByHeight(\n height + quote.depositConfirmations - 1\n );\n require(nConfirmationsHeader.length > 0, \"LBC058\");\n\n uint256 nConfirmationsTimestamp = BtcUtils.getBtcBlockTimestamp(\n nConfirmationsHeader\n );\n\n // penalize if the call was not made on time\n if (callTimestamp > nConfirmationsTimestamp + quote.callTime) {\n return true;\n }\n return false;\n }\n\n function shouldPenalizePegOutLP(\n QuotesV2.PegOutQuote memory quote,\n bytes32 quoteHash,\n bytes32 blockHash\n ) private view returns (bool) {\n bytes memory firstConfirmationHeader = bridge.getBtcBlockchainBlockHeaderByHash(blockHash);\n require(firstConfirmationHeader.length > 0, \"LBC059\");\n\n uint256 firstConfirmationTimestamp = BtcUtils.getBtcBlockTimestamp(firstConfirmationHeader);\n\n // penalize if the transfer was not made on time\n if (firstConfirmationTimestamp > pegoutRegistry[quoteHash].depositTimestamp +\n quote.transferTime + btcBlockTime) {\n return true;\n }\n\n // penalize if LP is refunding after expiration\n if (block.timestamp > quote.expireDate || block.number > quote.expireBlock) {\n return true;\n }\n\n return false;\n }\n\n function payToFeeCollector(uint amount, bytes32 quoteHash) private {\n if (amount > 0) {\n (bool daoSuccess,) = payable(daoFeeCollectorAddress).call{value: amount}(\"\");\n require(daoSuccess, \"LBC074\");\n emit DaoFeeSent(quoteHash, amount);\n }\n }\n\n function updateProvider(string memory _name, string memory _url) external {\n require(bytes(_name).length > 0 && bytes(_url).length > 0, \"LBC076\");\n LiquidityProvider storage lp;\n for (uint i = 1; i <= providerId; i++) {\n lp = liquidityProviders[i];\n if (msg.sender == lp.provider) {\n lp.name = _name;\n lp.apiBaseUrl = _url;\n emit ProviderUpdate(msg.sender, lp.name, lp.apiBaseUrl);\n return;\n }\n }\n revert(\"LBC001\");\n }\n}\n", - "sourcePath": "/Users/guilhermesoares/WebstormProjects/Rootstock/liquidity-bridge-contract/contracts/LiquidityBridgeContractV2.sol", + "sourceMap": "481:34245:24:-:0;;;;;;;;;;;;;;;;;;;", + "deployedSourceMap": "481:34245:24:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5027:6;;-1:-1:-1;;;;;5027:6:24;5005:10;:29;4997:48;;;;-1:-1:-1;;;4997:48:24;;216:2:32;4997:48:24;;;198:21:32;255:1;235:18;;;228:29;-1:-1:-1;;;273:18:32;;;266:36;319:18;;4997:48:24;;;;;;;;;481:34245;;;;;34175:549;;;;;;;;;;-1:-1:-1;34175:549:24;;;;;:::i;:::-;;:::i;752:40::-;;;;;;;;;;;;791:1;752:40;;;;;2919:4:32;2907:17;;;2889:36;;2877:2;2862:18;752:40:24;;;;;;;;798:46;;;;;;;;;;;;843:1;798:46;;5152:89;;;;;;;;;;-1:-1:-1;5224:10:24;;5152:89;;;3082:25:32;;;3070:2;3055:18;5152:89:24;2936:177:32;27584:161:24;;;;;;;;;;-1:-1:-1;27584:161:24;;;;;:::i;:::-;;:::i;15190:6502::-;;;;;;;;;;-1:-1:-1;15190:6502:24;;;;;:::i;:::-;;:::i;10885:292::-;;;;;;;;;;-1:-1:-1;10885:292:24;;;;;:::i;:::-;;:::i;5747:85::-;;;;;;;;;;-1:-1:-1;5821:4:24;;5747:85;;6811:2171;;;;;;:::i;:::-;;:::i;1392:94::-;;;;;;;;;;;;-1:-1:-1;;1392:94:24;;;;;11620:1:32;11609:21;;;;11591:40;;11579:2;11564:18;1392:94:24;11449:188:32;10413:192:24;;;:::i;6170:145::-;;;;;;;;;;-1:-1:-1;6170:145:24;;;;;:::i;:::-;;:::i;:::-;;;12155:14:32;;12148:22;12130:41;;12118:2;12103:18;6170:145:24;11990:187:32;6509:193:24;;;;;;;;;;-1:-1:-1;6509:193:24;;;;;:::i;:::-;;:::i;5838:139::-;;;;;;;;;;-1:-1:-1;5838:139:24;;;;;:::i;:::-;5912:4;5935:25;;;:14;:25;;;;;:35;;;;;;5838:139;5058:88;;;;;;;;;;-1:-1:-1;5125:14:24;;;;;;;;;;;-1:-1:-1;;;5125:14:24;;;;5058:88;;;;5125:14;5058:88;:::i;9656:314::-;;;;;;;;;;-1:-1:-1;9656:314:24;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;11251:618::-;;;;;;;;;;;;;:::i;4232:35::-;;;;;;;;;;;;;;;;11943:205;;;;;;;;;;;;;:::i;4273:37::-;;;;;;;;;;-1:-1:-1;4273:37:24;;;;-1:-1:-1;;;;;4273:37:24;;;;;;;;;;:::i;2085:101:0:-;;;;;;;;;;;;;:::i;4767:187:24:-;;;;;;;;;;-1:-1:-1;4767:187:24;;;;;:::i;:::-;;:::i;26534:699::-;;;;;;;;;;-1:-1:-1;26534:699:24;;;;;:::i;:::-;;:::i;13082:1591::-;;;;;;:::i;:::-;;:::i;3951:22::-;;;;;;;;;;;;;;;;21698:1183;;;;;;:::i;:::-;;:::i;1066:79::-;;;;;;;;;;;;-1:-1:-1;;1066:79:24;;1462:85:0;;;;;;;;;;;;;:::i;22887:1084:24:-;;;;;;;;;;-1:-1:-1;22887:1084:24;;;;;:::i;:::-;;:::i;12346:109::-;;;;;;;;;;-1:-1:-1;12346:109:24;;;;;:::i;:::-;-1:-1:-1;;;;;12432:16:24;12406:7;12432:16;;;:10;:16;;;;;;;12346:109;698:48;;;;;;;;;;;;745:1;698:48;;587;;;;;;;;;;;;630:5;587:48;;;;;16577:6:32;16565:19;;;16547:38;;16535:2;16520:18;587:48:24;16403:188:32;10242:165:24;;;:::i;1600:42::-;;;;;;;;;;;;1641:1;1600:42;;1151:82;;;;;;;;;;;;-1:-1:-1;;1151:82:24;;983:77;;;;;;;;;;;;-1:-1:-1;;983:77:24;;1492:50;;;;;;;;;;;;-1:-1:-1;;1492:50:24;;27444:134;;;;;;;;;;-1:-1:-1;27444:134:24;;;;;:::i;:::-;;:::i;12461:121::-;;;;;;;;;;-1:-1:-1;12461:121:24;;;;;:::i;:::-;-1:-1:-1;;;;;12553:22:24;12527:7;12553:22;;;:16;:22;;;;;;;12461:121;5637:104;;;;;;;;;;-1:-1:-1;5715:19:24;;-1:-1:-1;;;5715:19:24;;;;5637:104;;1548:46;;;;;;;;;;;;1593:1;1548:46;;1239:71;;;;;;;;;;;;-1:-1:-1;;1239:71:24;;5540:91;;;;;;;;;;-1:-1:-1;5617:7:24;;;;5540:91;;1316:70;;;;;;;;;;;;-1:-1:-1;;1316:70:24;;10676:106;;;:::i;23977:2551::-;;;;;;;;;;-1:-1:-1;23977:2551:24;;;;;:::i;:::-;;:::i;641:50::-;;;;;;;;;;;;687:4;641:50;;918:59;;;;;;;;;;;;-1:-1:-1;;918:59:24;;3424:20;;;;;;;;;;-1:-1:-1;3424:20:24;;;;-1:-1:-1;;;;;3424:20:24;;;5352:92;;;;;;;;;;-1:-1:-1;5424:13:24;;5352:92;;851:61;;;;;;;;;;;;-1:-1:-1;;851:61:24;;8988:662;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;2335:198:0:-;;;;;;;;;;-1:-1:-1;2335:198:0;;;;;:::i;:::-;;:::i;12781:104:24:-;;;;;;;;;;-1:-1:-1;12781:104:24;;;;;:::i;:::-;-1:-1:-1;;;;;12864:14:24;12838:7;12864:14;;;:8;:14;;;;;;;12781:104;5450:84;;;;;;;;;;-1:-1:-1;5519:8:24;;5450:84;;5247:99;;;;;;;;;;-1:-1:-1;5332:6:24;;-1:-1:-1;;;;;5332:6:24;5247:99;;34175:549;34289:1;34273:5;34267:19;:23;:49;;;;;34315:1;34300:4;34294:18;:22;34267:49;34259:68;;;;-1:-1:-1;;;34259:68:24;;19415:2:32;34259:68:24;;;19397:21:32;19454:1;19434:18;;;19427:29;-1:-1:-1;;;19472:18:32;;;19465:36;19518:18;;34259:68:24;19213:329:32;34259:68:24;34337:28;34389:1;34375:317;34397:10;;34392:1;:15;34375:317;;34433:21;;;;:18;:21;;;;;34486:11;;;;34433:21;;-1:-1:-1;;;;;;34486:11:24;34472:10;:25;34468:214;;34517:7;;;:15;34527:5;34517:7;:15;:::i;:::-;-1:-1:-1;34550:13:24;;;:20;34566:4;34550:13;:20;:::i;:::-;;34608:10;-1:-1:-1;;;;;34593:50:24;;34620:2;:7;;34629:2;:13;;34593:50;;;;;;;:::i;:::-;;;;;;;;34661:7;;34175:549;;:::o;34468:214::-;34409:3;;;;:::i;:::-;;;;34375:317;;;;34701:16;;-1:-1:-1;;;34701:16:24;;;;;;;:::i;27584:161::-;27679:7;27705:33;27732:5;27705:26;:33::i;:::-;27698:40;27584:161;-1:-1:-1;;27584:161:24:o;15190:6502::-;15428:6;2526:21:2;:19;:21::i;:::-;15446:17:24::1;15466:27;15487:5;15466:20;:27::i;:::-;15619:26;::::0;;;:15:::1;:26;::::0;;;;;;;-1:-1:-1;791:1:24::1;15619:44;:26:::0;;::::1;:44;;15598:97;;;;-1:-1:-1::0;;;15598:97:24::1;;;;;;;:::i;:::-;15769:33;::::0;;::::1;::::0;15726:144;;-1:-1:-1;;;15726:144:24;;:18:::1;::::0;:25:::1;::::0;:144:::1;::::0;15769:33;15820:9;;15847;;15726:144:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15705:197;;;;-1:-1:-1::0;;;15705:197:24::1;;;;;;;:::i;:::-;15944:15;15920:41:::0;::::1;15912:60;;;::::0;-1:-1:-1;;;15912:60:24;;25436:2:32;15912:60:24::1;::::0;::::1;25418:21:32::0;25475:1;25455:18;;;25448:29;-1:-1:-1;;;25493:18:32;;;25486:36;25539:18;;15912:60:24::1;25234:329:32::0;15912:60:24::1;15983:35;16021:148;16049:5;16068:17;16099;16130:6;16150:9;16021:14;:148::i;:::-;15983:186:::0;-1:-1:-1;16201:85:24;;;16180:138:::1;;;::::0;-1:-1:-1;;;16180:138:24;;25770:2:32;16180:138:24::1;::::0;::::1;25752:21:32::0;25809:1;25789:18;;;25782:29;-1:-1:-1;;;25827:18:32;;;25820:36;25873:18;;16180:138:24::1;25568:329:32::0;16180:138:24::1;16349:96:::0;;;16328:149:::1;;;::::0;-1:-1:-1;;;16328:149:24;;26104:2:32;16328:149:24::1;::::0;::::1;26086:21:32::0;26143:1;26123:18;;;26116:29;-1:-1:-1;;;26161:18:32;;;26154:36;26207:18;;16328:149:24::1;25902:329:32::0;16328:149:24::1;16508:84:::0;;;16487:137:::1;;;::::0;-1:-1:-1;;;16487:137:24;;26438:2:32;16487:137:24::1;::::0;::::1;26420:21:32::0;26477:1;26457:18;;;26450:29;-1:-1:-1;;;26495:18:32;;;26488:36;26541:18;;16487:137:24::1;26236:329:32::0;16487:137:24::1;16655:104:::0;;;16634:157:::1;;;::::0;-1:-1:-1;;;16634:157:24;;26772:2:32;16634:157:24::1;::::0;::::1;26754:21:32::0;26811:1;26791:18;;;26784:29;-1:-1:-1;;;26829:18:32;;;26822:36;26875:18;;16634:157:24::1;26570:329:32::0;16634:157:24::1;16822:52:::0;;;16801:105:::1;;;::::0;-1:-1:-1;;;16801:105:24;;27106:2:32;16801:105:24::1;::::0;::::1;27088:21:32::0;27145:1;27125:18;;;27118:29;-1:-1:-1;;;27163:18:32;;;27156:36;27209:18;;16801:105:24::1;26904:329:32::0;16801:105:24::1;16968:1;16937:28;:32;:109;;;-1:-1:-1::0;;;16985:61:24;::::1;16937:109;:188;;;-1:-1:-1::0;;;17062:63:24;::::1;16937:188;16916:241;;;::::0;-1:-1:-1;;;16916:241:24;;27440:2:32;16916:241:24::1;::::0;::::1;27422:21:32::0;27479:1;27459:18;;;27452:29;-1:-1:-1;;;27497:18:32;;;27490:36;27543:18;;16916:241:24::1;27238:329:32::0;16916:241:24::1;17276:23;::::0;;;:12:::1;:23;::::0;;;;:33;17185:154:::1;::::0;17215:5;;17234:28;;17276:33:::1;;17323:6:::0;17185:16:::1;:154::i;:::-;17168:816;;;17411:16;::::0;::::1;::::0;17456:33:::1;::::0;;::::1;::::0;-1:-1:-1;;;;;17445:45:24::1;17364:23;17445:45:::0;;;:10:::1;:45;::::0;;;;;17364:23;;17390:114:::1;::::0;:3:::1;:114::i;:::-;17364:140;;17630:18;17581:10;:45;17592:5;:33;;;-1:-1:-1::0;;;;;17581:45:24::1;-1:-1:-1::0;;;;;17581:45:24::1;;;;;;;;;;;;;:67;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;17694:33:24::1;::::0;;::::1;::::0;17667:137;;-1:-1:-1;;;;;;;;;;;17667:137:24;::::1;::::0;17745:18;;17781:9;;17667:137:::1;:::i;:::-;;;;;;;;17902:7;::::0;17855:22:::1;::::0;17913:3:::1;::::0;17881:28:::1;::::0;17902:7:::1;;17881:18:::0;:28:::1;:::i;:::-;17880:36;;;;:::i;:::-;17855:61;;17930:43;17946:10;17958:14;17930:15;:43::i;:::-;17350:634;;17168:816;-1:-1:-1::0;;18011:61:24;::::1;::::0;:140:::1;;-1:-1:-1::0;;;18088:63:24;::::1;18011:140;17994:447;;;18211:26;::::0;;;:15:::1;:26;::::0;;;;;;;:49;;-1:-1:-1;;18211:49:24::1;843:1;18211:49;::::0;;18281:12:::1;:23:::0;;;;;;18274:30;;-1:-1:-1;;18274:30:24;;;18323:58;;28657:25:32;;;28698:18;;;28691:34;;;18323:58:24::1;::::0;28630:18:32;18323:58:24::1;;;;;;;18402:28:::0;-1:-1:-1;18395:35:24::1;::::0;-1:-1:-1;18395:35:24::1;17994:447;18697:52;::::0;-1:-1:-1;;;18697:52:24;;18657:28;;18697:8:::1;::::0;:26:::1;::::0;:52:::1;::::0;18724:5;;18657:28;;18697:52:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;;18800:1:24::1;18764:23:::0;;;:12:::1;:23;::::0;;;;:33;::::1;;:37:::0;;-1:-1:-1;18760:2711:24::1;;18817:17;18853:23:::0;;;:12:::1;:23;::::0;;;;:31;-1:-1:-1;;;18853:31:24;::::1;;;18849:315;;;18919:124;18944:17;19013:5;:12;;;18997:5;:13;;;18983:5;:11;;;:27;;;;:::i;:::-;:42;;;;:::i;:::-;18919:3;:124::i;:::-;18904:139;;18849:315;;;19097:52;19101:17;19136:5;:12;;;19120:5;:13;;;:28;;;;:::i;19097:52::-;19082:67;;18849:315;19177:64;19193:5;:33;;;19228:12;19177:15;:64::i;:::-;19256:20;19279:32;19299:12:::0;19279:17;:32:::1;:::i;:::-;19256:55;;19325:52;19343:5;:22;;;19367:9;19325:17;:52::i;:::-;19414:4;;19396:15;:22;19392:829;;;19538:22;::::0;::::1;::::0;:152:::1;::::0;19521:12:::1;::::0;-1:-1:-1;;;;;19538:27:24::1;::::0;687:4:::1;::::0;19649:15;;19521:12;19538:152;19521:12;19538:152;19649:15;19538:27;687:4;19538:152:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19520:170;;;-1:-1:-1::0;;;;;;;;;;;19741:5:24::1;:22;;;19785:15;19822:7;19851:9;19713:165;;;;;;;;;:::i;:::-;;;;;;;;19902:7;19897:310;;20051:137;20092:5;:33;;;20151:15;20051;:137::i;:::-;19420:801;19392:829;18803:1428;;18760:2711;;;20307:20;::::0;::::1;::::0;20271:17;;20307:51;::::1;;;;20347:5;:11;;;20331:12;:27;;20307:51;20303:656;;;20379:16;20400:5;:21;;;-1:-1:-1::0;;;;;20400:26:24::1;20457:5;:14;;;20400:149;;20504:5;:11;;;20538:5;:10;;;20400:149;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20378:171;;;20637:5;:21;;;-1:-1:-1::0;;;;;20572:269:24::1;20605:10;-1:-1:-1::0;;;;;20572:269:24::1;-1:-1:-1::0;;;;;;;;;;;20680:5:24::1;:14;;;20716:5;:11;;;20749:5;:10;;;20781:11;20814:9;20572:269;;;;;;;;;;:::i;:::-;;;;;;;;20864:11;20860:85;;;20915:11;::::0;::::1;::::0;20899:27:::1;::::0;;::::1;:::i;:::-;;;20860:85;20360:599;20303:656;20991:4;;20976:12;:19;20972:489;;;21112:22;::::0;::::1;::::0;:149:::1;::::0;21095:12:::1;::::0;-1:-1:-1;;;;;21112:27:24::1;::::0;687:4:::1;::::0;21223:12;;21095;21112:149;21095:12;21112:149;21223:12;21112:27;687:4;21112:149:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21094:167;;;-1:-1:-1::0;;;;;;;;;;;21312:5:24::1;:22;;;21356:12;21390:7;21419:9;21284:162;;;;;;;;;:::i;:::-;;;;;;;;20997:464;20972:489;20237:1234;18760:2711;21480:26;::::0;;;:15:::1;:26;::::0;;;;;;;:49;;-1:-1:-1;;21480:49:24::1;843:1;21480:49;::::0;;21546:12:::1;:23:::0;;;;;;21539:30;;-1:-1:-1;;21539:30:24;;;21584:56;;3082:25:32;;;21480:26:24;;21584:56:::1;::::0;3055:18:32;21584:56:24::1;;;;;;;-1:-1:-1::0;21657:28:24;-1:-1:-1;;2557:1:2::1;2568:20:::0;1808:1;3074:7;:22;2894:209;2568:20;15190:6502:24;;;;;;;:::o;10885:292::-;10955:10;10946:20;;;;:8;:20;;;;;;:30;-1:-1:-1;10946:30:24;10938:49;;;;-1:-1:-1;;;10938:49:24;;;;;;;:::i;:::-;11006:10;10997:20;;;;:8;:20;;;;;:30;;11021:6;;10997:20;:30;;11021:6;;10997:30;:::i;:::-;;;;-1:-1:-1;;11055:34:24;;11038:12;;11055:10;;11078:6;;11038:12;11055:34;11038:12;11055:34;11078:6;11055:10;:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11037:52;;;11107:7;11099:26;;;;-1:-1:-1;;;11099:26:24;;;;;;;:::i;:::-;11140:30;11151:10;11163:6;11140:30;;;;;;;:::i;:::-;;;;;;;;10928:249;10885:292;:::o;6811:2171::-;6984:4;7008:9;7021:10;7008:23;7000:42;;;;-1:-1:-1;;;7000:42:24;;34588:2:32;7000:42:24;;;34570:21:32;34627:1;34607:18;;;34600:29;-1:-1:-1;;;34645:18:32;;;34638:36;34691:18;;7000:42:24;34386:329:32;7000:42:24;7152:1;7136:5;7130:19;:23;7122:42;;;;-1:-1:-1;;;7122:42:24;;34922:2:32;7122:42:24;;;34904:21:32;34961:1;34941:18;;;34934:29;-1:-1:-1;;;34979:18:32;;;34972:36;35025:18;;7122:42:24;34720:329:32;7122:42:24;7223:1;7201:11;7195:25;:29;7174:82;;;;-1:-1:-1;;;7174:82:24;;35256:2:32;7174:82:24;;;35238:21:32;35295:1;35275:18;;;35268:29;-1:-1:-1;;;35313:18:32;;;35306:36;35359:18;;7174:82:24;35054:329:32;7174:82:24;7418:25;;;;;;;:::i;:::-;;;;;;;;;;;;;7408:36;;;;;;7377:13;7360:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;7350:42;;;;;;:94;:205;;;;7528:26;;;;;;;:::i;:::-;;;;;;;;;;;;;7518:37;;;;;;7487:13;7470:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;7460:42;;;;;;:95;7350:205;:314;;;-1:-1:-1;7639:24:24;;-1:-1:-1;;;7639:24:24;;;36405:19:32;36440:11;;7639:24:24;;;;;;;;;;;;7629:35;;;;;;7598:13;7581:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;7571:42;;;;;;:93;7350:314;7329:367;;;;-1:-1:-1;;;7329:367:24;;36664:2:32;7329:367:24;;;36646:21:32;36703:1;36683:18;;;36676:29;-1:-1:-1;;;36721:18:32;;;36714:36;36767:18;;7329:367:24;36462:329:32;7329:367:24;7726:10;7715:22;;;;:10;:22;;;;;;:27;:64;;;;-1:-1:-1;7763:10:24;7746:28;;;;:16;:28;;;;;;:33;7715:64;7707:83;;;;-1:-1:-1;;;7707:83:24;;36998:2:32;7707:83:24;;;36980:21:32;37037:1;37017:18;;;37010:29;-1:-1:-1;;;37055:18:32;;;37048:36;37101:18;;7707:83:24;36796:329:32;7707:83:24;7841:10;7821:31;;;;:19;:31;;;;;;:36;7800:89;;;;-1:-1:-1;;;7800:89:24;;37332:2:32;7800:89:24;;;37314:21:32;37371:1;37351:18;;;37344:29;-1:-1:-1;;;37389:18:32;;;37382:36;37435:18;;7800:89:24;37130:329:32;7800:89:24;7960:25;;;;;;;:::i;:::-;;;;;;;;;;;;;7950:36;;;;;;7931:13;7914:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;7904:42;;;;;;:82;7900:700;;8023:13;;8010:9;:26;;8002:45;;;;-1:-1:-1;;;8002:45:24;;;;;;;:::i;:::-;8072:10;8061:22;;;;:10;:22;;;;;8086:9;8061:34;;7900:700;;;8172:26;;;;;;;:::i;:::-;;;;;;;;;;;;;8162:37;;;;;;8143:13;8126:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;8116:42;;;;;;:83;8112:488;;8236:13;;8223:9;:26;;8215:45;;;;-1:-1:-1;;;8215:45:24;;;;;;;:::i;:::-;8291:10;8274:28;;;;:16;:28;;;;;8305:9;8274:40;;8112:488;;;8366:13;;:17;;8382:1;8366:17;:::i;:::-;8353:9;:30;;8345:49;;;;-1:-1:-1;;;8345:49:24;;;;;;;:::i;:::-;8408:17;8428:13;8440:1;8428:9;:13;:::i;:::-;8408:33;-1:-1:-1;8480:13:24;8492:1;8480:9;:13;:::i;:::-;:18;:52;;8516:16;:12;8531:1;8516:16;:::i;:::-;8480:52;;;8501:12;8480:52;8466:10;8455:22;;;;:10;:22;;;;;;;;:77;;;;8546:16;:28;;;:43;8112:488;8610:10;:12;;;:10;:12;;;:::i;:::-;;;;-1:-1:-1;;8665:223:24;;;;;;;;8701:10;;8665:223;;;8735:10;8665:223;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8632:30:24;;;:18;:30;;;;;;;:256;;;;;;;;;;;-1:-1:-1;;;;;;8632:256:24;-1:-1:-1;;;;;8632:256:24;;;;;;;;;;;8665:223;;8632:30;:256;;;;;;;;:::i;:::-;-1:-1:-1;8632:256:24;;;;;;;;;;;;:::i;:::-;-1:-1:-1;8632:256:24;;;;;;;;;-1:-1:-1;;8632:256:24;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;8912:10:24;;8903:43;;;28657:25:32;;;8936:9:24;28713:2:32;28698:18;;28691:34;8924:10:24;;-1:-1:-1;8903:43:24;;28630:18:32;8903:43:24;;;;;;;-1:-1:-1;8964:10:24;;6811:2171;;;;;;;:::o;10413:192::-;4473:33;4495:10;4473:21;:33::i;:::-;4465:52;;;;-1:-1:-1;;;4465:52:24;;;;;;;:::i;:::-;10512:10:::1;10495:28;::::0;;;:16:::1;:28;::::0;;;;:41;;10527:9:::1;::::0;10495:28;:41:::1;::::0;10527:9;;10495:41:::1;:::i;:::-;::::0;;;-1:-1:-1;;10551:47:24::1;::::0;::::1;::::0;::::1;::::0;10576:10:::1;::::0;10588:9:::1;::::0;10551:47:::1;:::i;:::-;;;;;;;;10413:192::o:0;6170:145::-;6230:4;6253:18;6266:4;6253:12;:18::i;:::-;:55;;;;-1:-1:-1;6295:13:24;;-1:-1:-1;;;;;6275:16:24;;;;;;:10;:16;;;;;;:33;;6246:62;6170:145;-1:-1:-1;;6170:145:24:o;6509:193::-;6578:4;6613:27;6635:4;6613:21;:27::i;:::-;:82;;;;-1:-1:-1;6682:13:24;;-1:-1:-1;;;;;6656:22:24;;;;;;:16;:22;;;;;;:39;;6594:101;6509:193;-1:-1:-1;;6509:193:24:o;9656:314::-;9723:24;;:::i;:::-;9773:1;9759:179;9781:10;;9776:1;:15;9759:179;;9816:21;;;;:18;:21;;;;;:30;;;-1:-1:-1;;;;;9816:49:24;;;:30;;:49;9812:116;;9892:21;;;;:18;:21;;;;;;;;;9885:28;;;;;;;;;;;;;;;-1:-1:-1;;;;;9885:28:24;;;;;;;;;;;;;;;9892:21;;9885:28;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9885:28:24;;;-1:-1:-1;;9885:28:24;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9656:314;;;:::o;9812:116::-;9793:3;;;;:::i;:::-;;;;9759:179;;11251:618;2526:21:2;:19;:21::i;:::-;11341:10:24::1;11355:1;11321:31:::0;;;:19:::1;:31;::::0;;;;;11313:54:::1;;;::::0;-1:-1:-1;;;11313:54:24;;38370:2:32;11313:54:24::1;::::0;::::1;38352:21:32::0;38409:1;38389:18;;;38382:29;-1:-1:-1;;;38427:18:32;;;38420:36;38473:18;;11313:54:24::1;38168:329:32::0;11313:54:24::1;11460:19;::::0;11433:10:::1;11413:31;::::0;;;:19:::1;:31;::::0;;;;;-1:-1:-1;;;11460:19:24;;::::1;;;::::0;11398:46:::1;::::0;:12:::1;:46;:::i;:::-;:81;;11377:134;;;::::0;-1:-1:-1;;;11377:134:24;;38704:2:32;11377:134:24::1;::::0;::::1;38686:21:32::0;38743:1;38723:18;;;38716:29;-1:-1:-1;;;38761:18:32;;;38754:36;38807:18;;11377:134:24::1;38502:329:32::0;11377:134:24::1;11577:10;11521:11;11560:28:::0;;;:16:::1;:28;::::0;;;;;;;;11535:10:::1;:22:::0;;;;;;:53:::1;::::0;11560:28;11535:53:::1;:::i;:::-;11615:10;11629:1;11598:28:::0;;;:16:::1;:28;::::0;;;;;;;:32;;;11640:10:::1;:22:::0;;;;;:26;;;11676:19:::1;:31:::0;;;;;;:35;;;11739:34;11521:67;;-1:-1:-1;11629:1:24;11521:67;;11629:1;11739:34;11629:1;11739:34;11521:67;11615:10;11739:34:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11721:52;;;11791:7;11783:26;;;;-1:-1:-1::0;;;11783:26:24::1;;;;;;;:::i;:::-;11824:38;11843:10;11855:6;11824:38;;;;;;;:::i;:::-;;;;;;;;11303:566;;2568:20:2::0;1808:1;3074:7;:22;2894:209;2568:20;11251:618:24:o;11943:205::-;4361:24;4374:10;4361:12;:24::i;:::-;4353:43;;;;-1:-1:-1;;;4353:43:24;;;;;;;:::i;:::-;12023:10:::1;12003:31;::::0;;;:19:::1;:31;::::0;;;;;:36;11995:55:::1;;;::::0;-1:-1:-1;;;11995:55:24;;39038:2:32;11995:55:24::1;::::0;::::1;39020:21:32::0;39077:1;39057:18;;;39050:29;-1:-1:-1;;;39095:18:32;;;39088:36;39141:18;;11995:55:24::1;38836:329:32::0;11995:55:24::1;12080:10;12060:31;::::0;;;:19:::1;:31;::::0;;;;;;12094:12:::1;12060:46:::0;;12121:20;::::1;::::0;::::1;::::0;::::1;:::i;2085:101:0:-:0;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;4767:187:24:-:0;4877:11;4634:7;:5;:7::i;:::-;-1:-1:-1;;;;;4620:21:24;:10;-1:-1:-1;;;;;4620:21:24;;:91;;;-1:-1:-1;4671:31:24;;;;:18;:31;;;;;:40;;;-1:-1:-1;;;;;4671:40:24;4657:10;:54;4620:91;4599:144;;;;-1:-1:-1;;;4599:144:24;;39372:2:32;4599:144:24;;;39354:21:32;39411:1;39391:18;;;39384:29;-1:-1:-1;;;39429:18:32;;;39422:36;39475:18;;4599:144:24;39170:329:32;4599:144:24;-1:-1:-1;4900:31:24::1;::::0;;;:18:::1;:31;::::0;;;;;:38:::1;;:47:::0;;-1:-1:-1;;4900:47:24::1;::::0;::::1;;::::0;;;::::1;::::0;;4767:187::o;26534:699::-;26679:4;26695:23;26774:16;26784:5;26774:9;:16::i;:::-;26808:5;:22;;;26856:5;:16;;;26848:25;;26891:5;:33;;;26744:194;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;26721:227;;;;;;26695:253;;26958:32;27040:15;27090:6;;;;;;;;;-1:-1:-1;;;;;27090:6:24;-1:-1:-1;;;;;27090:34:24;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;27090:36:24;;;;;;;;;;;;:::i;:::-;26993:143;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;26993:143:24;;;;;;;;;;27218:7;;-1:-1:-1;;;27153:73:24;;26993:143;;-1:-1:-1;27153:8:24;;:27;;:73;;27181:14;;26993:143;;27218:7;;;;;27153:73;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;13082:1591::-;13205:4;4361:24;4374:10;4361:12;:24::i;:::-;4353:43;;;;-1:-1:-1;;;4353:43:24;;;;;;;:::i;:::-;2526:21:2::1;:19;:21::i;:::-;13256:5:24::2;:33;;;-1:-1:-1::0;;;;;13242:47:24::2;:10;-1:-1:-1::0;;;;;13242:47:24::2;;13221:100;;;::::0;-1:-1:-1;;;13221:100:24;;42240:2:32;13221:100:24::2;::::0;::::2;42222:21:32::0;42279:1;42259:18;;;42252:29;-1:-1:-1;;;42297:18:32;;;42290:36;42343:18;;13221:100:24::2;42038:329:32::0;13221:100:24::2;13423:11;::::0;::::2;::::0;13361:33:::2;::::0;;::::2;::::0;-1:-1:-1;;;;;13352:43:24::2;;::::0;;;:8:::2;:43;::::0;;;:55:::2;::::0;13398:9:::2;::::0;13352:55:::2;:::i;:::-;:82;;13331:135;;;;-1:-1:-1::0;;;13331:135:24::2;;;;;;;:::i;:::-;13477:17;13497:27;13518:5;13497:20;:27::i;:::-;745:1;13555:26:::0;;;:15:::2;:26;::::0;;;;;13477:47;;-1:-1:-1;13555:52:24::2;:26;:52:::0;13534:105:::2;;;::::0;-1:-1:-1;;;13534:105:24;;42574:2:32;13534:105:24::2;::::0;::::2;42556:21:32::0;42613:1;42593:18;;;42586:29;-1:-1:-1;;;42631:18:32;;;42624:36;42677:18;;13534:105:24::2;42372:329:32::0;13534:105:24::2;13650:61;13666:5;:33;;;13701:9;13650:15;:61::i;:::-;13857:14;::::0;::::2;::::0;:34:::2;::::0;630:5:::2;::::0;13857:34:::2;:::i;:::-;13844:47;;:9;:47;;13823:100;;;::::0;-1:-1:-1;;;13823:100:24;;43085:2:32;13823:100:24::2;::::0;::::2;43067:21:32::0;43124:1;43104:18;;;43097:29;-1:-1:-1;;;43142:18:32;;;43135:36;43188:18;;13823:100:24::2;42883:329:32::0;13823:100:24::2;13934:12;13951:5;:21;;;-1:-1:-1::0;;;;;13951:26:24::2;14000:5;:14;;;13951:125;;14039:5;:11;;;14065:5;:10;;;13951:125;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;13933:143:24;;-1:-1:-1;;14114:16:24::2;14095:15;:35;;14087:54;;;::::0;-1:-1:-1;;;14087:54:24;;43419:2:32;14087:54:24::2;::::0;::::2;43401:21:32::0;43458:1;43438:18;;;43431:29;-1:-1:-1;;;43476:18:32;;;43469:36;43522:18;;14087:54:24::2;43217:329:32::0;14087:54:24::2;14151:23;::::0;;;:12:::2;:23;::::0;;;;:59;;-1:-1:-1;;14151:59:24::2;14194:15;14151:59;;;::::0;;14221:153;::::2;;;14248:23;::::0;;;:12:::2;:23;::::0;;;;;;:38;;-1:-1:-1;;;;14248:38:24::2;-1:-1:-1::0;;;14248:38:24::2;::::0;;14316:33;::::2;::::0;14351:11:::2;::::0;::::2;::::0;14300:63:::2;::::0;14316:33;14300:15:::2;:63::i;:::-;14437:5;:21;;;-1:-1:-1::0;;;;;14388:201:24::2;14413:10;-1:-1:-1::0;;;;;14388:201:24::2;-1:-1:-1::0;;;;;;;;;;;14472:5:24::2;:14;;;14500:5;:11;;;14525:5;:10;;;14549:7;14570:9;14388:201;;;;;;;;;;:::i;:::-;;;;;;;;14599:26;::::0;;;:15:::2;:26;::::0;;;;;:43;;-1:-1:-1;;14599:43:24::2;791:1;14599:43;::::0;;14659:7;-1:-1:-1;2568:20:2::1;1808:1:::0;3074:7;:22;2894:209;2568:20:::1;13082:1591:24::0;;;:::o;21698:1183::-;21901:41;21923:5;:18;;;21901:21;:41::i;:::-;21893:60;;;;-1:-1:-1;;;21893:60:24;;43753:2:32;21893:60:24;;;43735:21:32;43792:1;43772:18;;;43765:29;-1:-1:-1;;;43810:18:32;;;43803:36;43856:18;;21893:60:24;43551:329:32;21893:60:24;22042:9;22026:5;:12;;;22001:5;:22;;;21985:5;:13;;;21971:5;:11;;;:27;;;;:::i;:::-;:52;;;;:::i;:::-;:67;;;;:::i;:::-;:80;;21963:99;;;;-1:-1:-1;;;21963:99:24;;44087:2:32;21963:99:24;;;44069:21:32;44126:1;44106:18;;;44099:29;-1:-1:-1;;;44144:18:32;;;44137:36;44190:18;;21963:99:24;43885:329:32;21963:99:24;22099:5;:22;;;22080:41;;:15;:41;;22072:60;;;;-1:-1:-1;;;22072:60:24;;44421:2:32;22072:60:24;;;44403:21:32;44460:1;44440:18;;;44433:29;-1:-1:-1;;;44478:18:32;;;44471:36;44524:18;;22072:60:24;44219:329:32;22072:60:24;22169:5;:16;;;22150:35;;:15;:35;;22142:54;;;;-1:-1:-1;;;22142:54:24;;44755:2:32;22142:54:24;;;44737:21:32;44794:1;44774:18;;;44767:29;-1:-1:-1;;;44812:18:32;;;44805:36;44858:18;;22142:54:24;44553:329:32;22142:54:24;22230:5;:17;;;22214:33;;:12;:33;;22206:52;;;;-1:-1:-1;;;22206:52:24;;45089:2:32;22206:52:24;;;45071:21:32;45128:1;45108:18;;;45101:29;-1:-1:-1;;;45146:18:32;;;45139:36;45192:18;;22206:52:24;44887:329:32;22206:52:24;22268:17;22288:22;22304:5;22288:15;:22::i;:::-;22367:18;;;;22341:67;;-1:-1:-1;;;22341:67:24;;22268:42;;-1:-1:-1;22341:18:24;;:25;;:67;;22268:42;;22398:9;;22341:67;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22320:120;;;;-1:-1:-1;;;22320:120:24;;;;;;;:::i;:::-;22451:44;22498:33;;;:22;:33;;;;;;;;22550:14;:25;;;;;;:35;;;;;:44;22542:63;;;;-1:-1:-1;;;22542:63:24;;;;;;;:::i;:::-;22623:26;;-1:-1:-1;;;;;22623:26:24;:40;22615:59;;;;-1:-1:-1;;;22615:59:24;;;;;;;:::i;:::-;22684:33;;;;:22;:33;;;;;;;;;:41;;;;-1:-1:-1;;;;;;22684:41:24;;;-1:-1:-1;;;;;22684:41:24;;;;;;;;;;-1:-1:-1;22684:41:24;;;;;;;;;;;;;;;;;;;:33;:41;;;;;;;;:::i;:::-;-1:-1:-1;22684:41:24;;;;;;;;;-1:-1:-1;;;;;;22684:41:24;-1:-1:-1;;;;;22684:41:24;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;22684:41:24;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;22684:41:24;-1:-1:-1;;;;;22684:41:24;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;22684:41:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;22684:41:24;;;;;;;-1:-1:-1;;;22684:41:24;;;;;;;;;;;-1:-1:-1;;;;22684:41:24;-1:-1:-1;;;22684:41:24;;;;;-1:-1:-1;;;;22684:41:24;;-1:-1:-1;;;22684:41:24;;;;;;;;;-1:-1:-1;;;;;;;;22684:41:24;-1:-1:-1;;;22684:41:24;;;;;;;-1:-1:-1;;;;22684:41:24;;-1:-1:-1;;;22684:41:24;;;;;;;;-1:-1:-1;;;;22684:41:24;-1:-1:-1;;;22684:41:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;22735:25:24;;;:14;:25;;;;;;;;;22780:15;22735:60;;;;22810:64;;22847:9;28657:25:32;;28698:18;;;28691:34;22835:10:24;;22735:25;;22810:64;;28630:18:32;22810:64:24;;;;;;;21883:998;;21698:1183;;:::o;1462:85:0:-;1534:6;;-1:-1:-1;;;;;1534:6:0;;1462:85::o;22887:1084:24:-;2526:21:2;:19;:21::i;:::-;22978:34:24::1;23015:33:::0;;;:22:::1;:33;::::0;;;;23067:16;;-1:-1:-1;;;;;23067:16:24::1;23059:49;;;;-1:-1:-1::0;;;23059:49:24::1;;;;;;;:::i;:::-;23157:16;::::0;::::1;::::0;-1:-1:-1;;;23157:16:24;::::1;;;23139:15;:34;:82:::0;::::1;;;-1:-1:-1::0;23204:17:24::1;::::0;::::1;::::0;-1:-1:-1;;;23204:17:24;::::1;;;23189:12;:32;23139:82;23118:135;;;::::0;-1:-1:-1;;;23118:135:24;;47446:2:32;23118:135:24::1;::::0;::::1;47428:21:32::0;47485:1;47465:18;;;47458:29;-1:-1:-1;;;47503:18:32;;;47496:36;47549:18;;23118:135:24::1;47244:329:32::0;23118:135:24::1;23264:20;23342:5;:12;;;23317:5;:22;;;23301:5;:13;;;23287:5;:11;;;:27;;;;:::i;:::-;:52;;;;:::i;:::-;:67;;;;:::i;:::-;23392:22;::::0;::::1;::::0;23444:16:::1;::::0;::::1;::::0;23392:22;23479:18;::::1;::::0;-1:-1:-1;;;;;23479:18:24;;::::1;23364:25;23462:36:::0;;;:16:::1;:36;::::0;;;;;23264:90;;-1:-1:-1;23392:22:24;::::1;::::0;23440:59:::1;::::0;23444:16;23440:3:::1;:59::i;:::-;23526:18;::::0;::::1;::::0;-1:-1:-1;;;;;23526:18:24::1;23509:36;::::0;;;:16:::1;:36;::::0;;;;:47;;23425:74;;-1:-1:-1;23425:74:24;;23509:36;;;:47:::1;::::0;23425:74;;23509:47:::1;:::i;:::-;::::0;;;-1:-1:-1;;23582:18:24::1;::::0;::::1;::::0;23572:49:::1;::::0;-1:-1:-1;;;;;;;;;;;23572:49:24;::::1;::::0;-1:-1:-1;;;;;23582:18:24;;::::1;::::0;23602:7;;23611:9;;23572:49:::1;:::i;:::-;;;;;;;;23720:22;::::0;::::1;::::0;23636:116:::1;::::0;;47752:25:32;;;-1:-1:-1;;;;;23720:22:24;;::::1;47808:2:32::0;47793:18;;47786:60;23668:9:24;;23636:116:::1;::::0;47725:18:32;23636:116:24::1;;;;;;;23770:33;::::0;;;:22:::1;:33;::::0;;;;23763:40;;-1:-1:-1;;;;;;23763:40:24;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;23770:33;23763:40:::1;;::::0;::::1;23770:33:::0;23763:40:::1;:::i;:::-;;::::0;::::1;::::0;;-1:-1:-1;;;;;;23763:40:24::1;::::0;;::::1;;::::0;::::1;;;:::i;:::-;;;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;;-1:-1:-1;;;;;;23763:40:24::1;::::0;;::::1;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;23763:40:24::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;;-1:-1:-1;;;;;;23763:40:24;;;::::1;::::0;::::1;::::0;;;::::1;::::0;;::::1;::::0;;;23813:25;;;:14:::1;:25;::::0;;;;;-1:-1:-1;23813:35:24;;::::1;:42:::0;;-1:-1:-1;;23813:42:24::1;::::0;;::::1;::::0;;23881:50;-1:-1:-1;;;;;23881:22:24;::::1;::::0;23911:15;;23763:40;23881:50;23763:40;23881:50;23911:15;23881:22;:50:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23866:65;;;23949:4;23941:23;;;::::0;-1:-1:-1;;;23941:23:24;;48059:2:32;23941:23:24::1;::::0;::::1;48041:21:32::0;48098:1;48078:18;;;48071:29;-1:-1:-1;;;48116:18:32;;;48109:36;48162:18;;23941:23:24::1;47857:329:32::0;23941:23:24::1;22968:1003;;;;;2568:20:2::0;1808:1;3074:7;:22;2894:209;2568:20;22887:1084:24;:::o;10242:165::-;4361:24;4374:10;4361:12;:24::i;:::-;4353:43;;;;-1:-1:-1;;;4353:43:24;;;;;;;:::i;:::-;10320:10:::1;10309:22;::::0;;;:10:::1;:22;::::0;;;;:35;;10335:9:::1;::::0;10309:22;:35:::1;::::0;10335:9;;10309:35:::1;:::i;:::-;::::0;;;-1:-1:-1;;10359:41:24::1;::::0;::::1;::::0;::::1;::::0;10378:10:::1;::::0;10390:9:::1;::::0;10359:41:::1;:::i;27444:134::-:0;27518:7;27544:27;27565:5;27544:20;:27::i;10676:106::-;4361:24;4374:10;4361:12;:24::i;:::-;4353:43;;;;-1:-1:-1;;;4353:43:24;;;;;;;:::i;:::-;10737:38:::1;10753:10;10765:9;10737:15;:38::i;23977:2551::-:0;2526:21:2;:19;:21::i;:::-;4473:33:24::1;4495:10;4473:21;:33::i;:::-;4465:52;;;;-1:-1:-1::0;;;4465:52:24::1;;;;;;;:::i;:::-;24240:25:::2;::::0;;;:14:::2;:25;::::0;;;;:35:::2;;::::0;::::2;;:44;24232:63;;;;-1:-1:-1::0;;;24232:63:24::2;;;;;;;:::i;:::-;24305:34;24342:33:::0;;;:22:::2;:33;::::0;;;;24393:16;;-1:-1:-1;;;;;24393:16:24::2;24385:49;;;;-1:-1:-1::0;;;24385:49:24::2;;;;;;;:::i;:::-;24484:26;::::0;-1:-1:-1;;;24484:26:24;;24444:37:::2;::::0;24484:8:::2;::::0;:19:::2;::::0;:26:::2;::::0;24504:5;;24484:26:::2;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;::::0;;::::2;-1:-1:-1::0;;24484:26:24::2;::::0;::::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;:::i;:::-;24444:66;;24520:26;24549:8;:28;24578:7;1641:1;24578:26;;;;;;;;:::i;:::-;;;;;;;:35;;;24549:65;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;::::0;;::::2;-1:-1:-1::0;;24549:65:24::2;::::0;::::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;:::i;:::-;24520:94;;24632:13;:20;24656:2;24632:26;:54;;;;;24662:13;24676:1;24662:16;;;;;;;;:::i;:::-;;::::0;;;;-1:-1:-1;;;;;;24662:16:24;-1:-1:-1;;;24662:24:24::2;24632:54;24624:73;;;::::0;-1:-1:-1;;;24624:73:24;;50768:2:32;24624:73:24::2;::::0;::::2;50750:21:32::0;50807:1;50787:18;;;50780:29;-1:-1:-1;;;50825:18:32;;;50818:36;50871:18;;24624:73:24::2;50566:329:32::0;24624:73:24::2;24775:7;24770:118;24816:1;24793:13;:20;:24;;;;:::i;:::-;24789:1;:28;;;24770:118;;;24857:13:::0;24871:5:::2;:1:::0;24875::::2;24871:5;:::i;:::-;24857:20;;;;;;;;;;:::i;:::-;;;;;;;;;24838:13;24852:1;24838:16;;;;;;;;;;:::i;:::-;;;;:39;-1:-1:-1::0;;;;;24838:39:24::2;;;;;;;;-1:-1:-1::0;24819:3:24;::::2;::::0;::::2;:::i;:::-;;;;24770:118;;;;24897:19;24930:13;24919:36;;;;;;;;;;;;:::i;:::-;24897:58;;24986:11;24973:9;:24;24965:43;;;::::0;-1:-1:-1;;;24965:43:24;;51624:2:32;24965:43:24::2;::::0;::::2;51606:21:32::0;51663:1;51643:18;;;51636:29;-1:-1:-1;;;51681:18:32;;;51674:36;51727:18;;24965:43:24::2;51422:329:32::0;24965:43:24::2;25040:18;::::0;::::2;::::0;-1:-1:-1;;;;;25040:18:24::2;25026:10;:32;25018:51;;;::::0;-1:-1:-1;;;25018:51:24;;51958:2:32;25018:51:24::2;::::0;::::2;51940:21:32::0;51997:1;51977:18;;;51970:29;-1:-1:-1;;;52015:18:32;;;52008:36;52061:18;;25018:51:24::2;51756:329:32::0;25018:51:24::2;25317:27;::::0;::::2;::::0;25100:6:::2;::::0;25155:25:::2;::::0;-1:-1:-1;;;25155:25:24;;-1:-1:-1;;;25317:27:24;;::::2;;;::::0;-1:-1:-1;;;;;25100:6:24;;::::2;::::0;:37:::2;::::0;25155:8:::2;::::0;:18:::2;::::0;:25:::2;::::0;25174:5;;25155:25:::2;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25198:18;25234:17;25269:18;25100:201;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:246;;25079:299;;;::::0;-1:-1:-1;;;25079:299:24;;53333:2:32;25079:299:24::2;::::0;::::2;53315:21:32::0;53372:1;53352:18;;;53345:29;-1:-1:-1;;;53390:18:32;;;53383:36;53436:18;;25079:299:24::2;53131:329:32::0;25079:299:24::2;25411:7;1593:1;25411:30;;;;;;;;:::i;:::-;;;;;;;:36;;;25451:6;25411:47;;;;:::i;:::-;-1:-1:-1::0;;;;;25396:62:24::2;:5;:11;;;:62;;25388:81;;;::::0;-1:-1:-1;;;25388:81:24;;53929:2:32;25388:81:24::2;::::0;::::2;53911:21:32::0;53968:1;53948:18;;;53941:29;-1:-1:-1;;;53986:18:32;;;53979:36;54032:18;;25388:81:24::2;53727:329:32::0;25388:81:24::2;25497:29;25529:8;:30;25573:7;1593:1;25573:30;;;;;;;;:::i;:::-;;::::0;;::::2;::::0;;;;;;;:39:::2;::::0;25626:7:::2;::::0;25529:114:::2;::::0;-1:-1:-1;;;;;;25529:114:24::2;::::0;;;;;;::::2;::::0;25573:39;25626:7:::2;;::::0;25529:114:::2;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;::::0;;::::2;-1:-1:-1::0;;25529:114:24::2;::::0;::::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;:::i;:::-;25497:146;;25707:16;25697:27;;;;;;25671:5;:21;;25661:32;;;;;;:::i;:::-;;;;;;;;:63;25653:82;;;::::0;-1:-1:-1;;;25653:82:24;;55420:2:32;25653:82:24::2;::::0;::::2;55402:21:32::0;55459:1;55439:18;;;55432:29;-1:-1:-1;;;55477:18:32;;;55470:36;55523:18;;25653:82:24::2;55218:329:32::0;25653:82:24::2;25763:108;::::0;;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;;;25763:108:24;;::::2;::::0;;;;::::2;::::0;::::2;;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;::::2;::::0;25799:5;;25763:108;;;;::::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;25763:108:24;;;-1:-1:-1;;25763:108:24::2;::::0;::::2;::::0;-1:-1:-1;;;;;25763:108:24::2;;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;;;;;;::::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;25763:108:24;;;-1:-1:-1;;25763:108:24::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;;;;::::2;::::0;;::::2;::::0;;::::2;::::0;;;;::::2;::::0;::::2;::::0;;;;;;;::::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;25763:108:24;;;-1:-1:-1;;25763:108:24::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;::::2;::::0;;;;-1:-1:-1;;;25763:108:24;::::2;::::0;::::2;::::0;;;;::::2;-1:-1:-1::0;;;25763:108:24;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;25763:108:24;::::2;;::::0;;;;-1:-1:-1;;;25763:108:24;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;25763:108:24;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;25763:108:24;;::::2;;;::::0;;;::::2;::::0;::::2;::::0;;;;;::::2;::::0;;::::2;::::0;;;;;;25818:11;25843:18;25763:22:::2;:108::i;:::-;25746:412;;;25932:16;::::0;::::2;::::0;25983:18:::2;::::0;::::2;::::0;-1:-1:-1;;;;;25983:18:24::2;25896:12;25966:36:::0;;;:16:::2;:36;::::0;;;;;25896:12;;25911:105:::2;::::0;:3:::2;:105::i;:::-;26047:18;::::0;::::2;::::0;-1:-1:-1;;;;;26047:18:24::2;26030:36;::::0;;;:16:::2;:36;::::0;;;;:47;;25896:120;;-1:-1:-1;25896:120:24;;26030:36;;;:47:::2;::::0;25896:120;;26030:47:::2;:::i;:::-;::::0;;;-1:-1:-1;;26106:18:24::2;::::0;::::2;::::0;26096:51:::2;::::0;-1:-1:-1;;;;;;;;;;;26096:51:24;::::2;::::0;-1:-1:-1;;;;;26106:18:24;;::::2;::::0;26126:7;;26135:11;;26096:51:::2;:::i;:::-;;;;;;;;25882:276;25746:412;26183:18;::::0;::::2;::::0;26245:13:::2;::::0;::::2;::::0;26231:11:::2;::::0;::::2;::::0;26169:9:::2;::::0;-1:-1:-1;;;;;26183:18:24::2;::::0;26231:27:::2;::::0;::::2;:::i;:::-;26183:93;::::0;::::2;::::0;;;;;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26168:108;;;26294:4;26286:23;;;::::0;-1:-1:-1;;;26286:23:24;;55754:2:32;26286:23:24::2;::::0;::::2;55736:21:32::0;55793:1;55773:18;;;55766:29;-1:-1:-1;;;55811:18:32;;;55804:36;55857:18;;26286:23:24::2;55552:329:32::0;26286:23:24::2;26320:52;26338:5;:22;;;26362:9;26320:17;:52::i;:::-;26390:35;::::0;;;:22:::2;:35;::::0;;;;26383:42;;-1:-1:-1;;;;;;26383:42:24;;::::2;::::0;;;;::::2;::::0;;;;::::2;::::0;;26390:35;26383:42:::2;;::::0;::::2;26390:35:::0;26383:42:::2;:::i;:::-;;::::0;::::2;::::0;;-1:-1:-1;;;;;;26383:42:24::2;::::0;;::::2;;::::0;::::2;;;:::i;:::-;;;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;;-1:-1:-1;;;;;;26383:42:24::2;::::0;;::::2;::::0;::::2;::::0;::::2;::::0;::::2;:::i;:::-;-1:-1:-1::0;26383:42:24::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;;-1:-1:-1;;;;;;26383:42:24;;;::::2;::::0;::::2;::::0;;;::::2;::::0;;::::2;::::0;;;26435:27;;;:14:::2;:27;::::0;;;;;26383:42;26435:37;;::::2;:44:::0;;-1:-1:-1;;26435:44:24::2;::::0;;::::2;::::0;;26494:27;26450:11;;26494:27:::2;::::0;::::2;24222:2306;;;;;;2568:20:2::0;1808:1;3074:7;:22;2894:209;2568:20;23977:2551:24;;;;;:::o;8988:662::-;9035:26;9073:10;;9149:1;9135:146;9157:10;;9152:1;:15;9135:146;;9207:21;;;;:18;:21;;;;;9192:37;;:14;:37::i;:::-;9188:83;;;9249:7;;;;:::i;:::-;;;;9188:83;9169:3;;;;:::i;:::-;;;;9135:146;;;;9290:44;9361:5;-1:-1:-1;;;;;9337:30:24;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;9385:1:24;;-1:-1:-1;9290:77:24;-1:-1:-1;9410:1:24;9396:214;9418:10;;9413:1;:15;9396:214;;9454:21;;;;:18;:21;;;;;;-1:-1:-1;9493:18:24;9454:21;9493:14;:18::i;:::-;9489:111;;;9531:29;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9531:29:24;;;;;;;;;;;;9558:2;;9531:29;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9531:29:24;;;-1:-1:-1;;9531:29:24;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:17;9549:5;9531:24;;;;;;;;:::i;:::-;;;;;;:29;;;;9578:7;;;;;:::i;:::-;;;;9489:111;9430:3;;;;:::i;:::-;;;;9396:214;;;-1:-1:-1;9626:17:24;8988:662;-1:-1:-1;;;8988:662:24:o;2335:198:0:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:0;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:0;;56088:2:32;2415:73:0::1;::::0;::::1;56070:21:32::0;56127:2;56107:18;;;56100:30;56166:34;56146:18;;;56139:62;-1:-1:-1;;;56217:18:32;;;56210:36;56263:19;;2415:73:0::1;55886:402:32::0;2415:73:0::1;2498:28;2517:8;2498:18;:28::i;28640:247:24:-:0;28791:16;;28747:7;;-1:-1:-1;;;;;28774:33:24;28782:4;28774:33;28766:52;;;;-1:-1:-1;;;28766:52:24;;56495:2:32;28766:52:24;;;56477:21:32;56534:1;56514:18;;;56507:29;-1:-1:-1;;;56552:18:32;;;56545:36;56598:18;;28766:52:24;56293:329:32;28766:52:24;28846:33;;-1:-1:-1;;;28846:33:24;;:8;;:26;;:33;;28873:5;;28846:33;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;28846:33:24;;;;;;;;;;;;:::i;:::-;28836:44;;;;;;28829:51;;28640:247;;;:::o;2601:287:2:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:2;;59472:2:32;2725:63:2;;;59454:21:32;59511:2;59491:18;;;59484:30;59550:33;59530:18;;;59523:61;59601:18;;2725:63:2;59270:355:32;2725:63:2;1851:1;2863:7;:18;2601:287::o;27751:883:24:-;27851:7;27895:5;:16;;;-1:-1:-1;;;;;27878:33:24;27886:4;-1:-1:-1;;;;;27878:33:24;;27870:52;;;;-1:-1:-1;;;27870:52:24;;59832:2:32;27870:52:24;;;59814:21:32;59871:1;59851:18;;;59844:29;-1:-1:-1;;;59889:18:32;;;59882:36;59935:18;;27870:52:24;59630:329:32;27870:52:24;27972:21;;;;27961:6;;-1:-1:-1;;;;;27953:40:24;;;27961:6;;27953:40;27932:93;;;;-1:-1:-1;;;27932:93:24;;60166:2:32;27932:93:24;;;60148:21:32;60205:1;60185:18;;;60178:29;-1:-1:-1;;;60223:18:32;;;60216:36;60269:18;;27932:93:24;59964:329:32;27932:93:24;28056:5;:22;;;:29;28089:2;28056:35;:86;;;;28107:5;:22;;;:29;28140:2;28107:35;28056:86;28035:139;;;;-1:-1:-1;;;28035:139:24;;60500:2:32;28035:139:24;;;60482:21:32;60539:1;60519:18;;;60512:29;-1:-1:-1;;;60557:18:32;;;60550:36;60603:18;;28035:139:24;60298:329:32;28035:139:24;28205:5;:33;;;:40;28249:2;28205:46;28184:99;;;;-1:-1:-1;;;28184:99:24;;60834:2:32;28184:99:24;;;60816:21:32;60873:1;60853:18;;;60846:29;-1:-1:-1;;;60891:18:32;;;60884:36;60937:18;;28184:99:24;60632:329:32;28184:99:24;28385:8;;28369:5;:12;;;28344:5;:22;;;28328:5;:13;;;28314:5;:11;;;:27;;;;:::i;:::-;:52;;;;:::i;:::-;:67;;;;:::i;:::-;:79;;28293:132;;;;-1:-1:-1;;;28293:132:24;;61168:2:32;28293:132:24;;;61150:21:32;61207:1;61187:18;;;61180:29;-1:-1:-1;;;61225:18:32;;;61218:36;61271:18;;28293:132:24;60966:329:32;28293:132:24;28518:5;:20;;;28511:28;;28483:5;:24;;;28476:32;;:63;;;;:::i;:::-;-1:-1:-1;;;;;28456:83:24;:16;:83;;28435:136;;;;-1:-1:-1;;;28435:136:24;;61687:2:32;28435:136:24;;;61669:21:32;61726:1;61706:18;;;61699:29;-1:-1:-1;;;61744:18:32;;;61737:36;61790:18;;28435:136:24;61485:329:32;28435:136:24;28599:27;;-1:-1:-1;;;28599:27:24;;:8;;:20;;:27;;28620:5;;28599:27;;;:::i;30306:634::-;30568:6;;30731:22;;;;30794:33;;;;30531:6;30841:28;;;:12;:28;;;;;:38;30531:6;;-1:-1:-1;;;;;30568:6:24;;:39;;30621:17;;30652:6;;30672:17;;30703:14;;30775:4;;30794:33;30841:38;;:42;;;;:82;;-1:-1:-1;30887:28:24;;;;:12;:28;;;;;:36;-1:-1:-1;;;30887:36:24;;;;30841:82;30568:365;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;30549:384;30306:634;-1:-1:-1;;;;;;30306:634:24:o;31362:1644::-;31536:4;31626:1;31617:6;:10;:99;;;;;31704:5;:12;;;31679:5;:22;;;31663:5;:13;;;31649:5;:11;;;:27;;;;:::i;:::-;:52;;;;:::i;:::-;:67;;;;:::i;:::-;31639:6;31631:85;31617:99;31613:142;;;-1:-1:-1;31739:5:24;31732:12;;31613:142;31804:6;;:63;;-1:-1:-1;;;31804:63:24;;;;;3082:25:32;;;31765:36:24;;-1:-1:-1;;;;;31804:6:24;;:55;;3055:18:32;;31804:63:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;31804:63:24;;;;;;;;;;;;:::i;:::-;31765:102;;31918:1;31885:23;:30;:34;31877:67;;;;-1:-1:-1;;;31877:67:24;;63371:2:32;31877:67:24;;;63353:21:32;63410:2;63390:18;;;63383:30;-1:-1:-1;;;63429:18:32;;;63422:50;63489:18;;31877:67:24;63169:344:32;31877:67:24;31992:76;;-1:-1:-1;;;31992:76:24;;31955:34;;31992:8;;:29;;:76;;32035:23;;31992:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;31955:113;;32208:14;32252:5;:20;;;32225:5;:24;;;:47;;;;:::i;:::-;32208:64;;;;32315:9;32286:26;:38;32282:81;;;32347:5;32340:12;;;;;;;32282:81;32418:13;32435:1;32418:18;32414:60;;32459:4;32452:11;;;;;;;32414:60;32520:6;;32598:26;;;;32484:33;;-1:-1:-1;;;;;32520:6:24;;:55;;:6;;32589:35;;;;:6;:35;:::i;:::-;:39;;;;:::i;:::-;32520:118;;;;;;;;;;;;;3082:25:32;;3070:2;3055:18;;2936:177;32520:118:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;32520:118:24;;;;;;;;;;;;:::i;:::-;32484:154;;32686:1;32656:20;:27;:31;32648:50;;;;-1:-1:-1;;;32648:50:24;;63909:2:32;32648:50:24;;;63891:21:32;63948:1;63928:18;;;63921:29;-1:-1:-1;;;63966:18:32;;;63959:36;64012:18;;32648:50:24;63707:329:32;32648:50:24;32743:73;;-1:-1:-1;;;32743:73:24;;32709:31;;32743:8;;:29;;:73;;32786:20;;32743:73;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;32709:107;;32926:5;:14;;;32900:40;;:23;:40;;;;:::i;:::-;32884:13;:56;32880:98;;;32963:4;32956:11;;;;;;;;;32880:98;-1:-1:-1;32994:5:24;;31362:1644;-1:-1:-1;;;;;;;;;31362:1644:24:o;28893:94::-;28944:4;28971:1;28967;:5;:13;;28979:1;28967:13;;;28975:1;28967:13;28960:20;28893:94;-1:-1:-1;;;28893:94:24:o;29060:145::-;-1:-1:-1;;;;;29130:14:24;;;;;;:8;:14;;;;;:24;;29148:6;;29130:14;:24;;29148:6;;29130:24;:::i;:::-;;;;-1:-1:-1;;29169:29:24;;;;;;29185:4;;29191:6;;29169:29;:::i;33878:291::-;33959:10;;33955:208;;34014:22;;34006:55;;33986:15;;-1:-1:-1;;;;;34014:22:24;;34050:6;;33986:15;34006:55;33986:15;34006:55;34050:6;34014:22;34006:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;33985:76;;;34083:10;34075:29;;;;-1:-1:-1;;;34075:29:24;;64243:2:32;34075:29:24;;;64225:21:32;64282:1;64262:18;;;64255:29;-1:-1:-1;;;64300:18:32;;;64293:36;64346:18;;34075:29:24;64041:329:32;34075:29:24;34134:9;34123:29;34145:6;34123:29;;;;3082:25:32;;3070:2;3055:18;;2936:177;34123:29:24;;;;;;;;33971:192;33955:208;33878:291;;:::o;29722:157::-;-1:-1:-1;;;;;29812:22:24;;29789:4;29812:22;;;:16;:22;;;;;;:26;;;;:60;;-1:-1:-1;;;;;;;29842:25:24;;;;;:19;:25;;;;;;:30;;29722:157::o;29574:142::-;-1:-1:-1;;;;;29655:16:24;;29632:4;29655:16;;;:10;:16;;;;;;:20;;;;:54;;-1:-1:-1;;;;;;;29679:25:24;;;;;:19;:25;;;;;;:30;;29574:142::o;1620:130:0:-;965:10:4;1683:7:0;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:0;;1675:68;;;;-1:-1:-1;;;1675:68:0;;64577:2:32;1675:68:0;;;64559:21:32;;;64596:18;;;64589:30;64655:34;64635:18;;;64628:62;64707:18;;1675:68:0;64375:356:32;2687:187:0;2779:6;;;-1:-1:-1;;;;;2795:17:0;;;-1:-1:-1;;;;;;2795:17:0;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;29211:145:24:-;-1:-1:-1;;;;;29281:14:24;;;;;;:8;:14;;;;;:24;;29299:6;;29281:14;:24;;29299:6;;29281:24;:::i;:::-;;;;-1:-1:-1;;29320:29:24;;;;;;29336:4;;29342:6;;29320:29;:::i;33012:860::-;33224:6;;:51;;-1:-1:-1;;;33224:51:24;;;;;3082:25:32;;;33169:4:24;;;;-1:-1:-1;;;;;33224:6:24;;;;:40;;3055:18:32;;33224:51:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;33224:51:24;;;;;;;;;;;;:::i;:::-;33185:90;;33326:1;33293:23;:30;:34;33285:53;;;;-1:-1:-1;;;33285:53:24;;64938:2:32;33285:53:24;;;64920:21:32;64977:1;64957:18;;;64950:29;-1:-1:-1;;;64995:18:32;;;64988:36;65041:18;;33285:53:24;64736:329:32;33285:53:24;33386:54;;-1:-1:-1;;;33386:54:24;;33349:34;;33386:8;;:29;;:54;;33416:23;;33386:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;33615:12;;33594:18;;;;33541:25;;;;:14;:25;;;;;:42;33349:91;;-1:-1:-1;33615:12:24;;33541:71;;;;;;:::i;:::-;:86;;;;:::i;:::-;33512:26;:115;33508:157;;;33650:4;33643:11;;;;;;33508:157;33753:5;:16;;;33735:34;;:15;:34;:70;;;;33788:5;:17;;;33773:32;;:12;:32;33735:70;33731:112;;;33828:4;33821:11;;;;;;33731:112;-1:-1:-1;33860:5:24;;33012:860;-1:-1:-1;;;;;33012:860:24:o;9976:182::-;10087:11;;;;10051:4;;10074:25;;-1:-1:-1;;;;;10087:11:24;10074:12;:25::i;:::-;:63;;;-1:-1:-1;10125:11:24;;;;10103:34;;-1:-1:-1;;;;;10125:11:24;10103:21;:34::i;:::-;10073:78;;;;-1:-1:-1;;10142:9:24;;;;;;9976:182::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;348:127:32:-;409:10;404:3;400:20;397:1;390:31;440:4;437:1;430:15;464:4;461:1;454:15;480:255;552:2;546:9;594:6;582:19;;-1:-1:-1;;;;;616:34:32;;652:22;;;613:62;610:88;;;678:18;;:::i;:::-;714:2;707:22;480:255;:::o;740:::-;812:2;806:9;854:6;842:19;;-1:-1:-1;;;;;876:34:32;;912:22;;;873:62;870:88;;;938:18;;:::i;1000:253::-;1072:2;1066:9;1114:4;1102:17;;-1:-1:-1;;;;;1134:34:32;;1170:22;;;1131:62;1128:88;;;1196:18;;:::i;1258:275::-;1329:2;1323:9;1394:2;1375:13;;-1:-1:-1;;1371:27:32;1359:40;;-1:-1:-1;;;;;1414:34:32;;1450:22;;;1411:62;1408:88;;;1476:18;;:::i;:::-;1512:2;1505:22;1258:275;;-1:-1:-1;1258:275:32:o;1538:187::-;1587:4;-1:-1:-1;;;;;1609:30:32;;1606:56;;;1642:18;;:::i;:::-;-1:-1:-1;1708:2:32;1687:15;-1:-1:-1;;1683:29:32;1714:4;1679:40;;1538:187::o;1730:464::-;1773:5;1826:3;1819:4;1811:6;1807:17;1803:27;1793:55;;1844:1;1841;1834:12;1793:55;1880:6;1867:20;1911:49;1927:32;1956:2;1927:32;:::i;:::-;1911:49;:::i;:::-;1985:2;1976:7;1969:19;2031:3;2024:4;2019:2;2011:6;2007:15;2003:26;2000:35;1997:55;;;2048:1;2045;2038:12;1997:55;2113:2;2106:4;2098:6;2094:17;2087:4;2078:7;2074:18;2061:55;2161:1;2136:16;;;2154:4;2132:27;2125:38;;;;2140:7;1730:464;-1:-1:-1;;;1730:464:32:o;2199:543::-;2287:6;2295;2348:2;2336:9;2327:7;2323:23;2319:32;2316:52;;;2364:1;2361;2354:12;2316:52;2391:23;;-1:-1:-1;;;;;2463:14:32;;;2460:34;;;2490:1;2487;2480:12;2460:34;2513:50;2555:7;2546:6;2535:9;2531:22;2513:50;:::i;:::-;2503:60;;2616:2;2605:9;2601:18;2588:32;2572:48;;2645:2;2635:8;2632:16;2629:36;;;2661:1;2658;2651:12;2629:36;;2684:52;2728:7;2717:8;2706:9;2702:24;2684:52;:::i;:::-;2674:62;;;2199:543;;;;;:::o;3118:131::-;-1:-1:-1;;;;;3193:31:32;;3183:42;;3173:70;;3239:1;3236;3229:12;3254:134;3322:20;;3351:31;3322:20;3351:31;:::i;3393:160::-;3459:20;;3519:1;3508:20;;;3498:31;;3488:59;;3543:1;3540;3533:12;3558:163;3625:20;;3685:10;3674:22;;3664:33;;3654:61;;3711:1;3708;3701:12;3726:159;3793:20;;3853:6;3842:18;;3832:29;;3822:57;;3875:1;3872;3865:12;3890:2094;3948:5;3996:6;3984:9;3979:3;3975:19;3971:32;3968:52;;;4016:1;4013;4006:12;3968:52;4038:22;;:::i;:::-;4029:31;;4083:29;4102:9;4083:29;:::i;:::-;4076:5;4069:44;4145:38;4179:2;4168:9;4164:18;4145:38;:::i;:::-;4140:2;4129:14;;4122:62;4235:2;4220:18;;4207:32;-1:-1:-1;;;;;4288:14:32;;;4285:34;;;4315:1;4312;4305:12;4285:34;4351:46;4393:3;4384:6;4373:9;4369:22;4351:46;:::i;:::-;4346:2;4339:5;4335:14;4328:70;4430:38;4464:2;4453:9;4449:18;4430:38;:::i;:::-;4425:2;4418:5;4414:14;4407:62;4522:3;4511:9;4507:19;4494:33;4478:49;;4552:2;4542:8;4539:16;4536:36;;;4568:1;4565;4558:12;4536:36;4605:48;4649:3;4638:8;4627:9;4623:24;4605:48;:::i;:::-;4599:3;4592:5;4588:15;4581:73;4715:3;4704:9;4700:19;4687:33;4681:3;4674:5;4670:15;4663:58;4782:3;4771:9;4767:19;4754:33;4748:3;4741:5;4737:15;4730:58;4821:37;4853:3;4842:9;4838:19;4821:37;:::i;:::-;4815:3;4808:5;4804:15;4797:62;4878:3;4868:13;;4934:2;4923:9;4919:18;4906:32;4963:2;4953:8;4950:16;4947:36;;;4979:1;4976;4969:12;4947:36;5015:48;5059:3;5048:8;5037:9;5033:24;5015:48;:::i;:::-;5010:2;5003:5;4999:14;4992:72;;;;5083:3;5146:2;5135:9;5131:18;5118:32;5113:2;5106:5;5102:14;5095:56;;5170:3;5205:37;5238:2;5227:9;5223:18;5205:37;:::i;:::-;5189:14;;;5182:61;5262:3;5297:37;5315:18;;;5297:37;:::i;:::-;5281:14;;;5274:61;5354:3;5389:37;5407:18;;;5389:37;:::i;:::-;5373:14;;;5366:61;5446:3;5481:37;5499:18;;;5481:37;:::i;:::-;5465:14;;;5458:61;5538:3;5573:37;5591:18;;;5573:37;:::i;:::-;5557:14;;;5550:61;5630:3;5665:37;5683:18;;;5665:37;:::i;:::-;5649:14;;;5642:61;5723:3;5759:38;5777:19;;;5759:38;:::i;:::-;5742:15;;;5735:63;5818:3;5867:19;;;5854:33;5837:15;;;5830:58;5908:3;5957:19;;;5944:33;5927:15;;;5920:58;;;;5746:5;3890:2094;-1:-1:-1;3890:2094:32:o;5989:354::-;6078:6;6131:2;6119:9;6110:7;6106:23;6102:32;6099:52;;;6147:1;6144;6137:12;6099:52;6174:23;;-1:-1:-1;;;;;6209:30:32;;6206:50;;;6252:1;6249;6242:12;6206:50;6275:62;6329:7;6320:6;6309:9;6305:22;6275:62;:::i;6530:177::-;6598:20;;-1:-1:-1;;;;;;6647:35:32;;6637:46;;6627:74;;6697:1;6694;6687:12;6712:118;6798:5;6791:13;6784:21;6777:5;6774:32;6764:60;;6820:1;6817;6810:12;6835:128;6900:20;;6929:28;6900:20;6929:28;:::i;6968:2188::-;7025:5;7073:6;7061:9;7056:3;7052:19;7048:32;7045:52;;;7093:1;7090;7083:12;7045:52;7115:22;;:::i;:::-;7106:31;;7160:29;7179:9;7160:29;:::i;:::-;7153:5;7146:44;7222:38;7256:2;7245:9;7241:18;7222:38;:::i;:::-;7217:2;7210:5;7206:14;7199:62;7293:38;7327:2;7316:9;7312:18;7293:38;:::i;:::-;7288:2;7277:14;;7270:62;7383:2;7368:18;;7355:32;-1:-1:-1;;;;;7436:14:32;;;7433:34;;;7463:1;7460;7453:12;7433:34;7499:46;7541:3;7532:6;7521:9;7517:22;7499:46;:::i;:::-;7494:2;7487:5;7483:14;7476:70;7579:39;7613:3;7602:9;7598:19;7579:39;:::i;:::-;7573:3;7566:5;7562:15;7555:64;7672:3;7661:9;7657:19;7644:33;7628:49;;7702:2;7692:8;7689:16;7686:36;;;7718:1;7715;7708:12;7686:36;7755:48;7799:3;7788:8;7777:9;7773:24;7755:48;:::i;:::-;7749:3;7742:5;7738:15;7731:73;7865:3;7854:9;7850:19;7837:33;7831:3;7824:5;7820:15;7813:58;7932:3;7921:9;7917:19;7904:33;7898:3;7891:5;7887:15;7880:58;7957:3;7947:13;;7992:38;8026:2;8015:9;8011:18;7992:38;:::i;:::-;7987:2;7980:5;7976:14;7969:62;8050:3;8040:13;;8106:2;8095:9;8091:18;8078:32;8135:2;8125:8;8122:16;8119:36;;;8151:1;8148;8141:12;8119:36;8187:48;8231:3;8220:8;8209:9;8205:24;8187:48;:::i;:::-;8182:2;8175:5;8171:14;8164:72;;;;8255:3;8290:37;8323:2;8312:9;8308:18;8290:37;:::i;:::-;8274:14;;;8267:61;8347:3;8382:36;8399:18;;;8382:36;:::i;:::-;8366:14;;;8359:60;8438:3;8486:18;;;8473:32;8457:14;;;8450:56;8525:3;8560:37;8578:18;;;8560:37;:::i;:::-;8544:14;;;8537:61;8617:3;8652:37;8670:18;;;8652:37;:::i;:::-;8636:14;;;8629:61;8709:3;8744:37;8762:18;;;8744:37;:::i;:::-;8728:14;;;8721:61;8802:3;8838:38;8856:19;;;8838:38;:::i;:::-;8821:15;;;8814:63;8897:3;8933:36;8949:19;;;8933:36;:::i;:::-;8916:15;;;8909:61;8990:3;9039:19;;;9026:33;9009:15;;;9002:58;9080:3;9129:19;;;9116:33;9099:15;;;9092:58;;;;8920:5;6968:2188;-1:-1:-1;6968:2188:32:o;9161:1040::-;9312:6;9320;9328;9336;9344;9397:3;9385:9;9376:7;9372:23;9368:33;9365:53;;;9414:1;9411;9404:12;9365:53;9441:23;;-1:-1:-1;;;;;9513:14:32;;;9510:34;;;9540:1;9537;9530:12;9510:34;9563:61;9616:7;9607:6;9596:9;9592:22;9563:61;:::i;:::-;9553:71;;9677:2;9666:9;9662:18;9649:32;9633:48;;9706:2;9696:8;9693:16;9690:36;;;9722:1;9719;9712:12;9690:36;9745:52;9789:7;9778:8;9767:9;9763:24;9745:52;:::i;:::-;9735:62;;9850:2;9839:9;9835:18;9822:32;9806:48;;9879:2;9869:8;9866:16;9863:36;;;9895:1;9892;9885:12;9863:36;9918:52;9962:7;9951:8;9940:9;9936:24;9918:52;:::i;:::-;9908:62;;10023:2;10012:9;10008:18;9995:32;9979:48;;10052:2;10042:8;10039:16;10036:36;;;10068:1;10065;10058:12;10036:36;;10091:52;10135:7;10124:8;10113:9;10109:24;10091:52;:::i;:::-;9161:1040;;;;-1:-1:-1;9161:1040:32;;10190:3;10175:19;10162:33;;9161:1040;-1:-1:-1;;;9161:1040:32:o;10386:180::-;10445:6;10498:2;10486:9;10477:7;10473:23;10469:32;10466:52;;;10514:1;10511;10504:12;10466:52;-1:-1:-1;10537:23:32;;10386:180;-1:-1:-1;10386:180:32:o;10571:873::-;10684:6;10692;10700;10708;10761:3;10749:9;10740:7;10736:23;10732:33;10729:53;;;10778:1;10775;10768:12;10729:53;10805:23;;-1:-1:-1;;;;;10877:14:32;;;10874:34;;;10904:1;10901;10894:12;10874:34;10927:50;10969:7;10960:6;10949:9;10945:22;10927:50;:::i;:::-;10917:60;;11030:2;11019:9;11015:18;11002:32;10986:48;;11059:2;11049:8;11046:16;11043:36;;;11075:1;11072;11065:12;11043:36;11098:52;11142:7;11131:8;11120:9;11116:24;11098:52;:::i;:::-;11088:62;;11200:2;11189:9;11185:18;11172:32;11159:45;;11213:28;11235:5;11213:28;:::i;:::-;11260:5;;-1:-1:-1;11318:2:32;11303:18;;11290:32;;11334:16;;;11331:36;;;11363:1;11360;11353:12;11331:36;;11386:52;11430:7;11419:8;11408:9;11404:24;11386:52;:::i;:::-;11376:62;;;10571:873;;;;;;;:::o;11642:247::-;11701:6;11754:2;11742:9;11733:7;11729:23;11725:32;11722:52;;;11770:1;11767;11760:12;11722:52;11809:9;11796:23;11828:31;11853:5;11828:31;:::i;12367:250::-;12452:1;12462:113;12476:6;12473:1;12470:13;12462:113;;;12552:11;;;12546:18;12533:11;;;12526:39;12498:2;12491:10;12462:113;;;-1:-1:-1;;12609:1:32;12591:16;;12584:27;12367:250::o;12622:271::-;12664:3;12702:5;12696:12;12729:6;12724:3;12717:19;12745:76;12814:6;12807:4;12802:3;12798:14;12791:4;12784:5;12780:16;12745:76;:::i;:::-;12875:2;12854:15;-1:-1:-1;;12850:29:32;12841:39;;;;12882:4;12837:50;;12622:271;-1:-1:-1;;12622:271:32:o;12898:220::-;13047:2;13036:9;13029:21;13010:4;13067:45;13108:2;13097:9;13093:18;13085:6;13067:45;:::i;13123:104::-;-1:-1:-1;;;;;13189:31:32;13177:44;;13123:104::o;13232:743::-;13328:5;13322:12;13317:3;13310:25;13413:1;13409;13404:3;13400:11;13396:19;13388:4;13381:5;13377:16;13371:23;13367:49;13360:4;13355:3;13351:14;13344:73;13292:3;13463:4;13456:5;13452:16;13446:23;13501:4;13494;13489:3;13485:14;13478:28;13527:47;13568:4;13563:3;13559:14;13545:12;13527:47;:::i;:::-;13515:59;;13622:4;13615:5;13611:16;13605:23;13670:3;13664:4;13660:14;13653:4;13648:3;13644:14;13637:38;13698:39;13732:4;13716:14;13698:39;:::i;:::-;13684:53;;;13800:4;13793:5;13789:16;13783:23;13776:31;13769:39;13762:4;13757:3;13753:14;13746:63;13857:4;13850:5;13846:16;13840:23;13907:3;13899:6;13895:16;13888:4;13883:3;13879:14;13872:40;13928:41;13962:6;13946:14;13928:41;:::i;13980:288::-;14179:2;14168:9;14161:21;14142:4;14199:63;14258:2;14247:9;14243:18;14235:6;14199:63;:::i;14273:203::-;-1:-1:-1;;;;;14437:32:32;;;;14419:51;;14407:2;14392:18;;14273:203::o;14481:309::-;14546:6;14554;14607:2;14595:9;14586:7;14582:23;14578:32;14575:52;;;14623:1;14620;14613:12;14575:52;14659:9;14646:23;14636:33;;14719:2;14708:9;14704:18;14691:32;14732:28;14754:5;14732:28;:::i;:::-;14779:5;14769:15;;;14481:309;;;;;:::o;14795:572::-;14901:6;14909;14962:2;14950:9;14941:7;14937:23;14933:32;14930:52;;;14978:1;14975;14968:12;14930:52;15005:23;;-1:-1:-1;;;;;15077:14:32;;;15074:34;;;15104:1;15101;15094:12;15074:34;15127:61;15180:7;15171:6;15160:9;15156:22;15127:61;:::i;15372:352::-;15460:6;15513:2;15501:9;15492:7;15488:23;15484:32;15481:52;;;15529:1;15526;15519:12;15481:52;15556:23;;-1:-1:-1;;;;;15591:30:32;;15588:50;;;15634:1;15631;15624:12;15588:50;15657:61;15710:7;15701:6;15690:9;15686:22;15657:61;:::i;15729:574::-;15836:6;15844;15897:2;15885:9;15876:7;15872:23;15868:32;15865:52;;;15913:1;15910;15903:12;15865:52;15940:23;;-1:-1:-1;;;;;16012:14:32;;;16009:34;;;16039:1;16036;16029:12;16009:34;16062:62;16116:7;16107:6;16096:9;16092:22;16062:62;:::i;16596:183::-;16656:4;-1:-1:-1;;;;;16678:30:32;;16675:56;;;16711:18;;:::i;:::-;-1:-1:-1;16756:1:32;16752:14;16768:4;16748:25;;16596:183::o;16784:1317::-;16913:6;16921;16929;16937;16945;16998:3;16986:9;16977:7;16973:23;16969:33;16966:53;;;17015:1;17012;17005:12;16966:53;17038:23;;;-1:-1:-1;17080:2:32;17118:18;;;17105:32;-1:-1:-1;;;;;17186:14:32;;;17183:34;;;17213:1;17210;17203:12;17183:34;17236:50;17278:7;17269:6;17258:9;17254:22;17236:50;:::i;:::-;17226:60;;17333:2;17322:9;17318:18;17305:32;17295:42;;17384:2;17373:9;17369:18;17356:32;17346:42;;17441:3;17430:9;17426:19;17413:33;17397:49;;17471:2;17461:8;17458:16;17455:36;;;17487:1;17484;17477:12;17455:36;-1:-1:-1;17510:24:32;;17565:4;17557:13;;17553:27;-1:-1:-1;17543:55:32;;17594:1;17591;17584:12;17543:55;17630:2;17617:16;17653:60;17669:43;17709:2;17669:43;:::i;17653:60::-;17747:15;;;17829:1;17825:10;;;;17817:19;;17813:28;;;17778:12;;;;17853:19;;;17850:39;;;17885:1;17882;17875:12;17850:39;17909:11;;;;17929:142;17945:6;17940:3;17937:15;17929:142;;;18011:17;;17999:30;;17962:12;;;;18049;;;;17929:142;;;18090:5;18080:15;;;;;;;16784:1317;;;;;;;;:::o;18337:871::-;18549:4;18578:2;18618;18607:9;18603:18;18648:2;18637:9;18630:21;18671:6;18706;18700:13;18737:6;18729;18722:22;18775:2;18764:9;18760:18;18753:25;;18837:2;18827:6;18824:1;18820:14;18809:9;18805:30;18801:39;18787:53;;18875:2;18867:6;18863:15;18896:1;18906:273;18920:6;18917:1;18914:13;18906:273;;;19013:2;19009:7;18997:9;18989:6;18985:22;18981:36;18976:3;18969:49;19041:58;19092:6;19083;19077:13;19041:58;:::i;:::-;19031:68;-1:-1:-1;19157:12:32;;;;19122:15;;;;18942:1;18935:9;18906:273;;;-1:-1:-1;19196:6:32;;18337:871;-1:-1:-1;;;;;;;18337:871:32:o;19547:380::-;19626:1;19622:12;;;;19669;;;19690:61;;19744:4;19736:6;19732:17;19722:27;;19690:61;19797:2;19789:6;19786:14;19766:18;19763:38;19760:161;;19843:10;19838:3;19834:20;19831:1;19824:31;19878:4;19875:1;19868:15;19906:4;19903:1;19896:15;19760:161;;19547:380;;;:::o;20058:545::-;20160:2;20155:3;20152:11;20149:448;;;20196:1;20221:5;20217:2;20210:17;20266:4;20262:2;20252:19;20336:2;20324:10;20320:19;20317:1;20313:27;20307:4;20303:38;20372:4;20360:10;20357:20;20354:47;;;-1:-1:-1;20395:4:32;20354:47;20450:2;20445:3;20441:12;20438:1;20434:20;20428:4;20424:31;20414:41;;20505:82;20523:2;20516:5;20513:13;20505:82;;;20568:17;;;20549:1;20538:13;20505:82;;;20509:3;;;20149:448;20058:545;;;:::o;20779:1352::-;20899:10;;-1:-1:-1;;;;;20921:30:32;;20918:56;;;20954:18;;:::i;:::-;20983:97;21073:6;21033:38;21065:4;21059:11;21033:38;:::i;:::-;21027:4;20983:97;:::i;:::-;21135:4;;21199:2;21188:14;;21216:1;21211:663;;;;21918:1;21935:6;21932:89;;;-1:-1:-1;21987:19:32;;;21981:26;21932:89;-1:-1:-1;;20736:1:32;20732:11;;;20728:24;20724:29;20714:40;20760:1;20756:11;;;20711:57;22034:81;;21181:944;;21211:663;20005:1;19998:14;;;20042:4;20029:18;;-1:-1:-1;;21247:20:32;;;21365:236;21379:7;21376:1;21373:14;21365:236;;;21468:19;;;21462:26;21447:42;;21560:27;;;;21528:1;21516:14;;;;21395:19;;21365:236;;;21369:3;21629:6;21620:7;21617:19;21614:201;;;21690:19;;;21684:26;-1:-1:-1;;21773:1:32;21769:14;;;21785:3;21765:24;21761:37;21757:42;21742:58;21727:74;;21614:201;-1:-1:-1;;;;;21861:1:32;21845:14;;;21841:22;21828:36;;-1:-1:-1;20779:1352:32:o;22136:772::-;22186:3;22227:5;22221:12;22256:36;22282:9;22256:36;:::i;:::-;22301:19;;;22339:4;22362:1;22379:18;;;22406:146;;;;22566:1;22561:341;;;;22372:530;;22406:146;-1:-1:-1;;22448:24:32;;22434:12;;;22427:46;22520:14;;22513:22;22510:1;22506:30;22497:40;;22493:49;;;-1:-1:-1;22406:146:32;;22561:341;22592:5;22589:1;22582:16;22639:2;22636:1;22626:16;22664:1;22678:174;22692:6;22689:1;22686:13;22678:174;;;22779:14;;22761:11;;;22757:20;;22750:44;22822:16;;;;22707:10;;22678:174;;;22876:11;;22872:20;;;-1:-1:-1;;22372:530:32;;;;;;22136:772;;;;:::o;22913:393::-;23104:2;23093:9;23086:21;23067:4;23130:53;23179:2;23168:9;23164:18;23156:6;23130:53;:::i;:::-;23231:9;23223:6;23219:22;23214:2;23203:9;23199:18;23192:50;23259:41;23293:6;23285;23259:41;:::i;23311:127::-;23372:10;23367:3;23363:20;23360:1;23353:31;23403:4;23400:1;23393:15;23427:4;23424:1;23417:15;23443:135;23482:3;23503:17;;;23500:43;;23523:18;;:::i;:::-;-1:-1:-1;23570:1:32;23559:13;;23443:135::o;23583:329::-;23785:2;23767:21;;;23824:1;23804:18;;;23797:29;-1:-1:-1;;;23857:2:32;23842:18;;23835:36;23903:2;23888:18;;23583:329::o;23917:::-;24119:2;24101:21;;;24158:1;24138:18;;;24131:29;-1:-1:-1;;;24191:2:32;24176:18;;24169:36;24237:2;24222:18;;23917:329::o;24251:394::-;24491:1;24487;24482:3;24478:11;24474:19;24466:6;24462:32;24451:9;24444:51;24531:6;24526:2;24515:9;24511:18;24504:34;24574:2;24569;24558:9;24554:18;24547:30;24425:4;24594:45;24635:2;24624:9;24620:18;24612:6;24594:45;:::i;24650:245::-;24717:6;24770:2;24758:9;24749:7;24745:23;24741:32;24738:52;;;24786:1;24783;24776:12;24738:52;24818:9;24812:16;24837:28;24859:5;24837:28;:::i;24900:329::-;25102:2;25084:21;;;25141:1;25121:18;;;25114:29;-1:-1:-1;;;25174:2:32;25159:18;;25152:36;25220:2;25205:18;;24900:329::o;27572:128::-;27639:9;;;27660:11;;;27657:37;;;27674:18;;:::i;27705:345::-;-1:-1:-1;;;;;27925:32:32;;;;27907:51;;27989:2;27974:18;;27967:34;;;;28032:2;28017:18;;28010:34;27895:2;27880:18;;27705:345::o;28055:168::-;28128:9;;;28159;;28176:15;;;28170:22;;28156:37;28146:71;;28197:18;;:::i;28228:127::-;28289:10;28284:3;28280:20;28277:1;28270:31;28320:4;28317:1;28310:15;28344:4;28341:1;28334:15;28360:120;28400:1;28426;28416:35;;28431:18;;:::i;:::-;-1:-1:-1;28465:9:32;;28360:120::o;29044:2429::-;29159:12;;-1:-1:-1;;;;;;28802:35:32;28790:48;;29097:3;29125:6;29223:4;29216:5;29212:16;29206:23;29238:48;29280:4;29275:3;29271:14;29257:12;29238:48;:::i;:::-;;29334:4;29327:5;29323:16;29317:23;29349:50;29393:4;29388:3;29384:14;29368;29349:50;:::i;:::-;;29447:4;29440:5;29436:16;29430:23;29485:2;29478:4;29473:3;29469:14;29462:26;29509:47;29552:2;29547:3;29543:12;29527:14;29509:47;:::i;:::-;29497:59;;;29604:4;29597:5;29593:16;29587:23;29619:50;29663:4;29658:3;29654:14;29638;29619:50;:::i;:::-;;29717:4;29710:5;29706:16;29700:23;29765:3;29759:4;29755:14;29748:4;29743:3;29739:14;29732:38;29793:39;29827:4;29811:14;29793:39;:::i;:::-;29779:53;;;29881:4;29874:5;29870:16;29864:23;29857:4;29852:3;29848:14;29841:47;29937:4;29930:5;29926:16;29920:23;29913:4;29908:3;29904:14;29897:47;29963:6;30017:2;30010:5;30006:14;30000:21;30030:48;30074:2;30069:3;30065:12;30049:14;30030:48;:::i;:::-;;;30097:6;30151:2;30144:5;30140:14;30134:21;30197:3;30189:6;30185:16;30180:2;30175:3;30171:12;30164:38;30225:41;30259:6;30243:14;30225:41;:::i;:::-;30211:55;;;;30285:6;30339:2;30332:5;30328:14;30322:21;30352:47;30395:2;30390:3;30386:12;30370:14;28925:10;28914:22;28902:35;;28849:94;30352:47;;;30418:6;30472:2;30465:5;30461:14;30455:21;30485:46;30527:2;30522:3;30518:12;30502:14;29023:1;29012:20;29000:33;;28948:91;30485:46;-1:-1:-1;;30550:6:32;30592:14;;;30586:21;30572:12;;;30565:43;30627:6;30670:14;;;30664:21;28925:10;28914:22;;;30728:12;;;28902:35;;;;30760:6;30804:14;;;30798:21;28914:22;;30863:12;;;28902:35;30895:6;30939:14;;;30933:21;28914:22;;;30998:12;;;28902:35;31031:6;31075:15;;;31069:22;16384:6;16373:18;31135:13;;;16361:31;31169:6;31213:15;;;31207:22;11964:13;11957:21;31271:13;;;11945:34;31305:6;31348:15;;;31342:22;31327:13;;;31320:45;31385:6;31428:15;;;31422:22;31407:13;;;;31400:45;;;;-1:-1:-1;31407:13:32;29044:2429::o;31478:348::-;31701:2;31690:9;31683:21;31664:4;31721:56;31773:2;31762:9;31758:18;31750:6;31721:56;:::i;:::-;31713:64;;31813:6;31808:2;31797:9;31793:18;31786:34;31478:348;;;;;:::o;31831:125::-;31896:9;;;31917:10;;;31914:36;;;31930:18;;:::i;32171:435::-;-1:-1:-1;;;;;32422:32:32;;;;32404:51;;32486:2;32471:18;;32464:34;;;;32541:14;32534:22;32529:2;32514:18;;32507:50;32588:2;32573:18;;32566:34;32391:3;32376:19;;32171:435::o;32611:287::-;32740:3;32778:6;32772:13;32794:66;32853:6;32848:3;32841:4;32833:6;32829:17;32794:66;:::i;:::-;32876:16;;;;;32611:287;-1:-1:-1;;32611:287:32:o;32903:531::-;33167:10;33159:6;33155:23;33144:9;33137:42;33215:6;33210:2;33199:9;33195:18;33188:34;33258:3;33253:2;33242:9;33238:18;33231:31;33118:4;33279:46;33320:3;33309:9;33305:19;33297:6;33279:46;:::i;:::-;33368:14;;33361:22;33356:2;33341:18;;33334:50;-1:-1:-1;33415:3:32;33400:19;33393:35;33271:54;32903:531;-1:-1:-1;;;32903:531:32:o;33439:329::-;33641:2;33623:21;;;33680:1;33660:18;;;33653:29;-1:-1:-1;;;33713:2:32;33698:18;;33691:36;33759:2;33744:18;;33439:329::o;33773:::-;33975:2;33957:21;;;34014:1;33994:18;;;33987:29;-1:-1:-1;;;34047:2:32;34032:18;;34025:36;34093:2;34078:18;;33773:329::o;34107:274::-;-1:-1:-1;;;;;34299:32:32;;;;34281:51;;34363:2;34348:18;;34341:34;34269:2;34254:18;;34107:274::o;35388:255::-;-1:-1:-1;;;35590:20:32;;35635:1;35626:11;;35388:255::o;35942:256::-;-1:-1:-1;;;36144:21:32;;36190:1;36181:11;;35942:256::o;37464:329::-;37666:2;37648:21;;;37705:1;37685:18;;;37678:29;-1:-1:-1;;;37738:2:32;37723:18;;37716:36;37784:2;37769:18;;37464:329::o;37798:112::-;37830:1;37856;37846:35;;37861:18;;:::i;:::-;-1:-1:-1;37895:9:32;;37798:112::o;39504:656::-;39765:6;39760:3;39753:19;39735:3;39801:6;39795:13;39817:73;39883:6;39878:2;39873:3;39869:12;39864:2;39856:6;39852:15;39817:73;:::i;:::-;39918:6;39913:3;39909:16;39899:26;;39986:1;39982;39978:2;39974:10;39970:18;39966:23;39958:6;39954:36;39949:2;39945;39941:11;39934:57;40022:6;40016:13;40038:74;40103:8;40098:2;40094;40090:11;40085:2;40077:6;40073:15;40038:74;:::i;:::-;40132:17;40151:2;40128:26;;39504:656;-1:-1:-1;;;;;;39504:656:32:o;40165:442::-;40218:5;40271:3;40264:4;40256:6;40252:17;40248:27;40238:55;;40289:1;40286;40279:12;40238:55;40318:6;40312:13;40349:49;40365:32;40394:2;40365:32;:::i;40349:49::-;40423:2;40414:7;40407:19;40469:3;40462:4;40457:2;40449:6;40445:15;40441:26;40438:35;40435:55;;;40486:1;40483;40476:12;40435:55;40499:77;40573:2;40566:4;40557:7;40553:18;40546:4;40538:6;40534:17;40499:77;:::i;40612:335::-;40691:6;40744:2;40732:9;40723:7;40719:23;40715:32;40712:52;;;40760:1;40757;40750:12;40712:52;40787:16;;-1:-1:-1;;;;;40815:30:32;;40812:50;;;40858:1;40855;40848:12;40812:50;40881:60;40933:7;40924:6;40913:9;40909:22;40881:60;:::i;40952:608::-;-1:-1:-1;;;41314:3:32;41307:16;41352:6;41348:1;41343:3;41339:11;41332:27;-1:-1:-1;;;41384:2:32;41379:3;41375:12;41368:25;41289:3;41422:6;41416:13;41438:75;41506:6;41501:2;41496:3;41492:12;41485:4;41477:6;41473:17;41438:75;:::i;:::-;41533:16;;;;41551:2;41529:25;;40952:608;-1:-1:-1;;;40952:608:32:o;41565:468::-;41788:2;41777:9;41770:21;41751:4;41814:45;41855:2;41844:9;41840:18;41832:6;41814:45;:::i;:::-;41907:9;41899:6;41895:22;41890:2;41879:9;41875:18;41868:50;41935:33;41961:6;41953;41935:33;:::i;:::-;41927:41;;;42018:6;42011:14;42004:22;41999:2;41988:9;41984:18;41977:50;41565:468;;;;;;:::o;42706:172::-;42773:10;42803;;;42815;;;42799:27;;42838:11;;;42835:37;;;42852:18;;:::i;:::-;42835:37;42706:172;;;;:::o;45221:329::-;45423:2;45405:21;;;45462:1;45442:18;;;45435:29;-1:-1:-1;;;45495:2:32;45480:18;;45473:36;45541:2;45526:18;;45221:329::o;46910:::-;47112:2;47094:21;;;47151:1;47131:18;;;47124:29;-1:-1:-1;;;47184:2:32;47169:18;;47162:36;47230:2;47215:18;;46910:329::o;48422:2007::-;48546:6;48577:2;48620;48608:9;48599:7;48595:23;48591:32;48588:52;;;48636:1;48633;48626:12;48588:52;48663:16;;-1:-1:-1;;;;;48728:14:32;;;48725:34;;;48755:1;48752;48745:12;48725:34;48793:6;48782:9;48778:22;48768:32;;48838:7;48831:4;48827:2;48823:13;48819:27;48809:55;;48860:1;48857;48850:12;48809:55;48889:2;48883:9;48912:60;48928:43;48968:2;48928:43;:::i;48912:60::-;49006:15;;;49088:1;49084:10;;;;49076:19;;49072:28;;;49037:12;;;;49112:19;;;49109:39;;;49144:1;49141;49134:12;49109:39;49176:2;49172;49168:11;49188:1211;49204:6;49199:3;49196:15;49188:1211;;;49283:3;49277:10;49319:2;49306:11;49303:19;49300:109;;;49363:1;49392:2;49388;49381:14;49300:109;49432:20;;49475:4;49503:16;;;-1:-1:-1;;49499:30:32;49495:39;-1:-1:-1;49492:129:32;;;49575:1;49604:2;49600;49593:14;49492:129;49647:22;;:::i;:::-;49711:2;49707;49703:11;49697:18;49763:2;49754:7;49750:16;49741:7;49738:29;49728:127;;49809:1;49838:2;49834;49827:14;49728:127;49868:22;;49914:2;49951:12;;;49945:19;49980:16;;;49977:109;;;50038:1;50068:3;50063;50056:16;49977:109;50122:64;50178:7;50173:2;50162:8;50158:2;50154:17;50150:26;50122:64;:::i;:::-;50106:14;;;50099:88;-1:-1:-1;50211:2:32;50256:12;;;50250:19;50233:15;;;50226:44;;;;50313:11;;;;50307:18;50290:15;;;50283:43;50339:18;;50377:12;;;;49221;;49188:1211;;;-1:-1:-1;50418:5:32;48422:2007;-1:-1:-1;;;;;;;;48422:2007:32:o;50434:127::-;50495:10;50490:3;50486:20;50483:1;50476:31;50526:4;50523:1;50516:15;50550:4;50547:1;50540:15;50900:148;50988:4;50967:12;;;50981;;;50963:31;;51006:13;;51003:39;;;51022:18;;:::i;51053:175::-;51090:3;51134:4;51127:5;51123:16;51163:4;51154:7;51151:17;51148:43;;51171:18;;:::i;:::-;51220:1;51207:15;;51053:175;-1:-1:-1;;51053:175:32:o;51233:184::-;51303:6;51356:2;51344:9;51335:7;51331:23;51327:32;51324:52;;;51372:1;51369;51362:12;51324:52;-1:-1:-1;51395:16:32;;51233:184;-1:-1:-1;51233:184:32:o;52090:848::-;52316:4;52364:3;52353:9;52349:19;52395:6;52384:9;52377:25;52421:2;52459:6;52454:2;52443:9;52439:18;52432:34;52502:6;52497:2;52486:9;52482:18;52475:34;52545:3;52540:2;52529:9;52525:18;52518:31;52569:6;52604;52598:13;52635:6;52627;52620:22;52673:3;52662:9;52658:19;52651:26;;52712:2;52704:6;52700:15;52686:29;;52733:1;52743:169;52757:6;52754:1;52751:13;52743:169;;;52818:13;;52806:26;;52887:15;;;;52852:12;;;;52779:1;52772:9;52743:169;;;-1:-1:-1;52929:3:32;;52090:848;-1:-1:-1;;;;;;;;;52090:848:32:o;53465:257::-;-1:-1:-1;;;;;53586:10:32;;;53598;;;53582:27;53629:20;;;;53536:18;53668:24;;;53658:58;;53696:18;;:::i;:::-;53658:58;;53465:257;;;;:::o;54061:307::-;54238:2;54227:9;54220:21;54201:4;54258:45;54299:2;54288:9;54284:18;54276:6;54258:45;:::i;:::-;54250:53;;54353:6;54346:14;54339:22;54334:2;54323:9;54319:18;54312:50;54061:307;;;;;:::o;54373:840::-;54499:3;54528:1;54561:6;54555:13;54591:36;54617:9;54591:36;:::i;:::-;54646:1;54663:18;;;54690:133;;;;54837:1;54832:356;;;;54656:532;;54690:133;-1:-1:-1;;54723:24:32;;54711:37;;54796:14;;54789:22;54777:35;;54768:45;;;-1:-1:-1;54690:133:32;;54832:356;54863:6;54860:1;54853:17;54893:4;54938:2;54935:1;54925:16;54963:1;54977:165;54991:6;54988:1;54985:13;54977:165;;;55069:14;;55056:11;;;55049:35;55112:16;;;;55006:10;;54977:165;;;54981:3;;;55171:6;55166:3;55162:16;55155:23;;54656:532;-1:-1:-1;55204:3:32;;54373:840;-1:-1:-1;;;;;;54373:840:32:o;56627:2638::-;56824:2;56813:9;56806:21;56836:53;56885:2;56874:9;56870:18;56861:6;56855:13;56836:53;:::i;:::-;56787:4;56936:2;56928:6;56924:15;56918:22;56949:52;56997:2;56986:9;56982:18;56968:12;56949:52;:::i;:::-;;57050:2;57042:6;57038:15;57032:22;57073:6;57115:2;57110;57099:9;57095:18;57088:30;57141:54;57190:3;57179:9;57175:19;57159:14;57141:54;:::i;:::-;57127:68;;57244:2;57236:6;57232:15;57226:22;57257:55;57307:3;57296:9;57292:19;57276:14;57257:55;:::i;:::-;;57361:3;57353:6;57349:16;57343:23;57389:2;57385:7;57457:2;57445:9;57437:6;57433:22;57429:31;57423:3;57412:9;57408:19;57401:60;57484:41;57518:6;57502:14;57484:41;:::i;:::-;57470:55;;57580:3;57572:6;57568:16;57562:23;57556:3;57545:9;57541:19;57534:52;57641:3;57633:6;57629:16;57623:23;57617:3;57606:9;57602:19;57595:52;57696:3;57688:6;57684:16;57678:23;57656:45;;57720:3;57732:52;57780:2;57769:9;57765:18;57749:14;29023:1;29012:20;29000:33;;28948:91;57732:52;57833:2;57825:6;57821:15;57815:22;57793:44;;;57856:3;57923:2;57911:9;57903:6;57899:22;57895:31;57890:2;57879:9;57875:18;57868:59;57950:41;57984:6;57968:14;57950:41;:::i;:::-;58016:15;;;58010:22;58051:3;58070:18;;;58063:30;;;;58130:15;;58124:22;57936:55;;-1:-1:-1;58124:22:32;-1:-1:-1;58165:3:32;;-1:-1:-1;58177:53:32;58211:18;;;58124:22;28925:10;28914:22;28902:35;;28849:94;58177:53;58267:15;;58261:22;;-1:-1:-1;58302:3:32;58314:53;58348:18;;;58261:22;28925:10;28914:22;28902:35;;28849:94;58314:53;58404:15;;58398:22;;-1:-1:-1;58439:3:32;58451:53;58485:18;;;58398:22;16384:6;16373:18;16361:31;;16308:90;58451:53;58541:15;;58535:22;;-1:-1:-1;58577:3:32;58589:54;58623:19;;;58535:22;16384:6;16373:18;16361:31;;16308:90;58589:54;58681:16;;58675:23;;-1:-1:-1;58718:3:32;58730:55;58765:19;;;58675:23;28925:10;28914:22;28902:35;;28849:94;58730:55;58823:16;;58817:23;;-1:-1:-1;58860:3:32;58872:55;58907:19;;;58817:23;28925:10;28914:22;28902:35;;28849:94;58872:55;58965:16;;58959:23;;-1:-1:-1;59002:3:32;59014:55;59049:19;;;58959:23;28925:10;28914:22;28902:35;;28849:94;59014:55;59095:16;;59089:23;59132:3;59151:19;;;59144:32;;;;59218:16;;;59212:23;59192:18;;59185:51;;;;-1:-1:-1;59253:6:32;56627:2638;-1:-1:-1;56627:2638:32:o;61300:180::-;-1:-1:-1;;;;;61405:10:32;;;61417;;;61401:27;;61440:11;;;61437:37;;;61454:18;;:::i;61819:277::-;62014:2;62003:9;61996:21;61977:4;62034:56;62086:2;62075:9;62071:18;62063:6;62034:56;:::i;62101:1063::-;62471:4;62500:3;62530:2;62519:9;62512:21;62556:45;62597:2;62586:9;62582:18;62574:6;62556:45;:::i;:::-;62542:59;;62637:6;62632:2;62621:9;62617:18;62610:34;62692:9;62684:6;62680:22;62675:2;62664:9;62660:18;62653:50;62726:33;62752:6;62744;62726:33;:::i;:::-;62712:47;;62795:6;62790:2;62779:9;62775:18;62768:34;62851:9;62843:6;62839:22;62833:3;62822:9;62818:19;62811:51;62885:33;62911:6;62903;62885:33;:::i;:::-;-1:-1:-1;;;;;62955:32:32;;62975:3;62934:19;;62927:61;63025:22;;;63019:3;63004:19;;62997:51;62871:47;-1:-1:-1;63065:33:32;62871:47;63083:6;63065:33;:::i;:::-;63057:41;;;63149:6;63142:14;63135:22;63129:3;63118:9;63114:19;63107:51;62101:1063;;;;;;;;;;;:::o", + "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\npragma experimental ABIEncoderV2;\n\nimport \"./Bridge.sol\";\nimport \"./QuotesV2.sol\";\nimport \"./SignatureValidator.sol\";\nimport \"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\";\nimport \"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\";\nimport \"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\";\n\n/**\n @title Contract that assists with the Flyover protocol\n */\n\ncontract LiquidityBridgeContractV2 is Initializable, OwnableUpgradeable, ReentrancyGuardUpgradeable {\n uint16 constant public MAX_CALL_GAS_COST = 35000;\n uint16 constant public MAX_REFUND_GAS_LIMIT = 2300;\n\n uint8 constant public UNPROCESSED_QUOTE_CODE = 0;\n uint8 constant public CALL_DONE_CODE = 1;\n uint8 constant public PROCESSED_QUOTE_CODE = 2;\n\n int16 constant public BRIDGE_REFUNDED_USER_ERROR_CODE = - 100;\n int16 constant public BRIDGE_REFUNDED_LP_ERROR_CODE = - 200;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE = - 300;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE = - 301;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE = - 302;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR = - 303;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR = - 304;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR =\n - 305;\n int16 constant public BRIDGE_GENERIC_ERROR = - 900;\n uint constant public PAY_TO_ADDRESS_OUTPUT = 0;\n uint constant public QUOTE_HASH_OUTPUT = 1;\n\n struct Registry {\n uint32 timestamp;\n bool success;\n }\n\n struct PegoutRecord {\n uint256 depositTimestamp;\n bool completed;\n }\n\n struct LiquidityProvider {\n uint id;\n address provider;\n string name;\n string apiBaseUrl;\n bool status;\n string providerType;\n }\n\n event Register(uint id, address indexed from, uint256 amount);\n event CollateralIncrease(address from, uint256 amount);\n event PegoutCollateralIncrease(address from, uint256 amount);\n event Withdrawal(address from, uint256 amount);\n event WithdrawCollateral(address from, uint256 amount);\n event Resigned(address from);\n event CallForUser(\n address indexed from,\n address indexed dest,\n uint gasLimit,\n uint value,\n bytes data,\n bool success,\n bytes32 quoteHash\n );\n event PegInRegistered(bytes32 indexed quoteHash, int256 transferredAmount);\n event Penalized(address liquidityProvider, uint penalty, bytes32 quoteHash);\n event BridgeCapExceeded(bytes32 quoteHash, int256 errorCode);\n event BalanceIncrease(address dest, uint amount);\n event BalanceDecrease(address dest, uint amount);\n event Refund(address dest, uint amount, bool success, bytes32 quoteHash);\n event PegOutRefunded(bytes32 indexed quoteHash);\n event PegOutDeposit(\n bytes32 indexed quoteHash,\n address indexed sender,\n uint256 amount,\n uint256 timestamp\n );\n event PegOutUserRefunded(\n bytes32 indexed quoteHash,\n uint256 value,\n address userAddress\n );\n event DaoFeeSent(bytes32 indexed quoteHash, uint256 amount);\n event ProviderUpdate(address indexed providerAddress, string name, string url);\n\n Bridge public bridge;\n mapping(address => uint256) private balances;\n mapping(address => uint256) private collateral;\n mapping(address => uint256) private pegoutCollateral;\n mapping(uint => LiquidityProvider) private liquidityProviders;\n mapping(bytes32 => Registry) private callRegistry;\n mapping(address => uint256) private resignationBlockNum;\n\n uint256 private minCollateral;\n uint256 private minPegIn;\n\n uint32 private rewardP;\n uint32 private resignDelayInBlocks;\n uint private dust;\n uint public providerId;\n\n uint private btcBlockTime;\n bool private mainnet;\n\n mapping(bytes32 => uint8) private processedQuotes;\n mapping(bytes32 => QuotesV2.PegOutQuote) private registeredPegoutQuotes;\n mapping(bytes32 => PegoutRecord) private pegoutRegistry;\n\n uint256 public productFeePercentage;\n address public daoFeeCollectorAddress;\n\n modifier onlyRegistered() {\n require(isRegistered(msg.sender), \"LBC001\");\n _;\n }\n\n modifier onlyRegisteredForPegout() {\n require(isRegisteredForPegout(msg.sender), \"LBC001\");\n _;\n }\n\n modifier onlyOwnerAndProvider(uint _providerId) {\n require(\n msg.sender == owner() ||\n msg.sender == liquidityProviders[_providerId].provider,\n \"LBC005\"\n );\n _;\n }\n\n function setProviderStatus(\n uint _providerId,\n bool status\n ) external onlyOwnerAndProvider(_providerId) {\n liquidityProviders[_providerId].status = status;\n }\n\n receive() external payable {\n require(msg.sender == address(bridge), \"LBC007\");\n }\n\n function version() external pure returns (string memory) {\n return \"1.3.0\";\n }\n\n function getProviderIds() external view returns (uint) {\n return providerId;\n }\n\n function getBridgeAddress() external view returns (address) {\n return address(bridge);\n }\n\n function getMinCollateral() public view returns (uint) {\n return minCollateral;\n }\n\n function getMinPegIn() external view returns (uint) {\n return minPegIn;\n }\n\n function getRewardPercentage() external view returns (uint) {\n return rewardP;\n }\n\n function getResignDelayBlocks() external view returns (uint) {\n return resignDelayInBlocks;\n }\n\n function getDustThreshold() external view returns (uint) {\n return dust;\n }\n\n function isPegOutQuoteCompleted(bytes32 quoteHash) external view returns (bool) {\n return pegoutRegistry[quoteHash].completed;\n }\n\n /**\n @dev Checks whether a liquidity provider can deliver a pegin service\n @return Whether the liquidity provider is registered and has enough locked collateral\n */\n function isOperational(address addr) external view returns (bool) {\n return isRegistered(addr) && collateral[addr] >= minCollateral;\n }\n\n /**\n @dev Checks whether a liquidity provider can deliver a pegout service\n @return Whether the liquidity provider is registered and has enough locked collateral\n */\n function isOperationalForPegout(address addr) external view returns (bool) {\n return\n isRegisteredForPegout(addr) &&\n pegoutCollateral[addr] >= minCollateral;\n }\n\n /**\n @dev Registers msg.sender as a liquidity provider with msg.value as collateral\n */\n function register(\n string memory _name,\n string memory _apiBaseUrl,\n bool _status,\n string memory _providerType\n ) external payable returns (uint) {\n require(tx.origin == msg.sender, \"LBC003\");\n //require(collateral[msg.sender] == 0, \"Already registered\");\n require(bytes(_name).length > 0, \"LBC010\");\n require(\n bytes(_apiBaseUrl).length > 0,\n \"LBC017\"\n );\n\n // Check if _providerType is one of the valid strings\n require(\n keccak256(abi.encodePacked(_providerType)) ==\n keccak256(abi.encodePacked(\"pegin\")) ||\n keccak256(abi.encodePacked(_providerType)) ==\n keccak256(abi.encodePacked(\"pegout\")) ||\n keccak256(abi.encodePacked(_providerType)) ==\n keccak256(abi.encodePacked(\"both\")),\n \"LBC018\"\n );\n\n require(collateral[msg.sender] == 0 && pegoutCollateral[msg.sender] == 0, \"LBC070\");\n require(\n resignationBlockNum[msg.sender] == 0,\n \"LBC009\"\n );\n\n if (keccak256(abi.encodePacked(_providerType)) == keccak256(abi.encodePacked(\"pegin\"))) {\n require(msg.value >= minCollateral, \"LBC008\");\n collateral[msg.sender] = msg.value;\n } else if (keccak256(abi.encodePacked(_providerType)) == keccak256(abi.encodePacked(\"pegout\"))) {\n require(msg.value >= minCollateral, \"LBC008\");\n pegoutCollateral[msg.sender] = msg.value;\n } else {\n require(msg.value >= minCollateral * 2, \"LBC008\");\n uint halfMsgValue = msg.value / 2;\n collateral[msg.sender] = msg.value % 2 == 0 ? halfMsgValue : halfMsgValue + 1;\n pegoutCollateral[msg.sender] = halfMsgValue;\n }\n\n providerId++;\n liquidityProviders[providerId] = LiquidityProvider({\n id: providerId,\n provider: msg.sender,\n name: _name,\n apiBaseUrl: _apiBaseUrl,\n status: _status,\n providerType: _providerType\n });\n emit Register(providerId, msg.sender, msg.value);\n return (providerId);\n }\n\n function getProviders() external view returns (LiquidityProvider[] memory) {\n uint count = 0;\n LiquidityProvider storage lp;\n for (uint i = 1; i <= providerId; i++) {\n if (shouldBeListed(liquidityProviders[i])) {\n count++;\n }\n }\n LiquidityProvider[] memory providersToReturn = new LiquidityProvider[](count);\n count = 0;\n for (uint i = 1; i <= providerId; i++) {\n lp = liquidityProviders[i];\n if (shouldBeListed(lp)) {\n providersToReturn[count] = lp;\n count++;\n }\n }\n return providersToReturn;\n }\n\n function getProvider(address providerAddress) public view returns (LiquidityProvider memory) {\n for (uint i = 1; i <= providerId; i++) {\n if (liquidityProviders[i].provider == providerAddress) {\n return liquidityProviders[i];\n }\n }\n revert(\"LBC001\");\n }\n\n function shouldBeListed(LiquidityProvider storage lp) private view returns(bool){\n return (isRegistered(lp.provider) || isRegisteredForPegout(lp.provider)) && lp.status;\n }\n\n /**\n @dev Increases the amount of collateral of the sender\n */\n function addCollateral() external payable onlyRegistered {\n collateral[msg.sender] += msg.value;\n emit CollateralIncrease(msg.sender, msg.value);\n }\n\n function addPegoutCollateral() external payable onlyRegisteredForPegout {\n pegoutCollateral[msg.sender] += msg.value;\n emit PegoutCollateralIncrease(msg.sender, msg.value);\n }\n\n /**\n @dev Increases the balance of the sender\n */\n function deposit() external payable onlyRegistered {\n increaseBalance(msg.sender, msg.value);\n }\n\n /**\n @dev Used to withdraw funds\n @param amount The amount to withdraw\n */\n function withdraw(uint256 amount) external {\n require(balances[msg.sender] >= amount, \"LBC019\");\n balances[msg.sender] -= amount;\n (bool success,) = msg.sender.call{value: amount}(\"\");\n require(success, \"LBC020\");\n emit Withdrawal(msg.sender, amount);\n }\n\n /**\n @dev Used to withdraw the locked collateral\n */\n function withdrawCollateral() external nonReentrant {\n require(resignationBlockNum[msg.sender] > 0, \"LBC021\");\n require(\n block.number - resignationBlockNum[msg.sender] >=\n resignDelayInBlocks,\n \"LBC022\"\n );\n uint amount = collateral[msg.sender] + pegoutCollateral[msg.sender];\n pegoutCollateral[msg.sender] = 0;\n collateral[msg.sender] = 0;\n resignationBlockNum[msg.sender] = 0;\n (bool success,) = msg.sender.call{value: amount}(\"\");\n require(success, \"LBC020\");\n emit WithdrawCollateral(msg.sender, amount);\n }\n\n /**\n @dev Used to resign as a liquidity provider\n */\n function resign() external onlyRegistered {\n require(resignationBlockNum[msg.sender] == 0, \"LBC023\");\n resignationBlockNum[msg.sender] = block.number;\n emit Resigned(msg.sender);\n }\n\n /**\n @dev Returns the amount of collateral of a liquidity provider\n @param addr The address of the liquidity provider\n @return The amount of locked collateral\n */\n function getCollateral(address addr) external view returns (uint256) {\n return collateral[addr];\n }\n\n function getPegoutCollateral(address addr) external view returns (uint256) {\n return pegoutCollateral[addr];\n }\n\n /**\n @dev Returns the amount of funds of a liquidity provider\n @param addr The address of the liquidity provider\n @return The balance of the liquidity provider\n */\n function getBalance(address addr) external view returns (uint256) {\n return balances[addr];\n }\n\n /**\n @dev Performs a call on behalf of a user\n @param quote The quote that identifies the service\n @return Boolean indicating whether the call was successful\n */\n function callForUser(\n QuotesV2.PeginQuote memory quote\n ) external payable onlyRegistered nonReentrant returns (bool) {\n require(\n msg.sender == quote.liquidityProviderRskAddress,\n \"LBC024\"\n );\n require(\n balances[quote.liquidityProviderRskAddress] + msg.value >=\n quote.value,\n \"LBC019\"\n );\n\n bytes32 quoteHash = validateAndHashQuote(quote);\n require(\n processedQuotes[quoteHash] == UNPROCESSED_QUOTE_CODE,\n \"LBC025\"\n );\n\n increaseBalance(quote.liquidityProviderRskAddress, msg.value);\n\n // This check ensures that the call cannot be performed with less gas than the agreed amount\n require(\n gasleft() >= quote.gasLimit + MAX_CALL_GAS_COST,\n \"LBC026\"\n );\n (bool success,) = quote.contractAddress.call{\n gas: quote.gasLimit,\n value: quote.value\n }(quote.data);\n\n require(block.timestamp <= type(uint32).max, \"LBC027\");\n callRegistry[quoteHash].timestamp = uint32(block.timestamp);\n\n if (success) {\n callRegistry[quoteHash].success = true;\n decreaseBalance(quote.liquidityProviderRskAddress, quote.value);\n }\n emit CallForUser(\n msg.sender,\n quote.contractAddress,\n quote.gasLimit,\n quote.value,\n quote.data,\n success,\n quoteHash\n );\n processedQuotes[quoteHash] = CALL_DONE_CODE;\n return success;\n }\n\n /**\n @dev Registers a peg-in transaction with the bridge and pays to the involved parties\n @param quote The quote of the service\n @param signature The signature of the quote\n @param btcRawTransaction The peg-in transaction\n @param partialMerkleTree The merkle tree path that proves transaction inclusion\n @param height The block that contains the peg-in transaction\n @return The total peg-in amount received from the bridge contract or an error code\n */\n function registerPegIn(\n QuotesV2.PeginQuote memory quote,\n bytes memory signature,\n bytes memory btcRawTransaction,\n bytes memory partialMerkleTree,\n uint256 height\n ) external nonReentrant returns (int256) {\n bytes32 quoteHash = validateAndHashQuote(quote);\n\n // TODO: allow multiple registerPegIns for the same quote with different transactions\n require(\n processedQuotes[quoteHash] <= CALL_DONE_CODE,\n \"LBC028\"\n );\n require(\n SignatureValidator.verify(\n quote.liquidityProviderRskAddress,\n quoteHash,\n signature\n ),\n \"LBC029\"\n );\n require(height < uint256(int256(type(int32).max)), \"LBC030\");\n\n int256 transferredAmountOrErrorCode = registerBridge(\n quote,\n btcRawTransaction,\n partialMerkleTree,\n height,\n quoteHash\n );\n\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR,\n \"LBC031\"\n );\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE,\n \"LBC032\"\n );\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR,\n \"LBC033\"\n );\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR,\n \"LBC034\"\n );\n require(\n transferredAmountOrErrorCode != BRIDGE_GENERIC_ERROR,\n \"LBC035\"\n );\n require(\n transferredAmountOrErrorCode > 0 ||\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_LP_ERROR_CODE ||\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_USER_ERROR_CODE,\n \"LBC036\"\n );\n\n if (\n shouldPenalizeLP(\n quote,\n transferredAmountOrErrorCode,\n callRegistry[quoteHash].timestamp,\n height\n )\n ) {\n uint penalizationAmount = min(\n quote.penaltyFee,\n collateral[quote.liquidityProviderRskAddress]\n ); // prevent underflow when collateral is less than penalty fee.\n collateral[quote.liquidityProviderRskAddress] -= penalizationAmount;\n emit Penalized(\n quote.liquidityProviderRskAddress,\n penalizationAmount,\n quoteHash\n );\n\n // pay reward to sender\n uint256 punisherReward = (penalizationAmount * rewardP) / 100;\n increaseBalance(msg.sender, punisherReward);\n }\n\n if (\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_LP_ERROR_CODE ||\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_USER_ERROR_CODE\n ) {\n // Bridge cap exceeded\n processedQuotes[quoteHash] = PROCESSED_QUOTE_CODE;\n delete callRegistry[quoteHash];\n emit BridgeCapExceeded(quoteHash, transferredAmountOrErrorCode);\n return transferredAmountOrErrorCode;\n }\n\n // the amount is safely assumed positive because it's already been\n // validated in lines 287/298 there's no (negative) error code being returned by the bridge.\n uint transferredAmount = uint(transferredAmountOrErrorCode);\n\n QuotesV2.checkAgreedAmount(quote, transferredAmount);\n\n if (callRegistry[quoteHash].timestamp > 0) {\n uint refundAmount;\n\n if (callRegistry[quoteHash].success) {\n refundAmount = min(\n transferredAmount,\n quote.value + quote.callFee + quote.gasFee\n );\n } else {\n refundAmount = min(transferredAmount, quote.callFee + quote.gasFee);\n }\n increaseBalance(quote.liquidityProviderRskAddress, refundAmount);\n\n uint remainingAmount = transferredAmount - refundAmount;\n payToFeeCollector(quote.productFeeAmount, quoteHash);\n\n if (remainingAmount > dust) {\n // refund rskRefundAddress, if remaining amount greater than dust\n (bool success,) = quote.rskRefundAddress.call{\n gas: MAX_REFUND_GAS_LIMIT,\n value: remainingAmount\n }(\"\");\n emit Refund(\n quote.rskRefundAddress,\n remainingAmount,\n success,\n quoteHash\n );\n\n if (!success) {\n // transfer funds to LP instead, if for some reason transfer to rskRefundAddress was unsuccessful\n increaseBalance(\n quote.liquidityProviderRskAddress,\n remainingAmount\n );\n }\n }\n } else {\n uint refundAmount = transferredAmount;\n\n if (quote.callOnRegister && refundAmount >= quote.value) {\n (bool callSuccess,) = quote.contractAddress.call{\n gas: quote.gasLimit,\n value: quote.value\n }(quote.data);\n emit CallForUser(\n msg.sender,\n quote.contractAddress,\n quote.gasLimit,\n quote.value,\n quote.data,\n callSuccess,\n quoteHash\n );\n\n if (callSuccess) {\n refundAmount -= quote.value;\n }\n }\n if (refundAmount > dust) {\n // refund rskRefundAddress, if refund amount greater than dust\n (bool success,) = quote.rskRefundAddress.call{\n gas: MAX_REFUND_GAS_LIMIT,\n value: refundAmount\n }(\"\");\n emit Refund(\n quote.rskRefundAddress,\n refundAmount,\n success,\n quoteHash\n );\n }\n }\n processedQuotes[quoteHash] = PROCESSED_QUOTE_CODE;\n delete callRegistry[quoteHash];\n emit PegInRegistered(quoteHash, transferredAmountOrErrorCode);\n return transferredAmountOrErrorCode;\n }\n\n function depositPegout( // TODO convert to calldata when contract size issues are fixed\n QuotesV2.PegOutQuote memory quote,\n bytes memory signature\n ) external payable {\n require(isRegisteredForPegout(quote.lpRskAddress), \"LBC037\");\n require(quote.value + quote.callFee + quote.productFeeAmount + quote.gasFee <= msg.value, \"LBC063\");\n require(block.timestamp <= quote.depositDateLimit, \"LBC065\");\n require(block.timestamp <= quote.expireDate, \"LBC046\");\n require(block.number <= quote.expireBlock, \"LBC047\");\n bytes32 quoteHash = hashPegoutQuote(quote);\n require(\n SignatureValidator.verify(quote.lpRskAddress, quoteHash, signature),\n \"LBC029\"\n );\n\n QuotesV2.PegOutQuote storage registeredQuote = registeredPegoutQuotes[quoteHash];\n\n require(pegoutRegistry[quoteHash].completed == false, \"LBC064\");\n require(registeredQuote.lbcAddress == address(0), \"LBC028\");\n registeredPegoutQuotes[quoteHash] = quote;\n pegoutRegistry[quoteHash].depositTimestamp = block.timestamp;\n emit PegOutDeposit(quoteHash, msg.sender, msg.value, block.timestamp);\n }\n\n function refundUserPegOut(\n bytes32 quoteHash\n ) external nonReentrant {\n QuotesV2.PegOutQuote storage quote = registeredPegoutQuotes[quoteHash];\n\n require(quote.lbcAddress != address(0), \"LBC042\");\n require(\n block.timestamp > quote.expireDate &&\n block.number > quote.expireBlock,\n \"LBC041\"\n );\n\n uint valueToTransfer = quote.value + quote.callFee + quote.productFeeAmount + quote.gasFee;\n address addressToTransfer = quote.rskRefundAddress;\n\n uint penalty = min(quote.penaltyFee, pegoutCollateral[quote.lpRskAddress]);\n pegoutCollateral[quote.lpRskAddress] -= penalty;\n\n emit Penalized(quote.lpRskAddress, penalty, quoteHash);\n emit PegOutUserRefunded(\n quoteHash,\n valueToTransfer,\n quote.rskRefundAddress\n );\n\n delete registeredPegoutQuotes[quoteHash];\n pegoutRegistry[quoteHash].completed = true;\n\n (bool sent,) = addressToTransfer.call{value: valueToTransfer}(\"\");\n require(sent, \"LBC044\");\n }\n\n function refundPegOut(\n bytes32 quoteHash,\n bytes memory btcTx,\n bytes32 btcBlockHeaderHash,\n uint256 partialMerkleTree,\n bytes32[] memory merkleBranchHashes\n ) external nonReentrant onlyRegisteredForPegout {\n require(pegoutRegistry[quoteHash].completed == false, \"LBC064\");\n QuotesV2.PegOutQuote storage quote = registeredPegoutQuotes[quoteHash];\n require(quote.lbcAddress != address(0), \"LBC042\");\n BtcUtils.TxRawOutput[] memory outputs = BtcUtils.getOutputs(btcTx);\n bytes memory scriptContent = BtcUtils.parseNullDataScript(outputs[QUOTE_HASH_OUTPUT].pkScript);\n require(scriptContent.length == 33 && scriptContent[0] == 0x20, \"LBC075\");\n // shift the array to remove the first byte (the size)\n for (uint8 i = 0 ; i < scriptContent.length - 1; i++) {\n scriptContent[i] = scriptContent[i + 1];\n }\n bytes32 txQuoteHash = abi.decode(scriptContent, (bytes32));\n require(quoteHash == txQuoteHash, \"LBC069\");\n require(msg.sender == quote.lpRskAddress, \"LBC048\");\n require(\n bridge.getBtcTransactionConfirmations(\n BtcUtils.hashBtcTx(btcTx),\n btcBlockHeaderHash,\n partialMerkleTree,\n merkleBranchHashes\n ) >= int(uint256(quote.transferConfirmations)),\n \"LBC049\"\n );\n require(quote.value <= outputs[PAY_TO_ADDRESS_OUTPUT].value * (10**10), \"LBC067\"); // satoshi to wei\n bytes memory btcTxDestination = BtcUtils.outputScriptToAddress(\n outputs[PAY_TO_ADDRESS_OUTPUT].pkScript,\n mainnet\n );\n require(keccak256(quote.deposityAddress) == keccak256(btcTxDestination), \"LBC068\");\n\n if (\n shouldPenalizePegOutLP(\n quote,\n txQuoteHash,\n btcBlockHeaderHash\n )\n ) {\n uint penalty = min(\n quote.penaltyFee,\n pegoutCollateral[quote.lpRskAddress]\n );\n pegoutCollateral[quote.lpRskAddress] -= penalty;\n emit Penalized(quote.lpRskAddress, penalty, txQuoteHash);\n }\n\n (bool sent,) = quote.lpRskAddress.call{\n value: quote.value + quote.callFee\n }(\"\");\n require(sent, \"LBC050\");\n\n payToFeeCollector(quote.productFeeAmount, quoteHash);\n\n delete registeredPegoutQuotes[txQuoteHash];\n pegoutRegistry[txQuoteHash].completed = true;\n emit PegOutRefunded(txQuoteHash);\n }\n\n function validatePeginDepositAddress(\n QuotesV2.PeginQuote memory quote,\n bytes memory depositAddress\n ) external view returns (bool) {\n bytes32 derivationValue = keccak256(\n bytes.concat(\n hashQuote(quote),\n quote.btcRefundAddress,\n bytes20(quote.lbcAddress),\n quote.liquidityProviderBtcAddress\n )\n );\n bytes memory flyoverRedeemScript = bytes.concat(\n hex\"20\",\n derivationValue,\n hex\"75\",\n bridge.getActivePowpegRedeemScript()\n );\n return BtcUtils.validateP2SHAdress(depositAddress, flyoverRedeemScript, mainnet);\n }\n\n /**\n @dev Calculates hash of a quote. Note: besides calculation this function also validates the quote.\n @param quote The quote of the service\n @return The hash of a quote\n */\n function hashQuote(QuotesV2.PeginQuote memory quote) public view returns (bytes32) {\n return validateAndHashQuote(quote);\n }\n\n function hashPegoutQuote(\n QuotesV2.PegOutQuote memory quote\n ) public view returns (bytes32) {\n return validateAndHashPegOutQuote(quote);\n }\n\n function validateAndHashQuote(\n QuotesV2.PeginQuote memory quote\n ) private view returns (bytes32) {\n require(address(this) == quote.lbcAddress, \"LBC051\");\n require(\n address(bridge) != quote.contractAddress,\n \"LBC052\"\n );\n require(\n quote.btcRefundAddress.length == 21 ||\n quote.btcRefundAddress.length == 33,\n \"LBC053\"\n );\n require(\n quote.liquidityProviderBtcAddress.length == 21,\n \"LBC054\"\n );\n require(\n quote.value + quote.callFee + quote.productFeeAmount + quote.gasFee >= minPegIn,\n \"LBC055\"\n );\n require(\n type(uint32).max >= uint64(quote.agreementTimestamp) + uint64(quote.timeForDeposit),\n \"LBC071\"\n );\n\n return keccak256(QuotesV2.encodeQuote(quote));\n }\n\n function validateAndHashPegOutQuote(\n QuotesV2.PegOutQuote memory quote\n ) private view returns (bytes32) {\n require(address(this) == quote.lbcAddress, \"LBC056\");\n\n return keccak256(QuotesV2.encodePegOutQuote(quote));\n }\n\n function min(uint a, uint b) private pure returns (uint) {\n return a < b ? a : b;\n }\n\n // IMPORTANT: These methods should remain private at all costs\n function increaseBalance(address dest, uint amount) private {\n balances[dest] += amount;\n emit BalanceIncrease(dest, amount);\n }\n\n function decreaseBalance(address dest, uint amount) private {\n balances[dest] -= amount;\n emit BalanceDecrease(dest, amount);\n }\n\n /**\n @dev Checks if a liquidity provider is registered\n @param addr The address of the liquidity provider\n @return Boolean indicating whether the liquidity provider is registered\n */\n function isRegistered(address addr) private view returns (bool) {\n return collateral[addr] > 0 && resignationBlockNum[addr] == 0;\n }\n\n function isRegisteredForPegout(address addr) private view returns (bool) {\n return pegoutCollateral[addr] > 0 && resignationBlockNum[addr] == 0;\n }\n\n /**\n @dev Registers a transaction with the bridge contract\n @param quote The quote of the service\n @param btcRawTransaction The peg-in transaction\n @param partialMerkleTree The merkle tree path that proves transaction inclusion\n @param height The block that contains the transaction\n @return The total peg-in amount received from the bridge contract or an error code\n */\n function registerBridge(\n QuotesV2.PeginQuote memory quote,\n bytes memory btcRawTransaction,\n bytes memory partialMerkleTree,\n uint256 height,\n bytes32 derivationHash\n ) private returns (int256) {\n return\n bridge.registerFastBridgeBtcTransaction(\n btcRawTransaction,\n height,\n partialMerkleTree,\n derivationHash,\n quote.btcRefundAddress,\n payable(this),\n quote.liquidityProviderBtcAddress,\n callRegistry[derivationHash].timestamp > 0 && callRegistry[derivationHash].success\n );\n }\n\n /**\n @dev Checks if a liquidity provider should be penalized\n @param quote The quote of the service\n @param amount The transferred amount or an error code\n @param callTimestamp The time that the liquidity provider called callForUser\n @param height The block height where the peg-in transaction is included\n @return Boolean indicating whether the penalty applies\n */\n function shouldPenalizeLP(\n QuotesV2.PeginQuote memory quote,\n int256 amount,\n uint256 callTimestamp,\n uint256 height\n ) private view returns (bool) {\n // do not penalize if deposit amount is insufficient\n if (amount > 0 && uint256(amount) < quote.value + quote.callFee + quote.productFeeAmount + quote.gasFee) {\n return false;\n }\n\n bytes memory firstConfirmationHeader = bridge\n .getBtcBlockchainBlockHeaderByHeight(height);\n require(firstConfirmationHeader.length > 0, \"Invalid block height\");\n\n uint256 firstConfirmationTimestamp = BtcUtils.getBtcBlockTimestamp(\n firstConfirmationHeader\n );\n\n // do not penalize if deposit was not made on time\n // prevent overflow when collateral is less than penalty fee.\n uint timeLimit = quote.agreementTimestamp + quote.timeForDeposit;\n if (firstConfirmationTimestamp > timeLimit) {\n return false;\n }\n\n // penalize if call was not made\n if (callTimestamp == 0) {\n return true;\n }\n\n bytes memory nConfirmationsHeader = bridge\n .getBtcBlockchainBlockHeaderByHeight(\n height + quote.depositConfirmations - 1\n );\n require(nConfirmationsHeader.length > 0, \"LBC058\");\n\n uint256 nConfirmationsTimestamp = BtcUtils.getBtcBlockTimestamp(\n nConfirmationsHeader\n );\n\n // penalize if the call was not made on time\n if (callTimestamp > nConfirmationsTimestamp + quote.callTime) {\n return true;\n }\n return false;\n }\n\n function shouldPenalizePegOutLP(\n QuotesV2.PegOutQuote memory quote,\n bytes32 quoteHash,\n bytes32 blockHash\n ) private view returns (bool) {\n bytes memory firstConfirmationHeader = bridge.getBtcBlockchainBlockHeaderByHash(blockHash);\n require(firstConfirmationHeader.length > 0, \"LBC059\");\n\n uint256 firstConfirmationTimestamp = BtcUtils.getBtcBlockTimestamp(firstConfirmationHeader);\n\n // penalize if the transfer was not made on time\n if (firstConfirmationTimestamp > pegoutRegistry[quoteHash].depositTimestamp +\n quote.transferTime + btcBlockTime) {\n return true;\n }\n\n // penalize if LP is refunding after expiration\n if (block.timestamp > quote.expireDate || block.number > quote.expireBlock) {\n return true;\n }\n\n return false;\n }\n\n function payToFeeCollector(uint amount, bytes32 quoteHash) private {\n if (amount > 0) {\n (bool daoSuccess,) = payable(daoFeeCollectorAddress).call{value: amount}(\"\");\n require(daoSuccess, \"LBC074\");\n emit DaoFeeSent(quoteHash, amount);\n }\n }\n\n function updateProvider(string memory _name, string memory _url) external {\n require(bytes(_name).length > 0 && bytes(_url).length > 0, \"LBC076\");\n LiquidityProvider storage lp;\n for (uint i = 1; i <= providerId; i++) {\n lp = liquidityProviders[i];\n if (msg.sender == lp.provider) {\n lp.name = _name;\n lp.apiBaseUrl = _url;\n emit ProviderUpdate(msg.sender, lp.name, lp.apiBaseUrl);\n return;\n }\n }\n revert(\"LBC001\");\n }\n}\n", + "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/LiquidityBridgeContractV2.sol", "ast": { "absolutePath": "project:/contracts/LiquidityBridgeContractV2.sol", "exportedSymbols": { "Bridge": [ - 3652 + 4173 ], "BtcUtils": [ - 3228 + 3743 ], "ContextUpgradeable": [ 767 @@ -47853,30 +47279,30 @@ 301 ], "LiquidityBridgeContractV2": [ - 10196 + 10792 ], "OpCodes": [ - 3249 + 3770 ], "OwnableUpgradeable": [ 132 ], "QuotesV2": [ - 10849 + 11445 ], "ReentrancyGuardUpgradeable": [ 386 ], "SignatureValidator": [ - 10898 + 11494 ] }, - "id": 10197, + "id": 10793, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 7406, + "id": 7927, "literals": [ "solidity", "^", @@ -47887,7 +47313,7 @@ "src": "32:24:24" }, { - "id": 7407, + "id": 7928, "literals": [ "experimental", "ABIEncoderV2" @@ -47898,11 +47324,11 @@ { "absolutePath": "project:/contracts/Bridge.sol", "file": "./Bridge.sol", - "id": 7408, + "id": 7929, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 10197, - "sourceUnit": 3653, + "scope": 10793, + "sourceUnit": 4174, "src": "92:22:24", "symbolAliases": [], "unitAlias": "" @@ -47910,11 +47336,11 @@ { "absolutePath": "project:/contracts/QuotesV2.sol", "file": "./QuotesV2.sol", - "id": 7409, + "id": 7930, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 10197, - "sourceUnit": 10850, + "scope": 10793, + "sourceUnit": 11446, "src": "115:24:24", "symbolAliases": [], "unitAlias": "" @@ -47922,11 +47348,11 @@ { "absolutePath": "project:/contracts/SignatureValidator.sol", "file": "./SignatureValidator.sol", - "id": 7410, + "id": 7931, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 10197, - "sourceUnit": 10899, + "scope": 10793, + "sourceUnit": 11495, "src": "140:34:24", "symbolAliases": [], "unitAlias": "" @@ -47934,11 +47360,11 @@ { "absolutePath": "@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol", "file": "@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol", - "id": 7411, + "id": 7932, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 10197, - "sourceUnit": 3229, + "scope": 10793, + "sourceUnit": 3744, "src": "175:74:24", "symbolAliases": [], "unitAlias": "" @@ -47946,10 +47372,10 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol", "file": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol", - "id": 7412, + "id": 7933, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 10197, + "scope": 10793, "sourceUnit": 133, "src": "250:75:24", "symbolAliases": [], @@ -47958,10 +47384,10 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol", "file": "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol", - "id": 7413, + "id": 7934, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 10197, + "scope": 10793, "sourceUnit": 387, "src": "326:85:24", "symbolAliases": [], @@ -47972,7 +47398,7 @@ "baseContracts": [ { "baseName": { - "id": 7415, + "id": 7936, "name": "Initializable", "nameLocations": [ "519:13:24" @@ -47981,13 +47407,13 @@ "referencedDeclaration": 301, "src": "519:13:24" }, - "id": 7416, + "id": 7937, "nodeType": "InheritanceSpecifier", "src": "519:13:24" }, { "baseName": { - "id": 7417, + "id": 7938, "name": "OwnableUpgradeable", "nameLocations": [ "534:18:24" @@ -47996,13 +47422,13 @@ "referencedDeclaration": 132, "src": "534:18:24" }, - "id": 7418, + "id": 7939, "nodeType": "InheritanceSpecifier", "src": "534:18:24" }, { "baseName": { - "id": 7419, + "id": 7940, "name": "ReentrancyGuardUpgradeable", "nameLocations": [ "554:26:24" @@ -48011,7 +47437,7 @@ "referencedDeclaration": 386, "src": "554:26:24" }, - "id": 7420, + "id": 7941, "nodeType": "InheritanceSpecifier", "src": "554:26:24" } @@ -48020,15 +47446,15 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 7414, + "id": 7935, "nodeType": "StructuredDocumentation", "src": "413:66:24", "text": "@title Contract that assists with the Flyover protocol" }, "fullyImplemented": true, - "id": 10196, + "id": 10792, "linearizedBaseContracts": [ - 10196, + 10792, 386, 132, 767, @@ -48041,12 +47467,12 @@ { "constant": true, "functionSelector": "9d79b59b", - "id": 7423, + "id": 7944, "mutability": "constant", "name": "MAX_CALL_GAS_COST", "nameLocation": "610:17:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "587:48:24", "stateVariable": true, "storageLocation": "default", @@ -48055,7 +47481,7 @@ "typeString": "uint16" }, "typeName": { - "id": 7421, + "id": 7942, "name": "uint16", "nodeType": "ElementaryTypeName", "src": "587:6:24", @@ -48066,7 +47492,7 @@ }, "value": { "hexValue": "3335303030", - "id": 7422, + "id": 7943, "isConstant": false, "isLValue": false, "isPure": true, @@ -48085,12 +47511,12 @@ { "constant": true, "functionSelector": "e1de16c6", - "id": 7426, + "id": 7947, "mutability": "constant", "name": "MAX_REFUND_GAS_LIMIT", "nameLocation": "664:20:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "641:50:24", "stateVariable": true, "storageLocation": "default", @@ -48099,7 +47525,7 @@ "typeString": "uint16" }, "typeName": { - "id": 7424, + "id": 7945, "name": "uint16", "nodeType": "ElementaryTypeName", "src": "641:6:24", @@ -48110,7 +47536,7 @@ }, "value": { "hexValue": "32333030", - "id": 7425, + "id": 7946, "isConstant": false, "isLValue": false, "isPure": true, @@ -48129,12 +47555,12 @@ { "constant": true, "functionSelector": "9cd6557f", - "id": 7429, + "id": 7950, "mutability": "constant", "name": "UNPROCESSED_QUOTE_CODE", "nameLocation": "720:22:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "698:48:24", "stateVariable": true, "storageLocation": "default", @@ -48143,7 +47569,7 @@ "typeString": "uint8" }, "typeName": { - "id": 7427, + "id": 7948, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "698:5:24", @@ -48154,7 +47580,7 @@ }, "value": { "hexValue": "30", - "id": 7428, + "id": 7949, "isConstant": false, "isLValue": false, "isPure": true, @@ -48173,12 +47599,12 @@ { "constant": true, "functionSelector": "04ade855", - "id": 7432, + "id": 7953, "mutability": "constant", "name": "CALL_DONE_CODE", "nameLocation": "774:14:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "752:40:24", "stateVariable": true, "storageLocation": "default", @@ -48187,7 +47613,7 @@ "typeString": "uint8" }, "typeName": { - "id": 7430, + "id": 7951, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "752:5:24", @@ -48198,7 +47624,7 @@ }, "value": { "hexValue": "31", - "id": 7431, + "id": 7952, "isConstant": false, "isLValue": false, "isPure": true, @@ -48217,12 +47643,12 @@ { "constant": true, "functionSelector": "0a7bf57a", - "id": 7435, + "id": 7956, "mutability": "constant", "name": "PROCESSED_QUOTE_CODE", "nameLocation": "820:20:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "798:46:24", "stateVariable": true, "storageLocation": "default", @@ -48231,7 +47657,7 @@ "typeString": "uint8" }, "typeName": { - "id": 7433, + "id": 7954, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "798:5:24", @@ -48242,7 +47668,7 @@ }, "value": { "hexValue": "32", - "id": 7434, + "id": 7955, "isConstant": false, "isLValue": false, "isPure": true, @@ -48261,12 +47687,12 @@ { "constant": true, "functionSelector": "e8fcce71", - "id": 7439, + "id": 7960, "mutability": "constant", "name": "BRIDGE_REFUNDED_USER_ERROR_CODE", "nameLocation": "873:31:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "851:61:24", "stateVariable": true, "storageLocation": "default", @@ -48275,7 +47701,7 @@ "typeString": "int16" }, "typeName": { - "id": 7436, + "id": 7957, "name": "int16", "nodeType": "ElementaryTypeName", "src": "851:5:24", @@ -48285,7 +47711,7 @@ } }, "value": { - "id": 7438, + "id": 7959, "isConstant": false, "isLValue": false, "isPure": true, @@ -48296,7 +47722,7 @@ "src": "907:5:24", "subExpression": { "hexValue": "313030", - "id": 7437, + "id": 7958, "isConstant": false, "isLValue": false, "isPure": true, @@ -48320,12 +47746,12 @@ { "constant": true, "functionSelector": "e30e6ea3", - "id": 7443, + "id": 7964, "mutability": "constant", "name": "BRIDGE_REFUNDED_LP_ERROR_CODE", "nameLocation": "940:29:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "918:59:24", "stateVariable": true, "storageLocation": "default", @@ -48334,7 +47760,7 @@ "typeString": "int16" }, "typeName": { - "id": 7440, + "id": 7961, "name": "int16", "nodeType": "ElementaryTypeName", "src": "918:5:24", @@ -48344,7 +47770,7 @@ } }, "value": { - "id": 7442, + "id": 7963, "isConstant": false, "isLValue": false, "isPure": true, @@ -48355,7 +47781,7 @@ "src": "972:5:24", "subExpression": { "hexValue": "323030", - "id": 7441, + "id": 7962, "isConstant": false, "isLValue": false, "isPure": true, @@ -48379,12 +47805,12 @@ { "constant": true, "functionSelector": "ae76ce86", - "id": 7447, + "id": 7968, "mutability": "constant", "name": "BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE", "nameLocation": "1005:47:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "983:77:24", "stateVariable": true, "storageLocation": "default", @@ -48393,7 +47819,7 @@ "typeString": "int16" }, "typeName": { - "id": 7444, + "id": 7965, "name": "int16", "nodeType": "ElementaryTypeName", "src": "983:5:24", @@ -48403,7 +47829,7 @@ } }, "value": { - "id": 7446, + "id": 7967, "isConstant": false, "isLValue": false, "isPure": true, @@ -48414,7 +47840,7 @@ "src": "1055:5:24", "subExpression": { "hexValue": "333030", - "id": 7445, + "id": 7966, "isConstant": false, "isLValue": false, "isPure": true, @@ -48438,12 +47864,12 @@ { "constant": true, "functionSelector": "8d597939", - "id": 7451, + "id": 7972, "mutability": "constant", "name": "BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE", "nameLocation": "1088:49:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "1066:79:24", "stateVariable": true, "storageLocation": "default", @@ -48452,7 +47878,7 @@ "typeString": "int16" }, "typeName": { - "id": 7448, + "id": 7969, "name": "int16", "nodeType": "ElementaryTypeName", "src": "1066:5:24", @@ -48462,7 +47888,7 @@ } }, "value": { - "id": 7450, + "id": 7971, "isConstant": false, "isLValue": false, "isPure": true, @@ -48473,7 +47899,7 @@ "src": "1140:5:24", "subExpression": { "hexValue": "333031", - "id": 7449, + "id": 7970, "isConstant": false, "isLValue": false, "isPure": true, @@ -48497,12 +47923,12 @@ { "constant": true, "functionSelector": "a93bb247", - "id": 7455, + "id": 7976, "mutability": "constant", "name": "BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE", "nameLocation": "1173:52:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "1151:82:24", "stateVariable": true, "storageLocation": "default", @@ -48511,7 +47937,7 @@ "typeString": "int16" }, "typeName": { - "id": 7452, + "id": 7973, "name": "int16", "nodeType": "ElementaryTypeName", "src": "1151:5:24", @@ -48521,7 +47947,7 @@ } }, "value": { - "id": 7454, + "id": 7975, "isConstant": false, "isLValue": false, "isPure": true, @@ -48532,7 +47958,7 @@ "src": "1228:5:24", "subExpression": { "hexValue": "333032", - "id": 7453, + "id": 7974, "isConstant": false, "isLValue": false, "isPure": true, @@ -48556,12 +47982,12 @@ { "constant": true, "functionSelector": "c525cdd8", - "id": 7459, + "id": 7980, "mutability": "constant", "name": "BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR", "nameLocation": "1261:41:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "1239:71:24", "stateVariable": true, "storageLocation": "default", @@ -48570,7 +47996,7 @@ "typeString": "int16" }, "typeName": { - "id": 7456, + "id": 7977, "name": "int16", "nodeType": "ElementaryTypeName", "src": "1239:5:24", @@ -48580,7 +48006,7 @@ } }, "value": { - "id": 7458, + "id": 7979, "isConstant": false, "isLValue": false, "isPure": true, @@ -48591,7 +48017,7 @@ "src": "1305:5:24", "subExpression": { "hexValue": "333033", - "id": 7457, + "id": 7978, "isConstant": false, "isLValue": false, "isPure": true, @@ -48615,12 +48041,12 @@ { "constant": true, "functionSelector": "cfb92f0a", - "id": 7463, + "id": 7984, "mutability": "constant", "name": "BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR", "nameLocation": "1338:40:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "1316:70:24", "stateVariable": true, "storageLocation": "default", @@ -48629,7 +48055,7 @@ "typeString": "int16" }, "typeName": { - "id": 7460, + "id": 7981, "name": "int16", "nodeType": "ElementaryTypeName", "src": "1316:5:24", @@ -48639,7 +48065,7 @@ } }, "value": { - "id": 7462, + "id": 7983, "isConstant": false, "isLValue": false, "isPure": true, @@ -48650,7 +48076,7 @@ "src": "1381:5:24", "subExpression": { "hexValue": "333034", - "id": 7461, + "id": 7982, "isConstant": false, "isLValue": false, "isPure": true, @@ -48674,12 +48100,12 @@ { "constant": true, "functionSelector": "418663a2", - "id": 7467, + "id": 7988, "mutability": "constant", "name": "BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR", "nameLocation": "1414:60:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "1392:94:24", "stateVariable": true, "storageLocation": "default", @@ -48688,7 +48114,7 @@ "typeString": "int16" }, "typeName": { - "id": 7464, + "id": 7985, "name": "int16", "nodeType": "ElementaryTypeName", "src": "1392:5:24", @@ -48698,7 +48124,7 @@ } }, "value": { - "id": 7466, + "id": 7987, "isConstant": false, "isLValue": false, "isPure": true, @@ -48709,7 +48135,7 @@ "src": "1481:5:24", "subExpression": { "hexValue": "333035", - "id": 7465, + "id": 7986, "isConstant": false, "isLValue": false, "isPure": true, @@ -48733,12 +48159,12 @@ { "constant": true, "functionSelector": "ae93b67b", - "id": 7471, + "id": 7992, "mutability": "constant", "name": "BRIDGE_GENERIC_ERROR", "nameLocation": "1514:20:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "1492:50:24", "stateVariable": true, "storageLocation": "default", @@ -48747,7 +48173,7 @@ "typeString": "int16" }, "typeName": { - "id": 7468, + "id": 7989, "name": "int16", "nodeType": "ElementaryTypeName", "src": "1492:5:24", @@ -48757,7 +48183,7 @@ } }, "value": { - "id": 7470, + "id": 7991, "isConstant": false, "isLValue": false, "isPure": true, @@ -48768,7 +48194,7 @@ "src": "1537:5:24", "subExpression": { "hexValue": "393030", - "id": 7469, + "id": 7990, "isConstant": false, "isLValue": false, "isPure": true, @@ -48792,12 +48218,12 @@ { "constant": true, "functionSelector": "be6de4eb", - "id": 7474, + "id": 7995, "mutability": "constant", "name": "PAY_TO_ADDRESS_OUTPUT", "nameLocation": "1569:21:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "1548:46:24", "stateVariable": true, "storageLocation": "default", @@ -48806,7 +48232,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7472, + "id": 7993, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1548:4:24", @@ -48817,7 +48243,7 @@ }, "value": { "hexValue": "30", - "id": 7473, + "id": 7994, "isConstant": false, "isLValue": false, "isPure": true, @@ -48836,12 +48262,12 @@ { "constant": true, "functionSelector": "a4a5ba50", - "id": 7477, + "id": 7998, "mutability": "constant", "name": "QUOTE_HASH_OUTPUT", "nameLocation": "1621:17:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "1600:42:24", "stateVariable": true, "storageLocation": "default", @@ -48850,7 +48276,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7475, + "id": 7996, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1600:4:24", @@ -48861,7 +48287,7 @@ }, "value": { "hexValue": "31", - "id": 7476, + "id": 7997, "isConstant": false, "isLValue": false, "isPure": true, @@ -48879,16 +48305,16 @@ }, { "canonicalName": "LiquidityBridgeContractV2.Registry", - "id": 7482, + "id": 8003, "members": [ { "constant": false, - "id": 7479, + "id": 8000, "mutability": "mutable", "name": "timestamp", "nameLocation": "1682:9:24", "nodeType": "VariableDeclaration", - "scope": 7482, + "scope": 8003, "src": "1675:16:24", "stateVariable": false, "storageLocation": "default", @@ -48897,7 +48323,7 @@ "typeString": "uint32" }, "typeName": { - "id": 7478, + "id": 7999, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "1675:6:24", @@ -48910,12 +48336,12 @@ }, { "constant": false, - "id": 7481, + "id": 8002, "mutability": "mutable", "name": "success", "nameLocation": "1706:7:24", "nodeType": "VariableDeclaration", - "scope": 7482, + "scope": 8003, "src": "1701:12:24", "stateVariable": false, "storageLocation": "default", @@ -48924,7 +48350,7 @@ "typeString": "bool" }, "typeName": { - "id": 7480, + "id": 8001, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1701:4:24", @@ -48939,22 +48365,22 @@ "name": "Registry", "nameLocation": "1656:8:24", "nodeType": "StructDefinition", - "scope": 10196, + "scope": 10792, "src": "1649:71:24", "visibility": "public" }, { "canonicalName": "LiquidityBridgeContractV2.PegoutRecord", - "id": 7487, + "id": 8008, "members": [ { "constant": false, - "id": 7484, + "id": 8005, "mutability": "mutable", "name": "depositTimestamp", "nameLocation": "1764:16:24", "nodeType": "VariableDeclaration", - "scope": 7487, + "scope": 8008, "src": "1756:24:24", "stateVariable": false, "storageLocation": "default", @@ -48963,7 +48389,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7483, + "id": 8004, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1756:7:24", @@ -48976,12 +48402,12 @@ }, { "constant": false, - "id": 7486, + "id": 8007, "mutability": "mutable", "name": "completed", "nameLocation": "1795:9:24", "nodeType": "VariableDeclaration", - "scope": 7487, + "scope": 8008, "src": "1790:14:24", "stateVariable": false, "storageLocation": "default", @@ -48990,7 +48416,7 @@ "typeString": "bool" }, "typeName": { - "id": 7485, + "id": 8006, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1790:4:24", @@ -49005,22 +48431,22 @@ "name": "PegoutRecord", "nameLocation": "1733:12:24", "nodeType": "StructDefinition", - "scope": 10196, + "scope": 10792, "src": "1726:85:24", "visibility": "public" }, { "canonicalName": "LiquidityBridgeContractV2.LiquidityProvider", - "id": 7500, + "id": 8021, "members": [ { "constant": false, - "id": 7489, + "id": 8010, "mutability": "mutable", "name": "id", "nameLocation": "1857:2:24", "nodeType": "VariableDeclaration", - "scope": 7500, + "scope": 8021, "src": "1852:7:24", "stateVariable": false, "storageLocation": "default", @@ -49029,7 +48455,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7488, + "id": 8009, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1852:4:24", @@ -49042,12 +48468,12 @@ }, { "constant": false, - "id": 7491, + "id": 8012, "mutability": "mutable", "name": "provider", "nameLocation": "1877:8:24", "nodeType": "VariableDeclaration", - "scope": 7500, + "scope": 8021, "src": "1869:16:24", "stateVariable": false, "storageLocation": "default", @@ -49056,7 +48482,7 @@ "typeString": "address" }, "typeName": { - "id": 7490, + "id": 8011, "name": "address", "nodeType": "ElementaryTypeName", "src": "1869:7:24", @@ -49070,12 +48496,12 @@ }, { "constant": false, - "id": 7493, + "id": 8014, "mutability": "mutable", "name": "name", "nameLocation": "1902:4:24", "nodeType": "VariableDeclaration", - "scope": 7500, + "scope": 8021, "src": "1895:11:24", "stateVariable": false, "storageLocation": "default", @@ -49084,7 +48510,7 @@ "typeString": "string" }, "typeName": { - "id": 7492, + "id": 8013, "name": "string", "nodeType": "ElementaryTypeName", "src": "1895:6:24", @@ -49097,12 +48523,12 @@ }, { "constant": false, - "id": 7495, + "id": 8016, "mutability": "mutable", "name": "apiBaseUrl", "nameLocation": "1923:10:24", "nodeType": "VariableDeclaration", - "scope": 7500, + "scope": 8021, "src": "1916:17:24", "stateVariable": false, "storageLocation": "default", @@ -49111,7 +48537,7 @@ "typeString": "string" }, "typeName": { - "id": 7494, + "id": 8015, "name": "string", "nodeType": "ElementaryTypeName", "src": "1916:6:24", @@ -49124,12 +48550,12 @@ }, { "constant": false, - "id": 7497, + "id": 8018, "mutability": "mutable", "name": "status", "nameLocation": "1948:6:24", "nodeType": "VariableDeclaration", - "scope": 7500, + "scope": 8021, "src": "1943:11:24", "stateVariable": false, "storageLocation": "default", @@ -49138,7 +48564,7 @@ "typeString": "bool" }, "typeName": { - "id": 7496, + "id": 8017, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1943:4:24", @@ -49151,12 +48577,12 @@ }, { "constant": false, - "id": 7499, + "id": 8020, "mutability": "mutable", "name": "providerType", "nameLocation": "1971:12:24", "nodeType": "VariableDeclaration", - "scope": 7500, + "scope": 8021, "src": "1964:19:24", "stateVariable": false, "storageLocation": "default", @@ -49165,7 +48591,7 @@ "typeString": "string" }, "typeName": { - "id": 7498, + "id": 8019, "name": "string", "nodeType": "ElementaryTypeName", "src": "1964:6:24", @@ -49180,30 +48606,30 @@ "name": "LiquidityProvider", "nameLocation": "1824:17:24", "nodeType": "StructDefinition", - "scope": 10196, + "scope": 10792, "src": "1817:173:24", "visibility": "public" }, { "anonymous": false, "eventSelector": "a9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e", - "id": 7508, + "id": 8029, "name": "Register", "nameLocation": "2002:8:24", "nodeType": "EventDefinition", "parameters": { - "id": 7507, + "id": 8028, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7502, + "id": 8023, "indexed": false, "mutability": "mutable", "name": "id", "nameLocation": "2016:2:24", "nodeType": "VariableDeclaration", - "scope": 7508, + "scope": 8029, "src": "2011:7:24", "stateVariable": false, "storageLocation": "default", @@ -49212,7 +48638,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7501, + "id": 8022, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2011:4:24", @@ -49225,13 +48651,13 @@ }, { "constant": false, - "id": 7504, + "id": 8025, "indexed": true, "mutability": "mutable", "name": "from", "nameLocation": "2036:4:24", "nodeType": "VariableDeclaration", - "scope": 7508, + "scope": 8029, "src": "2020:20:24", "stateVariable": false, "storageLocation": "default", @@ -49240,7 +48666,7 @@ "typeString": "address" }, "typeName": { - "id": 7503, + "id": 8024, "name": "address", "nodeType": "ElementaryTypeName", "src": "2020:7:24", @@ -49254,13 +48680,13 @@ }, { "constant": false, - "id": 7506, + "id": 8027, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2050:6:24", "nodeType": "VariableDeclaration", - "scope": 7508, + "scope": 8029, "src": "2042:14:24", "stateVariable": false, "storageLocation": "default", @@ -49269,7 +48695,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7505, + "id": 8026, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2042:7:24", @@ -49288,23 +48714,23 @@ { "anonymous": false, "eventSelector": "456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af84", - "id": 7514, + "id": 8035, "name": "CollateralIncrease", "nameLocation": "2069:18:24", "nodeType": "EventDefinition", "parameters": { - "id": 7513, + "id": 8034, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7510, + "id": 8031, "indexed": false, "mutability": "mutable", "name": "from", "nameLocation": "2096:4:24", "nodeType": "VariableDeclaration", - "scope": 7514, + "scope": 8035, "src": "2088:12:24", "stateVariable": false, "storageLocation": "default", @@ -49313,7 +48739,7 @@ "typeString": "address" }, "typeName": { - "id": 7509, + "id": 8030, "name": "address", "nodeType": "ElementaryTypeName", "src": "2088:7:24", @@ -49327,13 +48753,13 @@ }, { "constant": false, - "id": 7512, + "id": 8033, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2110:6:24", "nodeType": "VariableDeclaration", - "scope": 7514, + "scope": 8035, "src": "2102:14:24", "stateVariable": false, "storageLocation": "default", @@ -49342,7 +48768,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7511, + "id": 8032, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2102:7:24", @@ -49361,23 +48787,23 @@ { "anonymous": false, "eventSelector": "873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa9", - "id": 7520, + "id": 8041, "name": "PegoutCollateralIncrease", "nameLocation": "2129:24:24", "nodeType": "EventDefinition", "parameters": { - "id": 7519, + "id": 8040, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7516, + "id": 8037, "indexed": false, "mutability": "mutable", "name": "from", "nameLocation": "2162:4:24", "nodeType": "VariableDeclaration", - "scope": 7520, + "scope": 8041, "src": "2154:12:24", "stateVariable": false, "storageLocation": "default", @@ -49386,7 +48812,7 @@ "typeString": "address" }, "typeName": { - "id": 7515, + "id": 8036, "name": "address", "nodeType": "ElementaryTypeName", "src": "2154:7:24", @@ -49400,13 +48826,13 @@ }, { "constant": false, - "id": 7518, + "id": 8039, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2176:6:24", "nodeType": "VariableDeclaration", - "scope": 7520, + "scope": 8041, "src": "2168:14:24", "stateVariable": false, "storageLocation": "default", @@ -49415,7 +48841,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7517, + "id": 8038, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2168:7:24", @@ -49434,23 +48860,23 @@ { "anonymous": false, "eventSelector": "7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b65", - "id": 7526, + "id": 8047, "name": "Withdrawal", "nameLocation": "2195:10:24", "nodeType": "EventDefinition", "parameters": { - "id": 7525, + "id": 8046, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7522, + "id": 8043, "indexed": false, "mutability": "mutable", "name": "from", "nameLocation": "2214:4:24", "nodeType": "VariableDeclaration", - "scope": 7526, + "scope": 8047, "src": "2206:12:24", "stateVariable": false, "storageLocation": "default", @@ -49459,7 +48885,7 @@ "typeString": "address" }, "typeName": { - "id": 7521, + "id": 8042, "name": "address", "nodeType": "ElementaryTypeName", "src": "2206:7:24", @@ -49473,13 +48899,13 @@ }, { "constant": false, - "id": 7524, + "id": 8045, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2228:6:24", "nodeType": "VariableDeclaration", - "scope": 7526, + "scope": 8047, "src": "2220:14:24", "stateVariable": false, "storageLocation": "default", @@ -49488,7 +48914,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7523, + "id": 8044, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2220:7:24", @@ -49507,23 +48933,23 @@ { "anonymous": false, "eventSelector": "a8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d2", - "id": 7532, + "id": 8053, "name": "WithdrawCollateral", "nameLocation": "2247:18:24", "nodeType": "EventDefinition", "parameters": { - "id": 7531, + "id": 8052, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7528, + "id": 8049, "indexed": false, "mutability": "mutable", "name": "from", "nameLocation": "2274:4:24", "nodeType": "VariableDeclaration", - "scope": 7532, + "scope": 8053, "src": "2266:12:24", "stateVariable": false, "storageLocation": "default", @@ -49532,7 +48958,7 @@ "typeString": "address" }, "typeName": { - "id": 7527, + "id": 8048, "name": "address", "nodeType": "ElementaryTypeName", "src": "2266:7:24", @@ -49546,13 +48972,13 @@ }, { "constant": false, - "id": 7530, + "id": 8051, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2288:6:24", "nodeType": "VariableDeclaration", - "scope": 7532, + "scope": 8053, "src": "2280:14:24", "stateVariable": false, "storageLocation": "default", @@ -49561,7 +48987,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7529, + "id": 8050, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2280:7:24", @@ -49580,23 +49006,23 @@ { "anonymous": false, "eventSelector": "a6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d86", - "id": 7536, + "id": 8057, "name": "Resigned", "nameLocation": "2307:8:24", "nodeType": "EventDefinition", "parameters": { - "id": 7535, + "id": 8056, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7534, + "id": 8055, "indexed": false, "mutability": "mutable", "name": "from", "nameLocation": "2324:4:24", "nodeType": "VariableDeclaration", - "scope": 7536, + "scope": 8057, "src": "2316:12:24", "stateVariable": false, "storageLocation": "default", @@ -49605,7 +49031,7 @@ "typeString": "address" }, "typeName": { - "id": 7533, + "id": 8054, "name": "address", "nodeType": "ElementaryTypeName", "src": "2316:7:24", @@ -49625,23 +49051,23 @@ { "anonymous": false, "eventSelector": "bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80d", - "id": 7552, + "id": 8073, "name": "CallForUser", "nameLocation": "2341:11:24", "nodeType": "EventDefinition", "parameters": { - "id": 7551, + "id": 8072, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7538, + "id": 8059, "indexed": true, "mutability": "mutable", "name": "from", "nameLocation": "2378:4:24", "nodeType": "VariableDeclaration", - "scope": 7552, + "scope": 8073, "src": "2362:20:24", "stateVariable": false, "storageLocation": "default", @@ -49650,7 +49076,7 @@ "typeString": "address" }, "typeName": { - "id": 7537, + "id": 8058, "name": "address", "nodeType": "ElementaryTypeName", "src": "2362:7:24", @@ -49664,13 +49090,13 @@ }, { "constant": false, - "id": 7540, + "id": 8061, "indexed": true, "mutability": "mutable", "name": "dest", "nameLocation": "2408:4:24", "nodeType": "VariableDeclaration", - "scope": 7552, + "scope": 8073, "src": "2392:20:24", "stateVariable": false, "storageLocation": "default", @@ -49679,7 +49105,7 @@ "typeString": "address" }, "typeName": { - "id": 7539, + "id": 8060, "name": "address", "nodeType": "ElementaryTypeName", "src": "2392:7:24", @@ -49693,13 +49119,13 @@ }, { "constant": false, - "id": 7542, + "id": 8063, "indexed": false, "mutability": "mutable", "name": "gasLimit", "nameLocation": "2427:8:24", "nodeType": "VariableDeclaration", - "scope": 7552, + "scope": 8073, "src": "2422:13:24", "stateVariable": false, "storageLocation": "default", @@ -49708,7 +49134,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7541, + "id": 8062, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2422:4:24", @@ -49721,13 +49147,13 @@ }, { "constant": false, - "id": 7544, + "id": 8065, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "2450:5:24", "nodeType": "VariableDeclaration", - "scope": 7552, + "scope": 8073, "src": "2445:10:24", "stateVariable": false, "storageLocation": "default", @@ -49736,7 +49162,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7543, + "id": 8064, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2445:4:24", @@ -49749,13 +49175,13 @@ }, { "constant": false, - "id": 7546, + "id": 8067, "indexed": false, "mutability": "mutable", "name": "data", "nameLocation": "2471:4:24", "nodeType": "VariableDeclaration", - "scope": 7552, + "scope": 8073, "src": "2465:10:24", "stateVariable": false, "storageLocation": "default", @@ -49764,7 +49190,7 @@ "typeString": "bytes" }, "typeName": { - "id": 7545, + "id": 8066, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2465:5:24", @@ -49777,13 +49203,13 @@ }, { "constant": false, - "id": 7548, + "id": 8069, "indexed": false, "mutability": "mutable", "name": "success", "nameLocation": "2490:7:24", "nodeType": "VariableDeclaration", - "scope": 7552, + "scope": 8073, "src": "2485:12:24", "stateVariable": false, "storageLocation": "default", @@ -49792,7 +49218,7 @@ "typeString": "bool" }, "typeName": { - "id": 7547, + "id": 8068, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2485:4:24", @@ -49805,13 +49231,13 @@ }, { "constant": false, - "id": 7550, + "id": 8071, "indexed": false, "mutability": "mutable", "name": "quoteHash", "nameLocation": "2515:9:24", "nodeType": "VariableDeclaration", - "scope": 7552, + "scope": 8073, "src": "2507:17:24", "stateVariable": false, "storageLocation": "default", @@ -49820,7 +49246,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 7549, + "id": 8070, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2507:7:24", @@ -49839,23 +49265,23 @@ { "anonymous": false, "eventSelector": "0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2", - "id": 7558, + "id": 8079, "name": "PegInRegistered", "nameLocation": "2542:15:24", "nodeType": "EventDefinition", "parameters": { - "id": 7557, + "id": 8078, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7554, + "id": 8075, "indexed": true, "mutability": "mutable", "name": "quoteHash", "nameLocation": "2574:9:24", "nodeType": "VariableDeclaration", - "scope": 7558, + "scope": 8079, "src": "2558:25:24", "stateVariable": false, "storageLocation": "default", @@ -49864,7 +49290,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 7553, + "id": 8074, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2558:7:24", @@ -49877,13 +49303,13 @@ }, { "constant": false, - "id": 7556, + "id": 8077, "indexed": false, "mutability": "mutable", "name": "transferredAmount", "nameLocation": "2592:17:24", "nodeType": "VariableDeclaration", - "scope": 7558, + "scope": 8079, "src": "2585:24:24", "stateVariable": false, "storageLocation": "default", @@ -49892,7 +49318,7 @@ "typeString": "int256" }, "typeName": { - "id": 7555, + "id": 8076, "name": "int256", "nodeType": "ElementaryTypeName", "src": "2585:6:24", @@ -49911,23 +49337,23 @@ { "anonymous": false, "eventSelector": "9685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4", - "id": 7566, + "id": 8087, "name": "Penalized", "nameLocation": "2622:9:24", "nodeType": "EventDefinition", "parameters": { - "id": 7565, + "id": 8086, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7560, + "id": 8081, "indexed": false, "mutability": "mutable", "name": "liquidityProvider", "nameLocation": "2640:17:24", "nodeType": "VariableDeclaration", - "scope": 7566, + "scope": 8087, "src": "2632:25:24", "stateVariable": false, "storageLocation": "default", @@ -49936,7 +49362,7 @@ "typeString": "address" }, "typeName": { - "id": 7559, + "id": 8080, "name": "address", "nodeType": "ElementaryTypeName", "src": "2632:7:24", @@ -49950,13 +49376,13 @@ }, { "constant": false, - "id": 7562, + "id": 8083, "indexed": false, "mutability": "mutable", "name": "penalty", "nameLocation": "2664:7:24", "nodeType": "VariableDeclaration", - "scope": 7566, + "scope": 8087, "src": "2659:12:24", "stateVariable": false, "storageLocation": "default", @@ -49965,7 +49391,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7561, + "id": 8082, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2659:4:24", @@ -49978,13 +49404,13 @@ }, { "constant": false, - "id": 7564, + "id": 8085, "indexed": false, "mutability": "mutable", "name": "quoteHash", "nameLocation": "2681:9:24", "nodeType": "VariableDeclaration", - "scope": 7566, + "scope": 8087, "src": "2673:17:24", "stateVariable": false, "storageLocation": "default", @@ -49993,7 +49419,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 7563, + "id": 8084, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2673:7:24", @@ -50012,23 +49438,23 @@ { "anonymous": false, "eventSelector": "fb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe", - "id": 7572, + "id": 8093, "name": "BridgeCapExceeded", "nameLocation": "2703:17:24", "nodeType": "EventDefinition", "parameters": { - "id": 7571, + "id": 8092, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7568, + "id": 8089, "indexed": false, "mutability": "mutable", "name": "quoteHash", "nameLocation": "2729:9:24", "nodeType": "VariableDeclaration", - "scope": 7572, + "scope": 8093, "src": "2721:17:24", "stateVariable": false, "storageLocation": "default", @@ -50037,7 +49463,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 7567, + "id": 8088, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2721:7:24", @@ -50050,13 +49476,13 @@ }, { "constant": false, - "id": 7570, + "id": 8091, "indexed": false, "mutability": "mutable", "name": "errorCode", "nameLocation": "2747:9:24", "nodeType": "VariableDeclaration", - "scope": 7572, + "scope": 8093, "src": "2740:16:24", "stateVariable": false, "storageLocation": "default", @@ -50065,7 +49491,7 @@ "typeString": "int256" }, "typeName": { - "id": 7569, + "id": 8090, "name": "int256", "nodeType": "ElementaryTypeName", "src": "2740:6:24", @@ -50084,23 +49510,23 @@ { "anonymous": false, "eventSelector": "42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f53", - "id": 7578, + "id": 8099, "name": "BalanceIncrease", "nameLocation": "2769:15:24", "nodeType": "EventDefinition", "parameters": { - "id": 7577, + "id": 8098, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7574, + "id": 8095, "indexed": false, "mutability": "mutable", "name": "dest", "nameLocation": "2793:4:24", "nodeType": "VariableDeclaration", - "scope": 7578, + "scope": 8099, "src": "2785:12:24", "stateVariable": false, "storageLocation": "default", @@ -50109,7 +49535,7 @@ "typeString": "address" }, "typeName": { - "id": 7573, + "id": 8094, "name": "address", "nodeType": "ElementaryTypeName", "src": "2785:7:24", @@ -50123,13 +49549,13 @@ }, { "constant": false, - "id": 7576, + "id": 8097, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2804:6:24", "nodeType": "VariableDeclaration", - "scope": 7578, + "scope": 8099, "src": "2799:11:24", "stateVariable": false, "storageLocation": "default", @@ -50138,7 +49564,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7575, + "id": 8096, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2799:4:24", @@ -50157,23 +49583,23 @@ { "anonymous": false, "eventSelector": "8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc0064587", - "id": 7584, + "id": 8105, "name": "BalanceDecrease", "nameLocation": "2823:15:24", "nodeType": "EventDefinition", "parameters": { - "id": 7583, + "id": 8104, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7580, + "id": 8101, "indexed": false, "mutability": "mutable", "name": "dest", "nameLocation": "2847:4:24", "nodeType": "VariableDeclaration", - "scope": 7584, + "scope": 8105, "src": "2839:12:24", "stateVariable": false, "storageLocation": "default", @@ -50182,7 +49608,7 @@ "typeString": "address" }, "typeName": { - "id": 7579, + "id": 8100, "name": "address", "nodeType": "ElementaryTypeName", "src": "2839:7:24", @@ -50196,13 +49622,13 @@ }, { "constant": false, - "id": 7582, + "id": 8103, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2858:6:24", "nodeType": "VariableDeclaration", - "scope": 7584, + "scope": 8105, "src": "2853:11:24", "stateVariable": false, "storageLocation": "default", @@ -50211,7 +49637,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7581, + "id": 8102, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2853:4:24", @@ -50230,23 +49656,23 @@ { "anonymous": false, "eventSelector": "3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f6", - "id": 7594, + "id": 8115, "name": "Refund", "nameLocation": "2877:6:24", "nodeType": "EventDefinition", "parameters": { - "id": 7593, + "id": 8114, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7586, + "id": 8107, "indexed": false, "mutability": "mutable", "name": "dest", "nameLocation": "2892:4:24", "nodeType": "VariableDeclaration", - "scope": 7594, + "scope": 8115, "src": "2884:12:24", "stateVariable": false, "storageLocation": "default", @@ -50255,7 +49681,7 @@ "typeString": "address" }, "typeName": { - "id": 7585, + "id": 8106, "name": "address", "nodeType": "ElementaryTypeName", "src": "2884:7:24", @@ -50269,13 +49695,13 @@ }, { "constant": false, - "id": 7588, + "id": 8109, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "2903:6:24", "nodeType": "VariableDeclaration", - "scope": 7594, + "scope": 8115, "src": "2898:11:24", "stateVariable": false, "storageLocation": "default", @@ -50284,7 +49710,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7587, + "id": 8108, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2898:4:24", @@ -50297,13 +49723,13 @@ }, { "constant": false, - "id": 7590, + "id": 8111, "indexed": false, "mutability": "mutable", "name": "success", "nameLocation": "2916:7:24", "nodeType": "VariableDeclaration", - "scope": 7594, + "scope": 8115, "src": "2911:12:24", "stateVariable": false, "storageLocation": "default", @@ -50312,7 +49738,7 @@ "typeString": "bool" }, "typeName": { - "id": 7589, + "id": 8110, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2911:4:24", @@ -50325,13 +49751,13 @@ }, { "constant": false, - "id": 7592, + "id": 8113, "indexed": false, "mutability": "mutable", "name": "quoteHash", "nameLocation": "2933:9:24", "nodeType": "VariableDeclaration", - "scope": 7594, + "scope": 8115, "src": "2925:17:24", "stateVariable": false, "storageLocation": "default", @@ -50340,7 +49766,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 7591, + "id": 8112, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2925:7:24", @@ -50359,23 +49785,23 @@ { "anonymous": false, "eventSelector": "b781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb384", - "id": 7598, + "id": 8119, "name": "PegOutRefunded", "nameLocation": "2955:14:24", "nodeType": "EventDefinition", "parameters": { - "id": 7597, + "id": 8118, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7596, + "id": 8117, "indexed": true, "mutability": "mutable", "name": "quoteHash", "nameLocation": "2986:9:24", "nodeType": "VariableDeclaration", - "scope": 7598, + "scope": 8119, "src": "2970:25:24", "stateVariable": false, "storageLocation": "default", @@ -50384,7 +49810,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 7595, + "id": 8116, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2970:7:24", @@ -50403,23 +49829,23 @@ { "anonymous": false, "eventSelector": "b1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f", - "id": 7608, + "id": 8129, "name": "PegOutDeposit", "nameLocation": "3008:13:24", "nodeType": "EventDefinition", "parameters": { - "id": 7607, + "id": 8128, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7600, + "id": 8121, "indexed": true, "mutability": "mutable", "name": "quoteHash", "nameLocation": "3047:9:24", "nodeType": "VariableDeclaration", - "scope": 7608, + "scope": 8129, "src": "3031:25:24", "stateVariable": false, "storageLocation": "default", @@ -50428,7 +49854,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 7599, + "id": 8120, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "3031:7:24", @@ -50441,13 +49867,13 @@ }, { "constant": false, - "id": 7602, + "id": 8123, "indexed": true, "mutability": "mutable", "name": "sender", "nameLocation": "3082:6:24", "nodeType": "VariableDeclaration", - "scope": 7608, + "scope": 8129, "src": "3066:22:24", "stateVariable": false, "storageLocation": "default", @@ -50456,7 +49882,7 @@ "typeString": "address" }, "typeName": { - "id": 7601, + "id": 8122, "name": "address", "nodeType": "ElementaryTypeName", "src": "3066:7:24", @@ -50470,13 +49896,13 @@ }, { "constant": false, - "id": 7604, + "id": 8125, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "3106:6:24", "nodeType": "VariableDeclaration", - "scope": 7608, + "scope": 8129, "src": "3098:14:24", "stateVariable": false, "storageLocation": "default", @@ -50485,7 +49911,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7603, + "id": 8124, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3098:7:24", @@ -50498,13 +49924,13 @@ }, { "constant": false, - "id": 7606, + "id": 8127, "indexed": false, "mutability": "mutable", "name": "timestamp", "nameLocation": "3130:9:24", "nodeType": "VariableDeclaration", - "scope": 7608, + "scope": 8129, "src": "3122:17:24", "stateVariable": false, "storageLocation": "default", @@ -50513,7 +49939,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7605, + "id": 8126, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3122:7:24", @@ -50532,23 +49958,23 @@ { "anonymous": false, "eventSelector": "9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41", - "id": 7616, + "id": 8137, "name": "PegOutUserRefunded", "nameLocation": "3157:18:24", "nodeType": "EventDefinition", "parameters": { - "id": 7615, + "id": 8136, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7610, + "id": 8131, "indexed": true, "mutability": "mutable", "name": "quoteHash", "nameLocation": "3201:9:24", "nodeType": "VariableDeclaration", - "scope": 7616, + "scope": 8137, "src": "3185:25:24", "stateVariable": false, "storageLocation": "default", @@ -50557,7 +49983,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 7609, + "id": 8130, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "3185:7:24", @@ -50570,13 +49996,13 @@ }, { "constant": false, - "id": 7612, + "id": 8133, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "3228:5:24", "nodeType": "VariableDeclaration", - "scope": 7616, + "scope": 8137, "src": "3220:13:24", "stateVariable": false, "storageLocation": "default", @@ -50585,7 +50011,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7611, + "id": 8132, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3220:7:24", @@ -50598,13 +50024,13 @@ }, { "constant": false, - "id": 7614, + "id": 8135, "indexed": false, "mutability": "mutable", "name": "userAddress", "nameLocation": "3251:11:24", "nodeType": "VariableDeclaration", - "scope": 7616, + "scope": 8137, "src": "3243:19:24", "stateVariable": false, "storageLocation": "default", @@ -50613,7 +50039,7 @@ "typeString": "address" }, "typeName": { - "id": 7613, + "id": 8134, "name": "address", "nodeType": "ElementaryTypeName", "src": "3243:7:24", @@ -50633,23 +50059,23 @@ { "anonymous": false, "eventSelector": "58e13ac0d5c8d27d14009841e72ac8b1858e2709c2c99af2075d9bb5f340ecfc", - "id": 7622, + "id": 8143, "name": "DaoFeeSent", "nameLocation": "3280:10:24", "nodeType": "EventDefinition", "parameters": { - "id": 7621, + "id": 8142, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7618, + "id": 8139, "indexed": true, "mutability": "mutable", "name": "quoteHash", "nameLocation": "3307:9:24", "nodeType": "VariableDeclaration", - "scope": 7622, + "scope": 8143, "src": "3291:25:24", "stateVariable": false, "storageLocation": "default", @@ -50658,7 +50084,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 7617, + "id": 8138, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "3291:7:24", @@ -50671,13 +50097,13 @@ }, { "constant": false, - "id": 7620, + "id": 8141, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "3326:6:24", "nodeType": "VariableDeclaration", - "scope": 7622, + "scope": 8143, "src": "3318:14:24", "stateVariable": false, "storageLocation": "default", @@ -50686,7 +50112,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7619, + "id": 8140, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3318:7:24", @@ -50705,23 +50131,23 @@ { "anonymous": false, "eventSelector": "c15f90eb34a098bb02f2641dff62935246fb005d8f06e13d5cc6be0bddcce8e3", - "id": 7630, + "id": 8151, "name": "ProviderUpdate", "nameLocation": "3345:14:24", "nodeType": "EventDefinition", "parameters": { - "id": 7629, + "id": 8150, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7624, + "id": 8145, "indexed": true, "mutability": "mutable", "name": "providerAddress", "nameLocation": "3376:15:24", "nodeType": "VariableDeclaration", - "scope": 7630, + "scope": 8151, "src": "3360:31:24", "stateVariable": false, "storageLocation": "default", @@ -50730,7 +50156,7 @@ "typeString": "address" }, "typeName": { - "id": 7623, + "id": 8144, "name": "address", "nodeType": "ElementaryTypeName", "src": "3360:7:24", @@ -50744,13 +50170,13 @@ }, { "constant": false, - "id": 7626, + "id": 8147, "indexed": false, "mutability": "mutable", "name": "name", "nameLocation": "3400:4:24", "nodeType": "VariableDeclaration", - "scope": 7630, + "scope": 8151, "src": "3393:11:24", "stateVariable": false, "storageLocation": "default", @@ -50759,7 +50185,7 @@ "typeString": "string" }, "typeName": { - "id": 7625, + "id": 8146, "name": "string", "nodeType": "ElementaryTypeName", "src": "3393:6:24", @@ -50772,13 +50198,13 @@ }, { "constant": false, - "id": 7628, + "id": 8149, "indexed": false, "mutability": "mutable", "name": "url", "nameLocation": "3413:3:24", "nodeType": "VariableDeclaration", - "scope": 7630, + "scope": 8151, "src": "3406:10:24", "stateVariable": false, "storageLocation": "default", @@ -50787,7 +50213,7 @@ "typeString": "string" }, "typeName": { - "id": 7627, + "id": 8148, "name": "string", "nodeType": "ElementaryTypeName", "src": "3406:6:24", @@ -50806,36 +50232,36 @@ { "constant": false, "functionSelector": "e78cea92", - "id": 7633, + "id": 8154, "mutability": "mutable", "name": "bridge", "nameLocation": "3438:6:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "3424:20:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" }, "typeName": { - "id": 7632, + "id": 8153, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 7631, + "id": 8152, "name": "Bridge", "nameLocations": [ "3424:6:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 3652, + "referencedDeclaration": 4173, "src": "3424:6:24" }, - "referencedDeclaration": 3652, + "referencedDeclaration": 4173, "src": "3424:6:24", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, @@ -50843,12 +50269,12 @@ }, { "constant": false, - "id": 7637, + "id": 8158, "mutability": "mutable", "name": "balances", "nameLocation": "3486:8:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "3450:44:24", "stateVariable": true, "storageLocation": "default", @@ -50857,11 +50283,11 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 7636, + "id": 8157, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 7634, + "id": 8155, "name": "address", "nodeType": "ElementaryTypeName", "src": "3458:7:24", @@ -50879,7 +50305,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 7635, + "id": 8156, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3469:7:24", @@ -50893,12 +50319,12 @@ }, { "constant": false, - "id": 7641, + "id": 8162, "mutability": "mutable", "name": "collateral", "nameLocation": "3536:10:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "3500:46:24", "stateVariable": true, "storageLocation": "default", @@ -50907,11 +50333,11 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 7640, + "id": 8161, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 7638, + "id": 8159, "name": "address", "nodeType": "ElementaryTypeName", "src": "3508:7:24", @@ -50929,7 +50355,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 7639, + "id": 8160, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3519:7:24", @@ -50943,12 +50369,12 @@ }, { "constant": false, - "id": 7645, + "id": 8166, "mutability": "mutable", "name": "pegoutCollateral", "nameLocation": "3588:16:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "3552:52:24", "stateVariable": true, "storageLocation": "default", @@ -50957,11 +50383,11 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 7644, + "id": 8165, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 7642, + "id": 8163, "name": "address", "nodeType": "ElementaryTypeName", "src": "3560:7:24", @@ -50979,7 +50405,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 7643, + "id": 8164, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3571:7:24", @@ -50993,25 +50419,25 @@ }, { "constant": false, - "id": 7650, + "id": 8171, "mutability": "mutable", "name": "liquidityProviders", "nameLocation": "3653:18:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "3610:61:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$7500_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8021_storage_$", "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider)" }, "typeName": { - "id": 7649, + "id": 8170, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 7646, + "id": 8167, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3618:4:24", @@ -51023,28 +50449,28 @@ "nodeType": "Mapping", "src": "3610:34:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$7500_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8021_storage_$", "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider)" }, "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 7648, + "id": 8169, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 7647, + "id": 8168, "name": "LiquidityProvider", "nameLocations": [ "3626:17:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 7500, + "referencedDeclaration": 8021, "src": "3626:17:24" }, - "referencedDeclaration": 7500, + "referencedDeclaration": 8021, "src": "3626:17:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" } } @@ -51053,25 +50479,25 @@ }, { "constant": false, - "id": 7655, + "id": 8176, "mutability": "mutable", "name": "callRegistry", "nameLocation": "3714:12:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "3677:49:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$7482_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8003_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry)" }, "typeName": { - "id": 7654, + "id": 8175, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 7651, + "id": 8172, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "3685:7:24", @@ -51083,28 +50509,28 @@ "nodeType": "Mapping", "src": "3677:28:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$7482_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8003_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry)" }, "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 7653, + "id": 8174, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 7652, + "id": 8173, "name": "Registry", "nameLocations": [ "3696:8:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 7482, + "referencedDeclaration": 8003, "src": "3696:8:24" }, - "referencedDeclaration": 7482, + "referencedDeclaration": 8003, "src": "3696:8:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$7482_storage_ptr", + "typeIdentifier": "t_struct$_Registry_$8003_storage_ptr", "typeString": "struct LiquidityBridgeContractV2.Registry" } } @@ -51113,12 +50539,12 @@ }, { "constant": false, - "id": 7659, + "id": 8180, "mutability": "mutable", "name": "resignationBlockNum", "nameLocation": "3768:19:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "3732:55:24", "stateVariable": true, "storageLocation": "default", @@ -51127,11 +50553,11 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 7658, + "id": 8179, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 7656, + "id": 8177, "name": "address", "nodeType": "ElementaryTypeName", "src": "3740:7:24", @@ -51149,7 +50575,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 7657, + "id": 8178, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3751:7:24", @@ -51163,12 +50589,12 @@ }, { "constant": false, - "id": 7661, + "id": 8182, "mutability": "mutable", "name": "minCollateral", "nameLocation": "3810:13:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "3794:29:24", "stateVariable": true, "storageLocation": "default", @@ -51177,7 +50603,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7660, + "id": 8181, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3794:7:24", @@ -51190,12 +50616,12 @@ }, { "constant": false, - "id": 7663, + "id": 8184, "mutability": "mutable", "name": "minPegIn", "nameLocation": "3845:8:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "3829:24:24", "stateVariable": true, "storageLocation": "default", @@ -51204,7 +50630,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7662, + "id": 8183, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3829:7:24", @@ -51217,12 +50643,12 @@ }, { "constant": false, - "id": 7665, + "id": 8186, "mutability": "mutable", "name": "rewardP", "nameLocation": "3875:7:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "3860:22:24", "stateVariable": true, "storageLocation": "default", @@ -51231,7 +50657,7 @@ "typeString": "uint32" }, "typeName": { - "id": 7664, + "id": 8185, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "3860:6:24", @@ -51244,12 +50670,12 @@ }, { "constant": false, - "id": 7667, + "id": 8188, "mutability": "mutable", "name": "resignDelayInBlocks", "nameLocation": "3903:19:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "3888:34:24", "stateVariable": true, "storageLocation": "default", @@ -51258,7 +50684,7 @@ "typeString": "uint32" }, "typeName": { - "id": 7666, + "id": 8187, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "3888:6:24", @@ -51271,12 +50697,12 @@ }, { "constant": false, - "id": 7669, + "id": 8190, "mutability": "mutable", "name": "dust", "nameLocation": "3941:4:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "3928:17:24", "stateVariable": true, "storageLocation": "default", @@ -51285,7 +50711,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7668, + "id": 8189, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3928:4:24", @@ -51299,12 +50725,12 @@ { "constant": false, "functionSelector": "8490a8df", - "id": 7671, + "id": 8192, "mutability": "mutable", "name": "providerId", "nameLocation": "3963:10:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "3951:22:24", "stateVariable": true, "storageLocation": "default", @@ -51313,7 +50739,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7670, + "id": 8191, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3951:4:24", @@ -51326,12 +50752,12 @@ }, { "constant": false, - "id": 7673, + "id": 8194, "mutability": "mutable", "name": "btcBlockTime", "nameLocation": "3993:12:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "3980:25:24", "stateVariable": true, "storageLocation": "default", @@ -51340,7 +50766,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7672, + "id": 8193, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3980:4:24", @@ -51353,12 +50779,12 @@ }, { "constant": false, - "id": 7675, + "id": 8196, "mutability": "mutable", "name": "mainnet", "nameLocation": "4024:7:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "4011:20:24", "stateVariable": true, "storageLocation": "default", @@ -51367,7 +50793,7 @@ "typeString": "bool" }, "typeName": { - "id": 7674, + "id": 8195, "name": "bool", "nodeType": "ElementaryTypeName", "src": "4011:4:24", @@ -51380,12 +50806,12 @@ }, { "constant": false, - "id": 7679, + "id": 8200, "mutability": "mutable", "name": "processedQuotes", "nameLocation": "4072:15:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "4038:49:24", "stateVariable": true, "storageLocation": "default", @@ -51394,11 +50820,11 @@ "typeString": "mapping(bytes32 => uint8)" }, "typeName": { - "id": 7678, + "id": 8199, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 7676, + "id": 8197, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4046:7:24", @@ -51416,7 +50842,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 7677, + "id": 8198, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "4057:5:24", @@ -51430,25 +50856,25 @@ }, { "constant": false, - "id": 7684, + "id": 8205, "mutability": "mutable", "name": "registeredPegoutQuotes", "nameLocation": "4142:22:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "4093:71:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10638_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11234_storage_$", "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote)" }, "typeName": { - "id": 7683, + "id": 8204, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 7680, + "id": 8201, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4101:7:24", @@ -51460,29 +50886,29 @@ "nodeType": "Mapping", "src": "4093:40:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10638_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11234_storage_$", "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote)" }, "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 7682, + "id": 8203, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 7681, + "id": 8202, "name": "QuotesV2.PegOutQuote", "nameLocations": [ "4112:8:24", "4121:11:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10638, + "referencedDeclaration": 11234, "src": "4112:20:24" }, - "referencedDeclaration": 10638, + "referencedDeclaration": 11234, "src": "4112:20:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote" } } @@ -51491,25 +50917,25 @@ }, { "constant": false, - "id": 7689, + "id": 8210, "mutability": "mutable", "name": "pegoutRegistry", "nameLocation": "4211:14:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "4170:55:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$7487_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8008_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord)" }, "typeName": { - "id": 7688, + "id": 8209, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 7685, + "id": 8206, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4178:7:24", @@ -51521,28 +50947,28 @@ "nodeType": "Mapping", "src": "4170:32:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$7487_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8008_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord)" }, "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 7687, + "id": 8208, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 7686, + "id": 8207, "name": "PegoutRecord", "nameLocations": [ "4189:12:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 7487, + "referencedDeclaration": 8008, "src": "4189:12:24" }, - "referencedDeclaration": 7487, + "referencedDeclaration": 8008, "src": "4189:12:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$7487_storage_ptr", + "typeIdentifier": "t_struct$_PegoutRecord_$8008_storage_ptr", "typeString": "struct LiquidityBridgeContractV2.PegoutRecord" } } @@ -51552,12 +50978,12 @@ { "constant": false, "functionSelector": "63c67135", - "id": 7691, + "id": 8212, "mutability": "mutable", "name": "productFeePercentage", "nameLocation": "4247:20:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "4232:35:24", "stateVariable": true, "storageLocation": "default", @@ -51566,7 +50992,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7690, + "id": 8211, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4232:7:24", @@ -51580,12 +51006,12 @@ { "constant": false, "functionSelector": "710738b1", - "id": 7693, + "id": 8214, "mutability": "mutable", "name": "daoFeeCollectorAddress", "nameLocation": "4288:22:24", "nodeType": "VariableDeclaration", - "scope": 10196, + "scope": 10792, "src": "4273:37:24", "stateVariable": true, "storageLocation": "default", @@ -51594,7 +51020,7 @@ "typeString": "address" }, "typeName": { - "id": 7692, + "id": 8213, "name": "address", "nodeType": "ElementaryTypeName", "src": "4273:7:24", @@ -51608,7 +51034,7 @@ }, { "body": { - "id": 7704, + "id": 8225, "nodeType": "Block", "src": "4343:71:24", "statements": [ @@ -51619,7 +51045,7 @@ "arguments": [ { "expression": { - "id": 7697, + "id": 8218, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -51630,7 +51056,7 @@ "typeString": "msg" } }, - "id": 7698, + "id": 8219, "isConstant": false, "isLValue": false, "isPure": false, @@ -51652,18 +51078,18 @@ "typeString": "address" } ], - "id": 7696, + "id": 8217, "name": "isRegistered", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9823, + "referencedDeclaration": 10419, "src": "4361:12:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 7699, + "id": 8220, "isConstant": false, "isLValue": false, "isPure": false, @@ -51681,7 +51107,7 @@ }, { "hexValue": "4c4243303031", - "id": 7700, + "id": 8221, "isConstant": false, "isLValue": false, "isPure": true, @@ -51707,7 +51133,7 @@ "typeString": "literal_string \"LBC001\"" } ], - "id": 7695, + "id": 8216, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -51721,7 +51147,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 7701, + "id": 8222, "isConstant": false, "isLValue": false, "isPure": false, @@ -51737,23 +51163,23 @@ "typeString": "tuple()" } }, - "id": 7702, + "id": 8223, "nodeType": "ExpressionStatement", "src": "4353:43:24" }, { - "id": 7703, + "id": 8224, "nodeType": "PlaceholderStatement", "src": "4406:1:24" } ] }, - "id": 7705, + "id": 8226, "name": "onlyRegistered", "nameLocation": "4326:14:24", "nodeType": "ModifierDefinition", "parameters": { - "id": 7694, + "id": 8215, "nodeType": "ParameterList", "parameters": [], "src": "4340:2:24" @@ -51764,7 +51190,7 @@ }, { "body": { - "id": 7716, + "id": 8237, "nodeType": "Block", "src": "4455:80:24", "statements": [ @@ -51775,7 +51201,7 @@ "arguments": [ { "expression": { - "id": 7709, + "id": 8230, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -51786,7 +51212,7 @@ "typeString": "msg" } }, - "id": 7710, + "id": 8231, "isConstant": false, "isLValue": false, "isPure": false, @@ -51808,18 +51234,18 @@ "typeString": "address" } ], - "id": 7708, + "id": 8229, "name": "isRegisteredForPegout", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9843, + "referencedDeclaration": 10439, "src": "4473:21:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 7711, + "id": 8232, "isConstant": false, "isLValue": false, "isPure": false, @@ -51837,7 +51263,7 @@ }, { "hexValue": "4c4243303031", - "id": 7712, + "id": 8233, "isConstant": false, "isLValue": false, "isPure": true, @@ -51863,7 +51289,7 @@ "typeString": "literal_string \"LBC001\"" } ], - "id": 7707, + "id": 8228, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -51877,7 +51303,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 7713, + "id": 8234, "isConstant": false, "isLValue": false, "isPure": false, @@ -51893,23 +51319,23 @@ "typeString": "tuple()" } }, - "id": 7714, + "id": 8235, "nodeType": "ExpressionStatement", "src": "4465:52:24" }, { - "id": 7715, + "id": 8236, "nodeType": "PlaceholderStatement", "src": "4527:1:24" } ] }, - "id": 7717, + "id": 8238, "name": "onlyRegisteredForPegout", "nameLocation": "4429:23:24", "nodeType": "ModifierDefinition", "parameters": { - "id": 7706, + "id": 8227, "nodeType": "ParameterList", "parameters": [], "src": "4452:2:24" @@ -51920,7 +51346,7 @@ }, { "body": { - "id": 7739, + "id": 8260, "nodeType": "Block", "src": "4589:172:24", "statements": [ @@ -51932,7 +51358,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 7734, + "id": 8255, "isConstant": false, "isLValue": false, "isPure": false, @@ -51942,14 +51368,14 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 7726, + "id": 8247, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 7722, + "id": 8243, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -51960,7 +51386,7 @@ "typeString": "msg" } }, - "id": 7723, + "id": 8244, "isConstant": false, "isLValue": false, "isPure": false, @@ -51980,7 +51406,7 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 7724, + "id": 8245, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -51991,7 +51417,7 @@ "typeString": "function () view returns (address)" } }, - "id": 7725, + "id": 8246, "isConstant": false, "isLValue": false, "isPure": false, @@ -52020,14 +51446,14 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 7733, + "id": 8254, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 7727, + "id": 8248, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -52038,7 +51464,7 @@ "typeString": "msg" } }, - "id": 7728, + "id": 8249, "isConstant": false, "isLValue": false, "isPure": false, @@ -52057,24 +51483,24 @@ "rightExpression": { "expression": { "baseExpression": { - "id": 7729, + "id": 8250, "name": "liquidityProviders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7650, + "referencedDeclaration": 8171, "src": "4671:18:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$7500_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8021_storage_$", "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" } }, - "id": 7731, + "id": 8252, "indexExpression": { - "id": 7730, + "id": 8251, "name": "_providerId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7719, + "referencedDeclaration": 8240, "src": "4690:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -52088,11 +51514,11 @@ "nodeType": "IndexAccess", "src": "4671:31:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage", + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage", "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" } }, - "id": 7732, + "id": 8253, "isConstant": false, "isLValue": true, "isPure": false, @@ -52100,7 +51526,7 @@ "memberLocation": "4703:8:24", "memberName": "provider", "nodeType": "MemberAccess", - "referencedDeclaration": 7491, + "referencedDeclaration": 8012, "src": "4671:40:24", "typeDescriptions": { "typeIdentifier": "t_address", @@ -52121,7 +51547,7 @@ }, { "hexValue": "4c4243303035", - "id": 7735, + "id": 8256, "isConstant": false, "isLValue": false, "isPure": true, @@ -52147,7 +51573,7 @@ "typeString": "literal_string \"LBC005\"" } ], - "id": 7721, + "id": 8242, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -52161,7 +51587,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 7736, + "id": 8257, "isConstant": false, "isLValue": false, "isPure": false, @@ -52177,33 +51603,33 @@ "typeString": "tuple()" } }, - "id": 7737, + "id": 8258, "nodeType": "ExpressionStatement", "src": "4599:144:24" }, { - "id": 7738, + "id": 8259, "nodeType": "PlaceholderStatement", "src": "4753:1:24" } ] }, - "id": 7740, + "id": 8261, "name": "onlyOwnerAndProvider", "nameLocation": "4550:20:24", "nodeType": "ModifierDefinition", "parameters": { - "id": 7720, + "id": 8241, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7719, + "id": 8240, "mutability": "mutable", "name": "_providerId", "nameLocation": "4576:11:24", "nodeType": "VariableDeclaration", - "scope": 7740, + "scope": 8261, "src": "4571:16:24", "stateVariable": false, "storageLocation": "default", @@ -52212,7 +51638,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7718, + "id": 8239, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4571:4:24", @@ -52232,13 +51658,13 @@ }, { "body": { - "id": 7757, + "id": 8278, "nodeType": "Block", "src": "4890:64:24", "statements": [ { "expression": { - "id": 7755, + "id": 8276, "isConstant": false, "isLValue": false, "isPure": false, @@ -52246,24 +51672,24 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 7750, + "id": 8271, "name": "liquidityProviders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7650, + "referencedDeclaration": 8171, "src": "4900:18:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$7500_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8021_storage_$", "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" } }, - "id": 7752, + "id": 8273, "indexExpression": { - "id": 7751, + "id": 8272, "name": "_providerId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7742, + "referencedDeclaration": 8263, "src": "4919:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -52277,11 +51703,11 @@ "nodeType": "IndexAccess", "src": "4900:31:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage", + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage", "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" } }, - "id": 7753, + "id": 8274, "isConstant": false, "isLValue": true, "isPure": false, @@ -52289,7 +51715,7 @@ "memberLocation": "4932:6:24", "memberName": "status", "nodeType": "MemberAccess", - "referencedDeclaration": 7497, + "referencedDeclaration": 8018, "src": "4900:38:24", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -52299,11 +51725,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 7754, + "id": 8275, "name": "status", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7744, + "referencedDeclaration": 8265, "src": "4941:6:24", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -52316,25 +51742,25 @@ "typeString": "bool" } }, - "id": 7756, + "id": 8277, "nodeType": "ExpressionStatement", "src": "4900:47:24" } ] }, "functionSelector": "72cbf4e8", - "id": 7758, + "id": 8279, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 7747, + "id": 8268, "name": "_providerId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7742, + "referencedDeclaration": 8263, "src": "4877:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -52342,16 +51768,16 @@ } } ], - "id": 7748, + "id": 8269, "kind": "modifierInvocation", "modifierName": { - "id": 7746, + "id": 8267, "name": "onlyOwnerAndProvider", "nameLocations": [ "4856:20:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 7740, + "referencedDeclaration": 8261, "src": "4856:20:24" }, "nodeType": "ModifierInvocation", @@ -52362,17 +51788,17 @@ "nameLocation": "4776:17:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 7745, + "id": 8266, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7742, + "id": 8263, "mutability": "mutable", "name": "_providerId", "nameLocation": "4808:11:24", "nodeType": "VariableDeclaration", - "scope": 7758, + "scope": 8279, "src": "4803:16:24", "stateVariable": false, "storageLocation": "default", @@ -52381,7 +51807,7 @@ "typeString": "uint256" }, "typeName": { - "id": 7741, + "id": 8262, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4803:4:24", @@ -52394,12 +51820,12 @@ }, { "constant": false, - "id": 7744, + "id": 8265, "mutability": "mutable", "name": "status", "nameLocation": "4834:6:24", "nodeType": "VariableDeclaration", - "scope": 7758, + "scope": 8279, "src": "4829:11:24", "stateVariable": false, "storageLocation": "default", @@ -52408,7 +51834,7 @@ "typeString": "bool" }, "typeName": { - "id": 7743, + "id": 8264, "name": "bool", "nodeType": "ElementaryTypeName", "src": "4829:4:24", @@ -52423,12 +51849,12 @@ "src": "4793:53:24" }, "returnParameters": { - "id": 7749, + "id": 8270, "nodeType": "ParameterList", "parameters": [], "src": "4890:0:24" }, - "scope": 10196, + "scope": 10792, "src": "4767:187:24", "stateMutability": "nonpayable", "virtual": false, @@ -52436,7 +51862,7 @@ }, { "body": { - "id": 7772, + "id": 8293, "nodeType": "Block", "src": "4987:65:24", "statements": [ @@ -52448,14 +51874,14 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 7768, + "id": 8289, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 7762, + "id": 8283, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -52466,7 +51892,7 @@ "typeString": "msg" } }, - "id": 7763, + "id": 8284, "isConstant": false, "isLValue": false, "isPure": false, @@ -52485,14 +51911,14 @@ "rightExpression": { "arguments": [ { - "id": 7766, + "id": 8287, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7633, + "referencedDeclaration": 8154, "src": "5027:6:24", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } } @@ -52500,11 +51926,11 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } ], - "id": 7765, + "id": 8286, "isConstant": false, "isLValue": false, "isPure": true, @@ -52516,14 +51942,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 7764, + "id": 8285, "name": "address", "nodeType": "ElementaryTypeName", "src": "5019:7:24", "typeDescriptions": {} } }, - "id": 7767, + "id": 8288, "isConstant": false, "isLValue": false, "isPure": false, @@ -52547,7 +51973,7 @@ }, { "hexValue": "4c4243303037", - "id": 7769, + "id": 8290, "isConstant": false, "isLValue": false, "isPure": true, @@ -52573,7 +51999,7 @@ "typeString": "literal_string \"LBC007\"" } ], - "id": 7761, + "id": 8282, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -52587,7 +52013,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 7770, + "id": 8291, "isConstant": false, "isLValue": false, "isPure": false, @@ -52603,13 +52029,13 @@ "typeString": "tuple()" } }, - "id": 7771, + "id": 8292, "nodeType": "ExpressionStatement", "src": "4997:48:24" } ] }, - "id": 7773, + "id": 8294, "implemented": true, "kind": "receive", "modifiers": [], @@ -52617,18 +52043,18 @@ "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 7759, + "id": 8280, "nodeType": "ParameterList", "parameters": [], "src": "4967:2:24" }, "returnParameters": { - "id": 7760, + "id": 8281, "nodeType": "ParameterList", "parameters": [], "src": "4987:0:24" }, - "scope": 10196, + "scope": 10792, "src": "4960:92:24", "stateMutability": "payable", "virtual": false, @@ -52636,57 +52062,141 @@ }, { "body": { - "id": 7780, + "id": 8301, "nodeType": "Block", - "src": "5113:34:24", + "src": "5115:31:24", "statements": [ { "expression": { - "id": 7778, + "hexValue": "312e332e30", + "id": 8299, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5132:7:24", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6a08c3e203132c561752255a4d52ffae85bb9c5d33cb3291520dea1b84356389", + "typeString": "literal_string \"1.3.0\"" + }, + "value": "1.3.0" + }, + "functionReturnParameters": 8298, + "id": 8300, + "nodeType": "Return", + "src": "5125:14:24" + } + ] + }, + "functionSelector": "54fd4d50", + "id": 8302, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "version", + "nameLocation": "5067:7:24", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8295, + "nodeType": "ParameterList", + "parameters": [], + "src": "5074:2:24" + }, + "returnParameters": { + "id": 8298, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8297, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8302, + "src": "5100:13:24", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8296, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5100:6:24", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "5099:15:24" + }, + "scope": 10792, + "src": "5058:88:24", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 8309, + "nodeType": "Block", + "src": "5207:34:24", + "statements": [ + { + "expression": { + "id": 8307, "name": "providerId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7671, - "src": "5130:10:24", + "referencedDeclaration": 8192, + "src": "5224:10:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 7777, - "id": 7779, + "functionReturnParameters": 8306, + "id": 8308, "nodeType": "Return", - "src": "5123:17:24" + "src": "5217:17:24" } ] }, "functionSelector": "0a9cb4a7", - "id": 7781, + "id": 8310, "implemented": true, "kind": "function", "modifiers": [], "name": "getProviderIds", - "nameLocation": "5067:14:24", + "nameLocation": "5161:14:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 7774, + "id": 8303, "nodeType": "ParameterList", "parameters": [], - "src": "5081:2:24" + "src": "5175:2:24" }, "returnParameters": { - "id": 7777, + "id": 8306, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7776, + "id": 8305, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7781, - "src": "5107:4:24", + "scope": 8310, + "src": "5201:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -52694,10 +52204,10 @@ "typeString": "uint256" }, "typeName": { - "id": 7775, + "id": 8304, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5107:4:24", + "src": "5201:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -52706,32 +52216,32 @@ "visibility": "internal" } ], - "src": "5106:6:24" + "src": "5200:6:24" }, - "scope": 10196, - "src": "5058:89:24", + "scope": 10792, + "src": "5152:89:24", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 7791, + "id": 8320, "nodeType": "Block", - "src": "5213:39:24", + "src": "5307:39:24", "statements": [ { "expression": { "arguments": [ { - "id": 7788, + "id": 8317, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7633, - "src": "5238:6:24", + "referencedDeclaration": 8154, + "src": "5332:6:24", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } } @@ -52739,30 +52249,30 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } ], - "id": 7787, + "id": 8316, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5230:7:24", + "src": "5324:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 7786, + "id": 8315, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5230:7:24", + "src": "5324:7:24", "typeDescriptions": {} } }, - "id": 7789, + "id": 8318, "isConstant": false, "isLValue": false, "isPure": false, @@ -52771,47 +52281,47 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5230:15:24", + "src": "5324:15:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 7785, - "id": 7790, + "functionReturnParameters": 8314, + "id": 8319, "nodeType": "Return", - "src": "5223:22:24" + "src": "5317:22:24" } ] }, "functionSelector": "fb32c508", - "id": 7792, + "id": 8321, "implemented": true, "kind": "function", "modifiers": [], "name": "getBridgeAddress", - "nameLocation": "5162:16:24", + "nameLocation": "5256:16:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 7782, + "id": 8311, "nodeType": "ParameterList", "parameters": [], - "src": "5178:2:24" + "src": "5272:2:24" }, "returnParameters": { - "id": 7785, + "id": 8314, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7784, + "id": 8313, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7792, - "src": "5204:7:24", + "scope": 8321, + "src": "5298:7:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -52819,10 +52329,10 @@ "typeString": "address" }, "typeName": { - "id": 7783, + "id": 8312, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5204:7:24", + "src": "5298:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -52832,67 +52342,67 @@ "visibility": "internal" } ], - "src": "5203:9:24" + "src": "5297:9:24" }, - "scope": 10196, - "src": "5153:99:24", + "scope": 10792, + "src": "5247:99:24", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 7799, + "id": 8328, "nodeType": "Block", - "src": "5313:37:24", + "src": "5407:37:24", "statements": [ { "expression": { - "id": 7797, + "id": 8326, "name": "minCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7661, - "src": "5330:13:24", + "referencedDeclaration": 8182, + "src": "5424:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 7796, - "id": 7798, + "functionReturnParameters": 8325, + "id": 8327, "nodeType": "Return", - "src": "5323:20:24" + "src": "5417:20:24" } ] }, "functionSelector": "e830b690", - "id": 7800, + "id": 8329, "implemented": true, "kind": "function", "modifiers": [], "name": "getMinCollateral", - "nameLocation": "5267:16:24", + "nameLocation": "5361:16:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 7793, + "id": 8322, "nodeType": "ParameterList", "parameters": [], - "src": "5283:2:24" + "src": "5377:2:24" }, "returnParameters": { - "id": 7796, + "id": 8325, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7795, + "id": 8324, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7800, - "src": "5307:4:24", + "scope": 8329, + "src": "5401:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -52900,10 +52410,10 @@ "typeString": "uint256" }, "typeName": { - "id": 7794, + "id": 8323, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5307:4:24", + "src": "5401:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -52912,67 +52422,67 @@ "visibility": "internal" } ], - "src": "5306:6:24" + "src": "5400:6:24" }, - "scope": 10196, - "src": "5258:92:24", + "scope": 10792, + "src": "5352:92:24", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 7807, + "id": 8336, "nodeType": "Block", - "src": "5408:32:24", + "src": "5502:32:24", "statements": [ { "expression": { - "id": 7805, + "id": 8334, "name": "minPegIn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7663, - "src": "5425:8:24", + "referencedDeclaration": 8184, + "src": "5519:8:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 7804, - "id": 7806, + "functionReturnParameters": 8333, + "id": 8335, "nodeType": "Return", - "src": "5418:15:24" + "src": "5512:15:24" } ] }, "functionSelector": "fa88dcde", - "id": 7808, + "id": 8337, "implemented": true, "kind": "function", "modifiers": [], "name": "getMinPegIn", - "nameLocation": "5365:11:24", + "nameLocation": "5459:11:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 7801, + "id": 8330, "nodeType": "ParameterList", "parameters": [], - "src": "5376:2:24" + "src": "5470:2:24" }, "returnParameters": { - "id": 7804, + "id": 8333, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7803, + "id": 8332, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7808, - "src": "5402:4:24", + "scope": 8337, + "src": "5496:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -52980,10 +52490,10 @@ "typeString": "uint256" }, "typeName": { - "id": 7802, + "id": 8331, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5402:4:24", + "src": "5496:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -52992,67 +52502,67 @@ "visibility": "internal" } ], - "src": "5401:6:24" + "src": "5495:6:24" }, - "scope": 10196, - "src": "5356:84:24", + "scope": 10792, + "src": "5450:84:24", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 7815, + "id": 8344, "nodeType": "Block", - "src": "5506:31:24", + "src": "5600:31:24", "statements": [ { "expression": { - "id": 7813, + "id": 8342, "name": "rewardP", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7665, - "src": "5523:7:24", + "referencedDeclaration": 8186, + "src": "5617:7:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "functionReturnParameters": 7812, - "id": 7814, + "functionReturnParameters": 8341, + "id": 8343, "nodeType": "Return", - "src": "5516:14:24" + "src": "5610:14:24" } ] }, "functionSelector": "c7213163", - "id": 7816, + "id": 8345, "implemented": true, "kind": "function", "modifiers": [], "name": "getRewardPercentage", - "nameLocation": "5455:19:24", + "nameLocation": "5549:19:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 7809, + "id": 8338, "nodeType": "ParameterList", "parameters": [], - "src": "5474:2:24" + "src": "5568:2:24" }, "returnParameters": { - "id": 7812, + "id": 8341, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7811, + "id": 8340, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7816, - "src": "5500:4:24", + "scope": 8345, + "src": "5594:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -53060,10 +52570,10 @@ "typeString": "uint256" }, "typeName": { - "id": 7810, + "id": 8339, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5500:4:24", + "src": "5594:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -53072,67 +52582,67 @@ "visibility": "internal" } ], - "src": "5499:6:24" + "src": "5593:6:24" }, - "scope": 10196, - "src": "5446:91:24", + "scope": 10792, + "src": "5540:91:24", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 7823, + "id": 8352, "nodeType": "Block", - "src": "5604:43:24", + "src": "5698:43:24", "statements": [ { "expression": { - "id": 7821, + "id": 8350, "name": "resignDelayInBlocks", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7667, - "src": "5621:19:24", + "referencedDeclaration": 8188, + "src": "5715:19:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "functionReturnParameters": 7820, - "id": 7822, + "functionReturnParameters": 8349, + "id": 8351, "nodeType": "Return", - "src": "5614:26:24" + "src": "5708:26:24" } ] }, "functionSelector": "bd5798c3", - "id": 7824, + "id": 8353, "implemented": true, "kind": "function", "modifiers": [], "name": "getResignDelayBlocks", - "nameLocation": "5552:20:24", + "nameLocation": "5646:20:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 7817, + "id": 8346, "nodeType": "ParameterList", "parameters": [], - "src": "5572:2:24" + "src": "5666:2:24" }, "returnParameters": { - "id": 7820, + "id": 8349, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7819, + "id": 8348, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7824, - "src": "5598:4:24", + "scope": 8353, + "src": "5692:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -53140,10 +52650,10 @@ "typeString": "uint256" }, "typeName": { - "id": 7818, + "id": 8347, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5598:4:24", + "src": "5692:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -53152,67 +52662,67 @@ "visibility": "internal" } ], - "src": "5597:6:24" + "src": "5691:6:24" }, - "scope": 10196, - "src": "5543:104:24", + "scope": 10792, + "src": "5637:104:24", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 7831, + "id": 8360, "nodeType": "Block", - "src": "5710:28:24", + "src": "5804:28:24", "statements": [ { "expression": { - "id": 7829, + "id": 8358, "name": "dust", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7669, - "src": "5727:4:24", + "referencedDeclaration": 8190, + "src": "5821:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 7828, - "id": 7830, + "functionReturnParameters": 8357, + "id": 8359, "nodeType": "Return", - "src": "5720:11:24" + "src": "5814:11:24" } ] }, "functionSelector": "33f07ad3", - "id": 7832, + "id": 8361, "implemented": true, "kind": "function", "modifiers": [], "name": "getDustThreshold", - "nameLocation": "5662:16:24", + "nameLocation": "5756:16:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 7825, + "id": 8354, "nodeType": "ParameterList", "parameters": [], - "src": "5678:2:24" + "src": "5772:2:24" }, "returnParameters": { - "id": 7828, + "id": 8357, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7827, + "id": 8356, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7832, - "src": "5704:4:24", + "scope": 8361, + "src": "5798:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -53220,10 +52730,10 @@ "typeString": "uint256" }, "typeName": { - "id": 7826, + "id": 8355, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5704:4:24", + "src": "5798:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -53232,43 +52742,43 @@ "visibility": "internal" } ], - "src": "5703:6:24" + "src": "5797:6:24" }, - "scope": 10196, - "src": "5653:85:24", + "scope": 10792, + "src": "5747:85:24", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 7844, + "id": 8373, "nodeType": "Block", - "src": "5824:59:24", + "src": "5918:59:24", "statements": [ { "expression": { "expression": { "baseExpression": { - "id": 7839, + "id": 8368, "name": "pegoutRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7689, - "src": "5841:14:24", + "referencedDeclaration": 8210, + "src": "5935:14:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$7487_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8008_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord storage ref)" } }, - "id": 7841, + "id": 8370, "indexExpression": { - "id": 7840, + "id": 8369, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7834, - "src": "5856:9:24", + "referencedDeclaration": 8363, + "src": "5950:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -53279,55 +52789,55 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5841:25:24", + "src": "5935:25:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$7487_storage", + "typeIdentifier": "t_struct$_PegoutRecord_$8008_storage", "typeString": "struct LiquidityBridgeContractV2.PegoutRecord storage ref" } }, - "id": 7842, + "id": 8371, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5867:9:24", + "memberLocation": "5961:9:24", "memberName": "completed", "nodeType": "MemberAccess", - "referencedDeclaration": 7486, - "src": "5841:35:24", + "referencedDeclaration": 8007, + "src": "5935:35:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 7838, - "id": 7843, + "functionReturnParameters": 8367, + "id": 8372, "nodeType": "Return", - "src": "5834:42:24" + "src": "5928:42:24" } ] }, "functionSelector": "54015ee0", - "id": 7845, + "id": 8374, "implemented": true, "kind": "function", "modifiers": [], "name": "isPegOutQuoteCompleted", - "nameLocation": "5753:22:24", + "nameLocation": "5847:22:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 7835, + "id": 8364, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7834, + "id": 8363, "mutability": "mutable", "name": "quoteHash", - "nameLocation": "5784:9:24", + "nameLocation": "5878:9:24", "nodeType": "VariableDeclaration", - "scope": 7845, - "src": "5776:17:24", + "scope": 8374, + "src": "5870:17:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -53335,10 +52845,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 7833, + "id": 8362, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5776:7:24", + "src": "5870:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -53347,21 +52857,21 @@ "visibility": "internal" } ], - "src": "5775:19:24" + "src": "5869:19:24" }, "returnParameters": { - "id": 7838, + "id": 8367, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7837, + "id": 8366, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7845, - "src": "5818:4:24", + "scope": 8374, + "src": "5912:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -53369,10 +52879,10 @@ "typeString": "bool" }, "typeName": { - "id": 7836, + "id": 8365, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5818:4:24", + "src": "5912:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -53381,19 +52891,19 @@ "visibility": "internal" } ], - "src": "5817:6:24" + "src": "5911:6:24" }, - "scope": 10196, - "src": "5744:139:24", + "scope": 10792, + "src": "5838:139:24", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 7863, + "id": 8392, "nodeType": "Block", - "src": "6142:79:24", + "src": "6236:79:24", "statements": [ { "expression": { @@ -53401,7 +52911,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 7861, + "id": 8390, "isConstant": false, "isLValue": false, "isPure": false, @@ -53409,12 +52919,12 @@ "leftExpression": { "arguments": [ { - "id": 7854, + "id": 8383, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7848, - "src": "6172:4:24", + "referencedDeclaration": 8377, + "src": "6266:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -53428,18 +52938,18 @@ "typeString": "address" } ], - "id": 7853, + "id": 8382, "name": "isRegistered", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9823, - "src": "6159:12:24", + "referencedDeclaration": 10419, + "src": "6253:12:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 7855, + "id": 8384, "isConstant": false, "isLValue": false, "isPure": false, @@ -53448,7 +52958,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6159:18:24", + "src": "6253:18:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -53462,32 +52972,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7860, + "id": 8389, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 7856, + "id": 8385, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7641, - "src": "6181:10:24", + "referencedDeclaration": 8162, + "src": "6275:10:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 7858, + "id": 8387, "indexExpression": { - "id": 7857, + "id": 8386, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7848, - "src": "6192:4:24", + "referencedDeclaration": 8377, + "src": "6286:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -53498,7 +53008,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6181:16:24", + "src": "6275:16:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -53507,63 +53017,63 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 7859, + "id": 8388, "name": "minCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7661, - "src": "6201:13:24", + "referencedDeclaration": 8182, + "src": "6295:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6181:33:24", + "src": "6275:33:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6159:55:24", + "src": "6253:55:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 7852, - "id": 7862, + "functionReturnParameters": 8381, + "id": 8391, "nodeType": "Return", - "src": "6152:62:24" + "src": "6246:62:24" } ] }, "documentation": { - "id": 7846, + "id": 8375, "nodeType": "StructuredDocumentation", - "src": "5889:182:24", + "src": "5983:182:24", "text": "@dev Checks whether a liquidity provider can deliver a pegin service\n@return Whether the liquidity provider is registered and has enough locked collateral" }, "functionSelector": "457385f2", - "id": 7864, + "id": 8393, "implemented": true, "kind": "function", "modifiers": [], "name": "isOperational", - "nameLocation": "6085:13:24", + "nameLocation": "6179:13:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 7849, + "id": 8378, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7848, + "id": 8377, "mutability": "mutable", "name": "addr", - "nameLocation": "6107:4:24", + "nameLocation": "6201:4:24", "nodeType": "VariableDeclaration", - "scope": 7864, - "src": "6099:12:24", + "scope": 8393, + "src": "6193:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -53571,10 +53081,10 @@ "typeString": "address" }, "typeName": { - "id": 7847, + "id": 8376, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6099:7:24", + "src": "6193:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -53584,21 +53094,21 @@ "visibility": "internal" } ], - "src": "6098:14:24" + "src": "6192:14:24" }, "returnParameters": { - "id": 7852, + "id": 8381, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7851, + "id": 8380, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7864, - "src": "6136:4:24", + "scope": 8393, + "src": "6230:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -53606,10 +53116,10 @@ "typeString": "bool" }, "typeName": { - "id": 7850, + "id": 8379, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6136:4:24", + "src": "6230:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -53618,19 +53128,19 @@ "visibility": "internal" } ], - "src": "6135:6:24" + "src": "6229:6:24" }, - "scope": 10196, - "src": "6076:145:24", + "scope": 10792, + "src": "6170:145:24", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 7882, + "id": 8411, "nodeType": "Block", - "src": "6490:118:24", + "src": "6584:118:24", "statements": [ { "expression": { @@ -53638,7 +53148,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 7880, + "id": 8409, "isConstant": false, "isLValue": false, "isPure": false, @@ -53646,12 +53156,12 @@ "leftExpression": { "arguments": [ { - "id": 7873, + "id": 8402, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7867, - "src": "6541:4:24", + "referencedDeclaration": 8396, + "src": "6635:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -53665,18 +53175,18 @@ "typeString": "address" } ], - "id": 7872, + "id": 8401, "name": "isRegisteredForPegout", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9843, - "src": "6519:21:24", + "referencedDeclaration": 10439, + "src": "6613:21:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 7874, + "id": 8403, "isConstant": false, "isLValue": false, "isPure": false, @@ -53685,7 +53195,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6519:27:24", + "src": "6613:27:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -53699,32 +53209,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7879, + "id": 8408, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 7875, + "id": 8404, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7645, - "src": "6562:16:24", + "referencedDeclaration": 8166, + "src": "6656:16:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 7877, + "id": 8406, "indexExpression": { - "id": 7876, + "id": 8405, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7867, - "src": "6579:4:24", + "referencedDeclaration": 8396, + "src": "6673:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -53735,7 +53245,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6562:22:24", + "src": "6656:22:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -53744,63 +53254,63 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 7878, + "id": 8407, "name": "minCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7661, - "src": "6588:13:24", + "referencedDeclaration": 8182, + "src": "6682:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6562:39:24", + "src": "6656:39:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6519:82:24", + "src": "6613:82:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 7871, - "id": 7881, + "functionReturnParameters": 8400, + "id": 8410, "nodeType": "Return", - "src": "6500:101:24" + "src": "6594:101:24" } ] }, "documentation": { - "id": 7865, + "id": 8394, "nodeType": "StructuredDocumentation", - "src": "6227:183:24", + "src": "6321:183:24", "text": "@dev Checks whether a liquidity provider can deliver a pegout service\n@return Whether the liquidity provider is registered and has enough locked collateral" }, "functionSelector": "4d0ec971", - "id": 7883, + "id": 8412, "implemented": true, "kind": "function", "modifiers": [], "name": "isOperationalForPegout", - "nameLocation": "6424:22:24", + "nameLocation": "6518:22:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 7868, + "id": 8397, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7867, + "id": 8396, "mutability": "mutable", "name": "addr", - "nameLocation": "6455:4:24", + "nameLocation": "6549:4:24", "nodeType": "VariableDeclaration", - "scope": 7883, - "src": "6447:12:24", + "scope": 8412, + "src": "6541:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -53808,10 +53318,10 @@ "typeString": "address" }, "typeName": { - "id": 7866, + "id": 8395, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6447:7:24", + "src": "6541:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -53821,21 +53331,21 @@ "visibility": "internal" } ], - "src": "6446:14:24" + "src": "6540:14:24" }, "returnParameters": { - "id": 7871, + "id": 8400, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7870, + "id": 8399, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 7883, - "src": "6484:4:24", + "scope": 8412, + "src": "6578:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -53843,10 +53353,10 @@ "typeString": "bool" }, "typeName": { - "id": 7869, + "id": 8398, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6484:4:24", + "src": "6578:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -53855,19 +53365,19 @@ "visibility": "internal" } ], - "src": "6483:6:24" + "src": "6577:6:24" }, - "scope": 10196, - "src": "6415:193:24", + "scope": 10792, + "src": "6509:193:24", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 8132, + "id": 8661, "nodeType": "Block", - "src": "6896:1992:24", + "src": "6990:1992:24", "statements": [ { "expression": { @@ -53877,33 +53387,33 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 7902, + "id": 8431, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 7898, + "id": 8427, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967270, - "src": "6914:2:24", + "src": "7008:2:24", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 7899, + "id": 8428, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6917:6:24", + "memberLocation": "7011:6:24", "memberName": "origin", "nodeType": "MemberAccess", - "src": "6914:9:24", + "src": "7008:9:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -53913,32 +53423,32 @@ "operator": "==", "rightExpression": { "expression": { - "id": 7900, + "id": 8429, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "6927:3:24", + "src": "7021:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 7901, + "id": 8430, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6931:6:24", + "memberLocation": "7025:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "6927:10:24", + "src": "7021:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6914:23:24", + "src": "7008:23:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -53946,14 +53456,14 @@ }, { "hexValue": "4c4243303033", - "id": 7903, + "id": 8432, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6939:8:24", + "src": "7033:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_7e21a7b13292bf184f2fc166cca229506aa89a730258f15cdce6a2f8dc225415", "typeString": "literal_string \"LBC003\"" @@ -53972,7 +53482,7 @@ "typeString": "literal_string \"LBC003\"" } ], - "id": 7897, + "id": 8426, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -53980,13 +53490,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "6906:7:24", + "src": "7000:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 7904, + "id": 8433, "isConstant": false, "isLValue": false, "isPure": false, @@ -53995,16 +53505,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6906:42:24", + "src": "7000:42:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 7905, + "id": 8434, "nodeType": "ExpressionStatement", - "src": "6906:42:24" + "src": "7000:42:24" }, { "expression": { @@ -54014,7 +53524,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7913, + "id": 8442, "isConstant": false, "isLValue": false, "isPure": false, @@ -54023,12 +53533,12 @@ "expression": { "arguments": [ { - "id": 7909, + "id": 8438, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7886, - "src": "7042:5:24", + "referencedDeclaration": 8415, + "src": "7136:5:24", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -54042,26 +53552,26 @@ "typeString": "string memory" } ], - "id": 7908, + "id": 8437, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7036:5:24", + "src": "7130:5:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": { - "id": 7907, + "id": 8436, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "7036:5:24", + "src": "7130:5:24", "typeDescriptions": {} } }, - "id": 7910, + "id": 8439, "isConstant": false, "isLValue": false, "isPure": false, @@ -54070,22 +53580,22 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7036:12:24", + "src": "7130:12:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 7911, + "id": 8440, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7049:6:24", + "memberLocation": "7143:6:24", "memberName": "length", "nodeType": "MemberAccess", - "src": "7036:19:24", + "src": "7130:19:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -54095,21 +53605,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 7912, + "id": 8441, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7058:1:24", + "src": "7152:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "7036:23:24", + "src": "7130:23:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -54117,14 +53627,14 @@ }, { "hexValue": "4c4243303130", - "id": 7914, + "id": 8443, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7061:8:24", + "src": "7155:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_b91014d5c812b217b1f7abf06d04044851a14f3d4efa9b6795d3964c23897cc9", "typeString": "literal_string \"LBC010\"" @@ -54143,7 +53653,7 @@ "typeString": "literal_string \"LBC010\"" } ], - "id": 7906, + "id": 8435, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -54151,13 +53661,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "7028:7:24", + "src": "7122:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 7915, + "id": 8444, "isConstant": false, "isLValue": false, "isPure": false, @@ -54166,16 +53676,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7028:42:24", + "src": "7122:42:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 7916, + "id": 8445, "nodeType": "ExpressionStatement", - "src": "7028:42:24" + "src": "7122:42:24" }, { "expression": { @@ -54185,7 +53695,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7924, + "id": 8453, "isConstant": false, "isLValue": false, "isPure": false, @@ -54194,12 +53704,12 @@ "expression": { "arguments": [ { - "id": 7920, + "id": 8449, "name": "_apiBaseUrl", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7888, - "src": "7107:11:24", + "referencedDeclaration": 8417, + "src": "7201:11:24", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -54213,26 +53723,26 @@ "typeString": "string memory" } ], - "id": 7919, + "id": 8448, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7101:5:24", + "src": "7195:5:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": { - "id": 7918, + "id": 8447, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "7101:5:24", + "src": "7195:5:24", "typeDescriptions": {} } }, - "id": 7921, + "id": 8450, "isConstant": false, "isLValue": false, "isPure": false, @@ -54241,22 +53751,22 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7101:18:24", + "src": "7195:18:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 7922, + "id": 8451, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7120:6:24", + "memberLocation": "7214:6:24", "memberName": "length", "nodeType": "MemberAccess", - "src": "7101:25:24", + "src": "7195:25:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -54266,21 +53776,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 7923, + "id": 8452, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7129:1:24", + "src": "7223:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "7101:29:24", + "src": "7195:29:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -54288,14 +53798,14 @@ }, { "hexValue": "4c4243303137", - "id": 7925, + "id": 8454, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7144:8:24", + "src": "7238:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_849663c0a27b21987cfc03f3233af0a7a46b23f0af09d39a18720d9610bcba81", "typeString": "literal_string \"LBC017\"" @@ -54314,7 +53824,7 @@ "typeString": "literal_string \"LBC017\"" } ], - "id": 7917, + "id": 8446, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -54322,13 +53832,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "7080:7:24", + "src": "7174:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 7926, + "id": 8455, "isConstant": false, "isLValue": false, "isPure": false, @@ -54337,16 +53847,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7080:82:24", + "src": "7174:82:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 7927, + "id": 8456, "nodeType": "ExpressionStatement", - "src": "7080:82:24" + "src": "7174:82:24" }, { "expression": { @@ -54356,7 +53866,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 7969, + "id": 8498, "isConstant": false, "isLValue": false, "isPure": false, @@ -54366,7 +53876,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 7955, + "id": 8484, "isConstant": false, "isLValue": false, "isPure": false, @@ -54376,7 +53886,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 7941, + "id": 8470, "isConstant": false, "isLValue": false, "isPure": false, @@ -54386,12 +53896,12 @@ { "arguments": [ { - "id": 7932, + "id": 8461, "name": "_providerType", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7892, - "src": "7283:13:24", + "referencedDeclaration": 8421, + "src": "7377:13:24", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -54406,32 +53916,32 @@ } ], "expression": { - "id": 7930, + "id": 8459, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967295, - "src": "7266:3:24", + "src": "7360:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 7931, + "id": 8460, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7270:12:24", + "memberLocation": "7364:12:24", "memberName": "encodePacked", "nodeType": "MemberAccess", - "src": "7266:16:24", + "src": "7360:16:24", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 7933, + "id": 8462, "isConstant": false, "isLValue": false, "isPure": false, @@ -54440,7 +53950,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7266:31:24", + "src": "7360:31:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -54455,18 +53965,18 @@ "typeString": "bytes memory" } ], - "id": 7929, + "id": 8458, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "7256:9:24", + "src": "7350:9:24", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 7934, + "id": 8463, "isConstant": false, "isLValue": false, "isPure": false, @@ -54475,7 +53985,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7256:42:24", + "src": "7350:42:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -54490,14 +54000,14 @@ "arguments": [ { "hexValue": "706567696e", - "id": 7938, + "id": 8467, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7341:7:24", + "src": "7435:7:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120", "typeString": "literal_string \"pegin\"" @@ -54513,32 +54023,32 @@ } ], "expression": { - "id": 7936, + "id": 8465, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967295, - "src": "7324:3:24", + "src": "7418:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 7937, + "id": 8466, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7328:12:24", + "memberLocation": "7422:12:24", "memberName": "encodePacked", "nodeType": "MemberAccess", - "src": "7324:16:24", + "src": "7418:16:24", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 7939, + "id": 8468, "isConstant": false, "isLValue": false, "isPure": true, @@ -54547,7 +54057,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7324:25:24", + "src": "7418:25:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -54562,18 +54072,18 @@ "typeString": "bytes memory" } ], - "id": 7935, + "id": 8464, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "7314:9:24", + "src": "7408:9:24", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 7940, + "id": 8469, "isConstant": false, "isLValue": false, "isPure": true, @@ -54582,14 +54092,14 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7314:36:24", + "src": "7408:36:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "7256:94:24", + "src": "7350:94:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -54602,7 +54112,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 7954, + "id": 8483, "isConstant": false, "isLValue": false, "isPure": false, @@ -54612,12 +54122,12 @@ { "arguments": [ { - "id": 7945, + "id": 8474, "name": "_providerType", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7892, - "src": "7393:13:24", + "referencedDeclaration": 8421, + "src": "7487:13:24", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -54632,32 +54142,32 @@ } ], "expression": { - "id": 7943, + "id": 8472, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967295, - "src": "7376:3:24", + "src": "7470:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 7944, + "id": 8473, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7380:12:24", + "memberLocation": "7474:12:24", "memberName": "encodePacked", "nodeType": "MemberAccess", - "src": "7376:16:24", + "src": "7470:16:24", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 7946, + "id": 8475, "isConstant": false, "isLValue": false, "isPure": false, @@ -54666,7 +54176,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7376:31:24", + "src": "7470:31:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -54681,18 +54191,18 @@ "typeString": "bytes memory" } ], - "id": 7942, + "id": 8471, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "7366:9:24", + "src": "7460:9:24", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 7947, + "id": 8476, "isConstant": false, "isLValue": false, "isPure": false, @@ -54701,7 +54211,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7366:42:24", + "src": "7460:42:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -54716,14 +54226,14 @@ "arguments": [ { "hexValue": "7065676f7574", - "id": 7951, + "id": 8480, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7451:8:24", + "src": "7545:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587", "typeString": "literal_string \"pegout\"" @@ -54739,32 +54249,32 @@ } ], "expression": { - "id": 7949, + "id": 8478, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967295, - "src": "7434:3:24", + "src": "7528:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 7950, + "id": 8479, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7438:12:24", + "memberLocation": "7532:12:24", "memberName": "encodePacked", "nodeType": "MemberAccess", - "src": "7434:16:24", + "src": "7528:16:24", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 7952, + "id": 8481, "isConstant": false, "isLValue": false, "isPure": true, @@ -54773,7 +54283,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7434:26:24", + "src": "7528:26:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -54788,18 +54298,18 @@ "typeString": "bytes memory" } ], - "id": 7948, + "id": 8477, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "7424:9:24", + "src": "7518:9:24", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 7953, + "id": 8482, "isConstant": false, "isLValue": false, "isPure": true, @@ -54808,20 +54318,20 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7424:37:24", + "src": "7518:37:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "7366:95:24", + "src": "7460:95:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7256:205:24", + "src": "7350:205:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -54834,7 +54344,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 7968, + "id": 8497, "isConstant": false, "isLValue": false, "isPure": false, @@ -54844,12 +54354,12 @@ { "arguments": [ { - "id": 7959, + "id": 8488, "name": "_providerType", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7892, - "src": "7504:13:24", + "referencedDeclaration": 8421, + "src": "7598:13:24", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -54864,32 +54374,32 @@ } ], "expression": { - "id": 7957, + "id": 8486, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967295, - "src": "7487:3:24", + "src": "7581:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 7958, + "id": 8487, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7491:12:24", + "memberLocation": "7585:12:24", "memberName": "encodePacked", "nodeType": "MemberAccess", - "src": "7487:16:24", + "src": "7581:16:24", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 7960, + "id": 8489, "isConstant": false, "isLValue": false, "isPure": false, @@ -54898,7 +54408,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7487:31:24", + "src": "7581:31:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -54913,18 +54423,18 @@ "typeString": "bytes memory" } ], - "id": 7956, + "id": 8485, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "7477:9:24", + "src": "7571:9:24", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 7961, + "id": 8490, "isConstant": false, "isLValue": false, "isPure": false, @@ -54933,7 +54443,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7477:42:24", + "src": "7571:42:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -54948,14 +54458,14 @@ "arguments": [ { "hexValue": "626f7468", - "id": 7965, + "id": 8494, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7562:6:24", + "src": "7656:6:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16", "typeString": "literal_string \"both\"" @@ -54971,32 +54481,32 @@ } ], "expression": { - "id": 7963, + "id": 8492, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967295, - "src": "7545:3:24", + "src": "7639:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 7964, + "id": 8493, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7549:12:24", + "memberLocation": "7643:12:24", "memberName": "encodePacked", "nodeType": "MemberAccess", - "src": "7545:16:24", + "src": "7639:16:24", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 7966, + "id": 8495, "isConstant": false, "isLValue": false, "isPure": true, @@ -55005,7 +54515,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7545:24:24", + "src": "7639:24:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -55020,18 +54530,18 @@ "typeString": "bytes memory" } ], - "id": 7962, + "id": 8491, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "7535:9:24", + "src": "7629:9:24", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 7967, + "id": 8496, "isConstant": false, "isLValue": false, "isPure": true, @@ -55040,20 +54550,20 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7535:35:24", + "src": "7629:35:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "7477:93:24", + "src": "7571:93:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7256:314:24", + "src": "7350:314:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -55061,14 +54571,14 @@ }, { "hexValue": "4c4243303138", - "id": 7970, + "id": 8499, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7584:8:24", + "src": "7678:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c8a2f96b1c149a2cda2dda6db9bbdafbecddac69bce104e31ad4dd14842e4820", "typeString": "literal_string \"LBC018\"" @@ -55087,7 +54597,7 @@ "typeString": "literal_string \"LBC018\"" } ], - "id": 7928, + "id": 8457, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -55095,13 +54605,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "7235:7:24", + "src": "7329:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 7971, + "id": 8500, "isConstant": false, "isLValue": false, "isPure": false, @@ -55110,16 +54620,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7235:367:24", + "src": "7329:367:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 7972, + "id": 8501, "nodeType": "ExpressionStatement", - "src": "7235:367:24" + "src": "7329:367:24" }, { "expression": { @@ -55129,7 +54639,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 7986, + "id": 8515, "isConstant": false, "isLValue": false, "isPure": false, @@ -55139,47 +54649,47 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7979, + "id": 8508, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 7974, + "id": 8503, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7641, - "src": "7621:10:24", + "referencedDeclaration": 8162, + "src": "7715:10:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 7977, + "id": 8506, "indexExpression": { "expression": { - "id": 7975, + "id": 8504, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "7632:3:24", + "src": "7726:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 7976, + "id": 8505, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7636:6:24", + "memberLocation": "7730:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "7632:10:24", + "src": "7726:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -55190,7 +54700,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7621:22:24", + "src": "7715:22:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -55200,21 +54710,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 7978, + "id": 8507, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7647:1:24", + "src": "7741:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "7621:27:24", + "src": "7715:27:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -55227,47 +54737,47 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7985, + "id": 8514, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 7980, + "id": 8509, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7645, - "src": "7652:16:24", + "referencedDeclaration": 8166, + "src": "7746:16:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 7983, + "id": 8512, "indexExpression": { "expression": { - "id": 7981, + "id": 8510, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "7669:3:24", + "src": "7763:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 7982, + "id": 8511, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7673:6:24", + "memberLocation": "7767:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "7669:10:24", + "src": "7763:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -55278,7 +54788,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7652:28:24", + "src": "7746:28:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -55288,27 +54798,27 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 7984, + "id": 8513, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7684:1:24", + "src": "7778:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "7652:33:24", + "src": "7746:33:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7621:64:24", + "src": "7715:64:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -55316,14 +54826,14 @@ }, { "hexValue": "4c4243303730", - "id": 7987, + "id": 8516, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7687:8:24", + "src": "7781:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a80fe4c2764b7c4b52829ebb2b1bb3117b2b8ffa6a6401dbe00248ec851a73a8", "typeString": "literal_string \"LBC070\"" @@ -55342,7 +54852,7 @@ "typeString": "literal_string \"LBC070\"" } ], - "id": 7973, + "id": 8502, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -55350,13 +54860,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "7613:7:24", + "src": "7707:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 7988, + "id": 8517, "isConstant": false, "isLValue": false, "isPure": false, @@ -55365,16 +54875,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7613:83:24", + "src": "7707:83:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 7989, + "id": 8518, "nodeType": "ExpressionStatement", - "src": "7613:83:24" + "src": "7707:83:24" }, { "expression": { @@ -55384,47 +54894,47 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 7996, + "id": 8525, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 7991, + "id": 8520, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7659, - "src": "7727:19:24", + "referencedDeclaration": 8180, + "src": "7821:19:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 7994, + "id": 8523, "indexExpression": { "expression": { - "id": 7992, + "id": 8521, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "7747:3:24", + "src": "7841:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 7993, + "id": 8522, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "7751:6:24", + "memberLocation": "7845:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "7747:10:24", + "src": "7841:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -55435,7 +54945,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7727:31:24", + "src": "7821:31:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -55445,21 +54955,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 7995, + "id": 8524, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7762:1:24", + "src": "7856:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "7727:36:24", + "src": "7821:36:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -55467,14 +54977,14 @@ }, { "hexValue": "4c4243303039", - "id": 7997, + "id": 8526, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7777:8:24", + "src": "7871:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_f838e22b544c153329abcc9856d1b1f7e7f6c83118dc13d7a0606e65edb3cdd8", "typeString": "literal_string \"LBC009\"" @@ -55493,7 +55003,7 @@ "typeString": "literal_string \"LBC009\"" } ], - "id": 7990, + "id": 8519, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -55501,13 +55011,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "7706:7:24", + "src": "7800:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 7998, + "id": 8527, "isConstant": false, "isLValue": false, "isPure": false, @@ -55516,16 +55026,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7706:89:24", + "src": "7800:89:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 7999, + "id": 8528, "nodeType": "ExpressionStatement", - "src": "7706:89:24" + "src": "7800:89:24" }, { "condition": { @@ -55533,7 +55043,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 8012, + "id": 8541, "isConstant": false, "isLValue": false, "isPure": false, @@ -55543,12 +55053,12 @@ { "arguments": [ { - "id": 8003, + "id": 8532, "name": "_providerType", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7892, - "src": "7837:13:24", + "referencedDeclaration": 8421, + "src": "7931:13:24", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -55563,32 +55073,32 @@ } ], "expression": { - "id": 8001, + "id": 8530, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967295, - "src": "7820:3:24", + "src": "7914:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 8002, + "id": 8531, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7824:12:24", + "memberLocation": "7918:12:24", "memberName": "encodePacked", "nodeType": "MemberAccess", - "src": "7820:16:24", + "src": "7914:16:24", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 8004, + "id": 8533, "isConstant": false, "isLValue": false, "isPure": false, @@ -55597,7 +55107,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7820:31:24", + "src": "7914:31:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -55612,18 +55122,18 @@ "typeString": "bytes memory" } ], - "id": 8000, + "id": 8529, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "7810:9:24", + "src": "7904:9:24", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 8005, + "id": 8534, "isConstant": false, "isLValue": false, "isPure": false, @@ -55632,7 +55142,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7810:42:24", + "src": "7904:42:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -55647,14 +55157,14 @@ "arguments": [ { "hexValue": "706567696e", - "id": 8009, + "id": 8538, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7883:7:24", + "src": "7977:7:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120", "typeString": "literal_string \"pegin\"" @@ -55670,32 +55180,32 @@ } ], "expression": { - "id": 8007, + "id": 8536, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967295, - "src": "7866:3:24", + "src": "7960:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 8008, + "id": 8537, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "7870:12:24", + "memberLocation": "7964:12:24", "memberName": "encodePacked", "nodeType": "MemberAccess", - "src": "7866:16:24", + "src": "7960:16:24", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 8010, + "id": 8539, "isConstant": false, "isLValue": false, "isPure": true, @@ -55704,7 +55214,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7866:25:24", + "src": "7960:25:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -55719,18 +55229,18 @@ "typeString": "bytes memory" } ], - "id": 8006, + "id": 8535, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "7856:9:24", + "src": "7950:9:24", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 8011, + "id": 8540, "isConstant": false, "isLValue": false, "isPure": true, @@ -55739,14 +55249,14 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7856:36:24", + "src": "7950:36:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "7810:82:24", + "src": "7904:82:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -55758,7 +55268,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 8042, + "id": 8571, "isConstant": false, "isLValue": false, "isPure": false, @@ -55768,12 +55278,12 @@ { "arguments": [ { - "id": 8033, + "id": 8562, "name": "_providerType", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7892, - "src": "8049:13:24", + "referencedDeclaration": 8421, + "src": "8143:13:24", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -55788,32 +55298,32 @@ } ], "expression": { - "id": 8031, + "id": 8560, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967295, - "src": "8032:3:24", + "src": "8126:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 8032, + "id": 8561, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8036:12:24", + "memberLocation": "8130:12:24", "memberName": "encodePacked", "nodeType": "MemberAccess", - "src": "8032:16:24", + "src": "8126:16:24", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 8034, + "id": 8563, "isConstant": false, "isLValue": false, "isPure": false, @@ -55822,7 +55332,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8032:31:24", + "src": "8126:31:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -55837,18 +55347,18 @@ "typeString": "bytes memory" } ], - "id": 8030, + "id": 8559, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "8022:9:24", + "src": "8116:9:24", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 8035, + "id": 8564, "isConstant": false, "isLValue": false, "isPure": false, @@ -55857,7 +55367,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8022:42:24", + "src": "8116:42:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -55872,14 +55382,14 @@ "arguments": [ { "hexValue": "7065676f7574", - "id": 8039, + "id": 8568, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8095:8:24", + "src": "8189:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587", "typeString": "literal_string \"pegout\"" @@ -55895,32 +55405,32 @@ } ], "expression": { - "id": 8037, + "id": 8566, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967295, - "src": "8078:3:24", + "src": "8172:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 8038, + "id": 8567, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "8082:12:24", + "memberLocation": "8176:12:24", "memberName": "encodePacked", "nodeType": "MemberAccess", - "src": "8078:16:24", + "src": "8172:16:24", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 8040, + "id": 8569, "isConstant": false, "isLValue": false, "isPure": true, @@ -55929,7 +55439,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8078:26:24", + "src": "8172:26:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -55944,18 +55454,18 @@ "typeString": "bytes memory" } ], - "id": 8036, + "id": 8565, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "8068:9:24", + "src": "8162:9:24", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 8041, + "id": 8570, "isConstant": false, "isLValue": false, "isPure": true, @@ -55964,23 +55474,23 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8068:37:24", + "src": "8162:37:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "8022:83:24", + "src": "8116:83:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 8101, + "id": 8630, "nodeType": "Block", - "src": "8237:269:24", + "src": "8331:269:24", "statements": [ { "expression": { @@ -55990,33 +55500,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8066, + "id": 8595, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 8061, + "id": 8590, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "8259:3:24", + "src": "8353:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8062, + "id": 8591, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8263:5:24", + "memberLocation": "8357:5:24", "memberName": "value", "nodeType": "MemberAccess", - "src": "8259:9:24", + "src": "8353:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -56029,18 +55539,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8065, + "id": 8594, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8063, + "id": 8592, "name": "minCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7661, - "src": "8272:13:24", + "referencedDeclaration": 8182, + "src": "8366:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -56050,27 +55560,27 @@ "operator": "*", "rightExpression": { "hexValue": "32", - "id": 8064, + "id": 8593, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8288:1:24", + "src": "8382:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" }, "value": "2" }, - "src": "8272:17:24", + "src": "8366:17:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8259:30:24", + "src": "8353:30:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -56078,14 +55588,14 @@ }, { "hexValue": "4c4243303038", - "id": 8067, + "id": 8596, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8291:8:24", + "src": "8385:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", "typeString": "literal_string \"LBC008\"" @@ -56104,7 +55614,7 @@ "typeString": "literal_string \"LBC008\"" } ], - "id": 8060, + "id": 8589, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -56112,13 +55622,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "8251:7:24", + "src": "8345:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8068, + "id": 8597, "isConstant": false, "isLValue": false, "isPure": false, @@ -56127,31 +55637,31 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8251:49:24", + "src": "8345:49:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8069, + "id": 8598, "nodeType": "ExpressionStatement", - "src": "8251:49:24" + "src": "8345:49:24" }, { "assignments": [ - 8071 + 8600 ], "declarations": [ { "constant": false, - "id": 8071, + "id": 8600, "mutability": "mutable", "name": "halfMsgValue", - "nameLocation": "8319:12:24", + "nameLocation": "8413:12:24", "nodeType": "VariableDeclaration", - "scope": 8101, - "src": "8314:17:24", + "scope": 8630, + "src": "8408:17:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -56159,10 +55669,10 @@ "typeString": "uint256" }, "typeName": { - "id": 8070, + "id": 8599, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8314:4:24", + "src": "8408:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -56171,39 +55681,39 @@ "visibility": "internal" } ], - "id": 8076, + "id": 8605, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8075, + "id": 8604, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 8072, + "id": 8601, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "8334:3:24", + "src": "8428:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8073, + "id": 8602, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8338:5:24", + "memberLocation": "8432:5:24", "memberName": "value", "nodeType": "MemberAccess", - "src": "8334:9:24", + "src": "8428:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -56213,72 +55723,72 @@ "operator": "/", "rightExpression": { "hexValue": "32", - "id": 8074, + "id": 8603, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8346:1:24", + "src": "8440:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" }, "value": "2" }, - "src": "8334:13:24", + "src": "8428:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "8314:33:24" + "src": "8408:33:24" }, { "expression": { - "id": 8092, + "id": 8621, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 8077, + "id": 8606, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7641, - "src": "8361:10:24", + "referencedDeclaration": 8162, + "src": "8455:10:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8080, + "id": 8609, "indexExpression": { "expression": { - "id": 8078, + "id": 8607, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "8372:3:24", + "src": "8466:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8079, + "id": 8608, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8376:6:24", + "memberLocation": "8470:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "8372:10:24", + "src": "8466:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -56289,7 +55799,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "8361:22:24", + "src": "8455:22:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -56303,7 +55813,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8086, + "id": 8615, "isConstant": false, "isLValue": false, "isPure": false, @@ -56313,33 +55823,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8084, + "id": 8613, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 8081, + "id": 8610, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "8386:3:24", + "src": "8480:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8082, + "id": 8611, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8390:5:24", + "memberLocation": "8484:5:24", "memberName": "value", "nodeType": "MemberAccess", - "src": "8386:9:24", + "src": "8480:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -56349,21 +55859,21 @@ "operator": "%", "rightExpression": { "hexValue": "32", - "id": 8083, + "id": 8612, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8398:1:24", + "src": "8492:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" }, "value": "2" }, - "src": "8386:13:24", + "src": "8480:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -56373,21 +55883,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 8085, + "id": 8614, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8403:1:24", + "src": "8497:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "8386:18:24", + "src": "8480:18:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -56398,18 +55908,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8090, + "id": 8619, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8088, + "id": 8617, "name": "halfMsgValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8071, - "src": "8422:12:24", + "referencedDeclaration": 8600, + "src": "8516:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -56419,40 +55929,40 @@ "operator": "+", "rightExpression": { "hexValue": "31", - "id": 8089, + "id": 8618, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8437:1:24", + "src": "8531:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "8422:16:24", + "src": "8516:16:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 8091, + "id": 8620, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", - "src": "8386:52:24", + "src": "8480:52:24", "trueExpression": { - "id": 8087, + "id": 8616, "name": "halfMsgValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8071, - "src": "8407:12:24", + "referencedDeclaration": 8600, + "src": "8501:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -56463,59 +55973,59 @@ "typeString": "uint256" } }, - "src": "8361:77:24", + "src": "8455:77:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 8093, + "id": 8622, "nodeType": "ExpressionStatement", - "src": "8361:77:24" + "src": "8455:77:24" }, { "expression": { - "id": 8099, + "id": 8628, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 8094, + "id": 8623, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7645, - "src": "8452:16:24", + "referencedDeclaration": 8166, + "src": "8546:16:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8097, + "id": 8626, "indexExpression": { "expression": { - "id": 8095, + "id": 8624, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "8469:3:24", + "src": "8563:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8096, + "id": 8625, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8473:6:24", + "memberLocation": "8567:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "8469:10:24", + "src": "8563:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -56526,7 +56036,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "8452:28:24", + "src": "8546:28:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -56535,36 +56045,36 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 8098, + "id": 8627, "name": "halfMsgValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8071, - "src": "8483:12:24", + "referencedDeclaration": 8600, + "src": "8577:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8452:43:24", + "src": "8546:43:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 8100, + "id": 8629, "nodeType": "ExpressionStatement", - "src": "8452:43:24" + "src": "8546:43:24" } ] }, - "id": 8102, + "id": 8631, "nodeType": "IfStatement", - "src": "8018:488:24", + "src": "8112:488:24", "trueBody": { - "id": 8059, + "id": 8588, "nodeType": "Block", - "src": "8107:124:24", + "src": "8201:124:24", "statements": [ { "expression": { @@ -56574,33 +56084,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8047, + "id": 8576, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 8044, + "id": 8573, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "8129:3:24", + "src": "8223:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8045, + "id": 8574, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8133:5:24", + "memberLocation": "8227:5:24", "memberName": "value", "nodeType": "MemberAccess", - "src": "8129:9:24", + "src": "8223:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -56609,18 +56119,18 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 8046, + "id": 8575, "name": "minCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7661, - "src": "8142:13:24", + "referencedDeclaration": 8182, + "src": "8236:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8129:26:24", + "src": "8223:26:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -56628,14 +56138,14 @@ }, { "hexValue": "4c4243303038", - "id": 8048, + "id": 8577, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8157:8:24", + "src": "8251:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", "typeString": "literal_string \"LBC008\"" @@ -56654,7 +56164,7 @@ "typeString": "literal_string \"LBC008\"" } ], - "id": 8043, + "id": 8572, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -56662,13 +56172,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "8121:7:24", + "src": "8215:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8049, + "id": 8578, "isConstant": false, "isLValue": false, "isPure": false, @@ -56677,60 +56187,60 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8121:45:24", + "src": "8215:45:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8050, + "id": 8579, "nodeType": "ExpressionStatement", - "src": "8121:45:24" + "src": "8215:45:24" }, { "expression": { - "id": 8057, + "id": 8586, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 8051, + "id": 8580, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7645, - "src": "8180:16:24", + "referencedDeclaration": 8166, + "src": "8274:16:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8054, + "id": 8583, "indexExpression": { "expression": { - "id": 8052, + "id": 8581, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "8197:3:24", + "src": "8291:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8053, + "id": 8582, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8201:6:24", + "memberLocation": "8295:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "8197:10:24", + "src": "8291:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -56741,7 +56251,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "8180:28:24", + "src": "8274:28:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -56751,155 +56261,1014 @@ "operator": "=", "rightHandSide": { "expression": { - "id": 8055, + "id": 8584, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "8211:3:24", + "src": "8305:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8056, + "id": 8585, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "8215:5:24", + "memberLocation": "8309:5:24", "memberName": "value", "nodeType": "MemberAccess", - "src": "8211:9:24", + "src": "8305:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8180:40:24", + "src": "8274:40:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 8058, + "id": 8587, "nodeType": "ExpressionStatement", - "src": "8180:40:24" + "src": "8274:40:24" + } + ] + } + }, + "id": 8632, + "nodeType": "IfStatement", + "src": "7900:700:24", + "trueBody": { + "id": 8558, + "nodeType": "Block", + "src": "7988:118:24", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8546, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 8543, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "8010:3:24", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 8544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8014:5:24", + "memberName": "value", + "nodeType": "MemberAccess", + "src": "8010:9:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 8545, + "name": "minCollateral", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8182, + "src": "8023:13:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8010:26:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4c4243303038", + "id": 8547, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8038:8:24", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", + "typeString": "literal_string \"LBC008\"" + }, + "value": "LBC008" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", + "typeString": "literal_string \"LBC008\"" + } + ], + "id": 8542, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "8002:7:24", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8548, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8002:45:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8549, + "nodeType": "ExpressionStatement", + "src": "8002:45:24" + }, + { + "expression": { + "id": 8556, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 8550, + "name": "collateral", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8162, + "src": "8061:10:24", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 8553, + "indexExpression": { + "expression": { + "id": 8551, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "8072:3:24", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 8552, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8076:6:24", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "8072:10:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "8061:22:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "id": 8554, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "8086:3:24", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 8555, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8090:5:24", + "memberName": "value", + "nodeType": "MemberAccess", + "src": "8086:9:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8061:34:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8557, + "nodeType": "ExpressionStatement", + "src": "8061:34:24" + } + ] + } + }, + { + "expression": { + "id": 8634, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "8610:12:24", + "subExpression": { + "id": 8633, + "name": "providerId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8192, + "src": "8610:10:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8635, + "nodeType": "ExpressionStatement", + "src": "8610:12:24" + }, + { + "expression": { + "id": 8648, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 8636, + "name": "liquidityProviders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8171, + "src": "8632:18:24", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8021_storage_$", + "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" + } + }, + "id": 8638, + "indexExpression": { + "id": 8637, + "name": "providerId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8192, + "src": "8651:10:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "8632:30:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 8640, + "name": "providerId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8192, + "src": "8701:10:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 8641, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "8735:3:24", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 8642, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8739:6:24", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "8735:10:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8643, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8415, + "src": "8765:5:24", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8644, + "name": "_apiBaseUrl", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8417, + "src": "8796:11:24", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8645, + "name": "_status", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8419, + "src": "8829:7:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8646, + "name": "_providerType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8421, + "src": "8864:13:24", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 8639, + "name": "LiquidityProvider", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8021, + "src": "8665:17:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_LiquidityProvider_$8021_storage_ptr_$", + "typeString": "type(struct LiquidityBridgeContractV2.LiquidityProvider storage pointer)" + } + }, + "id": 8647, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "nameLocations": [ + "8697:2:24", + "8725:8:24", + "8759:4:24", + "8784:10:24", + "8821:6:24", + "8850:12:24" + ], + "names": [ + "id", + "provider", + "name", + "apiBaseUrl", + "status", + "providerType" + ], + "nodeType": "FunctionCall", + "src": "8665:223:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_memory_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory" + } + }, + "src": "8632:256:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" + } + }, + "id": 8649, + "nodeType": "ExpressionStatement", + "src": "8632:256:24" + }, + { + "eventCall": { + "arguments": [ + { + "id": 8651, + "name": "providerId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8192, + "src": "8912:10:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 8652, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "8924:3:24", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 8653, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8928:6:24", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "8924:10:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 8654, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "8936:3:24", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 8655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8940:5:24", + "memberName": "value", + "nodeType": "MemberAccess", + "src": "8936:9:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 8650, + "name": "Register", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8029, + "src": "8903:8:24", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (uint256,address,uint256)" + } + }, + "id": 8656, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8903:43:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8657, + "nodeType": "EmitStatement", + "src": "8898:48:24" + }, + { + "expression": { + "components": [ + { + "id": 8658, + "name": "providerId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8192, + "src": "8964:10:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 8659, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "8963:12:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 8425, + "id": 8660, + "nodeType": "Return", + "src": "8956:19:24" + } + ] + }, + "documentation": { + "id": 8413, + "nodeType": "StructuredDocumentation", + "src": "6708:98:24", + "text": "@dev Registers msg.sender as a liquidity provider with msg.value as collateral" + }, + "functionSelector": "41705518", + "id": 8662, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "register", + "nameLocation": "6820:8:24", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8422, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8415, + "mutability": "mutable", + "name": "_name", + "nameLocation": "6852:5:24", + "nodeType": "VariableDeclaration", + "scope": 8662, + "src": "6838:19:24", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8414, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6838:6:24", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8417, + "mutability": "mutable", + "name": "_apiBaseUrl", + "nameLocation": "6881:11:24", + "nodeType": "VariableDeclaration", + "scope": 8662, + "src": "6867:25:24", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8416, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6867:6:24", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8419, + "mutability": "mutable", + "name": "_status", + "nameLocation": "6907:7:24", + "nodeType": "VariableDeclaration", + "scope": 8662, + "src": "6902:12:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8418, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6902:4:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8421, + "mutability": "mutable", + "name": "_providerType", + "nameLocation": "6938:13:24", + "nodeType": "VariableDeclaration", + "scope": 8662, + "src": "6924:27:24", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8420, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6924:6:24", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6828:129:24" + }, + "returnParameters": { + "id": 8425, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8424, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8662, + "src": "6984:4:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8423, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6984:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6983:6:24" + }, + "scope": 10792, + "src": "6811:2171:24", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 8749, + "nodeType": "Block", + "src": "9063:587:24", + "statements": [ + { + "assignments": [ + 8670 + ], + "declarations": [ + { + "constant": false, + "id": 8670, + "mutability": "mutable", + "name": "count", + "nameLocation": "9078:5:24", + "nodeType": "VariableDeclaration", + "scope": 8749, + "src": "9073:10:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8669, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "9073:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ] + }, + "visibility": "internal" } + ], + "id": 8672, + "initialValue": { + "hexValue": "30", + "id": 8671, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9086:1:24", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" }, - "id": 8103, - "nodeType": "IfStatement", - "src": "7806:700:24", - "trueBody": { - "id": 8029, + "nodeType": "VariableDeclarationStatement", + "src": "9073:14:24" + }, + { + "assignments": [ + 8675 + ], + "declarations": [ + { + "constant": false, + "id": 8675, + "mutability": "mutable", + "name": "lp", + "nameLocation": "9123:2:24", + "nodeType": "VariableDeclaration", + "scope": 8749, + "src": "9097:28:24", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" + }, + "typeName": { + "id": 8674, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 8673, + "name": "LiquidityProvider", + "nameLocations": [ + "9097:17:24" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 8021, + "src": "9097:17:24" + }, + "referencedDeclaration": 8021, + "src": "9097:17:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" + } + }, + "visibility": "internal" + } + ], + "id": 8676, + "nodeType": "VariableDeclarationStatement", + "src": "9097:28:24" + }, + { + "body": { + "id": 8697, "nodeType": "Block", - "src": "7894:118:24", + "src": "9174:107:24", "statements": [ { - "expression": { + "condition": { "arguments": [ { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8017, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 8014, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "7916:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8015, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7920:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "7916:9:24", + "baseExpression": { + "id": 8688, + "name": "liquidityProviders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8171, + "src": "9207:18:24", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8021_storage_$", + "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" } }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 8016, - "name": "minCollateral", + "id": 8690, + "indexExpression": { + "id": 8689, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7661, - "src": "7929:13:24", + "referencedDeclaration": 8678, + "src": "9226:1:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7916:26:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303038", - "id": 8018, "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", + "isLValue": true, + "isPure": false, "lValueRequested": false, - "nodeType": "Literal", - "src": "7944:8:24", + "nodeType": "IndexAccess", + "src": "9207:21:24", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", - "typeString": "literal_string \"LBC008\"" - }, - "value": "LBC008" + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" + } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", - "typeString": "literal_string \"LBC008\"" + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" } ], - "id": 8013, - "name": "require", + "id": 8687, + "name": "shouldBeListed", "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7908:7:24", + "overloadedDeclarations": [], + "referencedDeclaration": 8810, + "src": "9192:14:24", "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "typeIdentifier": "t_function_internal_view$_t_struct$_LiquidityProvider_$8021_storage_ptr_$returns$_t_bool_$", + "typeString": "function (struct LiquidityBridgeContractV2.LiquidityProvider storage pointer) view returns (bool)" } }, - "id": 8019, + "id": 8691, "isConstant": false, "isLValue": false, "isPure": false, @@ -56908,428 +57277,251 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "7908:45:24", + "src": "9192:37:24", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 8020, - "nodeType": "ExpressionStatement", - "src": "7908:45:24" - }, - { - "expression": { - "id": 8027, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 8021, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7641, - "src": "7967:10:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8024, - "indexExpression": { + "id": 8696, + "nodeType": "IfStatement", + "src": "9188:83:24", + "trueBody": { + "id": 8695, + "nodeType": "Block", + "src": "9231:40:24", + "statements": [ + { "expression": { - "id": 8022, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "7978:3:24", + "id": 8693, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "9249:7:24", + "subExpression": { + "id": 8692, + "name": "count", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8670, + "src": "9249:5:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 8023, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7982:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "7978:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "7967:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 8025, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "7992:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8026, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7996:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "7992:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "id": 8694, + "nodeType": "ExpressionStatement", + "src": "9249:7:24" } - }, - "src": "7967:34:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8028, - "nodeType": "ExpressionStatement", - "src": "7967:34:24" + ] + } } ] - } - }, - { - "expression": { - "id": 8105, + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8683, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "8516:12:24", - "subExpression": { - "id": 8104, + "leftExpression": { + "id": 8681, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8678, + "src": "9152:1:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 8682, "name": "providerId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7671, - "src": "8516:10:24", + "referencedDeclaration": 8192, + "src": "9157:10:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, + "src": "9152:15:24", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 8106, - "nodeType": "ExpressionStatement", - "src": "8516:12:24" - }, - { - "expression": { - "id": 8119, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 8107, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7650, - "src": "8538:18:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$7500_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" - } - }, - "id": 8109, - "indexExpression": { - "id": 8108, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7671, - "src": "8557:10:24", + "id": 8698, + "initializationExpression": { + "assignments": [ + 8678 + ], + "declarations": [ + { + "constant": false, + "id": 8678, + "mutability": "mutable", + "name": "i", + "nameLocation": "9145:1:24", + "nodeType": "VariableDeclaration", + "scope": 8698, + "src": "9140:6:24", + "stateVariable": false, + "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "8538:30:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 8111, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7671, - "src": "8607:10:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 8112, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8641:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8113, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8645:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8641:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 8114, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7886, - "src": "8671:5:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 8115, - "name": "_apiBaseUrl", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7888, - "src": "8702:11:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 8116, - "name": "_status", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7890, - "src": "8735:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } }, - { - "id": 8117, - "name": "_providerType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7892, - "src": "8770:13:24", + "typeName": { + "id": 8677, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "9140:4:24", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { "typeIdentifier": "t_uint256", "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" } - ], - "id": 8110, - "name": "LiquidityProvider", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7500, - "src": "8571:17:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_LiquidityProvider_$7500_storage_ptr_$", - "typeString": "type(struct LiquidityBridgeContractV2.LiquidityProvider storage pointer)" - } - }, - "id": 8118, + }, + "visibility": "internal" + } + ], + "id": 8680, + "initialValue": { + "hexValue": "31", + "id": 8679, "isConstant": false, "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", + "isPure": true, + "kind": "number", "lValueRequested": false, - "nameLocations": [ - "8603:2:24", - "8631:8:24", - "8665:4:24", - "8690:10:24", - "8727:6:24", - "8756:12:24" - ], - "names": [ - "id", - "provider", - "name", - "apiBaseUrl", - "status", - "providerType" - ], - "nodeType": "FunctionCall", - "src": "8571:223:24", - "tryCall": false, + "nodeType": "Literal", + "src": "9149:1:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory" - } + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" }, - "src": "8538:256:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" - } + "nodeType": "VariableDeclarationStatement", + "src": "9140:10:24" }, - "id": 8120, - "nodeType": "ExpressionStatement", - "src": "8538:256:24" - }, - { - "eventCall": { - "arguments": [ - { - "id": 8122, - "name": "providerId", + "loopExpression": { + "expression": { + "id": 8685, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "9169:3:24", + "subExpression": { + "id": 8684, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7671, - "src": "8818:10:24", + "referencedDeclaration": 8678, + "src": "9169:1:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - { - "expression": { - "id": 8123, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8830:3:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8686, + "nodeType": "ExpressionStatement", + "src": "9169:3:24" + }, + "nodeType": "ForStatement", + "src": "9135:146:24" + }, + { + "assignments": [ + 8703 + ], + "declarations": [ + { + "constant": false, + "id": 8703, + "mutability": "mutable", + "name": "providersToReturn", + "nameLocation": "9317:17:24", + "nodeType": "VariableDeclaration", + "scope": 8749, + "src": "9290:44:24", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8021_memory_ptr_$dyn_memory_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider[]" + }, + "typeName": { + "baseType": { + "id": 8701, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 8700, + "name": "LiquidityProvider", + "nameLocations": [ + "9290:17:24" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 8021, + "src": "9290:17:24" + }, + "referencedDeclaration": 8021, + "src": "9290:17:24", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" } }, - "id": 8124, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8834:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8830:10:24", + "id": 8702, + "nodeType": "ArrayTypeName", + "src": "9290:19:24", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8021_storage_$dyn_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider[]" } }, + "visibility": "internal" + } + ], + "id": 8710, + "initialValue": { + "arguments": [ { - "expression": { - "id": 8125, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8842:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8126, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8846:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "8842:9:24", + "id": 8708, + "name": "count", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8670, + "src": "9361:5:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -57338,31 +57530,53 @@ ], "expression": { "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], - "id": 8121, - "name": "Register", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7508, - "src": "8809:8:24", + "id": 8707, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "9337:23:24", "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (uint256,address,uint256)" + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_LiquidityProvider_$8021_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (struct LiquidityBridgeContractV2.LiquidityProvider memory[] memory)" + }, + "typeName": { + "baseType": { + "id": 8705, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 8704, + "name": "LiquidityProvider", + "nameLocations": [ + "9341:17:24" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 8021, + "src": "9341:17:24" + }, + "referencedDeclaration": 8021, + "src": "9341:17:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" + } + }, + "id": 8706, + "nodeType": "ArrayTypeName", + "src": "9341:19:24", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8021_storage_$dyn_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider[]" + } } }, - "id": 8127, + "id": 8709, "isConstant": false, "isLValue": false, "isPure": false, @@ -57371,760 +57585,569 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "8809:43:24", + "src": "9337:30:24", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8021_memory_ptr_$dyn_memory_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory[] memory" } }, - "id": 8128, - "nodeType": "EmitStatement", - "src": "8804:48:24" + "nodeType": "VariableDeclarationStatement", + "src": "9290:77:24" }, { "expression": { - "components": [ - { - "id": 8129, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7671, - "src": "8870:10:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 8130, + "id": 8713, "isConstant": false, - "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "8869:12:24", + "leftHandSide": { + "id": 8711, + "name": "count", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8670, + "src": "9377:5:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "30", + "id": 8712, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9385:1:24", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "9377:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 7896, - "id": 8131, - "nodeType": "Return", - "src": "8862:19:24" - } - ] - }, - "documentation": { - "id": 7884, - "nodeType": "StructuredDocumentation", - "src": "6614:98:24", - "text": "@dev Registers msg.sender as a liquidity provider with msg.value as collateral" - }, - "functionSelector": "41705518", - "id": 8133, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "register", - "nameLocation": "6726:8:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7893, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7886, - "mutability": "mutable", - "name": "_name", - "nameLocation": "6758:5:24", - "nodeType": "VariableDeclaration", - "scope": 8133, - "src": "6744:19:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 7885, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6744:6:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7888, - "mutability": "mutable", - "name": "_apiBaseUrl", - "nameLocation": "6787:11:24", - "nodeType": "VariableDeclaration", - "scope": 8133, - "src": "6773:25:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 7887, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6773:6:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" + "id": 8714, + "nodeType": "ExpressionStatement", + "src": "9377:9:24" }, { - "constant": false, - "id": 7890, - "mutability": "mutable", - "name": "_status", - "nameLocation": "6813:7:24", - "nodeType": "VariableDeclaration", - "scope": 8133, - "src": "6808:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "body": { + "id": 8745, + "nodeType": "Block", + "src": "9435:175:24", + "statements": [ + { + "expression": { + "id": 8729, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 8725, + "name": "lp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8675, + "src": "9449:2:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 8726, + "name": "liquidityProviders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8171, + "src": "9454:18:24", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8021_storage_$", + "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" + } + }, + "id": 8728, + "indexExpression": { + "id": 8727, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8716, + "src": "9473:1:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9454:21:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" + } + }, + "src": "9449:26:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" + } + }, + "id": 8730, + "nodeType": "ExpressionStatement", + "src": "9449:26:24" + }, + { + "condition": { + "arguments": [ + { + "id": 8732, + "name": "lp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8675, + "src": "9508:2:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" + } + ], + "id": 8731, + "name": "shouldBeListed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8810, + "src": "9493:14:24", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_struct$_LiquidityProvider_$8021_storage_ptr_$returns$_t_bool_$", + "typeString": "function (struct LiquidityBridgeContractV2.LiquidityProvider storage pointer) view returns (bool)" + } + }, + "id": 8733, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9493:18:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 8744, + "nodeType": "IfStatement", + "src": "9489:111:24", + "trueBody": { + "id": 8743, + "nodeType": "Block", + "src": "9513:87:24", + "statements": [ + { + "expression": { + "id": 8738, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 8734, + "name": "providersToReturn", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8703, + "src": "9531:17:24", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8021_memory_ptr_$dyn_memory_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory[] memory" + } + }, + "id": 8736, + "indexExpression": { + "id": 8735, + "name": "count", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8670, + "src": "9549:5:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "9531:24:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_memory_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 8737, + "name": "lp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8675, + "src": "9558:2:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" + } + }, + "src": "9531:29:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_memory_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory" + } + }, + "id": 8739, + "nodeType": "ExpressionStatement", + "src": "9531:29:24" + }, + { + "expression": { + "id": 8741, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "9578:7:24", + "subExpression": { + "id": 8740, + "name": "count", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8670, + "src": "9578:5:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8742, + "nodeType": "ExpressionStatement", + "src": "9578:7:24" + } + ] + } + } + ] }, - "typeName": { - "id": 7889, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "6808:4:24", + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 8721, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 8719, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8716, + "src": "9413:1:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 8720, + "name": "providerId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8192, + "src": "9418:10:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9413:15:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "visibility": "internal" + "id": 8746, + "initializationExpression": { + "assignments": [ + 8716 + ], + "declarations": [ + { + "constant": false, + "id": 8716, + "mutability": "mutable", + "name": "i", + "nameLocation": "9406:1:24", + "nodeType": "VariableDeclaration", + "scope": 8746, + "src": "9401:6:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8715, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "9401:4:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 8718, + "initialValue": { + "hexValue": "31", + "id": 8717, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9410:1:24", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "VariableDeclarationStatement", + "src": "9401:10:24" + }, + "loopExpression": { + "expression": { + "id": 8723, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "9430:3:24", + "subExpression": { + "id": 8722, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8716, + "src": "9430:1:24", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 8724, + "nodeType": "ExpressionStatement", + "src": "9430:3:24" + }, + "nodeType": "ForStatement", + "src": "9396:214:24" }, { - "constant": false, - "id": 7892, - "mutability": "mutable", - "name": "_providerType", - "nameLocation": "6844:13:24", - "nodeType": "VariableDeclaration", - "scope": 8133, - "src": "6830:27:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 7891, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6830:6:24", + "expression": { + "id": 8747, + "name": "providersToReturn", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8703, + "src": "9626:17:24", "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8021_memory_ptr_$dyn_memory_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory[] memory" } }, - "visibility": "internal" + "functionReturnParameters": 8668, + "id": 8748, + "nodeType": "Return", + "src": "9619:24:24" } - ], - "src": "6734:129:24" + ] + }, + "functionSelector": "edc922a9", + "id": 8750, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getProviders", + "nameLocation": "8997:12:24", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8663, + "nodeType": "ParameterList", + "parameters": [], + "src": "9009:2:24" }, "returnParameters": { - "id": 7896, + "id": 8668, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 7895, + "id": 8667, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 8133, - "src": "6890:4:24", + "scope": 8750, + "src": "9035:26:24", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8021_memory_ptr_$dyn_memory_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider[]" }, "typeName": { - "id": 7894, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6890:4:24", + "baseType": { + "id": 8665, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 8664, + "name": "LiquidityProvider", + "nameLocations": [ + "9035:17:24" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 8021, + "src": "9035:17:24" + }, + "referencedDeclaration": 8021, + "src": "9035:17:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" + } + }, + "id": 8666, + "nodeType": "ArrayTypeName", + "src": "9035:19:24", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8021_storage_$dyn_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider[]" } }, "visibility": "internal" } ], - "src": "6889:6:24" + "src": "9034:28:24" }, - "scope": 10196, - "src": "6717:2171:24", - "stateMutability": "payable", + "scope": 10792, + "src": "8988:662:24", + "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 8213, + "id": 8786, "nodeType": "Block", - "src": "9008:622:24", + "src": "9749:221:24", "statements": [ - { - "assignments": [ - 8147 - ], - "declarations": [ - { - "constant": false, - "id": 8147, - "mutability": "mutable", - "name": "providersToReturn", - "nameLocation": "9045:17:24", - "nodeType": "VariableDeclaration", - "scope": 8213, - "src": "9018:44:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$7500_memory_ptr_$dyn_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider[]" - }, - "typeName": { - "baseType": { - "id": 8145, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 8144, - "name": "LiquidityProvider", - "nameLocations": [ - "9018:17:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 7500, - "src": "9018:17:24" - }, - "referencedDeclaration": 7500, - "src": "9018:17:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" - } - }, - "id": 8146, - "nodeType": "ArrayTypeName", - "src": "9018:19:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$7500_storage_$dyn_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider[]" - } - }, - "visibility": "internal" - } - ], - "id": 8155, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 8152, - "name": "providerIds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8136, - "src": "9102:11:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[] memory" - } - }, - "id": 8153, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9114:6:24", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "9102:18:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 8151, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "9065:23:24", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_LiquidityProvider_$7500_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (struct LiquidityBridgeContractV2.LiquidityProvider memory[] memory)" - }, - "typeName": { - "baseType": { - "id": 8149, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 8148, - "name": "LiquidityProvider", - "nameLocations": [ - "9069:17:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 7500, - "src": "9069:17:24" - }, - "referencedDeclaration": 7500, - "src": "9069:17:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" - } - }, - "id": 8150, - "nodeType": "ArrayTypeName", - "src": "9069:19:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$7500_storage_$dyn_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider[]" - } - } - }, - "id": 8154, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9065:65:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$7500_memory_ptr_$dyn_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "9018:112:24" - }, - { - "assignments": [ - 8157 - ], - "declarations": [ - { - "constant": false, - "id": 8157, - "mutability": "mutable", - "name": "count", - "nameLocation": "9145:5:24", - "nodeType": "VariableDeclaration", - "scope": 8213, - "src": "9140:10:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8156, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "9140:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 8159, - "initialValue": { - "hexValue": "30", - "id": 8158, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9153:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "9140:14:24" - }, { "body": { - "id": 8209, + "id": 8780, "nodeType": "Block", - "src": "9211:379:24", + "src": "9798:140:24", "statements": [ - { - "assignments": [ - 8172 - ], - "declarations": [ - { - "constant": false, - "id": 8172, - "mutability": "mutable", - "name": "id", - "nameLocation": "9230:2:24", - "nodeType": "VariableDeclaration", - "scope": 8209, - "src": "9225:7:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8171, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "9225:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 8176, - "initialValue": { - "baseExpression": { - "id": 8173, - "name": "providerIds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8136, - "src": "9235:11:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[] memory" - } - }, - "id": 8175, - "indexExpression": { - "id": 8174, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8161, - "src": "9247:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9235:14:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "9225:24:24" - }, { "condition": { "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_address", + "typeString": "address" }, - "id": 8195, + "id": 8773, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 8189, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 8178, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7650, - "src": "9298:18:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$7500_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" - } - }, - "id": 8180, - "indexExpression": { - "id": 8179, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8172, - "src": "9317:2:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9298:22:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" - } - }, - "id": 8181, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9321:8:24", - "memberName": "provider", - "nodeType": "MemberAccess", - "referencedDeclaration": 7491, - "src": "9298:31:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 8177, - "name": "isRegistered", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9823, - "src": "9285:12:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 8182, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9285:45:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 8184, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7650, - "src": "9376:18:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$7500_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" - } - }, - "id": 8186, - "indexExpression": { - "id": 8185, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8172, - "src": "9395:2:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9376:22:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" - } - }, - "id": 8187, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9399:8:24", - "memberName": "provider", - "nodeType": "MemberAccess", - "referencedDeclaration": 7491, - "src": "9376:31:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 8183, - "name": "isRegisteredForPegout", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9843, - "src": "9354:21:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 8188, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9354:54:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "9285:123:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 8190, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "9284:125:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { "expression": { "baseExpression": { - "id": 8191, + "id": 8768, "name": "liquidityProviders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7650, - "src": "9429:18:24", + "referencedDeclaration": 8171, + "src": "9816:18:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$7500_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8021_storage_$", "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" } }, - "id": 8193, + "id": 8770, "indexExpression": { - "id": 8192, - "name": "id", + "id": 8769, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8172, - "src": "9448:2:24", + "referencedDeclaration": 8759, + "src": "9835:1:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -58135,165 +58158,97 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9429:22:24", + "src": "9816:21:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage", + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage", "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" } }, - "id": 8194, + "id": 8771, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "9452:6:24", - "memberName": "status", + "memberLocation": "9838:8:24", + "memberName": "provider", "nodeType": "MemberAccess", - "referencedDeclaration": 7497, - "src": "9429:29:24", + "referencedDeclaration": 8012, + "src": "9816:30:24", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 8772, + "name": "providerAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8752, + "src": "9850:15:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" } }, - "src": "9284:174:24", + "src": "9816:49:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 8208, + "id": 8779, "nodeType": "IfStatement", - "src": "9263:317:24", + "src": "9812:116:24", "trueBody": { - "id": 8207, + "id": 8778, "nodeType": "Block", - "src": "9473:107:24", + "src": "9867:61:24", "statements": [ { "expression": { - "id": 8202, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 8196, - "name": "providersToReturn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8147, - "src": "9491:17:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$7500_memory_ptr_$dyn_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory[] memory" - } - }, - "id": 8198, - "indexExpression": { - "id": 8197, - "name": "count", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8157, - "src": "9509:5:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9491:24:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 8199, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7650, - "src": "9518:18:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$7500_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" - } - }, - "id": 8201, - "indexExpression": { - "id": 8200, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8172, - "src": "9537:2:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9518:22:24", + "baseExpression": { + "id": 8774, + "name": "liquidityProviders", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8171, + "src": "9892:18:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8021_storage_$", + "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" } }, - "src": "9491:49:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory" - } - }, - "id": 8203, - "nodeType": "ExpressionStatement", - "src": "9491:49:24" - }, - { - "expression": { - "id": 8205, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "9558:7:24", - "subExpression": { - "id": 8204, - "name": "count", + "id": 8776, + "indexExpression": { + "id": 8775, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8157, - "src": "9558:5:24", + "referencedDeclaration": 8759, + "src": "9911:1:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9892:21:24", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" } }, - "id": 8206, - "nodeType": "ExpressionStatement", - "src": "9558:7:24" + "functionReturnParameters": 8757, + "id": 8777, + "nodeType": "Return", + "src": "9885:28:24" } ] } @@ -58305,73 +58260,58 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8167, + "id": 8764, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8164, + "id": 8762, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8161, - "src": "9182:1:24", + "referencedDeclaration": 8759, + "src": "9776:1:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "<", + "operator": "<=", "rightExpression": { - "expression": { - "id": 8165, - "name": "providerIds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8136, - "src": "9186:11:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[] memory" - } - }, - "id": 8166, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9198:6:24", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "9186:18:24", + "id": 8763, + "name": "providerId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8192, + "src": "9781:10:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9182:22:24", + "src": "9776:15:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 8210, + "id": 8781, "initializationExpression": { "assignments": [ - 8161 + 8759 ], "declarations": [ { "constant": false, - "id": 8161, + "id": 8759, "mutability": "mutable", "name": "i", - "nameLocation": "9175:1:24", + "nameLocation": "9769:1:24", "nodeType": "VariableDeclaration", - "scope": 8210, - "src": "9170:6:24", + "scope": 8781, + "src": "9764:6:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -58379,10 +58319,10 @@ "typeString": "uint256" }, "typeName": { - "id": 8160, + "id": 8758, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9170:4:24", + "src": "9764:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -58391,29 +58331,29 @@ "visibility": "internal" } ], - "id": 8163, + "id": 8761, "initialValue": { - "hexValue": "30", - "id": 8162, + "hexValue": "31", + "id": 8760, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9179:1:24", + "src": "9773:1:24", "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" }, - "value": "0" + "value": "1" }, "nodeType": "VariableDeclarationStatement", - "src": "9170:10:24" + "src": "9764:10:24" }, "loopExpression": { "expression": { - "id": 8169, + "id": 8766, "isConstant": false, "isLValue": false, "isPure": false, @@ -58421,14 +58361,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "9206:3:24", + "src": "9793:3:24", "subExpression": { - "id": 8168, + "id": 8765, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8161, - "src": "9206:1:24", + "referencedDeclaration": 8759, + "src": "9793:1:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -58439,192 +58379,533 @@ "typeString": "uint256" } }, - "id": 8170, + "id": 8767, "nodeType": "ExpressionStatement", - "src": "9206:3:24" + "src": "9793:3:24" }, "nodeType": "ForStatement", - "src": "9165:425:24" + "src": "9759:179:24" }, { "expression": { - "id": 8211, - "name": "providersToReturn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8147, - "src": "9606:17:24", + "arguments": [ + { + "hexValue": "4c4243303031", + "id": 8783, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9954:8:24", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c", + "typeString": "literal_string \"LBC001\"" + }, + "value": "LBC001" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c", + "typeString": "literal_string \"LBC001\"" + } + ], + "id": 8782, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967277, + 4294967277 + ], + "referencedDeclaration": 4294967277, + "src": "9947:6:24", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 8784, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9947:16:24", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$7500_memory_ptr_$dyn_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory[] memory" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "functionReturnParameters": 8142, - "id": 8212, - "nodeType": "Return", - "src": "9599:24:24" + "id": 8785, + "nodeType": "ExpressionStatement", + "src": "9947:16:24" } ] }, - "functionSelector": "668dbd83", - "id": 8214, + "functionSelector": "55f21eb7", + "id": 8787, "implemented": true, "kind": "function", "modifiers": [], - "name": "getProviders", - "nameLocation": "8903:12:24", + "name": "getProvider", + "nameLocation": "9665:11:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 8137, + "id": 8753, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 8136, + "id": 8752, "mutability": "mutable", - "name": "providerIds", - "nameLocation": "8939:11:24", + "name": "providerAddress", + "nameLocation": "9685:15:24", "nodeType": "VariableDeclaration", - "scope": 8214, - "src": "8925:25:24", + "scope": 8787, + "src": "9677:23:24", "stateVariable": false, - "storageLocation": "memory", + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[]" + "typeIdentifier": "t_address", + "typeString": "address" }, "typeName": { - "baseType": { - "id": 8134, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "8925:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8135, - "nodeType": "ArrayTypeName", - "src": "8925:6:24", + "id": 8751, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9677:7:24", + "stateMutability": "nonpayable", "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" + "typeIdentifier": "t_address", + "typeString": "address" } }, "visibility": "internal" } ], - "src": "8915:41:24" + "src": "9676:25:24" }, "returnParameters": { - "id": 8142, + "id": 8757, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 8141, + "id": 8756, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 8214, - "src": "8980:26:24", + "scope": 8787, + "src": "9723:24:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$7500_memory_ptr_$dyn_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider[]" + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_memory_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" }, "typeName": { - "baseType": { - "id": 8139, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 8138, - "name": "LiquidityProvider", - "nameLocations": [ - "8980:17:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 7500, - "src": "8980:17:24" + "id": 8755, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 8754, + "name": "LiquidityProvider", + "nameLocations": [ + "9723:17:24" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 8021, + "src": "9723:17:24" + }, + "referencedDeclaration": 8021, + "src": "9723:17:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" + } + }, + "visibility": "internal" + } + ], + "src": "9722:26:24" + }, + "scope": 10792, + "src": "9656:314:24", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 8809, + "nodeType": "Block", + "src": "10056:102:24", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 8807, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 8803, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "expression": { + "id": 8796, + "name": "lp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8790, + "src": "10087:2:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" + } + }, + "id": 8797, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10090:8:24", + "memberName": "provider", + "nodeType": "MemberAccess", + "referencedDeclaration": 8012, + "src": "10087:11:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 8795, + "name": "isRegistered", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10419, + "src": "10074:12:24", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", + "typeString": "function (address) view returns (bool)" + } + }, + "id": 8798, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10074:25:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "expression": { + "id": 8800, + "name": "lp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8790, + "src": "10125:2:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" + } + }, + "id": 8801, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10128:8:24", + "memberName": "provider", + "nodeType": "MemberAccess", + "referencedDeclaration": 8012, + "src": "10125:11:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 8799, + "name": "isRegisteredForPegout", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10439, + "src": "10103:21:24", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", + "typeString": "function (address) view returns (bool)" + } + }, + "id": 8802, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10103:34:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "10074:63:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 8804, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "10073:65:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "expression": { + "id": 8805, + "name": "lp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8790, + "src": "10142:2:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" + } }, - "referencedDeclaration": 7500, - "src": "8980:17:24", + "id": 8806, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10145:6:24", + "memberName": "status", + "nodeType": "MemberAccess", + "referencedDeclaration": 8018, + "src": "10142:9:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 8140, - "nodeType": "ArrayTypeName", - "src": "8980:19:24", + "src": "10073:78:24", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$7500_storage_$dyn_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider[]" + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 8794, + "id": 8808, + "nodeType": "Return", + "src": "10066:85:24" + } + ] + }, + "id": 8810, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "shouldBeListed", + "nameLocation": "9985:14:24", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 8791, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8790, + "mutability": "mutable", + "name": "lp", + "nameLocation": "10026:2:24", + "nodeType": "VariableDeclaration", + "scope": 8810, + "src": "10000:28:24", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" + }, + "typeName": { + "id": 8789, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 8788, + "name": "LiquidityProvider", + "nameLocations": [ + "10000:17:24" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 8021, + "src": "10000:17:24" + }, + "referencedDeclaration": 8021, + "src": "10000:17:24", + "typeDescriptions": { + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", + "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" + } + }, + "visibility": "internal" + } + ], + "src": "9999:30:24" + }, + "returnParameters": { + "id": 8794, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8793, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 8810, + "src": "10051:4:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8792, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10051:4:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" } }, "visibility": "internal" } ], - "src": "8979:28:24" + "src": "10050:6:24" }, - "scope": 10196, - "src": "8894:736:24", + "scope": 10792, + "src": "9976:182:24", "stateMutability": "view", "virtual": false, - "visibility": "external" + "visibility": "private" }, { "body": { - "id": 8235, + "id": 8831, "nodeType": "Block", - "src": "9771:108:24", + "src": "10299:108:24", "statements": [ { "expression": { - "id": 8226, + "id": 8822, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 8220, + "id": 8816, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7641, - "src": "9781:10:24", + "referencedDeclaration": 8162, + "src": "10309:10:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8223, + "id": 8819, "indexExpression": { "expression": { - "id": 8221, + "id": 8817, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "9792:3:24", + "src": "10320:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8222, + "id": 8818, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9796:6:24", + "memberLocation": "10324:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "9792:10:24", + "src": "10320:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -58635,7 +58916,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "9781:22:24", + "src": "10309:22:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -58645,66 +58926,66 @@ "operator": "+=", "rightHandSide": { "expression": { - "id": 8224, + "id": 8820, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "9807:3:24", + "src": "10335:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8225, + "id": 8821, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9811:5:24", + "memberLocation": "10339:5:24", "memberName": "value", "nodeType": "MemberAccess", - "src": "9807:9:24", + "src": "10335:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9781:35:24", + "src": "10309:35:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 8227, + "id": 8823, "nodeType": "ExpressionStatement", - "src": "9781:35:24" + "src": "10309:35:24" }, { "eventCall": { "arguments": [ { "expression": { - "id": 8229, + "id": 8825, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "9850:3:24", + "src": "10378:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8230, + "id": 8826, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9854:6:24", + "memberLocation": "10382:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "9850:10:24", + "src": "10378:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -58712,26 +58993,26 @@ }, { "expression": { - "id": 8231, + "id": 8827, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "9862:3:24", + "src": "10390:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8232, + "id": 8828, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9866:5:24", + "memberLocation": "10394:5:24", "memberName": "value", "nodeType": "MemberAccess", - "src": "9862:9:24", + "src": "10390:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -58749,18 +59030,18 @@ "typeString": "uint256" } ], - "id": 8228, + "id": 8824, "name": "CollateralIncrease", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7514, - "src": "9831:18:24", + "referencedDeclaration": 8035, + "src": "10359:18:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 8233, + "id": 8829, "isConstant": false, "isLValue": false, "isPure": false, @@ -58769,117 +59050,117 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "9831:41:24", + "src": "10359:41:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8234, + "id": 8830, "nodeType": "EmitStatement", - "src": "9826:46:24" + "src": "10354:46:24" } ] }, "documentation": { - "id": 8215, + "id": 8811, "nodeType": "StructuredDocumentation", - "src": "9636:73:24", + "src": "10164:73:24", "text": "@dev Increases the amount of collateral of the sender" }, "functionSelector": "9e816999", - "id": 8236, + "id": 8832, "implemented": true, "kind": "function", "modifiers": [ { - "id": 8218, + "id": 8814, "kind": "modifierInvocation", "modifierName": { - "id": 8217, + "id": 8813, "name": "onlyRegistered", "nameLocations": [ - "9756:14:24" + "10284:14:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 7705, - "src": "9756:14:24" + "referencedDeclaration": 8226, + "src": "10284:14:24" }, "nodeType": "ModifierInvocation", - "src": "9756:14:24" + "src": "10284:14:24" } ], "name": "addCollateral", - "nameLocation": "9723:13:24", + "nameLocation": "10251:13:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 8216, + "id": 8812, "nodeType": "ParameterList", "parameters": [], - "src": "9736:2:24" + "src": "10264:2:24" }, "returnParameters": { - "id": 8219, + "id": 8815, "nodeType": "ParameterList", "parameters": [], - "src": "9771:0:24" + "src": "10299:0:24" }, - "scope": 10196, - "src": "9714:165:24", + "scope": 10792, + "src": "10242:165:24", "stateMutability": "payable", "virtual": false, "visibility": "external" }, { "body": { - "id": 8256, + "id": 8852, "nodeType": "Block", - "src": "9957:120:24", + "src": "10485:120:24", "statements": [ { "expression": { - "id": 8247, + "id": 8843, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 8241, + "id": 8837, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7645, - "src": "9967:16:24", + "referencedDeclaration": 8166, + "src": "10495:16:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8244, + "id": 8840, "indexExpression": { "expression": { - "id": 8242, + "id": 8838, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "9984:3:24", + "src": "10512:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8243, + "id": 8839, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "9988:6:24", + "memberLocation": "10516:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "9984:10:24", + "src": "10512:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -58890,7 +59171,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "9967:28:24", + "src": "10495:28:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -58900,66 +59181,66 @@ "operator": "+=", "rightHandSide": { "expression": { - "id": 8245, + "id": 8841, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "9999:3:24", + "src": "10527:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8246, + "id": 8842, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10003:5:24", + "memberLocation": "10531:5:24", "memberName": "value", "nodeType": "MemberAccess", - "src": "9999:9:24", + "src": "10527:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9967:41:24", + "src": "10495:41:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 8248, + "id": 8844, "nodeType": "ExpressionStatement", - "src": "9967:41:24" + "src": "10495:41:24" }, { "eventCall": { "arguments": [ { "expression": { - "id": 8250, + "id": 8846, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "10048:3:24", + "src": "10576:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8251, + "id": 8847, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10052:6:24", + "memberLocation": "10580:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "10048:10:24", + "src": "10576:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -58967,26 +59248,26 @@ }, { "expression": { - "id": 8252, + "id": 8848, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "10060:3:24", + "src": "10588:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8253, + "id": 8849, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10064:5:24", + "memberLocation": "10592:5:24", "memberName": "value", "nodeType": "MemberAccess", - "src": "10060:9:24", + "src": "10588:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -59004,18 +59285,18 @@ "typeString": "uint256" } ], - "id": 8249, + "id": 8845, "name": "PegoutCollateralIncrease", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7520, - "src": "10023:24:24", + "referencedDeclaration": 8041, + "src": "10551:24:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 8254, + "id": 8850, "isConstant": false, "isLValue": false, "isPure": false, @@ -59024,93 +59305,93 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10023:47:24", + "src": "10551:47:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8255, + "id": 8851, "nodeType": "EmitStatement", - "src": "10018:52:24" + "src": "10546:52:24" } ] }, "functionSelector": "4198687e", - "id": 8257, + "id": 8853, "implemented": true, "kind": "function", "modifiers": [ { - "id": 8239, + "id": 8835, "kind": "modifierInvocation", "modifierName": { - "id": 8238, + "id": 8834, "name": "onlyRegisteredForPegout", "nameLocations": [ - "9933:23:24" + "10461:23:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 7717, - "src": "9933:23:24" + "referencedDeclaration": 8238, + "src": "10461:23:24" }, "nodeType": "ModifierInvocation", - "src": "9933:23:24" + "src": "10461:23:24" } ], "name": "addPegoutCollateral", - "nameLocation": "9894:19:24", + "nameLocation": "10422:19:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 8237, + "id": 8833, "nodeType": "ParameterList", "parameters": [], - "src": "9913:2:24" + "src": "10441:2:24" }, "returnParameters": { - "id": 8240, + "id": 8836, "nodeType": "ParameterList", "parameters": [], - "src": "9957:0:24" + "src": "10485:0:24" }, - "scope": 10196, - "src": "9885:192:24", + "scope": 10792, + "src": "10413:192:24", "stateMutability": "payable", "virtual": false, "visibility": "external" }, { "body": { - "id": 8270, + "id": 8866, "nodeType": "Block", - "src": "10199:55:24", + "src": "10727:55:24", "statements": [ { "expression": { "arguments": [ { "expression": { - "id": 8264, + "id": 8860, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "10225:3:24", + "src": "10753:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8265, + "id": 8861, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10229:6:24", + "memberLocation": "10757:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "10225:10:24", + "src": "10753:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -59118,26 +59399,26 @@ }, { "expression": { - "id": 8266, + "id": 8862, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "10237:3:24", + "src": "10765:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8267, + "id": 8863, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10241:5:24", + "memberLocation": "10769:5:24", "memberName": "value", "nodeType": "MemberAccess", - "src": "10237:9:24", + "src": "10765:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -59155,18 +59436,18 @@ "typeString": "uint256" } ], - "id": 8263, + "id": 8859, "name": "increaseBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9783, - "src": "10209:15:24", + "referencedDeclaration": 10379, + "src": "10737:15:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 8268, + "id": 8864, "isConstant": false, "isLValue": false, "isPure": false, @@ -59175,73 +59456,73 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10209:38:24", + "src": "10737:38:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8269, + "id": 8865, "nodeType": "ExpressionStatement", - "src": "10209:38:24" + "src": "10737:38:24" } ] }, "documentation": { - "id": 8258, + "id": 8854, "nodeType": "StructuredDocumentation", - "src": "10083:60:24", + "src": "10611:60:24", "text": "@dev Increases the balance of the sender" }, "functionSelector": "d0e30db0", - "id": 8271, + "id": 8867, "implemented": true, "kind": "function", "modifiers": [ { - "id": 8261, + "id": 8857, "kind": "modifierInvocation", "modifierName": { - "id": 8260, + "id": 8856, "name": "onlyRegistered", "nameLocations": [ - "10184:14:24" + "10712:14:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 7705, - "src": "10184:14:24" + "referencedDeclaration": 8226, + "src": "10712:14:24" }, "nodeType": "ModifierInvocation", - "src": "10184:14:24" + "src": "10712:14:24" } ], "name": "deposit", - "nameLocation": "10157:7:24", + "nameLocation": "10685:7:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 8259, + "id": 8855, "nodeType": "ParameterList", "parameters": [], - "src": "10164:2:24" + "src": "10692:2:24" }, "returnParameters": { - "id": 8262, + "id": 8858, "nodeType": "ParameterList", "parameters": [], - "src": "10199:0:24" + "src": "10727:0:24" }, - "scope": 10196, - "src": "10148:106:24", + "scope": 10792, + "src": "10676:106:24", "stateMutability": "payable", "virtual": false, "visibility": "external" }, { "body": { - "id": 8315, + "id": 8911, "nodeType": "Block", - "src": "10400:249:24", + "src": "10928:249:24", "statements": [ { "expression": { @@ -59251,47 +59532,47 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8283, + "id": 8879, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 8278, + "id": 8874, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7637, - "src": "10418:8:24", + "referencedDeclaration": 8158, + "src": "10946:8:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8281, + "id": 8877, "indexExpression": { "expression": { - "id": 8279, + "id": 8875, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "10427:3:24", + "src": "10955:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8280, + "id": 8876, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10431:6:24", + "memberLocation": "10959:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "10427:10:24", + "src": "10955:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -59302,7 +59583,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10418:20:24", + "src": "10946:20:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -59311,18 +59592,18 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 8282, + "id": 8878, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8274, - "src": "10442:6:24", + "referencedDeclaration": 8870, + "src": "10970:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10418:30:24", + "src": "10946:30:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -59330,14 +59611,14 @@ }, { "hexValue": "4c4243303139", - "id": 8284, + "id": 8880, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "10450:8:24", + "src": "10978:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909", "typeString": "literal_string \"LBC019\"" @@ -59356,7 +59637,7 @@ "typeString": "literal_string \"LBC019\"" } ], - "id": 8277, + "id": 8873, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -59364,13 +59645,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "10410:7:24", + "src": "10938:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8285, + "id": 8881, "isConstant": false, "isLValue": false, "isPure": false, @@ -59379,60 +59660,60 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10410:49:24", + "src": "10938:49:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8286, + "id": 8882, "nodeType": "ExpressionStatement", - "src": "10410:49:24" + "src": "10938:49:24" }, { "expression": { - "id": 8292, + "id": 8888, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 8287, + "id": 8883, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7637, - "src": "10469:8:24", + "referencedDeclaration": 8158, + "src": "10997:8:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8290, + "id": 8886, "indexExpression": { "expression": { - "id": 8288, + "id": 8884, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "10478:3:24", + "src": "11006:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8289, + "id": 8885, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10482:6:24", + "memberLocation": "11010:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "10478:10:24", + "src": "11006:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -59443,7 +59724,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "10469:20:24", + "src": "10997:20:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -59452,42 +59733,42 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 8291, + "id": 8887, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8274, - "src": "10493:6:24", + "referencedDeclaration": 8870, + "src": "11021:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10469:30:24", + "src": "10997:30:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 8293, + "id": 8889, "nodeType": "ExpressionStatement", - "src": "10469:30:24" + "src": "10997:30:24" }, { "assignments": [ - 8295, + 8891, null ], "declarations": [ { "constant": false, - "id": 8295, + "id": 8891, "mutability": "mutable", "name": "success", - "nameLocation": "10515:7:24", + "nameLocation": "11043:7:24", "nodeType": "VariableDeclaration", - "scope": 8315, - "src": "10510:12:24", + "scope": 8911, + "src": "11038:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -59495,10 +59776,10 @@ "typeString": "bool" }, "typeName": { - "id": 8294, + "id": 8890, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "10510:4:24", + "src": "11038:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -59508,19 +59789,19 @@ }, null ], - "id": 8303, + "id": 8899, "initialValue": { "arguments": [ { "hexValue": "", - "id": 8301, + "id": 8897, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "10558:2:24", + "src": "11086:2:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" @@ -59544,46 +59825,46 @@ ], "expression": { "expression": { - "id": 8296, + "id": 8892, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "10527:3:24", + "src": "11055:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8297, + "id": 8893, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10531:6:24", + "memberLocation": "11059:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "10527:10:24", + "src": "11055:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 8298, + "id": 8894, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10538:4:24", + "memberLocation": "11066:4:24", "memberName": "call", "nodeType": "MemberAccess", - "src": "10527:15:24", + "src": "11055:15:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 8300, + "id": 8896, "isConstant": false, "isLValue": false, "isPure": false, @@ -59594,25 +59875,25 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 8299, + "id": 8895, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8274, - "src": "10550:6:24", + "referencedDeclaration": 8870, + "src": "11078:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "src": "10527:30:24", + "src": "11055:30:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 8302, + "id": 8898, "isConstant": false, "isLValue": false, "isPure": false, @@ -59621,7 +59902,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10527:34:24", + "src": "11055:34:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", @@ -59629,18 +59910,18 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "10509:52:24" + "src": "11037:52:24" }, { "expression": { "arguments": [ { - "id": 8305, + "id": 8901, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8295, - "src": "10579:7:24", + "referencedDeclaration": 8891, + "src": "11107:7:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -59648,14 +59929,14 @@ }, { "hexValue": "4c4243303230", - "id": 8306, + "id": 8902, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "10588:8:24", + "src": "11116:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9", "typeString": "literal_string \"LBC020\"" @@ -59674,7 +59955,7 @@ "typeString": "literal_string \"LBC020\"" } ], - "id": 8304, + "id": 8900, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -59682,13 +59963,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "10571:7:24", + "src": "11099:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8307, + "id": 8903, "isConstant": false, "isLValue": false, "isPure": false, @@ -59697,54 +59978,54 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10571:26:24", + "src": "11099:26:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8308, + "id": 8904, "nodeType": "ExpressionStatement", - "src": "10571:26:24" + "src": "11099:26:24" }, { "eventCall": { "arguments": [ { "expression": { - "id": 8310, + "id": 8906, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "10623:3:24", + "src": "11151:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8311, + "id": 8907, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10627:6:24", + "memberLocation": "11155:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "10623:10:24", + "src": "11151:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 8312, + "id": 8908, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8274, - "src": "10635:6:24", + "referencedDeclaration": 8870, + "src": "11163:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -59762,18 +60043,18 @@ "typeString": "uint256" } ], - "id": 8309, + "id": 8905, "name": "Withdrawal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7526, - "src": "10612:10:24", + "referencedDeclaration": 8047, + "src": "11140:10:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 8313, + "id": 8909, "isConstant": false, "isLValue": false, "isPure": false, @@ -59782,46 +60063,46 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10612:30:24", + "src": "11140:30:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8314, + "id": 8910, "nodeType": "EmitStatement", - "src": "10607:35:24" + "src": "11135:35:24" } ] }, "documentation": { - "id": 8272, + "id": 8868, "nodeType": "StructuredDocumentation", - "src": "10260:92:24", + "src": "10788:92:24", "text": "@dev Used to withdraw funds\n@param amount The amount to withdraw" }, "functionSelector": "2e1a7d4d", - "id": 8316, + "id": 8912, "implemented": true, "kind": "function", "modifiers": [], "name": "withdraw", - "nameLocation": "10366:8:24", + "nameLocation": "10894:8:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 8275, + "id": 8871, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 8274, + "id": 8870, "mutability": "mutable", "name": "amount", - "nameLocation": "10383:6:24", + "nameLocation": "10911:6:24", "nodeType": "VariableDeclaration", - "scope": 8316, - "src": "10375:14:24", + "scope": 8912, + "src": "10903:14:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -59829,10 +60110,10 @@ "typeString": "uint256" }, "typeName": { - "id": 8273, + "id": 8869, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10375:7:24", + "src": "10903:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -59841,25 +60122,25 @@ "visibility": "internal" } ], - "src": "10374:16:24" + "src": "10902:16:24" }, "returnParameters": { - "id": 8276, + "id": 8872, "nodeType": "ParameterList", "parameters": [], - "src": "10400:0:24" + "src": "10928:0:24" }, - "scope": 10196, - "src": "10357:292:24", + "scope": 10792, + "src": "10885:292:24", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 8399, + "id": 8995, "nodeType": "Block", - "src": "10775:566:24", + "src": "11303:566:24", "statements": [ { "expression": { @@ -59869,47 +60150,47 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8328, + "id": 8924, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 8323, + "id": 8919, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7659, - "src": "10793:19:24", + "referencedDeclaration": 8180, + "src": "11321:19:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8326, + "id": 8922, "indexExpression": { "expression": { - "id": 8324, + "id": 8920, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "10813:3:24", + "src": "11341:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8325, + "id": 8921, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10817:6:24", + "memberLocation": "11345:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "10813:10:24", + "src": "11341:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -59920,7 +60201,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10793:31:24", + "src": "11321:31:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -59930,21 +60211,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 8327, + "id": 8923, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10827:1:24", + "src": "11355:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "10793:35:24", + "src": "11321:35:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -59952,14 +60233,14 @@ }, { "hexValue": "4c4243303231", - "id": 8329, + "id": 8925, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "10830:8:24", + "src": "11358:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ccfdeeda37cff52b8b53c7f459ead001a00858d8cd279133dc1e599c6257c485", "typeString": "literal_string \"LBC021\"" @@ -59978,7 +60259,7 @@ "typeString": "literal_string \"LBC021\"" } ], - "id": 8322, + "id": 8918, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -59986,13 +60267,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "10785:7:24", + "src": "11313:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8330, + "id": 8926, "isConstant": false, "isLValue": false, "isPure": false, @@ -60001,16 +60282,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10785:54:24", + "src": "11313:54:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8331, + "id": 8927, "nodeType": "ExpressionStatement", - "src": "10785:54:24" + "src": "11313:54:24" }, { "expression": { @@ -60020,7 +60301,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8341, + "id": 8937, "isConstant": false, "isLValue": false, "isPure": false, @@ -60030,33 +60311,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8339, + "id": 8935, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 8333, + "id": 8929, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967292, - "src": "10870:5:24", + "src": "11398:5:24", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 8334, + "id": 8930, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10876:6:24", + "memberLocation": "11404:6:24", "memberName": "number", "nodeType": "MemberAccess", - "src": "10870:12:24", + "src": "11398:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -60066,40 +60347,40 @@ "operator": "-", "rightExpression": { "baseExpression": { - "id": 8335, + "id": 8931, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7659, - "src": "10885:19:24", + "referencedDeclaration": 8180, + "src": "11413:19:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8338, + "id": 8934, "indexExpression": { "expression": { - "id": 8336, + "id": 8932, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "10905:3:24", + "src": "11433:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8337, + "id": 8933, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "10909:6:24", + "memberLocation": "11437:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "10905:10:24", + "src": "11433:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -60110,13 +60391,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10885:31:24", + "src": "11413:31:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10870:46:24", + "src": "11398:46:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -60125,18 +60406,18 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 8340, + "id": 8936, "name": "resignDelayInBlocks", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7667, - "src": "10932:19:24", + "referencedDeclaration": 8188, + "src": "11460:19:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "10870:81:24", + "src": "11398:81:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -60144,14 +60425,14 @@ }, { "hexValue": "4c4243303232", - "id": 8342, + "id": 8938, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "10965:8:24", + "src": "11493:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ae5a5bd2536c79a56736074670f517df1b8a17deb822b59dfa1648888074b4cc", "typeString": "literal_string \"LBC022\"" @@ -60170,7 +60451,7 @@ "typeString": "literal_string \"LBC022\"" } ], - "id": 8332, + "id": 8928, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -60178,13 +60459,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "10849:7:24", + "src": "11377:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8343, + "id": 8939, "isConstant": false, "isLValue": false, "isPure": false, @@ -60193,31 +60474,31 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "10849:134:24", + "src": "11377:134:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8344, + "id": 8940, "nodeType": "ExpressionStatement", - "src": "10849:134:24" + "src": "11377:134:24" }, { "assignments": [ - 8346 + 8942 ], "declarations": [ { "constant": false, - "id": 8346, + "id": 8942, "mutability": "mutable", "name": "amount", - "nameLocation": "10998:6:24", + "nameLocation": "11526:6:24", "nodeType": "VariableDeclaration", - "scope": 8399, - "src": "10993:11:24", + "scope": 8995, + "src": "11521:11:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -60225,10 +60506,10 @@ "typeString": "uint256" }, "typeName": { - "id": 8345, + "id": 8941, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10993:4:24", + "src": "11521:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -60237,53 +60518,53 @@ "visibility": "internal" } ], - "id": 8356, + "id": 8952, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8355, + "id": 8951, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 8347, + "id": 8943, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7641, - "src": "11007:10:24", + "referencedDeclaration": 8162, + "src": "11535:10:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8350, + "id": 8946, "indexExpression": { "expression": { - "id": 8348, + "id": 8944, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "11018:3:24", + "src": "11546:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8349, + "id": 8945, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11022:6:24", + "memberLocation": "11550:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "11018:10:24", + "src": "11546:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -60294,7 +60575,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11007:22:24", + "src": "11535:22:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -60304,40 +60585,40 @@ "operator": "+", "rightExpression": { "baseExpression": { - "id": 8351, + "id": 8947, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7645, - "src": "11032:16:24", + "referencedDeclaration": 8166, + "src": "11560:16:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8354, + "id": 8950, "indexExpression": { "expression": { - "id": 8352, + "id": 8948, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "11049:3:24", + "src": "11577:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8353, + "id": 8949, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11053:6:24", + "memberLocation": "11581:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "11049:10:24", + "src": "11577:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -60348,64 +60629,64 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11032:28:24", + "src": "11560:28:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11007:53:24", + "src": "11535:53:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "10993:67:24" + "src": "11521:67:24" }, { "expression": { - "id": 8362, + "id": 8958, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 8357, + "id": 8953, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7645, - "src": "11070:16:24", + "referencedDeclaration": 8166, + "src": "11598:16:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8360, + "id": 8956, "indexExpression": { "expression": { - "id": 8358, + "id": 8954, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "11087:3:24", + "src": "11615:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8359, + "id": 8955, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11091:6:24", + "memberLocation": "11619:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "11087:10:24", + "src": "11615:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -60416,7 +60697,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "11070:28:24", + "src": "11598:28:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -60426,73 +60707,73 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 8361, + "id": 8957, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11101:1:24", + "src": "11629:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "11070:32:24", + "src": "11598:32:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 8363, + "id": 8959, "nodeType": "ExpressionStatement", - "src": "11070:32:24" + "src": "11598:32:24" }, { "expression": { - "id": 8369, + "id": 8965, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 8364, + "id": 8960, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7641, - "src": "11112:10:24", + "referencedDeclaration": 8162, + "src": "11640:10:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8367, + "id": 8963, "indexExpression": { "expression": { - "id": 8365, + "id": 8961, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "11123:3:24", + "src": "11651:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8366, + "id": 8962, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11127:6:24", + "memberLocation": "11655:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "11123:10:24", + "src": "11651:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -60503,7 +60784,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "11112:22:24", + "src": "11640:22:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -60513,73 +60794,73 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 8368, + "id": 8964, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11137:1:24", + "src": "11665:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "11112:26:24", + "src": "11640:26:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 8370, + "id": 8966, "nodeType": "ExpressionStatement", - "src": "11112:26:24" + "src": "11640:26:24" }, { "expression": { - "id": 8376, + "id": 8972, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 8371, + "id": 8967, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7659, - "src": "11148:19:24", + "referencedDeclaration": 8180, + "src": "11676:19:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8374, + "id": 8970, "indexExpression": { "expression": { - "id": 8372, + "id": 8968, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "11168:3:24", + "src": "11696:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8373, + "id": 8969, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11172:6:24", + "memberLocation": "11700:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "11168:10:24", + "src": "11696:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -60590,7 +60871,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "11148:31:24", + "src": "11676:31:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -60600,45 +60881,45 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 8375, + "id": 8971, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11182:1:24", + "src": "11710:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "11148:35:24", + "src": "11676:35:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 8377, + "id": 8973, "nodeType": "ExpressionStatement", - "src": "11148:35:24" + "src": "11676:35:24" }, { "assignments": [ - 8379, + 8975, null ], "declarations": [ { "constant": false, - "id": 8379, + "id": 8975, "mutability": "mutable", "name": "success", - "nameLocation": "11199:7:24", + "nameLocation": "11727:7:24", "nodeType": "VariableDeclaration", - "scope": 8399, - "src": "11194:12:24", + "scope": 8995, + "src": "11722:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -60646,10 +60927,10 @@ "typeString": "bool" }, "typeName": { - "id": 8378, + "id": 8974, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "11194:4:24", + "src": "11722:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -60659,19 +60940,19 @@ }, null ], - "id": 8387, + "id": 8983, "initialValue": { "arguments": [ { "hexValue": "", - "id": 8385, + "id": 8981, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "11242:2:24", + "src": "11770:2:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" @@ -60695,46 +60976,46 @@ ], "expression": { "expression": { - "id": 8380, + "id": 8976, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "11211:3:24", + "src": "11739:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8381, + "id": 8977, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11215:6:24", + "memberLocation": "11743:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "11211:10:24", + "src": "11739:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 8382, + "id": 8978, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11222:4:24", + "memberLocation": "11750:4:24", "memberName": "call", "nodeType": "MemberAccess", - "src": "11211:15:24", + "src": "11739:15:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 8384, + "id": 8980, "isConstant": false, "isLValue": false, "isPure": false, @@ -60745,25 +61026,25 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 8383, + "id": 8979, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8346, - "src": "11234:6:24", + "referencedDeclaration": 8942, + "src": "11762:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "src": "11211:30:24", + "src": "11739:30:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 8386, + "id": 8982, "isConstant": false, "isLValue": false, "isPure": false, @@ -60772,7 +61053,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11211:34:24", + "src": "11739:34:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", @@ -60780,18 +61061,18 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "11193:52:24" + "src": "11721:52:24" }, { "expression": { "arguments": [ { - "id": 8389, + "id": 8985, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8379, - "src": "11263:7:24", + "referencedDeclaration": 8975, + "src": "11791:7:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -60799,14 +61080,14 @@ }, { "hexValue": "4c4243303230", - "id": 8390, + "id": 8986, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "11272:8:24", + "src": "11800:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9", "typeString": "literal_string \"LBC020\"" @@ -60825,7 +61106,7 @@ "typeString": "literal_string \"LBC020\"" } ], - "id": 8388, + "id": 8984, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -60833,13 +61114,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "11255:7:24", + "src": "11783:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8391, + "id": 8987, "isConstant": false, "isLValue": false, "isPure": false, @@ -60848,54 +61129,54 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11255:26:24", + "src": "11783:26:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8392, + "id": 8988, "nodeType": "ExpressionStatement", - "src": "11255:26:24" + "src": "11783:26:24" }, { "eventCall": { "arguments": [ { "expression": { - "id": 8394, + "id": 8990, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "11315:3:24", + "src": "11843:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8395, + "id": 8991, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11319:6:24", + "memberLocation": "11847:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "11315:10:24", + "src": "11843:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 8396, + "id": 8992, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8346, - "src": "11327:6:24", + "referencedDeclaration": 8942, + "src": "11855:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -60913,18 +61194,18 @@ "typeString": "uint256" } ], - "id": 8393, + "id": 8989, "name": "WithdrawCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7532, - "src": "11296:18:24", + "referencedDeclaration": 8053, + "src": "11824:18:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 8397, + "id": 8993, "isConstant": false, "isLValue": false, "isPure": false, @@ -60933,73 +61214,73 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11296:38:24", + "src": "11824:38:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8398, + "id": 8994, "nodeType": "EmitStatement", - "src": "11291:43:24" + "src": "11819:43:24" } ] }, "documentation": { - "id": 8317, + "id": 8913, "nodeType": "StructuredDocumentation", - "src": "10655:63:24", + "src": "11183:63:24", "text": "@dev Used to withdraw the locked collateral" }, "functionSelector": "59c153be", - "id": 8400, + "id": 8996, "implemented": true, "kind": "function", "modifiers": [ { - "id": 8320, + "id": 8916, "kind": "modifierInvocation", "modifierName": { - "id": 8319, + "id": 8915, "name": "nonReentrant", "nameLocations": [ - "10762:12:24" + "11290:12:24" ], "nodeType": "IdentifierPath", "referencedDeclaration": 346, - "src": "10762:12:24" + "src": "11290:12:24" }, "nodeType": "ModifierInvocation", - "src": "10762:12:24" + "src": "11290:12:24" } ], "name": "withdrawCollateral", - "nameLocation": "10732:18:24", + "nameLocation": "11260:18:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 8318, + "id": 8914, "nodeType": "ParameterList", "parameters": [], - "src": "10750:2:24" + "src": "11278:2:24" }, "returnParameters": { - "id": 8321, + "id": 8917, "nodeType": "ParameterList", "parameters": [], - "src": "10775:0:24" + "src": "11303:0:24" }, - "scope": 10196, - "src": "10723:618:24", + "scope": 10792, + "src": "11251:618:24", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 8429, + "id": 9025, "nodeType": "Block", - "src": "11457:163:24", + "src": "11985:163:24", "statements": [ { "expression": { @@ -61009,47 +61290,47 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8412, + "id": 9008, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 8407, + "id": 9003, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7659, - "src": "11475:19:24", + "referencedDeclaration": 8180, + "src": "12003:19:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8410, + "id": 9006, "indexExpression": { "expression": { - "id": 8408, + "id": 9004, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "11495:3:24", + "src": "12023:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8409, + "id": 9005, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11499:6:24", + "memberLocation": "12027:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "11495:10:24", + "src": "12023:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -61060,7 +61341,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11475:31:24", + "src": "12003:31:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -61070,21 +61351,21 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 8411, + "id": 9007, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11510:1:24", + "src": "12038:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "11475:36:24", + "src": "12003:36:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -61092,14 +61373,14 @@ }, { "hexValue": "4c4243303233", - "id": 8413, + "id": 9009, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "11513:8:24", + "src": "12041:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_1e153c8413fa71b1dc88c42214ae3211e20bbd7d323adc3a7cb82fb90c05d672", "typeString": "literal_string \"LBC023\"" @@ -61118,7 +61399,7 @@ "typeString": "literal_string \"LBC023\"" } ], - "id": 8406, + "id": 9002, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -61126,13 +61407,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "11467:7:24", + "src": "11995:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8414, + "id": 9010, "isConstant": false, "isLValue": false, "isPure": false, @@ -61141,60 +61422,60 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11467:55:24", + "src": "11995:55:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8415, + "id": 9011, "nodeType": "ExpressionStatement", - "src": "11467:55:24" + "src": "11995:55:24" }, { "expression": { - "id": 8422, + "id": 9018, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 8416, + "id": 9012, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7659, - "src": "11532:19:24", + "referencedDeclaration": 8180, + "src": "12060:19:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8419, + "id": 9015, "indexExpression": { "expression": { - "id": 8417, + "id": 9013, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "11552:3:24", + "src": "12080:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8418, + "id": 9014, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11556:6:24", + "memberLocation": "12084:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "11552:10:24", + "src": "12080:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -61205,7 +61486,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "11532:31:24", + "src": "12060:31:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -61215,66 +61496,66 @@ "operator": "=", "rightHandSide": { "expression": { - "id": 8420, + "id": 9016, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967292, - "src": "11566:5:24", + "src": "12094:5:24", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 8421, + "id": 9017, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11572:6:24", + "memberLocation": "12100:6:24", "memberName": "number", "nodeType": "MemberAccess", - "src": "11566:12:24", + "src": "12094:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11532:46:24", + "src": "12060:46:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 8423, + "id": 9019, "nodeType": "ExpressionStatement", - "src": "11532:46:24" + "src": "12060:46:24" }, { "eventCall": { "arguments": [ { "expression": { - "id": 8425, + "id": 9021, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "11602:3:24", + "src": "12130:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8426, + "id": 9022, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "11606:6:24", + "memberLocation": "12134:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "11602:10:24", + "src": "12130:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -61288,18 +61569,18 @@ "typeString": "address" } ], - "id": 8424, + "id": 9020, "name": "Resigned", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7536, - "src": "11593:8:24", + "referencedDeclaration": 8057, + "src": "12121:8:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 8427, + "id": 9023, "isConstant": false, "isLValue": false, "isPure": false, @@ -61308,96 +61589,96 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "11593:20:24", + "src": "12121:20:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8428, + "id": 9024, "nodeType": "EmitStatement", - "src": "11588:25:24" + "src": "12116:25:24" } ] }, "documentation": { - "id": 8401, + "id": 8997, "nodeType": "StructuredDocumentation", - "src": "11347:63:24", + "src": "11875:63:24", "text": "@dev Used to resign as a liquidity provider" }, "functionSelector": "69652fcf", - "id": 8430, + "id": 9026, "implemented": true, "kind": "function", "modifiers": [ { - "id": 8404, + "id": 9000, "kind": "modifierInvocation", "modifierName": { - "id": 8403, + "id": 8999, "name": "onlyRegistered", "nameLocations": [ - "11442:14:24" + "11970:14:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 7705, - "src": "11442:14:24" + "referencedDeclaration": 8226, + "src": "11970:14:24" }, "nodeType": "ModifierInvocation", - "src": "11442:14:24" + "src": "11970:14:24" } ], "name": "resign", - "nameLocation": "11424:6:24", + "nameLocation": "11952:6:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 8402, + "id": 8998, "nodeType": "ParameterList", "parameters": [], - "src": "11430:2:24" + "src": "11958:2:24" }, "returnParameters": { - "id": 8405, + "id": 9001, "nodeType": "ParameterList", "parameters": [], - "src": "11457:0:24" + "src": "11985:0:24" }, - "scope": 10196, - "src": "11415:205:24", + "scope": 10792, + "src": "11943:205:24", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 8442, + "id": 9038, "nodeType": "Block", - "src": "11887:40:24", + "src": "12415:40:24", "statements": [ { "expression": { "baseExpression": { - "id": 8438, + "id": 9034, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7641, - "src": "11904:10:24", + "referencedDeclaration": 8162, + "src": "12432:10:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8440, + "id": 9036, "indexExpression": { - "id": 8439, + "id": 9035, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8433, - "src": "11915:4:24", + "referencedDeclaration": 9029, + "src": "12443:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -61408,46 +61689,46 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11904:16:24", + "src": "12432:16:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 8437, - "id": 8441, + "functionReturnParameters": 9033, + "id": 9037, "nodeType": "Return", - "src": "11897:23:24" + "src": "12425:23:24" } ] }, "documentation": { - "id": 8431, + "id": 9027, "nodeType": "StructuredDocumentation", - "src": "11626:187:24", + "src": "12154:187:24", "text": "@dev Returns the amount of collateral of a liquidity provider\n@param addr The address of the liquidity provider\n@return The amount of locked collateral" }, "functionSelector": "9b56d6c9", - "id": 8443, + "id": 9039, "implemented": true, "kind": "function", "modifiers": [], "name": "getCollateral", - "nameLocation": "11827:13:24", + "nameLocation": "12355:13:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 8434, + "id": 9030, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 8433, + "id": 9029, "mutability": "mutable", "name": "addr", - "nameLocation": "11849:4:24", + "nameLocation": "12377:4:24", "nodeType": "VariableDeclaration", - "scope": 8443, - "src": "11841:12:24", + "scope": 9039, + "src": "12369:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -61455,10 +61736,10 @@ "typeString": "address" }, "typeName": { - "id": 8432, + "id": 9028, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11841:7:24", + "src": "12369:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -61468,21 +61749,21 @@ "visibility": "internal" } ], - "src": "11840:14:24" + "src": "12368:14:24" }, "returnParameters": { - "id": 8437, + "id": 9033, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 8436, + "id": 9032, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 8443, - "src": "11878:7:24", + "scope": 9039, + "src": "12406:7:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -61490,10 +61771,10 @@ "typeString": "uint256" }, "typeName": { - "id": 8435, + "id": 9031, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11878:7:24", + "src": "12406:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -61502,42 +61783,42 @@ "visibility": "internal" } ], - "src": "11877:9:24" + "src": "12405:9:24" }, - "scope": 10196, - "src": "11818:109:24", + "scope": 10792, + "src": "12346:109:24", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 8454, + "id": 9050, "nodeType": "Block", - "src": "12008:46:24", + "src": "12536:46:24", "statements": [ { "expression": { "baseExpression": { - "id": 8450, + "id": 9046, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7645, - "src": "12025:16:24", + "referencedDeclaration": 8166, + "src": "12553:16:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8452, + "id": 9048, "indexExpression": { - "id": 8451, + "id": 9047, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8445, - "src": "12042:4:24", + "referencedDeclaration": 9041, + "src": "12570:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -61548,40 +61829,40 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12025:22:24", + "src": "12553:22:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 8449, - "id": 8453, + "functionReturnParameters": 9045, + "id": 9049, "nodeType": "Return", - "src": "12018:29:24" + "src": "12546:29:24" } ] }, "functionSelector": "bd519eff", - "id": 8455, + "id": 9051, "implemented": true, "kind": "function", "modifiers": [], "name": "getPegoutCollateral", - "nameLocation": "11942:19:24", + "nameLocation": "12470:19:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 8446, + "id": 9042, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 8445, + "id": 9041, "mutability": "mutable", "name": "addr", - "nameLocation": "11970:4:24", + "nameLocation": "12498:4:24", "nodeType": "VariableDeclaration", - "scope": 8455, - "src": "11962:12:24", + "scope": 9051, + "src": "12490:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -61589,10 +61870,10 @@ "typeString": "address" }, "typeName": { - "id": 8444, + "id": 9040, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11962:7:24", + "src": "12490:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -61602,21 +61883,21 @@ "visibility": "internal" } ], - "src": "11961:14:24" + "src": "12489:14:24" }, "returnParameters": { - "id": 8449, + "id": 9045, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 8448, + "id": 9044, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 8455, - "src": "11999:7:24", + "scope": 9051, + "src": "12527:7:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -61624,10 +61905,10 @@ "typeString": "uint256" }, "typeName": { - "id": 8447, + "id": 9043, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11999:7:24", + "src": "12527:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -61636,42 +61917,42 @@ "visibility": "internal" } ], - "src": "11998:9:24" + "src": "12526:9:24" }, - "scope": 10196, - "src": "11933:121:24", + "scope": 10792, + "src": "12461:121:24", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 8467, + "id": 9063, "nodeType": "Block", - "src": "12319:38:24", + "src": "12847:38:24", "statements": [ { "expression": { "baseExpression": { - "id": 8463, + "id": 9059, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7637, - "src": "12336:8:24", + "referencedDeclaration": 8158, + "src": "12864:8:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8465, + "id": 9061, "indexExpression": { - "id": 8464, + "id": 9060, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8458, - "src": "12345:4:24", + "referencedDeclaration": 9054, + "src": "12873:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -61682,46 +61963,46 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12336:14:24", + "src": "12864:14:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 8462, - "id": 8466, + "functionReturnParameters": 9058, + "id": 9062, "nodeType": "Return", - "src": "12329:21:24" + "src": "12857:21:24" } ] }, "documentation": { - "id": 8456, + "id": 9052, "nodeType": "StructuredDocumentation", - "src": "12060:188:24", + "src": "12588:188:24", "text": "@dev Returns the amount of funds of a liquidity provider\n@param addr The address of the liquidity provider\n@return The balance of the liquidity provider" }, "functionSelector": "f8b2cb4f", - "id": 8468, + "id": 9064, "implemented": true, "kind": "function", "modifiers": [], "name": "getBalance", - "nameLocation": "12262:10:24", + "nameLocation": "12790:10:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 8459, + "id": 9055, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 8458, + "id": 9054, "mutability": "mutable", "name": "addr", - "nameLocation": "12281:4:24", + "nameLocation": "12809:4:24", "nodeType": "VariableDeclaration", - "scope": 8468, - "src": "12273:12:24", + "scope": 9064, + "src": "12801:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -61729,10 +62010,10 @@ "typeString": "address" }, "typeName": { - "id": 8457, + "id": 9053, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12273:7:24", + "src": "12801:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -61742,21 +62023,21 @@ "visibility": "internal" } ], - "src": "12272:14:24" + "src": "12800:14:24" }, "returnParameters": { - "id": 8462, + "id": 9058, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 8461, + "id": 9057, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 8468, - "src": "12310:7:24", + "scope": 9064, + "src": "12838:7:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -61764,10 +62045,10 @@ "typeString": "uint256" }, "typeName": { - "id": 8460, + "id": 9056, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12310:7:24", + "src": "12838:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -61776,19 +62057,19 @@ "visibility": "internal" } ], - "src": "12309:9:24" + "src": "12837:9:24" }, - "scope": 10196, - "src": "12253:104:24", + "scope": 10792, + "src": "12781:104:24", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 8614, + "id": 9210, "nodeType": "Block", - "src": "12683:1462:24", + "src": "13211:1462:24", "statements": [ { "expression": { @@ -61798,33 +62079,33 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 8486, + "id": 9082, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 8482, + "id": 9078, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "12714:3:24", + "src": "13242:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8483, + "id": 9079, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "12718:6:24", + "memberLocation": "13246:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "12714:10:24", + "src": "13242:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -61834,33 +62115,33 @@ "operator": "==", "rightExpression": { "expression": { - "id": 8484, + "id": 9080, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "12728:5:24", + "referencedDeclaration": 9068, + "src": "13256:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8485, + "id": 9081, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12734:27:24", + "memberLocation": "13262:27:24", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10564, - "src": "12728:33:24", + "referencedDeclaration": 11160, + "src": "13256:33:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "12714:47:24", + "src": "13242:47:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -61868,14 +62149,14 @@ }, { "hexValue": "4c4243303234", - "id": 8487, + "id": 9083, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "12775:8:24", + "src": "13303:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_9c6c58d5603e5b2aab0d13c183f0136466f0ce13826630d90e079bf910078715", "typeString": "literal_string \"LBC024\"" @@ -61894,7 +62175,7 @@ "typeString": "literal_string \"LBC024\"" } ], - "id": 8481, + "id": 9077, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -61902,13 +62183,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "12693:7:24", + "src": "13221:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8488, + "id": 9084, "isConstant": false, "isLValue": false, "isPure": false, @@ -61917,16 +62198,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12693:100:24", + "src": "13221:100:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8489, + "id": 9085, "nodeType": "ExpressionStatement", - "src": "12693:100:24" + "src": "13221:100:24" }, { "expression": { @@ -61936,7 +62217,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8500, + "id": 9096, "isConstant": false, "isLValue": false, "isPure": false, @@ -61946,48 +62227,48 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8497, + "id": 9093, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 8491, + "id": 9087, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7637, - "src": "12824:8:24", + "referencedDeclaration": 8158, + "src": "13352:8:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8494, + "id": 9090, "indexExpression": { "expression": { - "id": 8492, + "id": 9088, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "12833:5:24", + "referencedDeclaration": 9068, + "src": "13361:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8493, + "id": 9089, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12839:27:24", + "memberLocation": "13367:27:24", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10564, - "src": "12833:33:24", + "referencedDeclaration": 11160, + "src": "13361:33:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -61998,7 +62279,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12824:43:24", + "src": "13352:43:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -62008,32 +62289,32 @@ "operator": "+", "rightExpression": { "expression": { - "id": 8495, + "id": 9091, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "12870:3:24", + "src": "13398:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8496, + "id": 9092, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "12874:5:24", + "memberLocation": "13402:5:24", "memberName": "value", "nodeType": "MemberAccess", - "src": "12870:9:24", + "src": "13398:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12824:55:24", + "src": "13352:55:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -62043,33 +62324,33 @@ "operator": ">=", "rightExpression": { "expression": { - "id": 8498, + "id": 9094, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "12895:5:24", + "referencedDeclaration": 9068, + "src": "13423:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8499, + "id": 9095, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "12901:5:24", + "memberLocation": "13429:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10584, - "src": "12895:11:24", + "referencedDeclaration": 11180, + "src": "13423:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12824:82:24", + "src": "13352:82:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -62077,14 +62358,14 @@ }, { "hexValue": "4c4243303139", - "id": 8501, + "id": 9097, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "12920:8:24", + "src": "13448:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909", "typeString": "literal_string \"LBC019\"" @@ -62103,7 +62384,7 @@ "typeString": "literal_string \"LBC019\"" } ], - "id": 8490, + "id": 9086, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -62111,13 +62392,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "12803:7:24", + "src": "13331:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8502, + "id": 9098, "isConstant": false, "isLValue": false, "isPure": false, @@ -62126,31 +62407,31 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12803:135:24", + "src": "13331:135:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8503, + "id": 9099, "nodeType": "ExpressionStatement", - "src": "12803:135:24" + "src": "13331:135:24" }, { "assignments": [ - 8505 + 9101 ], "declarations": [ { "constant": false, - "id": 8505, + "id": 9101, "mutability": "mutable", "name": "quoteHash", - "nameLocation": "12957:9:24", + "nameLocation": "13485:9:24", "nodeType": "VariableDeclaration", - "scope": 8614, - "src": "12949:17:24", + "scope": 9210, + "src": "13477:17:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -62158,10 +62439,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 8504, + "id": 9100, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "12949:7:24", + "src": "13477:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -62170,18 +62451,18 @@ "visibility": "internal" } ], - "id": 8509, + "id": 9105, "initialValue": { "arguments": [ { - "id": 8507, + "id": 9103, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "12990:5:24", + "referencedDeclaration": 9068, + "src": "13518:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } } @@ -62189,22 +62470,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } ], - "id": 8506, + "id": 9102, "name": "validateAndHashQuote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9720, - "src": "12969:20:24", + "referencedDeclaration": 10316, + "src": "13497:20:24", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10599_memory_ptr_$returns$_t_bytes32_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$11195_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (struct QuotesV2.PeginQuote memory) view returns (bytes32)" } }, - "id": 8508, + "id": 9104, "isConstant": false, "isLValue": false, "isPure": false, @@ -62213,7 +62494,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "12969:27:24", + "src": "13497:27:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -62221,7 +62502,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "12949:47:24" + "src": "13477:47:24" }, { "expression": { @@ -62231,32 +62512,32 @@ "typeIdentifier": "t_uint8", "typeString": "uint8" }, - "id": 8515, + "id": 9111, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 8511, + "id": 9107, "name": "processedQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7679, - "src": "13027:15:24", + "referencedDeclaration": 8200, + "src": "13555:15:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", "typeString": "mapping(bytes32 => uint8)" } }, - "id": 8513, + "id": 9109, "indexExpression": { - "id": 8512, + "id": 9108, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8505, - "src": "13043:9:24", + "referencedDeclaration": 9101, + "src": "13571:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -62267,7 +62548,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13027:26:24", + "src": "13555:26:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -62276,18 +62557,18 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 8514, + "id": 9110, "name": "UNPROCESSED_QUOTE_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7429, - "src": "13057:22:24", + "referencedDeclaration": 7950, + "src": "13585:22:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, - "src": "13027:52:24", + "src": "13555:52:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -62295,14 +62576,14 @@ }, { "hexValue": "4c4243303235", - "id": 8516, + "id": 9112, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "13093:8:24", + "src": "13621:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ceda09d74f8a59745bfad5393e75482469dc6db77c24fde6f52df4409a3f744c", "typeString": "literal_string \"LBC025\"" @@ -62321,7 +62602,7 @@ "typeString": "literal_string \"LBC025\"" } ], - "id": 8510, + "id": 9106, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -62329,13 +62610,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "13006:7:24", + "src": "13534:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8517, + "id": 9113, "isConstant": false, "isLValue": false, "isPure": false, @@ -62344,43 +62625,43 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13006:105:24", + "src": "13534:105:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8518, + "id": 9114, "nodeType": "ExpressionStatement", - "src": "13006:105:24" + "src": "13534:105:24" }, { "expression": { "arguments": [ { "expression": { - "id": 8520, + "id": 9116, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "13138:5:24", + "referencedDeclaration": 9068, + "src": "13666:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8521, + "id": 9117, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "13144:27:24", + "memberLocation": "13672:27:24", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10564, - "src": "13138:33:24", + "referencedDeclaration": 11160, + "src": "13666:33:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -62388,26 +62669,26 @@ }, { "expression": { - "id": 8522, + "id": 9118, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "13173:3:24", + "src": "13701:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8523, + "id": 9119, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13177:5:24", + "memberLocation": "13705:5:24", "memberName": "value", "nodeType": "MemberAccess", - "src": "13173:9:24", + "src": "13701:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -62425,18 +62706,18 @@ "typeString": "uint256" } ], - "id": 8519, + "id": 9115, "name": "increaseBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9783, - "src": "13122:15:24", + "referencedDeclaration": 10379, + "src": "13650:15:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 8524, + "id": 9120, "isConstant": false, "isLValue": false, "isPure": false, @@ -62445,16 +62726,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13122:61:24", + "src": "13650:61:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8525, + "id": 9121, "nodeType": "ExpressionStatement", - "src": "13122:61:24" + "src": "13650:61:24" }, { "expression": { @@ -62464,7 +62745,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8533, + "id": 9129, "isConstant": false, "isLValue": false, "isPure": false, @@ -62473,18 +62754,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 8527, + "id": 9123, "name": "gasleft", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967289, - "src": "13316:7:24", + "src": "13844:7:24", "typeDescriptions": { "typeIdentifier": "t_function_gasleft_view$__$returns$_t_uint256_$", "typeString": "function () view returns (uint256)" } }, - "id": 8528, + "id": 9124, "isConstant": false, "isLValue": false, "isPure": false, @@ -62493,7 +62774,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13316:9:24", + "src": "13844:9:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -62507,34 +62788,34 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 8532, + "id": 9128, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 8529, + "id": 9125, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "13329:5:24", + "referencedDeclaration": 9068, + "src": "13857:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8530, + "id": 9126, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "13335:8:24", + "memberLocation": "13863:8:24", "memberName": "gasLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10580, - "src": "13329:14:24", + "referencedDeclaration": 11176, + "src": "13857:14:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -62543,24 +62824,24 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 8531, + "id": 9127, "name": "MAX_CALL_GAS_COST", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7423, - "src": "13346:17:24", + "referencedDeclaration": 7944, + "src": "13874:17:24", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, - "src": "13329:34:24", + "src": "13857:34:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "13316:47:24", + "src": "13844:47:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -62568,14 +62849,14 @@ }, { "hexValue": "4c4243303236", - "id": 8534, + "id": 9130, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "13377:8:24", + "src": "13905:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_2d63cc93f65e3c34ca5cba24271c3d6869155fb2ffc83f083d82378f26d56cb0", "typeString": "literal_string \"LBC026\"" @@ -62594,7 +62875,7 @@ "typeString": "literal_string \"LBC026\"" } ], - "id": 8526, + "id": 9122, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -62602,13 +62883,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "13295:7:24", + "src": "13823:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8535, + "id": 9131, "isConstant": false, "isLValue": false, "isPure": false, @@ -62617,32 +62898,32 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13295:100:24", + "src": "13823:100:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8536, + "id": 9132, "nodeType": "ExpressionStatement", - "src": "13295:100:24" + "src": "13823:100:24" }, { "assignments": [ - 8538, + 9134, null ], "declarations": [ { "constant": false, - "id": 8538, + "id": 9134, "mutability": "mutable", "name": "success", - "nameLocation": "13411:7:24", + "nameLocation": "13939:7:24", "nodeType": "VariableDeclaration", - "scope": 8614, - "src": "13406:12:24", + "scope": 9210, + "src": "13934:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -62650,10 +62931,10 @@ "typeString": "bool" }, "typeName": { - "id": 8537, + "id": 9133, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13406:4:24", + "src": "13934:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -62663,32 +62944,32 @@ }, null ], - "id": 8550, + "id": 9146, "initialValue": { "arguments": [ { "expression": { - "id": 8547, + "id": 9143, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "13537:5:24", + "referencedDeclaration": 9068, + "src": "14065:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8548, + "id": 9144, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "13543:4:24", + "memberLocation": "14071:4:24", "memberName": "data", "nodeType": "MemberAccess", - "referencedDeclaration": 10578, - "src": "13537:10:24", + "referencedDeclaration": 11174, + "src": "14065:10:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -62711,47 +62992,47 @@ ], "expression": { "expression": { - "id": 8539, + "id": 9135, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "13423:5:24", + "referencedDeclaration": 9068, + "src": "13951:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8540, + "id": 9136, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "13429:15:24", + "memberLocation": "13957:15:24", "memberName": "contractAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10576, - "src": "13423:21:24", + "referencedDeclaration": 11172, + "src": "13951:21:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 8541, + "id": 9137, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13445:4:24", + "memberLocation": "13973:4:24", "memberName": "call", "nodeType": "MemberAccess", - "src": "13423:26:24", + "src": "13951:26:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 8546, + "id": 9142, "isConstant": false, "isLValue": false, "isPure": false, @@ -62764,27 +63045,27 @@ "options": [ { "expression": { - "id": 8542, + "id": 9138, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "13472:5:24", + "referencedDeclaration": 9068, + "src": "14000:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8543, + "id": 9139, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "13478:8:24", + "memberLocation": "14006:8:24", "memberName": "gasLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10580, - "src": "13472:14:24", + "referencedDeclaration": 11176, + "src": "14000:14:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -62792,40 +63073,40 @@ }, { "expression": { - "id": 8544, + "id": 9140, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "13511:5:24", + "referencedDeclaration": 9068, + "src": "14039:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8545, + "id": 9141, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "13517:5:24", + "memberLocation": "14045:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10584, - "src": "13511:11:24", + "referencedDeclaration": 11180, + "src": "14039:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "src": "13423:113:24", + "src": "13951:113:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$gasvalue", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 8549, + "id": 9145, "isConstant": false, "isLValue": false, "isPure": false, @@ -62834,7 +63115,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13423:125:24", + "src": "13951:125:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", @@ -62842,7 +63123,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "13405:143:24" + "src": "13933:143:24" }, { "expression": { @@ -62852,33 +63133,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8559, + "id": 9155, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 8552, + "id": 9148, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967292, - "src": "13567:5:24", + "src": "14095:5:24", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 8553, + "id": 9149, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13573:9:24", + "memberLocation": "14101:9:24", "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "13567:15:24", + "src": "14095:15:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -62890,22 +63171,22 @@ "expression": { "arguments": [ { - "id": 8556, + "id": 9152, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13591:6:24", + "src": "14119:6:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint32_$", "typeString": "type(uint32)" }, "typeName": { - "id": 8555, + "id": 9151, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "13591:6:24", + "src": "14119:6:24", "typeDescriptions": {} } } @@ -62917,18 +63198,18 @@ "typeString": "type(uint32)" } ], - "id": 8554, + "id": 9150, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967269, - "src": "13586:4:24", + "src": "14114:4:24", "typeDescriptions": { "typeIdentifier": "t_function_metatype_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 8557, + "id": 9153, "isConstant": false, "isLValue": false, "isPure": true, @@ -62937,28 +63218,28 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13586:12:24", + "src": "14114:12:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_magic_meta_type_t_uint32", "typeString": "type(uint32)" } }, - "id": 8558, + "id": 9154, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "13599:3:24", + "memberLocation": "14127:3:24", "memberName": "max", "nodeType": "MemberAccess", - "src": "13586:16:24", + "src": "14114:16:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "13567:35:24", + "src": "14095:35:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -62966,14 +63247,14 @@ }, { "hexValue": "4c4243303237", - "id": 8560, + "id": 9156, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "13604:8:24", + "src": "14132:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_5a937cad92792f08abdaf15eed65a070909c29d924f856ec65923c138fd39a48", "typeString": "literal_string \"LBC027\"" @@ -62992,7 +63273,7 @@ "typeString": "literal_string \"LBC027\"" } ], - "id": 8551, + "id": 9147, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -63000,13 +63281,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "13559:7:24", + "src": "14087:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8561, + "id": 9157, "isConstant": false, "isLValue": false, "isPure": false, @@ -63015,20 +63296,20 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13559:54:24", + "src": "14087:54:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8562, + "id": 9158, "nodeType": "ExpressionStatement", - "src": "13559:54:24" + "src": "14087:54:24" }, { "expression": { - "id": 8572, + "id": 9168, "isConstant": false, "isLValue": false, "isPure": false, @@ -63036,25 +63317,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 8563, + "id": 9159, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7655, - "src": "13623:12:24", + "referencedDeclaration": 8176, + "src": "14151:12:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$7482_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8003_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" } }, - "id": 8565, + "id": 9161, "indexExpression": { - "id": 8564, + "id": 9160, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8505, - "src": "13636:9:24", + "referencedDeclaration": 9101, + "src": "14164:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -63065,22 +63346,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13623:23:24", + "src": "14151:23:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$7482_storage", + "typeIdentifier": "t_struct$_Registry_$8003_storage", "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" } }, - "id": 8566, + "id": 9162, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "13647:9:24", + "memberLocation": "14175:9:24", "memberName": "timestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 7479, - "src": "13623:33:24", + "referencedDeclaration": 8000, + "src": "14151:33:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -63092,26 +63373,26 @@ "arguments": [ { "expression": { - "id": 8569, + "id": 9165, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967292, - "src": "13666:5:24", + "src": "14194:5:24", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 8570, + "id": 9166, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13672:9:24", + "memberLocation": "14200:9:24", "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "13666:15:24", + "src": "14194:15:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -63125,26 +63406,26 @@ "typeString": "uint256" } ], - "id": 8568, + "id": 9164, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "13659:6:24", + "src": "14187:6:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint32_$", "typeString": "type(uint32)" }, "typeName": { - "id": 8567, + "id": 9163, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "13659:6:24", + "src": "14187:6:24", "typeDescriptions": {} } }, - "id": 8571, + "id": 9167, "isConstant": false, "isLValue": false, "isPure": false, @@ -63153,47 +63434,47 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13659:23:24", + "src": "14187:23:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "13623:59:24", + "src": "14151:59:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "id": 8573, + "id": 9169, "nodeType": "ExpressionStatement", - "src": "13623:59:24" + "src": "14151:59:24" }, { "condition": { - "id": 8574, + "id": 9170, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8538, - "src": "13697:7:24", + "referencedDeclaration": 9134, + "src": "14225:7:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 8590, + "id": 9186, "nodeType": "IfStatement", - "src": "13693:153:24", + "src": "14221:153:24", "trueBody": { - "id": 8589, + "id": 9185, "nodeType": "Block", - "src": "13706:140:24", + "src": "14234:140:24", "statements": [ { "expression": { - "id": 8580, + "id": 9176, "isConstant": false, "isLValue": false, "isPure": false, @@ -63201,25 +63482,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 8575, + "id": 9171, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7655, - "src": "13720:12:24", + "referencedDeclaration": 8176, + "src": "14248:12:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$7482_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8003_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" } }, - "id": 8577, + "id": 9173, "indexExpression": { - "id": 8576, + "id": 9172, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8505, - "src": "13733:9:24", + "referencedDeclaration": 9101, + "src": "14261:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -63230,22 +63511,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13720:23:24", + "src": "14248:23:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$7482_storage", + "typeIdentifier": "t_struct$_Registry_$8003_storage", "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" } }, - "id": 8578, + "id": 9174, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "13744:7:24", + "memberLocation": "14272:7:24", "memberName": "success", "nodeType": "MemberAccess", - "referencedDeclaration": 7481, - "src": "13720:31:24", + "referencedDeclaration": 8002, + "src": "14248:31:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -63255,56 +63536,56 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 8579, + "id": 9175, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "13754:4:24", + "src": "14282:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "13720:38:24", + "src": "14248:38:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 8581, + "id": 9177, "nodeType": "ExpressionStatement", - "src": "13720:38:24" + "src": "14248:38:24" }, { "expression": { "arguments": [ { "expression": { - "id": 8583, + "id": 9179, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "13788:5:24", + "referencedDeclaration": 9068, + "src": "14316:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8584, + "id": 9180, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "13794:27:24", + "memberLocation": "14322:27:24", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10564, - "src": "13788:33:24", + "referencedDeclaration": 11160, + "src": "14316:33:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -63312,27 +63593,27 @@ }, { "expression": { - "id": 8585, + "id": 9181, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "13823:5:24", + "referencedDeclaration": 9068, + "src": "14351:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8586, + "id": 9182, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "13829:5:24", + "memberLocation": "14357:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10584, - "src": "13823:11:24", + "referencedDeclaration": 11180, + "src": "14351:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -63350,18 +63631,18 @@ "typeString": "uint256" } ], - "id": 8582, + "id": 9178, "name": "decreaseBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9802, - "src": "13772:15:24", + "referencedDeclaration": 10398, + "src": "14300:15:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 8587, + "id": 9183, "isConstant": false, "isLValue": false, "isPure": false, @@ -63370,16 +63651,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13772:63:24", + "src": "14300:63:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8588, + "id": 9184, "nodeType": "ExpressionStatement", - "src": "13772:63:24" + "src": "14300:63:24" } ] } @@ -63389,26 +63670,26 @@ "arguments": [ { "expression": { - "id": 8592, + "id": 9188, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "13885:3:24", + "src": "14413:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8593, + "id": 9189, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "13889:6:24", + "memberLocation": "14417:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "13885:10:24", + "src": "14413:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -63416,27 +63697,27 @@ }, { "expression": { - "id": 8594, + "id": 9190, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "13909:5:24", + "referencedDeclaration": 9068, + "src": "14437:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8595, + "id": 9191, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "13915:15:24", + "memberLocation": "14443:15:24", "memberName": "contractAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10576, - "src": "13909:21:24", + "referencedDeclaration": 11172, + "src": "14437:21:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -63444,27 +63725,27 @@ }, { "expression": { - "id": 8596, + "id": 9192, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "13944:5:24", + "referencedDeclaration": 9068, + "src": "14472:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8597, + "id": 9193, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "13950:8:24", + "memberLocation": "14478:8:24", "memberName": "gasLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10580, - "src": "13944:14:24", + "referencedDeclaration": 11176, + "src": "14472:14:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -63472,27 +63753,27 @@ }, { "expression": { - "id": 8598, + "id": 9194, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "13972:5:24", + "referencedDeclaration": 9068, + "src": "14500:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8599, + "id": 9195, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "13978:5:24", + "memberLocation": "14506:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10584, - "src": "13972:11:24", + "referencedDeclaration": 11180, + "src": "14500:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -63500,51 +63781,51 @@ }, { "expression": { - "id": 8600, + "id": 9196, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8472, - "src": "13997:5:24", + "referencedDeclaration": 9068, + "src": "14525:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8601, + "id": 9197, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "14003:4:24", + "memberLocation": "14531:4:24", "memberName": "data", "nodeType": "MemberAccess", - "referencedDeclaration": 10578, - "src": "13997:10:24", + "referencedDeclaration": 11174, + "src": "14525:10:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { - "id": 8602, + "id": 9198, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8538, - "src": "14021:7:24", + "referencedDeclaration": 9134, + "src": "14549:7:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { - "id": 8603, + "id": 9199, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8505, - "src": "14042:9:24", + "referencedDeclaration": 9101, + "src": "14570:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -63582,18 +63863,18 @@ "typeString": "bytes32" } ], - "id": 8591, + "id": 9187, "name": "CallForUser", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7552, - "src": "13860:11:24", + "referencedDeclaration": 8073, + "src": "14388:11:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$_t_bool_$_t_bytes32_$returns$__$", "typeString": "function (address,address,uint256,uint256,bytes memory,bool,bytes32)" } }, - "id": 8604, + "id": 9200, "isConstant": false, "isLValue": false, "isPure": false, @@ -63602,45 +63883,45 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "13860:201:24", + "src": "14388:201:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8605, + "id": 9201, "nodeType": "EmitStatement", - "src": "13855:206:24" + "src": "14383:206:24" }, { "expression": { - "id": 8610, + "id": 9206, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 8606, + "id": 9202, "name": "processedQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7679, - "src": "14071:15:24", + "referencedDeclaration": 8200, + "src": "14599:15:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", "typeString": "mapping(bytes32 => uint8)" } }, - "id": 8608, + "id": 9204, "indexExpression": { - "id": 8607, + "id": 9203, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8505, - "src": "14087:9:24", + "referencedDeclaration": 9101, + "src": "14615:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -63651,7 +63932,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "14071:26:24", + "src": "14599:26:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -63660,152 +63941,152 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 8609, + "id": 9205, "name": "CALL_DONE_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7432, - "src": "14100:14:24", + "referencedDeclaration": 7953, + "src": "14628:14:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, - "src": "14071:43:24", + "src": "14599:43:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, - "id": 8611, + "id": 9207, "nodeType": "ExpressionStatement", - "src": "14071:43:24" + "src": "14599:43:24" }, { "expression": { - "id": 8612, + "id": 9208, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8538, - "src": "14131:7:24", + "referencedDeclaration": 9134, + "src": "14659:7:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 8480, - "id": 8613, + "functionReturnParameters": 9076, + "id": 9209, "nodeType": "Return", - "src": "14124:14:24" + "src": "14652:14:24" } ] }, "documentation": { - "id": 8469, + "id": 9065, "nodeType": "StructuredDocumentation", - "src": "12363:186:24", + "src": "12891:186:24", "text": "@dev Performs a call on behalf of a user\n@param quote The quote that identifies the service\n@return Boolean indicating whether the call was successful" }, "functionSelector": "7aefa8c2", - "id": 8615, + "id": 9211, "implemented": true, "kind": "function", "modifiers": [ { - "id": 8475, + "id": 9071, "kind": "modifierInvocation", "modifierName": { - "id": 8474, + "id": 9070, "name": "onlyRegistered", "nameLocations": [ - "12640:14:24" + "13168:14:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 7705, - "src": "12640:14:24" + "referencedDeclaration": 8226, + "src": "13168:14:24" }, "nodeType": "ModifierInvocation", - "src": "12640:14:24" + "src": "13168:14:24" }, { - "id": 8477, + "id": 9073, "kind": "modifierInvocation", "modifierName": { - "id": 8476, + "id": 9072, "name": "nonReentrant", "nameLocations": [ - "12655:12:24" + "13183:12:24" ], "nodeType": "IdentifierPath", "referencedDeclaration": 346, - "src": "12655:12:24" + "src": "13183:12:24" }, "nodeType": "ModifierInvocation", - "src": "12655:12:24" + "src": "13183:12:24" } ], "name": "callForUser", - "nameLocation": "12563:11:24", + "nameLocation": "13091:11:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 8473, + "id": 9069, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 8472, + "id": 9068, "mutability": "mutable", "name": "quote", - "nameLocation": "12611:5:24", + "nameLocation": "13139:5:24", "nodeType": "VariableDeclaration", - "scope": 8615, - "src": "12584:32:24", + "scope": 9211, + "src": "13112:32:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote" }, "typeName": { - "id": 8471, + "id": 9067, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 8470, + "id": 9066, "name": "QuotesV2.PeginQuote", "nameLocations": [ - "12584:8:24", - "12593:10:24" + "13112:8:24", + "13121:10:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10599, - "src": "12584:19:24" + "referencedDeclaration": 11195, + "src": "13112:19:24" }, - "referencedDeclaration": 10599, - "src": "12584:19:24", + "referencedDeclaration": 11195, + "src": "13112:19:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_storage_ptr", "typeString": "struct QuotesV2.PeginQuote" } }, "visibility": "internal" } ], - "src": "12574:48:24" + "src": "13102:48:24" }, "returnParameters": { - "id": 8480, + "id": 9076, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 8479, + "id": 9075, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 8615, - "src": "12677:4:24", + "scope": 9211, + "src": "13205:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -63813,10 +64094,10 @@ "typeString": "bool" }, "typeName": { - "id": 8478, + "id": 9074, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "12677:4:24", + "src": "13205:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -63825,34 +64106,34 @@ "visibility": "internal" } ], - "src": "12676:6:24" + "src": "13204:6:24" }, - "scope": 10196, - "src": "12554:1591:24", + "scope": 10792, + "src": "13082:1591:24", "stateMutability": "payable", "virtual": false, "visibility": "external" }, { "body": { - "id": 9017, + "id": 9613, "nodeType": "Block", - "src": "14908:6256:24", + "src": "15436:6256:24", "statements": [ { "assignments": [ - 8635 + 9231 ], "declarations": [ { "constant": false, - "id": 8635, + "id": 9231, "mutability": "mutable", "name": "quoteHash", - "nameLocation": "14926:9:24", + "nameLocation": "15454:9:24", "nodeType": "VariableDeclaration", - "scope": 9017, - "src": "14918:17:24", + "scope": 9613, + "src": "15446:17:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -63860,10 +64141,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 8634, + "id": 9230, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "14918:7:24", + "src": "15446:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -63872,18 +64153,18 @@ "visibility": "internal" } ], - "id": 8639, + "id": 9235, "initialValue": { "arguments": [ { - "id": 8637, + "id": 9233, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "14959:5:24", + "referencedDeclaration": 9215, + "src": "15487:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } } @@ -63891,22 +64172,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } ], - "id": 8636, + "id": 9232, "name": "validateAndHashQuote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9720, - "src": "14938:20:24", + "referencedDeclaration": 10316, + "src": "15466:20:24", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10599_memory_ptr_$returns$_t_bytes32_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$11195_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (struct QuotesV2.PeginQuote memory) view returns (bytes32)" } }, - "id": 8638, + "id": 9234, "isConstant": false, "isLValue": false, "isPure": false, @@ -63915,7 +64196,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "14938:27:24", + "src": "15466:27:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -63923,7 +64204,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "14918:47:24" + "src": "15446:47:24" }, { "expression": { @@ -63933,32 +64214,32 @@ "typeIdentifier": "t_uint8", "typeString": "uint8" }, - "id": 8645, + "id": 9241, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 8641, + "id": 9237, "name": "processedQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7679, - "src": "15091:15:24", + "referencedDeclaration": 8200, + "src": "15619:15:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", "typeString": "mapping(bytes32 => uint8)" } }, - "id": 8643, + "id": 9239, "indexExpression": { - "id": 8642, + "id": 9238, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "15107:9:24", + "referencedDeclaration": 9231, + "src": "15635:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -63969,7 +64250,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15091:26:24", + "src": "15619:26:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -63978,18 +64259,18 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 8644, + "id": 9240, "name": "CALL_DONE_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7432, - "src": "15121:14:24", + "referencedDeclaration": 7953, + "src": "15649:14:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, - "src": "15091:44:24", + "src": "15619:44:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -63997,14 +64278,14 @@ }, { "hexValue": "4c4243303238", - "id": 8646, + "id": 9242, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "15149:8:24", + "src": "15677:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb", "typeString": "literal_string \"LBC028\"" @@ -64023,7 +64304,7 @@ "typeString": "literal_string \"LBC028\"" } ], - "id": 8640, + "id": 9236, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -64031,13 +64312,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "15070:7:24", + "src": "15598:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8647, + "id": 9243, "isConstant": false, "isLValue": false, "isPure": false, @@ -64046,16 +64327,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15070:97:24", + "src": "15598:97:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8648, + "id": 9244, "nodeType": "ExpressionStatement", - "src": "15070:97:24" + "src": "15598:97:24" }, { "expression": { @@ -64064,51 +64345,51 @@ "arguments": [ { "expression": { - "id": 8652, + "id": 9248, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "15241:5:24", + "referencedDeclaration": 9215, + "src": "15769:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8653, + "id": 9249, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "15247:27:24", + "memberLocation": "15775:27:24", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10564, - "src": "15241:33:24", + "referencedDeclaration": 11160, + "src": "15769:33:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 8654, + "id": 9250, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "15292:9:24", + "referencedDeclaration": 9231, + "src": "15820:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 8655, + "id": 9251, "name": "signature", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8621, - "src": "15319:9:24", + "referencedDeclaration": 9217, + "src": "15847:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -64131,33 +64412,33 @@ } ], "expression": { - "id": 8650, + "id": 9246, "name": "SignatureValidator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10898, - "src": "15198:18:24", + "referencedDeclaration": 11494, + "src": "15726:18:24", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SignatureValidator_$10898_$", + "typeIdentifier": "t_type$_t_contract$_SignatureValidator_$11494_$", "typeString": "type(library SignatureValidator)" } }, - "id": 8651, + "id": 9247, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "15217:6:24", + "memberLocation": "15745:6:24", "memberName": "verify", "nodeType": "MemberAccess", - "referencedDeclaration": 10897, - "src": "15198:25:24", + "referencedDeclaration": 11493, + "src": "15726:25:24", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_pure$_t_address_$_t_bytes32_$_t_bytes_memory_ptr_$returns$_t_bool_$", "typeString": "function (address,bytes32,bytes memory) pure returns (bool)" } }, - "id": 8656, + "id": 9252, "isConstant": false, "isLValue": false, "isPure": false, @@ -64166,7 +64447,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15198:144:24", + "src": "15726:144:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -64175,14 +64456,14 @@ }, { "hexValue": "4c4243303239", - "id": 8657, + "id": 9253, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "15356:8:24", + "src": "15884:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216", "typeString": "literal_string \"LBC029\"" @@ -64201,7 +64482,7 @@ "typeString": "literal_string \"LBC029\"" } ], - "id": 8649, + "id": 9245, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -64209,13 +64490,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "15177:7:24", + "src": "15705:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8658, + "id": 9254, "isConstant": false, "isLValue": false, "isPure": false, @@ -64224,16 +64505,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15177:197:24", + "src": "15705:197:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8659, + "id": 9255, "nodeType": "ExpressionStatement", - "src": "15177:197:24" + "src": "15705:197:24" }, { "expression": { @@ -64243,18 +64524,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8673, + "id": 9269, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8661, + "id": 9257, "name": "height", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8627, - "src": "15392:6:24", + "referencedDeclaration": 9223, + "src": "15920:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -64270,22 +64551,22 @@ "expression": { "arguments": [ { - "id": 8668, + "id": 9264, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15421:5:24", + "src": "15949:5:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_int32_$", "typeString": "type(int32)" }, "typeName": { - "id": 8667, + "id": 9263, "name": "int32", "nodeType": "ElementaryTypeName", - "src": "15421:5:24", + "src": "15949:5:24", "typeDescriptions": {} } } @@ -64297,18 +64578,18 @@ "typeString": "type(int32)" } ], - "id": 8666, + "id": 9262, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967269, - "src": "15416:4:24", + "src": "15944:4:24", "typeDescriptions": { "typeIdentifier": "t_function_metatype_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 8669, + "id": 9265, "isConstant": false, "isLValue": false, "isPure": true, @@ -64317,22 +64598,22 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15416:11:24", + "src": "15944:11:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_magic_meta_type_t_int32", "typeString": "type(int32)" } }, - "id": 8670, + "id": 9266, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "15428:3:24", + "memberLocation": "15956:3:24", "memberName": "max", "nodeType": "MemberAccess", - "src": "15416:15:24", + "src": "15944:15:24", "typeDescriptions": { "typeIdentifier": "t_int32", "typeString": "int32" @@ -64346,26 +64627,26 @@ "typeString": "int32" } ], - "id": 8665, + "id": 9261, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15409:6:24", + "src": "15937:6:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_int256_$", "typeString": "type(int256)" }, "typeName": { - "id": 8664, + "id": 9260, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "15409:6:24", + "src": "15937:6:24", "typeDescriptions": {} } }, - "id": 8671, + "id": 9267, "isConstant": false, "isLValue": false, "isPure": true, @@ -64374,7 +64655,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15409:23:24", + "src": "15937:23:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", @@ -64389,26 +64670,26 @@ "typeString": "int256" } ], - "id": 8663, + "id": 9259, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "15401:7:24", + "src": "15929:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { - "id": 8662, + "id": 9258, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "15401:7:24", + "src": "15929:7:24", "typeDescriptions": {} } }, - "id": 8672, + "id": 9268, "isConstant": false, "isLValue": false, "isPure": true, @@ -64417,14 +64698,14 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15401:32:24", + "src": "15929:32:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "15392:41:24", + "src": "15920:41:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -64432,14 +64713,14 @@ }, { "hexValue": "4c4243303330", - "id": 8674, + "id": 9270, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "15435:8:24", + "src": "15963:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_6b987c2142a6ed89e76021f4d9a60f3cbfc2f7110bd81bc33ff58ad7cf27befa", "typeString": "literal_string \"LBC030\"" @@ -64458,7 +64739,7 @@ "typeString": "literal_string \"LBC030\"" } ], - "id": 8660, + "id": 9256, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -64466,13 +64747,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "15384:7:24", + "src": "15912:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8675, + "id": 9271, "isConstant": false, "isLValue": false, "isPure": false, @@ -64481,31 +64762,31 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15384:60:24", + "src": "15912:60:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8676, + "id": 9272, "nodeType": "ExpressionStatement", - "src": "15384:60:24" + "src": "15912:60:24" }, { "assignments": [ - 8678 + 9274 ], "declarations": [ { "constant": false, - "id": 8678, + "id": 9274, "mutability": "mutable", "name": "transferredAmountOrErrorCode", - "nameLocation": "15462:28:24", + "nameLocation": "15990:28:24", "nodeType": "VariableDeclaration", - "scope": 9017, - "src": "15455:35:24", + "scope": 9613, + "src": "15983:35:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -64513,10 +64794,10 @@ "typeString": "int256" }, "typeName": { - "id": 8677, + "id": 9273, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "15455:6:24", + "src": "15983:6:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -64525,64 +64806,64 @@ "visibility": "internal" } ], - "id": 8686, + "id": 9282, "initialValue": { "arguments": [ { - "id": 8680, + "id": 9276, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "15521:5:24", + "referencedDeclaration": 9215, + "src": "16049:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, { - "id": 8681, + "id": 9277, "name": "btcRawTransaction", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8623, - "src": "15540:17:24", + "referencedDeclaration": 9219, + "src": "16068:17:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { - "id": 8682, + "id": 9278, "name": "partialMerkleTree", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8625, - "src": "15571:17:24", + "referencedDeclaration": 9221, + "src": "16099:17:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { - "id": 8683, + "id": 9279, "name": "height", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8627, - "src": "15602:6:24", + "referencedDeclaration": 9223, + "src": "16130:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 8684, + "id": 9280, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "15622:9:24", + "referencedDeclaration": 9231, + "src": "16150:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -64592,7 +64873,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" }, { @@ -64612,18 +64893,18 @@ "typeString": "bytes32" } ], - "id": 8679, + "id": 9275, "name": "registerBridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9888, - "src": "15493:14:24", + "referencedDeclaration": 10484, + "src": "16021:14:24", "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_PeginQuote_$10599_memory_ptr_$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_uint256_$_t_bytes32_$returns$_t_int256_$", + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_PeginQuote_$11195_memory_ptr_$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_uint256_$_t_bytes32_$returns$_t_int256_$", "typeString": "function (struct QuotesV2.PeginQuote memory,bytes memory,bytes memory,uint256,bytes32) returns (int256)" } }, - "id": 8685, + "id": 9281, "isConstant": false, "isLValue": false, "isPure": false, @@ -64632,7 +64913,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15493:148:24", + "src": "16021:148:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", @@ -64640,7 +64921,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "15455:186:24" + "src": "15983:186:24" }, { "expression": { @@ -64650,18 +64931,18 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 8690, + "id": 9286, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8688, + "id": 9284, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "15673:28:24", + "referencedDeclaration": 9274, + "src": "16201:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -64670,18 +64951,18 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 8689, + "id": 9285, "name": "BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7459, - "src": "15717:41:24", + "referencedDeclaration": 7980, + "src": "16245:41:24", "typeDescriptions": { "typeIdentifier": "t_int16", "typeString": "int16" } }, - "src": "15673:85:24", + "src": "16201:85:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -64689,14 +64970,14 @@ }, { "hexValue": "4c4243303331", - "id": 8691, + "id": 9287, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "15772:8:24", + "src": "16300:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_b9f5a33cea5e5738277827f2f81faa92d1d3c73cf030e2542a7b80c6f7bdc8a7", "typeString": "literal_string \"LBC031\"" @@ -64715,7 +64996,7 @@ "typeString": "literal_string \"LBC031\"" } ], - "id": 8687, + "id": 9283, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -64723,13 +65004,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "15652:7:24", + "src": "16180:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8692, + "id": 9288, "isConstant": false, "isLValue": false, "isPure": false, @@ -64738,16 +65019,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15652:138:24", + "src": "16180:138:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8693, + "id": 9289, "nodeType": "ExpressionStatement", - "src": "15652:138:24" + "src": "16180:138:24" }, { "expression": { @@ -64757,18 +65038,18 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 8697, + "id": 9293, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8695, + "id": 9291, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "15821:28:24", + "referencedDeclaration": 9274, + "src": "16349:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -64777,18 +65058,18 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 8696, + "id": 9292, "name": "BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7455, - "src": "15865:52:24", + "referencedDeclaration": 7976, + "src": "16393:52:24", "typeDescriptions": { "typeIdentifier": "t_int16", "typeString": "int16" } }, - "src": "15821:96:24", + "src": "16349:96:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -64796,14 +65077,14 @@ }, { "hexValue": "4c4243303332", - "id": 8698, + "id": 9294, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "15931:8:24", + "src": "16459:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_5d8d108d93a53583cf1949d2287cc7f0af5603bd102faf9db90e7e6bbc90ade8", "typeString": "literal_string \"LBC032\"" @@ -64822,7 +65103,7 @@ "typeString": "literal_string \"LBC032\"" } ], - "id": 8694, + "id": 9290, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -64830,13 +65111,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "15800:7:24", + "src": "16328:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8699, + "id": 9295, "isConstant": false, "isLValue": false, "isPure": false, @@ -64845,16 +65126,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15800:149:24", + "src": "16328:149:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8700, + "id": 9296, "nodeType": "ExpressionStatement", - "src": "15800:149:24" + "src": "16328:149:24" }, { "expression": { @@ -64864,18 +65145,18 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 8704, + "id": 9300, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8702, + "id": 9298, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "15980:28:24", + "referencedDeclaration": 9274, + "src": "16508:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -64884,18 +65165,18 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 8703, + "id": 9299, "name": "BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7463, - "src": "16024:40:24", + "referencedDeclaration": 7984, + "src": "16552:40:24", "typeDescriptions": { "typeIdentifier": "t_int16", "typeString": "int16" } }, - "src": "15980:84:24", + "src": "16508:84:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -64903,14 +65184,14 @@ }, { "hexValue": "4c4243303333", - "id": 8705, + "id": 9301, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "16078:8:24", + "src": "16606:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e976d8a3febca36c67dcd5b38ae845ffd2f248a24eaf2d7a97f208ffd80ff125", "typeString": "literal_string \"LBC033\"" @@ -64929,7 +65210,7 @@ "typeString": "literal_string \"LBC033\"" } ], - "id": 8701, + "id": 9297, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -64937,13 +65218,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "15959:7:24", + "src": "16487:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8706, + "id": 9302, "isConstant": false, "isLValue": false, "isPure": false, @@ -64952,16 +65233,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "15959:137:24", + "src": "16487:137:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8707, + "id": 9303, "nodeType": "ExpressionStatement", - "src": "15959:137:24" + "src": "16487:137:24" }, { "expression": { @@ -64971,18 +65252,18 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 8711, + "id": 9307, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8709, + "id": 9305, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "16127:28:24", + "referencedDeclaration": 9274, + "src": "16655:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -64991,18 +65272,18 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 8710, + "id": 9306, "name": "BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7467, - "src": "16171:60:24", + "referencedDeclaration": 7988, + "src": "16699:60:24", "typeDescriptions": { "typeIdentifier": "t_int16", "typeString": "int16" } }, - "src": "16127:104:24", + "src": "16655:104:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -65010,14 +65291,14 @@ }, { "hexValue": "4c4243303334", - "id": 8712, + "id": 9308, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "16245:8:24", + "src": "16773:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_745436b16371784f7b451bf4bed6f0978e2f007f74e71dfa0c49414b3a522759", "typeString": "literal_string \"LBC034\"" @@ -65036,7 +65317,7 @@ "typeString": "literal_string \"LBC034\"" } ], - "id": 8708, + "id": 9304, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -65044,13 +65325,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "16106:7:24", + "src": "16634:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8713, + "id": 9309, "isConstant": false, "isLValue": false, "isPure": false, @@ -65059,16 +65340,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16106:157:24", + "src": "16634:157:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8714, + "id": 9310, "nodeType": "ExpressionStatement", - "src": "16106:157:24" + "src": "16634:157:24" }, { "expression": { @@ -65078,18 +65359,18 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 8718, + "id": 9314, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8716, + "id": 9312, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "16294:28:24", + "referencedDeclaration": 9274, + "src": "16822:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -65098,18 +65379,18 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 8717, + "id": 9313, "name": "BRIDGE_GENERIC_ERROR", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7471, - "src": "16326:20:24", + "referencedDeclaration": 7992, + "src": "16854:20:24", "typeDescriptions": { "typeIdentifier": "t_int16", "typeString": "int16" } }, - "src": "16294:52:24", + "src": "16822:52:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -65117,14 +65398,14 @@ }, { "hexValue": "4c4243303335", - "id": 8719, + "id": 9315, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "16360:8:24", + "src": "16888:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_37570ea73114ff69cb8aab9e09d6f5beb11b36ce1a2ae19ee6f5de28dc42d754", "typeString": "literal_string \"LBC035\"" @@ -65143,7 +65424,7 @@ "typeString": "literal_string \"LBC035\"" } ], - "id": 8715, + "id": 9311, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -65151,13 +65432,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "16273:7:24", + "src": "16801:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8720, + "id": 9316, "isConstant": false, "isLValue": false, "isPure": false, @@ -65166,16 +65447,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16273:105:24", + "src": "16801:105:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8721, + "id": 9317, "nodeType": "ExpressionStatement", - "src": "16273:105:24" + "src": "16801:105:24" }, { "expression": { @@ -65185,7 +65466,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 8733, + "id": 9329, "isConstant": false, "isLValue": false, "isPure": false, @@ -65195,7 +65476,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 8729, + "id": 9325, "isConstant": false, "isLValue": false, "isPure": false, @@ -65205,18 +65486,18 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 8725, + "id": 9321, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8723, + "id": 9319, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "16409:28:24", + "referencedDeclaration": 9274, + "src": "16937:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -65226,21 +65507,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 8724, + "id": 9320, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16440:1:24", + "src": "16968:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "16409:32:24", + "src": "16937:32:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -65253,18 +65534,18 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 8728, + "id": 9324, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8726, + "id": 9322, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "16457:28:24", + "referencedDeclaration": 9274, + "src": "16985:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -65273,24 +65554,24 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 8727, + "id": 9323, "name": "BRIDGE_REFUNDED_LP_ERROR_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7443, - "src": "16489:29:24", + "referencedDeclaration": 7964, + "src": "17017:29:24", "typeDescriptions": { "typeIdentifier": "t_int16", "typeString": "int16" } }, - "src": "16457:61:24", + "src": "16985:61:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "16409:109:24", + "src": "16937:109:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -65303,18 +65584,18 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 8732, + "id": 9328, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8730, + "id": 9326, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "16534:28:24", + "referencedDeclaration": 9274, + "src": "17062:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -65323,24 +65604,24 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 8731, + "id": 9327, "name": "BRIDGE_REFUNDED_USER_ERROR_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7439, - "src": "16566:31:24", + "referencedDeclaration": 7960, + "src": "17094:31:24", "typeDescriptions": { "typeIdentifier": "t_int16", "typeString": "int16" } }, - "src": "16534:63:24", + "src": "17062:63:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "16409:188:24", + "src": "16937:188:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -65348,14 +65629,14 @@ }, { "hexValue": "4c4243303336", - "id": 8734, + "id": 9330, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "16611:8:24", + "src": "17139:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_5ccb4449252c316623411606962515c0966208bcce5fe352c2e850b058d1077c", "typeString": "literal_string \"LBC036\"" @@ -65374,7 +65655,7 @@ "typeString": "literal_string \"LBC036\"" } ], - "id": 8722, + "id": 9318, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -65382,13 +65663,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "16388:7:24", + "src": "16916:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 8735, + "id": 9331, "isConstant": false, "isLValue": false, "isPure": false, @@ -65397,39 +65678,39 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16388:241:24", + "src": "16916:241:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8736, + "id": 9332, "nodeType": "ExpressionStatement", - "src": "16388:241:24" + "src": "16916:241:24" }, { "condition": { "arguments": [ { - "id": 8738, + "id": 9334, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "16687:5:24", + "referencedDeclaration": 9215, + "src": "17215:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, { - "id": 8739, + "id": 9335, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "16706:28:24", + "referencedDeclaration": 9274, + "src": "17234:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -65438,25 +65719,25 @@ { "expression": { "baseExpression": { - "id": 8740, + "id": 9336, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7655, - "src": "16748:12:24", + "referencedDeclaration": 8176, + "src": "17276:12:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$7482_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8003_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" } }, - "id": 8742, + "id": 9338, "indexExpression": { - "id": 8741, + "id": 9337, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "16761:9:24", + "referencedDeclaration": 9231, + "src": "17289:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -65467,34 +65748,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "16748:23:24", + "src": "17276:23:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$7482_storage", + "typeIdentifier": "t_struct$_Registry_$8003_storage", "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" } }, - "id": 8743, + "id": 9339, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "16772:9:24", + "memberLocation": "17300:9:24", "memberName": "timestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 7479, - "src": "16748:33:24", + "referencedDeclaration": 8000, + "src": "17276:33:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, { - "id": 8744, + "id": 9340, "name": "height", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8627, - "src": "16795:6:24", + "referencedDeclaration": 9223, + "src": "17323:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -65504,7 +65785,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" }, { @@ -65520,18 +65801,18 @@ "typeString": "uint256" } ], - "id": 8737, + "id": 9333, "name": "shouldPenalizeLP", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10011, - "src": "16657:16:24", + "referencedDeclaration": 10607, + "src": "17185:16:24", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10599_memory_ptr_$_t_int256_$_t_uint256_$_t_uint256_$returns$_t_bool_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$11195_memory_ptr_$_t_int256_$_t_uint256_$_t_uint256_$returns$_t_bool_$", "typeString": "function (struct QuotesV2.PeginQuote memory,int256,uint256,uint256) view returns (bool)" } }, - "id": 8745, + "id": 9341, "isConstant": false, "isLValue": false, "isPure": false, @@ -65540,35 +65821,35 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16657:154:24", + "src": "17185:154:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 8787, + "id": 9383, "nodeType": "IfStatement", - "src": "16640:816:24", + "src": "17168:816:24", "trueBody": { - "id": 8786, + "id": 9382, "nodeType": "Block", - "src": "16822:634:24", + "src": "17350:634:24", "statements": [ { "assignments": [ - 8747 + 9343 ], "declarations": [ { "constant": false, - "id": 8747, + "id": 9343, "mutability": "mutable", "name": "penalizationAmount", - "nameLocation": "16841:18:24", + "nameLocation": "17369:18:24", "nodeType": "VariableDeclaration", - "scope": 8786, - "src": "16836:23:24", + "scope": 9382, + "src": "17364:23:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -65576,10 +65857,10 @@ "typeString": "uint256" }, "typeName": { - "id": 8746, + "id": 9342, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "16836:4:24", + "src": "17364:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -65588,32 +65869,32 @@ "visibility": "internal" } ], - "id": 8756, + "id": 9352, "initialValue": { "arguments": [ { "expression": { - "id": 8749, + "id": 9345, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "16883:5:24", + "referencedDeclaration": 9215, + "src": "17411:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8750, + "id": 9346, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "16889:10:24", + "memberLocation": "17417:10:24", "memberName": "penaltyFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10574, - "src": "16883:16:24", + "referencedDeclaration": 11170, + "src": "17411:16:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -65621,41 +65902,41 @@ }, { "baseExpression": { - "id": 8751, + "id": 9347, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7641, - "src": "16917:10:24", + "referencedDeclaration": 8162, + "src": "17445:10:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8754, + "id": 9350, "indexExpression": { "expression": { - "id": 8752, + "id": 9348, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "16928:5:24", + "referencedDeclaration": 9215, + "src": "17456:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8753, + "id": 9349, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "16934:27:24", + "memberLocation": "17462:27:24", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10564, - "src": "16928:33:24", + "referencedDeclaration": 11160, + "src": "17456:33:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -65666,7 +65947,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "16917:45:24", + "src": "17445:45:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -65684,18 +65965,18 @@ "typeString": "uint256" } ], - "id": 8748, + "id": 9344, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9764, - "src": "16862:3:24", + "referencedDeclaration": 10360, + "src": "17390:3:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 8755, + "id": 9351, "isConstant": false, "isLValue": false, "isPure": false, @@ -65704,7 +65985,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "16862:114:24", + "src": "17390:114:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -65712,52 +65993,52 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "16836:140:24" + "src": "17364:140:24" }, { "expression": { - "id": 8762, + "id": 9358, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 8757, + "id": 9353, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7641, - "src": "17053:10:24", + "referencedDeclaration": 8162, + "src": "17581:10:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 8760, + "id": 9356, "indexExpression": { "expression": { - "id": 8758, + "id": 9354, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "17064:5:24", + "referencedDeclaration": 9215, + "src": "17592:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8759, + "id": 9355, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "17070:27:24", + "memberLocation": "17598:27:24", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10564, - "src": "17064:33:24", + "referencedDeclaration": 11160, + "src": "17592:33:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -65768,7 +66049,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "17053:45:24", + "src": "17581:45:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -65777,77 +66058,77 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 8761, + "id": 9357, "name": "penalizationAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8747, - "src": "17102:18:24", + "referencedDeclaration": 9343, + "src": "17630:18:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "17053:67:24", + "src": "17581:67:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 8763, + "id": 9359, "nodeType": "ExpressionStatement", - "src": "17053:67:24" + "src": "17581:67:24" }, { "eventCall": { "arguments": [ { "expression": { - "id": 8765, + "id": 9361, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "17166:5:24", + "referencedDeclaration": 9215, + "src": "17694:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8766, + "id": 9362, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "17172:27:24", + "memberLocation": "17700:27:24", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10564, - "src": "17166:33:24", + "referencedDeclaration": 11160, + "src": "17694:33:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 8767, + "id": 9363, "name": "penalizationAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8747, - "src": "17217:18:24", + "referencedDeclaration": 9343, + "src": "17745:18:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 8768, + "id": 9364, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "17253:9:24", + "referencedDeclaration": 9231, + "src": "17781:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -65869,18 +66150,18 @@ "typeString": "bytes32" } ], - "id": 8764, + "id": 9360, "name": "Penalized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7566, - "src": "17139:9:24", + "referencedDeclaration": 8087, + "src": "17667:9:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bytes32_$returns$__$", "typeString": "function (address,uint256,bytes32)" } }, - "id": 8769, + "id": 9365, "isConstant": false, "isLValue": false, "isPure": false, @@ -65889,31 +66170,31 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17139:137:24", + "src": "17667:137:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8770, + "id": 9366, "nodeType": "EmitStatement", - "src": "17134:142:24" + "src": "17662:142:24" }, { "assignments": [ - 8772 + 9368 ], "declarations": [ { "constant": false, - "id": 8772, + "id": 9368, "mutability": "mutable", "name": "punisherReward", - "nameLocation": "17335:14:24", + "nameLocation": "17863:14:24", "nodeType": "VariableDeclaration", - "scope": 8786, - "src": "17327:22:24", + "scope": 9382, + "src": "17855:22:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -65921,10 +66202,10 @@ "typeString": "uint256" }, "typeName": { - "id": 8771, + "id": 9367, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "17327:7:24", + "src": "17855:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -65933,13 +66214,13 @@ "visibility": "internal" } ], - "id": 8779, + "id": 9375, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8778, + "id": 9374, "isConstant": false, "isLValue": false, "isPure": false, @@ -65951,18 +66232,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8775, + "id": 9371, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8773, + "id": 9369, "name": "penalizationAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8747, - "src": "17353:18:24", + "referencedDeclaration": 9343, + "src": "17881:18:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -65971,32 +66252,32 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 8774, + "id": 9370, "name": "rewardP", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7665, - "src": "17374:7:24", + "referencedDeclaration": 8186, + "src": "17902:7:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "17353:28:24", + "src": "17881:28:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 8776, + "id": 9372, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "17352:30:24", + "src": "17880:30:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -66006,66 +66287,66 @@ "operator": "/", "rightExpression": { "hexValue": "313030", - "id": 8777, + "id": 9373, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "17385:3:24", + "src": "17913:3:24", "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, - "src": "17352:36:24", + "src": "17880:36:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "17327:61:24" + "src": "17855:61:24" }, { "expression": { "arguments": [ { "expression": { - "id": 8781, + "id": 9377, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "17418:3:24", + "src": "17946:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8782, + "id": 9378, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "17422:6:24", + "memberLocation": "17950:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "17418:10:24", + "src": "17946:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 8783, + "id": 9379, "name": "punisherReward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8772, - "src": "17430:14:24", + "referencedDeclaration": 9368, + "src": "17958:14:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -66083,18 +66364,18 @@ "typeString": "uint256" } ], - "id": 8780, + "id": 9376, "name": "increaseBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9783, - "src": "17402:15:24", + "referencedDeclaration": 10379, + "src": "17930:15:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 8784, + "id": 9380, "isConstant": false, "isLValue": false, "isPure": false, @@ -66103,16 +66384,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17402:43:24", + "src": "17930:43:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8785, + "id": 9381, "nodeType": "ExpressionStatement", - "src": "17402:43:24" + "src": "17930:43:24" } ] } @@ -66123,7 +66404,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 8794, + "id": 9390, "isConstant": false, "isLValue": false, "isPure": false, @@ -66133,18 +66414,18 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 8790, + "id": 9386, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8788, + "id": 9384, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "17483:28:24", + "referencedDeclaration": 9274, + "src": "18011:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -66153,18 +66434,18 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 8789, + "id": 9385, "name": "BRIDGE_REFUNDED_LP_ERROR_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7443, - "src": "17515:29:24", + "referencedDeclaration": 7964, + "src": "18043:29:24", "typeDescriptions": { "typeIdentifier": "t_int16", "typeString": "int16" } }, - "src": "17483:61:24", + "src": "18011:61:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -66177,18 +66458,18 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 8793, + "id": 9389, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8791, + "id": 9387, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "17560:28:24", + "referencedDeclaration": 9274, + "src": "18088:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -66197,65 +66478,65 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 8792, + "id": 9388, "name": "BRIDGE_REFUNDED_USER_ERROR_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7439, - "src": "17592:31:24", + "referencedDeclaration": 7960, + "src": "18120:31:24", "typeDescriptions": { "typeIdentifier": "t_int16", "typeString": "int16" } }, - "src": "17560:63:24", + "src": "18088:63:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "17483:140:24", + "src": "18011:140:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 8814, + "id": 9410, "nodeType": "IfStatement", - "src": "17466:447:24", + "src": "17994:447:24", "trueBody": { - "id": 8813, + "id": 9409, "nodeType": "Block", - "src": "17634:279:24", + "src": "18162:279:24", "statements": [ { "expression": { - "id": 8799, + "id": 9395, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 8795, + "id": 9391, "name": "processedQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7679, - "src": "17683:15:24", + "referencedDeclaration": 8200, + "src": "18211:15:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", "typeString": "mapping(bytes32 => uint8)" } }, - "id": 8797, + "id": 9393, "indexExpression": { - "id": 8796, + "id": 9392, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "17699:9:24", + "referencedDeclaration": 9231, + "src": "18227:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -66266,7 +66547,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "17683:26:24", + "src": "18211:26:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -66275,30 +66556,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 8798, + "id": 9394, "name": "PROCESSED_QUOTE_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7435, - "src": "17712:20:24", + "referencedDeclaration": 7956, + "src": "18240:20:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, - "src": "17683:49:24", + "src": "18211:49:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, - "id": 8800, + "id": 9396, "nodeType": "ExpressionStatement", - "src": "17683:49:24" + "src": "18211:49:24" }, { "expression": { - "id": 8804, + "id": 9400, "isConstant": false, "isLValue": false, "isPure": false, @@ -66306,28 +66587,28 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "17746:30:24", + "src": "18274:30:24", "subExpression": { "baseExpression": { - "id": 8801, + "id": 9397, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7655, - "src": "17753:12:24", + "referencedDeclaration": 8176, + "src": "18281:12:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$7482_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8003_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" } }, - "id": 8803, + "id": 9399, "indexExpression": { - "id": 8802, + "id": 9398, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "17766:9:24", + "referencedDeclaration": 9231, + "src": "18294:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -66338,9 +66619,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "17753:23:24", + "src": "18281:23:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$7482_storage", + "typeIdentifier": "t_struct$_Registry_$8003_storage", "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" } }, @@ -66349,32 +66630,32 @@ "typeString": "tuple()" } }, - "id": 8805, + "id": 9401, "nodeType": "ExpressionStatement", - "src": "17746:30:24" + "src": "18274:30:24" }, { "eventCall": { "arguments": [ { - "id": 8807, + "id": 9403, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "17813:9:24", + "referencedDeclaration": 9231, + "src": "18341:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 8808, + "id": 9404, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "17824:28:24", + "referencedDeclaration": 9274, + "src": "18352:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -66392,18 +66673,18 @@ "typeString": "int256" } ], - "id": 8806, + "id": 9402, "name": "BridgeCapExceeded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7572, - "src": "17795:17:24", + "referencedDeclaration": 8093, + "src": "18323:17:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_int256_$returns$__$", "typeString": "function (bytes32,int256)" } }, - "id": 8809, + "id": 9405, "isConstant": false, "isLValue": false, "isPure": false, @@ -66412,52 +66693,52 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "17795:58:24", + "src": "18323:58:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8810, + "id": 9406, "nodeType": "EmitStatement", - "src": "17790:63:24" + "src": "18318:63:24" }, { "expression": { - "id": 8811, + "id": 9407, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "17874:28:24", + "referencedDeclaration": 9274, + "src": "18402:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, - "functionReturnParameters": 8633, - "id": 8812, + "functionReturnParameters": 9229, + "id": 9408, "nodeType": "Return", - "src": "17867:35:24" + "src": "18395:35:24" } ] } }, { "assignments": [ - 8816 + 9412 ], "declarations": [ { "constant": false, - "id": 8816, + "id": 9412, "mutability": "mutable", "name": "transferredAmount", - "nameLocation": "18104:17:24", + "nameLocation": "18632:17:24", "nodeType": "VariableDeclaration", - "scope": 9017, - "src": "18099:22:24", + "scope": 9613, + "src": "18627:22:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -66465,10 +66746,10 @@ "typeString": "uint256" }, "typeName": { - "id": 8815, + "id": 9411, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "18099:4:24", + "src": "18627:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -66477,16 +66758,16 @@ "visibility": "internal" } ], - "id": 8821, + "id": 9417, "initialValue": { "arguments": [ { - "id": 8819, + "id": 9415, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "18129:28:24", + "referencedDeclaration": 9274, + "src": "18657:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -66500,26 +66781,26 @@ "typeString": "int256" } ], - "id": 8818, + "id": 9414, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "18124:4:24", + "src": "18652:4:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { - "id": 8817, + "id": 9413, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "18124:4:24", + "src": "18652:4:24", "typeDescriptions": {} } }, - "id": 8820, + "id": 9416, "isConstant": false, "isLValue": false, "isPure": false, @@ -66528,7 +66809,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18124:34:24", + "src": "18652:34:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -66536,30 +66817,30 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "18099:59:24" + "src": "18627:59:24" }, { "expression": { "arguments": [ { - "id": 8825, + "id": 9421, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "18196:5:24", + "referencedDeclaration": 9215, + "src": "18724:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, { - "id": 8826, + "id": 9422, "name": "transferredAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8816, - "src": "18203:17:24", + "referencedDeclaration": 9412, + "src": "18731:17:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -66569,7 +66850,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" }, { @@ -66578,33 +66859,33 @@ } ], "expression": { - "id": 8822, + "id": 9418, "name": "QuotesV2", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10849, - "src": "18169:8:24", + "referencedDeclaration": 11445, + "src": "18697:8:24", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_QuotesV2_$10849_$", + "typeIdentifier": "t_type$_t_contract$_QuotesV2_$11445_$", "typeString": "type(library QuotesV2)" } }, - "id": 8824, + "id": 9420, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "18178:17:24", + "memberLocation": "18706:17:24", "memberName": "checkAgreedAmount", "nodeType": "MemberAccess", - "referencedDeclaration": 10848, - "src": "18169:26:24", + "referencedDeclaration": 11444, + "src": "18697:26:24", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PeginQuote_$10599_memory_ptr_$_t_uint256_$returns$__$", + "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PeginQuote_$11195_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (struct QuotesV2.PeginQuote memory,uint256) pure" } }, - "id": 8827, + "id": 9423, "isConstant": false, "isLValue": false, "isPure": false, @@ -66613,16 +66894,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18169:52:24", + "src": "18697:52:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8828, + "id": 9424, "nodeType": "ExpressionStatement", - "src": "18169:52:24" + "src": "18697:52:24" }, { "condition": { @@ -66630,7 +66911,7 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 8834, + "id": 9430, "isConstant": false, "isLValue": false, "isPure": false, @@ -66638,25 +66919,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 8829, + "id": 9425, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7655, - "src": "18236:12:24", + "referencedDeclaration": 8176, + "src": "18764:12:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$7482_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8003_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" } }, - "id": 8831, + "id": 9427, "indexExpression": { - "id": 8830, + "id": 9426, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "18249:9:24", + "referencedDeclaration": 9231, + "src": "18777:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -66667,22 +66948,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18236:23:24", + "src": "18764:23:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$7482_storage", + "typeIdentifier": "t_struct$_Registry_$8003_storage", "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" } }, - "id": 8832, + "id": 9428, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "18260:9:24", + "memberLocation": "18788:9:24", "memberName": "timestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 7479, - "src": "18236:33:24", + "referencedDeclaration": 8000, + "src": "18764:33:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -66692,45 +66973,45 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 8833, + "id": 9429, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "18272:1:24", + "src": "18800:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "18236:37:24", + "src": "18764:37:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 8997, + "id": 9593, "nodeType": "Block", - "src": "19709:1234:24", + "src": "20237:1234:24", "statements": [ { "assignments": [ - 8924 + 9520 ], "declarations": [ { "constant": false, - "id": 8924, + "id": 9520, "mutability": "mutable", "name": "refundAmount", - "nameLocation": "19728:12:24", + "nameLocation": "20256:12:24", "nodeType": "VariableDeclaration", - "scope": 8997, - "src": "19723:17:24", + "scope": 9593, + "src": "20251:17:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -66738,10 +67019,10 @@ "typeString": "uint256" }, "typeName": { - "id": 8923, + "id": 9519, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "19723:4:24", + "src": "20251:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -66750,21 +67031,21 @@ "visibility": "internal" } ], - "id": 8926, + "id": 9522, "initialValue": { - "id": 8925, + "id": 9521, "name": "transferredAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8816, - "src": "19743:17:24", + "referencedDeclaration": 9412, + "src": "20271:17:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "19723:37:24" + "src": "20251:37:24" }, { "condition": { @@ -66772,34 +67053,34 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 8933, + "id": 9529, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 8927, + "id": 9523, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "19779:5:24", + "referencedDeclaration": 9215, + "src": "20307:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8928, + "id": 9524, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19785:14:24", + "memberLocation": "20313:14:24", "memberName": "callOnRegister", "nodeType": "MemberAccess", - "referencedDeclaration": 10594, - "src": "19779:20:24", + "referencedDeclaration": 11190, + "src": "20307:20:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -66812,18 +67093,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8932, + "id": 9528, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8929, + "id": 9525, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8924, - "src": "19803:12:24", + "referencedDeclaration": 9520, + "src": "20331:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -66833,67 +67114,67 @@ "operator": ">=", "rightExpression": { "expression": { - "id": 8930, + "id": 9526, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "19819:5:24", + "referencedDeclaration": 9215, + "src": "20347:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8931, + "id": 9527, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19825:5:24", + "memberLocation": "20353:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10584, - "src": "19819:11:24", + "referencedDeclaration": 11180, + "src": "20347:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "19803:27:24", + "src": "20331:27:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "19779:51:24", + "src": "20307:51:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 8972, + "id": 9568, "nodeType": "IfStatement", - "src": "19775:656:24", + "src": "20303:656:24", "trueBody": { - "id": 8971, + "id": 9567, "nodeType": "Block", - "src": "19832:599:24", + "src": "20360:599:24", "statements": [ { "assignments": [ - 8935, + 9531, null ], "declarations": [ { "constant": false, - "id": 8935, + "id": 9531, "mutability": "mutable", "name": "callSuccess", - "nameLocation": "19856:11:24", + "nameLocation": "20384:11:24", "nodeType": "VariableDeclaration", - "scope": 8971, - "src": "19851:16:24", + "scope": 9567, + "src": "20379:16:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -66901,10 +67182,10 @@ "typeString": "bool" }, "typeName": { - "id": 8934, + "id": 9530, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "19851:4:24", + "src": "20379:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -66914,32 +67195,32 @@ }, null ], - "id": 8947, + "id": 9543, "initialValue": { "arguments": [ { "expression": { - "id": 8944, + "id": 9540, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "20010:5:24", + "referencedDeclaration": 9215, + "src": "20538:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8945, + "id": 9541, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "20016:4:24", + "memberLocation": "20544:4:24", "memberName": "data", "nodeType": "MemberAccess", - "referencedDeclaration": 10578, - "src": "20010:10:24", + "referencedDeclaration": 11174, + "src": "20538:10:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -66962,47 +67243,47 @@ ], "expression": { "expression": { - "id": 8936, + "id": 9532, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "19872:5:24", + "referencedDeclaration": 9215, + "src": "20400:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8937, + "id": 9533, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19878:15:24", + "memberLocation": "20406:15:24", "memberName": "contractAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10576, - "src": "19872:21:24", + "referencedDeclaration": 11172, + "src": "20400:21:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 8938, + "id": 9534, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19894:4:24", + "memberLocation": "20422:4:24", "memberName": "call", "nodeType": "MemberAccess", - "src": "19872:26:24", + "src": "20400:26:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 8943, + "id": 9539, "isConstant": false, "isLValue": false, "isPure": false, @@ -67015,27 +67296,27 @@ "options": [ { "expression": { - "id": 8939, + "id": 9535, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "19929:5:24", + "referencedDeclaration": 9215, + "src": "20457:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8940, + "id": 9536, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19935:8:24", + "memberLocation": "20463:8:24", "memberName": "gasLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10580, - "src": "19929:14:24", + "referencedDeclaration": 11176, + "src": "20457:14:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -67043,40 +67324,40 @@ }, { "expression": { - "id": 8941, + "id": 9537, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "19976:5:24", + "referencedDeclaration": 9215, + "src": "20504:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8942, + "id": 9538, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19982:5:24", + "memberLocation": "20510:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10584, - "src": "19976:11:24", + "referencedDeclaration": 11180, + "src": "20504:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "src": "19872:137:24", + "src": "20400:137:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$gasvalue", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 8946, + "id": 9542, "isConstant": false, "isLValue": false, "isPure": false, @@ -67085,7 +67366,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19872:149:24", + "src": "20400:149:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", @@ -67093,33 +67374,33 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "19850:171:24" + "src": "20378:171:24" }, { "eventCall": { "arguments": [ { "expression": { - "id": 8949, + "id": 9545, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "20077:3:24", + "src": "20605:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 8950, + "id": 9546, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "20081:6:24", + "memberLocation": "20609:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "20077:10:24", + "src": "20605:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -67127,27 +67408,27 @@ }, { "expression": { - "id": 8951, + "id": 9547, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "20109:5:24", + "referencedDeclaration": 9215, + "src": "20637:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8952, + "id": 9548, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "20115:15:24", + "memberLocation": "20643:15:24", "memberName": "contractAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10576, - "src": "20109:21:24", + "referencedDeclaration": 11172, + "src": "20637:21:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -67155,27 +67436,27 @@ }, { "expression": { - "id": 8953, + "id": 9549, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "20152:5:24", + "referencedDeclaration": 9215, + "src": "20680:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8954, + "id": 9550, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "20158:8:24", + "memberLocation": "20686:8:24", "memberName": "gasLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10580, - "src": "20152:14:24", + "referencedDeclaration": 11176, + "src": "20680:14:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -67183,27 +67464,27 @@ }, { "expression": { - "id": 8955, + "id": 9551, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "20188:5:24", + "referencedDeclaration": 9215, + "src": "20716:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8956, + "id": 9552, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "20194:5:24", + "memberLocation": "20722:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10584, - "src": "20188:11:24", + "referencedDeclaration": 11180, + "src": "20716:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -67211,51 +67492,51 @@ }, { "expression": { - "id": 8957, + "id": 9553, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "20221:5:24", + "referencedDeclaration": 9215, + "src": "20749:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8958, + "id": 9554, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "20227:4:24", + "memberLocation": "20755:4:24", "memberName": "data", "nodeType": "MemberAccess", - "referencedDeclaration": 10578, - "src": "20221:10:24", + "referencedDeclaration": 11174, + "src": "20749:10:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { - "id": 8959, + "id": 9555, "name": "callSuccess", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8935, - "src": "20253:11:24", + "referencedDeclaration": 9531, + "src": "20781:11:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { - "id": 8960, + "id": 9556, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "20286:9:24", + "referencedDeclaration": 9231, + "src": "20814:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -67293,18 +67574,18 @@ "typeString": "bytes32" } ], - "id": 8948, + "id": 9544, "name": "CallForUser", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7552, - "src": "20044:11:24", + "referencedDeclaration": 8073, + "src": "20572:11:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$_t_bool_$_t_bytes32_$returns$__$", "typeString": "function (address,address,uint256,uint256,bytes memory,bool,bytes32)" } }, - "id": 8961, + "id": 9557, "isConstant": false, "isLValue": false, "isPure": false, @@ -67313,52 +67594,52 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20044:269:24", + "src": "20572:269:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8962, + "id": 9558, "nodeType": "EmitStatement", - "src": "20039:274:24" + "src": "20567:274:24" }, { "condition": { - "id": 8963, + "id": 9559, "name": "callSuccess", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8935, - "src": "20336:11:24", + "referencedDeclaration": 9531, + "src": "20864:11:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 8970, + "id": 9566, "nodeType": "IfStatement", - "src": "20332:85:24", + "src": "20860:85:24", "trueBody": { - "id": 8969, + "id": 9565, "nodeType": "Block", - "src": "20349:68:24", + "src": "20877:68:24", "statements": [ { "expression": { - "id": 8967, + "id": 9563, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 8964, + "id": 9560, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8924, - "src": "20371:12:24", + "referencedDeclaration": 9520, + "src": "20899:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -67368,41 +67649,41 @@ "operator": "-=", "rightHandSide": { "expression": { - "id": 8965, + "id": 9561, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "20387:5:24", + "referencedDeclaration": 9215, + "src": "20915:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8966, + "id": 9562, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "20393:5:24", + "memberLocation": "20921:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10584, - "src": "20387:11:24", + "referencedDeclaration": 11180, + "src": "20915:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "20371:27:24", + "src": "20899:27:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 8968, + "id": 9564, "nodeType": "ExpressionStatement", - "src": "20371:27:24" + "src": "20899:27:24" } ] } @@ -67416,18 +67697,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8975, + "id": 9571, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8973, + "id": 9569, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8924, - "src": "20448:12:24", + "referencedDeclaration": 9520, + "src": "20976:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -67436,46 +67717,46 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 8974, + "id": 9570, "name": "dust", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7669, - "src": "20463:4:24", + "referencedDeclaration": 8190, + "src": "20991:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "20448:19:24", + "src": "20976:19:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 8996, + "id": 9592, "nodeType": "IfStatement", - "src": "20444:489:24", + "src": "20972:489:24", "trueBody": { - "id": 8995, + "id": 9591, "nodeType": "Block", - "src": "20469:464:24", + "src": "20997:464:24", "statements": [ { "assignments": [ - 8977, + 9573, null ], "declarations": [ { "constant": false, - "id": 8977, + "id": 9573, "mutability": "mutable", "name": "success", - "nameLocation": "20572:7:24", + "nameLocation": "21100:7:24", "nodeType": "VariableDeclaration", - "scope": 8995, - "src": "20567:12:24", + "scope": 9591, + "src": "21095:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -67483,10 +67764,10 @@ "typeString": "bool" }, "typeName": { - "id": 8976, + "id": 9572, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "20567:4:24", + "src": "21095:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -67496,19 +67777,19 @@ }, null ], - "id": 8986, + "id": 9582, "initialValue": { "arguments": [ { "hexValue": "", - "id": 8984, + "id": 9580, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "20730:2:24", + "src": "21258:2:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" @@ -67532,47 +67813,47 @@ ], "expression": { "expression": { - "id": 8978, + "id": 9574, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "20584:5:24", + "referencedDeclaration": 9215, + "src": "21112:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8979, + "id": 9575, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "20590:16:24", + "memberLocation": "21118:16:24", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10568, - "src": "20584:22:24", + "referencedDeclaration": 11164, + "src": "21112:22:24", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "id": 8980, + "id": 9576, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "20607:4:24", + "memberLocation": "21135:4:24", "memberName": "call", "nodeType": "MemberAccess", - "src": "20584:27:24", + "src": "21112:27:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 8983, + "id": 9579, "isConstant": false, "isLValue": false, "isPure": false, @@ -67584,37 +67865,37 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 8981, + "id": 9577, "name": "MAX_REFUND_GAS_LIMIT", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7426, - "src": "20642:20:24", + "referencedDeclaration": 7947, + "src": "21170:20:24", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, { - "id": 8982, + "id": 9578, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8924, - "src": "20695:12:24", + "referencedDeclaration": 9520, + "src": "21223:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "src": "20584:145:24", + "src": "21112:145:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$gasvalue", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 8985, + "id": 9581, "isConstant": false, "isLValue": false, "isPure": false, @@ -67623,7 +67904,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20584:149:24", + "src": "21112:149:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", @@ -67631,70 +67912,70 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "20566:167:24" + "src": "21094:167:24" }, { "eventCall": { "arguments": [ { "expression": { - "id": 8988, + "id": 9584, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "20784:5:24", + "referencedDeclaration": 9215, + "src": "21312:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8989, + "id": 9585, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "20790:16:24", + "memberLocation": "21318:16:24", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10568, - "src": "20784:22:24", + "referencedDeclaration": 11164, + "src": "21312:22:24", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, { - "id": 8990, + "id": 9586, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8924, - "src": "20828:12:24", + "referencedDeclaration": 9520, + "src": "21356:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 8991, + "id": 9587, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8977, - "src": "20862:7:24", + "referencedDeclaration": 9573, + "src": "21390:7:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { - "id": 8992, + "id": 9588, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "20891:9:24", + "referencedDeclaration": 9231, + "src": "21419:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -67720,18 +68001,18 @@ "typeString": "bytes32" } ], - "id": 8987, + "id": 9583, "name": "Refund", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7594, - "src": "20756:6:24", + "referencedDeclaration": 8115, + "src": "21284:6:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bool_$_t_bytes32_$returns$__$", "typeString": "function (address,uint256,bool,bytes32)" } }, - "id": 8993, + "id": 9589, "isConstant": false, "isLValue": false, "isPure": false, @@ -67740,44 +68021,44 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "20756:162:24", + "src": "21284:162:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8994, + "id": 9590, "nodeType": "EmitStatement", - "src": "20751:167:24" + "src": "21279:167:24" } ] } } ] }, - "id": 8998, + "id": 9594, "nodeType": "IfStatement", - "src": "18232:2711:24", + "src": "18760:2711:24", "trueBody": { - "id": 8922, + "id": 9518, "nodeType": "Block", - "src": "18275:1428:24", + "src": "18803:1428:24", "statements": [ { "assignments": [ - 8836 + 9432 ], "declarations": [ { "constant": false, - "id": 8836, + "id": 9432, "mutability": "mutable", "name": "refundAmount", - "nameLocation": "18294:12:24", + "nameLocation": "18822:12:24", "nodeType": "VariableDeclaration", - "scope": 8922, - "src": "18289:17:24", + "scope": 9518, + "src": "18817:17:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -67785,10 +68066,10 @@ "typeString": "uint256" }, "typeName": { - "id": 8835, + "id": 9431, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "18289:4:24", + "src": "18817:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -67797,33 +68078,33 @@ "visibility": "internal" } ], - "id": 8837, + "id": 9433, "nodeType": "VariableDeclarationStatement", - "src": "18289:17:24" + "src": "18817:17:24" }, { "condition": { "expression": { "baseExpression": { - "id": 8838, + "id": 9434, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7655, - "src": "18325:12:24", + "referencedDeclaration": 8176, + "src": "18853:12:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$7482_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8003_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" } }, - "id": 8840, + "id": 9436, "indexExpression": { - "id": 8839, + "id": 9435, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "18338:9:24", + "referencedDeclaration": 9231, + "src": "18866:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -67834,46 +68115,46 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "18325:23:24", + "src": "18853:23:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$7482_storage", + "typeIdentifier": "t_struct$_Registry_$8003_storage", "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" } }, - "id": 8841, + "id": 9437, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "18349:7:24", + "memberLocation": "18877:7:24", "memberName": "success", "nodeType": "MemberAccess", - "referencedDeclaration": 7481, - "src": "18325:31:24", + "referencedDeclaration": 8002, + "src": "18853:31:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 8868, + "id": 9464, "nodeType": "Block", - "src": "18536:100:24", + "src": "19064:100:24", "statements": [ { "expression": { - "id": 8866, + "id": 9462, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 8857, + "id": 9453, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8836, - "src": "18554:12:24", + "referencedDeclaration": 9432, + "src": "19082:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -67884,12 +68165,12 @@ "rightHandSide": { "arguments": [ { - "id": 8859, + "id": 9455, "name": "transferredAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8816, - "src": "18573:17:24", + "referencedDeclaration": 9412, + "src": "19101:17:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -67900,34 +68181,34 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8864, + "id": 9460, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 8860, + "id": 9456, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "18592:5:24", + "referencedDeclaration": 9215, + "src": "19120:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8861, + "id": 9457, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "18598:7:24", + "memberLocation": "19126:7:24", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10572, - "src": "18592:13:24", + "referencedDeclaration": 11168, + "src": "19120:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -67937,33 +68218,33 @@ "operator": "+", "rightExpression": { "expression": { - "id": 8862, + "id": 9458, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "18608:5:24", + "referencedDeclaration": 9215, + "src": "19136:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8863, + "id": 9459, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "18614:6:24", + "memberLocation": "19142:6:24", "memberName": "gasFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10598, - "src": "18608:12:24", + "referencedDeclaration": 11194, + "src": "19136:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "18592:28:24", + "src": "19120:28:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -67981,18 +68262,18 @@ "typeString": "uint256" } ], - "id": 8858, + "id": 9454, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9764, - "src": "18569:3:24", + "referencedDeclaration": 10360, + "src": "19097:3:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 8865, + "id": 9461, "isConstant": false, "isLValue": false, "isPure": false, @@ -68001,47 +68282,47 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18569:52:24", + "src": "19097:52:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "18554:67:24", + "src": "19082:67:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 8867, + "id": 9463, "nodeType": "ExpressionStatement", - "src": "18554:67:24" + "src": "19082:67:24" } ] }, - "id": 8869, + "id": 9465, "nodeType": "IfStatement", - "src": "18321:315:24", + "src": "18849:315:24", "trueBody": { - "id": 8856, + "id": 9452, "nodeType": "Block", - "src": "18358:172:24", + "src": "18886:172:24", "statements": [ { "expression": { - "id": 8854, + "id": 9450, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 8842, + "id": 9438, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8836, - "src": "18376:12:24", + "referencedDeclaration": 9432, + "src": "18904:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -68052,12 +68333,12 @@ "rightHandSide": { "arguments": [ { - "id": 8844, + "id": 9440, "name": "transferredAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8816, - "src": "18416:17:24", + "referencedDeclaration": 9412, + "src": "18944:17:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -68068,7 +68349,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8852, + "id": 9448, "isConstant": false, "isLValue": false, "isPure": false, @@ -68078,34 +68359,34 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8849, + "id": 9445, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 8845, + "id": 9441, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "18455:5:24", + "referencedDeclaration": 9215, + "src": "18983:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8846, + "id": 9442, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "18461:5:24", + "memberLocation": "18989:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10584, - "src": "18455:11:24", + "referencedDeclaration": 11180, + "src": "18983:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -68115,33 +68396,33 @@ "operator": "+", "rightExpression": { "expression": { - "id": 8847, + "id": 9443, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "18469:5:24", + "referencedDeclaration": 9215, + "src": "18997:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8848, + "id": 9444, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "18475:7:24", + "memberLocation": "19003:7:24", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10572, - "src": "18469:13:24", + "referencedDeclaration": 11168, + "src": "18997:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "18455:27:24", + "src": "18983:27:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -68151,33 +68432,33 @@ "operator": "+", "rightExpression": { "expression": { - "id": 8850, + "id": 9446, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "18485:5:24", + "referencedDeclaration": 9215, + "src": "19013:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8851, + "id": 9447, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "18491:6:24", + "memberLocation": "19019:6:24", "memberName": "gasFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10598, - "src": "18485:12:24", + "referencedDeclaration": 11194, + "src": "19013:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "18455:42:24", + "src": "18983:42:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -68195,18 +68476,18 @@ "typeString": "uint256" } ], - "id": 8843, + "id": 9439, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9764, - "src": "18391:3:24", + "referencedDeclaration": 10360, + "src": "18919:3:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 8853, + "id": 9449, "isConstant": false, "isLValue": false, "isPure": false, @@ -68215,22 +68496,22 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18391:124:24", + "src": "18919:124:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "18376:139:24", + "src": "18904:139:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 8855, + "id": 9451, "nodeType": "ExpressionStatement", - "src": "18376:139:24" + "src": "18904:139:24" } ] } @@ -68240,39 +68521,39 @@ "arguments": [ { "expression": { - "id": 8871, + "id": 9467, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "18665:5:24", + "referencedDeclaration": 9215, + "src": "19193:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8872, + "id": 9468, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "18671:27:24", + "memberLocation": "19199:27:24", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10564, - "src": "18665:33:24", + "referencedDeclaration": 11160, + "src": "19193:33:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 8873, + "id": 9469, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8836, - "src": "18700:12:24", + "referencedDeclaration": 9432, + "src": "19228:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -68290,18 +68571,18 @@ "typeString": "uint256" } ], - "id": 8870, + "id": 9466, "name": "increaseBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9783, - "src": "18649:15:24", + "referencedDeclaration": 10379, + "src": "19177:15:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 8874, + "id": 9470, "isConstant": false, "isLValue": false, "isPure": false, @@ -68310,31 +68591,31 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18649:64:24", + "src": "19177:64:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8875, + "id": 9471, "nodeType": "ExpressionStatement", - "src": "18649:64:24" + "src": "19177:64:24" }, { "assignments": [ - 8877 + 9473 ], "declarations": [ { "constant": false, - "id": 8877, + "id": 9473, "mutability": "mutable", "name": "remainingAmount", - "nameLocation": "18733:15:24", + "nameLocation": "19261:15:24", "nodeType": "VariableDeclaration", - "scope": 8922, - "src": "18728:20:24", + "scope": 9518, + "src": "19256:20:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -68342,10 +68623,10 @@ "typeString": "uint256" }, "typeName": { - "id": 8876, + "id": 9472, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "18728:4:24", + "src": "19256:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -68354,24 +68635,24 @@ "visibility": "internal" } ], - "id": 8881, + "id": 9477, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8880, + "id": 9476, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8878, + "id": 9474, "name": "transferredAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8816, - "src": "18751:17:24", + "referencedDeclaration": 9412, + "src": "19279:17:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -68380,64 +68661,64 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 8879, + "id": 9475, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8836, - "src": "18771:12:24", + "referencedDeclaration": 9432, + "src": "19299:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "18751:32:24", + "src": "19279:32:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "18728:55:24" + "src": "19256:55:24" }, { "expression": { "arguments": [ { "expression": { - "id": 8883, + "id": 9479, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "18815:5:24", + "referencedDeclaration": 9215, + "src": "19343:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8884, + "id": 9480, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "18821:16:24", + "memberLocation": "19349:16:24", "memberName": "productFeeAmount", "nodeType": "MemberAccess", - "referencedDeclaration": 10596, - "src": "18815:22:24", + "referencedDeclaration": 11192, + "src": "19343:22:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 8885, + "id": 9481, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "18839:9:24", + "referencedDeclaration": 9231, + "src": "19367:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -68455,18 +68736,18 @@ "typeString": "bytes32" } ], - "id": 8882, + "id": 9478, "name": "payToFeeCollector", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10113, - "src": "18797:17:24", + "referencedDeclaration": 10709, + "src": "19325:17:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_bytes32_$returns$__$", "typeString": "function (uint256,bytes32)" } }, - "id": 8886, + "id": 9482, "isConstant": false, "isLValue": false, "isPure": false, @@ -68475,16 +68756,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "18797:52:24", + "src": "19325:52:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8887, + "id": 9483, "nodeType": "ExpressionStatement", - "src": "18797:52:24" + "src": "19325:52:24" }, { "condition": { @@ -68492,18 +68773,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 8890, + "id": 9486, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 8888, + "id": 9484, "name": "remainingAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8877, - "src": "18868:15:24", + "referencedDeclaration": 9473, + "src": "19396:15:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -68512,46 +68793,46 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 8889, + "id": 9485, "name": "dust", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7669, - "src": "18886:4:24", + "referencedDeclaration": 8190, + "src": "19414:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "18868:22:24", + "src": "19396:22:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 8921, + "id": 9517, "nodeType": "IfStatement", - "src": "18864:829:24", + "src": "19392:829:24", "trueBody": { - "id": 8920, + "id": 9516, "nodeType": "Block", - "src": "18892:801:24", + "src": "19420:801:24", "statements": [ { "assignments": [ - 8892, + 9488, null ], "declarations": [ { "constant": false, - "id": 8892, + "id": 9488, "mutability": "mutable", "name": "success", - "nameLocation": "18998:7:24", + "nameLocation": "19526:7:24", "nodeType": "VariableDeclaration", - "scope": 8920, - "src": "18993:12:24", + "scope": 9516, + "src": "19521:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -68559,10 +68840,10 @@ "typeString": "bool" }, "typeName": { - "id": 8891, + "id": 9487, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "18993:4:24", + "src": "19521:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -68572,19 +68853,19 @@ }, null ], - "id": 8901, + "id": 9497, "initialValue": { "arguments": [ { "hexValue": "", - "id": 8899, + "id": 9495, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "19159:2:24", + "src": "19687:2:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" @@ -68608,47 +68889,47 @@ ], "expression": { "expression": { - "id": 8893, + "id": 9489, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "19010:5:24", + "referencedDeclaration": 9215, + "src": "19538:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8894, + "id": 9490, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19016:16:24", + "memberLocation": "19544:16:24", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10568, - "src": "19010:22:24", + "referencedDeclaration": 11164, + "src": "19538:22:24", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "id": 8895, + "id": 9491, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "19033:4:24", + "memberLocation": "19561:4:24", "memberName": "call", "nodeType": "MemberAccess", - "src": "19010:27:24", + "src": "19538:27:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 8898, + "id": 9494, "isConstant": false, "isLValue": false, "isPure": false, @@ -68660,37 +68941,37 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 8896, + "id": 9492, "name": "MAX_REFUND_GAS_LIMIT", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7426, - "src": "19068:20:24", + "referencedDeclaration": 7947, + "src": "19596:20:24", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, { - "id": 8897, + "id": 9493, "name": "remainingAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8877, - "src": "19121:15:24", + "referencedDeclaration": 9473, + "src": "19649:15:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "src": "19010:148:24", + "src": "19538:148:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$gasvalue", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 8900, + "id": 9496, "isConstant": false, "isLValue": false, "isPure": false, @@ -68699,7 +68980,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19010:152:24", + "src": "19538:152:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", @@ -68707,70 +68988,70 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "18992:170:24" + "src": "19520:170:24" }, { "eventCall": { "arguments": [ { "expression": { - "id": 8903, + "id": 9499, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "19213:5:24", + "referencedDeclaration": 9215, + "src": "19741:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8904, + "id": 9500, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19219:16:24", + "memberLocation": "19747:16:24", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10568, - "src": "19213:22:24", + "referencedDeclaration": 11164, + "src": "19741:22:24", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, { - "id": 8905, + "id": 9501, "name": "remainingAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8877, - "src": "19257:15:24", + "referencedDeclaration": 9473, + "src": "19785:15:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 8906, + "id": 9502, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8892, - "src": "19294:7:24", + "referencedDeclaration": 9488, + "src": "19822:7:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { - "id": 8907, + "id": 9503, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "19323:9:24", + "referencedDeclaration": 9231, + "src": "19851:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -68796,18 +69077,18 @@ "typeString": "bytes32" } ], - "id": 8902, + "id": 9498, "name": "Refund", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7594, - "src": "19185:6:24", + "referencedDeclaration": 8115, + "src": "19713:6:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bool_$_t_bytes32_$returns$__$", "typeString": "function (address,uint256,bool,bytes32)" } }, - "id": 8908, + "id": 9504, "isConstant": false, "isLValue": false, "isPure": false, @@ -68816,20 +69097,20 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19185:165:24", + "src": "19713:165:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8909, + "id": 9505, "nodeType": "EmitStatement", - "src": "19180:170:24" + "src": "19708:170:24" }, { "condition": { - "id": 8911, + "id": 9507, "isConstant": false, "isLValue": false, "isPure": false, @@ -68837,14 +69118,14 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "19373:8:24", + "src": "19901:8:24", "subExpression": { - "id": 8910, + "id": 9506, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8892, - "src": "19374:7:24", + "referencedDeclaration": 9488, + "src": "19902:7:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -68855,52 +69136,52 @@ "typeString": "bool" } }, - "id": 8919, + "id": 9515, "nodeType": "IfStatement", - "src": "19369:310:24", + "src": "19897:310:24", "trueBody": { - "id": 8918, + "id": 9514, "nodeType": "Block", - "src": "19383:296:24", + "src": "19911:296:24", "statements": [ { "expression": { "arguments": [ { "expression": { - "id": 8913, + "id": 9509, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8619, - "src": "19564:5:24", + "referencedDeclaration": 9215, + "src": "20092:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 8914, + "id": 9510, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "19570:27:24", + "memberLocation": "20098:27:24", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10564, - "src": "19564:33:24", + "referencedDeclaration": 11160, + "src": "20092:33:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 8915, + "id": 9511, "name": "remainingAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8877, - "src": "19623:15:24", + "referencedDeclaration": 9473, + "src": "20151:15:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -68918,18 +69199,18 @@ "typeString": "uint256" } ], - "id": 8912, + "id": 9508, "name": "increaseBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9783, - "src": "19523:15:24", + "referencedDeclaration": 10379, + "src": "20051:15:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 8916, + "id": 9512, "isConstant": false, "isLValue": false, "isPure": false, @@ -68938,16 +69219,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "19523:137:24", + "src": "20051:137:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 8917, + "id": 9513, "nodeType": "ExpressionStatement", - "src": "19523:137:24" + "src": "20051:137:24" } ] } @@ -68960,32 +69241,32 @@ }, { "expression": { - "id": 9003, + "id": 9599, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 8999, + "id": 9595, "name": "processedQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7679, - "src": "20952:15:24", + "referencedDeclaration": 8200, + "src": "21480:15:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", "typeString": "mapping(bytes32 => uint8)" } }, - "id": 9001, + "id": 9597, "indexExpression": { - "id": 9000, + "id": 9596, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "20968:9:24", + "referencedDeclaration": 9231, + "src": "21496:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -68996,7 +69277,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "20952:26:24", + "src": "21480:26:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -69005,30 +69286,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 9002, + "id": 9598, "name": "PROCESSED_QUOTE_CODE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7435, - "src": "20981:20:24", + "referencedDeclaration": 7956, + "src": "21509:20:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, - "src": "20952:49:24", + "src": "21480:49:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, - "id": 9004, + "id": 9600, "nodeType": "ExpressionStatement", - "src": "20952:49:24" + "src": "21480:49:24" }, { "expression": { - "id": 9008, + "id": 9604, "isConstant": false, "isLValue": false, "isPure": false, @@ -69036,28 +69317,28 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "21011:30:24", + "src": "21539:30:24", "subExpression": { "baseExpression": { - "id": 9005, + "id": 9601, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7655, - "src": "21018:12:24", + "referencedDeclaration": 8176, + "src": "21546:12:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$7482_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8003_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" } }, - "id": 9007, + "id": 9603, "indexExpression": { - "id": 9006, + "id": 9602, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "21031:9:24", + "referencedDeclaration": 9231, + "src": "21559:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -69068,9 +69349,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "21018:23:24", + "src": "21546:23:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$7482_storage", + "typeIdentifier": "t_struct$_Registry_$8003_storage", "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" } }, @@ -69079,32 +69360,32 @@ "typeString": "tuple()" } }, - "id": 9009, + "id": 9605, "nodeType": "ExpressionStatement", - "src": "21011:30:24" + "src": "21539:30:24" }, { "eventCall": { "arguments": [ { - "id": 9011, + "id": 9607, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8635, - "src": "21072:9:24", + "referencedDeclaration": 9231, + "src": "21600:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 9012, + "id": 9608, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "21083:28:24", + "referencedDeclaration": 9274, + "src": "21611:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -69122,18 +69403,18 @@ "typeString": "int256" } ], - "id": 9010, + "id": 9606, "name": "PegInRegistered", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7558, - "src": "21056:15:24", + "referencedDeclaration": 8079, + "src": "21584:15:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_int256_$returns$__$", "typeString": "function (bytes32,int256)" } }, - "id": 9013, + "id": 9609, "isConstant": false, "isLValue": false, "isPure": false, @@ -69142,105 +69423,105 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21056:56:24", + "src": "21584:56:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9014, + "id": 9610, "nodeType": "EmitStatement", - "src": "21051:61:24" + "src": "21579:61:24" }, { "expression": { - "id": 9015, + "id": 9611, "name": "transferredAmountOrErrorCode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 8678, - "src": "21129:28:24", + "referencedDeclaration": 9274, + "src": "21657:28:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, - "functionReturnParameters": 8633, - "id": 9016, + "functionReturnParameters": 9229, + "id": 9612, "nodeType": "Return", - "src": "21122:35:24" + "src": "21650:35:24" } ] }, "documentation": { - "id": 8616, + "id": 9212, "nodeType": "StructuredDocumentation", - "src": "14151:506:24", + "src": "14679:506:24", "text": "@dev Registers a peg-in transaction with the bridge and pays to the involved parties\n@param quote The quote of the service\n@param signature The signature of the quote\n@param btcRawTransaction The peg-in transaction\n@param partialMerkleTree The merkle tree path that proves transaction inclusion\n@param height The block that contains the peg-in transaction\n@return The total peg-in amount received from the bridge contract or an error code" }, "functionSelector": "2d67952c", - "id": 9018, + "id": 9614, "implemented": true, "kind": "function", "modifiers": [ { - "id": 8630, + "id": 9226, "kind": "modifierInvocation", "modifierName": { - "id": 8629, + "id": 9225, "name": "nonReentrant", "nameLocations": [ - "14878:12:24" + "15406:12:24" ], "nodeType": "IdentifierPath", "referencedDeclaration": 346, - "src": "14878:12:24" + "src": "15406:12:24" }, "nodeType": "ModifierInvocation", - "src": "14878:12:24" + "src": "15406:12:24" } ], "name": "registerPegIn", - "nameLocation": "14671:13:24", + "nameLocation": "15199:13:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 8628, + "id": 9224, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 8619, + "id": 9215, "mutability": "mutable", "name": "quote", - "nameLocation": "14721:5:24", + "nameLocation": "15249:5:24", "nodeType": "VariableDeclaration", - "scope": 9018, - "src": "14694:32:24", + "scope": 9614, + "src": "15222:32:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote" }, "typeName": { - "id": 8618, + "id": 9214, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 8617, + "id": 9213, "name": "QuotesV2.PeginQuote", "nameLocations": [ - "14694:8:24", - "14703:10:24" + "15222:8:24", + "15231:10:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10599, - "src": "14694:19:24" + "referencedDeclaration": 11195, + "src": "15222:19:24" }, - "referencedDeclaration": 10599, - "src": "14694:19:24", + "referencedDeclaration": 11195, + "src": "15222:19:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_storage_ptr", "typeString": "struct QuotesV2.PeginQuote" } }, @@ -69248,13 +69529,13 @@ }, { "constant": false, - "id": 8621, + "id": 9217, "mutability": "mutable", "name": "signature", - "nameLocation": "14749:9:24", + "nameLocation": "15277:9:24", "nodeType": "VariableDeclaration", - "scope": 9018, - "src": "14736:22:24", + "scope": 9614, + "src": "15264:22:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -69262,10 +69543,10 @@ "typeString": "bytes" }, "typeName": { - "id": 8620, + "id": 9216, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "14736:5:24", + "src": "15264:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -69275,13 +69556,13 @@ }, { "constant": false, - "id": 8623, + "id": 9219, "mutability": "mutable", "name": "btcRawTransaction", - "nameLocation": "14781:17:24", + "nameLocation": "15309:17:24", "nodeType": "VariableDeclaration", - "scope": 9018, - "src": "14768:30:24", + "scope": 9614, + "src": "15296:30:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -69289,10 +69570,10 @@ "typeString": "bytes" }, "typeName": { - "id": 8622, + "id": 9218, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "14768:5:24", + "src": "15296:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -69302,13 +69583,13 @@ }, { "constant": false, - "id": 8625, + "id": 9221, "mutability": "mutable", "name": "partialMerkleTree", - "nameLocation": "14821:17:24", + "nameLocation": "15349:17:24", "nodeType": "VariableDeclaration", - "scope": 9018, - "src": "14808:30:24", + "scope": 9614, + "src": "15336:30:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -69316,10 +69597,10 @@ "typeString": "bytes" }, "typeName": { - "id": 8624, + "id": 9220, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "14808:5:24", + "src": "15336:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -69329,13 +69610,13 @@ }, { "constant": false, - "id": 8627, + "id": 9223, "mutability": "mutable", "name": "height", - "nameLocation": "14856:6:24", + "nameLocation": "15384:6:24", "nodeType": "VariableDeclaration", - "scope": 9018, - "src": "14848:14:24", + "scope": 9614, + "src": "15376:14:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -69343,10 +69624,10 @@ "typeString": "uint256" }, "typeName": { - "id": 8626, + "id": 9222, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14848:7:24", + "src": "15376:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -69355,21 +69636,21 @@ "visibility": "internal" } ], - "src": "14684:184:24" + "src": "15212:184:24" }, "returnParameters": { - "id": 8633, + "id": 9229, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 8632, + "id": 9228, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 9018, - "src": "14900:6:24", + "scope": 9614, + "src": "15428:6:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -69377,10 +69658,10 @@ "typeString": "int256" }, "typeName": { - "id": 8631, + "id": 9227, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "14900:6:24", + "src": "15428:6:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -69389,19 +69670,19 @@ "visibility": "internal" } ], - "src": "14899:8:24" + "src": "15427:8:24" }, - "scope": 10196, - "src": "14662:6502:24", + "scope": 10792, + "src": "15190:6502:24", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 9150, + "id": 9746, "nodeType": "Block", - "src": "21355:998:24", + "src": "21883:998:24", "statements": [ { "expression": { @@ -69410,27 +69691,27 @@ "arguments": [ { "expression": { - "id": 9028, + "id": 9624, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9021, - "src": "21395:5:24", + "referencedDeclaration": 9617, + "src": "21923:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 9029, + "id": 9625, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "21401:12:24", + "memberLocation": "21929:12:24", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10603, - "src": "21395:18:24", + "referencedDeclaration": 11199, + "src": "21923:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -69444,18 +69725,18 @@ "typeString": "address" } ], - "id": 9027, + "id": 9623, "name": "isRegisteredForPegout", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9843, - "src": "21373:21:24", + "referencedDeclaration": 10439, + "src": "21901:21:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 9030, + "id": 9626, "isConstant": false, "isLValue": false, "isPure": false, @@ -69464,7 +69745,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21373:41:24", + "src": "21901:41:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -69473,14 +69754,14 @@ }, { "hexValue": "4c4243303337", - "id": 9031, + "id": 9627, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "21416:8:24", + "src": "21944:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ecc75ee801269ba7670799af84ad7f1d968d59315783a708807424c72ec63d04", "typeString": "literal_string \"LBC037\"" @@ -69499,7 +69780,7 @@ "typeString": "literal_string \"LBC037\"" } ], - "id": 9026, + "id": 9622, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -69507,13 +69788,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "21365:7:24", + "src": "21893:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9032, + "id": 9628, "isConstant": false, "isLValue": false, "isPure": false, @@ -69522,16 +69803,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21365:60:24", + "src": "21893:60:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9033, + "id": 9629, "nodeType": "ExpressionStatement", - "src": "21365:60:24" + "src": "21893:60:24" }, { "expression": { @@ -69541,7 +69822,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9048, + "id": 9644, "isConstant": false, "isLValue": false, "isPure": false, @@ -69551,7 +69832,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9045, + "id": 9641, "isConstant": false, "isLValue": false, "isPure": false, @@ -69561,7 +69842,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9042, + "id": 9638, "isConstant": false, "isLValue": false, "isPure": false, @@ -69571,34 +69852,34 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9039, + "id": 9635, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9035, + "id": 9631, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9021, - "src": "21443:5:24", + "referencedDeclaration": 9617, + "src": "21971:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 9036, + "id": 9632, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "21449:5:24", + "memberLocation": "21977:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10619, - "src": "21443:11:24", + "referencedDeclaration": 11215, + "src": "21971:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -69608,33 +69889,33 @@ "operator": "+", "rightExpression": { "expression": { - "id": 9037, + "id": 9633, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9021, - "src": "21457:5:24", + "referencedDeclaration": 9617, + "src": "21985:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 9038, + "id": 9634, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "21463:7:24", + "memberLocation": "21991:7:24", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10611, - "src": "21457:13:24", + "referencedDeclaration": 11207, + "src": "21985:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "21443:27:24", + "src": "21971:27:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -69644,33 +69925,33 @@ "operator": "+", "rightExpression": { "expression": { - "id": 9040, + "id": 9636, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9021, - "src": "21473:5:24", + "referencedDeclaration": 9617, + "src": "22001:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 9041, + "id": 9637, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "21479:16:24", + "memberLocation": "22007:16:24", "memberName": "productFeeAmount", "nodeType": "MemberAccess", - "referencedDeclaration": 10635, - "src": "21473:22:24", + "referencedDeclaration": 11231, + "src": "22001:22:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "21443:52:24", + "src": "21971:52:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -69680,33 +69961,33 @@ "operator": "+", "rightExpression": { "expression": { - "id": 9043, + "id": 9639, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9021, - "src": "21498:5:24", + "referencedDeclaration": 9617, + "src": "22026:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 9044, + "id": 9640, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "21504:6:24", + "memberLocation": "22032:6:24", "memberName": "gasFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10637, - "src": "21498:12:24", + "referencedDeclaration": 11233, + "src": "22026:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "21443:67:24", + "src": "21971:67:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -69716,32 +69997,32 @@ "operator": "<=", "rightExpression": { "expression": { - "id": 9046, + "id": 9642, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "21514:3:24", + "src": "22042:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 9047, + "id": 9643, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "21518:5:24", + "memberLocation": "22046:5:24", "memberName": "value", "nodeType": "MemberAccess", - "src": "21514:9:24", + "src": "22042:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "21443:80:24", + "src": "21971:80:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -69749,14 +70030,14 @@ }, { "hexValue": "4c4243303633", - "id": 9049, + "id": 9645, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "21525:8:24", + "src": "22053:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0267b5bcac1113eea8a4dc81e170e6fe59336df7f2c6a4d2ae7ad240f894a2f9", "typeString": "literal_string \"LBC063\"" @@ -69775,7 +70056,7 @@ "typeString": "literal_string \"LBC063\"" } ], - "id": 9034, + "id": 9630, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -69783,13 +70064,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "21435:7:24", + "src": "21963:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9050, + "id": 9646, "isConstant": false, "isLValue": false, "isPure": false, @@ -69798,16 +70079,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21435:99:24", + "src": "21963:99:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9051, + "id": 9647, "nodeType": "ExpressionStatement", - "src": "21435:99:24" + "src": "21963:99:24" }, { "expression": { @@ -69817,33 +70098,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9057, + "id": 9653, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9053, + "id": 9649, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967292, - "src": "21552:5:24", + "src": "22080:5:24", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 9054, + "id": 9650, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "21558:9:24", + "memberLocation": "22086:9:24", "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "21552:15:24", + "src": "22080:15:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -69853,33 +70134,33 @@ "operator": "<=", "rightExpression": { "expression": { - "id": 9055, + "id": 9651, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9021, - "src": "21571:5:24", + "referencedDeclaration": 9617, + "src": "22099:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 9056, + "id": 9652, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "21577:16:24", + "memberLocation": "22105:16:24", "memberName": "depositDateLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10623, - "src": "21571:22:24", + "referencedDeclaration": 11219, + "src": "22099:22:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "21552:41:24", + "src": "22080:41:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -69887,14 +70168,14 @@ }, { "hexValue": "4c4243303635", - "id": 9058, + "id": 9654, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "21595:8:24", + "src": "22123:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_39eacc26aa588693c014f46e6dd86f6cac22eb3287098210ddf746f1a6af8214", "typeString": "literal_string \"LBC065\"" @@ -69913,7 +70194,7 @@ "typeString": "literal_string \"LBC065\"" } ], - "id": 9052, + "id": 9648, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -69921,13 +70202,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "21544:7:24", + "src": "22072:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9059, + "id": 9655, "isConstant": false, "isLValue": false, "isPure": false, @@ -69936,16 +70217,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21544:60:24", + "src": "22072:60:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9060, + "id": 9656, "nodeType": "ExpressionStatement", - "src": "21544:60:24" + "src": "22072:60:24" }, { "expression": { @@ -69955,33 +70236,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9066, + "id": 9662, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9062, + "id": 9658, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967292, - "src": "21622:5:24", + "src": "22150:5:24", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 9063, + "id": 9659, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "21628:9:24", + "memberLocation": "22156:9:24", "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "21622:15:24", + "src": "22150:15:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -69991,33 +70272,33 @@ "operator": "<=", "rightExpression": { "expression": { - "id": 9064, + "id": 9660, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9021, - "src": "21641:5:24", + "referencedDeclaration": 9617, + "src": "22169:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 9065, + "id": 9661, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "21647:10:24", + "memberLocation": "22175:10:24", "memberName": "expireDate", "nodeType": "MemberAccess", - "referencedDeclaration": 10631, - "src": "21641:16:24", + "referencedDeclaration": 11227, + "src": "22169:16:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "21622:35:24", + "src": "22150:35:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -70025,14 +70306,14 @@ }, { "hexValue": "4c4243303436", - "id": 9067, + "id": 9663, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "21659:8:24", + "src": "22187:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c8999eb883ba6531127283b89d3773d87761ac547946da55d1f52c5931d8838f", "typeString": "literal_string \"LBC046\"" @@ -70051,7 +70332,7 @@ "typeString": "literal_string \"LBC046\"" } ], - "id": 9061, + "id": 9657, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -70059,13 +70340,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "21614:7:24", + "src": "22142:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9068, + "id": 9664, "isConstant": false, "isLValue": false, "isPure": false, @@ -70074,16 +70355,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21614:54:24", + "src": "22142:54:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9069, + "id": 9665, "nodeType": "ExpressionStatement", - "src": "21614:54:24" + "src": "22142:54:24" }, { "expression": { @@ -70093,33 +70374,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9075, + "id": 9671, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9071, + "id": 9667, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967292, - "src": "21686:5:24", + "src": "22214:5:24", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 9072, + "id": 9668, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "21692:6:24", + "memberLocation": "22220:6:24", "memberName": "number", "nodeType": "MemberAccess", - "src": "21686:12:24", + "src": "22214:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -70129,33 +70410,33 @@ "operator": "<=", "rightExpression": { "expression": { - "id": 9073, + "id": 9669, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9021, - "src": "21702:5:24", + "referencedDeclaration": 9617, + "src": "22230:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 9074, + "id": 9670, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "21708:11:24", + "memberLocation": "22236:11:24", "memberName": "expireBlock", "nodeType": "MemberAccess", - "referencedDeclaration": 10633, - "src": "21702:17:24", + "referencedDeclaration": 11229, + "src": "22230:17:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "21686:33:24", + "src": "22214:33:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -70163,14 +70444,14 @@ }, { "hexValue": "4c4243303437", - "id": 9076, + "id": 9672, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "21721:8:24", + "src": "22249:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_b400745c4fd650850c2059b2d13f12980ca63b7ccd87c008204992f11af559c2", "typeString": "literal_string \"LBC047\"" @@ -70189,7 +70470,7 @@ "typeString": "literal_string \"LBC047\"" } ], - "id": 9070, + "id": 9666, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -70197,13 +70478,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "21678:7:24", + "src": "22206:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9077, + "id": 9673, "isConstant": false, "isLValue": false, "isPure": false, @@ -70212,31 +70493,31 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21678:52:24", + "src": "22206:52:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9078, + "id": 9674, "nodeType": "ExpressionStatement", - "src": "21678:52:24" + "src": "22206:52:24" }, { "assignments": [ - 9080 + 9676 ], "declarations": [ { "constant": false, - "id": 9080, + "id": 9676, "mutability": "mutable", "name": "quoteHash", - "nameLocation": "21748:9:24", + "nameLocation": "22276:9:24", "nodeType": "VariableDeclaration", - "scope": 9150, - "src": "21740:17:24", + "scope": 9746, + "src": "22268:17:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -70244,10 +70525,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 9079, + "id": 9675, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "21740:7:24", + "src": "22268:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -70256,18 +70537,18 @@ "visibility": "internal" } ], - "id": 9084, + "id": 9680, "initialValue": { "arguments": [ { - "id": 9082, + "id": 9678, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9021, - "src": "21776:5:24", + "referencedDeclaration": 9617, + "src": "22304:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } } @@ -70275,22 +70556,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } ], - "id": 9081, + "id": 9677, "name": "hashPegoutQuote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9620, - "src": "21760:15:24", + "referencedDeclaration": 10216, + "src": "22288:15:24", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$10638_memory_ptr_$returns$_t_bytes32_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$11234_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (struct QuotesV2.PegOutQuote memory) view returns (bytes32)" } }, - "id": 9083, + "id": 9679, "isConstant": false, "isLValue": false, "isPure": false, @@ -70299,7 +70580,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21760:22:24", + "src": "22288:22:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -70307,7 +70588,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "21740:42:24" + "src": "22268:42:24" }, { "expression": { @@ -70316,51 +70597,51 @@ "arguments": [ { "expression": { - "id": 9088, + "id": 9684, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9021, - "src": "21839:5:24", + "referencedDeclaration": 9617, + "src": "22367:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 9089, + "id": 9685, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "21845:12:24", + "memberLocation": "22373:12:24", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10603, - "src": "21839:18:24", + "referencedDeclaration": 11199, + "src": "22367:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 9090, + "id": 9686, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9080, - "src": "21859:9:24", + "referencedDeclaration": 9676, + "src": "22387:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 9091, + "id": 9687, "name": "signature", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9023, - "src": "21870:9:24", + "referencedDeclaration": 9619, + "src": "22398:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -70383,33 +70664,33 @@ } ], "expression": { - "id": 9086, + "id": 9682, "name": "SignatureValidator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10898, - "src": "21813:18:24", + "referencedDeclaration": 11494, + "src": "22341:18:24", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SignatureValidator_$10898_$", + "typeIdentifier": "t_type$_t_contract$_SignatureValidator_$11494_$", "typeString": "type(library SignatureValidator)" } }, - "id": 9087, + "id": 9683, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "21832:6:24", + "memberLocation": "22360:6:24", "memberName": "verify", "nodeType": "MemberAccess", - "referencedDeclaration": 10897, - "src": "21813:25:24", + "referencedDeclaration": 11493, + "src": "22341:25:24", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_pure$_t_address_$_t_bytes32_$_t_bytes_memory_ptr_$returns$_t_bool_$", "typeString": "function (address,bytes32,bytes memory) pure returns (bool)" } }, - "id": 9092, + "id": 9688, "isConstant": false, "isLValue": false, "isPure": false, @@ -70418,7 +70699,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21813:67:24", + "src": "22341:67:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -70427,14 +70708,14 @@ }, { "hexValue": "4c4243303239", - "id": 9093, + "id": 9689, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "21894:8:24", + "src": "22422:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216", "typeString": "literal_string \"LBC029\"" @@ -70453,7 +70734,7 @@ "typeString": "literal_string \"LBC029\"" } ], - "id": 9085, + "id": 9681, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -70461,13 +70742,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "21792:7:24", + "src": "22320:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9094, + "id": 9690, "isConstant": false, "isLValue": false, "isPure": false, @@ -70476,83 +70757,83 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "21792:120:24", + "src": "22320:120:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9095, + "id": 9691, "nodeType": "ExpressionStatement", - "src": "21792:120:24" + "src": "22320:120:24" }, { "assignments": [ - 9100 + 9696 ], "declarations": [ { "constant": false, - "id": 9100, + "id": 9696, "mutability": "mutable", "name": "registeredQuote", - "nameLocation": "21952:15:24", + "nameLocation": "22480:15:24", "nodeType": "VariableDeclaration", - "scope": 9150, - "src": "21923:44:24", + "scope": 9746, + "src": "22451:44:24", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote" }, "typeName": { - "id": 9099, + "id": 9695, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 9098, + "id": 9694, "name": "QuotesV2.PegOutQuote", "nameLocations": [ - "21923:8:24", - "21932:11:24" + "22451:8:24", + "22460:11:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10638, - "src": "21923:20:24" + "referencedDeclaration": 11234, + "src": "22451:20:24" }, - "referencedDeclaration": 10638, - "src": "21923:20:24", + "referencedDeclaration": 11234, + "src": "22451:20:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote" } }, "visibility": "internal" } ], - "id": 9104, + "id": 9700, "initialValue": { "baseExpression": { - "id": 9101, + "id": 9697, "name": "registeredPegoutQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7684, - "src": "21970:22:24", + "referencedDeclaration": 8205, + "src": "22498:22:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10638_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11234_storage_$", "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote storage ref)" } }, - "id": 9103, + "id": 9699, "indexExpression": { - "id": 9102, + "id": 9698, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9080, - "src": "21993:9:24", + "referencedDeclaration": 9676, + "src": "22521:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -70563,14 +70844,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "21970:33:24", + "src": "22498:33:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage", "typeString": "struct QuotesV2.PegOutQuote storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "21923:80:24" + "src": "22451:80:24" }, { "expression": { @@ -70580,7 +70861,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 9111, + "id": 9707, "isConstant": false, "isLValue": false, "isPure": false, @@ -70588,25 +70869,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 9106, + "id": 9702, "name": "pegoutRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7689, - "src": "22022:14:24", + "referencedDeclaration": 8210, + "src": "22550:14:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$7487_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8008_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord storage ref)" } }, - "id": 9108, + "id": 9704, "indexExpression": { - "id": 9107, + "id": 9703, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9080, - "src": "22037:9:24", + "referencedDeclaration": 9676, + "src": "22565:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -70617,22 +70898,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "22022:25:24", + "src": "22550:25:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$7487_storage", + "typeIdentifier": "t_struct$_PegoutRecord_$8008_storage", "typeString": "struct LiquidityBridgeContractV2.PegoutRecord storage ref" } }, - "id": 9109, + "id": 9705, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "22048:9:24", + "memberLocation": "22576:9:24", "memberName": "completed", "nodeType": "MemberAccess", - "referencedDeclaration": 7486, - "src": "22022:35:24", + "referencedDeclaration": 8007, + "src": "22550:35:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -70642,21 +70923,21 @@ "operator": "==", "rightExpression": { "hexValue": "66616c7365", - "id": 9110, + "id": 9706, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "22061:5:24", + "src": "22589:5:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, - "src": "22022:44:24", + "src": "22550:44:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -70664,14 +70945,14 @@ }, { "hexValue": "4c4243303634", - "id": 9112, + "id": 9708, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "22068:8:24", + "src": "22596:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb", "typeString": "literal_string \"LBC064\"" @@ -70690,7 +70971,7 @@ "typeString": "literal_string \"LBC064\"" } ], - "id": 9105, + "id": 9701, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -70698,13 +70979,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "22014:7:24", + "src": "22542:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9113, + "id": 9709, "isConstant": false, "isLValue": false, "isPure": false, @@ -70713,16 +70994,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "22014:63:24", + "src": "22542:63:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9114, + "id": 9710, "nodeType": "ExpressionStatement", - "src": "22014:63:24" + "src": "22542:63:24" }, { "expression": { @@ -70732,34 +71013,34 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 9122, + "id": 9718, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9116, + "id": 9712, "name": "registeredQuote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9100, - "src": "22095:15:24", + "referencedDeclaration": 9696, + "src": "22623:15:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9117, + "id": 9713, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "22111:10:24", + "memberLocation": "22639:10:24", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10601, - "src": "22095:26:24", + "referencedDeclaration": 11197, + "src": "22623:26:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -70771,14 +71052,14 @@ "arguments": [ { "hexValue": "30", - "id": 9120, + "id": 9716, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "22133:1:24", + "src": "22661:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -70793,26 +71074,26 @@ "typeString": "int_const 0" } ], - "id": 9119, + "id": 9715, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "22125:7:24", + "src": "22653:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 9118, + "id": 9714, "name": "address", "nodeType": "ElementaryTypeName", - "src": "22125:7:24", + "src": "22653:7:24", "typeDescriptions": {} } }, - "id": 9121, + "id": 9717, "isConstant": false, "isLValue": false, "isPure": true, @@ -70821,14 +71102,14 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "22125:10:24", + "src": "22653:10:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "22095:40:24", + "src": "22623:40:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -70836,14 +71117,14 @@ }, { "hexValue": "4c4243303238", - "id": 9123, + "id": 9719, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "22137:8:24", + "src": "22665:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb", "typeString": "literal_string \"LBC028\"" @@ -70862,7 +71143,7 @@ "typeString": "literal_string \"LBC028\"" } ], - "id": 9115, + "id": 9711, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -70870,13 +71151,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "22087:7:24", + "src": "22615:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9124, + "id": 9720, "isConstant": false, "isLValue": false, "isPure": false, @@ -70885,45 +71166,45 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "22087:59:24", + "src": "22615:59:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9125, + "id": 9721, "nodeType": "ExpressionStatement", - "src": "22087:59:24" + "src": "22615:59:24" }, { "expression": { - "id": 9130, + "id": 9726, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 9126, + "id": 9722, "name": "registeredPegoutQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7684, - "src": "22156:22:24", + "referencedDeclaration": 8205, + "src": "22684:22:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10638_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11234_storage_$", "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote storage ref)" } }, - "id": 9128, + "id": 9724, "indexExpression": { - "id": 9127, + "id": 9723, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9080, - "src": "22179:9:24", + "referencedDeclaration": 9676, + "src": "22707:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -70934,39 +71215,39 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "22156:33:24", + "src": "22684:33:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage", "typeString": "struct QuotesV2.PegOutQuote storage ref" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 9129, + "id": 9725, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9021, - "src": "22192:5:24", + "referencedDeclaration": 9617, + "src": "22720:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "src": "22156:41:24", + "src": "22684:41:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage", "typeString": "struct QuotesV2.PegOutQuote storage ref" } }, - "id": 9131, + "id": 9727, "nodeType": "ExpressionStatement", - "src": "22156:41:24" + "src": "22684:41:24" }, { "expression": { - "id": 9138, + "id": 9734, "isConstant": false, "isLValue": false, "isPure": false, @@ -70974,25 +71255,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 9132, + "id": 9728, "name": "pegoutRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7689, - "src": "22207:14:24", + "referencedDeclaration": 8210, + "src": "22735:14:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$7487_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8008_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord storage ref)" } }, - "id": 9134, + "id": 9730, "indexExpression": { - "id": 9133, + "id": 9729, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9080, - "src": "22222:9:24", + "referencedDeclaration": 9676, + "src": "22750:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -71003,22 +71284,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "22207:25:24", + "src": "22735:25:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$7487_storage", + "typeIdentifier": "t_struct$_PegoutRecord_$8008_storage", "typeString": "struct LiquidityBridgeContractV2.PegoutRecord storage ref" } }, - "id": 9135, + "id": 9731, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "22233:16:24", + "memberLocation": "22761:16:24", "memberName": "depositTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 7484, - "src": "22207:42:24", + "referencedDeclaration": 8005, + "src": "22735:42:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -71028,51 +71309,51 @@ "operator": "=", "rightHandSide": { "expression": { - "id": 9136, + "id": 9732, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967292, - "src": "22252:5:24", + "src": "22780:5:24", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 9137, + "id": 9733, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "22258:9:24", + "memberLocation": "22786:9:24", "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "22252:15:24", + "src": "22780:15:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "22207:60:24", + "src": "22735:60:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 9139, + "id": 9735, "nodeType": "ExpressionStatement", - "src": "22207:60:24" + "src": "22735:60:24" }, { "eventCall": { "arguments": [ { - "id": 9141, + "id": 9737, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9080, - "src": "22296:9:24", + "referencedDeclaration": 9676, + "src": "22824:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -71080,26 +71361,26 @@ }, { "expression": { - "id": 9142, + "id": 9738, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "22307:3:24", + "src": "22835:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 9143, + "id": 9739, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "22311:6:24", + "memberLocation": "22839:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "22307:10:24", + "src": "22835:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -71107,26 +71388,26 @@ }, { "expression": { - "id": 9144, + "id": 9740, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "22319:3:24", + "src": "22847:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 9145, + "id": 9741, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "22323:5:24", + "memberLocation": "22851:5:24", "memberName": "value", "nodeType": "MemberAccess", - "src": "22319:9:24", + "src": "22847:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -71134,26 +71415,26 @@ }, { "expression": { - "id": 9146, + "id": 9742, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967292, - "src": "22330:5:24", + "src": "22858:5:24", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 9147, + "id": 9743, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "22336:9:24", + "memberLocation": "22864:9:24", "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "22330:15:24", + "src": "22858:15:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -71179,18 +71460,18 @@ "typeString": "uint256" } ], - "id": 9140, + "id": 9736, "name": "PegOutDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7608, - "src": "22282:13:24", + "referencedDeclaration": 8129, + "src": "22810:13:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (bytes32,address,uint256,uint256)" } }, - "id": 9148, + "id": 9744, "isConstant": false, "isLValue": false, "isPure": false, @@ -71199,64 +71480,64 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "22282:64:24", + "src": "22810:64:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9149, + "id": 9745, "nodeType": "EmitStatement", - "src": "22277:69:24" + "src": "22805:69:24" } ] }, "functionSelector": "8beb537a", - "id": 9151, + "id": 9747, "implemented": true, "kind": "function", "modifiers": [], "name": "depositPegout", - "nameLocation": "21179:13:24", + "nameLocation": "21707:13:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 9024, + "id": 9620, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9021, + "id": 9617, "mutability": "mutable", "name": "quote", - "nameLocation": "21294:5:24", + "nameLocation": "21822:5:24", "nodeType": "VariableDeclaration", - "scope": 9151, - "src": "21266:33:24", + "scope": 9747, + "src": "21794:33:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote" }, "typeName": { - "id": 9020, + "id": 9616, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 9019, + "id": 9615, "name": "QuotesV2.PegOutQuote", "nameLocations": [ - "21266:8:24", - "21275:11:24" + "21794:8:24", + "21803:11:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10638, - "src": "21266:20:24" + "referencedDeclaration": 11234, + "src": "21794:20:24" }, - "referencedDeclaration": 10638, - "src": "21266:20:24", + "referencedDeclaration": 11234, + "src": "21794:20:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote" } }, @@ -71264,13 +71545,13 @@ }, { "constant": false, - "id": 9023, + "id": 9619, "mutability": "mutable", "name": "signature", - "nameLocation": "21322:9:24", + "nameLocation": "21850:9:24", "nodeType": "VariableDeclaration", - "scope": 9151, - "src": "21309:22:24", + "scope": 9747, + "src": "21837:22:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -71278,10 +71559,10 @@ "typeString": "bytes" }, "typeName": { - "id": 9022, + "id": 9618, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "21309:5:24", + "src": "21837:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -71290,92 +71571,92 @@ "visibility": "internal" } ], - "src": "21192:145:24" + "src": "21720:145:24" }, "returnParameters": { - "id": 9025, + "id": 9621, "nodeType": "ParameterList", "parameters": [], - "src": "21355:0:24" + "src": "21883:0:24" }, - "scope": 10196, - "src": "21170:1183:24", + "scope": 10792, + "src": "21698:1183:24", "stateMutability": "payable", "virtual": false, "visibility": "external" }, { "body": { - "id": 9270, + "id": 9866, "nodeType": "Block", - "src": "22440:1003:24", + "src": "22968:1003:24", "statements": [ { "assignments": [ - 9162 + 9758 ], "declarations": [ { "constant": false, - "id": 9162, + "id": 9758, "mutability": "mutable", "name": "quote", - "nameLocation": "22479:5:24", + "nameLocation": "23007:5:24", "nodeType": "VariableDeclaration", - "scope": 9270, - "src": "22450:34:24", + "scope": 9866, + "src": "22978:34:24", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote" }, "typeName": { - "id": 9161, + "id": 9757, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 9160, + "id": 9756, "name": "QuotesV2.PegOutQuote", "nameLocations": [ - "22450:8:24", - "22459:11:24" + "22978:8:24", + "22987:11:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10638, - "src": "22450:20:24" + "referencedDeclaration": 11234, + "src": "22978:20:24" }, - "referencedDeclaration": 10638, - "src": "22450:20:24", + "referencedDeclaration": 11234, + "src": "22978:20:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote" } }, "visibility": "internal" } ], - "id": 9166, + "id": 9762, "initialValue": { "baseExpression": { - "id": 9163, + "id": 9759, "name": "registeredPegoutQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7684, - "src": "22487:22:24", + "referencedDeclaration": 8205, + "src": "23015:22:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10638_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11234_storage_$", "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote storage ref)" } }, - "id": 9165, + "id": 9761, "indexExpression": { - "id": 9164, + "id": 9760, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9153, - "src": "22510:9:24", + "referencedDeclaration": 9749, + "src": "23038:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -71386,14 +71667,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "22487:33:24", + "src": "23015:33:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage", "typeString": "struct QuotesV2.PegOutQuote storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "22450:70:24" + "src": "22978:70:24" }, { "expression": { @@ -71403,34 +71684,34 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 9174, + "id": 9770, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9168, + "id": 9764, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9162, - "src": "22539:5:24", + "referencedDeclaration": 9758, + "src": "23067:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9169, + "id": 9765, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "22545:10:24", + "memberLocation": "23073:10:24", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10601, - "src": "22539:16:24", + "referencedDeclaration": 11197, + "src": "23067:16:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -71442,14 +71723,14 @@ "arguments": [ { "hexValue": "30", - "id": 9172, + "id": 9768, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "22567:1:24", + "src": "23095:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -71464,26 +71745,26 @@ "typeString": "int_const 0" } ], - "id": 9171, + "id": 9767, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "22559:7:24", + "src": "23087:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 9170, + "id": 9766, "name": "address", "nodeType": "ElementaryTypeName", - "src": "22559:7:24", + "src": "23087:7:24", "typeDescriptions": {} } }, - "id": 9173, + "id": 9769, "isConstant": false, "isLValue": false, "isPure": true, @@ -71492,14 +71773,14 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "22559:10:24", + "src": "23087:10:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "22539:30:24", + "src": "23067:30:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -71507,14 +71788,14 @@ }, { "hexValue": "4c4243303432", - "id": 9175, + "id": 9771, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "22571:8:24", + "src": "23099:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1", "typeString": "literal_string \"LBC042\"" @@ -71533,7 +71814,7 @@ "typeString": "literal_string \"LBC042\"" } ], - "id": 9167, + "id": 9763, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -71541,13 +71822,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "22531:7:24", + "src": "23059:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9176, + "id": 9772, "isConstant": false, "isLValue": false, "isPure": false, @@ -71556,16 +71837,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "22531:49:24", + "src": "23059:49:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9177, + "id": 9773, "nodeType": "ExpressionStatement", - "src": "22531:49:24" + "src": "23059:49:24" }, { "expression": { @@ -71575,7 +71856,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 9189, + "id": 9785, "isConstant": false, "isLValue": false, "isPure": false, @@ -71585,33 +71866,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9183, + "id": 9779, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9179, + "id": 9775, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967292, - "src": "22611:5:24", + "src": "23139:5:24", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 9180, + "id": 9776, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "22617:9:24", + "memberLocation": "23145:9:24", "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "22611:15:24", + "src": "23139:15:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -71621,33 +71902,33 @@ "operator": ">", "rightExpression": { "expression": { - "id": 9181, + "id": 9777, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9162, - "src": "22629:5:24", + "referencedDeclaration": 9758, + "src": "23157:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9182, + "id": 9778, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "22635:10:24", + "memberLocation": "23163:10:24", "memberName": "expireDate", "nodeType": "MemberAccess", - "referencedDeclaration": 10631, - "src": "22629:16:24", + "referencedDeclaration": 11227, + "src": "23157:16:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "22611:34:24", + "src": "23139:34:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -71660,33 +71941,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9188, + "id": 9784, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9184, + "id": 9780, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967292, - "src": "22661:5:24", + "src": "23189:5:24", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 9185, + "id": 9781, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "22667:6:24", + "memberLocation": "23195:6:24", "memberName": "number", "nodeType": "MemberAccess", - "src": "22661:12:24", + "src": "23189:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -71696,39 +71977,39 @@ "operator": ">", "rightExpression": { "expression": { - "id": 9186, + "id": 9782, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9162, - "src": "22676:5:24", + "referencedDeclaration": 9758, + "src": "23204:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9187, + "id": 9783, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "22682:11:24", + "memberLocation": "23210:11:24", "memberName": "expireBlock", "nodeType": "MemberAccess", - "referencedDeclaration": 10633, - "src": "22676:17:24", + "referencedDeclaration": 11229, + "src": "23204:17:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "22661:32:24", + "src": "23189:32:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "22611:82:24", + "src": "23139:82:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -71736,14 +72017,14 @@ }, { "hexValue": "4c4243303431", - "id": 9190, + "id": 9786, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "22707:8:24", + "src": "23235:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_476e33256b298fee7fc3dab0c339427caa3a9a4a44654f7f02b328083d44ca74", "typeString": "literal_string \"LBC041\"" @@ -71762,7 +72043,7 @@ "typeString": "literal_string \"LBC041\"" } ], - "id": 9178, + "id": 9774, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -71770,13 +72051,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "22590:7:24", + "src": "23118:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9191, + "id": 9787, "isConstant": false, "isLValue": false, "isPure": false, @@ -71785,31 +72066,31 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "22590:135:24", + "src": "23118:135:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9192, + "id": 9788, "nodeType": "ExpressionStatement", - "src": "22590:135:24" + "src": "23118:135:24" }, { "assignments": [ - 9194 + 9790 ], "declarations": [ { "constant": false, - "id": 9194, + "id": 9790, "mutability": "mutable", "name": "valueToTransfer", - "nameLocation": "22741:15:24", + "nameLocation": "23269:15:24", "nodeType": "VariableDeclaration", - "scope": 9270, - "src": "22736:20:24", + "scope": 9866, + "src": "23264:20:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -71817,10 +72098,10 @@ "typeString": "uint256" }, "typeName": { - "id": 9193, + "id": 9789, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "22736:4:24", + "src": "23264:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -71829,13 +72110,13 @@ "visibility": "internal" } ], - "id": 9206, + "id": 9802, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9205, + "id": 9801, "isConstant": false, "isLValue": false, "isPure": false, @@ -71845,7 +72126,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9202, + "id": 9798, "isConstant": false, "isLValue": false, "isPure": false, @@ -71855,34 +72136,34 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9199, + "id": 9795, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9195, + "id": 9791, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9162, - "src": "22759:5:24", + "referencedDeclaration": 9758, + "src": "23287:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9196, + "id": 9792, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "22765:5:24", + "memberLocation": "23293:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10619, - "src": "22759:11:24", + "referencedDeclaration": 11215, + "src": "23287:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -71892,33 +72173,33 @@ "operator": "+", "rightExpression": { "expression": { - "id": 9197, + "id": 9793, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9162, - "src": "22773:5:24", + "referencedDeclaration": 9758, + "src": "23301:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9198, + "id": 9794, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "22779:7:24", + "memberLocation": "23307:7:24", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10611, - "src": "22773:13:24", + "referencedDeclaration": 11207, + "src": "23301:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "22759:27:24", + "src": "23287:27:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -71928,33 +72209,33 @@ "operator": "+", "rightExpression": { "expression": { - "id": 9200, + "id": 9796, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9162, - "src": "22789:5:24", + "referencedDeclaration": 9758, + "src": "23317:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9201, + "id": 9797, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "22795:16:24", + "memberLocation": "23323:16:24", "memberName": "productFeeAmount", "nodeType": "MemberAccess", - "referencedDeclaration": 10635, - "src": "22789:22:24", + "referencedDeclaration": 11231, + "src": "23317:22:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "22759:52:24", + "src": "23287:52:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -71964,55 +72245,55 @@ "operator": "+", "rightExpression": { "expression": { - "id": 9203, + "id": 9799, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9162, - "src": "22814:5:24", + "referencedDeclaration": 9758, + "src": "23342:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9204, + "id": 9800, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "22820:6:24", + "memberLocation": "23348:6:24", "memberName": "gasFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10637, - "src": "22814:12:24", + "referencedDeclaration": 11233, + "src": "23342:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "22759:67:24", + "src": "23287:67:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "22736:90:24" + "src": "23264:90:24" }, { "assignments": [ - 9208 + 9804 ], "declarations": [ { "constant": false, - "id": 9208, + "id": 9804, "mutability": "mutable", "name": "addressToTransfer", - "nameLocation": "22844:17:24", + "nameLocation": "23372:17:24", "nodeType": "VariableDeclaration", - "scope": 9270, - "src": "22836:25:24", + "scope": 9866, + "src": "23364:25:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -72020,10 +72301,10 @@ "typeString": "address" }, "typeName": { - "id": 9207, + "id": 9803, "name": "address", "nodeType": "ElementaryTypeName", - "src": "22836:7:24", + "src": "23364:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -72033,52 +72314,52 @@ "visibility": "internal" } ], - "id": 9211, + "id": 9807, "initialValue": { "expression": { - "id": 9209, + "id": 9805, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9162, - "src": "22864:5:24", + "referencedDeclaration": 9758, + "src": "23392:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9210, + "id": 9806, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "22870:16:24", + "memberLocation": "23398:16:24", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10607, - "src": "22864:22:24", + "referencedDeclaration": 11203, + "src": "23392:22:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "VariableDeclarationStatement", - "src": "22836:50:24" + "src": "23364:50:24" }, { "assignments": [ - 9213 + 9809 ], "declarations": [ { "constant": false, - "id": 9213, + "id": 9809, "mutability": "mutable", "name": "penalty", - "nameLocation": "22902:7:24", + "nameLocation": "23430:7:24", "nodeType": "VariableDeclaration", - "scope": 9270, - "src": "22897:12:24", + "scope": 9866, + "src": "23425:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -72086,10 +72367,10 @@ "typeString": "uint256" }, "typeName": { - "id": 9212, + "id": 9808, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "22897:4:24", + "src": "23425:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -72098,32 +72379,32 @@ "visibility": "internal" } ], - "id": 9222, + "id": 9818, "initialValue": { "arguments": [ { "expression": { - "id": 9215, + "id": 9811, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9162, - "src": "22916:5:24", + "referencedDeclaration": 9758, + "src": "23444:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9216, + "id": 9812, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "22922:10:24", + "memberLocation": "23450:10:24", "memberName": "penaltyFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10613, - "src": "22916:16:24", + "referencedDeclaration": 11209, + "src": "23444:16:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -72131,41 +72412,41 @@ }, { "baseExpression": { - "id": 9217, + "id": 9813, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7645, - "src": "22934:16:24", + "referencedDeclaration": 8166, + "src": "23462:16:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 9220, + "id": 9816, "indexExpression": { "expression": { - "id": 9218, + "id": 9814, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9162, - "src": "22951:5:24", + "referencedDeclaration": 9758, + "src": "23479:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9219, + "id": 9815, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "22957:12:24", + "memberLocation": "23485:12:24", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10603, - "src": "22951:18:24", + "referencedDeclaration": 11199, + "src": "23479:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -72176,7 +72457,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "22934:36:24", + "src": "23462:36:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -72194,18 +72475,18 @@ "typeString": "uint256" } ], - "id": 9214, + "id": 9810, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9764, - "src": "22912:3:24", + "referencedDeclaration": 10360, + "src": "23440:3:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 9221, + "id": 9817, "isConstant": false, "isLValue": false, "isPure": false, @@ -72214,7 +72495,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "22912:59:24", + "src": "23440:59:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -72222,52 +72503,52 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "22897:74:24" + "src": "23425:74:24" }, { "expression": { - "id": 9228, + "id": 9824, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 9223, + "id": 9819, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7645, - "src": "22981:16:24", + "referencedDeclaration": 8166, + "src": "23509:16:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 9226, + "id": 9822, "indexExpression": { "expression": { - "id": 9224, + "id": 9820, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9162, - "src": "22998:5:24", + "referencedDeclaration": 9758, + "src": "23526:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9225, + "id": 9821, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "23004:12:24", + "memberLocation": "23532:12:24", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10603, - "src": "22998:18:24", + "referencedDeclaration": 11199, + "src": "23526:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -72278,7 +72559,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "22981:36:24", + "src": "23509:36:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -72287,77 +72568,77 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 9227, + "id": 9823, "name": "penalty", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9213, - "src": "23021:7:24", + "referencedDeclaration": 9809, + "src": "23549:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "22981:47:24", + "src": "23509:47:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 9229, + "id": 9825, "nodeType": "ExpressionStatement", - "src": "22981:47:24" + "src": "23509:47:24" }, { "eventCall": { "arguments": [ { "expression": { - "id": 9231, + "id": 9827, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9162, - "src": "23054:5:24", + "referencedDeclaration": 9758, + "src": "23582:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9232, + "id": 9828, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "23060:12:24", + "memberLocation": "23588:12:24", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10603, - "src": "23054:18:24", + "referencedDeclaration": 11199, + "src": "23582:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 9233, + "id": 9829, "name": "penalty", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9213, - "src": "23074:7:24", + "referencedDeclaration": 9809, + "src": "23602:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 9234, + "id": 9830, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9153, - "src": "23083:9:24", + "referencedDeclaration": 9749, + "src": "23611:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -72379,18 +72660,18 @@ "typeString": "bytes32" } ], - "id": 9230, + "id": 9826, "name": "Penalized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7566, - "src": "23044:9:24", + "referencedDeclaration": 8087, + "src": "23572:9:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bytes32_$returns$__$", "typeString": "function (address,uint256,bytes32)" } }, - "id": 9235, + "id": 9831, "isConstant": false, "isLValue": false, "isPure": false, @@ -72399,39 +72680,39 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "23044:49:24", + "src": "23572:49:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9236, + "id": 9832, "nodeType": "EmitStatement", - "src": "23039:54:24" + "src": "23567:54:24" }, { "eventCall": { "arguments": [ { - "id": 9238, + "id": 9834, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9153, - "src": "23140:9:24", + "referencedDeclaration": 9749, + "src": "23668:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 9239, + "id": 9835, "name": "valueToTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9194, - "src": "23163:15:24", + "referencedDeclaration": 9790, + "src": "23691:15:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -72439,27 +72720,27 @@ }, { "expression": { - "id": 9240, + "id": 9836, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9162, - "src": "23192:5:24", + "referencedDeclaration": 9758, + "src": "23720:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9241, + "id": 9837, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "23198:16:24", + "memberLocation": "23726:16:24", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10607, - "src": "23192:22:24", + "referencedDeclaration": 11203, + "src": "23720:22:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -72481,18 +72762,18 @@ "typeString": "address" } ], - "id": 9237, + "id": 9833, "name": "PegOutUserRefunded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7616, - "src": "23108:18:24", + "referencedDeclaration": 8137, + "src": "23636:18:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (bytes32,uint256,address)" } }, - "id": 9242, + "id": 9838, "isConstant": false, "isLValue": false, "isPure": false, @@ -72501,20 +72782,20 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "23108:116:24", + "src": "23636:116:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9243, + "id": 9839, "nodeType": "EmitStatement", - "src": "23103:121:24" + "src": "23631:121:24" }, { "expression": { - "id": 9247, + "id": 9843, "isConstant": false, "isLValue": false, "isPure": false, @@ -72522,28 +72803,28 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "23235:40:24", + "src": "23763:40:24", "subExpression": { "baseExpression": { - "id": 9244, + "id": 9840, "name": "registeredPegoutQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7684, - "src": "23242:22:24", + "referencedDeclaration": 8205, + "src": "23770:22:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10638_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11234_storage_$", "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote storage ref)" } }, - "id": 9246, + "id": 9842, "indexExpression": { - "id": 9245, + "id": 9841, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9153, - "src": "23265:9:24", + "referencedDeclaration": 9749, + "src": "23793:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -72554,9 +72835,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "23242:33:24", + "src": "23770:33:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage", "typeString": "struct QuotesV2.PegOutQuote storage ref" } }, @@ -72565,13 +72846,13 @@ "typeString": "tuple()" } }, - "id": 9248, + "id": 9844, "nodeType": "ExpressionStatement", - "src": "23235:40:24" + "src": "23763:40:24" }, { "expression": { - "id": 9254, + "id": 9850, "isConstant": false, "isLValue": false, "isPure": false, @@ -72579,25 +72860,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 9249, + "id": 9845, "name": "pegoutRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7689, - "src": "23285:14:24", + "referencedDeclaration": 8210, + "src": "23813:14:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$7487_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8008_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord storage ref)" } }, - "id": 9251, + "id": 9847, "indexExpression": { - "id": 9250, + "id": 9846, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9153, - "src": "23300:9:24", + "referencedDeclaration": 9749, + "src": "23828:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -72608,22 +72889,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "23285:25:24", + "src": "23813:25:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$7487_storage", + "typeIdentifier": "t_struct$_PegoutRecord_$8008_storage", "typeString": "struct LiquidityBridgeContractV2.PegoutRecord storage ref" } }, - "id": 9252, + "id": 9848, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "23311:9:24", + "memberLocation": "23839:9:24", "memberName": "completed", "nodeType": "MemberAccess", - "referencedDeclaration": 7486, - "src": "23285:35:24", + "referencedDeclaration": 8007, + "src": "23813:35:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -72633,45 +72914,45 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 9253, + "id": 9849, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "23323:4:24", + "src": "23851:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "23285:42:24", + "src": "23813:42:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 9255, + "id": 9851, "nodeType": "ExpressionStatement", - "src": "23285:42:24" + "src": "23813:42:24" }, { "assignments": [ - 9257, + 9853, null ], "declarations": [ { "constant": false, - "id": 9257, + "id": 9853, "mutability": "mutable", "name": "sent", - "nameLocation": "23344:4:24", + "nameLocation": "23872:4:24", "nodeType": "VariableDeclaration", - "scope": 9270, - "src": "23339:9:24", + "scope": 9866, + "src": "23867:9:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -72679,10 +72960,10 @@ "typeString": "bool" }, "typeName": { - "id": 9256, + "id": 9852, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "23339:4:24", + "src": "23867:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -72692,19 +72973,19 @@ }, null ], - "id": 9264, + "id": 9860, "initialValue": { "arguments": [ { "hexValue": "", - "id": 9262, + "id": 9858, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "23400:2:24", + "src": "23928:2:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" @@ -72727,32 +73008,32 @@ } ], "expression": { - "id": 9258, + "id": 9854, "name": "addressToTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9208, - "src": "23353:17:24", + "referencedDeclaration": 9804, + "src": "23881:17:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 9259, + "id": 9855, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "23371:4:24", + "memberLocation": "23899:4:24", "memberName": "call", "nodeType": "MemberAccess", - "src": "23353:22:24", + "src": "23881:22:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 9261, + "id": 9857, "isConstant": false, "isLValue": false, "isPure": false, @@ -72763,25 +73044,25 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 9260, + "id": 9856, "name": "valueToTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9194, - "src": "23383:15:24", + "referencedDeclaration": 9790, + "src": "23911:15:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "src": "23353:46:24", + "src": "23881:46:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 9263, + "id": 9859, "isConstant": false, "isLValue": false, "isPure": false, @@ -72790,7 +73071,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "23353:50:24", + "src": "23881:50:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", @@ -72798,18 +73079,18 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "23338:65:24" + "src": "23866:65:24" }, { "expression": { "arguments": [ { - "id": 9266, + "id": 9862, "name": "sent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9257, - "src": "23421:4:24", + "referencedDeclaration": 9853, + "src": "23949:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -72817,14 +73098,14 @@ }, { "hexValue": "4c4243303434", - "id": 9267, + "id": 9863, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "23427:8:24", + "src": "23955:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0a7ff570d31f7e351d06bf5b8d0ef26a9275a9d32a7dffd7981a6c6ac58227c6", "typeString": "literal_string \"LBC044\"" @@ -72843,7 +73124,7 @@ "typeString": "literal_string \"LBC044\"" } ], - "id": 9265, + "id": 9861, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -72851,13 +73132,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "23413:7:24", + "src": "23941:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9268, + "id": 9864, "isConstant": false, "isLValue": false, "isPure": false, @@ -72866,57 +73147,57 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "23413:23:24", + "src": "23941:23:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9269, + "id": 9865, "nodeType": "ExpressionStatement", - "src": "23413:23:24" + "src": "23941:23:24" } ] }, "functionSelector": "8f91797d", - "id": 9271, + "id": 9867, "implemented": true, "kind": "function", "modifiers": [ { - "id": 9156, + "id": 9752, "kind": "modifierInvocation", "modifierName": { - "id": 9155, + "id": 9751, "name": "nonReentrant", "nameLocations": [ - "22427:12:24" + "22955:12:24" ], "nodeType": "IdentifierPath", "referencedDeclaration": 346, - "src": "22427:12:24" + "src": "22955:12:24" }, "nodeType": "ModifierInvocation", - "src": "22427:12:24" + "src": "22955:12:24" } ], "name": "refundUserPegOut", - "nameLocation": "22368:16:24", + "nameLocation": "22896:16:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 9154, + "id": 9750, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9153, + "id": 9749, "mutability": "mutable", "name": "quoteHash", - "nameLocation": "22402:9:24", + "nameLocation": "22930:9:24", "nodeType": "VariableDeclaration", - "scope": 9271, - "src": "22394:17:24", + "scope": 9867, + "src": "22922:17:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -72924,10 +73205,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 9152, + "id": 9748, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "22394:7:24", + "src": "22922:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -72936,25 +73217,25 @@ "visibility": "internal" } ], - "src": "22384:33:24" + "src": "22912:33:24" }, "returnParameters": { - "id": 9157, + "id": 9753, "nodeType": "ParameterList", "parameters": [], - "src": "22440:0:24" + "src": "22968:0:24" }, - "scope": 10196, - "src": "22359:1084:24", + "scope": 10792, + "src": "22887:1084:24", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 9540, + "id": 10136, "nodeType": "Block", - "src": "23694:2306:24", + "src": "24222:2306:24", "statements": [ { "expression": { @@ -72964,7 +73245,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 9295, + "id": 9891, "isConstant": false, "isLValue": false, "isPure": false, @@ -72972,25 +73253,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 9290, + "id": 9886, "name": "pegoutRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7689, - "src": "23712:14:24", + "referencedDeclaration": 8210, + "src": "24240:14:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$7487_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8008_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord storage ref)" } }, - "id": 9292, + "id": 9888, "indexExpression": { - "id": 9291, + "id": 9887, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9273, - "src": "23727:9:24", + "referencedDeclaration": 9869, + "src": "24255:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -73001,22 +73282,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "23712:25:24", + "src": "24240:25:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$7487_storage", + "typeIdentifier": "t_struct$_PegoutRecord_$8008_storage", "typeString": "struct LiquidityBridgeContractV2.PegoutRecord storage ref" } }, - "id": 9293, + "id": 9889, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "23738:9:24", + "memberLocation": "24266:9:24", "memberName": "completed", "nodeType": "MemberAccess", - "referencedDeclaration": 7486, - "src": "23712:35:24", + "referencedDeclaration": 8007, + "src": "24240:35:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -73026,21 +73307,21 @@ "operator": "==", "rightExpression": { "hexValue": "66616c7365", - "id": 9294, + "id": 9890, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "23751:5:24", + "src": "24279:5:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, - "src": "23712:44:24", + "src": "24240:44:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -73048,14 +73329,14 @@ }, { "hexValue": "4c4243303634", - "id": 9296, + "id": 9892, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "23758:8:24", + "src": "24286:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb", "typeString": "literal_string \"LBC064\"" @@ -73074,7 +73355,7 @@ "typeString": "literal_string \"LBC064\"" } ], - "id": 9289, + "id": 9885, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -73082,13 +73363,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "23704:7:24", + "src": "24232:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9297, + "id": 9893, "isConstant": false, "isLValue": false, "isPure": false, @@ -73097,83 +73378,83 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "23704:63:24", + "src": "24232:63:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9298, + "id": 9894, "nodeType": "ExpressionStatement", - "src": "23704:63:24" + "src": "24232:63:24" }, { "assignments": [ - 9303 + 9899 ], "declarations": [ { "constant": false, - "id": 9303, + "id": 9899, "mutability": "mutable", "name": "quote", - "nameLocation": "23806:5:24", + "nameLocation": "24334:5:24", "nodeType": "VariableDeclaration", - "scope": 9540, - "src": "23777:34:24", + "scope": 10136, + "src": "24305:34:24", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote" }, "typeName": { - "id": 9302, + "id": 9898, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 9301, + "id": 9897, "name": "QuotesV2.PegOutQuote", "nameLocations": [ - "23777:8:24", - "23786:11:24" + "24305:8:24", + "24314:11:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10638, - "src": "23777:20:24" + "referencedDeclaration": 11234, + "src": "24305:20:24" }, - "referencedDeclaration": 10638, - "src": "23777:20:24", + "referencedDeclaration": 11234, + "src": "24305:20:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote" } }, "visibility": "internal" } ], - "id": 9307, + "id": 9903, "initialValue": { "baseExpression": { - "id": 9304, + "id": 9900, "name": "registeredPegoutQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7684, - "src": "23814:22:24", + "referencedDeclaration": 8205, + "src": "24342:22:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10638_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11234_storage_$", "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote storage ref)" } }, - "id": 9306, + "id": 9902, "indexExpression": { - "id": 9305, + "id": 9901, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9273, - "src": "23837:9:24", + "referencedDeclaration": 9869, + "src": "24365:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -73184,14 +73465,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "23814:33:24", + "src": "24342:33:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage", "typeString": "struct QuotesV2.PegOutQuote storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "23777:70:24" + "src": "24305:70:24" }, { "expression": { @@ -73201,34 +73482,34 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 9315, + "id": 9911, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9309, + "id": 9905, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9303, - "src": "23865:5:24", + "referencedDeclaration": 9899, + "src": "24393:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9310, + "id": 9906, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "23871:10:24", + "memberLocation": "24399:10:24", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10601, - "src": "23865:16:24", + "referencedDeclaration": 11197, + "src": "24393:16:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -73240,14 +73521,14 @@ "arguments": [ { "hexValue": "30", - "id": 9313, + "id": 9909, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "23893:1:24", + "src": "24421:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -73262,26 +73543,26 @@ "typeString": "int_const 0" } ], - "id": 9312, + "id": 9908, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "23885:7:24", + "src": "24413:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 9311, + "id": 9907, "name": "address", "nodeType": "ElementaryTypeName", - "src": "23885:7:24", + "src": "24413:7:24", "typeDescriptions": {} } }, - "id": 9314, + "id": 9910, "isConstant": false, "isLValue": false, "isPure": true, @@ -73290,14 +73571,14 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "23885:10:24", + "src": "24413:10:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "23865:30:24", + "src": "24393:30:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -73305,14 +73586,14 @@ }, { "hexValue": "4c4243303432", - "id": 9316, + "id": 9912, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "23897:8:24", + "src": "24425:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1", "typeString": "literal_string \"LBC042\"" @@ -73331,7 +73612,7 @@ "typeString": "literal_string \"LBC042\"" } ], - "id": 9308, + "id": 9904, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -73339,13 +73620,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "23857:7:24", + "src": "24385:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9317, + "id": 9913, "isConstant": false, "isLValue": false, "isPure": false, @@ -73354,80 +73635,80 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "23857:49:24", + "src": "24385:49:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9318, + "id": 9914, "nodeType": "ExpressionStatement", - "src": "23857:49:24" + "src": "24385:49:24" }, { "assignments": [ - 9324 + 9920 ], "declarations": [ { "constant": false, - "id": 9324, + "id": 9920, "mutability": "mutable", "name": "outputs", - "nameLocation": "23946:7:24", + "nameLocation": "24474:7:24", "nodeType": "VariableDeclaration", - "scope": 9540, - "src": "23916:37:24", + "scope": 10136, + "src": "24444:37:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput[]" }, "typeName": { "baseType": { - "id": 9322, + "id": 9918, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 9321, + "id": 9917, "name": "BtcUtils.TxRawOutput", "nameLocations": [ - "23916:8:24", - "23925:11:24" + "24444:8:24", + "24453:11:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 2292, - "src": "23916:20:24" + "referencedDeclaration": 2307, + "src": "24444:20:24" }, - "referencedDeclaration": 2292, - "src": "23916:20:24", + "referencedDeclaration": 2307, + "src": "24444:20:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_storage_ptr", + "typeIdentifier": "t_struct$_TxRawOutput_$2307_storage_ptr", "typeString": "struct BtcUtils.TxRawOutput" } }, - "id": 9323, + "id": 9919, "nodeType": "ArrayTypeName", - "src": "23916:22:24", + "src": "24444:22:24", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_storage_$dyn_storage_ptr", + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_storage_$dyn_storage_ptr", "typeString": "struct BtcUtils.TxRawOutput[]" } }, "visibility": "internal" } ], - "id": 9329, + "id": 9925, "initialValue": { "arguments": [ { - "id": 9327, + "id": 9923, "name": "btcTx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9275, - "src": "23976:5:24", + "referencedDeclaration": 9871, + "src": "24504:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -73442,33 +73723,33 @@ } ], "expression": { - "id": 9325, + "id": 9921, "name": "BtcUtils", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3228, - "src": "23956:8:24", + "referencedDeclaration": 3743, + "src": "24484:8:24", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3228_$", + "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", "typeString": "type(library BtcUtils)" } }, - "id": 9326, + "id": 9922, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "23965:10:24", + "memberLocation": "24493:10:24", "memberName": "getOutputs", "nodeType": "MemberAccess", - "referencedDeclaration": 2431, - "src": "23956:19:24", + "referencedDeclaration": 2454, + "src": "24484:19:24", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr_$", + "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr_$", "typeString": "function (bytes memory) pure returns (struct BtcUtils.TxRawOutput memory[] memory)" } }, - "id": 9328, + "id": 9924, "isConstant": false, "isLValue": false, "isPure": false, @@ -73477,30 +73758,30 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "23956:26:24", + "src": "24484:26:24", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput memory[] memory" } }, "nodeType": "VariableDeclarationStatement", - "src": "23916:66:24" + "src": "24444:66:24" }, { "assignments": [ - 9331 + 9927 ], "declarations": [ { "constant": false, - "id": 9331, + "id": 9927, "mutability": "mutable", "name": "scriptContent", - "nameLocation": "24005:13:24", + "nameLocation": "24533:13:24", "nodeType": "VariableDeclaration", - "scope": 9540, - "src": "23992:26:24", + "scope": 10136, + "src": "24520:26:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -73508,10 +73789,10 @@ "typeString": "bytes" }, "typeName": { - "id": 9330, + "id": 9926, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "23992:5:24", + "src": "24520:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -73520,31 +73801,31 @@ "visibility": "internal" } ], - "id": 9339, + "id": 9935, "initialValue": { "arguments": [ { "expression": { "baseExpression": { - "id": 9334, + "id": 9930, "name": "outputs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9324, - "src": "24050:7:24", + "referencedDeclaration": 9920, + "src": "24578:7:24", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput memory[] memory" } }, - "id": 9336, + "id": 9932, "indexExpression": { - "id": 9335, + "id": 9931, "name": "QUOTE_HASH_OUTPUT", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7477, - "src": "24058:17:24", + "referencedDeclaration": 7998, + "src": "24586:17:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -73555,22 +73836,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "24050:26:24", + "src": "24578:26:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput memory" } }, - "id": 9337, + "id": 9933, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "24077:8:24", + "memberLocation": "24605:8:24", "memberName": "pkScript", "nodeType": "MemberAccess", - "referencedDeclaration": 2287, - "src": "24050:35:24", + "referencedDeclaration": 2302, + "src": "24578:35:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -73585,33 +73866,33 @@ } ], "expression": { - "id": 9332, + "id": 9928, "name": "BtcUtils", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3228, - "src": "24021:8:24", + "referencedDeclaration": 3743, + "src": "24549:8:24", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3228_$", + "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", "typeString": "type(library BtcUtils)" } }, - "id": 9333, + "id": 9929, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "24030:19:24", + "memberLocation": "24558:19:24", "memberName": "parseNullDataScript", "nodeType": "MemberAccess", - "referencedDeclaration": 2819, - "src": "24021:28:24", + "referencedDeclaration": 3176, + "src": "24549:28:24", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) pure returns (bytes memory)" } }, - "id": 9338, + "id": 9934, "isConstant": false, "isLValue": false, "isPure": false, @@ -73620,7 +73901,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "24021:65:24", + "src": "24549:65:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -73628,7 +73909,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "23992:94:24" + "src": "24520:94:24" }, { "expression": { @@ -73638,7 +73919,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 9350, + "id": 9946, "isConstant": false, "isLValue": false, "isPure": false, @@ -73648,33 +73929,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9344, + "id": 9940, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9341, + "id": 9937, "name": "scriptContent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9331, - "src": "24104:13:24", + "referencedDeclaration": 9927, + "src": "24632:13:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 9342, + "id": 9938, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "24118:6:24", + "memberLocation": "24646:6:24", "memberName": "length", "nodeType": "MemberAccess", - "src": "24104:20:24", + "src": "24632:20:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -73684,21 +73965,21 @@ "operator": "==", "rightExpression": { "hexValue": "3333", - "id": 9343, + "id": 9939, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "24128:2:24", + "src": "24656:2:24", "typeDescriptions": { "typeIdentifier": "t_rational_33_by_1", "typeString": "int_const 33" }, "value": "33" }, - "src": "24104:26:24", + "src": "24632:26:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -73711,35 +73992,35 @@ "typeIdentifier": "t_bytes1", "typeString": "bytes1" }, - "id": 9349, + "id": 9945, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 9345, + "id": 9941, "name": "scriptContent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9331, - "src": "24134:13:24", + "referencedDeclaration": 9927, + "src": "24662:13:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 9347, + "id": 9943, "indexExpression": { "hexValue": "30", - "id": 9346, + "id": 9942, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "24148:1:24", + "src": "24676:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -73751,7 +74032,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "24134:16:24", + "src": "24662:16:24", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" @@ -73761,27 +74042,27 @@ "operator": "==", "rightExpression": { "hexValue": "30783230", - "id": 9348, + "id": 9944, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "24154:4:24", + "src": "24682:4:24", "typeDescriptions": { "typeIdentifier": "t_rational_32_by_1", "typeString": "int_const 32" }, "value": "0x20" }, - "src": "24134:24:24", + "src": "24662:24:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "24104:54:24", + "src": "24632:54:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -73789,14 +74070,14 @@ }, { "hexValue": "4c4243303735", - "id": 9351, + "id": 9947, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "24160:8:24", + "src": "24688:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d0a12d6767c9352a89748f00976b0ffc4b9ff4b643d9cc1082f2df3b625d402a", "typeString": "literal_string \"LBC075\"" @@ -73815,7 +74096,7 @@ "typeString": "literal_string \"LBC075\"" } ], - "id": 9340, + "id": 9936, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -73823,13 +74104,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "24096:7:24", + "src": "24624:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9352, + "id": 9948, "isConstant": false, "isLValue": false, "isPure": false, @@ -73838,51 +74119,51 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "24096:73:24", + "src": "24624:73:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9353, + "id": 9949, "nodeType": "ExpressionStatement", - "src": "24096:73:24" + "src": "24624:73:24" }, { "body": { - "id": 9377, + "id": 9973, "nodeType": "Block", - "src": "24296:64:24", + "src": "24824:64:24", "statements": [ { "expression": { - "id": 9375, + "id": 9971, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 9367, + "id": 9963, "name": "scriptContent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9331, - "src": "24310:13:24", + "referencedDeclaration": 9927, + "src": "24838:13:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 9369, + "id": 9965, "indexExpression": { - "id": 9368, + "id": 9964, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9355, - "src": "24324:1:24", + "referencedDeclaration": 9951, + "src": "24852:1:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -73893,7 +74174,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "24310:16:24", + "src": "24838:16:24", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" @@ -73903,35 +74184,35 @@ "operator": "=", "rightHandSide": { "baseExpression": { - "id": 9370, + "id": 9966, "name": "scriptContent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9331, - "src": "24329:13:24", + "referencedDeclaration": 9927, + "src": "24857:13:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 9374, + "id": 9970, "indexExpression": { "commonType": { "typeIdentifier": "t_uint8", "typeString": "uint8" }, - "id": 9373, + "id": 9969, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 9371, + "id": 9967, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9355, - "src": "24343:1:24", + "referencedDeclaration": 9951, + "src": "24871:1:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -73941,21 +74222,21 @@ "operator": "+", "rightExpression": { "hexValue": "31", - "id": 9372, + "id": 9968, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "24347:1:24", + "src": "24875:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "24343:5:24", + "src": "24871:5:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -73966,21 +74247,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "24329:20:24", + "src": "24857:20:24", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, - "src": "24310:39:24", + "src": "24838:39:24", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, - "id": 9376, + "id": 9972, "nodeType": "ExpressionStatement", - "src": "24310:39:24" + "src": "24838:39:24" } ] }, @@ -73989,18 +74270,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9363, + "id": 9959, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 9358, + "id": 9954, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9355, - "src": "24261:1:24", + "referencedDeclaration": 9951, + "src": "24789:1:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -74013,33 +74294,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9362, + "id": 9958, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9359, + "id": 9955, "name": "scriptContent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9331, - "src": "24265:13:24", + "referencedDeclaration": 9927, + "src": "24793:13:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 9360, + "id": 9956, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "24279:6:24", + "memberLocation": "24807:6:24", "memberName": "length", "nodeType": "MemberAccess", - "src": "24265:20:24", + "src": "24793:20:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -74049,47 +74330,47 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 9361, + "id": 9957, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "24288:1:24", + "src": "24816:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "24265:24:24", + "src": "24793:24:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "24261:28:24", + "src": "24789:28:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 9378, + "id": 9974, "initializationExpression": { "assignments": [ - 9355 + 9951 ], "declarations": [ { "constant": false, - "id": 9355, + "id": 9951, "mutability": "mutable", "name": "i", - "nameLocation": "24253:1:24", + "nameLocation": "24781:1:24", "nodeType": "VariableDeclaration", - "scope": 9378, - "src": "24247:7:24", + "scope": 9974, + "src": "24775:7:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -74097,10 +74378,10 @@ "typeString": "uint8" }, "typeName": { - "id": 9354, + "id": 9950, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "24247:5:24", + "src": "24775:5:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -74109,17 +74390,17 @@ "visibility": "internal" } ], - "id": 9357, + "id": 9953, "initialValue": { "hexValue": "30", - "id": 9356, + "id": 9952, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "24257:1:24", + "src": "24785:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -74127,11 +74408,11 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "24247:11:24" + "src": "24775:11:24" }, "loopExpression": { "expression": { - "id": 9365, + "id": 9961, "isConstant": false, "isLValue": false, "isPure": false, @@ -74139,14 +74420,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "24291:3:24", + "src": "24819:3:24", "subExpression": { - "id": 9364, + "id": 9960, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9355, - "src": "24291:1:24", + "referencedDeclaration": 9951, + "src": "24819:1:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -74157,27 +74438,27 @@ "typeString": "uint8" } }, - "id": 9366, + "id": 9962, "nodeType": "ExpressionStatement", - "src": "24291:3:24" + "src": "24819:3:24" }, "nodeType": "ForStatement", - "src": "24242:118:24" + "src": "24770:118:24" }, { "assignments": [ - 9380 + 9976 ], "declarations": [ { "constant": false, - "id": 9380, + "id": 9976, "mutability": "mutable", "name": "txQuoteHash", - "nameLocation": "24377:11:24", + "nameLocation": "24905:11:24", "nodeType": "VariableDeclaration", - "scope": 9540, - "src": "24369:19:24", + "scope": 10136, + "src": "24897:19:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -74185,10 +74466,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 9379, + "id": 9975, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "24369:7:24", + "src": "24897:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -74197,16 +74478,16 @@ "visibility": "internal" } ], - "id": 9388, + "id": 9984, "initialValue": { "arguments": [ { - "id": 9383, + "id": 9979, "name": "scriptContent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9331, - "src": "24402:13:24", + "referencedDeclaration": 9927, + "src": "24930:13:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -74215,34 +74496,34 @@ { "components": [ { - "id": 9385, + "id": 9981, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "24418:7:24", + "src": "24946:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" }, "typeName": { - "id": 9384, + "id": 9980, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "24418:7:24", + "src": "24946:7:24", "typeDescriptions": {} } } ], - "id": 9386, + "id": 9982, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "24417:9:24", + "src": "24945:9:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" @@ -74261,32 +74542,32 @@ } ], "expression": { - "id": 9381, + "id": 9977, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967295, - "src": "24391:3:24", + "src": "24919:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, - "id": 9382, + "id": 9978, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "24395:6:24", + "memberLocation": "24923:6:24", "memberName": "decode", "nodeType": "MemberAccess", - "src": "24391:10:24", + "src": "24919:10:24", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 9387, + "id": 9983, "isConstant": false, "isLValue": false, "isPure": false, @@ -74295,7 +74576,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "24391:36:24", + "src": "24919:36:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -74303,7 +74584,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "24369:58:24" + "src": "24897:58:24" }, { "expression": { @@ -74313,18 +74594,18 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 9392, + "id": 9988, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 9390, + "id": 9986, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9273, - "src": "24445:9:24", + "referencedDeclaration": 9869, + "src": "24973:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -74333,18 +74614,18 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 9391, + "id": 9987, "name": "txQuoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9380, - "src": "24458:11:24", + "referencedDeclaration": 9976, + "src": "24986:11:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "24445:24:24", + "src": "24973:24:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -74352,14 +74633,14 @@ }, { "hexValue": "4c4243303639", - "id": 9393, + "id": 9989, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "24471:8:24", + "src": "24999:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_5cf5f7c75a2357c5697933702fe9f20c432f8f5205def7bf18572d390cea5cc1", "typeString": "literal_string \"LBC069\"" @@ -74378,7 +74659,7 @@ "typeString": "literal_string \"LBC069\"" } ], - "id": 9389, + "id": 9985, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -74386,13 +74667,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "24437:7:24", + "src": "24965:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9394, + "id": 9990, "isConstant": false, "isLValue": false, "isPure": false, @@ -74401,16 +74682,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "24437:43:24", + "src": "24965:43:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9395, + "id": 9991, "nodeType": "ExpressionStatement", - "src": "24437:43:24" + "src": "24965:43:24" }, { "expression": { @@ -74420,33 +74701,33 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 9401, + "id": 9997, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9397, + "id": 9993, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "24498:3:24", + "src": "25026:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 9398, + "id": 9994, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "24502:6:24", + "memberLocation": "25030:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "24498:10:24", + "src": "25026:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -74456,33 +74737,33 @@ "operator": "==", "rightExpression": { "expression": { - "id": 9399, + "id": 9995, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9303, - "src": "24512:5:24", + "referencedDeclaration": 9899, + "src": "25040:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9400, + "id": 9996, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "24518:12:24", + "memberLocation": "25046:12:24", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10603, - "src": "24512:18:24", + "referencedDeclaration": 11199, + "src": "25040:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "24498:32:24", + "src": "25026:32:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -74490,14 +74771,14 @@ }, { "hexValue": "4c4243303438", - "id": 9402, + "id": 9998, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "24532:8:24", + "src": "25060:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_3c14ff4570332247d29826742fdf7f014a86ddbee2c49b0252a79ef49351f196", "typeString": "literal_string \"LBC048\"" @@ -74516,7 +74797,7 @@ "typeString": "literal_string \"LBC048\"" } ], - "id": 9396, + "id": 9992, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -74524,13 +74805,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "24490:7:24", + "src": "25018:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9403, + "id": 9999, "isConstant": false, "isLValue": false, "isPure": false, @@ -74539,16 +74820,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "24490:51:24", + "src": "25018:51:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9404, + "id": 10000, "nodeType": "ExpressionStatement", - "src": "24490:51:24" + "src": "25018:51:24" }, { "expression": { @@ -74558,7 +74839,7 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 9424, + "id": 10020, "isConstant": false, "isLValue": false, "isPure": false, @@ -74568,12 +74849,12 @@ { "arguments": [ { - "id": 9410, + "id": 10006, "name": "btcTx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9275, - "src": "24646:5:24", + "referencedDeclaration": 9871, + "src": "25174:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -74588,33 +74869,33 @@ } ], "expression": { - "id": 9408, + "id": 10004, "name": "BtcUtils", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3228, - "src": "24627:8:24", + "referencedDeclaration": 3743, + "src": "25155:8:24", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3228_$", + "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", "typeString": "type(library BtcUtils)" } }, - "id": 9409, + "id": 10005, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "24636:9:24", + "memberLocation": "25164:9:24", "memberName": "hashBtcTx", "nodeType": "MemberAccess", - "referencedDeclaration": 2887, - "src": "24627:18:24", + "referencedDeclaration": 3244, + "src": "25155:18:24", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 9411, + "id": 10007, "isConstant": false, "isLValue": false, "isPure": false, @@ -74623,7 +74904,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "24627:25:24", + "src": "25155:25:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -74631,36 +74912,36 @@ } }, { - "id": 9412, + "id": 10008, "name": "btcBlockHeaderHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9277, - "src": "24670:18:24", + "referencedDeclaration": 9873, + "src": "25198:18:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 9413, + "id": 10009, "name": "partialMerkleTree", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "24706:17:24", + "referencedDeclaration": 9875, + "src": "25234:17:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 9414, + "id": 10010, "name": "merkleBranchHashes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9282, - "src": "24741:18:24", + "referencedDeclaration": 9878, + "src": "25269:18:24", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", "typeString": "bytes32[] memory" @@ -74687,33 +74968,33 @@ } ], "expression": { - "id": 9406, + "id": 10002, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7633, - "src": "24572:6:24", + "referencedDeclaration": 8154, + "src": "25100:6:24", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, - "id": 9407, + "id": 10003, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "24579:30:24", + "memberLocation": "25107:30:24", "memberName": "getBtcTransactionConfirmations", "nodeType": "MemberAccess", - "referencedDeclaration": 3562, - "src": "24572:37:24", + "referencedDeclaration": 4083, + "src": "25100:37:24", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_bytes32_$_t_bytes32_$_t_uint256_$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_int256_$", "typeString": "function (bytes32,bytes32,uint256,bytes32[] memory) view external returns (int256)" } }, - "id": 9415, + "id": 10011, "isConstant": false, "isLValue": false, "isPure": false, @@ -74722,7 +75003,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "24572:201:24", + "src": "25100:201:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", @@ -74737,27 +75018,27 @@ "arguments": [ { "expression": { - "id": 9420, + "id": 10016, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9303, - "src": "24789:5:24", + "referencedDeclaration": 9899, + "src": "25317:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9421, + "id": 10017, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "24795:21:24", + "memberLocation": "25323:21:24", "memberName": "transferConfirmations", "nodeType": "MemberAccess", - "referencedDeclaration": 10627, - "src": "24789:27:24", + "referencedDeclaration": 11223, + "src": "25317:27:24", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" @@ -74771,26 +75052,26 @@ "typeString": "uint16" } ], - "id": 9419, + "id": 10015, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "24781:7:24", + "src": "25309:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { - "id": 9418, + "id": 10014, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "24781:7:24", + "src": "25309:7:24", "typeDescriptions": {} } }, - "id": 9422, + "id": 10018, "isConstant": false, "isLValue": false, "isPure": false, @@ -74799,7 +75080,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "24781:36:24", + "src": "25309:36:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -74814,26 +75095,26 @@ "typeString": "uint256" } ], - "id": 9417, + "id": 10013, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "24777:3:24", + "src": "25305:3:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_int256_$", "typeString": "type(int256)" }, "typeName": { - "id": 9416, + "id": 10012, "name": "int", "nodeType": "ElementaryTypeName", - "src": "24777:3:24", + "src": "25305:3:24", "typeDescriptions": {} } }, - "id": 9423, + "id": 10019, "isConstant": false, "isLValue": false, "isPure": false, @@ -74842,14 +75123,14 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "24777:41:24", + "src": "25305:41:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, - "src": "24572:246:24", + "src": "25100:246:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -74857,14 +75138,14 @@ }, { "hexValue": "4c4243303439", - "id": 9425, + "id": 10021, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "24832:8:24", + "src": "25360:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_41cc9877d5a72c2a0ef0c602e024ddc86a1f279ef7306bab75dd3c5447ffb6e0", "typeString": "literal_string \"LBC049\"" @@ -74883,7 +75164,7 @@ "typeString": "literal_string \"LBC049\"" } ], - "id": 9405, + "id": 10001, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -74891,13 +75172,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "24551:7:24", + "src": "25079:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9426, + "id": 10022, "isConstant": false, "isLValue": false, "isPure": false, @@ -74906,16 +75187,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "24551:299:24", + "src": "25079:299:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9427, + "id": 10023, "nodeType": "ExpressionStatement", - "src": "24551:299:24" + "src": "25079:299:24" }, { "expression": { @@ -74925,34 +75206,34 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9440, + "id": 10036, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9429, + "id": 10025, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9303, - "src": "24868:5:24", + "referencedDeclaration": 9899, + "src": "25396:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9430, + "id": 10026, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "24874:5:24", + "memberLocation": "25402:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10619, - "src": "24868:11:24", + "referencedDeclaration": 11215, + "src": "25396:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -74965,7 +75246,7 @@ "typeIdentifier": "t_uint64", "typeString": "uint64" }, - "id": 9439, + "id": 10035, "isConstant": false, "isLValue": false, "isPure": false, @@ -74973,25 +75254,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 9431, + "id": 10027, "name": "outputs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9324, - "src": "24883:7:24", + "referencedDeclaration": 9920, + "src": "25411:7:24", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput memory[] memory" } }, - "id": 9433, + "id": 10029, "indexExpression": { - "id": 9432, + "id": 10028, "name": "PAY_TO_ADDRESS_OUTPUT", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7474, - "src": "24891:21:24", + "referencedDeclaration": 7995, + "src": "25419:21:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -75002,22 +75283,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "24883:30:24", + "src": "25411:30:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput memory" } }, - "id": 9434, + "id": 10030, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "24914:5:24", + "memberLocation": "25442:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 2285, - "src": "24883:36:24", + "referencedDeclaration": 2300, + "src": "25411:36:24", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -75032,21 +75313,21 @@ "typeIdentifier": "t_rational_10000000000_by_1", "typeString": "int_const 10000000000" }, - "id": 9437, + "id": 10033, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "3130", - "id": 9435, + "id": 10031, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "24923:2:24", + "src": "25451:2:24", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" @@ -75057,47 +75338,47 @@ "operator": "**", "rightExpression": { "hexValue": "3130", - "id": 9436, + "id": 10032, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "24927:2:24", + "src": "25455:2:24", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" }, "value": "10" }, - "src": "24923:6:24", + "src": "25451:6:24", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000_by_1", "typeString": "int_const 10000000000" } } ], - "id": 9438, + "id": 10034, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "24922:8:24", + "src": "25450:8:24", "typeDescriptions": { "typeIdentifier": "t_rational_10000000000_by_1", "typeString": "int_const 10000000000" } }, - "src": "24883:47:24", + "src": "25411:47:24", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "24868:62:24", + "src": "25396:62:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -75105,14 +75386,14 @@ }, { "hexValue": "4c4243303637", - "id": 9441, + "id": 10037, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "24932:8:24", + "src": "25460:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_94643b69f05d64f660a022cd48046be494c1ed271b5d9ae602f6fdadc77976be", "typeString": "literal_string \"LBC067\"" @@ -75131,7 +75412,7 @@ "typeString": "literal_string \"LBC067\"" } ], - "id": 9428, + "id": 10024, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -75139,13 +75420,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "24860:7:24", + "src": "25388:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9442, + "id": 10038, "isConstant": false, "isLValue": false, "isPure": false, @@ -75154,31 +75435,31 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "24860:81:24", + "src": "25388:81:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9443, + "id": 10039, "nodeType": "ExpressionStatement", - "src": "24860:81:24" + "src": "25388:81:24" }, { "assignments": [ - 9445 + 10041 ], "declarations": [ { "constant": false, - "id": 9445, + "id": 10041, "mutability": "mutable", "name": "btcTxDestination", - "nameLocation": "24982:16:24", + "nameLocation": "25510:16:24", "nodeType": "VariableDeclaration", - "scope": 9540, - "src": "24969:29:24", + "scope": 10136, + "src": "25497:29:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -75186,10 +75467,10 @@ "typeString": "bytes" }, "typeName": { - "id": 9444, + "id": 10040, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "24969:5:24", + "src": "25497:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -75198,31 +75479,31 @@ "visibility": "internal" } ], - "id": 9454, + "id": 10050, "initialValue": { "arguments": [ { "expression": { "baseExpression": { - "id": 9448, + "id": 10044, "name": "outputs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9324, - "src": "25045:7:24", + "referencedDeclaration": 9920, + "src": "25573:7:24", "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2292_memory_ptr_$dyn_memory_ptr", + "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput memory[] memory" } }, - "id": 9450, + "id": 10046, "indexExpression": { - "id": 9449, + "id": 10045, "name": "PAY_TO_ADDRESS_OUTPUT", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7474, - "src": "25053:21:24", + "referencedDeclaration": 7995, + "src": "25581:21:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -75233,34 +75514,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "25045:30:24", + "src": "25573:30:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2292_memory_ptr", + "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", "typeString": "struct BtcUtils.TxRawOutput memory" } }, - "id": 9451, + "id": 10047, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "25076:8:24", + "memberLocation": "25604:8:24", "memberName": "pkScript", "nodeType": "MemberAccess", - "referencedDeclaration": 2287, - "src": "25045:39:24", + "referencedDeclaration": 2302, + "src": "25573:39:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { - "id": 9452, + "id": 10048, "name": "mainnet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7675, - "src": "25098:7:24", + "referencedDeclaration": 8196, + "src": "25626:7:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -75279,33 +75560,33 @@ } ], "expression": { - "id": 9446, + "id": 10042, "name": "BtcUtils", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3228, - "src": "25001:8:24", + "referencedDeclaration": 3743, + "src": "25529:8:24", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3228_$", + "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", "typeString": "type(library BtcUtils)" } }, - "id": 9447, + "id": 10043, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "25010:21:24", + "memberLocation": "25538:21:24", "memberName": "outputScriptToAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 2572, - "src": "25001:30:24", + "referencedDeclaration": 2622, + "src": "25529:30:24", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$_t_bool_$returns$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory,bool) pure returns (bytes memory)" } }, - "id": 9453, + "id": 10049, "isConstant": false, "isLValue": false, "isPure": false, @@ -75314,7 +75595,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "25001:114:24", + "src": "25529:114:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -75322,7 +75603,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "24969:146:24" + "src": "25497:146:24" }, { "expression": { @@ -75332,7 +75613,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 9463, + "id": 10059, "isConstant": false, "isLValue": false, "isPure": false, @@ -75341,27 +75622,27 @@ "arguments": [ { "expression": { - "id": 9457, + "id": 10053, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9303, - "src": "25143:5:24", + "referencedDeclaration": 9899, + "src": "25671:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9458, + "id": 10054, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "25149:15:24", + "memberLocation": "25677:15:24", "memberName": "deposityAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10617, - "src": "25143:21:24", + "referencedDeclaration": 11213, + "src": "25671:21:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage", "typeString": "bytes storage ref" @@ -75375,18 +75656,18 @@ "typeString": "bytes storage ref" } ], - "id": 9456, + "id": 10052, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "25133:9:24", + "src": "25661:9:24", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 9459, + "id": 10055, "isConstant": false, "isLValue": false, "isPure": false, @@ -75395,7 +75676,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "25133:32:24", + "src": "25661:32:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -75407,12 +75688,12 @@ "rightExpression": { "arguments": [ { - "id": 9461, + "id": 10057, "name": "btcTxDestination", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9445, - "src": "25179:16:24", + "referencedDeclaration": 10041, + "src": "25707:16:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -75426,18 +75707,18 @@ "typeString": "bytes memory" } ], - "id": 9460, + "id": 10056, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "25169:9:24", + "src": "25697:9:24", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 9462, + "id": 10058, "isConstant": false, "isLValue": false, "isPure": false, @@ -75446,14 +75727,14 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "25169:27:24", + "src": "25697:27:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "25133:63:24", + "src": "25661:63:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -75461,14 +75742,14 @@ }, { "hexValue": "4c4243303638", - "id": 9464, + "id": 10060, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "25198:8:24", + "src": "25726:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_7cd3d68dd2419ceccbacf2f69bda9c4c2f3bdb0c0535db4bbef90be788c8f7de", "typeString": "literal_string \"LBC068\"" @@ -75487,7 +75768,7 @@ "typeString": "literal_string \"LBC068\"" } ], - "id": 9455, + "id": 10051, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -75495,13 +75776,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "25125:7:24", + "src": "25653:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9465, + "id": 10061, "isConstant": false, "isLValue": false, "isPure": false, @@ -75510,51 +75791,51 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "25125:82:24", + "src": "25653:82:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9466, + "id": 10062, "nodeType": "ExpressionStatement", - "src": "25125:82:24" + "src": "25653:82:24" }, { "condition": { "arguments": [ { - "id": 9468, + "id": 10064, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9303, - "src": "25271:5:24", + "referencedDeclaration": 9899, + "src": "25799:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, { - "id": 9469, + "id": 10065, "name": "txQuoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9380, - "src": "25290:11:24", + "referencedDeclaration": 9976, + "src": "25818:11:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 9470, + "id": 10066, "name": "btcBlockHeaderHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9277, - "src": "25315:18:24", + "referencedDeclaration": 9873, + "src": "25843:18:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -75564,7 +75845,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" }, { @@ -75576,18 +75857,18 @@ "typeString": "bytes32" } ], - "id": 9467, + "id": 10063, "name": "shouldPenalizePegOutLP", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10078, - "src": "25235:22:24", + "referencedDeclaration": 10674, + "src": "25763:22:24", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$10638_memory_ptr_$_t_bytes32_$_t_bytes32_$returns$_t_bool_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$11234_memory_ptr_$_t_bytes32_$_t_bytes32_$returns$_t_bool_$", "typeString": "function (struct QuotesV2.PegOutQuote memory,bytes32,bytes32) view returns (bool)" } }, - "id": 9471, + "id": 10067, "isConstant": false, "isLValue": false, "isPure": false, @@ -75596,35 +75877,35 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "25235:108:24", + "src": "25763:108:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 9498, + "id": 10094, "nodeType": "IfStatement", - "src": "25218:412:24", + "src": "25746:412:24", "trueBody": { - "id": 9497, + "id": 10093, "nodeType": "Block", - "src": "25354:276:24", + "src": "25882:276:24", "statements": [ { "assignments": [ - 9473 + 10069 ], "declarations": [ { "constant": false, - "id": 9473, + "id": 10069, "mutability": "mutable", "name": "penalty", - "nameLocation": "25373:7:24", + "nameLocation": "25901:7:24", "nodeType": "VariableDeclaration", - "scope": 9497, - "src": "25368:12:24", + "scope": 10093, + "src": "25896:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -75632,10 +75913,10 @@ "typeString": "uint256" }, "typeName": { - "id": 9472, + "id": 10068, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "25368:4:24", + "src": "25896:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -75644,32 +75925,32 @@ "visibility": "internal" } ], - "id": 9482, + "id": 10078, "initialValue": { "arguments": [ { "expression": { - "id": 9475, + "id": 10071, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9303, - "src": "25404:5:24", + "referencedDeclaration": 9899, + "src": "25932:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9476, + "id": 10072, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "25410:10:24", + "memberLocation": "25938:10:24", "memberName": "penaltyFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10613, - "src": "25404:16:24", + "referencedDeclaration": 11209, + "src": "25932:16:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -75677,41 +75958,41 @@ }, { "baseExpression": { - "id": 9477, + "id": 10073, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7645, - "src": "25438:16:24", + "referencedDeclaration": 8166, + "src": "25966:16:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 9480, + "id": 10076, "indexExpression": { "expression": { - "id": 9478, + "id": 10074, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9303, - "src": "25455:5:24", + "referencedDeclaration": 9899, + "src": "25983:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9479, + "id": 10075, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "25461:12:24", + "memberLocation": "25989:12:24", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10603, - "src": "25455:18:24", + "referencedDeclaration": 11199, + "src": "25983:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -75722,7 +76003,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "25438:36:24", + "src": "25966:36:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -75740,18 +76021,18 @@ "typeString": "uint256" } ], - "id": 9474, + "id": 10070, "name": "min", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9764, - "src": "25383:3:24", + "referencedDeclaration": 10360, + "src": "25911:3:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 9481, + "id": 10077, "isConstant": false, "isLValue": false, "isPure": false, @@ -75760,7 +76041,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "25383:105:24", + "src": "25911:105:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -75768,52 +76049,52 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "25368:120:24" + "src": "25896:120:24" }, { "expression": { - "id": 9488, + "id": 10084, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 9483, + "id": 10079, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7645, - "src": "25502:16:24", + "referencedDeclaration": 8166, + "src": "26030:16:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 9486, + "id": 10082, "indexExpression": { "expression": { - "id": 9484, + "id": 10080, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9303, - "src": "25519:5:24", + "referencedDeclaration": 9899, + "src": "26047:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9485, + "id": 10081, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "25525:12:24", + "memberLocation": "26053:12:24", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10603, - "src": "25519:18:24", + "referencedDeclaration": 11199, + "src": "26047:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -75824,7 +76105,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "25502:36:24", + "src": "26030:36:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -75833,77 +76114,77 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 9487, + "id": 10083, "name": "penalty", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9473, - "src": "25542:7:24", + "referencedDeclaration": 10069, + "src": "26070:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "25502:47:24", + "src": "26030:47:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 9489, + "id": 10085, "nodeType": "ExpressionStatement", - "src": "25502:47:24" + "src": "26030:47:24" }, { "eventCall": { "arguments": [ { "expression": { - "id": 9491, + "id": 10087, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9303, - "src": "25578:5:24", + "referencedDeclaration": 9899, + "src": "26106:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9492, + "id": 10088, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "25584:12:24", + "memberLocation": "26112:12:24", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10603, - "src": "25578:18:24", + "referencedDeclaration": 11199, + "src": "26106:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 9493, + "id": 10089, "name": "penalty", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9473, - "src": "25598:7:24", + "referencedDeclaration": 10069, + "src": "26126:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 9494, + "id": 10090, "name": "txQuoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9380, - "src": "25607:11:24", + "referencedDeclaration": 9976, + "src": "26135:11:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -75925,18 +76206,18 @@ "typeString": "bytes32" } ], - "id": 9490, + "id": 10086, "name": "Penalized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7566, - "src": "25568:9:24", + "referencedDeclaration": 8087, + "src": "26096:9:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bytes32_$returns$__$", "typeString": "function (address,uint256,bytes32)" } }, - "id": 9495, + "id": 10091, "isConstant": false, "isLValue": false, "isPure": false, @@ -75945,35 +76226,35 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "25568:51:24", + "src": "26096:51:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9496, + "id": 10092, "nodeType": "EmitStatement", - "src": "25563:56:24" + "src": "26091:56:24" } ] } }, { "assignments": [ - 9500, + 10096, null ], "declarations": [ { "constant": false, - "id": 9500, + "id": 10096, "mutability": "mutable", "name": "sent", - "nameLocation": "25646:4:24", + "nameLocation": "26174:4:24", "nodeType": "VariableDeclaration", - "scope": 9540, - "src": "25641:9:24", + "scope": 10136, + "src": "26169:9:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -75981,10 +76262,10 @@ "typeString": "bool" }, "typeName": { - "id": 9499, + "id": 10095, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "25641:4:24", + "src": "26169:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -75994,19 +76275,19 @@ }, null ], - "id": 9512, + "id": 10108, "initialValue": { "arguments": [ { "hexValue": "", - "id": 9510, + "id": 10106, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "25745:2:24", + "src": "26273:2:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" @@ -76030,47 +76311,47 @@ ], "expression": { "expression": { - "id": 9501, + "id": 10097, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9303, - "src": "25655:5:24", + "referencedDeclaration": 9899, + "src": "26183:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9502, + "id": 10098, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "25661:12:24", + "memberLocation": "26189:12:24", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10603, - "src": "25655:18:24", + "referencedDeclaration": 11199, + "src": "26183:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 9503, + "id": 10099, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "25674:4:24", + "memberLocation": "26202:4:24", "memberName": "call", "nodeType": "MemberAccess", - "src": "25655:23:24", + "src": "26183:23:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 9509, + "id": 10105, "isConstant": false, "isLValue": false, "isPure": false, @@ -76085,34 +76366,34 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9508, + "id": 10104, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9504, + "id": 10100, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9303, - "src": "25703:5:24", + "referencedDeclaration": 9899, + "src": "26231:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9505, + "id": 10101, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "25709:5:24", + "memberLocation": "26237:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10619, - "src": "25703:11:24", + "referencedDeclaration": 11215, + "src": "26231:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -76122,46 +76403,46 @@ "operator": "+", "rightExpression": { "expression": { - "id": 9506, + "id": 10102, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9303, - "src": "25717:5:24", + "referencedDeclaration": 9899, + "src": "26245:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9507, + "id": 10103, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "25723:7:24", + "memberLocation": "26251:7:24", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10611, - "src": "25717:13:24", + "referencedDeclaration": 11207, + "src": "26245:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "25703:27:24", + "src": "26231:27:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "src": "25655:89:24", + "src": "26183:89:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 9511, + "id": 10107, "isConstant": false, "isLValue": false, "isPure": false, @@ -76170,7 +76451,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "25655:93:24", + "src": "26183:93:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", @@ -76178,18 +76459,18 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "25640:108:24" + "src": "26168:108:24" }, { "expression": { "arguments": [ { - "id": 9514, + "id": 10110, "name": "sent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9500, - "src": "25766:4:24", + "referencedDeclaration": 10096, + "src": "26294:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -76197,14 +76478,14 @@ }, { "hexValue": "4c4243303530", - "id": 9515, + "id": 10111, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "25772:8:24", + "src": "26300:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_3dcf1159943f9eee729b997e5df9acd0f1771321696b1fb47efa6e54bee2f352", "typeString": "literal_string \"LBC050\"" @@ -76223,7 +76504,7 @@ "typeString": "literal_string \"LBC050\"" } ], - "id": 9513, + "id": 10109, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -76231,13 +76512,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "25758:7:24", + "src": "26286:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9516, + "id": 10112, "isConstant": false, "isLValue": false, "isPure": false, @@ -76246,55 +76527,55 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "25758:23:24", + "src": "26286:23:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9517, + "id": 10113, "nodeType": "ExpressionStatement", - "src": "25758:23:24" + "src": "26286:23:24" }, { "expression": { "arguments": [ { "expression": { - "id": 9519, + "id": 10115, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9303, - "src": "25810:5:24", + "referencedDeclaration": 9899, + "src": "26338:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote storage pointer" } }, - "id": 9520, + "id": 10116, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "25816:16:24", + "memberLocation": "26344:16:24", "memberName": "productFeeAmount", "nodeType": "MemberAccess", - "referencedDeclaration": 10635, - "src": "25810:22:24", + "referencedDeclaration": 11231, + "src": "26338:22:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 9521, + "id": 10117, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9273, - "src": "25834:9:24", + "referencedDeclaration": 9869, + "src": "26362:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -76312,18 +76593,18 @@ "typeString": "bytes32" } ], - "id": 9518, + "id": 10114, "name": "payToFeeCollector", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10113, - "src": "25792:17:24", + "referencedDeclaration": 10709, + "src": "26320:17:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_bytes32_$returns$__$", "typeString": "function (uint256,bytes32)" } }, - "id": 9522, + "id": 10118, "isConstant": false, "isLValue": false, "isPure": false, @@ -76332,20 +76613,20 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "25792:52:24", + "src": "26320:52:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9523, + "id": 10119, "nodeType": "ExpressionStatement", - "src": "25792:52:24" + "src": "26320:52:24" }, { "expression": { - "id": 9527, + "id": 10123, "isConstant": false, "isLValue": false, "isPure": false, @@ -76353,28 +76634,28 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "25855:42:24", + "src": "26383:42:24", "subExpression": { "baseExpression": { - "id": 9524, + "id": 10120, "name": "registeredPegoutQuotes", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7684, - "src": "25862:22:24", + "referencedDeclaration": 8205, + "src": "26390:22:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10638_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11234_storage_$", "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote storage ref)" } }, - "id": 9526, + "id": 10122, "indexExpression": { - "id": 9525, + "id": 10121, "name": "txQuoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9380, - "src": "25885:11:24", + "referencedDeclaration": 9976, + "src": "26413:11:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -76385,9 +76666,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "25862:35:24", + "src": "26390:35:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage", "typeString": "struct QuotesV2.PegOutQuote storage ref" } }, @@ -76396,13 +76677,13 @@ "typeString": "tuple()" } }, - "id": 9528, + "id": 10124, "nodeType": "ExpressionStatement", - "src": "25855:42:24" + "src": "26383:42:24" }, { "expression": { - "id": 9534, + "id": 10130, "isConstant": false, "isLValue": false, "isPure": false, @@ -76410,25 +76691,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 9529, + "id": 10125, "name": "pegoutRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7689, - "src": "25907:14:24", + "referencedDeclaration": 8210, + "src": "26435:14:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$7487_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8008_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord storage ref)" } }, - "id": 9531, + "id": 10127, "indexExpression": { - "id": 9530, + "id": 10126, "name": "txQuoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9380, - "src": "25922:11:24", + "referencedDeclaration": 9976, + "src": "26450:11:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -76439,22 +76720,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "25907:27:24", + "src": "26435:27:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$7487_storage", + "typeIdentifier": "t_struct$_PegoutRecord_$8008_storage", "typeString": "struct LiquidityBridgeContractV2.PegoutRecord storage ref" } }, - "id": 9532, + "id": 10128, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "25935:9:24", + "memberLocation": "26463:9:24", "memberName": "completed", "nodeType": "MemberAccess", - "referencedDeclaration": 7486, - "src": "25907:37:24", + "referencedDeclaration": 8007, + "src": "26435:37:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -76464,40 +76745,40 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 9533, + "id": 10129, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "25947:4:24", + "src": "26475:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "25907:44:24", + "src": "26435:44:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 9535, + "id": 10131, "nodeType": "ExpressionStatement", - "src": "25907:44:24" + "src": "26435:44:24" }, { "eventCall": { "arguments": [ { - "id": 9537, + "id": 10133, "name": "txQuoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9380, - "src": "25981:11:24", + "referencedDeclaration": 9976, + "src": "26509:11:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -76511,18 +76792,18 @@ "typeString": "bytes32" } ], - "id": 9536, + "id": 10132, "name": "PegOutRefunded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7598, - "src": "25966:14:24", + "referencedDeclaration": 8119, + "src": "26494:14:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 9538, + "id": 10134, "isConstant": false, "isLValue": false, "isPure": false, @@ -76531,73 +76812,73 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "25966:27:24", + "src": "26494:27:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9539, + "id": 10135, "nodeType": "EmitStatement", - "src": "25961:32:24" + "src": "26489:32:24" } ] }, "functionSelector": "d6c70de8", - "id": 9541, + "id": 10137, "implemented": true, "kind": "function", "modifiers": [ { - "id": 9285, + "id": 9881, "kind": "modifierInvocation", "modifierName": { - "id": 9284, + "id": 9880, "name": "nonReentrant", "nameLocations": [ - "23657:12:24" + "24185:12:24" ], "nodeType": "IdentifierPath", "referencedDeclaration": 346, - "src": "23657:12:24" + "src": "24185:12:24" }, "nodeType": "ModifierInvocation", - "src": "23657:12:24" + "src": "24185:12:24" }, { - "id": 9287, + "id": 9883, "kind": "modifierInvocation", "modifierName": { - "id": 9286, + "id": 9882, "name": "onlyRegisteredForPegout", "nameLocations": [ - "23670:23:24" + "24198:23:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 7717, - "src": "23670:23:24" + "referencedDeclaration": 8238, + "src": "24198:23:24" }, "nodeType": "ModifierInvocation", - "src": "23670:23:24" + "src": "24198:23:24" } ], "name": "refundPegOut", - "nameLocation": "23458:12:24", + "nameLocation": "23986:12:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 9283, + "id": 9879, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9273, + "id": 9869, "mutability": "mutable", "name": "quoteHash", - "nameLocation": "23488:9:24", + "nameLocation": "24016:9:24", "nodeType": "VariableDeclaration", - "scope": 9541, - "src": "23480:17:24", + "scope": 10137, + "src": "24008:17:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -76605,10 +76886,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 9272, + "id": 9868, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "23480:7:24", + "src": "24008:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -76618,13 +76899,13 @@ }, { "constant": false, - "id": 9275, + "id": 9871, "mutability": "mutable", "name": "btcTx", - "nameLocation": "23520:5:24", + "nameLocation": "24048:5:24", "nodeType": "VariableDeclaration", - "scope": 9541, - "src": "23507:18:24", + "scope": 10137, + "src": "24035:18:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -76632,10 +76913,10 @@ "typeString": "bytes" }, "typeName": { - "id": 9274, + "id": 9870, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "23507:5:24", + "src": "24035:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -76645,13 +76926,13 @@ }, { "constant": false, - "id": 9277, + "id": 9873, "mutability": "mutable", "name": "btcBlockHeaderHash", - "nameLocation": "23543:18:24", + "nameLocation": "24071:18:24", "nodeType": "VariableDeclaration", - "scope": 9541, - "src": "23535:26:24", + "scope": 10137, + "src": "24063:26:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -76659,10 +76940,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 9276, + "id": 9872, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "23535:7:24", + "src": "24063:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -76672,13 +76953,13 @@ }, { "constant": false, - "id": 9279, + "id": 9875, "mutability": "mutable", "name": "partialMerkleTree", - "nameLocation": "23579:17:24", + "nameLocation": "24107:17:24", "nodeType": "VariableDeclaration", - "scope": 9541, - "src": "23571:25:24", + "scope": 10137, + "src": "24099:25:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -76686,10 +76967,10 @@ "typeString": "uint256" }, "typeName": { - "id": 9278, + "id": 9874, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "23571:7:24", + "src": "24099:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -76699,13 +76980,13 @@ }, { "constant": false, - "id": 9282, + "id": 9878, "mutability": "mutable", "name": "merkleBranchHashes", - "nameLocation": "23623:18:24", + "nameLocation": "24151:18:24", "nodeType": "VariableDeclaration", - "scope": 9541, - "src": "23606:35:24", + "scope": 10137, + "src": "24134:35:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -76714,18 +76995,18 @@ }, "typeName": { "baseType": { - "id": 9280, + "id": 9876, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "23606:7:24", + "src": "24134:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "id": 9281, + "id": 9877, "nodeType": "ArrayTypeName", - "src": "23606:9:24", + "src": "24134:9:24", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", "typeString": "bytes32[]" @@ -76734,40 +77015,40 @@ "visibility": "internal" } ], - "src": "23470:177:24" + "src": "23998:177:24" }, "returnParameters": { - "id": 9288, + "id": 9884, "nodeType": "ParameterList", "parameters": [], - "src": "23694:0:24" + "src": "24222:0:24" }, - "scope": 10196, - "src": "23449:2551:24", + "scope": 10792, + "src": "23977:2551:24", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 9592, + "id": 10188, "nodeType": "Block", - "src": "26157:548:24", + "src": "26685:548:24", "statements": [ { "assignments": [ - 9552 + 10148 ], "declarations": [ { "constant": false, - "id": 9552, + "id": 10148, "mutability": "mutable", "name": "derivationValue", - "nameLocation": "26175:15:24", + "nameLocation": "26703:15:24", "nodeType": "VariableDeclaration", - "scope": 9592, - "src": "26167:23:24", + "scope": 10188, + "src": "26695:23:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -76775,10 +77056,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 9551, + "id": 10147, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "26167:7:24", + "src": "26695:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -76787,7 +77068,7 @@ "visibility": "internal" } ], - "id": 9571, + "id": 10167, "initialValue": { "arguments": [ { @@ -76795,14 +77076,14 @@ { "arguments": [ { - "id": 9558, + "id": 10154, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9544, - "src": "26256:5:24", + "referencedDeclaration": 10140, + "src": "26784:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } } @@ -76810,22 +77091,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } ], - "id": 9557, + "id": 10153, "name": "hashQuote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9607, - "src": "26246:9:24", + "referencedDeclaration": 10203, + "src": "26774:9:24", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10599_memory_ptr_$returns$_t_bytes32_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$11195_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (struct QuotesV2.PeginQuote memory) view returns (bytes32)" } }, - "id": 9559, + "id": 10155, "isConstant": false, "isLValue": false, "isPure": false, @@ -76834,7 +77115,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "26246:16:24", + "src": "26774:16:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -76843,27 +77124,27 @@ }, { "expression": { - "id": 9560, + "id": 10156, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9544, - "src": "26280:5:24", + "referencedDeclaration": 10140, + "src": "26808:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9561, + "id": 10157, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "26286:16:24", + "memberLocation": "26814:16:24", "memberName": "btcRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10566, - "src": "26280:22:24", + "referencedDeclaration": 11162, + "src": "26808:22:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -76873,27 +77154,27 @@ "arguments": [ { "expression": { - "id": 9564, + "id": 10160, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9544, - "src": "26328:5:24", + "referencedDeclaration": 10140, + "src": "26856:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9565, + "id": 10161, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "26334:10:24", + "memberLocation": "26862:10:24", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10562, - "src": "26328:16:24", + "referencedDeclaration": 11158, + "src": "26856:16:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -76907,26 +77188,26 @@ "typeString": "address" } ], - "id": 9563, + "id": 10159, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "26320:7:24", + "src": "26848:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes20_$", "typeString": "type(bytes20)" }, "typeName": { - "id": 9562, + "id": 10158, "name": "bytes20", "nodeType": "ElementaryTypeName", - "src": "26320:7:24", + "src": "26848:7:24", "typeDescriptions": {} } }, - "id": 9566, + "id": 10162, "isConstant": false, "isLValue": false, "isPure": false, @@ -76935,7 +77216,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "26320:25:24", + "src": "26848:25:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes20", @@ -76944,27 +77225,27 @@ }, { "expression": { - "id": 9567, + "id": 10163, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9544, - "src": "26363:5:24", + "referencedDeclaration": 10140, + "src": "26891:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9568, + "id": 10164, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "26369:27:24", + "memberLocation": "26897:27:24", "memberName": "liquidityProviderBtcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10570, - "src": "26363:33:24", + "referencedDeclaration": 11166, + "src": "26891:33:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -76991,40 +77272,40 @@ } ], "expression": { - "id": 9555, + "id": 10151, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "26216:5:24", + "src": "26744:5:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": { - "id": 9554, + "id": 10150, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "26216:5:24", + "src": "26744:5:24", "typeDescriptions": {} } }, - "id": 9556, + "id": 10152, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "26222:6:24", + "memberLocation": "26750:6:24", "memberName": "concat", "nodeType": "MemberAccess", - "src": "26216:12:24", + "src": "26744:12:24", "typeDescriptions": { "typeIdentifier": "t_function_bytesconcat_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 9569, + "id": 10165, "isConstant": false, "isLValue": false, "isPure": false, @@ -77033,7 +77314,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "26216:194:24", + "src": "26744:194:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -77048,18 +77329,18 @@ "typeString": "bytes memory" } ], - "id": 9553, + "id": 10149, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "26193:9:24", + "src": "26721:9:24", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 9570, + "id": 10166, "isConstant": false, "isLValue": false, "isPure": false, @@ -77068,7 +77349,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "26193:227:24", + "src": "26721:227:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -77076,22 +77357,22 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "26167:253:24" + "src": "26695:253:24" }, { "assignments": [ - 9573 + 10169 ], "declarations": [ { "constant": false, - "id": 9573, + "id": 10169, "mutability": "mutable", "name": "flyoverRedeemScript", - "nameLocation": "26443:19:24", + "nameLocation": "26971:19:24", "nodeType": "VariableDeclaration", - "scope": 9592, - "src": "26430:32:24", + "scope": 10188, + "src": "26958:32:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -77099,10 +77380,10 @@ "typeString": "bytes" }, "typeName": { - "id": 9572, + "id": 10168, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "26430:5:24", + "src": "26958:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -77111,19 +77392,19 @@ "visibility": "internal" } ], - "id": 9584, + "id": 10180, "initialValue": { "arguments": [ { "hexValue": "20", - "id": 9577, + "id": 10173, "isConstant": false, "isLValue": false, "isPure": true, "kind": "hexString", "lValueRequested": false, "nodeType": "Literal", - "src": "26491:7:24", + "src": "27019:7:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a", "typeString": "literal_string \" \"" @@ -77131,12 +77412,12 @@ "value": " " }, { - "id": 9578, + "id": 10174, "name": "derivationValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9552, - "src": "26512:15:24", + "referencedDeclaration": 10148, + "src": "27040:15:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -77144,14 +77425,14 @@ }, { "hexValue": "75", - "id": 9579, + "id": 10175, "isConstant": false, "isLValue": false, "isPure": true, "kind": "hexString", "lValueRequested": false, "nodeType": "Literal", - "src": "26541:7:24", + "src": "27069:7:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_32cefdcd8e794145c9af8dd1f4b1fbd92d6e547ae855553080fc8bd19c4883a0", "typeString": "literal_string \"u\"" @@ -77163,33 +77444,33 @@ "expression": { "argumentTypes": [], "expression": { - "id": 9580, + "id": 10176, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7633, - "src": "26562:6:24", + "referencedDeclaration": 8154, + "src": "27090:6:24", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, - "id": 9581, + "id": 10177, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "26569:27:24", + "memberLocation": "27097:27:24", "memberName": "getActivePowpegRedeemScript", "nodeType": "MemberAccess", - "referencedDeclaration": 3625, - "src": "26562:34:24", + "referencedDeclaration": 4146, + "src": "27090:34:24", "typeDescriptions": { "typeIdentifier": "t_function_external_view$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () view external returns (bytes memory)" } }, - "id": 9582, + "id": 10178, "isConstant": false, "isLValue": false, "isPure": false, @@ -77198,7 +77479,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "26562:36:24", + "src": "27090:36:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -77226,40 +77507,40 @@ } ], "expression": { - "id": 9575, + "id": 10171, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "26465:5:24", + "src": "26993:5:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": { - "id": 9574, + "id": 10170, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "26465:5:24", + "src": "26993:5:24", "typeDescriptions": {} } }, - "id": 9576, + "id": 10172, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "26471:6:24", + "memberLocation": "26999:6:24", "memberName": "concat", "nodeType": "MemberAccess", - "src": "26465:12:24", + "src": "26993:12:24", "typeDescriptions": { "typeIdentifier": "t_function_bytesconcat_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, - "id": 9583, + "id": 10179, "isConstant": false, "isLValue": false, "isPure": false, @@ -77268,7 +77549,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "26465:143:24", + "src": "26993:143:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -77276,42 +77557,42 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "26430:178:24" + "src": "26958:178:24" }, { "expression": { "arguments": [ { - "id": 9587, + "id": 10183, "name": "depositAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9546, - "src": "26653:14:24", + "referencedDeclaration": 10142, + "src": "27181:14:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { - "id": 9588, + "id": 10184, "name": "flyoverRedeemScript", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9573, - "src": "26669:19:24", + "referencedDeclaration": 10169, + "src": "27197:19:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { - "id": 9589, + "id": 10185, "name": "mainnet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7675, - "src": "26690:7:24", + "referencedDeclaration": 8196, + "src": "27218:7:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -77334,33 +77615,33 @@ } ], "expression": { - "id": 9585, + "id": 10181, "name": "BtcUtils", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3228, - "src": "26625:8:24", + "referencedDeclaration": 3743, + "src": "27153:8:24", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3228_$", + "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", "typeString": "type(library BtcUtils)" } }, - "id": 9586, + "id": 10182, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "26634:18:24", + "memberLocation": "27162:18:24", "memberName": "validateP2SHAdress", "nodeType": "MemberAccess", - "referencedDeclaration": 3013, - "src": "26625:27:24", + "referencedDeclaration": 3370, + "src": "27153:27:24", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_bool_$returns$_t_bool_$", "typeString": "function (bytes memory,bytes memory,bool) pure returns (bool)" } }, - "id": 9590, + "id": 10186, "isConstant": false, "isLValue": false, "isPure": false, @@ -77369,65 +77650,65 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "26625:73:24", + "src": "27153:73:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 9550, - "id": 9591, + "functionReturnParameters": 10146, + "id": 10187, "nodeType": "Return", - "src": "26618:80:24" + "src": "27146:80:24" } ] }, "functionSelector": "79b9550b", - "id": 9593, + "id": 10189, "implemented": true, "kind": "function", "modifiers": [], "name": "validatePeginDepositAddress", - "nameLocation": "26015:27:24", + "nameLocation": "26543:27:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 9547, + "id": 10143, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9544, + "id": 10140, "mutability": "mutable", "name": "quote", - "nameLocation": "26079:5:24", + "nameLocation": "26607:5:24", "nodeType": "VariableDeclaration", - "scope": 9593, - "src": "26052:32:24", + "scope": 10189, + "src": "26580:32:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote" }, "typeName": { - "id": 9543, + "id": 10139, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 9542, + "id": 10138, "name": "QuotesV2.PeginQuote", "nameLocations": [ - "26052:8:24", - "26061:10:24" + "26580:8:24", + "26589:10:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10599, - "src": "26052:19:24" + "referencedDeclaration": 11195, + "src": "26580:19:24" }, - "referencedDeclaration": 10599, - "src": "26052:19:24", + "referencedDeclaration": 11195, + "src": "26580:19:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_storage_ptr", "typeString": "struct QuotesV2.PeginQuote" } }, @@ -77435,13 +77716,13 @@ }, { "constant": false, - "id": 9546, + "id": 10142, "mutability": "mutable", "name": "depositAddress", - "nameLocation": "26107:14:24", + "nameLocation": "26635:14:24", "nodeType": "VariableDeclaration", - "scope": 9593, - "src": "26094:27:24", + "scope": 10189, + "src": "26622:27:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -77449,10 +77730,10 @@ "typeString": "bytes" }, "typeName": { - "id": 9545, + "id": 10141, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "26094:5:24", + "src": "26622:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -77461,21 +77742,21 @@ "visibility": "internal" } ], - "src": "26042:85:24" + "src": "26570:85:24" }, "returnParameters": { - "id": 9550, + "id": 10146, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9549, + "id": 10145, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 9593, - "src": "26151:4:24", + "scope": 10189, + "src": "26679:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -77483,10 +77764,10 @@ "typeString": "bool" }, "typeName": { - "id": 9548, + "id": 10144, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "26151:4:24", + "src": "26679:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -77495,32 +77776,32 @@ "visibility": "internal" } ], - "src": "26150:6:24" + "src": "26678:6:24" }, - "scope": 10196, - "src": "26006:699:24", + "scope": 10792, + "src": "26534:699:24", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { - "id": 9606, + "id": 10202, "nodeType": "Block", - "src": "26999:51:24", + "src": "27527:51:24", "statements": [ { "expression": { "arguments": [ { - "id": 9603, + "id": 10199, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9597, - "src": "27037:5:24", + "referencedDeclaration": 10193, + "src": "27565:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } } @@ -77528,22 +77809,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } ], - "id": 9602, + "id": 10198, "name": "validateAndHashQuote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9720, - "src": "27016:20:24", + "referencedDeclaration": 10316, + "src": "27544:20:24", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10599_memory_ptr_$returns$_t_bytes32_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$11195_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (struct QuotesV2.PeginQuote memory) view returns (bytes32)" } }, - "id": 9604, + "id": 10200, "isConstant": false, "isLValue": false, "isPure": false, @@ -77552,92 +77833,92 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "27016:27:24", + "src": "27544:27:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "functionReturnParameters": 9601, - "id": 9605, + "functionReturnParameters": 10197, + "id": 10201, "nodeType": "Return", - "src": "27009:34:24" + "src": "27537:34:24" } ] }, "documentation": { - "id": 9594, + "id": 10190, "nodeType": "StructuredDocumentation", - "src": "26711:200:24", + "src": "27239:200:24", "text": "@dev Calculates hash of a quote. Note: besides calculation this function also validates the quote.\n@param quote The quote of the service\n@return The hash of a quote" }, "functionSelector": "b3a849aa", - "id": 9607, + "id": 10203, "implemented": true, "kind": "function", "modifiers": [], "name": "hashQuote", - "nameLocation": "26925:9:24", + "nameLocation": "27453:9:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 9598, + "id": 10194, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9597, + "id": 10193, "mutability": "mutable", "name": "quote", - "nameLocation": "26962:5:24", + "nameLocation": "27490:5:24", "nodeType": "VariableDeclaration", - "scope": 9607, - "src": "26935:32:24", + "scope": 10203, + "src": "27463:32:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote" }, "typeName": { - "id": 9596, + "id": 10192, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 9595, + "id": 10191, "name": "QuotesV2.PeginQuote", "nameLocations": [ - "26935:8:24", - "26944:10:24" + "27463:8:24", + "27472:10:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10599, - "src": "26935:19:24" + "referencedDeclaration": 11195, + "src": "27463:19:24" }, - "referencedDeclaration": 10599, - "src": "26935:19:24", + "referencedDeclaration": 11195, + "src": "27463:19:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_storage_ptr", "typeString": "struct QuotesV2.PeginQuote" } }, "visibility": "internal" } ], - "src": "26934:34:24" + "src": "27462:34:24" }, "returnParameters": { - "id": 9601, + "id": 10197, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9600, + "id": 10196, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 9607, - "src": "26990:7:24", + "scope": 10203, + "src": "27518:7:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -77645,10 +77926,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 9599, + "id": 10195, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "26990:7:24", + "src": "27518:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -77657,32 +77938,32 @@ "visibility": "internal" } ], - "src": "26989:9:24" + "src": "27517:9:24" }, - "scope": 10196, - "src": "26916:134:24", + "scope": 10792, + "src": "27444:134:24", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 9619, + "id": 10215, "nodeType": "Block", - "src": "27160:57:24", + "src": "27688:57:24", "statements": [ { "expression": { "arguments": [ { - "id": 9616, + "id": 10212, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9610, - "src": "27204:5:24", + "referencedDeclaration": 10206, + "src": "27732:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } } @@ -77690,22 +77971,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } ], - "id": 9615, + "id": 10211, "name": "validateAndHashPegOutQuote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9747, - "src": "27177:26:24", + "referencedDeclaration": 10343, + "src": "27705:26:24", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$10638_memory_ptr_$returns$_t_bytes32_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$11234_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (struct QuotesV2.PegOutQuote memory) view returns (bytes32)" } }, - "id": 9617, + "id": 10213, "isConstant": false, "isLValue": false, "isPure": false, @@ -77714,86 +77995,86 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "27177:33:24", + "src": "27705:33:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "functionReturnParameters": 9614, - "id": 9618, + "functionReturnParameters": 10210, + "id": 10214, "nodeType": "Return", - "src": "27170:40:24" + "src": "27698:40:24" } ] }, "functionSelector": "22140009", - "id": 9620, + "id": 10216, "implemented": true, "kind": "function", "modifiers": [], "name": "hashPegoutQuote", - "nameLocation": "27065:15:24", + "nameLocation": "27593:15:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 9611, + "id": 10207, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9610, + "id": 10206, "mutability": "mutable", "name": "quote", - "nameLocation": "27118:5:24", + "nameLocation": "27646:5:24", "nodeType": "VariableDeclaration", - "scope": 9620, - "src": "27090:33:24", + "scope": 10216, + "src": "27618:33:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote" }, "typeName": { - "id": 9609, + "id": 10205, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 9608, + "id": 10204, "name": "QuotesV2.PegOutQuote", "nameLocations": [ - "27090:8:24", - "27099:11:24" + "27618:8:24", + "27627:11:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10638, - "src": "27090:20:24" + "referencedDeclaration": 11234, + "src": "27618:20:24" }, - "referencedDeclaration": 10638, - "src": "27090:20:24", + "referencedDeclaration": 11234, + "src": "27618:20:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote" } }, "visibility": "internal" } ], - "src": "27080:49:24" + "src": "27608:49:24" }, "returnParameters": { - "id": 9614, + "id": 10210, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9613, + "id": 10209, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 9620, - "src": "27151:7:24", + "scope": 10216, + "src": "27679:7:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -77801,10 +78082,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 9612, + "id": 10208, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "27151:7:24", + "src": "27679:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -77813,19 +78094,19 @@ "visibility": "internal" } ], - "src": "27150:9:24" + "src": "27678:9:24" }, - "scope": 10196, - "src": "27056:161:24", + "scope": 10792, + "src": "27584:161:24", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 9719, + "id": 10315, "nodeType": "Block", - "src": "27332:774:24", + "src": "27860:774:24", "statements": [ { "expression": { @@ -77835,7 +78116,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 9635, + "id": 10231, "isConstant": false, "isLValue": false, "isPure": false, @@ -77843,14 +78124,14 @@ "leftExpression": { "arguments": [ { - "id": 9631, + "id": 10227, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967268, - "src": "27358:4:24", + "src": "27886:4:24", "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10196", + "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10792", "typeString": "contract LiquidityBridgeContractV2" } } @@ -77858,30 +78139,30 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10196", + "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10792", "typeString": "contract LiquidityBridgeContractV2" } ], - "id": 9630, + "id": 10226, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "27350:7:24", + "src": "27878:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 9629, + "id": 10225, "name": "address", "nodeType": "ElementaryTypeName", - "src": "27350:7:24", + "src": "27878:7:24", "typeDescriptions": {} } }, - "id": 9632, + "id": 10228, "isConstant": false, "isLValue": false, "isPure": false, @@ -77890,7 +78171,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "27350:13:24", + "src": "27878:13:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -77901,33 +78182,33 @@ "operator": "==", "rightExpression": { "expression": { - "id": 9633, + "id": 10229, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9623, - "src": "27367:5:24", + "referencedDeclaration": 10219, + "src": "27895:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9634, + "id": 10230, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "27373:10:24", + "memberLocation": "27901:10:24", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10562, - "src": "27367:16:24", + "referencedDeclaration": 11158, + "src": "27895:16:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "27350:33:24", + "src": "27878:33:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -77935,14 +78216,14 @@ }, { "hexValue": "4c4243303531", - "id": 9636, + "id": 10232, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "27385:8:24", + "src": "27913:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ed7029e52dbf10ed9f0aafb2c33265c713a3f4dfd10cc113f22ba3c1270e1ddb", "typeString": "literal_string \"LBC051\"" @@ -77961,7 +78242,7 @@ "typeString": "literal_string \"LBC051\"" } ], - "id": 9628, + "id": 10224, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -77969,13 +78250,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "27342:7:24", + "src": "27870:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9637, + "id": 10233, "isConstant": false, "isLValue": false, "isPure": false, @@ -77984,16 +78265,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "27342:52:24", + "src": "27870:52:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9638, + "id": 10234, "nodeType": "ExpressionStatement", - "src": "27342:52:24" + "src": "27870:52:24" }, { "expression": { @@ -78003,7 +78284,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 9646, + "id": 10242, "isConstant": false, "isLValue": false, "isPure": false, @@ -78011,14 +78292,14 @@ "leftExpression": { "arguments": [ { - "id": 9642, + "id": 10238, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7633, - "src": "27433:6:24", + "referencedDeclaration": 8154, + "src": "27961:6:24", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } } @@ -78026,30 +78307,30 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } ], - "id": 9641, + "id": 10237, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "27425:7:24", + "src": "27953:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 9640, + "id": 10236, "name": "address", "nodeType": "ElementaryTypeName", - "src": "27425:7:24", + "src": "27953:7:24", "typeDescriptions": {} } }, - "id": 9643, + "id": 10239, "isConstant": false, "isLValue": false, "isPure": false, @@ -78058,7 +78339,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "27425:15:24", + "src": "27953:15:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -78069,33 +78350,33 @@ "operator": "!=", "rightExpression": { "expression": { - "id": 9644, + "id": 10240, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9623, - "src": "27444:5:24", + "referencedDeclaration": 10219, + "src": "27972:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9645, + "id": 10241, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "27450:15:24", + "memberLocation": "27978:15:24", "memberName": "contractAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10576, - "src": "27444:21:24", + "referencedDeclaration": 11172, + "src": "27972:21:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "27425:40:24", + "src": "27953:40:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -78103,14 +78384,14 @@ }, { "hexValue": "4c4243303532", - "id": 9647, + "id": 10243, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "27479:8:24", + "src": "28007:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a1a398356814e2eac3017ce127db7657cbb8e2f1d90a78bc426eaa92c56969eb", "typeString": "literal_string \"LBC052\"" @@ -78129,7 +78410,7 @@ "typeString": "literal_string \"LBC052\"" } ], - "id": 9639, + "id": 10235, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -78137,13 +78418,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "27404:7:24", + "src": "27932:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9648, + "id": 10244, "isConstant": false, "isLValue": false, "isPure": false, @@ -78152,16 +78433,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "27404:93:24", + "src": "27932:93:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9649, + "id": 10245, "nodeType": "ExpressionStatement", - "src": "27404:93:24" + "src": "27932:93:24" }, { "expression": { @@ -78171,7 +78452,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 9661, + "id": 10257, "isConstant": false, "isLValue": false, "isPure": false, @@ -78181,7 +78462,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9655, + "id": 10251, "isConstant": false, "isLValue": false, "isPure": false, @@ -78189,41 +78470,41 @@ "leftExpression": { "expression": { "expression": { - "id": 9651, + "id": 10247, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9623, - "src": "27528:5:24", + "referencedDeclaration": 10219, + "src": "28056:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9652, + "id": 10248, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "27534:16:24", + "memberLocation": "28062:16:24", "memberName": "btcRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10566, - "src": "27528:22:24", + "referencedDeclaration": 11162, + "src": "28056:22:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 9653, + "id": 10249, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "27551:6:24", + "memberLocation": "28079:6:24", "memberName": "length", "nodeType": "MemberAccess", - "src": "27528:29:24", + "src": "28056:29:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -78233,21 +78514,21 @@ "operator": "==", "rightExpression": { "hexValue": "3231", - "id": 9654, + "id": 10250, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "27561:2:24", + "src": "28089:2:24", "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", "typeString": "int_const 21" }, "value": "21" }, - "src": "27528:35:24", + "src": "28056:35:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -78260,7 +78541,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9660, + "id": 10256, "isConstant": false, "isLValue": false, "isPure": false, @@ -78268,41 +78549,41 @@ "leftExpression": { "expression": { "expression": { - "id": 9656, + "id": 10252, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9623, - "src": "27579:5:24", + "referencedDeclaration": 10219, + "src": "28107:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9657, + "id": 10253, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "27585:16:24", + "memberLocation": "28113:16:24", "memberName": "btcRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10566, - "src": "27579:22:24", + "referencedDeclaration": 11162, + "src": "28107:22:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 9658, + "id": 10254, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "27602:6:24", + "memberLocation": "28130:6:24", "memberName": "length", "nodeType": "MemberAccess", - "src": "27579:29:24", + "src": "28107:29:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -78312,27 +78593,27 @@ "operator": "==", "rightExpression": { "hexValue": "3333", - "id": 9659, + "id": 10255, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "27612:2:24", + "src": "28140:2:24", "typeDescriptions": { "typeIdentifier": "t_rational_33_by_1", "typeString": "int_const 33" }, "value": "33" }, - "src": "27579:35:24", + "src": "28107:35:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "27528:86:24", + "src": "28056:86:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -78340,14 +78621,14 @@ }, { "hexValue": "4c4243303533", - "id": 9662, + "id": 10258, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "27628:8:24", + "src": "28156:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_923b965409721a83cf4ae76f34fa52de6eb09679d5b7141d2c0fc518a94192db", "typeString": "literal_string \"LBC053\"" @@ -78366,7 +78647,7 @@ "typeString": "literal_string \"LBC053\"" } ], - "id": 9650, + "id": 10246, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -78374,13 +78655,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "27507:7:24", + "src": "28035:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9663, + "id": 10259, "isConstant": false, "isLValue": false, "isPure": false, @@ -78389,16 +78670,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "27507:139:24", + "src": "28035:139:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9664, + "id": 10260, "nodeType": "ExpressionStatement", - "src": "27507:139:24" + "src": "28035:139:24" }, { "expression": { @@ -78408,7 +78689,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9670, + "id": 10266, "isConstant": false, "isLValue": false, "isPure": false, @@ -78416,41 +78697,41 @@ "leftExpression": { "expression": { "expression": { - "id": 9666, + "id": 10262, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9623, - "src": "27677:5:24", + "referencedDeclaration": 10219, + "src": "28205:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9667, + "id": 10263, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "27683:27:24", + "memberLocation": "28211:27:24", "memberName": "liquidityProviderBtcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10570, - "src": "27677:33:24", + "referencedDeclaration": 11166, + "src": "28205:33:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 9668, + "id": 10264, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "27711:6:24", + "memberLocation": "28239:6:24", "memberName": "length", "nodeType": "MemberAccess", - "src": "27677:40:24", + "src": "28205:40:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -78460,21 +78741,21 @@ "operator": "==", "rightExpression": { "hexValue": "3231", - "id": 9669, + "id": 10265, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "27721:2:24", + "src": "28249:2:24", "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", "typeString": "int_const 21" }, "value": "21" }, - "src": "27677:46:24", + "src": "28205:46:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -78482,14 +78763,14 @@ }, { "hexValue": "4c4243303534", - "id": 9671, + "id": 10267, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "27737:8:24", + "src": "28265:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_472231c5f3abacc190b5fd56153fbfc4b6c39c18040d443b29faee14791d54d9", "typeString": "literal_string \"LBC054\"" @@ -78508,7 +78789,7 @@ "typeString": "literal_string \"LBC054\"" } ], - "id": 9665, + "id": 10261, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -78516,13 +78797,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "27656:7:24", + "src": "28184:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9672, + "id": 10268, "isConstant": false, "isLValue": false, "isPure": false, @@ -78531,16 +78812,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "27656:99:24", + "src": "28184:99:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9673, + "id": 10269, "nodeType": "ExpressionStatement", - "src": "27656:99:24" + "src": "28184:99:24" }, { "expression": { @@ -78550,7 +78831,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9687, + "id": 10283, "isConstant": false, "isLValue": false, "isPure": false, @@ -78560,7 +78841,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9685, + "id": 10281, "isConstant": false, "isLValue": false, "isPure": false, @@ -78570,7 +78851,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9682, + "id": 10278, "isConstant": false, "isLValue": false, "isPure": false, @@ -78580,34 +78861,34 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9679, + "id": 10275, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9675, + "id": 10271, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9623, - "src": "27786:5:24", + "referencedDeclaration": 10219, + "src": "28314:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9676, + "id": 10272, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "27792:5:24", + "memberLocation": "28320:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10584, - "src": "27786:11:24", + "referencedDeclaration": 11180, + "src": "28314:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -78617,33 +78898,33 @@ "operator": "+", "rightExpression": { "expression": { - "id": 9677, + "id": 10273, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9623, - "src": "27800:5:24", + "referencedDeclaration": 10219, + "src": "28328:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9678, + "id": 10274, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "27806:7:24", + "memberLocation": "28334:7:24", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10572, - "src": "27800:13:24", + "referencedDeclaration": 11168, + "src": "28328:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "27786:27:24", + "src": "28314:27:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -78653,33 +78934,33 @@ "operator": "+", "rightExpression": { "expression": { - "id": 9680, + "id": 10276, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9623, - "src": "27816:5:24", + "referencedDeclaration": 10219, + "src": "28344:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9681, + "id": 10277, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "27822:16:24", + "memberLocation": "28350:16:24", "memberName": "productFeeAmount", "nodeType": "MemberAccess", - "referencedDeclaration": 10596, - "src": "27816:22:24", + "referencedDeclaration": 11192, + "src": "28344:22:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "27786:52:24", + "src": "28314:52:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -78689,33 +78970,33 @@ "operator": "+", "rightExpression": { "expression": { - "id": 9683, + "id": 10279, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9623, - "src": "27841:5:24", + "referencedDeclaration": 10219, + "src": "28369:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9684, + "id": 10280, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "27847:6:24", + "memberLocation": "28375:6:24", "memberName": "gasFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10598, - "src": "27841:12:24", + "referencedDeclaration": 11194, + "src": "28369:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "27786:67:24", + "src": "28314:67:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -78724,18 +79005,18 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 9686, + "id": 10282, "name": "minPegIn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7663, - "src": "27857:8:24", + "referencedDeclaration": 8184, + "src": "28385:8:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "27786:79:24", + "src": "28314:79:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -78743,14 +79024,14 @@ }, { "hexValue": "4c4243303535", - "id": 9688, + "id": 10284, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "27879:8:24", + "src": "28407:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_1bdc71792e300c3b19739ad62e7651b4b49de502b7d1b6227970563bffaad71e", "typeString": "literal_string \"LBC055\"" @@ -78769,7 +79050,7 @@ "typeString": "literal_string \"LBC055\"" } ], - "id": 9674, + "id": 10270, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -78777,13 +79058,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "27765:7:24", + "src": "28293:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9689, + "id": 10285, "isConstant": false, "isLValue": false, "isPure": false, @@ -78792,16 +79073,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "27765:132:24", + "src": "28293:132:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9690, + "id": 10286, "nodeType": "ExpressionStatement", - "src": "27765:132:24" + "src": "28293:132:24" }, { "expression": { @@ -78811,7 +79092,7 @@ "typeIdentifier": "t_uint64", "typeString": "uint64" }, - "id": 9708, + "id": 10304, "isConstant": false, "isLValue": false, "isPure": false, @@ -78820,22 +79101,22 @@ "expression": { "arguments": [ { - "id": 9694, + "id": 10290, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "27933:6:24", + "src": "28461:6:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint32_$", "typeString": "type(uint32)" }, "typeName": { - "id": 9693, + "id": 10289, "name": "uint32", "nodeType": "ElementaryTypeName", - "src": "27933:6:24", + "src": "28461:6:24", "typeDescriptions": {} } } @@ -78847,18 +79128,18 @@ "typeString": "type(uint32)" } ], - "id": 9692, + "id": 10288, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967269, - "src": "27928:4:24", + "src": "28456:4:24", "typeDescriptions": { "typeIdentifier": "t_function_metatype_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 9695, + "id": 10291, "isConstant": false, "isLValue": false, "isPure": true, @@ -78867,22 +79148,22 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "27928:12:24", + "src": "28456:12:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_magic_meta_type_t_uint32", "typeString": "type(uint32)" } }, - "id": 9696, + "id": 10292, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, - "memberLocation": "27941:3:24", + "memberLocation": "28469:3:24", "memberName": "max", "nodeType": "MemberAccess", - "src": "27928:16:24", + "src": "28456:16:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -78895,7 +79176,7 @@ "typeIdentifier": "t_uint64", "typeString": "uint64" }, - "id": 9707, + "id": 10303, "isConstant": false, "isLValue": false, "isPure": false, @@ -78904,27 +79185,27 @@ "arguments": [ { "expression": { - "id": 9699, + "id": 10295, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9623, - "src": "27955:5:24", + "referencedDeclaration": 10219, + "src": "28483:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9700, + "id": 10296, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "27961:18:24", + "memberLocation": "28489:18:24", "memberName": "agreementTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 10586, - "src": "27955:24:24", + "referencedDeclaration": 11182, + "src": "28483:24:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -78938,26 +79219,26 @@ "typeString": "uint32" } ], - "id": 9698, + "id": 10294, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "27948:6:24", + "src": "28476:6:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint64_$", "typeString": "type(uint64)" }, "typeName": { - "id": 9697, + "id": 10293, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "27948:6:24", + "src": "28476:6:24", "typeDescriptions": {} } }, - "id": 9701, + "id": 10297, "isConstant": false, "isLValue": false, "isPure": false, @@ -78966,7 +79247,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "27948:32:24", + "src": "28476:32:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint64", @@ -78979,27 +79260,27 @@ "arguments": [ { "expression": { - "id": 9704, + "id": 10300, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9623, - "src": "27990:5:24", + "referencedDeclaration": 10219, + "src": "28518:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9705, + "id": 10301, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "27996:14:24", + "memberLocation": "28524:14:24", "memberName": "timeForDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 10588, - "src": "27990:20:24", + "referencedDeclaration": 11184, + "src": "28518:20:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -79013,26 +79294,26 @@ "typeString": "uint32" } ], - "id": 9703, + "id": 10299, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "27983:6:24", + "src": "28511:6:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint64_$", "typeString": "type(uint64)" }, "typeName": { - "id": 9702, + "id": 10298, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "27983:6:24", + "src": "28511:6:24", "typeDescriptions": {} } }, - "id": 9706, + "id": 10302, "isConstant": false, "isLValue": false, "isPure": false, @@ -79041,20 +79322,20 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "27983:28:24", + "src": "28511:28:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "27948:63:24", + "src": "28476:63:24", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "27928:83:24", + "src": "28456:83:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -79062,14 +79343,14 @@ }, { "hexValue": "4c4243303731", - "id": 9709, + "id": 10305, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "28025:8:24", + "src": "28553:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_79d3c6c4bda42d819072ed97d83e6147bd9ad75bd5415529ecb6a41984271fb2", "typeString": "literal_string \"LBC071\"" @@ -79088,7 +79369,7 @@ "typeString": "literal_string \"LBC071\"" } ], - "id": 9691, + "id": 10287, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -79096,13 +79377,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "27907:7:24", + "src": "28435:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9710, + "id": 10306, "isConstant": false, "isLValue": false, "isPure": false, @@ -79111,16 +79392,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "27907:136:24", + "src": "28435:136:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9711, + "id": 10307, "nodeType": "ExpressionStatement", - "src": "27907:136:24" + "src": "28435:136:24" }, { "expression": { @@ -79128,14 +79409,14 @@ { "arguments": [ { - "id": 9715, + "id": 10311, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9623, - "src": "28092:5:24", + "referencedDeclaration": 10219, + "src": "28620:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } } @@ -79143,38 +79424,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } ], "expression": { - "id": 9713, + "id": 10309, "name": "QuotesV2", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10849, - "src": "28071:8:24", + "referencedDeclaration": 11445, + "src": "28599:8:24", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_QuotesV2_$10849_$", + "typeIdentifier": "t_type$_t_contract$_QuotesV2_$11445_$", "typeString": "type(library QuotesV2)" } }, - "id": 9714, + "id": 10310, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "28080:11:24", + "memberLocation": "28608:11:24", "memberName": "encodeQuote", "nodeType": "MemberAccess", - "referencedDeclaration": 10657, - "src": "28071:20:24", + "referencedDeclaration": 11253, + "src": "28599:20:24", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PeginQuote_$10599_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PeginQuote_$11195_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (struct QuotesV2.PeginQuote memory) pure returns (bytes memory)" } }, - "id": 9716, + "id": 10312, "isConstant": false, "isLValue": false, "isPure": false, @@ -79183,7 +79464,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "28071:27:24", + "src": "28599:27:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -79198,18 +79479,18 @@ "typeString": "bytes memory" } ], - "id": 9712, + "id": 10308, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "28061:9:24", + "src": "28589:9:24", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 9717, + "id": 10313, "isConstant": false, "isLValue": false, "isPure": false, @@ -79218,85 +79499,85 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "28061:38:24", + "src": "28589:38:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "functionReturnParameters": 9627, - "id": 9718, + "functionReturnParameters": 10223, + "id": 10314, "nodeType": "Return", - "src": "28054:45:24" + "src": "28582:45:24" } ] }, - "id": 9720, + "id": 10316, "implemented": true, "kind": "function", "modifiers": [], "name": "validateAndHashQuote", - "nameLocation": "27232:20:24", + "nameLocation": "27760:20:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 9624, + "id": 10220, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9623, + "id": 10219, "mutability": "mutable", "name": "quote", - "nameLocation": "27289:5:24", + "nameLocation": "27817:5:24", "nodeType": "VariableDeclaration", - "scope": 9720, - "src": "27262:32:24", + "scope": 10316, + "src": "27790:32:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote" }, "typeName": { - "id": 9622, + "id": 10218, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 9621, + "id": 10217, "name": "QuotesV2.PeginQuote", "nameLocations": [ - "27262:8:24", - "27271:10:24" + "27790:8:24", + "27799:10:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10599, - "src": "27262:19:24" + "referencedDeclaration": 11195, + "src": "27790:19:24" }, - "referencedDeclaration": 10599, - "src": "27262:19:24", + "referencedDeclaration": 11195, + "src": "27790:19:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_storage_ptr", "typeString": "struct QuotesV2.PeginQuote" } }, "visibility": "internal" } ], - "src": "27252:48:24" + "src": "27780:48:24" }, "returnParameters": { - "id": 9627, + "id": 10223, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9626, + "id": 10222, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 9720, - "src": "27323:7:24", + "scope": 10316, + "src": "27851:7:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -79304,10 +79585,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 9625, + "id": 10221, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "27323:7:24", + "src": "27851:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -79316,19 +79597,19 @@ "visibility": "internal" } ], - "src": "27322:9:24" + "src": "27850:9:24" }, - "scope": 10196, - "src": "27223:883:24", + "scope": 10792, + "src": "27751:883:24", "stateMutability": "view", "virtual": false, "visibility": "private" }, { "body": { - "id": 9746, + "id": 10342, "nodeType": "Block", - "src": "28228:131:24", + "src": "28756:131:24", "statements": [ { "expression": { @@ -79338,7 +79619,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 9735, + "id": 10331, "isConstant": false, "isLValue": false, "isPure": false, @@ -79346,14 +79627,14 @@ "leftExpression": { "arguments": [ { - "id": 9731, + "id": 10327, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967268, - "src": "28254:4:24", + "src": "28782:4:24", "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10196", + "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10792", "typeString": "contract LiquidityBridgeContractV2" } } @@ -79361,30 +79642,30 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10196", + "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10792", "typeString": "contract LiquidityBridgeContractV2" } ], - "id": 9730, + "id": 10326, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "28246:7:24", + "src": "28774:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 9729, + "id": 10325, "name": "address", "nodeType": "ElementaryTypeName", - "src": "28246:7:24", + "src": "28774:7:24", "typeDescriptions": {} } }, - "id": 9732, + "id": 10328, "isConstant": false, "isLValue": false, "isPure": false, @@ -79393,7 +79674,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "28246:13:24", + "src": "28774:13:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -79404,33 +79685,33 @@ "operator": "==", "rightExpression": { "expression": { - "id": 9733, + "id": 10329, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9723, - "src": "28263:5:24", + "referencedDeclaration": 10319, + "src": "28791:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 9734, + "id": 10330, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "28269:10:24", + "memberLocation": "28797:10:24", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10601, - "src": "28263:16:24", + "referencedDeclaration": 11197, + "src": "28791:16:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "28246:33:24", + "src": "28774:33:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -79438,14 +79719,14 @@ }, { "hexValue": "4c4243303536", - "id": 9736, + "id": 10332, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "28281:8:24", + "src": "28809:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_5004352c178489e456f74ee0937a3403e68ee3fa72f6afa5bff20fe549075132", "typeString": "literal_string \"LBC056\"" @@ -79464,7 +79745,7 @@ "typeString": "literal_string \"LBC056\"" } ], - "id": 9728, + "id": 10324, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -79472,13 +79753,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "28238:7:24", + "src": "28766:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9737, + "id": 10333, "isConstant": false, "isLValue": false, "isPure": false, @@ -79487,16 +79768,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "28238:52:24", + "src": "28766:52:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9738, + "id": 10334, "nodeType": "ExpressionStatement", - "src": "28238:52:24" + "src": "28766:52:24" }, { "expression": { @@ -79504,14 +79785,14 @@ { "arguments": [ { - "id": 9742, + "id": 10338, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9723, - "src": "28345:5:24", + "referencedDeclaration": 10319, + "src": "28873:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } } @@ -79519,38 +79800,38 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } ], "expression": { - "id": 9740, + "id": 10336, "name": "QuotesV2", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10849, - "src": "28318:8:24", + "referencedDeclaration": 11445, + "src": "28846:8:24", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_QuotesV2_$10849_$", + "typeIdentifier": "t_type$_t_contract$_QuotesV2_$11445_$", "typeString": "type(library QuotesV2)" } }, - "id": 9741, + "id": 10337, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "28327:17:24", + "memberLocation": "28855:17:24", "memberName": "encodePegOutQuote", "nodeType": "MemberAccess", - "referencedDeclaration": 10676, - "src": "28318:26:24", + "referencedDeclaration": 11272, + "src": "28846:26:24", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PegOutQuote_$10638_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PegOutQuote_$11234_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (struct QuotesV2.PegOutQuote memory) pure returns (bytes memory)" } }, - "id": 9743, + "id": 10339, "isConstant": false, "isLValue": false, "isPure": false, @@ -79559,7 +79840,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "28318:33:24", + "src": "28846:33:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -79574,18 +79855,18 @@ "typeString": "bytes memory" } ], - "id": 9739, + "id": 10335, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "28308:9:24", + "src": "28836:9:24", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 9744, + "id": 10340, "isConstant": false, "isLValue": false, "isPure": false, @@ -79594,85 +79875,85 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "28308:44:24", + "src": "28836:44:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "functionReturnParameters": 9727, - "id": 9745, + "functionReturnParameters": 10323, + "id": 10341, "nodeType": "Return", - "src": "28301:51:24" + "src": "28829:51:24" } ] }, - "id": 9747, + "id": 10343, "implemented": true, "kind": "function", "modifiers": [], "name": "validateAndHashPegOutQuote", - "nameLocation": "28121:26:24", + "nameLocation": "28649:26:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 9724, + "id": 10320, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9723, + "id": 10319, "mutability": "mutable", "name": "quote", - "nameLocation": "28185:5:24", + "nameLocation": "28713:5:24", "nodeType": "VariableDeclaration", - "scope": 9747, - "src": "28157:33:24", + "scope": 10343, + "src": "28685:33:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote" }, "typeName": { - "id": 9722, + "id": 10318, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 9721, + "id": 10317, "name": "QuotesV2.PegOutQuote", "nameLocations": [ - "28157:8:24", - "28166:11:24" + "28685:8:24", + "28694:11:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10638, - "src": "28157:20:24" + "referencedDeclaration": 11234, + "src": "28685:20:24" }, - "referencedDeclaration": 10638, - "src": "28157:20:24", + "referencedDeclaration": 11234, + "src": "28685:20:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote" } }, "visibility": "internal" } ], - "src": "28147:49:24" + "src": "28675:49:24" }, "returnParameters": { - "id": 9727, + "id": 10323, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9726, + "id": 10322, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 9747, - "src": "28219:7:24", + "scope": 10343, + "src": "28747:7:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -79680,10 +79961,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 9725, + "id": 10321, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "28219:7:24", + "src": "28747:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -79692,19 +79973,19 @@ "visibility": "internal" } ], - "src": "28218:9:24" + "src": "28746:9:24" }, - "scope": 10196, - "src": "28112:247:24", + "scope": 10792, + "src": "28640:247:24", "stateMutability": "view", "virtual": false, "visibility": "private" }, { "body": { - "id": 9763, + "id": 10359, "nodeType": "Block", - "src": "28422:37:24", + "src": "28950:37:24", "statements": [ { "expression": { @@ -79713,18 +79994,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9758, + "id": 10354, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 9756, + "id": 10352, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9749, - "src": "28439:1:24", + "referencedDeclaration": 10345, + "src": "28967:1:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -79733,49 +80014,49 @@ "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { - "id": 9757, + "id": 10353, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9751, - "src": "28443:1:24", + "referencedDeclaration": 10347, + "src": "28971:1:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "28439:5:24", + "src": "28967:5:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseExpression": { - "id": 9760, + "id": 10356, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9751, - "src": "28451:1:24", + "referencedDeclaration": 10347, + "src": "28979:1:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 9761, + "id": 10357, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", - "src": "28439:13:24", + "src": "28967:13:24", "trueExpression": { - "id": 9759, + "id": 10355, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9749, - "src": "28447:1:24", + "referencedDeclaration": 10345, + "src": "28975:1:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -79786,33 +80067,33 @@ "typeString": "uint256" } }, - "functionReturnParameters": 9755, - "id": 9762, + "functionReturnParameters": 10351, + "id": 10358, "nodeType": "Return", - "src": "28432:20:24" + "src": "28960:20:24" } ] }, - "id": 9764, + "id": 10360, "implemented": true, "kind": "function", "modifiers": [], "name": "min", - "nameLocation": "28374:3:24", + "nameLocation": "28902:3:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 9752, + "id": 10348, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9749, + "id": 10345, "mutability": "mutable", "name": "a", - "nameLocation": "28383:1:24", + "nameLocation": "28911:1:24", "nodeType": "VariableDeclaration", - "scope": 9764, - "src": "28378:6:24", + "scope": 10360, + "src": "28906:6:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -79820,10 +80101,10 @@ "typeString": "uint256" }, "typeName": { - "id": 9748, + "id": 10344, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "28378:4:24", + "src": "28906:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -79833,13 +80114,13 @@ }, { "constant": false, - "id": 9751, + "id": 10347, "mutability": "mutable", "name": "b", - "nameLocation": "28391:1:24", + "nameLocation": "28919:1:24", "nodeType": "VariableDeclaration", - "scope": 9764, - "src": "28386:6:24", + "scope": 10360, + "src": "28914:6:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -79847,10 +80128,10 @@ "typeString": "uint256" }, "typeName": { - "id": 9750, + "id": 10346, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "28386:4:24", + "src": "28914:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -79859,21 +80140,21 @@ "visibility": "internal" } ], - "src": "28377:16:24" + "src": "28905:16:24" }, "returnParameters": { - "id": 9755, + "id": 10351, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9754, + "id": 10350, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 9764, - "src": "28416:4:24", + "scope": 10360, + "src": "28944:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -79881,10 +80162,10 @@ "typeString": "uint256" }, "typeName": { - "id": 9753, + "id": 10349, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "28416:4:24", + "src": "28944:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -79893,48 +80174,48 @@ "visibility": "internal" } ], - "src": "28415:6:24" + "src": "28943:6:24" }, - "scope": 10196, - "src": "28365:94:24", + "scope": 10792, + "src": "28893:94:24", "stateMutability": "pure", "virtual": false, "visibility": "private" }, { "body": { - "id": 9782, + "id": 10378, "nodeType": "Block", - "src": "28592:85:24", + "src": "29120:85:24", "statements": [ { "expression": { - "id": 9775, + "id": 10371, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 9771, + "id": 10367, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7637, - "src": "28602:8:24", + "referencedDeclaration": 8158, + "src": "29130:8:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 9773, + "id": 10369, "indexExpression": { - "id": 9772, + "id": 10368, "name": "dest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9766, - "src": "28611:4:24", + "referencedDeclaration": 10362, + "src": "29139:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -79945,7 +80226,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "28602:14:24", + "src": "29130:14:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -79954,49 +80235,49 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 9774, + "id": 10370, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9768, - "src": "28620:6:24", + "referencedDeclaration": 10364, + "src": "29148:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "28602:24:24", + "src": "29130:24:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 9776, + "id": 10372, "nodeType": "ExpressionStatement", - "src": "28602:24:24" + "src": "29130:24:24" }, { "eventCall": { "arguments": [ { - "id": 9778, + "id": 10374, "name": "dest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9766, - "src": "28657:4:24", + "referencedDeclaration": 10362, + "src": "29185:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 9779, + "id": 10375, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9768, - "src": "28663:6:24", + "referencedDeclaration": 10364, + "src": "29191:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -80014,18 +80295,18 @@ "typeString": "uint256" } ], - "id": 9777, + "id": 10373, "name": "BalanceIncrease", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7578, - "src": "28641:15:24", + "referencedDeclaration": 8099, + "src": "29169:15:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 9780, + "id": 10376, "isConstant": false, "isLValue": false, "isPure": false, @@ -80034,39 +80315,39 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "28641:29:24", + "src": "29169:29:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9781, + "id": 10377, "nodeType": "EmitStatement", - "src": "28636:34:24" + "src": "29164:34:24" } ] }, - "id": 9783, + "id": 10379, "implemented": true, "kind": "function", "modifiers": [], "name": "increaseBalance", - "nameLocation": "28541:15:24", + "nameLocation": "29069:15:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 9769, + "id": 10365, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9766, + "id": 10362, "mutability": "mutable", "name": "dest", - "nameLocation": "28565:4:24", + "nameLocation": "29093:4:24", "nodeType": "VariableDeclaration", - "scope": 9783, - "src": "28557:12:24", + "scope": 10379, + "src": "29085:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -80074,10 +80355,10 @@ "typeString": "address" }, "typeName": { - "id": 9765, + "id": 10361, "name": "address", "nodeType": "ElementaryTypeName", - "src": "28557:7:24", + "src": "29085:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -80088,13 +80369,13 @@ }, { "constant": false, - "id": 9768, + "id": 10364, "mutability": "mutable", "name": "amount", - "nameLocation": "28576:6:24", + "nameLocation": "29104:6:24", "nodeType": "VariableDeclaration", - "scope": 9783, - "src": "28571:11:24", + "scope": 10379, + "src": "29099:11:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -80102,10 +80383,10 @@ "typeString": "uint256" }, "typeName": { - "id": 9767, + "id": 10363, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "28571:4:24", + "src": "29099:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -80114,54 +80395,54 @@ "visibility": "internal" } ], - "src": "28556:27:24" + "src": "29084:27:24" }, "returnParameters": { - "id": 9770, + "id": 10366, "nodeType": "ParameterList", "parameters": [], - "src": "28592:0:24" + "src": "29120:0:24" }, - "scope": 10196, - "src": "28532:145:24", + "scope": 10792, + "src": "29060:145:24", "stateMutability": "nonpayable", "virtual": false, "visibility": "private" }, { "body": { - "id": 9801, + "id": 10397, "nodeType": "Block", - "src": "28743:85:24", + "src": "29271:85:24", "statements": [ { "expression": { - "id": 9794, + "id": 10390, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 9790, + "id": 10386, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7637, - "src": "28753:8:24", + "referencedDeclaration": 8158, + "src": "29281:8:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 9792, + "id": 10388, "indexExpression": { - "id": 9791, + "id": 10387, "name": "dest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9785, - "src": "28762:4:24", + "referencedDeclaration": 10381, + "src": "29290:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -80172,7 +80453,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "28753:14:24", + "src": "29281:14:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -80181,49 +80462,49 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 9793, + "id": 10389, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9787, - "src": "28771:6:24", + "referencedDeclaration": 10383, + "src": "29299:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "28753:24:24", + "src": "29281:24:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 9795, + "id": 10391, "nodeType": "ExpressionStatement", - "src": "28753:24:24" + "src": "29281:24:24" }, { "eventCall": { "arguments": [ { - "id": 9797, + "id": 10393, "name": "dest", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9785, - "src": "28808:4:24", + "referencedDeclaration": 10381, + "src": "29336:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 9798, + "id": 10394, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9787, - "src": "28814:6:24", + "referencedDeclaration": 10383, + "src": "29342:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -80241,18 +80522,18 @@ "typeString": "uint256" } ], - "id": 9796, + "id": 10392, "name": "BalanceDecrease", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7584, - "src": "28792:15:24", + "referencedDeclaration": 8105, + "src": "29320:15:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 9799, + "id": 10395, "isConstant": false, "isLValue": false, "isPure": false, @@ -80261,39 +80542,39 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "28792:29:24", + "src": "29320:29:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9800, + "id": 10396, "nodeType": "EmitStatement", - "src": "28787:34:24" + "src": "29315:34:24" } ] }, - "id": 9802, + "id": 10398, "implemented": true, "kind": "function", "modifiers": [], "name": "decreaseBalance", - "nameLocation": "28692:15:24", + "nameLocation": "29220:15:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 9788, + "id": 10384, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9785, + "id": 10381, "mutability": "mutable", "name": "dest", - "nameLocation": "28716:4:24", + "nameLocation": "29244:4:24", "nodeType": "VariableDeclaration", - "scope": 9802, - "src": "28708:12:24", + "scope": 10398, + "src": "29236:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -80301,10 +80582,10 @@ "typeString": "address" }, "typeName": { - "id": 9784, + "id": 10380, "name": "address", "nodeType": "ElementaryTypeName", - "src": "28708:7:24", + "src": "29236:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -80315,13 +80596,13 @@ }, { "constant": false, - "id": 9787, + "id": 10383, "mutability": "mutable", "name": "amount", - "nameLocation": "28727:6:24", + "nameLocation": "29255:6:24", "nodeType": "VariableDeclaration", - "scope": 9802, - "src": "28722:11:24", + "scope": 10398, + "src": "29250:11:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -80329,10 +80610,10 @@ "typeString": "uint256" }, "typeName": { - "id": 9786, + "id": 10382, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "28722:4:24", + "src": "29250:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -80341,25 +80622,25 @@ "visibility": "internal" } ], - "src": "28707:27:24" + "src": "29235:27:24" }, "returnParameters": { - "id": 9789, + "id": 10385, "nodeType": "ParameterList", "parameters": [], - "src": "28743:0:24" + "src": "29271:0:24" }, - "scope": 10196, - "src": "28683:145:24", + "scope": 10792, + "src": "29211:145:24", "stateMutability": "nonpayable", "virtual": false, "visibility": "private" }, { "body": { - "id": 9822, + "id": 10418, "nodeType": "Block", - "src": "29110:78:24", + "src": "29638:78:24", "statements": [ { "expression": { @@ -80367,7 +80648,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 9820, + "id": 10416, "isConstant": false, "isLValue": false, "isPure": false, @@ -80377,32 +80658,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9814, + "id": 10410, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 9810, + "id": 10406, "name": "collateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7641, - "src": "29127:10:24", + "referencedDeclaration": 8162, + "src": "29655:10:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 9812, + "id": 10408, "indexExpression": { - "id": 9811, + "id": 10407, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9805, - "src": "29138:4:24", + "referencedDeclaration": 10401, + "src": "29666:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -80413,7 +80694,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "29127:16:24", + "src": "29655:16:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -80423,21 +80704,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 9813, + "id": 10409, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "29146:1:24", + "src": "29674:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "29127:20:24", + "src": "29655:20:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -80450,32 +80731,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9819, + "id": 10415, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 9815, + "id": 10411, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7659, - "src": "29151:19:24", + "referencedDeclaration": 8180, + "src": "29679:19:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 9817, + "id": 10413, "indexExpression": { - "id": 9816, + "id": 10412, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9805, - "src": "29171:4:24", + "referencedDeclaration": 10401, + "src": "29699:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -80486,7 +80767,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "29151:25:24", + "src": "29679:25:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -80496,65 +80777,65 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 9818, + "id": 10414, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "29180:1:24", + "src": "29708:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "29151:30:24", + "src": "29679:30:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "29127:54:24", + "src": "29655:54:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 9809, - "id": 9821, + "functionReturnParameters": 10405, + "id": 10417, "nodeType": "Return", - "src": "29120:61:24" + "src": "29648:61:24" } ] }, "documentation": { - "id": 9803, + "id": 10399, "nodeType": "StructuredDocumentation", - "src": "28834:207:24", + "src": "29362:207:24", "text": "@dev Checks if a liquidity provider is registered\n@param addr The address of the liquidity provider\n@return Boolean indicating whether the liquidity provider is registered" }, - "id": 9823, + "id": 10419, "implemented": true, "kind": "function", "modifiers": [], "name": "isRegistered", - "nameLocation": "29055:12:24", + "nameLocation": "29583:12:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 9806, + "id": 10402, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9805, + "id": 10401, "mutability": "mutable", "name": "addr", - "nameLocation": "29076:4:24", + "nameLocation": "29604:4:24", "nodeType": "VariableDeclaration", - "scope": 9823, - "src": "29068:12:24", + "scope": 10419, + "src": "29596:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -80562,10 +80843,10 @@ "typeString": "address" }, "typeName": { - "id": 9804, + "id": 10400, "name": "address", "nodeType": "ElementaryTypeName", - "src": "29068:7:24", + "src": "29596:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -80575,21 +80856,21 @@ "visibility": "internal" } ], - "src": "29067:14:24" + "src": "29595:14:24" }, "returnParameters": { - "id": 9809, + "id": 10405, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9808, + "id": 10404, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 9823, - "src": "29104:4:24", + "scope": 10419, + "src": "29632:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -80597,10 +80878,10 @@ "typeString": "bool" }, "typeName": { - "id": 9807, + "id": 10403, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "29104:4:24", + "src": "29632:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -80609,19 +80890,19 @@ "visibility": "internal" } ], - "src": "29103:6:24" + "src": "29631:6:24" }, - "scope": 10196, - "src": "29046:142:24", + "scope": 10792, + "src": "29574:142:24", "stateMutability": "view", "virtual": false, "visibility": "private" }, { "body": { - "id": 9842, + "id": 10438, "nodeType": "Block", - "src": "29267:84:24", + "src": "29795:84:24", "statements": [ { "expression": { @@ -80629,7 +80910,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 9840, + "id": 10436, "isConstant": false, "isLValue": false, "isPure": false, @@ -80639,32 +80920,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9834, + "id": 10430, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 9830, + "id": 10426, "name": "pegoutCollateral", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7645, - "src": "29284:16:24", + "referencedDeclaration": 8166, + "src": "29812:16:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 9832, + "id": 10428, "indexExpression": { - "id": 9831, + "id": 10427, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9825, - "src": "29301:4:24", + "referencedDeclaration": 10421, + "src": "29829:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -80675,7 +80956,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "29284:22:24", + "src": "29812:22:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -80685,21 +80966,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 9833, + "id": 10429, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "29309:1:24", + "src": "29837:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "29284:26:24", + "src": "29812:26:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -80712,32 +80993,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9839, + "id": 10435, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 9835, + "id": 10431, "name": "resignationBlockNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7659, - "src": "29314:19:24", + "referencedDeclaration": 8180, + "src": "29842:19:24", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 9837, + "id": 10433, "indexExpression": { - "id": 9836, + "id": 10432, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9825, - "src": "29334:4:24", + "referencedDeclaration": 10421, + "src": "29862:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -80748,7 +81029,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "29314:25:24", + "src": "29842:25:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -80758,59 +81039,59 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 9838, + "id": 10434, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "29343:1:24", + "src": "29871:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "29314:30:24", + "src": "29842:30:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "29284:60:24", + "src": "29812:60:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 9829, - "id": 9841, + "functionReturnParameters": 10425, + "id": 10437, "nodeType": "Return", - "src": "29277:67:24" + "src": "29805:67:24" } ] }, - "id": 9843, + "id": 10439, "implemented": true, "kind": "function", "modifiers": [], "name": "isRegisteredForPegout", - "nameLocation": "29203:21:24", + "nameLocation": "29731:21:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 9826, + "id": 10422, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9825, + "id": 10421, "mutability": "mutable", "name": "addr", - "nameLocation": "29233:4:24", + "nameLocation": "29761:4:24", "nodeType": "VariableDeclaration", - "scope": 9843, - "src": "29225:12:24", + "scope": 10439, + "src": "29753:12:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -80818,10 +81099,10 @@ "typeString": "address" }, "typeName": { - "id": 9824, + "id": 10420, "name": "address", "nodeType": "ElementaryTypeName", - "src": "29225:7:24", + "src": "29753:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -80831,21 +81112,21 @@ "visibility": "internal" } ], - "src": "29224:14:24" + "src": "29752:14:24" }, "returnParameters": { - "id": 9829, + "id": 10425, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9828, + "id": 10424, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 9843, - "src": "29261:4:24", + "scope": 10439, + "src": "29789:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -80853,10 +81134,10 @@ "typeString": "bool" }, "typeName": { - "id": 9827, + "id": 10423, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "29261:4:24", + "src": "29789:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -80865,66 +81146,66 @@ "visibility": "internal" } ], - "src": "29260:6:24" + "src": "29788:6:24" }, - "scope": 10196, - "src": "29194:157:24", + "scope": 10792, + "src": "29722:157:24", "stateMutability": "view", "virtual": false, "visibility": "private" }, { "body": { - "id": 9887, + "id": 10483, "nodeType": "Block", - "src": "30011:401:24", + "src": "30539:401:24", "statements": [ { "expression": { "arguments": [ { - "id": 9862, + "id": 10458, "name": "btcRawTransaction", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9849, - "src": "30093:17:24", + "referencedDeclaration": 10445, + "src": "30621:17:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { - "id": 9863, + "id": 10459, "name": "height", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9853, - "src": "30124:6:24", + "referencedDeclaration": 10449, + "src": "30652:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 9864, + "id": 10460, "name": "partialMerkleTree", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9851, - "src": "30144:17:24", + "referencedDeclaration": 10447, + "src": "30672:17:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { - "id": 9865, + "id": 10461, "name": "derivationHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9855, - "src": "30175:14:24", + "referencedDeclaration": 10451, + "src": "30703:14:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -80932,27 +81213,27 @@ }, { "expression": { - "id": 9866, + "id": 10462, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9847, - "src": "30203:5:24", + "referencedDeclaration": 10443, + "src": "30731:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9867, + "id": 10463, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "30209:16:24", + "memberLocation": "30737:16:24", "memberName": "btcRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10566, - "src": "30203:22:24", + "referencedDeclaration": 11162, + "src": "30731:22:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -80961,14 +81242,14 @@ { "arguments": [ { - "id": 9870, + "id": 10466, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967268, - "src": "30247:4:24", + "src": "30775:4:24", "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10196", + "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10792", "typeString": "contract LiquidityBridgeContractV2" } } @@ -80976,31 +81257,31 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10196", + "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10792", "typeString": "contract LiquidityBridgeContractV2" } ], - "id": 9869, + "id": 10465, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "30239:8:24", + "src": "30767:8:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_payable_$", "typeString": "type(address payable)" }, "typeName": { - "id": 9868, + "id": 10464, "name": "address", "nodeType": "ElementaryTypeName", - "src": "30239:8:24", + "src": "30767:8:24", "stateMutability": "payable", "typeDescriptions": {} } }, - "id": 9871, + "id": 10467, "isConstant": false, "isLValue": false, "isPure": false, @@ -81009,7 +81290,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "30239:13:24", + "src": "30767:13:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address_payable", @@ -81018,27 +81299,27 @@ }, { "expression": { - "id": 9872, + "id": 10468, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9847, - "src": "30266:5:24", + "referencedDeclaration": 10443, + "src": "30794:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9873, + "id": 10469, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "30272:27:24", + "memberLocation": "30800:27:24", "memberName": "liquidityProviderBtcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10570, - "src": "30266:33:24", + "referencedDeclaration": 11166, + "src": "30794:33:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -81049,7 +81330,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 9884, + "id": 10480, "isConstant": false, "isLValue": false, "isPure": false, @@ -81059,7 +81340,7 @@ "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 9879, + "id": 10475, "isConstant": false, "isLValue": false, "isPure": false, @@ -81067,25 +81348,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 9874, + "id": 10470, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7655, - "src": "30313:12:24", + "referencedDeclaration": 8176, + "src": "30841:12:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$7482_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8003_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" } }, - "id": 9876, + "id": 10472, "indexExpression": { - "id": 9875, + "id": 10471, "name": "derivationHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9855, - "src": "30326:14:24", + "referencedDeclaration": 10451, + "src": "30854:14:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -81096,22 +81377,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "30313:28:24", + "src": "30841:28:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$7482_storage", + "typeIdentifier": "t_struct$_Registry_$8003_storage", "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" } }, - "id": 9877, + "id": 10473, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "30342:9:24", + "memberLocation": "30870:9:24", "memberName": "timestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 7479, - "src": "30313:38:24", + "referencedDeclaration": 8000, + "src": "30841:38:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -81121,21 +81402,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 9878, + "id": 10474, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "30354:1:24", + "src": "30882:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "30313:42:24", + "src": "30841:42:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -81146,25 +81427,25 @@ "rightExpression": { "expression": { "baseExpression": { - "id": 9880, + "id": 10476, "name": "callRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7655, - "src": "30359:12:24", + "referencedDeclaration": 8176, + "src": "30887:12:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$7482_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8003_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" } }, - "id": 9882, + "id": 10478, "indexExpression": { - "id": 9881, + "id": 10477, "name": "derivationHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9855, - "src": "30372:14:24", + "referencedDeclaration": 10451, + "src": "30900:14:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -81175,28 +81456,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "30359:28:24", + "src": "30887:28:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$7482_storage", + "typeIdentifier": "t_struct$_Registry_$8003_storage", "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" } }, - "id": 9883, + "id": 10479, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "30388:7:24", + "memberLocation": "30916:7:24", "memberName": "success", "nodeType": "MemberAccess", - "referencedDeclaration": 7481, - "src": "30359:36:24", + "referencedDeclaration": 8002, + "src": "30887:36:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "30313:82:24", + "src": "30841:82:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -81239,33 +81520,33 @@ } ], "expression": { - "id": 9860, + "id": 10456, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7633, - "src": "30040:6:24", + "referencedDeclaration": 8154, + "src": "30568:6:24", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, - "id": 9861, + "id": 10457, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "30047:32:24", + "memberLocation": "30575:32:24", "memberName": "registerFastBridgeBtcTransaction", "nodeType": "MemberAccess", - "referencedDeclaration": 3615, - "src": "30040:39:24", + "referencedDeclaration": 4136, + "src": "30568:39:24", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$_t_uint256_$_t_bytes_memory_ptr_$_t_bytes32_$_t_bytes_memory_ptr_$_t_address_payable_$_t_bytes_memory_ptr_$_t_bool_$returns$_t_int256_$", "typeString": "function (bytes memory,uint256,bytes memory,bytes32,bytes memory,address payable,bytes memory,bool) external returns (int256)" } }, - "id": 9885, + "id": 10481, "isConstant": false, "isLValue": false, "isPure": false, @@ -81274,70 +81555,70 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "30040:365:24", + "src": "30568:365:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, - "functionReturnParameters": 9859, - "id": 9886, + "functionReturnParameters": 10455, + "id": 10482, "nodeType": "Return", - "src": "30021:384:24" + "src": "30549:384:24" } ] }, "documentation": { - "id": 9844, + "id": 10440, "nodeType": "StructuredDocumentation", - "src": "29357:416:24", + "src": "29885:416:24", "text": "@dev Registers a transaction with the bridge contract\n@param quote The quote of the service\n@param btcRawTransaction The peg-in transaction\n@param partialMerkleTree The merkle tree path that proves transaction inclusion\n@param height The block that contains the transaction\n@return The total peg-in amount received from the bridge contract or an error code" }, - "id": 9888, + "id": 10484, "implemented": true, "kind": "function", "modifiers": [], "name": "registerBridge", - "nameLocation": "29787:14:24", + "nameLocation": "30315:14:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 9856, + "id": 10452, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9847, + "id": 10443, "mutability": "mutable", "name": "quote", - "nameLocation": "29838:5:24", + "nameLocation": "30366:5:24", "nodeType": "VariableDeclaration", - "scope": 9888, - "src": "29811:32:24", + "scope": 10484, + "src": "30339:32:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote" }, "typeName": { - "id": 9846, + "id": 10442, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 9845, + "id": 10441, "name": "QuotesV2.PeginQuote", "nameLocations": [ - "29811:8:24", - "29820:10:24" + "30339:8:24", + "30348:10:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10599, - "src": "29811:19:24" + "referencedDeclaration": 11195, + "src": "30339:19:24" }, - "referencedDeclaration": 10599, - "src": "29811:19:24", + "referencedDeclaration": 11195, + "src": "30339:19:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_storage_ptr", "typeString": "struct QuotesV2.PeginQuote" } }, @@ -81345,13 +81626,13 @@ }, { "constant": false, - "id": 9849, + "id": 10445, "mutability": "mutable", "name": "btcRawTransaction", - "nameLocation": "29866:17:24", + "nameLocation": "30394:17:24", "nodeType": "VariableDeclaration", - "scope": 9888, - "src": "29853:30:24", + "scope": 10484, + "src": "30381:30:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -81359,10 +81640,10 @@ "typeString": "bytes" }, "typeName": { - "id": 9848, + "id": 10444, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "29853:5:24", + "src": "30381:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -81372,13 +81653,13 @@ }, { "constant": false, - "id": 9851, + "id": 10447, "mutability": "mutable", "name": "partialMerkleTree", - "nameLocation": "29906:17:24", + "nameLocation": "30434:17:24", "nodeType": "VariableDeclaration", - "scope": 9888, - "src": "29893:30:24", + "scope": 10484, + "src": "30421:30:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -81386,10 +81667,10 @@ "typeString": "bytes" }, "typeName": { - "id": 9850, + "id": 10446, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "29893:5:24", + "src": "30421:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -81399,13 +81680,13 @@ }, { "constant": false, - "id": 9853, + "id": 10449, "mutability": "mutable", "name": "height", - "nameLocation": "29941:6:24", + "nameLocation": "30469:6:24", "nodeType": "VariableDeclaration", - "scope": 9888, - "src": "29933:14:24", + "scope": 10484, + "src": "30461:14:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -81413,10 +81694,10 @@ "typeString": "uint256" }, "typeName": { - "id": 9852, + "id": 10448, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "29933:7:24", + "src": "30461:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -81426,13 +81707,13 @@ }, { "constant": false, - "id": 9855, + "id": 10451, "mutability": "mutable", "name": "derivationHash", - "nameLocation": "29965:14:24", + "nameLocation": "30493:14:24", "nodeType": "VariableDeclaration", - "scope": 9888, - "src": "29957:22:24", + "scope": 10484, + "src": "30485:22:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -81440,10 +81721,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 9854, + "id": 10450, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "29957:7:24", + "src": "30485:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -81452,21 +81733,21 @@ "visibility": "internal" } ], - "src": "29801:184:24" + "src": "30329:184:24" }, "returnParameters": { - "id": 9859, + "id": 10455, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9858, + "id": 10454, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 9888, - "src": "30003:6:24", + "scope": 10484, + "src": "30531:6:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -81474,10 +81755,10 @@ "typeString": "int256" }, "typeName": { - "id": 9857, + "id": 10453, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "30003:6:24", + "src": "30531:6:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -81486,19 +81767,19 @@ "visibility": "internal" } ], - "src": "30002:8:24" + "src": "30530:8:24" }, - "scope": 10196, - "src": "29778:634:24", + "scope": 10792, + "src": "30306:634:24", "stateMutability": "nonpayable", "virtual": false, "visibility": "private" }, { "body": { - "id": 10010, + "id": 10606, "nodeType": "Block", - "src": "31014:1464:24", + "src": "31542:1464:24", "statements": [ { "condition": { @@ -81506,7 +81787,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 9922, + "id": 10518, "isConstant": false, "isLValue": false, "isPure": false, @@ -81516,18 +81797,18 @@ "typeIdentifier": "t_int256", "typeString": "int256" }, - "id": 9905, + "id": 10501, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 9903, + "id": 10499, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9894, - "src": "31089:6:24", + "referencedDeclaration": 10490, + "src": "31617:6:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -81537,21 +81818,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 9904, + "id": 10500, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "31098:1:24", + "src": "31626:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "31089:10:24", + "src": "31617:10:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -81564,7 +81845,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9921, + "id": 10517, "isConstant": false, "isLValue": false, "isPure": false, @@ -81572,12 +81853,12 @@ "leftExpression": { "arguments": [ { - "id": 9908, + "id": 10504, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9894, - "src": "31111:6:24", + "referencedDeclaration": 10490, + "src": "31639:6:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -81591,26 +81872,26 @@ "typeString": "int256" } ], - "id": 9907, + "id": 10503, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "31103:7:24", + "src": "31631:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { - "id": 9906, + "id": 10502, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "31103:7:24", + "src": "31631:7:24", "typeDescriptions": {} } }, - "id": 9909, + "id": 10505, "isConstant": false, "isLValue": false, "isPure": false, @@ -81619,7 +81900,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "31103:15:24", + "src": "31631:15:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -81633,7 +81914,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9920, + "id": 10516, "isConstant": false, "isLValue": false, "isPure": false, @@ -81643,7 +81924,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9917, + "id": 10513, "isConstant": false, "isLValue": false, "isPure": false, @@ -81653,34 +81934,34 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9914, + "id": 10510, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9910, + "id": 10506, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9892, - "src": "31121:5:24", + "referencedDeclaration": 10488, + "src": "31649:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9911, + "id": 10507, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "31127:5:24", + "memberLocation": "31655:5:24", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10584, - "src": "31121:11:24", + "referencedDeclaration": 11180, + "src": "31649:11:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -81690,33 +81971,33 @@ "operator": "+", "rightExpression": { "expression": { - "id": 9912, + "id": 10508, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9892, - "src": "31135:5:24", + "referencedDeclaration": 10488, + "src": "31663:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9913, + "id": 10509, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "31141:7:24", + "memberLocation": "31669:7:24", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10572, - "src": "31135:13:24", + "referencedDeclaration": 11168, + "src": "31663:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "31121:27:24", + "src": "31649:27:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -81726,33 +82007,33 @@ "operator": "+", "rightExpression": { "expression": { - "id": 9915, + "id": 10511, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9892, - "src": "31151:5:24", + "referencedDeclaration": 10488, + "src": "31679:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9916, + "id": 10512, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "31157:16:24", + "memberLocation": "31685:16:24", "memberName": "productFeeAmount", "nodeType": "MemberAccess", - "referencedDeclaration": 10596, - "src": "31151:22:24", + "referencedDeclaration": 11192, + "src": "31679:22:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "31121:52:24", + "src": "31649:52:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -81762,97 +82043,97 @@ "operator": "+", "rightExpression": { "expression": { - "id": 9918, + "id": 10514, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9892, - "src": "31176:5:24", + "referencedDeclaration": 10488, + "src": "31704:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9919, + "id": 10515, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "31182:6:24", + "memberLocation": "31710:6:24", "memberName": "gasFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10598, - "src": "31176:12:24", + "referencedDeclaration": 11194, + "src": "31704:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "31121:67:24", + "src": "31649:67:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "31103:85:24", + "src": "31631:85:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "31089:99:24", + "src": "31617:99:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 9926, + "id": 10522, "nodeType": "IfStatement", - "src": "31085:142:24", + "src": "31613:142:24", "trueBody": { - "id": 9925, + "id": 10521, "nodeType": "Block", - "src": "31190:37:24", + "src": "31718:37:24", "statements": [ { "expression": { "hexValue": "66616c7365", - "id": 9923, + "id": 10519, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "31211:5:24", + "src": "31739:5:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, - "functionReturnParameters": 9902, - "id": 9924, + "functionReturnParameters": 10498, + "id": 10520, "nodeType": "Return", - "src": "31204:12:24" + "src": "31732:12:24" } ] } }, { "assignments": [ - 9928 + 10524 ], "declarations": [ { "constant": false, - "id": 9928, + "id": 10524, "mutability": "mutable", "name": "firstConfirmationHeader", - "nameLocation": "31250:23:24", + "nameLocation": "31778:23:24", "nodeType": "VariableDeclaration", - "scope": 10010, - "src": "31237:36:24", + "scope": 10606, + "src": "31765:36:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -81860,10 +82141,10 @@ "typeString": "bytes" }, "typeName": { - "id": 9927, + "id": 10523, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "31237:5:24", + "src": "31765:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -81872,16 +82153,16 @@ "visibility": "internal" } ], - "id": 9933, + "id": 10529, "initialValue": { "arguments": [ { - "id": 9931, + "id": 10527, "name": "height", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9898, - "src": "31332:6:24", + "referencedDeclaration": 10494, + "src": "31860:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -81896,33 +82177,33 @@ } ], "expression": { - "id": 9929, + "id": 10525, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7633, - "src": "31276:6:24", + "referencedDeclaration": 8154, + "src": "31804:6:24", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, - "id": 9930, + "id": 10526, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "31296:35:24", + "memberLocation": "31824:35:24", "memberName": "getBtcBlockchainBlockHeaderByHeight", "nodeType": "MemberAccess", - "referencedDeclaration": 3644, - "src": "31276:55:24", + "referencedDeclaration": 4165, + "src": "31804:55:24", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bytes_memory_ptr_$", "typeString": "function (uint256) view external returns (bytes memory)" } }, - "id": 9932, + "id": 10528, "isConstant": false, "isLValue": false, "isPure": false, @@ -81931,7 +82212,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "31276:63:24", + "src": "31804:63:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -81939,7 +82220,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "31237:102:24" + "src": "31765:102:24" }, { "expression": { @@ -81949,33 +82230,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9938, + "id": 10534, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9935, + "id": 10531, "name": "firstConfirmationHeader", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9928, - "src": "31357:23:24", + "referencedDeclaration": 10524, + "src": "31885:23:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 9936, + "id": 10532, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "31381:6:24", + "memberLocation": "31909:6:24", "memberName": "length", "nodeType": "MemberAccess", - "src": "31357:30:24", + "src": "31885:30:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -81985,21 +82266,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 9937, + "id": 10533, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "31390:1:24", + "src": "31918:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "31357:34:24", + "src": "31885:34:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -82007,14 +82288,14 @@ }, { "hexValue": "496e76616c696420626c6f636b20686569676874", - "id": 9939, + "id": 10535, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "31393:22:24", + "src": "31921:22:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_b13cbe420d932534b4c4c376e19a45f25e0ca05c6f1a458489ccb0574b26a6d9", "typeString": "literal_string \"Invalid block height\"" @@ -82033,7 +82314,7 @@ "typeString": "literal_string \"Invalid block height\"" } ], - "id": 9934, + "id": 10530, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -82041,13 +82322,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "31349:7:24", + "src": "31877:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9940, + "id": 10536, "isConstant": false, "isLValue": false, "isPure": false, @@ -82056,31 +82337,31 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "31349:67:24", + "src": "31877:67:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9941, + "id": 10537, "nodeType": "ExpressionStatement", - "src": "31349:67:24" + "src": "31877:67:24" }, { "assignments": [ - 9943 + 10539 ], "declarations": [ { "constant": false, - "id": 9943, + "id": 10539, "mutability": "mutable", "name": "firstConfirmationTimestamp", - "nameLocation": "31435:26:24", + "nameLocation": "31963:26:24", "nodeType": "VariableDeclaration", - "scope": 10010, - "src": "31427:34:24", + "scope": 10606, + "src": "31955:34:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -82088,10 +82369,10 @@ "typeString": "uint256" }, "typeName": { - "id": 9942, + "id": 10538, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "31427:7:24", + "src": "31955:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -82100,16 +82381,16 @@ "visibility": "internal" } ], - "id": 9948, + "id": 10544, "initialValue": { "arguments": [ { - "id": 9946, + "id": 10542, "name": "firstConfirmationHeader", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9928, - "src": "31507:23:24", + "referencedDeclaration": 10524, + "src": "32035:23:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -82124,33 +82405,33 @@ } ], "expression": { - "id": 9944, + "id": 10540, "name": "BtcUtils", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3228, - "src": "31464:8:24", + "referencedDeclaration": 3743, + "src": "31992:8:24", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3228_$", + "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", "typeString": "type(library BtcUtils)" } }, - "id": 9945, + "id": 10541, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "31473:20:24", + "memberLocation": "32001:20:24", "memberName": "getBtcBlockTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 2909, - "src": "31464:29:24", + "referencedDeclaration": 3266, + "src": "31992:29:24", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_uint256_$", "typeString": "function (bytes memory) pure returns (uint256)" } }, - "id": 9947, + "id": 10543, "isConstant": false, "isLValue": false, "isPure": false, @@ -82159,7 +82440,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "31464:76:24", + "src": "31992:76:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -82167,22 +82448,22 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "31427:113:24" + "src": "31955:113:24" }, { "assignments": [ - 9950 + 10546 ], "declarations": [ { "constant": false, - "id": 9950, + "id": 10546, "mutability": "mutable", "name": "timeLimit", - "nameLocation": "31685:9:24", + "nameLocation": "32213:9:24", "nodeType": "VariableDeclaration", - "scope": 10010, - "src": "31680:14:24", + "scope": 10606, + "src": "32208:14:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -82190,10 +82471,10 @@ "typeString": "uint256" }, "typeName": { - "id": 9949, + "id": 10545, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "31680:4:24", + "src": "32208:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -82202,40 +82483,40 @@ "visibility": "internal" } ], - "id": 9956, + "id": 10552, "initialValue": { "commonType": { "typeIdentifier": "t_uint32", "typeString": "uint32" }, - "id": 9955, + "id": 10551, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9951, + "id": 10547, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9892, - "src": "31697:5:24", + "referencedDeclaration": 10488, + "src": "32225:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9952, + "id": 10548, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "31703:18:24", + "memberLocation": "32231:18:24", "memberName": "agreementTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 10586, - "src": "31697:24:24", + "referencedDeclaration": 11182, + "src": "32225:24:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" @@ -82245,40 +82526,40 @@ "operator": "+", "rightExpression": { "expression": { - "id": 9953, + "id": 10549, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9892, - "src": "31724:5:24", + "referencedDeclaration": 10488, + "src": "32252:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9954, + "id": 10550, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "31730:14:24", + "memberLocation": "32258:14:24", "memberName": "timeForDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 10588, - "src": "31724:20:24", + "referencedDeclaration": 11184, + "src": "32252:20:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "31697:47:24", + "src": "32225:47:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, "nodeType": "VariableDeclarationStatement", - "src": "31680:64:24" + "src": "32208:64:24" }, { "condition": { @@ -82286,18 +82567,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9959, + "id": 10555, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 9957, + "id": 10553, "name": "firstConfirmationTimestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9943, - "src": "31758:26:24", + "referencedDeclaration": 10539, + "src": "32286:26:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -82306,52 +82587,52 @@ "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { - "id": 9958, + "id": 10554, "name": "timeLimit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9950, - "src": "31787:9:24", + "referencedDeclaration": 10546, + "src": "32315:9:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "31758:38:24", + "src": "32286:38:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 9963, + "id": 10559, "nodeType": "IfStatement", - "src": "31754:81:24", + "src": "32282:81:24", "trueBody": { - "id": 9962, + "id": 10558, "nodeType": "Block", - "src": "31798:37:24", + "src": "32326:37:24", "statements": [ { "expression": { "hexValue": "66616c7365", - "id": 9960, + "id": 10556, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "31819:5:24", + "src": "32347:5:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, - "functionReturnParameters": 9902, - "id": 9961, + "functionReturnParameters": 10498, + "id": 10557, "nodeType": "Return", - "src": "31812:12:24" + "src": "32340:12:24" } ] } @@ -82362,18 +82643,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9966, + "id": 10562, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 9964, + "id": 10560, "name": "callTimestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9896, - "src": "31890:13:24", + "referencedDeclaration": 10492, + "src": "32418:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -82383,73 +82664,73 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 9965, + "id": 10561, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "31907:1:24", + "src": "32435:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "31890:18:24", + "src": "32418:18:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 9970, + "id": 10566, "nodeType": "IfStatement", - "src": "31886:60:24", + "src": "32414:60:24", "trueBody": { - "id": 9969, + "id": 10565, "nodeType": "Block", - "src": "31910:36:24", + "src": "32438:36:24", "statements": [ { "expression": { "hexValue": "74727565", - "id": 9967, + "id": 10563, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "31931:4:24", + "src": "32459:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 9902, - "id": 9968, + "functionReturnParameters": 10498, + "id": 10564, "nodeType": "Return", - "src": "31924:11:24" + "src": "32452:11:24" } ] } }, { "assignments": [ - 9972 + 10568 ], "declarations": [ { "constant": false, - "id": 9972, + "id": 10568, "mutability": "mutable", "name": "nConfirmationsHeader", - "nameLocation": "31969:20:24", + "nameLocation": "32497:20:24", "nodeType": "VariableDeclaration", - "scope": 10010, - "src": "31956:33:24", + "scope": 10606, + "src": "32484:33:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -82457,10 +82738,10 @@ "typeString": "bytes" }, "typeName": { - "id": 9971, + "id": 10567, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "31956:5:24", + "src": "32484:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -82469,7 +82750,7 @@ "visibility": "internal" } ], - "id": 9982, + "id": 10578, "initialValue": { "arguments": [ { @@ -82477,7 +82758,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9980, + "id": 10576, "isConstant": false, "isLValue": false, "isPure": false, @@ -82487,18 +82768,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9978, + "id": 10574, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 9975, + "id": 10571, "name": "height", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9898, - "src": "32061:6:24", + "referencedDeclaration": 10494, + "src": "32589:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -82508,33 +82789,33 @@ "operator": "+", "rightExpression": { "expression": { - "id": 9976, + "id": 10572, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9892, - "src": "32070:5:24", + "referencedDeclaration": 10488, + "src": "32598:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 9977, + "id": 10573, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "32076:20:24", + "memberLocation": "32604:20:24", "memberName": "depositConfirmations", "nodeType": "MemberAccess", - "referencedDeclaration": 10592, - "src": "32070:26:24", + "referencedDeclaration": 11188, + "src": "32598:26:24", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, - "src": "32061:35:24", + "src": "32589:35:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -82544,21 +82825,21 @@ "operator": "-", "rightExpression": { "hexValue": "31", - "id": 9979, + "id": 10575, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "32099:1:24", + "src": "32627:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "32061:39:24", + "src": "32589:39:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -82573,33 +82854,33 @@ } ], "expression": { - "id": 9973, + "id": 10569, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7633, - "src": "31992:6:24", + "referencedDeclaration": 8154, + "src": "32520:6:24", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, - "id": 9974, + "id": 10570, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "32012:35:24", + "memberLocation": "32540:35:24", "memberName": "getBtcBlockchainBlockHeaderByHeight", "nodeType": "MemberAccess", - "referencedDeclaration": 3644, - "src": "31992:55:24", + "referencedDeclaration": 4165, + "src": "32520:55:24", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bytes_memory_ptr_$", "typeString": "function (uint256) view external returns (bytes memory)" } }, - "id": 9981, + "id": 10577, "isConstant": false, "isLValue": false, "isPure": false, @@ -82608,7 +82889,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "31992:118:24", + "src": "32520:118:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -82616,7 +82897,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "31956:154:24" + "src": "32484:154:24" }, { "expression": { @@ -82626,33 +82907,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 9987, + "id": 10583, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 9984, + "id": 10580, "name": "nConfirmationsHeader", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9972, - "src": "32128:20:24", + "referencedDeclaration": 10568, + "src": "32656:20:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 9985, + "id": 10581, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "32149:6:24", + "memberLocation": "32677:6:24", "memberName": "length", "nodeType": "MemberAccess", - "src": "32128:27:24", + "src": "32656:27:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -82662,21 +82943,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 9986, + "id": 10582, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "32158:1:24", + "src": "32686:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "32128:31:24", + "src": "32656:31:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -82684,14 +82965,14 @@ }, { "hexValue": "4c4243303538", - "id": 9988, + "id": 10584, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "32161:8:24", + "src": "32689:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_bac19bb4c4dce4ec87196bdccebfa1c4310f60332f1259cdc0bb93303ee1c2a0", "typeString": "literal_string \"LBC058\"" @@ -82710,7 +82991,7 @@ "typeString": "literal_string \"LBC058\"" } ], - "id": 9983, + "id": 10579, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -82718,13 +82999,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "32120:7:24", + "src": "32648:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 9989, + "id": 10585, "isConstant": false, "isLValue": false, "isPure": false, @@ -82733,31 +83014,31 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "32120:50:24", + "src": "32648:50:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 9990, + "id": 10586, "nodeType": "ExpressionStatement", - "src": "32120:50:24" + "src": "32648:50:24" }, { "assignments": [ - 9992 + 10588 ], "declarations": [ { "constant": false, - "id": 9992, + "id": 10588, "mutability": "mutable", "name": "nConfirmationsTimestamp", - "nameLocation": "32189:23:24", + "nameLocation": "32717:23:24", "nodeType": "VariableDeclaration", - "scope": 10010, - "src": "32181:31:24", + "scope": 10606, + "src": "32709:31:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -82765,10 +83046,10 @@ "typeString": "uint256" }, "typeName": { - "id": 9991, + "id": 10587, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "32181:7:24", + "src": "32709:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -82777,16 +83058,16 @@ "visibility": "internal" } ], - "id": 9997, + "id": 10593, "initialValue": { "arguments": [ { - "id": 9995, + "id": 10591, "name": "nConfirmationsHeader", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9972, - "src": "32258:20:24", + "referencedDeclaration": 10568, + "src": "32786:20:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -82801,33 +83082,33 @@ } ], "expression": { - "id": 9993, + "id": 10589, "name": "BtcUtils", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3228, - "src": "32215:8:24", + "referencedDeclaration": 3743, + "src": "32743:8:24", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3228_$", + "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", "typeString": "type(library BtcUtils)" } }, - "id": 9994, + "id": 10590, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "32224:20:24", + "memberLocation": "32752:20:24", "memberName": "getBtcBlockTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 2909, - "src": "32215:29:24", + "referencedDeclaration": 3266, + "src": "32743:29:24", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_uint256_$", "typeString": "function (bytes memory) pure returns (uint256)" } }, - "id": 9996, + "id": 10592, "isConstant": false, "isLValue": false, "isPure": false, @@ -82836,7 +83117,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "32215:73:24", + "src": "32743:73:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -82844,7 +83125,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "32181:107:24" + "src": "32709:107:24" }, { "condition": { @@ -82852,18 +83133,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10003, + "id": 10599, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 9998, + "id": 10594, "name": "callTimestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9896, - "src": "32356:13:24", + "referencedDeclaration": 10492, + "src": "32884:13:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -82876,18 +83157,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10002, + "id": 10598, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 9999, + "id": 10595, "name": "nConfirmationsTimestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9992, - "src": "32372:23:24", + "referencedDeclaration": 10588, + "src": "32900:23:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -82897,73 +83178,73 @@ "operator": "+", "rightExpression": { "expression": { - "id": 10000, + "id": 10596, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 9892, - "src": "32398:5:24", + "referencedDeclaration": 10488, + "src": "32926:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10001, + "id": 10597, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "32404:8:24", + "memberLocation": "32932:8:24", "memberName": "callTime", "nodeType": "MemberAccess", - "referencedDeclaration": 10590, - "src": "32398:14:24", + "referencedDeclaration": 11186, + "src": "32926:14:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "32372:40:24", + "src": "32900:40:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "32356:56:24", + "src": "32884:56:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 10007, + "id": 10603, "nodeType": "IfStatement", - "src": "32352:98:24", + "src": "32880:98:24", "trueBody": { - "id": 10006, + "id": 10602, "nodeType": "Block", - "src": "32414:36:24", + "src": "32942:36:24", "statements": [ { "expression": { "hexValue": "74727565", - "id": 10004, + "id": 10600, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "32435:4:24", + "src": "32963:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 9902, - "id": 10005, + "functionReturnParameters": 10498, + "id": 10601, "nodeType": "Return", - "src": "32428:11:24" + "src": "32956:11:24" } ] } @@ -82971,77 +83252,77 @@ { "expression": { "hexValue": "66616c7365", - "id": 10008, + "id": 10604, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "32466:5:24", + "src": "32994:5:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, - "functionReturnParameters": 9902, - "id": 10009, + "functionReturnParameters": 10498, + "id": 10605, "nodeType": "Return", - "src": "32459:12:24" + "src": "32987:12:24" } ] }, "documentation": { - "id": 9889, + "id": 10485, "nodeType": "StructuredDocumentation", - "src": "30418:411:24", + "src": "30946:411:24", "text": "@dev Checks if a liquidity provider should be penalized\n@param quote The quote of the service\n@param amount The transferred amount or an error code\n@param callTimestamp The time that the liquidity provider called callForUser\n@param height The block height where the peg-in transaction is included\n@return Boolean indicating whether the penalty applies" }, - "id": 10011, + "id": 10607, "implemented": true, "kind": "function", "modifiers": [], "name": "shouldPenalizeLP", - "nameLocation": "30843:16:24", + "nameLocation": "31371:16:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 9899, + "id": 10495, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9892, + "id": 10488, "mutability": "mutable", "name": "quote", - "nameLocation": "30896:5:24", + "nameLocation": "31424:5:24", "nodeType": "VariableDeclaration", - "scope": 10011, - "src": "30869:32:24", + "scope": 10607, + "src": "31397:32:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote" }, "typeName": { - "id": 9891, + "id": 10487, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 9890, + "id": 10486, "name": "QuotesV2.PeginQuote", "nameLocations": [ - "30869:8:24", - "30878:10:24" + "31397:8:24", + "31406:10:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10599, - "src": "30869:19:24" + "referencedDeclaration": 11195, + "src": "31397:19:24" }, - "referencedDeclaration": 10599, - "src": "30869:19:24", + "referencedDeclaration": 11195, + "src": "31397:19:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_storage_ptr", "typeString": "struct QuotesV2.PeginQuote" } }, @@ -83049,13 +83330,13 @@ }, { "constant": false, - "id": 9894, + "id": 10490, "mutability": "mutable", "name": "amount", - "nameLocation": "30918:6:24", + "nameLocation": "31446:6:24", "nodeType": "VariableDeclaration", - "scope": 10011, - "src": "30911:13:24", + "scope": 10607, + "src": "31439:13:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -83063,10 +83344,10 @@ "typeString": "int256" }, "typeName": { - "id": 9893, + "id": 10489, "name": "int256", "nodeType": "ElementaryTypeName", - "src": "30911:6:24", + "src": "31439:6:24", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" @@ -83076,13 +83357,13 @@ }, { "constant": false, - "id": 9896, + "id": 10492, "mutability": "mutable", "name": "callTimestamp", - "nameLocation": "30942:13:24", + "nameLocation": "31470:13:24", "nodeType": "VariableDeclaration", - "scope": 10011, - "src": "30934:21:24", + "scope": 10607, + "src": "31462:21:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -83090,10 +83371,10 @@ "typeString": "uint256" }, "typeName": { - "id": 9895, + "id": 10491, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "30934:7:24", + "src": "31462:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -83103,13 +83384,13 @@ }, { "constant": false, - "id": 9898, + "id": 10494, "mutability": "mutable", "name": "height", - "nameLocation": "30973:6:24", + "nameLocation": "31501:6:24", "nodeType": "VariableDeclaration", - "scope": 10011, - "src": "30965:14:24", + "scope": 10607, + "src": "31493:14:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -83117,10 +83398,10 @@ "typeString": "uint256" }, "typeName": { - "id": 9897, + "id": 10493, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "30965:7:24", + "src": "31493:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -83129,21 +83410,21 @@ "visibility": "internal" } ], - "src": "30859:126:24" + "src": "31387:126:24" }, "returnParameters": { - "id": 9902, + "id": 10498, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 9901, + "id": 10497, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10011, - "src": "31008:4:24", + "scope": 10607, + "src": "31536:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -83151,10 +83432,10 @@ "typeString": "bool" }, "typeName": { - "id": 9900, + "id": 10496, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "31008:4:24", + "src": "31536:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -83163,34 +83444,34 @@ "visibility": "internal" } ], - "src": "31007:6:24" + "src": "31535:6:24" }, - "scope": 10196, - "src": "30834:1644:24", + "scope": 10792, + "src": "31362:1644:24", "stateMutability": "view", "virtual": false, "visibility": "private" }, { "body": { - "id": 10077, + "id": 10673, "nodeType": "Block", - "src": "32647:697:24", + "src": "33175:697:24", "statements": [ { "assignments": [ - 10024 + 10620 ], "declarations": [ { "constant": false, - "id": 10024, + "id": 10620, "mutability": "mutable", "name": "firstConfirmationHeader", - "nameLocation": "32670:23:24", + "nameLocation": "33198:23:24", "nodeType": "VariableDeclaration", - "scope": 10077, - "src": "32657:36:24", + "scope": 10673, + "src": "33185:36:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -83198,10 +83479,10 @@ "typeString": "bytes" }, "typeName": { - "id": 10023, + "id": 10619, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "32657:5:24", + "src": "33185:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -83210,16 +83491,16 @@ "visibility": "internal" } ], - "id": 10029, + "id": 10625, "initialValue": { "arguments": [ { - "id": 10027, + "id": 10623, "name": "blockHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10018, - "src": "32737:9:24", + "referencedDeclaration": 10614, + "src": "33265:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -83234,33 +83515,33 @@ } ], "expression": { - "id": 10025, + "id": 10621, "name": "bridge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7633, - "src": "32696:6:24", + "referencedDeclaration": 8154, + "src": "33224:6:24", "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$3652", + "typeIdentifier": "t_contract$_Bridge_$4173", "typeString": "contract Bridge" } }, - "id": 10026, + "id": 10622, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "32703:33:24", + "memberLocation": "33231:33:24", "memberName": "getBtcBlockchainBlockHeaderByHash", "nodeType": "MemberAccess", - "referencedDeclaration": 3637, - "src": "32696:40:24", + "referencedDeclaration": 4158, + "src": "33224:40:24", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_bytes_memory_ptr_$", "typeString": "function (bytes32) view external returns (bytes memory)" } }, - "id": 10028, + "id": 10624, "isConstant": false, "isLValue": false, "isPure": false, @@ -83269,7 +83550,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "32696:51:24", + "src": "33224:51:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -83277,7 +83558,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "32657:90:24" + "src": "33185:90:24" }, { "expression": { @@ -83287,33 +83568,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10034, + "id": 10630, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 10031, + "id": 10627, "name": "firstConfirmationHeader", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10024, - "src": "32765:23:24", + "referencedDeclaration": 10620, + "src": "33293:23:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 10032, + "id": 10628, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "32789:6:24", + "memberLocation": "33317:6:24", "memberName": "length", "nodeType": "MemberAccess", - "src": "32765:30:24", + "src": "33293:30:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -83323,21 +83604,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 10033, + "id": 10629, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "32798:1:24", + "src": "33326:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "32765:34:24", + "src": "33293:34:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -83345,14 +83626,14 @@ }, { "hexValue": "4c4243303539", - "id": 10035, + "id": 10631, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "32801:8:24", + "src": "33329:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_319f398ccb7cc8c2c2304e07f301f618437c863aa2ff561ced1eaa40fcd3df63", "typeString": "literal_string \"LBC059\"" @@ -83371,7 +83652,7 @@ "typeString": "literal_string \"LBC059\"" } ], - "id": 10030, + "id": 10626, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -83379,13 +83660,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "32757:7:24", + "src": "33285:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 10036, + "id": 10632, "isConstant": false, "isLValue": false, "isPure": false, @@ -83394,31 +83675,31 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "32757:53:24", + "src": "33285:53:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 10037, + "id": 10633, "nodeType": "ExpressionStatement", - "src": "32757:53:24" + "src": "33285:53:24" }, { "assignments": [ - 10039 + 10635 ], "declarations": [ { "constant": false, - "id": 10039, + "id": 10635, "mutability": "mutable", "name": "firstConfirmationTimestamp", - "nameLocation": "32829:26:24", + "nameLocation": "33357:26:24", "nodeType": "VariableDeclaration", - "scope": 10077, - "src": "32821:34:24", + "scope": 10673, + "src": "33349:34:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -83426,10 +83707,10 @@ "typeString": "uint256" }, "typeName": { - "id": 10038, + "id": 10634, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "32821:7:24", + "src": "33349:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -83438,16 +83719,16 @@ "visibility": "internal" } ], - "id": 10044, + "id": 10640, "initialValue": { "arguments": [ { - "id": 10042, + "id": 10638, "name": "firstConfirmationHeader", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10024, - "src": "32888:23:24", + "referencedDeclaration": 10620, + "src": "33416:23:24", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -83462,33 +83743,33 @@ } ], "expression": { - "id": 10040, + "id": 10636, "name": "BtcUtils", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3228, - "src": "32858:8:24", + "referencedDeclaration": 3743, + "src": "33386:8:24", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3228_$", + "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", "typeString": "type(library BtcUtils)" } }, - "id": 10041, + "id": 10637, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "32867:20:24", + "memberLocation": "33395:20:24", "memberName": "getBtcBlockTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 2909, - "src": "32858:29:24", + "referencedDeclaration": 3266, + "src": "33386:29:24", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_uint256_$", "typeString": "function (bytes memory) pure returns (uint256)" } }, - "id": 10043, + "id": 10639, "isConstant": false, "isLValue": false, "isPure": false, @@ -83497,7 +83778,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "32858:54:24", + "src": "33386:54:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -83505,7 +83786,7 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "32821:91:24" + "src": "33349:91:24" }, { "condition": { @@ -83513,18 +83794,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10055, + "id": 10651, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 10045, + "id": 10641, "name": "firstConfirmationTimestamp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10039, - "src": "32984:26:24", + "referencedDeclaration": 10635, + "src": "33512:26:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -83537,7 +83818,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10054, + "id": 10650, "isConstant": false, "isLValue": false, "isPure": false, @@ -83547,7 +83828,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10052, + "id": 10648, "isConstant": false, "isLValue": false, "isPure": false, @@ -83555,25 +83836,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 10046, + "id": 10642, "name": "pegoutRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7689, - "src": "33013:14:24", + "referencedDeclaration": 8210, + "src": "33541:14:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$7487_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8008_storage_$", "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord storage ref)" } }, - "id": 10048, + "id": 10644, "indexExpression": { - "id": 10047, + "id": 10643, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10016, - "src": "33028:9:24", + "referencedDeclaration": 10612, + "src": "33556:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -83584,22 +83865,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "33013:25:24", + "src": "33541:25:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$7487_storage", + "typeIdentifier": "t_struct$_PegoutRecord_$8008_storage", "typeString": "struct LiquidityBridgeContractV2.PegoutRecord storage ref" } }, - "id": 10049, + "id": 10645, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "33039:16:24", + "memberLocation": "33567:16:24", "memberName": "depositTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 7484, - "src": "33013:42:24", + "referencedDeclaration": 8005, + "src": "33541:42:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -83609,33 +83890,33 @@ "operator": "+", "rightExpression": { "expression": { - "id": 10050, + "id": 10646, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10014, - "src": "33066:5:24", + "referencedDeclaration": 10610, + "src": "33594:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10051, + "id": 10647, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "33072:12:24", + "memberLocation": "33600:12:24", "memberName": "transferTime", "nodeType": "MemberAccess", - "referencedDeclaration": 10629, - "src": "33066:18:24", + "referencedDeclaration": 11225, + "src": "33594:18:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "33013:71:24", + "src": "33541:71:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -83644,58 +83925,58 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 10053, + "id": 10649, "name": "btcBlockTime", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7673, - "src": "33087:12:24", + "referencedDeclaration": 8194, + "src": "33615:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "33013:86:24", + "src": "33541:86:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "32984:115:24", + "src": "33512:115:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 10059, + "id": 10655, "nodeType": "IfStatement", - "src": "32980:157:24", + "src": "33508:157:24", "trueBody": { - "id": 10058, + "id": 10654, "nodeType": "Block", - "src": "33101:36:24", + "src": "33629:36:24", "statements": [ { "expression": { "hexValue": "74727565", - "id": 10056, + "id": 10652, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "33122:4:24", + "src": "33650:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 10022, - "id": 10057, + "functionReturnParameters": 10618, + "id": 10653, "nodeType": "Return", - "src": "33115:11:24" + "src": "33643:11:24" } ] } @@ -83706,7 +83987,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 10070, + "id": 10666, "isConstant": false, "isLValue": false, "isPure": false, @@ -83716,33 +83997,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10064, + "id": 10660, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 10060, + "id": 10656, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967292, - "src": "33207:5:24", + "src": "33735:5:24", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 10061, + "id": 10657, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "33213:9:24", + "memberLocation": "33741:9:24", "memberName": "timestamp", "nodeType": "MemberAccess", - "src": "33207:15:24", + "src": "33735:15:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -83752,33 +84033,33 @@ "operator": ">", "rightExpression": { "expression": { - "id": 10062, + "id": 10658, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10014, - "src": "33225:5:24", + "referencedDeclaration": 10610, + "src": "33753:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10063, + "id": 10659, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "33231:10:24", + "memberLocation": "33759:10:24", "memberName": "expireDate", "nodeType": "MemberAccess", - "referencedDeclaration": 10631, - "src": "33225:16:24", + "referencedDeclaration": 11227, + "src": "33753:16:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "33207:34:24", + "src": "33735:34:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -83791,33 +84072,33 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10069, + "id": 10665, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 10065, + "id": 10661, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967292, - "src": "33245:5:24", + "src": "33773:5:24", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 10066, + "id": 10662, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "33251:6:24", + "memberLocation": "33779:6:24", "memberName": "number", "nodeType": "MemberAccess", - "src": "33245:12:24", + "src": "33773:12:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -83827,73 +84108,73 @@ "operator": ">", "rightExpression": { "expression": { - "id": 10067, + "id": 10663, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10014, - "src": "33260:5:24", + "referencedDeclaration": 10610, + "src": "33788:5:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10068, + "id": 10664, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "33266:11:24", + "memberLocation": "33794:11:24", "memberName": "expireBlock", "nodeType": "MemberAccess", - "referencedDeclaration": 10633, - "src": "33260:17:24", + "referencedDeclaration": 11229, + "src": "33788:17:24", "typeDescriptions": { "typeIdentifier": "t_uint32", "typeString": "uint32" } }, - "src": "33245:32:24", + "src": "33773:32:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "33207:70:24", + "src": "33735:70:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 10074, + "id": 10670, "nodeType": "IfStatement", - "src": "33203:112:24", + "src": "33731:112:24", "trueBody": { - "id": 10073, + "id": 10669, "nodeType": "Block", - "src": "33279:36:24", + "src": "33807:36:24", "statements": [ { "expression": { "hexValue": "74727565", - "id": 10071, + "id": 10667, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "33300:4:24", + "src": "33828:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 10022, - "id": 10072, + "functionReturnParameters": 10618, + "id": 10668, "nodeType": "Return", - "src": "33293:11:24" + "src": "33821:11:24" } ] } @@ -83901,71 +84182,71 @@ { "expression": { "hexValue": "66616c7365", - "id": 10075, + "id": 10671, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "33332:5:24", + "src": "33860:5:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, - "functionReturnParameters": 10022, - "id": 10076, + "functionReturnParameters": 10618, + "id": 10672, "nodeType": "Return", - "src": "33325:12:24" + "src": "33853:12:24" } ] }, - "id": 10078, + "id": 10674, "implemented": true, "kind": "function", "modifiers": [], "name": "shouldPenalizePegOutLP", - "nameLocation": "32493:22:24", + "nameLocation": "33021:22:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 10019, + "id": 10615, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10014, + "id": 10610, "mutability": "mutable", "name": "quote", - "nameLocation": "32553:5:24", + "nameLocation": "33081:5:24", "nodeType": "VariableDeclaration", - "scope": 10078, - "src": "32525:33:24", + "scope": 10674, + "src": "33053:33:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote" }, "typeName": { - "id": 10013, + "id": 10609, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10012, + "id": 10608, "name": "QuotesV2.PegOutQuote", "nameLocations": [ - "32525:8:24", - "32534:11:24" + "33053:8:24", + "33062:11:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10638, - "src": "32525:20:24" + "referencedDeclaration": 11234, + "src": "33053:20:24" }, - "referencedDeclaration": 10638, - "src": "32525:20:24", + "referencedDeclaration": 11234, + "src": "33053:20:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote" } }, @@ -83973,13 +84254,13 @@ }, { "constant": false, - "id": 10016, + "id": 10612, "mutability": "mutable", "name": "quoteHash", - "nameLocation": "32576:9:24", + "nameLocation": "33104:9:24", "nodeType": "VariableDeclaration", - "scope": 10078, - "src": "32568:17:24", + "scope": 10674, + "src": "33096:17:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -83987,10 +84268,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 10015, + "id": 10611, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "32568:7:24", + "src": "33096:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -84000,13 +84281,13 @@ }, { "constant": false, - "id": 10018, + "id": 10614, "mutability": "mutable", "name": "blockHash", - "nameLocation": "32603:9:24", + "nameLocation": "33131:9:24", "nodeType": "VariableDeclaration", - "scope": 10078, - "src": "32595:17:24", + "scope": 10674, + "src": "33123:17:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -84014,10 +84295,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 10017, + "id": 10613, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "32595:7:24", + "src": "33123:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -84026,21 +84307,21 @@ "visibility": "internal" } ], - "src": "32515:103:24" + "src": "33043:103:24" }, "returnParameters": { - "id": 10022, + "id": 10618, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10021, + "id": 10617, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10078, - "src": "32641:4:24", + "scope": 10674, + "src": "33169:4:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -84048,10 +84329,10 @@ "typeString": "bool" }, "typeName": { - "id": 10020, + "id": 10616, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "32641:4:24", + "src": "33169:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -84060,19 +84341,19 @@ "visibility": "internal" } ], - "src": "32640:6:24" + "src": "33168:6:24" }, - "scope": 10196, - "src": "32484:860:24", + "scope": 10792, + "src": "33012:860:24", "stateMutability": "view", "virtual": false, "visibility": "private" }, { "body": { - "id": 10112, + "id": 10708, "nodeType": "Block", - "src": "33417:224:24", + "src": "33945:224:24", "statements": [ { "condition": { @@ -84080,18 +84361,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10087, + "id": 10683, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 10085, + "id": 10681, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10080, - "src": "33431:6:24", + "referencedDeclaration": 10676, + "src": "33959:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -84101,49 +84382,49 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 10086, + "id": 10682, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "33440:1:24", + "src": "33968:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "33431:10:24", + "src": "33959:10:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 10111, + "id": 10707, "nodeType": "IfStatement", - "src": "33427:208:24", + "src": "33955:208:24", "trueBody": { - "id": 10110, + "id": 10706, "nodeType": "Block", - "src": "33443:192:24", + "src": "33971:192:24", "statements": [ { "assignments": [ - 10089, + 10685, null ], "declarations": [ { "constant": false, - "id": 10089, + "id": 10685, "mutability": "mutable", "name": "daoSuccess", - "nameLocation": "33463:10:24", + "nameLocation": "33991:10:24", "nodeType": "VariableDeclaration", - "scope": 10110, - "src": "33458:15:24", + "scope": 10706, + "src": "33986:15:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -84151,10 +84432,10 @@ "typeString": "bool" }, "typeName": { - "id": 10088, + "id": 10684, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "33458:4:24", + "src": "33986:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -84164,19 +84445,19 @@ }, null ], - "id": 10099, + "id": 10695, "initialValue": { "arguments": [ { "hexValue": "", - "id": 10097, + "id": 10693, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "33530:2:24", + "src": "34058:2:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", "typeString": "literal_string \"\"" @@ -84201,12 +84482,12 @@ "expression": { "arguments": [ { - "id": 10092, + "id": 10688, "name": "daoFeeCollectorAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7693, - "src": "33486:22:24", + "referencedDeclaration": 8214, + "src": "34014:22:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -84220,27 +84501,27 @@ "typeString": "address" } ], - "id": 10091, + "id": 10687, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "33478:8:24", + "src": "34006:8:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_payable_$", "typeString": "type(address payable)" }, "typeName": { - "id": 10090, + "id": 10686, "name": "address", "nodeType": "ElementaryTypeName", - "src": "33478:8:24", + "src": "34006:8:24", "stateMutability": "payable", "typeDescriptions": {} } }, - "id": 10093, + "id": 10689, "isConstant": false, "isLValue": false, "isPure": false, @@ -84249,28 +84530,28 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "33478:31:24", + "src": "34006:31:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "id": 10094, + "id": 10690, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "33510:4:24", + "memberLocation": "34038:4:24", "memberName": "call", "nodeType": "MemberAccess", - "src": "33478:36:24", + "src": "34006:36:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 10096, + "id": 10692, "isConstant": false, "isLValue": false, "isPure": false, @@ -84281,25 +84562,25 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 10095, + "id": 10691, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10080, - "src": "33522:6:24", + "referencedDeclaration": 10676, + "src": "34050:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "src": "33478:51:24", + "src": "34006:51:24", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 10098, + "id": 10694, "isConstant": false, "isLValue": false, "isPure": false, @@ -84308,7 +84589,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "33478:55:24", + "src": "34006:55:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", @@ -84316,18 +84597,18 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "33457:76:24" + "src": "33985:76:24" }, { "expression": { "arguments": [ { - "id": 10101, + "id": 10697, "name": "daoSuccess", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10089, - "src": "33555:10:24", + "referencedDeclaration": 10685, + "src": "34083:10:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -84335,14 +84616,14 @@ }, { "hexValue": "4c4243303734", - "id": 10102, + "id": 10698, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "33567:8:24", + "src": "34095:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e9fc4e098febe7043f1662405d88fa2495f2ac8d8f35918e247815b713cfd00a", "typeString": "literal_string \"LBC074\"" @@ -84361,7 +84642,7 @@ "typeString": "literal_string \"LBC074\"" } ], - "id": 10100, + "id": 10696, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -84369,13 +84650,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "33547:7:24", + "src": "34075:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 10103, + "id": 10699, "isConstant": false, "isLValue": false, "isPure": false, @@ -84384,39 +84665,39 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "33547:29:24", + "src": "34075:29:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 10104, + "id": 10700, "nodeType": "ExpressionStatement", - "src": "33547:29:24" + "src": "34075:29:24" }, { "eventCall": { "arguments": [ { - "id": 10106, + "id": 10702, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10082, - "src": "33606:9:24", + "referencedDeclaration": 10678, + "src": "34134:9:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 10107, + "id": 10703, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10080, - "src": "33617:6:24", + "referencedDeclaration": 10676, + "src": "34145:6:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -84434,18 +84715,18 @@ "typeString": "uint256" } ], - "id": 10105, + "id": 10701, "name": "DaoFeeSent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7622, - "src": "33595:10:24", + "referencedDeclaration": 8143, + "src": "34123:10:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$returns$__$", "typeString": "function (bytes32,uint256)" } }, - "id": 10108, + "id": 10704, "isConstant": false, "isLValue": false, "isPure": false, @@ -84454,42 +84735,42 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "33595:29:24", + "src": "34123:29:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 10109, + "id": 10705, "nodeType": "EmitStatement", - "src": "33590:34:24" + "src": "34118:34:24" } ] } } ] }, - "id": 10113, + "id": 10709, "implemented": true, "kind": "function", "modifiers": [], "name": "payToFeeCollector", - "nameLocation": "33359:17:24", + "nameLocation": "33887:17:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 10083, + "id": 10679, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10080, + "id": 10676, "mutability": "mutable", "name": "amount", - "nameLocation": "33382:6:24", + "nameLocation": "33910:6:24", "nodeType": "VariableDeclaration", - "scope": 10113, - "src": "33377:11:24", + "scope": 10709, + "src": "33905:11:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -84497,10 +84778,10 @@ "typeString": "uint256" }, "typeName": { - "id": 10079, + "id": 10675, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "33377:4:24", + "src": "33905:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -84510,13 +84791,13 @@ }, { "constant": false, - "id": 10082, + "id": 10678, "mutability": "mutable", "name": "quoteHash", - "nameLocation": "33398:9:24", + "nameLocation": "33926:9:24", "nodeType": "VariableDeclaration", - "scope": 10113, - "src": "33390:17:24", + "scope": 10709, + "src": "33918:17:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -84524,10 +84805,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 10081, + "id": 10677, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "33390:7:24", + "src": "33918:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -84536,25 +84817,25 @@ "visibility": "internal" } ], - "src": "33376:32:24" + "src": "33904:32:24" }, "returnParameters": { - "id": 10084, + "id": 10680, "nodeType": "ParameterList", "parameters": [], - "src": "33417:0:24" + "src": "33945:0:24" }, - "scope": 10196, - "src": "33350:291:24", + "scope": 10792, + "src": "33878:291:24", "stateMutability": "nonpayable", "virtual": false, "visibility": "private" }, { "body": { - "id": 10194, + "id": 10790, "nodeType": "Block", - "src": "33721:475:24", + "src": "34249:475:24", "statements": [ { "expression": { @@ -84564,7 +84845,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 10135, + "id": 10731, "isConstant": false, "isLValue": false, "isPure": false, @@ -84574,7 +84855,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10127, + "id": 10723, "isConstant": false, "isLValue": false, "isPure": false, @@ -84583,12 +84864,12 @@ "expression": { "arguments": [ { - "id": 10123, + "id": 10719, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10115, - "src": "33745:5:24", + "referencedDeclaration": 10711, + "src": "34273:5:24", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -84602,26 +84883,26 @@ "typeString": "string memory" } ], - "id": 10122, + "id": 10718, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "33739:5:24", + "src": "34267:5:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": { - "id": 10121, + "id": 10717, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "33739:5:24", + "src": "34267:5:24", "typeDescriptions": {} } }, - "id": 10124, + "id": 10720, "isConstant": false, "isLValue": false, "isPure": false, @@ -84630,22 +84911,22 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "33739:12:24", + "src": "34267:12:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 10125, + "id": 10721, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "33752:6:24", + "memberLocation": "34280:6:24", "memberName": "length", "nodeType": "MemberAccess", - "src": "33739:19:24", + "src": "34267:19:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -84655,21 +84936,21 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 10126, + "id": 10722, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "33761:1:24", + "src": "34289:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "33739:23:24", + "src": "34267:23:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -84682,7 +84963,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10134, + "id": 10730, "isConstant": false, "isLValue": false, "isPure": false, @@ -84691,12 +84972,12 @@ "expression": { "arguments": [ { - "id": 10130, + "id": 10726, "name": "_url", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10117, - "src": "33772:4:24", + "referencedDeclaration": 10713, + "src": "34300:4:24", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -84710,26 +84991,26 @@ "typeString": "string memory" } ], - "id": 10129, + "id": 10725, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "33766:5:24", + "src": "34294:5:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": { - "id": 10128, + "id": 10724, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "33766:5:24", + "src": "34294:5:24", "typeDescriptions": {} } }, - "id": 10131, + "id": 10727, "isConstant": false, "isLValue": false, "isPure": false, @@ -84738,22 +85019,22 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "33766:11:24", + "src": "34294:11:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 10132, + "id": 10728, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "33778:6:24", + "memberLocation": "34306:6:24", "memberName": "length", "nodeType": "MemberAccess", - "src": "33766:18:24", + "src": "34294:18:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -84763,27 +85044,27 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 10133, + "id": 10729, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "33787:1:24", + "src": "34315:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "33766:22:24", + "src": "34294:22:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "33739:49:24", + "src": "34267:49:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -84791,14 +85072,14 @@ }, { "hexValue": "4c4243303736", - "id": 10136, + "id": 10732, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "33790:8:24", + "src": "34318:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_686eb4b4538782c6c5d7601cff771332305044e1e5a85d59133150cea60acf31", "typeString": "literal_string \"LBC076\"" @@ -84817,7 +85098,7 @@ "typeString": "literal_string \"LBC076\"" } ], - "id": 10120, + "id": 10716, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -84825,13 +85106,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "33731:7:24", + "src": "34259:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 10137, + "id": 10733, "isConstant": false, "isLValue": false, "isPure": false, @@ -84840,86 +85121,86 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "33731:68:24", + "src": "34259:68:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 10138, + "id": 10734, "nodeType": "ExpressionStatement", - "src": "33731:68:24" + "src": "34259:68:24" }, { "assignments": [ - 10141 + 10737 ], "declarations": [ { "constant": false, - "id": 10141, + "id": 10737, "mutability": "mutable", "name": "lp", - "nameLocation": "33835:2:24", + "nameLocation": "34363:2:24", "nodeType": "VariableDeclaration", - "scope": 10194, - "src": "33809:28:24", + "scope": 10790, + "src": "34337:28:24", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" }, "typeName": { - "id": 10140, + "id": 10736, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10139, + "id": 10735, "name": "LiquidityProvider", "nameLocations": [ - "33809:17:24" + "34337:17:24" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 7500, - "src": "33809:17:24" + "referencedDeclaration": 8021, + "src": "34337:17:24" }, - "referencedDeclaration": 7500, - "src": "33809:17:24", + "referencedDeclaration": 8021, + "src": "34337:17:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" } }, "visibility": "internal" } ], - "id": 10142, + "id": 10738, "nodeType": "VariableDeclarationStatement", - "src": "33809:28:24" + "src": "34337:28:24" }, { "body": { - "id": 10188, + "id": 10784, "nodeType": "Block", - "src": "33886:278:24", + "src": "34414:278:24", "statements": [ { "expression": { - "id": 10157, + "id": 10753, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 10153, + "id": 10749, "name": "lp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10141, - "src": "33900:2:24", + "referencedDeclaration": 10737, + "src": "34428:2:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" } }, @@ -84927,25 +85208,25 @@ "operator": "=", "rightHandSide": { "baseExpression": { - "id": 10154, + "id": 10750, "name": "liquidityProviders", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7650, - "src": "33905:18:24", + "referencedDeclaration": 8171, + "src": "34433:18:24", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$7500_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8021_storage_$", "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" } }, - "id": 10156, + "id": 10752, "indexExpression": { - "id": 10155, + "id": 10751, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10144, - "src": "33924:1:24", + "referencedDeclaration": 10740, + "src": "34452:1:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -84956,21 +85237,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "33905:21:24", + "src": "34433:21:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage", + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage", "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" } }, - "src": "33900:26:24", + "src": "34428:26:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" } }, - "id": 10158, + "id": 10754, "nodeType": "ExpressionStatement", - "src": "33900:26:24" + "src": "34428:26:24" }, { "condition": { @@ -84978,33 +85259,33 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 10163, + "id": 10759, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 10159, + "id": 10755, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "33944:3:24", + "src": "34472:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 10160, + "id": 10756, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "33948:6:24", + "memberLocation": "34476:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "33944:10:24", + "src": "34472:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -85014,76 +85295,76 @@ "operator": "==", "rightExpression": { "expression": { - "id": 10161, + "id": 10757, "name": "lp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10141, - "src": "33958:2:24", + "referencedDeclaration": 10737, + "src": "34486:2:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" } }, - "id": 10162, + "id": 10758, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "33961:8:24", + "memberLocation": "34489:8:24", "memberName": "provider", "nodeType": "MemberAccess", - "referencedDeclaration": 7491, - "src": "33958:11:24", + "referencedDeclaration": 8012, + "src": "34486:11:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "33944:25:24", + "src": "34472:25:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 10187, + "id": 10783, "nodeType": "IfStatement", - "src": "33940:214:24", + "src": "34468:214:24", "trueBody": { - "id": 10186, + "id": 10782, "nodeType": "Block", - "src": "33971:183:24", + "src": "34499:183:24", "statements": [ { "expression": { - "id": 10168, + "id": 10764, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 10164, + "id": 10760, "name": "lp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10141, - "src": "33989:2:24", + "referencedDeclaration": 10737, + "src": "34517:2:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" } }, - "id": 10166, + "id": 10762, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "33992:4:24", + "memberLocation": "34520:4:24", "memberName": "name", "nodeType": "MemberAccess", - "referencedDeclaration": 7493, - "src": "33989:7:24", + "referencedDeclaration": 8014, + "src": "34517:7:24", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -85092,57 +85373,57 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 10167, + "id": 10763, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10115, - "src": "33999:5:24", + "referencedDeclaration": 10711, + "src": "34527:5:24", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "33989:15:24", + "src": "34517:15:24", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 10169, + "id": 10765, "nodeType": "ExpressionStatement", - "src": "33989:15:24" + "src": "34517:15:24" }, { "expression": { - "id": 10174, + "id": 10770, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { - "id": 10170, + "id": 10766, "name": "lp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10141, - "src": "34022:2:24", + "referencedDeclaration": 10737, + "src": "34550:2:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" } }, - "id": 10172, + "id": 10768, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "34025:10:24", + "memberLocation": "34553:10:24", "memberName": "apiBaseUrl", "nodeType": "MemberAccess", - "referencedDeclaration": 7495, - "src": "34022:13:24", + "referencedDeclaration": 8016, + "src": "34550:13:24", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -85151,52 +85432,52 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 10173, + "id": 10769, "name": "_url", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10117, - "src": "34038:4:24", + "referencedDeclaration": 10713, + "src": "34566:4:24", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "34022:20:24", + "src": "34550:20:24", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 10175, + "id": 10771, "nodeType": "ExpressionStatement", - "src": "34022:20:24" + "src": "34550:20:24" }, { "eventCall": { "arguments": [ { "expression": { - "id": 10177, + "id": 10773, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "34080:3:24", + "src": "34608:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 10178, + "id": 10774, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "34084:6:24", + "memberLocation": "34612:6:24", "memberName": "sender", "nodeType": "MemberAccess", - "src": "34080:10:24", + "src": "34608:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -85204,27 +85485,27 @@ }, { "expression": { - "id": 10179, + "id": 10775, "name": "lp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10141, - "src": "34092:2:24", + "referencedDeclaration": 10737, + "src": "34620:2:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" } }, - "id": 10180, + "id": 10776, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "34095:4:24", + "memberLocation": "34623:4:24", "memberName": "name", "nodeType": "MemberAccess", - "referencedDeclaration": 7493, - "src": "34092:7:24", + "referencedDeclaration": 8014, + "src": "34620:7:24", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -85232,27 +85513,27 @@ }, { "expression": { - "id": 10181, + "id": 10777, "name": "lp", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10141, - "src": "34101:2:24", + "referencedDeclaration": 10737, + "src": "34629:2:24", "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$7500_storage_ptr", + "typeIdentifier": "t_struct$_LiquidityProvider_$8021_storage_ptr", "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" } }, - "id": 10182, + "id": 10778, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "34104:10:24", + "memberLocation": "34632:10:24", "memberName": "apiBaseUrl", "nodeType": "MemberAccess", - "referencedDeclaration": 7495, - "src": "34101:13:24", + "referencedDeclaration": 8016, + "src": "34629:13:24", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -85274,18 +85555,18 @@ "typeString": "string storage ref" } ], - "id": 10176, + "id": 10772, "name": "ProviderUpdate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7630, - "src": "34065:14:24", + "referencedDeclaration": 8151, + "src": "34593:14:24", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory,string memory)" } }, - "id": 10183, + "id": 10779, "isConstant": false, "isLValue": false, "isPure": false, @@ -85294,22 +85575,22 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "34065:50:24", + "src": "34593:50:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 10184, + "id": 10780, "nodeType": "EmitStatement", - "src": "34060:55:24" + "src": "34588:55:24" }, { - "functionReturnParameters": 10119, - "id": 10185, + "functionReturnParameters": 10715, + "id": 10781, "nodeType": "Return", - "src": "34133:7:24" + "src": "34661:7:24" } ] } @@ -85321,18 +85602,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10149, + "id": 10745, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 10147, + "id": 10743, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10144, - "src": "33864:1:24", + "referencedDeclaration": 10740, + "src": "34392:1:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -85341,38 +85622,38 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 10148, + "id": 10744, "name": "providerId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7671, - "src": "33869:10:24", + "referencedDeclaration": 8192, + "src": "34397:10:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "33864:15:24", + "src": "34392:15:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 10189, + "id": 10785, "initializationExpression": { "assignments": [ - 10144 + 10740 ], "declarations": [ { "constant": false, - "id": 10144, + "id": 10740, "mutability": "mutable", "name": "i", - "nameLocation": "33857:1:24", + "nameLocation": "34385:1:24", "nodeType": "VariableDeclaration", - "scope": 10189, - "src": "33852:6:24", + "scope": 10785, + "src": "34380:6:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -85380,10 +85661,10 @@ "typeString": "uint256" }, "typeName": { - "id": 10143, + "id": 10739, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "33852:4:24", + "src": "34380:4:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -85392,17 +85673,17 @@ "visibility": "internal" } ], - "id": 10146, + "id": 10742, "initialValue": { "hexValue": "31", - "id": 10145, + "id": 10741, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "33861:1:24", + "src": "34389:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" @@ -85410,11 +85691,11 @@ "value": "1" }, "nodeType": "VariableDeclarationStatement", - "src": "33852:10:24" + "src": "34380:10:24" }, "loopExpression": { "expression": { - "id": 10151, + "id": 10747, "isConstant": false, "isLValue": false, "isPure": false, @@ -85422,14 +85703,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "33881:3:24", + "src": "34409:3:24", "subExpression": { - "id": 10150, + "id": 10746, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10144, - "src": "33881:1:24", + "referencedDeclaration": 10740, + "src": "34409:1:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -85440,26 +85721,26 @@ "typeString": "uint256" } }, - "id": 10152, + "id": 10748, "nodeType": "ExpressionStatement", - "src": "33881:3:24" + "src": "34409:3:24" }, "nodeType": "ForStatement", - "src": "33847:317:24" + "src": "34375:317:24" }, { "expression": { "arguments": [ { "hexValue": "4c4243303031", - "id": 10191, + "id": 10787, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "34180:8:24", + "src": "34708:8:24", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c", "typeString": "literal_string \"LBC001\"" @@ -85474,7 +85755,7 @@ "typeString": "literal_string \"LBC001\"" } ], - "id": 10190, + "id": 10786, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -85482,13 +85763,13 @@ 4294967277 ], "referencedDeclaration": 4294967277, - "src": "34173:6:24", + "src": "34701:6:24", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory) pure" } }, - "id": 10192, + "id": 10788, "isConstant": false, "isLValue": false, "isPure": false, @@ -85497,40 +85778,40 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "34173:16:24", + "src": "34701:16:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 10193, + "id": 10789, "nodeType": "ExpressionStatement", - "src": "34173:16:24" + "src": "34701:16:24" } ] }, "functionSelector": "0220f41d", - "id": 10195, + "id": 10791, "implemented": true, "kind": "function", "modifiers": [], "name": "updateProvider", - "nameLocation": "33656:14:24", + "nameLocation": "34184:14:24", "nodeType": "FunctionDefinition", "parameters": { - "id": 10118, + "id": 10714, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10115, + "id": 10711, "mutability": "mutable", "name": "_name", - "nameLocation": "33685:5:24", + "nameLocation": "34213:5:24", "nodeType": "VariableDeclaration", - "scope": 10195, - "src": "33671:19:24", + "scope": 10791, + "src": "34199:19:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -85538,10 +85819,10 @@ "typeString": "string" }, "typeName": { - "id": 10114, + "id": 10710, "name": "string", "nodeType": "ElementaryTypeName", - "src": "33671:6:24", + "src": "34199:6:24", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -85551,13 +85832,13 @@ }, { "constant": false, - "id": 10117, + "id": 10713, "mutability": "mutable", "name": "_url", - "nameLocation": "33706:4:24", + "nameLocation": "34234:4:24", "nodeType": "VariableDeclaration", - "scope": 10195, - "src": "33692:18:24", + "scope": 10791, + "src": "34220:18:24", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -85565,10 +85846,10 @@ "typeString": "string" }, "typeName": { - "id": 10116, + "id": 10712, "name": "string", "nodeType": "ElementaryTypeName", - "src": "33692:6:24", + "src": "34220:6:24", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -85577,27 +85858,27 @@ "visibility": "internal" } ], - "src": "33670:41:24" + "src": "34198:41:24" }, "returnParameters": { - "id": 10119, + "id": 10715, "nodeType": "ParameterList", "parameters": [], - "src": "33721:0:24" + "src": "34249:0:24" }, - "scope": 10196, - "src": "33647:549:24", + "scope": 10792, + "src": "34175:549:24", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" } ], - "scope": 10197, - "src": "481:33717:24", + "scope": 10793, + "src": "481:34245:24", "usedErrors": [] } ], - "src": "32:34167:24" + "src": "32:34695:24" }, "compiler": { "name": "solc", @@ -85613,10 +85894,20 @@ }, "address": "0xAA9cAf1e3967600578727F975F283446A3Da6612", "transactionHash": "0x98019ccb62d5536a786ab4ec83b5b2ab52294be811c85238bf11c1ed47ce3218" + }, + "31": { + "events": {}, + "links": { + "SignatureValidator": "0xe90bAe63CB58f7da3915C8478aD1823BC8A3BEb5", + "QuotesV2": "0xbdD04fED2A63D79b3342c2d8cf5478b96a2A1EB5", + "BtcUtils": "0x368233164bd877B075E3492e49FE8b4F5360F3B6" + }, + "address": "0x18D8212bC00106b93070123f325021C723D503a3", + "transactionHash": "0xb22fbc0112e4ab6ed039335ae48847e07f817ac82234832dd0839d34298fef28" } }, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:56:36.740Z", + "updatedAt": "2024-08-13T18:16:26.117Z", "networkType": "ethereum", "devdoc": { "events": { diff --git a/build/contracts/Migrations.json b/build/contracts/Migrations.json index f02e65f..1dab08d 100644 --- a/build/contracts/Migrations.json +++ b/build/contracts/Migrations.json @@ -669,20 +669,20 @@ "sourceMap": "58:352:25:-:0;;;82:33;;;-1:-1:-1;;;;;;82:33:25;105:10;82:33;;;58:352;;;;;;;;;;;;;;;;", "deployedSourceMap": "58:352:25:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;119:36;;;;;;;;;160:25:32;;;148:2;133:18;119:36:25;;;;;;;;82:33;;;;;-1:-1:-1;;;;;82:33:25;;;;;;-1:-1:-1;;;;;360:32:32;;;342:51;;330:2;315:18;82:33:25;196:203:32;305:103:25;;;;;;:::i;:::-;;:::i;:::-;;;217:5;;-1:-1:-1;;;;;217:5:25;203:10;:19;188:101;;;;-1:-1:-1;;;188:101:25;;791:2:32;188:101:25;;;773:21:32;830:2;810:18;;;803:30;869:34;849:18;;;842:62;-1:-1:-1;;;920:18:32;;;913:49;979:19;;188:101:25;;;;;;;;367:24:::1;:36:::0;305:103::o;404:180:32:-;463:6;516:2;504:9;495:7;491:23;487:32;484:52;;;532:1;529;522:12;484:52;-1:-1:-1;555:23:32;;404:180;-1:-1:-1;404:180:32:o", "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\ncontract Migrations {\n address public owner = msg.sender;\n uint public last_completed_migration;\n\n modifier restricted() {\n require(\n msg.sender == owner,\n \"This function is restricted to the contract's owner\"\n );\n _;\n }\n\n function setCompleted(uint completed) public restricted {\n last_completed_migration = completed;\n }\n}\n", - "sourcePath": "/Users/guilhermesoares/WebstormProjects/Rootstock/liquidity-bridge-contract/contracts/Migrations.sol", + "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/Migrations.sol", "ast": { "absolutePath": "project:/contracts/Migrations.sol", "exportedSymbols": { "Migrations": [ - 10229 + 10825 ] }, - "id": 10230, + "id": 10826, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 10198, + "id": 10794, "literals": [ "solidity", "^", @@ -699,9 +699,9 @@ "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, - "id": 10229, + "id": 10825, "linearizedBaseContracts": [ - 10229 + 10825 ], "name": "Migrations", "nameLocation": "67:10:25", @@ -710,12 +710,12 @@ { "constant": false, "functionSelector": "8da5cb5b", - "id": 10202, + "id": 10798, "mutability": "mutable", "name": "owner", "nameLocation": "97:5:25", "nodeType": "VariableDeclaration", - "scope": 10229, + "scope": 10825, "src": "82:33:25", "stateVariable": true, "storageLocation": "default", @@ -724,7 +724,7 @@ "typeString": "address" }, "typeName": { - "id": 10199, + "id": 10795, "name": "address", "nodeType": "ElementaryTypeName", "src": "82:7:25", @@ -736,7 +736,7 @@ }, "value": { "expression": { - "id": 10200, + "id": 10796, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -747,7 +747,7 @@ "typeString": "msg" } }, - "id": 10201, + "id": 10797, "isConstant": false, "isLValue": false, "isPure": false, @@ -766,12 +766,12 @@ { "constant": false, "functionSelector": "445df0ac", - "id": 10204, + "id": 10800, "mutability": "mutable", "name": "last_completed_migration", "nameLocation": "131:24:25", "nodeType": "VariableDeclaration", - "scope": 10229, + "scope": 10825, "src": "119:36:25", "stateVariable": true, "storageLocation": "default", @@ -780,7 +780,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10203, + "id": 10799, "name": "uint", "nodeType": "ElementaryTypeName", "src": "119:4:25", @@ -793,7 +793,7 @@ }, { "body": { - "id": 10215, + "id": 10811, "nodeType": "Block", "src": "182:119:25", "statements": [ @@ -805,14 +805,14 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 10210, + "id": 10806, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 10207, + "id": 10803, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -823,7 +823,7 @@ "typeString": "msg" } }, - "id": 10208, + "id": 10804, "isConstant": false, "isLValue": false, "isPure": false, @@ -840,11 +840,11 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 10209, + "id": 10805, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10202, + "referencedDeclaration": 10798, "src": "217:5:25", "typeDescriptions": { "typeIdentifier": "t_address", @@ -859,7 +859,7 @@ }, { "hexValue": "546869732066756e6374696f6e206973207265737472696374656420746f2074686520636f6e74726163742773206f776e6572", - "id": 10211, + "id": 10807, "isConstant": false, "isLValue": false, "isPure": true, @@ -885,7 +885,7 @@ "typeString": "literal_string \"This function is restricted to the contract's owner\"" } ], - "id": 10206, + "id": 10802, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -899,7 +899,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 10212, + "id": 10808, "isConstant": false, "isLValue": false, "isPure": false, @@ -915,23 +915,23 @@ "typeString": "tuple()" } }, - "id": 10213, + "id": 10809, "nodeType": "ExpressionStatement", "src": "188:101:25" }, { - "id": 10214, + "id": 10810, "nodeType": "PlaceholderStatement", "src": "295:1:25" } ] }, - "id": 10216, + "id": 10812, "name": "restricted", "nameLocation": "169:10:25", "nodeType": "ModifierDefinition", "parameters": { - "id": 10205, + "id": 10801, "nodeType": "ParameterList", "parameters": [], "src": "179:2:25" @@ -942,23 +942,23 @@ }, { "body": { - "id": 10227, + "id": 10823, "nodeType": "Block", "src": "361:47:25", "statements": [ { "expression": { - "id": 10225, + "id": 10821, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 10223, + "id": 10819, "name": "last_completed_migration", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10204, + "referencedDeclaration": 10800, "src": "367:24:25", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -968,11 +968,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 10224, + "id": 10820, "name": "completed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10218, + "referencedDeclaration": 10814, "src": "394:9:25", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -985,28 +985,28 @@ "typeString": "uint256" } }, - "id": 10226, + "id": 10822, "nodeType": "ExpressionStatement", "src": "367:36:25" } ] }, "functionSelector": "fdacd576", - "id": 10228, + "id": 10824, "implemented": true, "kind": "function", "modifiers": [ { - "id": 10221, + "id": 10817, "kind": "modifierInvocation", "modifierName": { - "id": 10220, + "id": 10816, "name": "restricted", "nameLocations": [ "350:10:25" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10216, + "referencedDeclaration": 10812, "src": "350:10:25" }, "nodeType": "ModifierInvocation", @@ -1017,17 +1017,17 @@ "nameLocation": "314:12:25", "nodeType": "FunctionDefinition", "parameters": { - "id": 10219, + "id": 10815, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10218, + "id": 10814, "mutability": "mutable", "name": "completed", "nameLocation": "332:9:25", "nodeType": "VariableDeclaration", - "scope": 10228, + "scope": 10824, "src": "327:14:25", "stateVariable": false, "storageLocation": "default", @@ -1036,7 +1036,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10217, + "id": 10813, "name": "uint", "nodeType": "ElementaryTypeName", "src": "327:4:25", @@ -1051,19 +1051,19 @@ "src": "326:16:25" }, "returnParameters": { - "id": 10222, + "id": 10818, "nodeType": "ParameterList", "parameters": [], "src": "361:0:25" }, - "scope": 10229, + "scope": 10825, "src": "305:103:25", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" } ], - "scope": 10230, + "scope": 10826, "src": "58:352:25", "usedErrors": [] } @@ -1076,7 +1076,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:56:36.776Z", + "updatedAt": "2024-08-13T18:16:26.138Z", "networkType": "ethereum", "devdoc": { "kind": "dev", diff --git a/build/contracts/Mock.json b/build/contracts/Mock.json index 8f96233..cc1ea22 100644 --- a/build/contracts/Mock.json +++ b/build/contracts/Mock.json @@ -61,9 +61,9 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"balance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"lbcAddress\",\"type\":\"address\"}],\"name\":\"callRegister\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"check\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"fail\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"s\",\"type\":\"int256\"}],\"name\":\"set\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Mock.sol\":\"Mock\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\":{\"keccak256\":\"0x0dc781715e8c751a32cc8a6cb062c0aa315dac2d14f9e00cf93d3aec0ae295e8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1dc434f8cc19e5ddf589ec5bab31427e9b0a0eb990e00a217fdfeca7223cf4f9\",\"dweb:/ipfs/QmUpkMKeG7ncvyxpye4Z1izF2NvRK4rJ2nt6fof9TbPsvc\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":{\"keccak256\":\"0x74d384b5e0ce7b5be1cb5d1446b40e788a0b3e13522aaa583d73a554c835c4d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e94fc123058c5e2cc8cd4635f12bcba195b8b57fef895980c519130f44aa5d17\",\"dweb:/ipfs/QmVhqvcmMhvwYeuYgheTFVBo3EHBKuyYpthdhQRwTdBfx4\"]},\"project:/contracts/Bridge.sol\":{\"keccak256\":\"0xae192fa4fc0d6d395fd0c3912bc3affe86ddd4869f04501fbae0afe234d1becd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://309436cba07567a3ee76e71d6a751023b436a17f7d83e291ef731318287756e6\",\"dweb:/ipfs/QmZTjw3hbY4ofptJmQwnLRGrBTQcv6yPgbY4WvMAwgkzGS\"]},\"project:/contracts/LiquidityBridgeContract.sol\":{\"keccak256\":\"0xffd1e9632f97e8d0a1daac7a5db03b7f5c345e80e08ecc2d2a113d36969fef7a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d95ff6c407622ceab5e821eb0ae0e1984812e5e517180c56f57f2891840d79a3\",\"dweb:/ipfs/QmS9sYi998BahXLHLW74qrf45icdLGmxXuNm7Y2SN9VZnF\"]},\"project:/contracts/Mock.sol\":{\"keccak256\":\"0x2c3e024eaf134bb6b12c48103c9b5e21f1d2b03b4d6ce1106a6ef924adf462cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b836e99f6c17937d83f85bd6197e90e3534dba6e8fbfd1b23c0e0c283ddf8a24\",\"dweb:/ipfs/QmYrbtyjY4QTP1D9ap5VZCYMkMDidCWm7dgYHVuyqbKq6t\"]},\"project:/contracts/Quotes.sol\":{\"keccak256\":\"0x28948b37d73f110d9cfc6cc3505fa7f2309b2d8d588d90c4069df45b4acbe399\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f2a824971a2421b56127e048a6b8a2d4ef4945b13e5f40cb266a19462c954e7f\",\"dweb:/ipfs/QmWm8YpQUwvqu4erUbsUZ1xz4PoVtJQiAX1Kh5Gezi32c1\"]},\"project:/contracts/SignatureValidator.sol\":{\"keccak256\":\"0x9d72920dd5ff2891c8dd3b3a814c1b108e82fcc6dfd849c96842e88c01d25b2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df1167e9def35ced4a620e3fa1e6d148bc7c1fb995378bf12dabef250b3be65\",\"dweb:/ipfs/QmZJJchWvzUeMb68VPHFGnMXBx7aMhK5GqJy8ECDx2rf58\"]}},\"version\":1}", - "bytecode": "0x608060405234801561001057600080fd5b50610276806100206000396000f3fe60806040526004361061004a5760003560e01c80631192fe621461004f578063919840ad14610064578063a9cc471814610087578063b69ef8a81461009c578063e5c19b2d146100b2575b600080fd5b61006261005d3660046101de565b6100c5565b005b34801561007057600080fd5b506000545b60405190815260200160405180910390f35b34801561009357600080fd5b506100626101aa565b3480156100a857600080fd5b5061007560015481565b6100626100c036600461020e565b600055565b60405163082e0aa360e31b81526080600480830191909152600e60848301526d119a5c9cdd0818dbdb9d1c9858dd60921b60a483015260c06024830152601460c483015273687474703a2f2f6c6f63616c686f73742f61706960601b60e4830152600160448301526101006064830152610104820152630c4dee8d60e31b61012482015281906001600160a01b0382169063417055189034906101440160206040518083038185885af1158015610180573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906101a59190610227565b505050565b60405162461bcd60e51b815260206004820152600560248201526432b93937b960d91b604482015260640160405180910390fd5b6000602082840312156101f057600080fd5b81356001600160a01b038116811461020757600080fd5b9392505050565b60006020828403121561022057600080fd5b5035919050565b60006020828403121561023957600080fd5b505191905056fea26469706673582212203ac043a870bb537b6ad66ad6d3310df7365fd49ebbfa160c7bb7afa4da33b8fc64736f6c63430008120033", - "deployedBytecode": "0x60806040526004361061004a5760003560e01c80631192fe621461004f578063919840ad14610064578063a9cc471814610087578063b69ef8a81461009c578063e5c19b2d146100b2575b600080fd5b61006261005d3660046101de565b6100c5565b005b34801561007057600080fd5b506000545b60405190815260200160405180910390f35b34801561009357600080fd5b506100626101aa565b3480156100a857600080fd5b5061007560015481565b6100626100c036600461020e565b600055565b60405163082e0aa360e31b81526080600480830191909152600e60848301526d119a5c9cdd0818dbdb9d1c9858dd60921b60a483015260c06024830152601460c483015273687474703a2f2f6c6f63616c686f73742f61706960601b60e4830152600160448301526101006064830152610104820152630c4dee8d60e31b61012482015281906001600160a01b0382169063417055189034906101440160206040518083038185885af1158015610180573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906101a59190610227565b505050565b60405162461bcd60e51b815260206004820152600560248201526432b93937b960d91b604482015260640160405180910390fd5b6000602082840312156101f057600080fd5b81356001600160a01b038116811461020757600080fd5b9392505050565b60006020828403121561022057600080fd5b5035919050565b60006020828403121561023957600080fd5b505191905056fea26469706673582212203ac043a870bb537b6ad66ad6d3310df7365fd49ebbfa160c7bb7afa4da33b8fc64736f6c63430008120033", + "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"balance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"lbcAddress\",\"type\":\"address\"}],\"name\":\"callRegister\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"check\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"fail\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"s\",\"type\":\"int256\"}],\"name\":\"set\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Mock.sol\":\"Mock\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\":{\"keccak256\":\"0x7237a22e0d518b3499d81ca4918c038a168882e57a35af17d57afd61234c8512\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df4acd5a0609e279ddad58d0532a77fdc959688144e5bb7ccfc782db9236251\",\"dweb:/ipfs/QmbjJFBRm6JFPx9Jh34hX8N5rkgBxJ5kbdZsoJ3Tb4UyCa\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":{\"keccak256\":\"0x5996186b53b109f592341cfe164c6673346eafda66a2a496e6d5fcec5c74de5a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8d3073328ce73163fe8088b14bf39ba03f5f233604a0eb329bb64f2be73ff411\",\"dweb:/ipfs/QmScVLft2AL48D1Z93e3TDQbfZNh7sxJaeS23U4KPGsjTY\"]},\"project:/contracts/Bridge.sol\":{\"keccak256\":\"0x1eb986f1f28ace76b72425a2617eaeb89a54c765dc7b16689cb1105a7e6c0f2f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://255860b4bfb0bed73723349493307106fb54fcaf5839a7b0c012fc1a03d0b8ce\",\"dweb:/ipfs/QmUoWjWVkXpUWjaiWQXQVNKEJmCnPtKXXTgFq7kkcTuGMs\"]},\"project:/contracts/LiquidityBridgeContract.sol\":{\"keccak256\":\"0xffd1e9632f97e8d0a1daac7a5db03b7f5c345e80e08ecc2d2a113d36969fef7a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d95ff6c407622ceab5e821eb0ae0e1984812e5e517180c56f57f2891840d79a3\",\"dweb:/ipfs/QmS9sYi998BahXLHLW74qrf45icdLGmxXuNm7Y2SN9VZnF\"]},\"project:/contracts/Mock.sol\":{\"keccak256\":\"0x2c3e024eaf134bb6b12c48103c9b5e21f1d2b03b4d6ce1106a6ef924adf462cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b836e99f6c17937d83f85bd6197e90e3534dba6e8fbfd1b23c0e0c283ddf8a24\",\"dweb:/ipfs/QmYrbtyjY4QTP1D9ap5VZCYMkMDidCWm7dgYHVuyqbKq6t\"]},\"project:/contracts/Quotes.sol\":{\"keccak256\":\"0x28948b37d73f110d9cfc6cc3505fa7f2309b2d8d588d90c4069df45b4acbe399\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f2a824971a2421b56127e048a6b8a2d4ef4945b13e5f40cb266a19462c954e7f\",\"dweb:/ipfs/QmWm8YpQUwvqu4erUbsUZ1xz4PoVtJQiAX1Kh5Gezi32c1\"]},\"project:/contracts/SignatureValidator.sol\":{\"keccak256\":\"0x9d72920dd5ff2891c8dd3b3a814c1b108e82fcc6dfd849c96842e88c01d25b2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df1167e9def35ced4a620e3fa1e6d148bc7c1fb995378bf12dabef250b3be65\",\"dweb:/ipfs/QmZJJchWvzUeMb68VPHFGnMXBx7aMhK5GqJy8ECDx2rf58\"]}},\"version\":1}", + "bytecode": "0x608060405234801561001057600080fd5b50610276806100206000396000f3fe60806040526004361061004a5760003560e01c80631192fe621461004f578063919840ad14610064578063a9cc471814610087578063b69ef8a81461009c578063e5c19b2d146100b2575b600080fd5b61006261005d3660046101de565b6100c5565b005b34801561007057600080fd5b506000545b60405190815260200160405180910390f35b34801561009357600080fd5b506100626101aa565b3480156100a857600080fd5b5061007560015481565b6100626100c036600461020e565b600055565b60405163082e0aa360e31b81526080600480830191909152600e60848301526d119a5c9cdd0818dbdb9d1c9858dd60921b60a483015260c06024830152601460c483015273687474703a2f2f6c6f63616c686f73742f61706960601b60e4830152600160448301526101006064830152610104820152630c4dee8d60e31b61012482015281906001600160a01b0382169063417055189034906101440160206040518083038185885af1158015610180573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906101a59190610227565b505050565b60405162461bcd60e51b815260206004820152600560248201526432b93937b960d91b604482015260640160405180910390fd5b6000602082840312156101f057600080fd5b81356001600160a01b038116811461020757600080fd5b9392505050565b60006020828403121561022057600080fd5b5035919050565b60006020828403121561023957600080fd5b505191905056fea2646970667358221220be8c34f32ebff4d9aa590046a228b055d76bbcebeae3962228862082e1994dad64736f6c63430008120033", + "deployedBytecode": "0x60806040526004361061004a5760003560e01c80631192fe621461004f578063919840ad14610064578063a9cc471814610087578063b69ef8a81461009c578063e5c19b2d146100b2575b600080fd5b61006261005d3660046101de565b6100c5565b005b34801561007057600080fd5b506000545b60405190815260200160405180910390f35b34801561009357600080fd5b506100626101aa565b3480156100a857600080fd5b5061007560015481565b6100626100c036600461020e565b600055565b60405163082e0aa360e31b81526080600480830191909152600e60848301526d119a5c9cdd0818dbdb9d1c9858dd60921b60a483015260c06024830152601460c483015273687474703a2f2f6c6f63616c686f73742f61706960601b60e4830152600160448301526101006064830152610104820152630c4dee8d60e31b61012482015281906001600160a01b0382169063417055189034906101440160206040518083038185885af1158015610180573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906101a59190610227565b505050565b60405162461bcd60e51b815260206004820152600560248201526432b93937b960d91b604482015260640160405180910390fd5b6000602082840312156101f057600080fd5b81356001600160a01b038116811461020757600080fd5b9392505050565b60006020828403121561022057600080fd5b5035919050565b60006020828403121561023957600080fd5b505191905056fea2646970667358221220be8c34f32ebff4d9aa590046a228b055d76bbcebeae3962228862082e1994dad64736f6c63430008120033", "immutableReferences": {}, "generatedSources": [], "deployedGeneratedSources": [ @@ -1544,15 +1544,15 @@ "sourceMap": "99:605:26:-:0;;;;;;;;;;;;;;;;;;;", "deployedSourceMap": "99:605:26:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;399:303;;;;;;:::i;:::-;;:::i;:::-;;242:75;;;;;;;;;;-1:-1:-1;282:3:26;304:6;242:75;;;457:25:32;;;445:2;430:18;242:75:26;;;;;;;323:70;;;;;;;;;;;;;:::i;143:22::-;;;;;;;;;;;;;;;;172:64;;;;;;:::i;:::-;219:6;:10;172:64;399:303;551:144;;-1:-1:-1;;;551:144:26;;1285:3:32;551:144:26;;;;1267:22:32;;;;1326:2;1305:19;;;1298:31;-1:-1:-1;;;1345:19:32;;;1338:45;1421:3;1399:20;;;1392:33;1462:2;1441:19;;;1434:31;-1:-1:-1;;;1481:19:32;;;1474:51;661:4:26;1563:18:32;;;1556:50;1544:3;1622:18;;;1615:30;1661:18;;;1654:29;-1:-1:-1;;;1699:19:32;;;1692:35;530:10:26;;-1:-1:-1;;;;;551:12:26;;;;;571:9;;1744:19:32;;551:144:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;466:236;399:303;:::o;323:70::-;363:23;;-1:-1:-1;;;363:23:26;;2165:2:32;363:23:26;;;2147:21:32;2204:1;2184:18;;;2177:29;-1:-1:-1;;;2222:18:32;;;2215:35;2267:18;;363:23:26;;;;;;;14:294:32;81:6;134:2;122:9;113:7;109:23;105:32;102:52;;;150:1;147;140:12;102:52;176:23;;-1:-1:-1;;;;;228:31:32;;218:42;;208:70;;274:1;271;264:12;208:70;297:5;14:294;-1:-1:-1;;;14:294:32:o;675:179::-;733:6;786:2;774:9;765:7;761:23;757:32;754:52;;;802:1;799;792:12;754:52;-1:-1:-1;825:23:32;;675:179;-1:-1:-1;675:179:32:o;1774:184::-;1844:6;1897:2;1885:9;1876:7;1872:23;1868:32;1865:52;;;1913:1;1910;1903:12;1865:52;-1:-1:-1;1936:16:32;;1774:184;-1:-1:-1;1774:184:32:o", "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nimport \"./LiquidityBridgeContract.sol\";\n\ncontract Mock {\n int private status;\n uint256 public balance;\n\n function set(int s) external payable {\n status = s;\n }\n\n function check() external view returns (int) {\n return status;\n }\n\n function fail() external pure {\n require(false, \"error\");\n }\n\n function callRegister(address payable lbcAddress) external payable {\n LiquidityBridgeContract lbc = LiquidityBridgeContract(lbcAddress);\n lbc.register{value: msg.value}(\n \"First contract\",\n \"http://localhost/api\",\n true,\n \"both\"\n );\n }\n}\n", - "sourcePath": "/Users/guilhermesoares/WebstormProjects/Rootstock/liquidity-bridge-contract/contracts/Mock.sol", + "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/Mock.sol", "ast": { "absolutePath": "project:/contracts/Mock.sol", "exportedSymbols": { "Bridge": [ - 3652 + 4173 ], "BtcUtils": [ - 3228 + 3743 ], "ContextUpgradeable": [ 767 @@ -1561,33 +1561,33 @@ 301 ], "LiquidityBridgeContract": [ - 7377 + 7898 ], "Mock": [ - 10289 + 10885 ], "OpCodes": [ - 3249 + 3770 ], "OwnableUpgradeable": [ 132 ], "Quotes": [ - 10556 + 11152 ], "ReentrancyGuardUpgradeable": [ 386 ], "SignatureValidator": [ - 10898 + 11494 ] }, - "id": 10290, + "id": 10886, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 10231, + "id": 10827, "literals": [ "solidity", "^", @@ -1600,11 +1600,11 @@ { "absolutePath": "project:/contracts/LiquidityBridgeContract.sol", "file": "./LiquidityBridgeContract.sol", - "id": 10232, + "id": 10828, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 10290, - "sourceUnit": 7378, + "scope": 10886, + "sourceUnit": 7899, "src": "58:39:26", "symbolAliases": [], "unitAlias": "" @@ -1616,9 +1616,9 @@ "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, - "id": 10289, + "id": 10885, "linearizedBaseContracts": [ - 10289 + 10885 ], "name": "Mock", "nameLocation": "108:4:26", @@ -1626,12 +1626,12 @@ "nodes": [ { "constant": false, - "id": 10234, + "id": 10830, "mutability": "mutable", "name": "status", "nameLocation": "131:6:26", "nodeType": "VariableDeclaration", - "scope": 10289, + "scope": 10885, "src": "119:18:26", "stateVariable": true, "storageLocation": "default", @@ -1640,7 +1640,7 @@ "typeString": "int256" }, "typeName": { - "id": 10233, + "id": 10829, "name": "int", "nodeType": "ElementaryTypeName", "src": "119:3:26", @@ -1654,12 +1654,12 @@ { "constant": false, "functionSelector": "b69ef8a8", - "id": 10236, + "id": 10832, "mutability": "mutable", "name": "balance", "nameLocation": "158:7:26", "nodeType": "VariableDeclaration", - "scope": 10289, + "scope": 10885, "src": "143:22:26", "stateVariable": true, "storageLocation": "default", @@ -1668,7 +1668,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10235, + "id": 10831, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "143:7:26", @@ -1681,23 +1681,23 @@ }, { "body": { - "id": 10245, + "id": 10841, "nodeType": "Block", "src": "209:27:26", "statements": [ { "expression": { - "id": 10243, + "id": 10839, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 10241, + "id": 10837, "name": "status", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10234, + "referencedDeclaration": 10830, "src": "219:6:26", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -1707,11 +1707,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 10242, + "id": 10838, "name": "s", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10238, + "referencedDeclaration": 10834, "src": "228:1:26", "typeDescriptions": { "typeIdentifier": "t_int256", @@ -1724,14 +1724,14 @@ "typeString": "int256" } }, - "id": 10244, + "id": 10840, "nodeType": "ExpressionStatement", "src": "219:10:26" } ] }, "functionSelector": "e5c19b2d", - "id": 10246, + "id": 10842, "implemented": true, "kind": "function", "modifiers": [], @@ -1739,17 +1739,17 @@ "nameLocation": "181:3:26", "nodeType": "FunctionDefinition", "parameters": { - "id": 10239, + "id": 10835, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10238, + "id": 10834, "mutability": "mutable", "name": "s", "nameLocation": "189:1:26", "nodeType": "VariableDeclaration", - "scope": 10246, + "scope": 10842, "src": "185:5:26", "stateVariable": false, "storageLocation": "default", @@ -1758,7 +1758,7 @@ "typeString": "int256" }, "typeName": { - "id": 10237, + "id": 10833, "name": "int", "nodeType": "ElementaryTypeName", "src": "185:3:26", @@ -1773,12 +1773,12 @@ "src": "184:7:26" }, "returnParameters": { - "id": 10240, + "id": 10836, "nodeType": "ParameterList", "parameters": [], "src": "209:0:26" }, - "scope": 10289, + "scope": 10885, "src": "172:64:26", "stateMutability": "payable", "virtual": false, @@ -1786,32 +1786,32 @@ }, { "body": { - "id": 10253, + "id": 10849, "nodeType": "Block", "src": "287:30:26", "statements": [ { "expression": { - "id": 10251, + "id": 10847, "name": "status", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10234, + "referencedDeclaration": 10830, "src": "304:6:26", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, - "functionReturnParameters": 10250, - "id": 10252, + "functionReturnParameters": 10846, + "id": 10848, "nodeType": "Return", "src": "297:13:26" } ] }, "functionSelector": "919840ad", - "id": 10254, + "id": 10850, "implemented": true, "kind": "function", "modifiers": [], @@ -1819,23 +1819,23 @@ "nameLocation": "251:5:26", "nodeType": "FunctionDefinition", "parameters": { - "id": 10247, + "id": 10843, "nodeType": "ParameterList", "parameters": [], "src": "256:2:26" }, "returnParameters": { - "id": 10250, + "id": 10846, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10249, + "id": 10845, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10254, + "scope": 10850, "src": "282:3:26", "stateVariable": false, "storageLocation": "default", @@ -1844,7 +1844,7 @@ "typeString": "int256" }, "typeName": { - "id": 10248, + "id": 10844, "name": "int", "nodeType": "ElementaryTypeName", "src": "282:3:26", @@ -1858,7 +1858,7 @@ ], "src": "281:5:26" }, - "scope": 10289, + "scope": 10885, "src": "242:75:26", "stateMutability": "view", "virtual": false, @@ -1866,7 +1866,7 @@ }, { "body": { - "id": 10262, + "id": 10858, "nodeType": "Block", "src": "353:40:26", "statements": [ @@ -1875,7 +1875,7 @@ "arguments": [ { "hexValue": "66616c7365", - "id": 10258, + "id": 10854, "isConstant": false, "isLValue": false, "isPure": true, @@ -1891,7 +1891,7 @@ }, { "hexValue": "6572726f72", - "id": 10259, + "id": 10855, "isConstant": false, "isLValue": false, "isPure": true, @@ -1917,7 +1917,7 @@ "typeString": "literal_string \"error\"" } ], - "id": 10257, + "id": 10853, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1931,7 +1931,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 10260, + "id": 10856, "isConstant": false, "isLValue": false, "isPure": false, @@ -1947,14 +1947,14 @@ "typeString": "tuple()" } }, - "id": 10261, + "id": 10857, "nodeType": "ExpressionStatement", "src": "363:23:26" } ] }, "functionSelector": "a9cc4718", - "id": 10263, + "id": 10859, "implemented": true, "kind": "function", "modifiers": [], @@ -1962,18 +1962,18 @@ "nameLocation": "332:4:26", "nodeType": "FunctionDefinition", "parameters": { - "id": 10255, + "id": 10851, "nodeType": "ParameterList", "parameters": [], "src": "336:2:26" }, "returnParameters": { - "id": 10256, + "id": 10852, "nodeType": "ParameterList", "parameters": [], "src": "353:0:26" }, - "scope": 10289, + "scope": 10885, "src": "323:70:26", "stateMutability": "pure", "virtual": false, @@ -1981,62 +1981,62 @@ }, { "body": { - "id": 10287, + "id": 10883, "nodeType": "Block", "src": "466:236:26", "statements": [ { "assignments": [ - 10270 + 10866 ], "declarations": [ { "constant": false, - "id": 10270, + "id": 10866, "mutability": "mutable", "name": "lbc", "nameLocation": "500:3:26", "nodeType": "VariableDeclaration", - "scope": 10287, + "scope": 10883, "src": "476:27:26", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7377", + "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", "typeString": "contract LiquidityBridgeContract" }, "typeName": { - "id": 10269, + "id": 10865, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10268, + "id": 10864, "name": "LiquidityBridgeContract", "nameLocations": [ "476:23:26" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 7377, + "referencedDeclaration": 7898, "src": "476:23:26" }, - "referencedDeclaration": 7377, + "referencedDeclaration": 7898, "src": "476:23:26", "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7377", + "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", "typeString": "contract LiquidityBridgeContract" } }, "visibility": "internal" } ], - "id": 10274, + "id": 10870, "initialValue": { "arguments": [ { - "id": 10272, + "id": 10868, "name": "lbcAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10265, + "referencedDeclaration": 10861, "src": "530:10:26", "typeDescriptions": { "typeIdentifier": "t_address_payable", @@ -2051,18 +2051,18 @@ "typeString": "address payable" } ], - "id": 10271, + "id": 10867, "name": "LiquidityBridgeContract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 7377, + "referencedDeclaration": 7898, "src": "506:23:26", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_LiquidityBridgeContract_$7377_$", + "typeIdentifier": "t_type$_t_contract$_LiquidityBridgeContract_$7898_$", "typeString": "type(contract LiquidityBridgeContract)" } }, - "id": 10273, + "id": 10869, "isConstant": false, "isLValue": false, "isPure": false, @@ -2074,7 +2074,7 @@ "src": "506:35:26", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7377", + "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", "typeString": "contract LiquidityBridgeContract" } }, @@ -2086,7 +2086,7 @@ "arguments": [ { "hexValue": "466972737420636f6e7472616374", - "id": 10281, + "id": 10877, "isConstant": false, "isLValue": false, "isPure": true, @@ -2102,7 +2102,7 @@ }, { "hexValue": "687474703a2f2f6c6f63616c686f73742f617069", - "id": 10282, + "id": 10878, "isConstant": false, "isLValue": false, "isPure": true, @@ -2118,7 +2118,7 @@ }, { "hexValue": "74727565", - "id": 10283, + "id": 10879, "isConstant": false, "isLValue": false, "isPure": true, @@ -2134,7 +2134,7 @@ }, { "hexValue": "626f7468", - "id": 10284, + "id": 10880, "isConstant": false, "isLValue": false, "isPure": true, @@ -2188,18 +2188,18 @@ } ], "expression": { - "id": 10275, + "id": 10871, "name": "lbc", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10270, + "referencedDeclaration": 10866, "src": "551:3:26", "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7377", + "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", "typeString": "contract LiquidityBridgeContract" } }, - "id": 10277, + "id": 10873, "isConstant": false, "isLValue": false, "isPure": false, @@ -2207,14 +2207,14 @@ "memberLocation": "555:8:26", "memberName": "register", "nodeType": "MemberAccess", - "referencedDeclaration": 5289, + "referencedDeclaration": 5810, "src": "551:12:26", "typeDescriptions": { "typeIdentifier": "t_function_external_payable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bool_$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory,string memory,bool,string memory) payable external returns (uint256)" } }, - "id": 10280, + "id": 10876, "isConstant": false, "isLValue": false, "isPure": false, @@ -2226,7 +2226,7 @@ "options": [ { "expression": { - "id": 10278, + "id": 10874, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -2237,7 +2237,7 @@ "typeString": "msg" } }, - "id": 10279, + "id": 10875, "isConstant": false, "isLValue": false, "isPure": false, @@ -2258,7 +2258,7 @@ "typeString": "function (string memory,string memory,bool,string memory) payable external returns (uint256)" } }, - "id": 10285, + "id": 10881, "isConstant": false, "isLValue": false, "isPure": false, @@ -2274,14 +2274,14 @@ "typeString": "uint256" } }, - "id": 10286, + "id": 10882, "nodeType": "ExpressionStatement", "src": "551:144:26" } ] }, "functionSelector": "1192fe62", - "id": 10288, + "id": 10884, "implemented": true, "kind": "function", "modifiers": [], @@ -2289,17 +2289,17 @@ "nameLocation": "408:12:26", "nodeType": "FunctionDefinition", "parameters": { - "id": 10266, + "id": 10862, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10265, + "id": 10861, "mutability": "mutable", "name": "lbcAddress", "nameLocation": "437:10:26", "nodeType": "VariableDeclaration", - "scope": 10288, + "scope": 10884, "src": "421:26:26", "stateVariable": false, "storageLocation": "default", @@ -2308,7 +2308,7 @@ "typeString": "address payable" }, "typeName": { - "id": 10264, + "id": 10860, "name": "address", "nodeType": "ElementaryTypeName", "src": "421:15:26", @@ -2324,19 +2324,19 @@ "src": "420:28:26" }, "returnParameters": { - "id": 10267, + "id": 10863, "nodeType": "ParameterList", "parameters": [], "src": "466:0:26" }, - "scope": 10289, + "scope": 10885, "src": "399:303:26", "stateMutability": "payable", "virtual": false, "visibility": "external" } ], - "scope": 10290, + "scope": 10886, "src": "99:605:26", "usedErrors": [] } @@ -2349,7 +2349,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:54:03.271Z", + "updatedAt": "2024-08-13T18:14:01.683Z", "networkType": "ethereum", "devdoc": { "kind": "dev", diff --git a/build/contracts/OpCodes.json b/build/contracts/OpCodes.json index d060a63..9f91202 100644 --- a/build/contracts/OpCodes.json +++ b/build/contracts/OpCodes.json @@ -1,6 +1,32 @@ { "contractName": "OpCodes", "abi": [ + { + "inputs": [], + "name": "OP_0", + "outputs": [ + { + "internalType": "bytes1", + "name": "", + "type": "bytes1" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "OP_1", + "outputs": [ + { + "internalType": "bytes1", + "name": "", + "type": "bytes1" + } + ], + "stateMutability": "view", + "type": "function" + }, { "inputs": [], "name": "OP_CHECKSIG", @@ -80,9 +106,9 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"OP_CHECKSIG\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_DUP\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_EQUAL\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_EQUALVERIFY\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_HASH160\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_RETURN\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":\"OpCodes\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":{\"keccak256\":\"0x74d384b5e0ce7b5be1cb5d1446b40e788a0b3e13522aaa583d73a554c835c4d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e94fc123058c5e2cc8cd4635f12bcba195b8b57fef895980c519130f44aa5d17\",\"dweb:/ipfs/QmVhqvcmMhvwYeuYgheTFVBo3EHBKuyYpthdhQRwTdBfx4\"]}},\"version\":1}", - "bytecode": "0x60f9610039600b82828239805160001a60731461002c57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361060655760003560e01c806325468e0614606a5780635b9aeed01460915780637944baea14609b5780637984beeb1460a5578063ad4039671460af578063f3c9009a1460b9575b600080fd5b607460a960f81b81565b6040516001600160f81b0319909116815260200160405180910390f35b6074603560f91b81565b6074602b60fa1b81565b6074603b60f91b81565b6074601160fb1b81565b6074608760f81b8156fea2646970667358221220c6be11daa1f348828cc107d170d0054fb23c5bebfafdaf50727ee35746ee2ce564736f6c63430008120033", - "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361060655760003560e01c806325468e0614606a5780635b9aeed01460915780637944baea14609b5780637984beeb1460a5578063ad4039671460af578063f3c9009a1460b9575b600080fd5b607460a960f81b81565b6040516001600160f81b0319909116815260200160405180910390f35b6074603560f91b81565b6074602b60fa1b81565b6074603b60f91b81565b6074601160fb1b81565b6074608760f81b8156fea2646970667358221220c6be11daa1f348828cc107d170d0054fb23c5bebfafdaf50727ee35746ee2ce564736f6c63430008120033", + "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"OP_0\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_1\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_CHECKSIG\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_DUP\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_EQUAL\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_EQUALVERIFY\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_HASH160\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_RETURN\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":\"OpCodes\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":{\"keccak256\":\"0x5996186b53b109f592341cfe164c6673346eafda66a2a496e6d5fcec5c74de5a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8d3073328ce73163fe8088b14bf39ba03f5f233604a0eb329bb64f2be73ff411\",\"dweb:/ipfs/QmScVLft2AL48D1Z93e3TDQbfZNh7sxJaeS23U4KPGsjTY\"]}},\"version\":1}", + "bytecode": "0x61011e61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361060795760003560e01c806325468e0614607e5780635b9aeed01460a55780637944baea1460af5780637984beeb1460b9578063ad4039671460c3578063b0354dd91460cd578063f3c9009a1460d7578063fffbdf231460e1575b600080fd5b608860a960f81b81565b6040516001600160f81b0319909116815260200160405180910390f35b6088603560f91b81565b6088602b60fa1b81565b6088603b60f91b81565b6088601160fb1b81565b6088605160f81b81565b6088608760f81b81565b608860008156fea2646970667358221220e220644e75a9f6e22bc18d939db14c631bc2401556ac1b24353c9f22c910c01064736f6c63430008120033", + "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361060795760003560e01c806325468e0614607e5780635b9aeed01460a55780637944baea1460af5780637984beeb1460b9578063ad4039671460c3578063b0354dd91460cd578063f3c9009a1460d7578063fffbdf231460e1575b600080fd5b608860a960f81b81565b6040516001600160f81b0319909116815260200160405180910390f35b6088603560f91b81565b6088602b60fa1b81565b6088603b60f91b81565b6088601160fb1b81565b6088605160f81b81565b6088608760f81b81565b608860008156fea2646970667358221220e220644e75a9f6e22bc18d939db14c631bc2401556ac1b24353c9f22c910c01064736f6c63430008120033", "immutableReferences": {}, "generatedSources": [], "deployedGeneratedSources": [ @@ -232,23 +258,23 @@ "name": "#utility.yul" } ], - "sourceMap": "59:293:18:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;59:293:18;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "59:293:18:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;123:40;;-1:-1:-1;;;123:40:18;;;;;-1:-1:-1;;;;;;184:26:32;;;166:45;;154:2;139:18;123:40:18;;;;;;;266:39;;-1:-1:-1;;;266:39:18;;219:41;;-1:-1:-1;;;219:41:18;;81:36;;-1:-1:-1;;;81:36:18;;169:44;;-1:-1:-1;;;169:44:18;;311:38;;-1:-1:-1;;;311:38:18;", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\n\nlibrary OpCodes {\n bytes1 public constant OP_DUP = 0x76;\n bytes1 public constant OP_HASH160 = 0xa9;\n bytes1 public constant OP_EQUALVERIFY = 0x88;\n bytes1 public constant OP_CHECKSIG = 0xac;\n bytes1 public constant OP_RETURN = 0x6a;\n bytes1 public constant OP_EQUAL = 0x87;\n}\n", + "sourceMap": "59:374:18:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;59:374:18;;;;;;;;;;;;;;;;;", + "deployedSourceMap": "59:374:18:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;123:40;;-1:-1:-1;;;123:40:18;;;;;-1:-1:-1;;;;;;184:26:32;;;166:45;;154:2;139:18;123:40:18;;;;;;;266:39;;-1:-1:-1;;;266:39:18;;219:41;;-1:-1:-1;;;219:41:18;;81:36;;-1:-1:-1;;;81:36:18;;169:44;;-1:-1:-1;;;169:44:18;;396:34;;-1:-1:-1;;;396:34:18;;311:38;;-1:-1:-1;;;311:38:18;;356:34;;386:4;356:34;", + "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\n\nlibrary OpCodes {\n bytes1 public constant OP_DUP = 0x76;\n bytes1 public constant OP_HASH160 = 0xa9;\n bytes1 public constant OP_EQUALVERIFY = 0x88;\n bytes1 public constant OP_CHECKSIG = 0xac;\n bytes1 public constant OP_RETURN = 0x6a;\n bytes1 public constant OP_EQUAL = 0x87;\n\n bytes1 public constant OP_0 = 0x00;\n bytes1 public constant OP_1 = 0x51;\n}\n", "sourcePath": "@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol", "ast": { "absolutePath": "@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol", "exportedSymbols": { "OpCodes": [ - 3249 + 3770 ] }, - "id": 3250, + "id": 3771, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 3230, + "id": 3745, "literals": [ "solidity", "^", @@ -265,9 +291,9 @@ "contractDependencies": [], "contractKind": "library", "fullyImplemented": true, - "id": 3249, + "id": 3770, "linearizedBaseContracts": [ - 3249 + 3770 ], "name": "OpCodes", "nameLocation": "67:7:18", @@ -276,12 +302,12 @@ { "constant": true, "functionSelector": "7984beeb", - "id": 3233, + "id": 3748, "mutability": "constant", "name": "OP_DUP", "nameLocation": "104:6:18", "nodeType": "VariableDeclaration", - "scope": 3249, + "scope": 3770, "src": "81:36:18", "stateVariable": true, "storageLocation": "default", @@ -290,7 +316,7 @@ "typeString": "bytes1" }, "typeName": { - "id": 3231, + "id": 3746, "name": "bytes1", "nodeType": "ElementaryTypeName", "src": "81:6:18", @@ -301,7 +327,7 @@ }, "value": { "hexValue": "30783736", - "id": 3232, + "id": 3747, "isConstant": false, "isLValue": false, "isPure": true, @@ -320,12 +346,12 @@ { "constant": true, "functionSelector": "25468e06", - "id": 3236, + "id": 3751, "mutability": "constant", "name": "OP_HASH160", "nameLocation": "146:10:18", "nodeType": "VariableDeclaration", - "scope": 3249, + "scope": 3770, "src": "123:40:18", "stateVariable": true, "storageLocation": "default", @@ -334,7 +360,7 @@ "typeString": "bytes1" }, "typeName": { - "id": 3234, + "id": 3749, "name": "bytes1", "nodeType": "ElementaryTypeName", "src": "123:6:18", @@ -345,7 +371,7 @@ }, "value": { "hexValue": "30786139", - "id": 3235, + "id": 3750, "isConstant": false, "isLValue": false, "isPure": true, @@ -364,12 +390,12 @@ { "constant": true, "functionSelector": "ad403967", - "id": 3239, + "id": 3754, "mutability": "constant", "name": "OP_EQUALVERIFY", "nameLocation": "192:14:18", "nodeType": "VariableDeclaration", - "scope": 3249, + "scope": 3770, "src": "169:44:18", "stateVariable": true, "storageLocation": "default", @@ -378,7 +404,7 @@ "typeString": "bytes1" }, "typeName": { - "id": 3237, + "id": 3752, "name": "bytes1", "nodeType": "ElementaryTypeName", "src": "169:6:18", @@ -389,7 +415,7 @@ }, "value": { "hexValue": "30783838", - "id": 3238, + "id": 3753, "isConstant": false, "isLValue": false, "isPure": true, @@ -408,12 +434,12 @@ { "constant": true, "functionSelector": "7944baea", - "id": 3242, + "id": 3757, "mutability": "constant", "name": "OP_CHECKSIG", "nameLocation": "242:11:18", "nodeType": "VariableDeclaration", - "scope": 3249, + "scope": 3770, "src": "219:41:18", "stateVariable": true, "storageLocation": "default", @@ -422,7 +448,7 @@ "typeString": "bytes1" }, "typeName": { - "id": 3240, + "id": 3755, "name": "bytes1", "nodeType": "ElementaryTypeName", "src": "219:6:18", @@ -433,7 +459,7 @@ }, "value": { "hexValue": "30786163", - "id": 3241, + "id": 3756, "isConstant": false, "isLValue": false, "isPure": true, @@ -452,12 +478,12 @@ { "constant": true, "functionSelector": "5b9aeed0", - "id": 3245, + "id": 3760, "mutability": "constant", "name": "OP_RETURN", "nameLocation": "289:9:18", "nodeType": "VariableDeclaration", - "scope": 3249, + "scope": 3770, "src": "266:39:18", "stateVariable": true, "storageLocation": "default", @@ -466,7 +492,7 @@ "typeString": "bytes1" }, "typeName": { - "id": 3243, + "id": 3758, "name": "bytes1", "nodeType": "ElementaryTypeName", "src": "266:6:18", @@ -477,7 +503,7 @@ }, "value": { "hexValue": "30783661", - "id": 3244, + "id": 3759, "isConstant": false, "isLValue": false, "isPure": true, @@ -496,12 +522,12 @@ { "constant": true, "functionSelector": "f3c9009a", - "id": 3248, + "id": 3763, "mutability": "constant", "name": "OP_EQUAL", "nameLocation": "334:8:18", "nodeType": "VariableDeclaration", - "scope": 3249, + "scope": 3770, "src": "311:38:18", "stateVariable": true, "storageLocation": "default", @@ -510,7 +536,7 @@ "typeString": "bytes1" }, "typeName": { - "id": 3246, + "id": 3761, "name": "bytes1", "nodeType": "ElementaryTypeName", "src": "311:6:18", @@ -521,7 +547,7 @@ }, "value": { "hexValue": "30783837", - "id": 3247, + "id": 3762, "isConstant": false, "isLValue": false, "isPure": true, @@ -536,14 +562,102 @@ "value": "0x87" }, "visibility": "public" + }, + { + "constant": true, + "functionSelector": "fffbdf23", + "id": 3766, + "mutability": "constant", + "name": "OP_0", + "nameLocation": "379:4:18", + "nodeType": "VariableDeclaration", + "scope": 3770, + "src": "356:34:18", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "typeName": { + "id": 3764, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "356:6:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "value": { + "hexValue": "30783030", + "id": 3765, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "386:4:18", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x00" + }, + "visibility": "public" + }, + { + "constant": true, + "functionSelector": "b0354dd9", + "id": 3769, + "mutability": "constant", + "name": "OP_1", + "nameLocation": "419:4:18", + "nodeType": "VariableDeclaration", + "scope": 3770, + "src": "396:34:18", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "typeName": { + "id": 3767, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "396:6:18", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "value": { + "hexValue": "30783531", + "id": 3768, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "426:4:18", + "typeDescriptions": { + "typeIdentifier": "t_rational_81_by_1", + "typeString": "int_const 81" + }, + "value": "0x51" + }, + "visibility": "public" } ], - "scope": 3250, - "src": "59:293:18", + "scope": 3771, + "src": "59:374:18", "usedErrors": [] } ], - "src": "32:321:18" + "src": "32:402:18" }, "compiler": { "name": "solc", @@ -551,7 +665,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.122Z", + "updatedAt": "2024-08-13T18:10:00.984Z", "devdoc": { "kind": "dev", "methods": {}, diff --git a/build/contracts/Ownable.json b/build/contracts/Ownable.json index 866c4c1..510cf3b 100644 --- a/build/contracts/Ownable.json +++ b/build/contracts/Ownable.json @@ -1394,7 +1394,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.107Z", + "updatedAt": "2024-08-13T18:10:00.948Z", "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", diff --git a/build/contracts/OwnableUpgradeable.json b/build/contracts/OwnableUpgradeable.json index 82ecb35..9b344c3 100644 --- a/build/contracts/OwnableUpgradeable.json +++ b/build/contracts/OwnableUpgradeable.json @@ -1612,7 +1612,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.101Z", + "updatedAt": "2024-08-13T18:10:00.937Z", "devdoc": { "details": "Contract module which provides a basic access control mechanism, where there is an account (an owner) that can be granted exclusive access to specific functions. By default, the owner account will be the one that deploys the contract. This can later be changed with {transferOwnership}. This module is used through inheritance. It will make available the modifier `onlyOwner`, which can be applied to your functions to restrict their use to the owner.", "events": { diff --git a/build/contracts/Proxy.json b/build/contracts/Proxy.json index 0bdbc8f..3e61385 100644 --- a/build/contracts/Proxy.json +++ b/build/contracts/Proxy.json @@ -813,7 +813,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.110Z", + "updatedAt": "2024-08-13T18:10:00.957Z", "devdoc": { "details": "This abstract contract provides a fallback function that delegates all calls to another contract using the EVM instruction `delegatecall`. We refer to the second contract as the _implementation_ behind the proxy, and it has to be specified by overriding the virtual {_implementation} function. Additionally, delegation to the implementation can be triggered manually through the {_fallback} function, or to a different contract through the {_delegate} function. The success and return data of the delegated call will be returned back to the caller of the proxy.", "kind": "dev", diff --git a/build/contracts/ProxyAdmin.json b/build/contracts/ProxyAdmin.json index 6705ebf..c2f1eb8 100644 --- a/build/contracts/ProxyAdmin.json +++ b/build/contracts/ProxyAdmin.json @@ -5459,7 +5459,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.111Z", + "updatedAt": "2024-08-13T18:10:00.960Z", "devdoc": { "details": "This is an auxiliary contract meant to be assigned as the admin of a {TransparentUpgradeableProxy}. For an explanation of why you would want to use this see the documentation for {TransparentUpgradeableProxy}.", "kind": "dev", diff --git a/build/contracts/Quotes.json b/build/contracts/Quotes.json index 4f53339..3da9813 100644 --- a/build/contracts/Quotes.json +++ b/build/contracts/Quotes.json @@ -4861,7 +4861,7 @@ } ] }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$10328_memory_ptrt_uint256", + "name": "abi_decode_tuple_t_struct$_PeginQuote_$10924_memory_ptrt_uint256", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -5152,7 +5152,7 @@ } ] }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$10328_memory_ptr", + "name": "abi_decode_tuple_t_struct$_PeginQuote_$10924_memory_ptr", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -7773,7 +7773,7 @@ } ] }, - "name": "abi_decode_tuple_t_struct$_PegOutQuote_$10363_memory_ptr", + "name": "abi_decode_tuple_t_struct$_PegOutQuote_$10959_memory_ptr", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -11449,7 +11449,7 @@ } ] }, - "contents": "{\n { }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function allocate_memory_1507() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0240)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0220)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function abi_decode_bytes20(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, not(sub(shl(96, 1), 1))))) { revert(0, 0) }\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_bytes(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let _2 := sub(shl(64, 1), 1)\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_1, 0x1f), _3), 63), _3))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(memPtr, 0x20), add(offset, 0x20), _1)\n mstore(add(add(memPtr, _1), 0x20), 0)\n array := memPtr\n }\n function abi_decode_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_int64(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, signextend(7, value))) { revert(0, 0) }\n }\n function abi_decode_uint16(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_struct_PeginQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0240) { revert(0, 0) }\n value := allocate_memory_1507()\n mstore(value, abi_decode_bytes20(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n mstore(add(value, 64), abi_decode_address(add(headStart, 64)))\n let offset := calldataload(add(headStart, 96))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 96), abi_decode_bytes(add(headStart, offset), end))\n mstore(add(value, 128), abi_decode_address(add(headStart, 128)))\n let offset_1 := calldataload(add(headStart, 160))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 160), abi_decode_bytes(add(headStart, offset_1), end))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), calldataload(add(headStart, 224)))\n let _2 := 256\n mstore(add(value, _2), abi_decode_address(add(headStart, _2)))\n let _3 := 288\n let offset_2 := calldataload(add(headStart, _3))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_bytes(add(headStart, offset_2), end))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_int64(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), calldataload(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint32(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint16(add(headStart, _10)))\n let _11 := 544\n mstore(add(value, _11), abi_decode_bool(add(headStart, _11)))\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10328_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n value1 := calldataload(add(headStart, 32))\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10328_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n }\n function abi_encode_bytes(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n let i := 0\n for { } lt(i, length) { i := add(i, 0x20) }\n {\n let _1 := 0x20\n mstore(add(add(pos, i), _1), mload(add(add(value, i), _1)))\n }\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$10363_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if slt(sub(dataEnd, _2), 0x0220) { revert(0, 0) }\n let value := allocate_memory()\n mstore(value, abi_decode_address(_2))\n mstore(add(value, 32), abi_decode_address(add(_2, 32)))\n let offset_1 := calldataload(add(_2, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 64), abi_decode_bytes(add(_2, offset_1), dataEnd))\n mstore(add(value, 96), abi_decode_address(add(_2, 96)))\n let offset_2 := calldataload(add(_2, 128))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, 128), abi_decode_bytes(add(_2, offset_2), dataEnd))\n mstore(add(value, 160), calldataload(add(_2, 160)))\n mstore(add(value, 192), calldataload(add(_2, 192)))\n mstore(add(value, 224), abi_decode_int64(add(_2, 224)))\n let _3 := 256\n let offset_3 := calldataload(add(_2, _3))\n if gt(offset_3, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_bytes(add(_2, offset_3), dataEnd))\n let _4 := 288\n mstore(add(value, _4), calldataload(add(_2, _4)))\n let _5 := 320\n mstore(add(value, _5), abi_decode_uint32(add(_2, _5)))\n let _6 := 352\n mstore(add(value, _6), abi_decode_uint32(add(_2, _6)))\n let _7 := 384\n mstore(add(value, _7), abi_decode_uint16(add(_2, _7)))\n let _8 := 416\n mstore(add(value, _8), abi_decode_uint16(add(_2, _8)))\n let _9 := 448\n mstore(add(value, _9), abi_decode_uint32(add(_2, _9)))\n let _10 := 480\n mstore(add(value, _10), abi_decode_uint32(add(_2, _10)))\n let _11 := 512\n mstore(add(value, _11), abi_decode_uint32(add(_2, _11)))\n value0 := value\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function checked_div_t_uint256(x, y) -> r\n {\n if iszero(y)\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n r := div(x, y)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_edc8872f52a3fbd4c102c7239a16e50d62a454725123fb252e7131b6a2223277__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC057\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n let tail_1 := abi_encode_bytes(value0, add(headStart, 64))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_bytes(value1, tail_1)\n }\n function abi_encode_tuple_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__to_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 288\n mstore(headStart, and(value0, not(sub(shl(96, 1), 1))))\n let _2 := sub(shl(160, 1), 1)\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), and(value2, _2))\n mstore(add(headStart, 96), _1)\n let tail_1 := abi_encode_bytes(value3, add(headStart, _1))\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), sub(tail_1, headStart))\n tail := abi_encode_bytes(value5, tail_1)\n mstore(add(headStart, 192), value6)\n mstore(add(headStart, 224), value7)\n mstore(add(headStart, 256), and(value8, _2))\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool__to_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 288\n mstore(headStart, _1)\n tail := abi_encode_bytes(value0, add(headStart, _1))\n let _2 := 0xffffffff\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), signextend(7, value2))\n mstore(add(headStart, 96), value3)\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), and(value5, _2))\n mstore(add(headStart, 192), and(value6, _2))\n mstore(add(headStart, 224), and(value7, 0xffff))\n mstore(add(headStart, 256), iszero(iszero(value8)))\n }\n function abi_encode_tuple_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__to_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 288\n let _2 := sub(shl(160, 1), 1)\n mstore(headStart, and(value0, _2))\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), _1)\n let tail_1 := abi_encode_bytes(value2, add(headStart, _1))\n mstore(add(headStart, 96), and(value3, _2))\n mstore(add(headStart, 128), sub(tail_1, headStart))\n let tail_2 := abi_encode_bytes(value4, tail_1)\n mstore(add(headStart, 160), value5)\n mstore(add(headStart, 192), value6)\n mstore(add(headStart, 224), signextend(7, value7))\n mstore(add(headStart, 256), sub(tail_2, headStart))\n tail := abi_encode_bytes(value8, tail_2)\n }\n function abi_encode_tuple_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32__to_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32__fromStack_reversed(headStart, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 256)\n mstore(headStart, value0)\n let _1 := 0xffffffff\n mstore(add(headStart, 32), and(value1, _1))\n mstore(add(headStart, 64), and(value2, _1))\n let _2 := 0xffff\n mstore(add(headStart, 96), and(value3, _2))\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), and(value5, _1))\n mstore(add(headStart, 192), and(value6, _1))\n mstore(add(headStart, 224), and(value7, _1))\n }\n}", + "contents": "{\n { }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function allocate_memory_1507() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0240)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0220)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function abi_decode_bytes20(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, not(sub(shl(96, 1), 1))))) { revert(0, 0) }\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_bytes(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let _2 := sub(shl(64, 1), 1)\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_1, 0x1f), _3), 63), _3))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(memPtr, 0x20), add(offset, 0x20), _1)\n mstore(add(add(memPtr, _1), 0x20), 0)\n array := memPtr\n }\n function abi_decode_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_int64(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, signextend(7, value))) { revert(0, 0) }\n }\n function abi_decode_uint16(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_struct_PeginQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0240) { revert(0, 0) }\n value := allocate_memory_1507()\n mstore(value, abi_decode_bytes20(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n mstore(add(value, 64), abi_decode_address(add(headStart, 64)))\n let offset := calldataload(add(headStart, 96))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 96), abi_decode_bytes(add(headStart, offset), end))\n mstore(add(value, 128), abi_decode_address(add(headStart, 128)))\n let offset_1 := calldataload(add(headStart, 160))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 160), abi_decode_bytes(add(headStart, offset_1), end))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), calldataload(add(headStart, 224)))\n let _2 := 256\n mstore(add(value, _2), abi_decode_address(add(headStart, _2)))\n let _3 := 288\n let offset_2 := calldataload(add(headStart, _3))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_bytes(add(headStart, offset_2), end))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_int64(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), calldataload(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint32(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint16(add(headStart, _10)))\n let _11 := 544\n mstore(add(value, _11), abi_decode_bool(add(headStart, _11)))\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10924_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n value1 := calldataload(add(headStart, 32))\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10924_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n }\n function abi_encode_bytes(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n let i := 0\n for { } lt(i, length) { i := add(i, 0x20) }\n {\n let _1 := 0x20\n mstore(add(add(pos, i), _1), mload(add(add(value, i), _1)))\n }\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$10959_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if slt(sub(dataEnd, _2), 0x0220) { revert(0, 0) }\n let value := allocate_memory()\n mstore(value, abi_decode_address(_2))\n mstore(add(value, 32), abi_decode_address(add(_2, 32)))\n let offset_1 := calldataload(add(_2, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 64), abi_decode_bytes(add(_2, offset_1), dataEnd))\n mstore(add(value, 96), abi_decode_address(add(_2, 96)))\n let offset_2 := calldataload(add(_2, 128))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, 128), abi_decode_bytes(add(_2, offset_2), dataEnd))\n mstore(add(value, 160), calldataload(add(_2, 160)))\n mstore(add(value, 192), calldataload(add(_2, 192)))\n mstore(add(value, 224), abi_decode_int64(add(_2, 224)))\n let _3 := 256\n let offset_3 := calldataload(add(_2, _3))\n if gt(offset_3, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_bytes(add(_2, offset_3), dataEnd))\n let _4 := 288\n mstore(add(value, _4), calldataload(add(_2, _4)))\n let _5 := 320\n mstore(add(value, _5), abi_decode_uint32(add(_2, _5)))\n let _6 := 352\n mstore(add(value, _6), abi_decode_uint32(add(_2, _6)))\n let _7 := 384\n mstore(add(value, _7), abi_decode_uint16(add(_2, _7)))\n let _8 := 416\n mstore(add(value, _8), abi_decode_uint16(add(_2, _8)))\n let _9 := 448\n mstore(add(value, _9), abi_decode_uint32(add(_2, _9)))\n let _10 := 480\n mstore(add(value, _10), abi_decode_uint32(add(_2, _10)))\n let _11 := 512\n mstore(add(value, _11), abi_decode_uint32(add(_2, _11)))\n value0 := value\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function checked_div_t_uint256(x, y) -> r\n {\n if iszero(y)\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n r := div(x, y)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_edc8872f52a3fbd4c102c7239a16e50d62a454725123fb252e7131b6a2223277__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC057\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n let tail_1 := abi_encode_bytes(value0, add(headStart, 64))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_bytes(value1, tail_1)\n }\n function abi_encode_tuple_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__to_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 288\n mstore(headStart, and(value0, not(sub(shl(96, 1), 1))))\n let _2 := sub(shl(160, 1), 1)\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), and(value2, _2))\n mstore(add(headStart, 96), _1)\n let tail_1 := abi_encode_bytes(value3, add(headStart, _1))\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), sub(tail_1, headStart))\n tail := abi_encode_bytes(value5, tail_1)\n mstore(add(headStart, 192), value6)\n mstore(add(headStart, 224), value7)\n mstore(add(headStart, 256), and(value8, _2))\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool__to_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 288\n mstore(headStart, _1)\n tail := abi_encode_bytes(value0, add(headStart, _1))\n let _2 := 0xffffffff\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), signextend(7, value2))\n mstore(add(headStart, 96), value3)\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), and(value5, _2))\n mstore(add(headStart, 192), and(value6, _2))\n mstore(add(headStart, 224), and(value7, 0xffff))\n mstore(add(headStart, 256), iszero(iszero(value8)))\n }\n function abi_encode_tuple_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__to_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 288\n let _2 := sub(shl(160, 1), 1)\n mstore(headStart, and(value0, _2))\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), _1)\n let tail_1 := abi_encode_bytes(value2, add(headStart, _1))\n mstore(add(headStart, 96), and(value3, _2))\n mstore(add(headStart, 128), sub(tail_1, headStart))\n let tail_2 := abi_encode_bytes(value4, tail_1)\n mstore(add(headStart, 160), value5)\n mstore(add(headStart, 192), value6)\n mstore(add(headStart, 224), signextend(7, value7))\n mstore(add(headStart, 256), sub(tail_2, headStart))\n tail := abi_encode_bytes(value8, tail_2)\n }\n function abi_encode_tuple_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32__to_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32__fromStack_reversed(headStart, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 256)\n mstore(headStart, value0)\n let _1 := 0xffffffff\n mstore(add(headStart, 32), and(value1, _1))\n mstore(add(headStart, 64), and(value2, _1))\n let _2 := 0xffff\n mstore(add(headStart, 96), and(value3, _2))\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), and(value5, _1))\n mstore(add(headStart, 192), and(value6, _1))\n mstore(add(headStart, 224), and(value7, _1))\n }\n}", "id": 32, "language": "Yul", "name": "#utility.yul" @@ -11458,20 +11458,20 @@ "sourceMap": "58:4167:27:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;58:4167:27;;;;;;;;;;;;;;;;;", "deployedSourceMap": "58:4167:27:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3756:466;;;;;;:::i;:::-;;:::i;:::-;;1202:284;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1492:303;;;;;;:::i;:::-;;:::i;3756:466::-;3878:17;3912:5;:13;;;3898:5;:11;;;:27;;;;:::i;:::-;3878:47;-1:-1:-1;3935:10:27;3948:20;3963:5;3878:47;3948:20;:::i;:::-;3935:33;-1:-1:-1;4163:20:27;3935:33;4163:12;:20;:::i;:::-;4142:17;:41;;4121:94;;;;-1:-1:-1;;;4121:94:27;;8714:2:32;4121:94:27;;;8696:21:32;8753:1;8733:18;;;8726:29;-1:-1:-1;;;8771:18:32;;;8764:36;8817:18;;4121:94:27;;;;;;;;3868:354;;3756:466;;:::o;1202:284::-;1285:12;1440:18;1452:5;1440:11;:18::i;:::-;1460;1472:5;1460:11;:18::i;:::-;1429:50;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1422:57;;1202:284;;;:::o;1492:303::-;1582:12;1737:24;1755:5;1737:17;:24::i;:::-;1763;1781:5;1763:17;:24::i;1801:513::-;1883:12;1954:5;:19;;;1991:5;:16;;;2025:5;:33;;;2076:5;:22;;;2116:5;:22;;;2156:5;:33;;;2207:5;:13;;;2238:5;:16;;;2272:5;:21;;;1926:381;;;;;;;;;;;;;;;;:::i;2320:468::-;2402:12;2473:5;:10;;;2501:5;:14;;;2533:5;:11;;;2562:5;:11;;;2591:5;:24;;;2633:5;:20;;;2671:5;:14;;;2703:5;:26;;;2747:5;:20;;;2445:336;;;;;;;;;;;;;;;;:::i;2794:482::-;2883:12;2954:5;:16;;;2988:5;:18;;;3024:5;:22;;;3064:5;:22;;;3104:5;:18;;;3140:5;:13;;;3171:5;:16;;;3205:5;:11;;;3234:5;:21;;;2926:343;;;;;;;;;;;;;;;;:::i;3282:468::-;3442:11;;;;;3471:24;;;;3513:22;;;;3553:26;;;;3597:27;;;;3642:18;;;;3678:16;;;;3712:17;;;;3414:329;;;;;;12560:25:32;;;;12604:10;12650:15;;;12630:18;;;12623:43;12702:15;;;3371:12:27;12682:18:32;;;12675:43;;;;12737:6;12779:15;;;12759:18;;;12752:43;12832:15;;;;12811:19;;;12804:44;12885:15;;12864:19;;;12857:44;12938:15;;12917:19;;;12910:44;12991:15;;-1:-1:-1;12970:19:32;;12963:44;3371:12:27;12532:19:32;3414:329:27;12231:782:32;14:127;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:255;218:2;212:9;260:6;248:19;;-1:-1:-1;;;;;282:34:32;;318:22;;;279:62;276:88;;;344:18;;:::i;:::-;380:2;373:22;146:255;:::o;406:250::-;473:2;467:9;515:6;503:19;;-1:-1:-1;;;;;537:34:32;;573:22;;;534:62;531:88;;;599:18;;:::i;661:177::-;729:20;;-1:-1:-1;;;;;;778:35:32;;768:46;;758:74;;828:1;825;818:12;758:74;661:177;;;:::o;843:173::-;911:20;;-1:-1:-1;;;;;960:31:32;;950:42;;940:70;;1006:1;1003;996:12;1021:718;1063:5;1116:3;1109:4;1101:6;1097:17;1093:27;1083:55;;1134:1;1131;1124:12;1083:55;1157:20;;-1:-1:-1;;;;;1226:10:32;;;1223:36;;;1239:18;;:::i;:::-;1314:2;1308:9;1282:2;1368:13;;-1:-1:-1;;1364:22:32;;;1388:2;1360:31;1356:40;1344:53;;;1412:18;;;1432:22;;;1409:46;1406:72;;;1458:18;;:::i;:::-;1498:10;1494:2;1487:22;1533:2;1525:6;1518:18;1579:3;1572:4;1567:2;1559:6;1555:15;1551:26;1548:35;1545:55;;;1596:1;1593;1586:12;1545:55;1660:2;1653:4;1645:6;1641:17;1634:4;1626:6;1622:17;1609:54;1707:1;1700:4;1695:2;1687:6;1683:15;1679:26;1672:37;1727:6;1718:15;;;;;;1021:718;;;;:::o;1744:163::-;1811:20;;1871:10;1860:22;;1850:33;;1840:61;;1897:1;1894;1887:12;1912:160;1978:20;;2038:1;2027:20;;;2017:31;;2007:59;;2062:1;2059;2052:12;2077:159;2144:20;;2204:6;2193:18;;2183:29;;2173:57;;2226:1;2223;2216:12;2241:160;2306:20;;2362:13;;2355:21;2345:32;;2335:60;;2391:1;2388;2381:12;2406:2005;2463:5;2511:6;2499:9;2494:3;2490:19;2486:32;2483:52;;;2531:1;2528;2521:12;2483:52;2553:22;;:::i;:::-;2544:31;;2598:29;2617:9;2598:29;:::i;:::-;2591:5;2584:44;2660:38;2694:2;2683:9;2679:18;2660:38;:::i;:::-;2655:2;2648:5;2644:14;2637:62;2731:38;2765:2;2754:9;2750:18;2731:38;:::i;:::-;2726:2;2715:14;;2708:62;2821:2;2806:18;;2793:32;-1:-1:-1;;;;;2874:14:32;;;2871:34;;;2901:1;2898;2891:12;2871:34;2937:45;2978:3;2969:6;2958:9;2954:22;2937:45;:::i;:::-;2932:2;2925:5;2921:14;2914:69;3016:39;3050:3;3039:9;3035:19;3016:39;:::i;:::-;3010:3;3003:5;2999:15;2992:64;3109:3;3098:9;3094:19;3081:33;3065:49;;3139:2;3129:8;3126:16;3123:36;;;3155:1;3152;3145:12;3123:36;3192:47;3235:3;3224:8;3213:9;3209:24;3192:47;:::i;:::-;3186:3;3179:5;3175:15;3168:72;3301:3;3290:9;3286:19;3273:33;3267:3;3260:5;3256:15;3249:58;3368:3;3357:9;3353:19;3340:33;3334:3;3327:5;3323:15;3316:58;3393:3;3383:13;;3428:38;3462:2;3451:9;3447:18;3428:38;:::i;:::-;3423:2;3416:5;3412:14;3405:62;3486:3;3476:13;;3542:2;3531:9;3527:18;3514:32;3571:2;3561:8;3558:16;3555:36;;;3587:1;3584;3577:12;3555:36;3623:47;3666:3;3655:8;3644:9;3640:24;3623:47;:::i;:::-;3618:2;3611:5;3607:14;3600:71;;;;3690:3;3725:37;3758:2;3747:9;3743:18;3725:37;:::i;:::-;3709:14;;;3702:61;3782:3;3817:36;3834:18;;;3817:36;:::i;:::-;3801:14;;;3794:60;3873:3;3921:18;;;3908:32;3892:14;;;3885:56;3960:3;3995:37;4013:18;;;3995:37;:::i;:::-;3979:14;;;3972:61;4052:3;4087:37;4105:18;;;4087:37;:::i;:::-;4071:14;;;4064:61;4144:3;4179:37;4197:18;;;4179:37;:::i;:::-;4163:14;;;4156:61;4237:3;4273:38;4291:19;;;4273:38;:::i;:::-;4256:15;;;4249:63;4332:3;4368:36;4384:19;;;4368:36;:::i;:::-;4351:15;;;4344:61;4355:5;2406:2005;-1:-1:-1;;2406:2005:32:o;4416:420::-;4513:6;4521;4574:2;4562:9;4553:7;4549:23;4545:32;4542:52;;;4590:1;4587;4580:12;4542:52;4617:23;;-1:-1:-1;;;;;4652:30:32;;4649:50;;;4695:1;4692;4685:12;4649:50;4718:61;4771:7;4762:6;4751:9;4747:22;4718:61;:::i;:::-;4708:71;4826:2;4811:18;;;;4798:32;;-1:-1:-1;;;;4416:420:32:o;4841:352::-;4929:6;4982:2;4970:9;4961:7;4957:23;4953:32;4950:52;;;4998:1;4995;4988:12;4950:52;5025:23;;-1:-1:-1;;;;;5060:30:32;;5057:50;;;5103:1;5100;5093:12;5057:50;5126:61;5179:7;5170:6;5159:9;5155:22;5126:61;:::i;:::-;5116:71;4841:352;-1:-1:-1;;;;4841:352:32:o;5198:422::-;5239:3;5277:5;5271:12;5304:6;5299:3;5292:19;5329:1;5339:162;5353:6;5350:1;5347:13;5339:162;;;5415:4;5471:13;;;5467:22;;5461:29;5443:11;;;5439:20;;5432:59;5368:12;5339:162;;;5343:3;5546:1;5539:4;5530:6;5525:3;5521:16;5517:27;5510:38;5609:4;5602:2;5598:7;5593:2;5585:6;5581:15;5577:29;5572:3;5568:39;5564:50;5557:57;;;5198:422;;;;:::o;5625:225::-;5780:2;5769:9;5762:21;5743:4;5800:44;5840:2;5829:9;5825:18;5817:6;5800:44;:::i;:::-;5792:52;5625:225;-1:-1:-1;;;5625:225:32:o;5855:2035::-;5944:6;5997:2;5985:9;5976:7;5972:23;5968:32;5965:52;;;6013:1;6010;6003:12;5965:52;6040:23;;-1:-1:-1;;;;;6112:14:32;;;6109:34;;;6139:1;6136;6129:12;6109:34;6162:22;;;;6218:6;6200:16;;;6196:29;6193:49;;;6238:1;6235;6228:12;6193:49;6264:17;;:::i;:::-;6304:22;6323:2;6304:22;:::i;:::-;6297:5;6290:37;6359:31;6386:2;6382;6378:11;6359:31;:::i;:::-;6354:2;6347:5;6343:14;6336:55;6437:2;6433;6429:11;6416:25;6466:2;6456:8;6453:16;6450:36;;;6482:1;6479;6472:12;6450:36;6518:44;6554:7;6543:8;6539:2;6535:17;6518:44;:::i;:::-;6513:2;6506:5;6502:14;6495:68;;6595:31;6622:2;6618;6614:11;6595:31;:::i;:::-;6590:2;6583:5;6579:14;6572:55;6673:3;6669:2;6665:12;6652:26;6703:2;6693:8;6690:16;6687:36;;;6719:1;6716;6709:12;6687:36;6756:44;6792:7;6781:8;6777:2;6773:17;6756:44;:::i;:::-;6750:3;6743:5;6739:15;6732:69;;6855:3;6851:2;6847:12;6834:26;6828:3;6821:5;6817:15;6810:51;6915:3;6911:2;6907:12;6894:26;6888:3;6881:5;6877:15;6870:51;6954:30;6979:3;6975:2;6971:12;6954:30;:::i;:::-;6948:3;6941:5;6937:15;6930:55;7004:3;7053:2;7049;7045:11;7032:25;7082:2;7072:8;7069:16;7066:36;;;7098:1;7095;7088:12;7066:36;7134:44;7170:7;7159:8;7155:2;7151:17;7134:44;:::i;:::-;7129:2;7122:5;7118:14;7111:68;;;7198:3;7188:13;;7254:2;7250;7246:11;7233:25;7228:2;7221:5;7217:14;7210:49;7278:3;7268:13;;7313:30;7339:2;7335;7331:11;7313:30;:::i;:::-;7308:2;7301:5;7297:14;7290:54;7363:3;7353:13;;7398:30;7424:2;7420;7416:11;7398:30;:::i;:::-;7393:2;7386:5;7382:14;7375:54;7448:3;7438:13;;7483:30;7509:2;7505;7501:11;7483:30;:::i;:::-;7478:2;7471:5;7467:14;7460:54;7533:3;7523:13;;7568:30;7594:2;7590;7586:11;7568:30;:::i;:::-;7563:2;7556:5;7552:14;7545:54;7618:3;7608:13;;7653:30;7679:2;7675;7671:11;7653:30;:::i;:::-;7648:2;7641:5;7637:14;7630:54;7704:3;7693:14;;7740:31;7766:3;7762:2;7758:12;7740:31;:::i;:::-;7734:3;7727:5;7723:15;7716:56;7792:3;7781:14;;7828:31;7854:3;7850:2;7846:12;7828:31;:::i;:::-;7811:15;;;7804:56;;;;7815:5;5855:2035;-1:-1:-1;;;;5855:2035:32:o;7895:127::-;7956:10;7951:3;7947:20;7944:1;7937:31;7987:4;7984:1;7977:15;8011:4;8008:1;8001:15;8027:125;8092:9;;;8113:10;;;8110:36;;;8126:18;;:::i;:::-;8027:125;;;;:::o;8157:217::-;8197:1;8223;8213:132;;8267:10;8262:3;8258:20;8255:1;8248:31;8302:4;8299:1;8292:15;8330:4;8327:1;8320:15;8213:132;-1:-1:-1;8359:9:32;;8157:217::o;8379:128::-;8446:9;;;8467:11;;;8464:37;;;8481:18;;:::i;8846:377::-;9039:2;9028:9;9021:21;9002:4;9065:44;9105:2;9094:9;9090:18;9082:6;9065:44;:::i;:::-;9157:9;9149:6;9145:22;9140:2;9129:9;9125:18;9118:50;9185:32;9210:6;9202;9185:32;:::i;:::-;9177:40;8846:377;-1:-1:-1;;;;;8846:377:32:o;9228:1021::-;-1:-1:-1;;;;;;9655:36:32;;9637:55;;-1:-1:-1;;;;;9766:15:32;;;9761:2;9746:18;;9739:43;9818:15;;;9813:2;9798:18;;9791:43;9625:3;9679:2;9850:18;;9843:30;;;9596:4;;9896:44;9921:18;;;9913:6;9896:44;:::i;:::-;9882:58;;9989:2;9981:6;9977:15;9971:3;9960:9;9956:19;9949:44;10042:9;10034:6;10030:22;10024:3;10013:9;10009:19;10002:51;10070:32;10095:6;10087;10070:32;:::i;:::-;10133:3;10118:19;;10111:35;;;;10177:3;10162:19;;10155:35;;;;-1:-1:-1;;10227:15:32;;10221:3;10206:19;;;10199:44;10062:40;9228:1021;-1:-1:-1;;;;;;9228:1021:32:o;10254:901::-;10568:4;10597:3;10627:2;10616:9;10609:21;10647:44;10687:2;10676:9;10672:18;10664:6;10647:44;:::i;:::-;10710:10;10756:15;;;10751:2;10736:18;;10729:43;10819:1;10808:21;;;;10803:2;10788:18;;10781:49;-1:-1:-1;;10861:2:32;10846:18;;10839:34;;;;10910:15;;;10904:3;10889:19;;10882:44;10963:15;;;10957:3;10942:19;;10935:44;11016:15;;;11010:3;10995:19;;10988:44;11081:6;11069:19;;;11063:3;11048:19;;11041:48;11133:14;;11126:22;11120:3;11105:19;;;11098:51;;;;10808:21;10639:52;-1:-1:-1;10254:901:32:o;11160:1066::-;-1:-1:-1;;;;;11623:15:32;;;11605:34;;11675:15;;;11670:2;11655:18;;11648:43;11555:3;11722:2;11707:18;;11700:30;;;11526:4;;11753:44;11778:18;;;11770:6;11753:44;:::i;:::-;11833:15;;;11828:2;11813:18;;11806:43;11886:22;;;11880:3;11865:19;;11858:51;11739:58;-1:-1:-1;11932:32:32;11739:58;11949:6;11932:32;:::i;:::-;11918:46;;12001:6;11995:3;11984:9;11980:19;11973:35;12045:6;12039:3;12028:9;12024:19;12017:35;12103:6;12100:1;12089:21;12083:3;12072:9;12068:19;12061:50;12160:9;12152:6;12148:22;12142:3;12131:9;12127:19;12120:51;12188:32;12213:6;12205;12188:32;:::i;:::-;12180:40;11160:1066;-1:-1:-1;;;;;;;;;;;;11160:1066:32:o", "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nlibrary Quotes {\n struct PeginQuote {\n bytes20 fedBtcAddress;\n address lbcAddress;\n address liquidityProviderRskAddress;\n bytes btcRefundAddress;\n address payable rskRefundAddress;\n bytes liquidityProviderBtcAddress;\n uint256 callFee;\n uint256 penaltyFee;\n address contractAddress;\n bytes data;\n uint32 gasLimit;\n int64 nonce;\n uint256 value;\n uint32 agreementTimestamp;\n uint32 timeForDeposit;\n uint32 callTime;\n uint16 depositConfirmations;\n bool callOnRegister;\n }\n\n struct PegOutQuote {\n address lbcAddress;\n address lpRskAddress;\n bytes btcRefundAddress;\n address rskRefundAddress;\n bytes lpBtcAddress;\n uint256 callFee;\n uint256 penaltyFee;\n int64 nonce;\n bytes deposityAddress;\n uint256 value;\n uint32 agreementTimestamp;\n uint32 depositDateLimit;\n uint16 depositConfirmations;\n uint16 transferConfirmations;\n uint32 transferTime;\n uint32 expireDate;\n uint32 expireBlock;\n }\n\n function encodeQuote(\n PeginQuote memory quote\n ) external pure returns (bytes memory) {\n // Encode in two parts because abi.encode cannot take more than 12 parameters due to stack depth limits.\n return abi.encode(encodePart1(quote), encodePart2(quote));\n }\n\n function encodePegOutQuote(\n PegOutQuote memory quote\n ) external pure returns (bytes memory) {\n // Encode in two parts because abi.encode cannot take more than 12 parameters due to stack depth limits.\n return abi.encode(encodePegOutPart1(quote), encodePegOutPart2(quote));\n }\n\n function encodePart1(\n PeginQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.fedBtcAddress,\n quote.lbcAddress,\n quote.liquidityProviderRskAddress,\n quote.btcRefundAddress,\n quote.rskRefundAddress,\n quote.liquidityProviderBtcAddress,\n quote.callFee,\n quote.penaltyFee,\n quote.contractAddress\n );\n }\n\n function encodePart2(\n PeginQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.data,\n quote.gasLimit,\n quote.nonce,\n quote.value,\n quote.agreementTimestamp,\n quote.timeForDeposit,\n quote.callTime,\n quote.depositConfirmations,\n quote.callOnRegister\n );\n }\n\n function encodePegOutPart1(\n PegOutQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.lbcAddress,\n quote.lpRskAddress,\n quote.btcRefundAddress,\n quote.rskRefundAddress,\n quote.lpBtcAddress,\n quote.callFee,\n quote.penaltyFee,\n quote.nonce,\n quote.deposityAddress\n );\n }\n\n function encodePegOutPart2(\n PegOutQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.value,\n quote.agreementTimestamp,\n quote.depositDateLimit,\n quote.depositConfirmations,\n quote.transferConfirmations,\n quote.transferTime,\n quote.expireDate,\n quote.expireBlock\n );\n }\n\n function checkAgreedAmount(\n PeginQuote memory quote,\n uint transferredAmount\n ) external pure {\n uint agreedAmount = quote.value + quote.callFee;\n uint delta = agreedAmount / 10000;\n // transferred amount should not be lower than (agreed amount - delta),\n // where delta is intended to tackle rounding problems\n require(\n transferredAmount >= agreedAmount - delta,\n \"LBC057\"\n );\n }\n\n}", - "sourcePath": "/Users/guilhermesoares/WebstormProjects/Rootstock/liquidity-bridge-contract/contracts/Quotes.sol", + "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/Quotes.sol", "ast": { "absolutePath": "project:/contracts/Quotes.sol", "exportedSymbols": { "Quotes": [ - 10556 + 11152 ] }, - "id": 10557, + "id": 11153, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 10291, + "id": 10887, "literals": [ "solidity", "^", @@ -11488,9 +11488,9 @@ "contractDependencies": [], "contractKind": "library", "fullyImplemented": true, - "id": 10556, + "id": 11152, "linearizedBaseContracts": [ - 10556 + 11152 ], "name": "Quotes", "nameLocation": "66:6:27", @@ -11498,16 +11498,16 @@ "nodes": [ { "canonicalName": "Quotes.PeginQuote", - "id": 10328, + "id": 10924, "members": [ { "constant": false, - "id": 10293, + "id": 10889, "mutability": "mutable", "name": "fedBtcAddress", "nameLocation": "115:13:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "107:21:27", "stateVariable": false, "storageLocation": "default", @@ -11516,7 +11516,7 @@ "typeString": "bytes20" }, "typeName": { - "id": 10292, + "id": 10888, "name": "bytes20", "nodeType": "ElementaryTypeName", "src": "107:7:27", @@ -11529,12 +11529,12 @@ }, { "constant": false, - "id": 10295, + "id": 10891, "mutability": "mutable", "name": "lbcAddress", "nameLocation": "146:10:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "138:18:27", "stateVariable": false, "storageLocation": "default", @@ -11543,7 +11543,7 @@ "typeString": "address" }, "typeName": { - "id": 10294, + "id": 10890, "name": "address", "nodeType": "ElementaryTypeName", "src": "138:7:27", @@ -11557,12 +11557,12 @@ }, { "constant": false, - "id": 10297, + "id": 10893, "mutability": "mutable", "name": "liquidityProviderRskAddress", "nameLocation": "174:27:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "166:35:27", "stateVariable": false, "storageLocation": "default", @@ -11571,7 +11571,7 @@ "typeString": "address" }, "typeName": { - "id": 10296, + "id": 10892, "name": "address", "nodeType": "ElementaryTypeName", "src": "166:7:27", @@ -11585,12 +11585,12 @@ }, { "constant": false, - "id": 10299, + "id": 10895, "mutability": "mutable", "name": "btcRefundAddress", "nameLocation": "217:16:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "211:22:27", "stateVariable": false, "storageLocation": "default", @@ -11599,7 +11599,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10298, + "id": 10894, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "211:5:27", @@ -11612,12 +11612,12 @@ }, { "constant": false, - "id": 10301, + "id": 10897, "mutability": "mutable", "name": "rskRefundAddress", "nameLocation": "259:16:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "243:32:27", "stateVariable": false, "storageLocation": "default", @@ -11626,7 +11626,7 @@ "typeString": "address payable" }, "typeName": { - "id": 10300, + "id": 10896, "name": "address", "nodeType": "ElementaryTypeName", "src": "243:15:27", @@ -11640,12 +11640,12 @@ }, { "constant": false, - "id": 10303, + "id": 10899, "mutability": "mutable", "name": "liquidityProviderBtcAddress", "nameLocation": "291:27:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "285:33:27", "stateVariable": false, "storageLocation": "default", @@ -11654,7 +11654,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10302, + "id": 10898, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "285:5:27", @@ -11667,12 +11667,12 @@ }, { "constant": false, - "id": 10305, + "id": 10901, "mutability": "mutable", "name": "callFee", "nameLocation": "336:7:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "328:15:27", "stateVariable": false, "storageLocation": "default", @@ -11681,7 +11681,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10304, + "id": 10900, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "328:7:27", @@ -11694,12 +11694,12 @@ }, { "constant": false, - "id": 10307, + "id": 10903, "mutability": "mutable", "name": "penaltyFee", "nameLocation": "361:10:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "353:18:27", "stateVariable": false, "storageLocation": "default", @@ -11708,7 +11708,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10306, + "id": 10902, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "353:7:27", @@ -11721,12 +11721,12 @@ }, { "constant": false, - "id": 10309, + "id": 10905, "mutability": "mutable", "name": "contractAddress", "nameLocation": "389:15:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "381:23:27", "stateVariable": false, "storageLocation": "default", @@ -11735,7 +11735,7 @@ "typeString": "address" }, "typeName": { - "id": 10308, + "id": 10904, "name": "address", "nodeType": "ElementaryTypeName", "src": "381:7:27", @@ -11749,12 +11749,12 @@ }, { "constant": false, - "id": 10311, + "id": 10907, "mutability": "mutable", "name": "data", "nameLocation": "420:4:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "414:10:27", "stateVariable": false, "storageLocation": "default", @@ -11763,7 +11763,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10310, + "id": 10906, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "414:5:27", @@ -11776,12 +11776,12 @@ }, { "constant": false, - "id": 10313, + "id": 10909, "mutability": "mutable", "name": "gasLimit", "nameLocation": "441:8:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "434:15:27", "stateVariable": false, "storageLocation": "default", @@ -11790,7 +11790,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10312, + "id": 10908, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "434:6:27", @@ -11803,12 +11803,12 @@ }, { "constant": false, - "id": 10315, + "id": 10911, "mutability": "mutable", "name": "nonce", "nameLocation": "465:5:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "459:11:27", "stateVariable": false, "storageLocation": "default", @@ -11817,7 +11817,7 @@ "typeString": "int64" }, "typeName": { - "id": 10314, + "id": 10910, "name": "int64", "nodeType": "ElementaryTypeName", "src": "459:5:27", @@ -11830,12 +11830,12 @@ }, { "constant": false, - "id": 10317, + "id": 10913, "mutability": "mutable", "name": "value", "nameLocation": "488:5:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "480:13:27", "stateVariable": false, "storageLocation": "default", @@ -11844,7 +11844,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10316, + "id": 10912, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "480:7:27", @@ -11857,12 +11857,12 @@ }, { "constant": false, - "id": 10319, + "id": 10915, "mutability": "mutable", "name": "agreementTimestamp", "nameLocation": "510:18:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "503:25:27", "stateVariable": false, "storageLocation": "default", @@ -11871,7 +11871,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10318, + "id": 10914, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "503:6:27", @@ -11884,12 +11884,12 @@ }, { "constant": false, - "id": 10321, + "id": 10917, "mutability": "mutable", "name": "timeForDeposit", "nameLocation": "545:14:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "538:21:27", "stateVariable": false, "storageLocation": "default", @@ -11898,7 +11898,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10320, + "id": 10916, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "538:6:27", @@ -11911,12 +11911,12 @@ }, { "constant": false, - "id": 10323, + "id": 10919, "mutability": "mutable", "name": "callTime", "nameLocation": "576:8:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "569:15:27", "stateVariable": false, "storageLocation": "default", @@ -11925,7 +11925,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10322, + "id": 10918, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "569:6:27", @@ -11938,12 +11938,12 @@ }, { "constant": false, - "id": 10325, + "id": 10921, "mutability": "mutable", "name": "depositConfirmations", "nameLocation": "601:20:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "594:27:27", "stateVariable": false, "storageLocation": "default", @@ -11952,7 +11952,7 @@ "typeString": "uint16" }, "typeName": { - "id": 10324, + "id": 10920, "name": "uint16", "nodeType": "ElementaryTypeName", "src": "594:6:27", @@ -11965,12 +11965,12 @@ }, { "constant": false, - "id": 10327, + "id": 10923, "mutability": "mutable", "name": "callOnRegister", "nameLocation": "636:14:27", "nodeType": "VariableDeclaration", - "scope": 10328, + "scope": 10924, "src": "631:19:27", "stateVariable": false, "storageLocation": "default", @@ -11979,7 +11979,7 @@ "typeString": "bool" }, "typeName": { - "id": 10326, + "id": 10922, "name": "bool", "nodeType": "ElementaryTypeName", "src": "631:4:27", @@ -11994,22 +11994,22 @@ "name": "PeginQuote", "nameLocation": "86:10:27", "nodeType": "StructDefinition", - "scope": 10556, + "scope": 11152, "src": "79:578:27", "visibility": "public" }, { "canonicalName": "Quotes.PegOutQuote", - "id": 10363, + "id": 10959, "members": [ { "constant": false, - "id": 10330, + "id": 10926, "mutability": "mutable", "name": "lbcAddress", "nameLocation": "700:10:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "692:18:27", "stateVariable": false, "storageLocation": "default", @@ -12018,7 +12018,7 @@ "typeString": "address" }, "typeName": { - "id": 10329, + "id": 10925, "name": "address", "nodeType": "ElementaryTypeName", "src": "692:7:27", @@ -12032,12 +12032,12 @@ }, { "constant": false, - "id": 10332, + "id": 10928, "mutability": "mutable", "name": "lpRskAddress", "nameLocation": "728:12:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "720:20:27", "stateVariable": false, "storageLocation": "default", @@ -12046,7 +12046,7 @@ "typeString": "address" }, "typeName": { - "id": 10331, + "id": 10927, "name": "address", "nodeType": "ElementaryTypeName", "src": "720:7:27", @@ -12060,12 +12060,12 @@ }, { "constant": false, - "id": 10334, + "id": 10930, "mutability": "mutable", "name": "btcRefundAddress", "nameLocation": "756:16:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "750:22:27", "stateVariable": false, "storageLocation": "default", @@ -12074,7 +12074,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10333, + "id": 10929, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "750:5:27", @@ -12087,12 +12087,12 @@ }, { "constant": false, - "id": 10336, + "id": 10932, "mutability": "mutable", "name": "rskRefundAddress", "nameLocation": "790:16:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "782:24:27", "stateVariable": false, "storageLocation": "default", @@ -12101,7 +12101,7 @@ "typeString": "address" }, "typeName": { - "id": 10335, + "id": 10931, "name": "address", "nodeType": "ElementaryTypeName", "src": "782:7:27", @@ -12115,12 +12115,12 @@ }, { "constant": false, - "id": 10338, + "id": 10934, "mutability": "mutable", "name": "lpBtcAddress", "nameLocation": "822:12:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "816:18:27", "stateVariable": false, "storageLocation": "default", @@ -12129,7 +12129,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10337, + "id": 10933, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "816:5:27", @@ -12142,12 +12142,12 @@ }, { "constant": false, - "id": 10340, + "id": 10936, "mutability": "mutable", "name": "callFee", "nameLocation": "852:7:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "844:15:27", "stateVariable": false, "storageLocation": "default", @@ -12156,7 +12156,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10339, + "id": 10935, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "844:7:27", @@ -12169,12 +12169,12 @@ }, { "constant": false, - "id": 10342, + "id": 10938, "mutability": "mutable", "name": "penaltyFee", "nameLocation": "877:10:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "869:18:27", "stateVariable": false, "storageLocation": "default", @@ -12183,7 +12183,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10341, + "id": 10937, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "869:7:27", @@ -12196,12 +12196,12 @@ }, { "constant": false, - "id": 10344, + "id": 10940, "mutability": "mutable", "name": "nonce", "nameLocation": "903:5:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "897:11:27", "stateVariable": false, "storageLocation": "default", @@ -12210,7 +12210,7 @@ "typeString": "int64" }, "typeName": { - "id": 10343, + "id": 10939, "name": "int64", "nodeType": "ElementaryTypeName", "src": "897:5:27", @@ -12223,12 +12223,12 @@ }, { "constant": false, - "id": 10346, + "id": 10942, "mutability": "mutable", "name": "deposityAddress", "nameLocation": "924:15:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "918:21:27", "stateVariable": false, "storageLocation": "default", @@ -12237,7 +12237,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10345, + "id": 10941, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "918:5:27", @@ -12250,12 +12250,12 @@ }, { "constant": false, - "id": 10348, + "id": 10944, "mutability": "mutable", "name": "value", "nameLocation": "957:5:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "949:13:27", "stateVariable": false, "storageLocation": "default", @@ -12264,7 +12264,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10347, + "id": 10943, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "949:7:27", @@ -12277,12 +12277,12 @@ }, { "constant": false, - "id": 10350, + "id": 10946, "mutability": "mutable", "name": "agreementTimestamp", "nameLocation": "979:18:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "972:25:27", "stateVariable": false, "storageLocation": "default", @@ -12291,7 +12291,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10349, + "id": 10945, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "972:6:27", @@ -12304,12 +12304,12 @@ }, { "constant": false, - "id": 10352, + "id": 10948, "mutability": "mutable", "name": "depositDateLimit", "nameLocation": "1014:16:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "1007:23:27", "stateVariable": false, "storageLocation": "default", @@ -12318,7 +12318,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10351, + "id": 10947, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "1007:6:27", @@ -12331,12 +12331,12 @@ }, { "constant": false, - "id": 10354, + "id": 10950, "mutability": "mutable", "name": "depositConfirmations", "nameLocation": "1047:20:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "1040:27:27", "stateVariable": false, "storageLocation": "default", @@ -12345,7 +12345,7 @@ "typeString": "uint16" }, "typeName": { - "id": 10353, + "id": 10949, "name": "uint16", "nodeType": "ElementaryTypeName", "src": "1040:6:27", @@ -12358,12 +12358,12 @@ }, { "constant": false, - "id": 10356, + "id": 10952, "mutability": "mutable", "name": "transferConfirmations", "nameLocation": "1084:21:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "1077:28:27", "stateVariable": false, "storageLocation": "default", @@ -12372,7 +12372,7 @@ "typeString": "uint16" }, "typeName": { - "id": 10355, + "id": 10951, "name": "uint16", "nodeType": "ElementaryTypeName", "src": "1077:6:27", @@ -12385,12 +12385,12 @@ }, { "constant": false, - "id": 10358, + "id": 10954, "mutability": "mutable", "name": "transferTime", "nameLocation": "1122:12:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "1115:19:27", "stateVariable": false, "storageLocation": "default", @@ -12399,7 +12399,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10357, + "id": 10953, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "1115:6:27", @@ -12412,12 +12412,12 @@ }, { "constant": false, - "id": 10360, + "id": 10956, "mutability": "mutable", "name": "expireDate", "nameLocation": "1151:10:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "1144:17:27", "stateVariable": false, "storageLocation": "default", @@ -12426,7 +12426,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10359, + "id": 10955, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "1144:6:27", @@ -12439,12 +12439,12 @@ }, { "constant": false, - "id": 10362, + "id": 10958, "mutability": "mutable", "name": "expireBlock", "nameLocation": "1178:11:27", "nodeType": "VariableDeclaration", - "scope": 10363, + "scope": 10959, "src": "1171:18:27", "stateVariable": false, "storageLocation": "default", @@ -12453,7 +12453,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10361, + "id": 10957, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "1171:6:27", @@ -12468,13 +12468,13 @@ "name": "PegOutQuote", "nameLocation": "670:11:27", "nodeType": "StructDefinition", - "scope": 10556, + "scope": 11152, "src": "663:533:27", "visibility": "public" }, { "body": { - "id": 10381, + "id": 10977, "nodeType": "Block", "src": "1299:187:27", "statements": [ @@ -12484,14 +12484,14 @@ { "arguments": [ { - "id": 10374, + "id": 10970, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10366, + "referencedDeclaration": 10962, "src": "1452:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } } @@ -12499,22 +12499,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } ], - "id": 10373, + "id": 10969, "name": "encodePart1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10432, + "referencedDeclaration": 11028, "src": "1440:11:27", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PeginQuote_$10328_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeIdentifier": "t_function_internal_pure$_t_struct$_PeginQuote_$10924_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (struct Quotes.PeginQuote memory) pure returns (bytes memory)" } }, - "id": 10375, + "id": 10971, "isConstant": false, "isLValue": false, "isPure": false, @@ -12533,14 +12533,14 @@ { "arguments": [ { - "id": 10377, + "id": 10973, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10366, + "referencedDeclaration": 10962, "src": "1472:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } } @@ -12548,22 +12548,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } ], - "id": 10376, + "id": 10972, "name": "encodePart2", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10463, + "referencedDeclaration": 11059, "src": "1460:11:27", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PeginQuote_$10328_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeIdentifier": "t_function_internal_pure$_t_struct$_PeginQuote_$10924_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (struct Quotes.PeginQuote memory) pure returns (bytes memory)" } }, - "id": 10378, + "id": 10974, "isConstant": false, "isLValue": false, "isPure": false, @@ -12592,7 +12592,7 @@ } ], "expression": { - "id": 10371, + "id": 10967, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -12603,7 +12603,7 @@ "typeString": "abi" } }, - "id": 10372, + "id": 10968, "isConstant": false, "isLValue": false, "isPure": true, @@ -12617,7 +12617,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 10379, + "id": 10975, "isConstant": false, "isLValue": false, "isPure": false, @@ -12633,15 +12633,15 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 10370, - "id": 10380, + "functionReturnParameters": 10966, + "id": 10976, "nodeType": "Return", "src": "1422:57:27" } ] }, "functionSelector": "3f7acc2c", - "id": 10382, + "id": 10978, "implemented": true, "kind": "function", "modifiers": [], @@ -12649,41 +12649,41 @@ "nameLocation": "1211:11:27", "nodeType": "FunctionDefinition", "parameters": { - "id": 10367, + "id": 10963, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10366, + "id": 10962, "mutability": "mutable", "name": "quote", "nameLocation": "1250:5:27", "nodeType": "VariableDeclaration", - "scope": 10382, + "scope": 10978, "src": "1232:23:27", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote" }, "typeName": { - "id": 10365, + "id": 10961, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10364, + "id": 10960, "name": "PeginQuote", "nameLocations": [ "1232:10:27" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "1232:10:27" }, - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "1232:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_storage_ptr", "typeString": "struct Quotes.PeginQuote" } }, @@ -12693,17 +12693,17 @@ "src": "1222:39:27" }, "returnParameters": { - "id": 10370, + "id": 10966, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10369, + "id": 10965, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10382, + "scope": 10978, "src": "1285:12:27", "stateVariable": false, "storageLocation": "memory", @@ -12712,7 +12712,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10368, + "id": 10964, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1285:5:27", @@ -12726,7 +12726,7 @@ ], "src": "1284:14:27" }, - "scope": 10556, + "scope": 11152, "src": "1202:284:27", "stateMutability": "pure", "virtual": false, @@ -12734,7 +12734,7 @@ }, { "body": { - "id": 10400, + "id": 10996, "nodeType": "Block", "src": "1596:199:27", "statements": [ @@ -12744,14 +12744,14 @@ { "arguments": [ { - "id": 10393, + "id": 10989, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10385, + "referencedDeclaration": 10981, "src": "1755:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } } @@ -12759,22 +12759,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } ], - "id": 10392, + "id": 10988, "name": "encodePegOutPart1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10494, + "referencedDeclaration": 11090, "src": "1737:17:27", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PegOutQuote_$10363_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeIdentifier": "t_function_internal_pure$_t_struct$_PegOutQuote_$10959_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (struct Quotes.PegOutQuote memory) pure returns (bytes memory)" } }, - "id": 10394, + "id": 10990, "isConstant": false, "isLValue": false, "isPure": false, @@ -12793,14 +12793,14 @@ { "arguments": [ { - "id": 10396, + "id": 10992, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10385, + "referencedDeclaration": 10981, "src": "1781:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } } @@ -12808,22 +12808,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } ], - "id": 10395, + "id": 10991, "name": "encodePegOutPart2", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10523, + "referencedDeclaration": 11119, "src": "1763:17:27", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PegOutQuote_$10363_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeIdentifier": "t_function_internal_pure$_t_struct$_PegOutQuote_$10959_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (struct Quotes.PegOutQuote memory) pure returns (bytes memory)" } }, - "id": 10397, + "id": 10993, "isConstant": false, "isLValue": false, "isPure": false, @@ -12852,7 +12852,7 @@ } ], "expression": { - "id": 10390, + "id": 10986, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -12863,7 +12863,7 @@ "typeString": "abi" } }, - "id": 10391, + "id": 10987, "isConstant": false, "isLValue": false, "isPure": true, @@ -12877,7 +12877,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 10398, + "id": 10994, "isConstant": false, "isLValue": false, "isPure": false, @@ -12893,15 +12893,15 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 10389, - "id": 10399, + "functionReturnParameters": 10985, + "id": 10995, "nodeType": "Return", "src": "1719:69:27" } ] }, "functionSelector": "fb19b88b", - "id": 10401, + "id": 10997, "implemented": true, "kind": "function", "modifiers": [], @@ -12909,41 +12909,41 @@ "nameLocation": "1501:17:27", "nodeType": "FunctionDefinition", "parameters": { - "id": 10386, + "id": 10982, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10385, + "id": 10981, "mutability": "mutable", "name": "quote", "nameLocation": "1547:5:27", "nodeType": "VariableDeclaration", - "scope": 10401, + "scope": 10997, "src": "1528:24:27", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote" }, "typeName": { - "id": 10384, + "id": 10980, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10383, + "id": 10979, "name": "PegOutQuote", "nameLocations": [ "1528:11:27" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "1528:11:27" }, - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "1528:11:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote" } }, @@ -12953,17 +12953,17 @@ "src": "1518:40:27" }, "returnParameters": { - "id": 10389, + "id": 10985, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10388, + "id": 10984, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10401, + "scope": 10997, "src": "1582:12:27", "stateVariable": false, "storageLocation": "memory", @@ -12972,7 +12972,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10387, + "id": 10983, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1582:5:27", @@ -12986,7 +12986,7 @@ ], "src": "1581:14:27" }, - "scope": 10556, + "scope": 11152, "src": "1492:303:27", "stateMutability": "pure", "virtual": false, @@ -12994,7 +12994,7 @@ }, { "body": { - "id": 10431, + "id": 11027, "nodeType": "Block", "src": "1897:417:27", "statements": [ @@ -13003,18 +13003,18 @@ "arguments": [ { "expression": { - "id": 10411, + "id": 11007, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10404, + "referencedDeclaration": 11000, "src": "1954:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10412, + "id": 11008, "isConstant": false, "isLValue": true, "isPure": false, @@ -13022,7 +13022,7 @@ "memberLocation": "1960:13:27", "memberName": "fedBtcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10293, + "referencedDeclaration": 10889, "src": "1954:19:27", "typeDescriptions": { "typeIdentifier": "t_bytes20", @@ -13031,18 +13031,18 @@ }, { "expression": { - "id": 10413, + "id": 11009, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10404, + "referencedDeclaration": 11000, "src": "1991:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10414, + "id": 11010, "isConstant": false, "isLValue": true, "isPure": false, @@ -13050,7 +13050,7 @@ "memberLocation": "1997:10:27", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10295, + "referencedDeclaration": 10891, "src": "1991:16:27", "typeDescriptions": { "typeIdentifier": "t_address", @@ -13059,18 +13059,18 @@ }, { "expression": { - "id": 10415, + "id": 11011, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10404, + "referencedDeclaration": 11000, "src": "2025:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10416, + "id": 11012, "isConstant": false, "isLValue": true, "isPure": false, @@ -13078,7 +13078,7 @@ "memberLocation": "2031:27:27", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10297, + "referencedDeclaration": 10893, "src": "2025:33:27", "typeDescriptions": { "typeIdentifier": "t_address", @@ -13087,18 +13087,18 @@ }, { "expression": { - "id": 10417, + "id": 11013, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10404, + "referencedDeclaration": 11000, "src": "2076:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10418, + "id": 11014, "isConstant": false, "isLValue": true, "isPure": false, @@ -13106,7 +13106,7 @@ "memberLocation": "2082:16:27", "memberName": "btcRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10299, + "referencedDeclaration": 10895, "src": "2076:22:27", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -13115,18 +13115,18 @@ }, { "expression": { - "id": 10419, + "id": 11015, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10404, + "referencedDeclaration": 11000, "src": "2116:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10420, + "id": 11016, "isConstant": false, "isLValue": true, "isPure": false, @@ -13134,7 +13134,7 @@ "memberLocation": "2122:16:27", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10301, + "referencedDeclaration": 10897, "src": "2116:22:27", "typeDescriptions": { "typeIdentifier": "t_address_payable", @@ -13143,18 +13143,18 @@ }, { "expression": { - "id": 10421, + "id": 11017, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10404, + "referencedDeclaration": 11000, "src": "2156:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10422, + "id": 11018, "isConstant": false, "isLValue": true, "isPure": false, @@ -13162,7 +13162,7 @@ "memberLocation": "2162:27:27", "memberName": "liquidityProviderBtcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10303, + "referencedDeclaration": 10899, "src": "2156:33:27", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -13171,18 +13171,18 @@ }, { "expression": { - "id": 10423, + "id": 11019, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10404, + "referencedDeclaration": 11000, "src": "2207:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10424, + "id": 11020, "isConstant": false, "isLValue": true, "isPure": false, @@ -13190,7 +13190,7 @@ "memberLocation": "2213:7:27", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10305, + "referencedDeclaration": 10901, "src": "2207:13:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -13199,18 +13199,18 @@ }, { "expression": { - "id": 10425, + "id": 11021, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10404, + "referencedDeclaration": 11000, "src": "2238:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10426, + "id": 11022, "isConstant": false, "isLValue": true, "isPure": false, @@ -13218,7 +13218,7 @@ "memberLocation": "2244:10:27", "memberName": "penaltyFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10307, + "referencedDeclaration": 10903, "src": "2238:16:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -13227,18 +13227,18 @@ }, { "expression": { - "id": 10427, + "id": 11023, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10404, + "referencedDeclaration": 11000, "src": "2272:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10428, + "id": 11024, "isConstant": false, "isLValue": true, "isPure": false, @@ -13246,7 +13246,7 @@ "memberLocation": "2278:15:27", "memberName": "contractAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10309, + "referencedDeclaration": 10905, "src": "2272:21:27", "typeDescriptions": { "typeIdentifier": "t_address", @@ -13294,7 +13294,7 @@ } ], "expression": { - "id": 10409, + "id": 11005, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -13305,7 +13305,7 @@ "typeString": "abi" } }, - "id": 10410, + "id": 11006, "isConstant": false, "isLValue": false, "isPure": true, @@ -13319,7 +13319,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 10429, + "id": 11025, "isConstant": false, "isLValue": false, "isPure": false, @@ -13335,14 +13335,14 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 10408, - "id": 10430, + "functionReturnParameters": 11004, + "id": 11026, "nodeType": "Return", "src": "1907:400:27" } ] }, - "id": 10432, + "id": 11028, "implemented": true, "kind": "function", "modifiers": [], @@ -13350,41 +13350,41 @@ "nameLocation": "1810:11:27", "nodeType": "FunctionDefinition", "parameters": { - "id": 10405, + "id": 11001, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10404, + "id": 11000, "mutability": "mutable", "name": "quote", "nameLocation": "1849:5:27", "nodeType": "VariableDeclaration", - "scope": 10432, + "scope": 11028, "src": "1831:23:27", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote" }, "typeName": { - "id": 10403, + "id": 10999, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10402, + "id": 10998, "name": "PeginQuote", "nameLocations": [ "1831:10:27" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "1831:10:27" }, - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "1831:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_storage_ptr", "typeString": "struct Quotes.PeginQuote" } }, @@ -13394,17 +13394,17 @@ "src": "1821:39:27" }, "returnParameters": { - "id": 10408, + "id": 11004, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10407, + "id": 11003, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10432, + "scope": 11028, "src": "1883:12:27", "stateVariable": false, "storageLocation": "memory", @@ -13413,7 +13413,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10406, + "id": 11002, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1883:5:27", @@ -13427,7 +13427,7 @@ ], "src": "1882:14:27" }, - "scope": 10556, + "scope": 11152, "src": "1801:513:27", "stateMutability": "pure", "virtual": false, @@ -13435,7 +13435,7 @@ }, { "body": { - "id": 10462, + "id": 11058, "nodeType": "Block", "src": "2416:372:27", "statements": [ @@ -13444,18 +13444,18 @@ "arguments": [ { "expression": { - "id": 10442, + "id": 11038, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10435, + "referencedDeclaration": 11031, "src": "2473:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10443, + "id": 11039, "isConstant": false, "isLValue": true, "isPure": false, @@ -13463,7 +13463,7 @@ "memberLocation": "2479:4:27", "memberName": "data", "nodeType": "MemberAccess", - "referencedDeclaration": 10311, + "referencedDeclaration": 10907, "src": "2473:10:27", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -13472,18 +13472,18 @@ }, { "expression": { - "id": 10444, + "id": 11040, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10435, + "referencedDeclaration": 11031, "src": "2501:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10445, + "id": 11041, "isConstant": false, "isLValue": true, "isPure": false, @@ -13491,7 +13491,7 @@ "memberLocation": "2507:8:27", "memberName": "gasLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10313, + "referencedDeclaration": 10909, "src": "2501:14:27", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -13500,18 +13500,18 @@ }, { "expression": { - "id": 10446, + "id": 11042, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10435, + "referencedDeclaration": 11031, "src": "2533:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10447, + "id": 11043, "isConstant": false, "isLValue": true, "isPure": false, @@ -13519,7 +13519,7 @@ "memberLocation": "2539:5:27", "memberName": "nonce", "nodeType": "MemberAccess", - "referencedDeclaration": 10315, + "referencedDeclaration": 10911, "src": "2533:11:27", "typeDescriptions": { "typeIdentifier": "t_int64", @@ -13528,18 +13528,18 @@ }, { "expression": { - "id": 10448, + "id": 11044, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10435, + "referencedDeclaration": 11031, "src": "2562:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10449, + "id": 11045, "isConstant": false, "isLValue": true, "isPure": false, @@ -13547,7 +13547,7 @@ "memberLocation": "2568:5:27", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10317, + "referencedDeclaration": 10913, "src": "2562:11:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -13556,18 +13556,18 @@ }, { "expression": { - "id": 10450, + "id": 11046, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10435, + "referencedDeclaration": 11031, "src": "2591:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10451, + "id": 11047, "isConstant": false, "isLValue": true, "isPure": false, @@ -13575,7 +13575,7 @@ "memberLocation": "2597:18:27", "memberName": "agreementTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 10319, + "referencedDeclaration": 10915, "src": "2591:24:27", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -13584,18 +13584,18 @@ }, { "expression": { - "id": 10452, + "id": 11048, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10435, + "referencedDeclaration": 11031, "src": "2633:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10453, + "id": 11049, "isConstant": false, "isLValue": true, "isPure": false, @@ -13603,7 +13603,7 @@ "memberLocation": "2639:14:27", "memberName": "timeForDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 10321, + "referencedDeclaration": 10917, "src": "2633:20:27", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -13612,18 +13612,18 @@ }, { "expression": { - "id": 10454, + "id": 11050, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10435, + "referencedDeclaration": 11031, "src": "2671:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10455, + "id": 11051, "isConstant": false, "isLValue": true, "isPure": false, @@ -13631,7 +13631,7 @@ "memberLocation": "2677:8:27", "memberName": "callTime", "nodeType": "MemberAccess", - "referencedDeclaration": 10323, + "referencedDeclaration": 10919, "src": "2671:14:27", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -13640,18 +13640,18 @@ }, { "expression": { - "id": 10456, + "id": 11052, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10435, + "referencedDeclaration": 11031, "src": "2703:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10457, + "id": 11053, "isConstant": false, "isLValue": true, "isPure": false, @@ -13659,7 +13659,7 @@ "memberLocation": "2709:20:27", "memberName": "depositConfirmations", "nodeType": "MemberAccess", - "referencedDeclaration": 10325, + "referencedDeclaration": 10921, "src": "2703:26:27", "typeDescriptions": { "typeIdentifier": "t_uint16", @@ -13668,18 +13668,18 @@ }, { "expression": { - "id": 10458, + "id": 11054, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10435, + "referencedDeclaration": 11031, "src": "2747:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10459, + "id": 11055, "isConstant": false, "isLValue": true, "isPure": false, @@ -13687,7 +13687,7 @@ "memberLocation": "2753:14:27", "memberName": "callOnRegister", "nodeType": "MemberAccess", - "referencedDeclaration": 10327, + "referencedDeclaration": 10923, "src": "2747:20:27", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -13735,7 +13735,7 @@ } ], "expression": { - "id": 10440, + "id": 11036, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -13746,7 +13746,7 @@ "typeString": "abi" } }, - "id": 10441, + "id": 11037, "isConstant": false, "isLValue": false, "isPure": true, @@ -13760,7 +13760,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 10460, + "id": 11056, "isConstant": false, "isLValue": false, "isPure": false, @@ -13776,14 +13776,14 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 10439, - "id": 10461, + "functionReturnParameters": 11035, + "id": 11057, "nodeType": "Return", "src": "2426:355:27" } ] }, - "id": 10463, + "id": 11059, "implemented": true, "kind": "function", "modifiers": [], @@ -13791,41 +13791,41 @@ "nameLocation": "2329:11:27", "nodeType": "FunctionDefinition", "parameters": { - "id": 10436, + "id": 11032, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10435, + "id": 11031, "mutability": "mutable", "name": "quote", "nameLocation": "2368:5:27", "nodeType": "VariableDeclaration", - "scope": 10463, + "scope": 11059, "src": "2350:23:27", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote" }, "typeName": { - "id": 10434, + "id": 11030, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10433, + "id": 11029, "name": "PeginQuote", "nameLocations": [ "2350:10:27" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "2350:10:27" }, - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "2350:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_storage_ptr", "typeString": "struct Quotes.PeginQuote" } }, @@ -13835,17 +13835,17 @@ "src": "2340:39:27" }, "returnParameters": { - "id": 10439, + "id": 11035, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10438, + "id": 11034, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10463, + "scope": 11059, "src": "2402:12:27", "stateVariable": false, "storageLocation": "memory", @@ -13854,7 +13854,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10437, + "id": 11033, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2402:5:27", @@ -13868,7 +13868,7 @@ ], "src": "2401:14:27" }, - "scope": 10556, + "scope": 11152, "src": "2320:468:27", "stateMutability": "pure", "virtual": false, @@ -13876,7 +13876,7 @@ }, { "body": { - "id": 10493, + "id": 11089, "nodeType": "Block", "src": "2897:379:27", "statements": [ @@ -13885,18 +13885,18 @@ "arguments": [ { "expression": { - "id": 10473, + "id": 11069, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10466, + "referencedDeclaration": 11062, "src": "2954:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10474, + "id": 11070, "isConstant": false, "isLValue": true, "isPure": false, @@ -13904,7 +13904,7 @@ "memberLocation": "2960:10:27", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10330, + "referencedDeclaration": 10926, "src": "2954:16:27", "typeDescriptions": { "typeIdentifier": "t_address", @@ -13913,18 +13913,18 @@ }, { "expression": { - "id": 10475, + "id": 11071, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10466, + "referencedDeclaration": 11062, "src": "2988:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10476, + "id": 11072, "isConstant": false, "isLValue": true, "isPure": false, @@ -13932,7 +13932,7 @@ "memberLocation": "2994:12:27", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10332, + "referencedDeclaration": 10928, "src": "2988:18:27", "typeDescriptions": { "typeIdentifier": "t_address", @@ -13941,18 +13941,18 @@ }, { "expression": { - "id": 10477, + "id": 11073, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10466, + "referencedDeclaration": 11062, "src": "3024:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10478, + "id": 11074, "isConstant": false, "isLValue": true, "isPure": false, @@ -13960,7 +13960,7 @@ "memberLocation": "3030:16:27", "memberName": "btcRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10334, + "referencedDeclaration": 10930, "src": "3024:22:27", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -13969,18 +13969,18 @@ }, { "expression": { - "id": 10479, + "id": 11075, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10466, + "referencedDeclaration": 11062, "src": "3064:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10480, + "id": 11076, "isConstant": false, "isLValue": true, "isPure": false, @@ -13988,7 +13988,7 @@ "memberLocation": "3070:16:27", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10336, + "referencedDeclaration": 10932, "src": "3064:22:27", "typeDescriptions": { "typeIdentifier": "t_address", @@ -13997,18 +13997,18 @@ }, { "expression": { - "id": 10481, + "id": 11077, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10466, + "referencedDeclaration": 11062, "src": "3104:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10482, + "id": 11078, "isConstant": false, "isLValue": true, "isPure": false, @@ -14016,7 +14016,7 @@ "memberLocation": "3110:12:27", "memberName": "lpBtcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10338, + "referencedDeclaration": 10934, "src": "3104:18:27", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -14025,18 +14025,18 @@ }, { "expression": { - "id": 10483, + "id": 11079, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10466, + "referencedDeclaration": 11062, "src": "3140:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10484, + "id": 11080, "isConstant": false, "isLValue": true, "isPure": false, @@ -14044,7 +14044,7 @@ "memberLocation": "3146:7:27", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10340, + "referencedDeclaration": 10936, "src": "3140:13:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14053,18 +14053,18 @@ }, { "expression": { - "id": 10485, + "id": 11081, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10466, + "referencedDeclaration": 11062, "src": "3171:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10486, + "id": 11082, "isConstant": false, "isLValue": true, "isPure": false, @@ -14072,7 +14072,7 @@ "memberLocation": "3177:10:27", "memberName": "penaltyFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10342, + "referencedDeclaration": 10938, "src": "3171:16:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14081,18 +14081,18 @@ }, { "expression": { - "id": 10487, + "id": 11083, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10466, + "referencedDeclaration": 11062, "src": "3205:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10488, + "id": 11084, "isConstant": false, "isLValue": true, "isPure": false, @@ -14100,7 +14100,7 @@ "memberLocation": "3211:5:27", "memberName": "nonce", "nodeType": "MemberAccess", - "referencedDeclaration": 10344, + "referencedDeclaration": 10940, "src": "3205:11:27", "typeDescriptions": { "typeIdentifier": "t_int64", @@ -14109,18 +14109,18 @@ }, { "expression": { - "id": 10489, + "id": 11085, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10466, + "referencedDeclaration": 11062, "src": "3234:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10490, + "id": 11086, "isConstant": false, "isLValue": true, "isPure": false, @@ -14128,7 +14128,7 @@ "memberLocation": "3240:15:27", "memberName": "deposityAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10346, + "referencedDeclaration": 10942, "src": "3234:21:27", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -14176,7 +14176,7 @@ } ], "expression": { - "id": 10471, + "id": 11067, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -14187,7 +14187,7 @@ "typeString": "abi" } }, - "id": 10472, + "id": 11068, "isConstant": false, "isLValue": false, "isPure": true, @@ -14201,7 +14201,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 10491, + "id": 11087, "isConstant": false, "isLValue": false, "isPure": false, @@ -14217,14 +14217,14 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 10470, - "id": 10492, + "functionReturnParameters": 11066, + "id": 11088, "nodeType": "Return", "src": "2907:362:27" } ] }, - "id": 10494, + "id": 11090, "implemented": true, "kind": "function", "modifiers": [], @@ -14232,41 +14232,41 @@ "nameLocation": "2803:17:27", "nodeType": "FunctionDefinition", "parameters": { - "id": 10467, + "id": 11063, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10466, + "id": 11062, "mutability": "mutable", "name": "quote", "nameLocation": "2849:5:27", "nodeType": "VariableDeclaration", - "scope": 10494, + "scope": 11090, "src": "2830:24:27", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote" }, "typeName": { - "id": 10465, + "id": 11061, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10464, + "id": 11060, "name": "PegOutQuote", "nameLocations": [ "2830:11:27" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "2830:11:27" }, - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "2830:11:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote" } }, @@ -14276,17 +14276,17 @@ "src": "2820:40:27" }, "returnParameters": { - "id": 10470, + "id": 11066, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10469, + "id": 11065, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10494, + "scope": 11090, "src": "2883:12:27", "stateVariable": false, "storageLocation": "memory", @@ -14295,7 +14295,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10468, + "id": 11064, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2883:5:27", @@ -14309,7 +14309,7 @@ ], "src": "2882:14:27" }, - "scope": 10556, + "scope": 11152, "src": "2794:482:27", "stateMutability": "pure", "virtual": false, @@ -14317,7 +14317,7 @@ }, { "body": { - "id": 10522, + "id": 11118, "nodeType": "Block", "src": "3385:365:27", "statements": [ @@ -14326,18 +14326,18 @@ "arguments": [ { "expression": { - "id": 10504, + "id": 11100, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10497, + "referencedDeclaration": 11093, "src": "3442:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10505, + "id": 11101, "isConstant": false, "isLValue": true, "isPure": false, @@ -14345,7 +14345,7 @@ "memberLocation": "3448:5:27", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10348, + "referencedDeclaration": 10944, "src": "3442:11:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14354,18 +14354,18 @@ }, { "expression": { - "id": 10506, + "id": 11102, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10497, + "referencedDeclaration": 11093, "src": "3471:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10507, + "id": 11103, "isConstant": false, "isLValue": true, "isPure": false, @@ -14373,7 +14373,7 @@ "memberLocation": "3477:18:27", "memberName": "agreementTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 10350, + "referencedDeclaration": 10946, "src": "3471:24:27", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -14382,18 +14382,18 @@ }, { "expression": { - "id": 10508, + "id": 11104, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10497, + "referencedDeclaration": 11093, "src": "3513:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10509, + "id": 11105, "isConstant": false, "isLValue": true, "isPure": false, @@ -14401,7 +14401,7 @@ "memberLocation": "3519:16:27", "memberName": "depositDateLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10352, + "referencedDeclaration": 10948, "src": "3513:22:27", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -14410,18 +14410,18 @@ }, { "expression": { - "id": 10510, + "id": 11106, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10497, + "referencedDeclaration": 11093, "src": "3553:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10511, + "id": 11107, "isConstant": false, "isLValue": true, "isPure": false, @@ -14429,7 +14429,7 @@ "memberLocation": "3559:20:27", "memberName": "depositConfirmations", "nodeType": "MemberAccess", - "referencedDeclaration": 10354, + "referencedDeclaration": 10950, "src": "3553:26:27", "typeDescriptions": { "typeIdentifier": "t_uint16", @@ -14438,18 +14438,18 @@ }, { "expression": { - "id": 10512, + "id": 11108, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10497, + "referencedDeclaration": 11093, "src": "3597:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10513, + "id": 11109, "isConstant": false, "isLValue": true, "isPure": false, @@ -14457,7 +14457,7 @@ "memberLocation": "3603:21:27", "memberName": "transferConfirmations", "nodeType": "MemberAccess", - "referencedDeclaration": 10356, + "referencedDeclaration": 10952, "src": "3597:27:27", "typeDescriptions": { "typeIdentifier": "t_uint16", @@ -14466,18 +14466,18 @@ }, { "expression": { - "id": 10514, + "id": 11110, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10497, + "referencedDeclaration": 11093, "src": "3642:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10515, + "id": 11111, "isConstant": false, "isLValue": true, "isPure": false, @@ -14485,7 +14485,7 @@ "memberLocation": "3648:12:27", "memberName": "transferTime", "nodeType": "MemberAccess", - "referencedDeclaration": 10358, + "referencedDeclaration": 10954, "src": "3642:18:27", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -14494,18 +14494,18 @@ }, { "expression": { - "id": 10516, + "id": 11112, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10497, + "referencedDeclaration": 11093, "src": "3678:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10517, + "id": 11113, "isConstant": false, "isLValue": true, "isPure": false, @@ -14513,7 +14513,7 @@ "memberLocation": "3684:10:27", "memberName": "expireDate", "nodeType": "MemberAccess", - "referencedDeclaration": 10360, + "referencedDeclaration": 10956, "src": "3678:16:27", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -14522,18 +14522,18 @@ }, { "expression": { - "id": 10518, + "id": 11114, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10497, + "referencedDeclaration": 11093, "src": "3712:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote memory" } }, - "id": 10519, + "id": 11115, "isConstant": false, "isLValue": true, "isPure": false, @@ -14541,7 +14541,7 @@ "memberLocation": "3718:11:27", "memberName": "expireBlock", "nodeType": "MemberAccess", - "referencedDeclaration": 10362, + "referencedDeclaration": 10958, "src": "3712:17:27", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -14585,7 +14585,7 @@ } ], "expression": { - "id": 10502, + "id": 11098, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -14596,7 +14596,7 @@ "typeString": "abi" } }, - "id": 10503, + "id": 11099, "isConstant": false, "isLValue": false, "isPure": true, @@ -14610,7 +14610,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 10520, + "id": 11116, "isConstant": false, "isLValue": false, "isPure": false, @@ -14626,14 +14626,14 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 10501, - "id": 10521, + "functionReturnParameters": 11097, + "id": 11117, "nodeType": "Return", "src": "3395:348:27" } ] }, - "id": 10523, + "id": 11119, "implemented": true, "kind": "function", "modifiers": [], @@ -14641,41 +14641,41 @@ "nameLocation": "3291:17:27", "nodeType": "FunctionDefinition", "parameters": { - "id": 10498, + "id": 11094, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10497, + "id": 11093, "mutability": "mutable", "name": "quote", "nameLocation": "3337:5:27", "nodeType": "VariableDeclaration", - "scope": 10523, + "scope": 11119, "src": "3318:24:27", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_memory_ptr", "typeString": "struct Quotes.PegOutQuote" }, "typeName": { - "id": 10496, + "id": 11092, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10495, + "id": 11091, "name": "PegOutQuote", "nameLocations": [ "3318:11:27" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "3318:11:27" }, - "referencedDeclaration": 10363, + "referencedDeclaration": 10959, "src": "3318:11:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10363_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$10959_storage_ptr", "typeString": "struct Quotes.PegOutQuote" } }, @@ -14685,17 +14685,17 @@ "src": "3308:40:27" }, "returnParameters": { - "id": 10501, + "id": 11097, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10500, + "id": 11096, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10523, + "scope": 11119, "src": "3371:12:27", "stateVariable": false, "storageLocation": "memory", @@ -14704,7 +14704,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10499, + "id": 11095, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3371:5:27", @@ -14718,7 +14718,7 @@ ], "src": "3370:14:27" }, - "scope": 10556, + "scope": 11152, "src": "3282:468:27", "stateMutability": "pure", "virtual": false, @@ -14726,23 +14726,23 @@ }, { "body": { - "id": 10554, + "id": 11150, "nodeType": "Block", "src": "3868:354:27", "statements": [ { "assignments": [ - 10532 + 11128 ], "declarations": [ { "constant": false, - "id": 10532, + "id": 11128, "mutability": "mutable", "name": "agreedAmount", "nameLocation": "3883:12:27", "nodeType": "VariableDeclaration", - "scope": 10554, + "scope": 11150, "src": "3878:17:27", "stateVariable": false, "storageLocation": "default", @@ -14751,7 +14751,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10531, + "id": 11127, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3878:4:27", @@ -14763,31 +14763,31 @@ "visibility": "internal" } ], - "id": 10538, + "id": 11134, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10537, + "id": 11133, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 10533, + "id": 11129, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10526, + "referencedDeclaration": 11122, "src": "3898:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10534, + "id": 11130, "isConstant": false, "isLValue": true, "isPure": false, @@ -14795,7 +14795,7 @@ "memberLocation": "3904:5:27", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10317, + "referencedDeclaration": 10913, "src": "3898:11:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14806,18 +14806,18 @@ "operator": "+", "rightExpression": { "expression": { - "id": 10535, + "id": 11131, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10526, + "referencedDeclaration": 11122, "src": "3912:5:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote memory" } }, - "id": 10536, + "id": 11132, "isConstant": false, "isLValue": true, "isPure": false, @@ -14825,7 +14825,7 @@ "memberLocation": "3918:7:27", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10305, + "referencedDeclaration": 10901, "src": "3912:13:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14843,17 +14843,17 @@ }, { "assignments": [ - 10540 + 11136 ], "declarations": [ { "constant": false, - "id": 10540, + "id": 11136, "mutability": "mutable", "name": "delta", "nameLocation": "3940:5:27", "nodeType": "VariableDeclaration", - "scope": 10554, + "scope": 11150, "src": "3935:10:27", "stateVariable": false, "storageLocation": "default", @@ -14862,7 +14862,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10539, + "id": 11135, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3935:4:27", @@ -14874,23 +14874,23 @@ "visibility": "internal" } ], - "id": 10544, + "id": 11140, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10543, + "id": 11139, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 10541, + "id": 11137, "name": "agreedAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10532, + "referencedDeclaration": 11128, "src": "3948:12:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14901,7 +14901,7 @@ "operator": "/", "rightExpression": { "hexValue": "3130303030", - "id": 10542, + "id": 11138, "isConstant": false, "isLValue": false, "isPure": true, @@ -14932,17 +14932,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10550, + "id": 11146, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 10546, + "id": 11142, "name": "transferredAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10528, + "referencedDeclaration": 11124, "src": "4142:17:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14956,17 +14956,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10549, + "id": 11145, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 10547, + "id": 11143, "name": "agreedAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10532, + "referencedDeclaration": 11128, "src": "4163:12:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14976,11 +14976,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 10548, + "id": 11144, "name": "delta", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10540, + "referencedDeclaration": 11136, "src": "4178:5:27", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -15001,7 +15001,7 @@ }, { "hexValue": "4c4243303537", - "id": 10551, + "id": 11147, "isConstant": false, "isLValue": false, "isPure": true, @@ -15027,7 +15027,7 @@ "typeString": "literal_string \"LBC057\"" } ], - "id": 10545, + "id": 11141, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -15041,7 +15041,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 10552, + "id": 11148, "isConstant": false, "isLValue": false, "isPure": false, @@ -15057,14 +15057,14 @@ "typeString": "tuple()" } }, - "id": 10553, + "id": 11149, "nodeType": "ExpressionStatement", "src": "4121:94:27" } ] }, "functionSelector": "039e8de4", - "id": 10555, + "id": 11151, "implemented": true, "kind": "function", "modifiers": [], @@ -15072,41 +15072,41 @@ "nameLocation": "3765:17:27", "nodeType": "FunctionDefinition", "parameters": { - "id": 10529, + "id": 11125, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10526, + "id": 11122, "mutability": "mutable", "name": "quote", "nameLocation": "3810:5:27", "nodeType": "VariableDeclaration", - "scope": 10555, + "scope": 11151, "src": "3792:23:27", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_memory_ptr", "typeString": "struct Quotes.PeginQuote" }, "typeName": { - "id": 10525, + "id": 11121, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10524, + "id": 11120, "name": "PeginQuote", "nameLocations": [ "3792:10:27" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "3792:10:27" }, - "referencedDeclaration": 10328, + "referencedDeclaration": 10924, "src": "3792:10:27", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10328_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$10924_storage_ptr", "typeString": "struct Quotes.PeginQuote" } }, @@ -15114,12 +15114,12 @@ }, { "constant": false, - "id": 10528, + "id": 11124, "mutability": "mutable", "name": "transferredAmount", "nameLocation": "3830:17:27", "nodeType": "VariableDeclaration", - "scope": 10555, + "scope": 11151, "src": "3825:22:27", "stateVariable": false, "storageLocation": "default", @@ -15128,7 +15128,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10527, + "id": 11123, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3825:4:27", @@ -15143,19 +15143,19 @@ "src": "3782:71:27" }, "returnParameters": { - "id": 10530, + "id": 11126, "nodeType": "ParameterList", "parameters": [], "src": "3868:0:27" }, - "scope": 10556, + "scope": 11152, "src": "3756:466:27", "stateMutability": "pure", "virtual": false, "visibility": "external" } ], - "scope": 10557, + "scope": 11153, "src": "58:4167:27", "usedErrors": [] } @@ -15168,7 +15168,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:54:03.283Z", + "updatedAt": "2024-08-13T18:14:01.693Z", "networkType": "ethereum", "devdoc": { "kind": "dev", diff --git a/build/contracts/QuotesV2.json b/build/contracts/QuotesV2.json index 2d9aefa..b98c22c 100644 --- a/build/contracts/QuotesV2.json +++ b/build/contracts/QuotesV2.json @@ -5023,7 +5023,7 @@ } ] }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$10599_memory_ptr", + "name": "abi_decode_tuple_t_struct$_PeginQuote_$11195_memory_ptr", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -7818,7 +7818,7 @@ } ] }, - "name": "abi_decode_tuple_t_struct$_PegOutQuote_$10638_memory_ptr", + "name": "abi_decode_tuple_t_struct$_PegOutQuote_$11234_memory_ptr", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -8148,7 +8148,7 @@ } ] }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$10599_memory_ptrt_uint256", + "name": "abi_decode_tuple_t_struct$_PeginQuote_$11195_memory_ptrt_uint256", "nodeType": "YulFunctionDefinition", "parameters": [ { @@ -12026,7 +12026,7 @@ } ] }, - "contents": "{\n { }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function allocate_memory_1569() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0280)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0260)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function abi_decode_bytes20(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, not(sub(shl(96, 1), 1))))) { revert(0, 0) }\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_bytes(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let _2 := sub(shl(64, 1), 1)\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_1, 0x1f), _3), 63), _3))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(memPtr, 0x20), add(offset, 0x20), _1)\n mstore(add(add(memPtr, _1), 0x20), 0)\n array := memPtr\n }\n function abi_decode_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_int64(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, signextend(7, value))) { revert(0, 0) }\n }\n function abi_decode_uint16(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_struct_PeginQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0280) { revert(0, 0) }\n value := allocate_memory_1569()\n mstore(value, abi_decode_bytes20(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n mstore(add(value, 64), abi_decode_address(add(headStart, 64)))\n let offset := calldataload(add(headStart, 96))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 96), abi_decode_bytes(add(headStart, offset), end))\n mstore(add(value, 128), abi_decode_address(add(headStart, 128)))\n let offset_1 := calldataload(add(headStart, 160))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 160), abi_decode_bytes(add(headStart, offset_1), end))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), calldataload(add(headStart, 224)))\n let _2 := 256\n mstore(add(value, _2), abi_decode_address(add(headStart, _2)))\n let _3 := 288\n let offset_2 := calldataload(add(headStart, _3))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_bytes(add(headStart, offset_2), end))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_int64(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), calldataload(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint32(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint16(add(headStart, _10)))\n let _11 := 544\n mstore(add(value, _11), abi_decode_bool(add(headStart, _11)))\n let _12 := 576\n mstore(add(value, _12), calldataload(add(headStart, _12)))\n let _13 := 608\n mstore(add(value, _13), calldataload(add(headStart, _13)))\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10599_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n }\n function abi_encode_bytes(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n let i := 0\n for { } lt(i, length) { i := add(i, 0x20) }\n {\n let _1 := 0x20\n mstore(add(add(pos, i), _1), mload(add(add(value, i), _1)))\n }\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$10638_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if slt(sub(dataEnd, _2), 0x0260) { revert(0, 0) }\n let value := allocate_memory()\n mstore(value, abi_decode_address(_2))\n mstore(add(value, 32), abi_decode_address(add(_2, 32)))\n let offset_1 := calldataload(add(_2, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 64), abi_decode_bytes(add(_2, offset_1), dataEnd))\n mstore(add(value, 96), abi_decode_address(add(_2, 96)))\n let offset_2 := calldataload(add(_2, 128))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, 128), abi_decode_bytes(add(_2, offset_2), dataEnd))\n mstore(add(value, 160), calldataload(add(_2, 160)))\n mstore(add(value, 192), calldataload(add(_2, 192)))\n mstore(add(value, 224), abi_decode_int64(add(_2, 224)))\n let _3 := 256\n let offset_3 := calldataload(add(_2, _3))\n if gt(offset_3, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_bytes(add(_2, offset_3), dataEnd))\n let _4 := 288\n mstore(add(value, _4), calldataload(add(_2, _4)))\n let _5 := 320\n mstore(add(value, _5), abi_decode_uint32(add(_2, _5)))\n let _6 := 352\n mstore(add(value, _6), abi_decode_uint32(add(_2, _6)))\n let _7 := 384\n mstore(add(value, _7), abi_decode_uint16(add(_2, _7)))\n let _8 := 416\n mstore(add(value, _8), abi_decode_uint16(add(_2, _8)))\n let _9 := 448\n mstore(add(value, _9), abi_decode_uint32(add(_2, _9)))\n let _10 := 480\n mstore(add(value, _10), abi_decode_uint32(add(_2, _10)))\n let _11 := 512\n mstore(add(value, _11), abi_decode_uint32(add(_2, _11)))\n let _12 := 544\n mstore(add(value, _12), calldataload(add(_2, _12)))\n let _13 := 576\n mstore(add(value, _13), calldataload(add(_2, _13)))\n value0 := value\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10599_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n value1 := calldataload(add(headStart, 32))\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n let tail_1 := abi_encode_bytes(value0, add(headStart, 64))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_bytes(value1, tail_1)\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function checked_div_t_uint256(x, y) -> r\n {\n if iszero(y)\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n r := div(x, y)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_edc8872f52a3fbd4c102c7239a16e50d62a454725123fb252e7131b6a2223277__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC057\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__to_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 288\n mstore(headStart, and(value0, not(sub(shl(96, 1), 1))))\n let _2 := sub(shl(160, 1), 1)\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), and(value2, _2))\n mstore(add(headStart, 96), _1)\n let tail_1 := abi_encode_bytes(value3, add(headStart, _1))\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), sub(tail_1, headStart))\n tail := abi_encode_bytes(value5, tail_1)\n mstore(add(headStart, 192), value6)\n mstore(add(headStart, 224), value7)\n mstore(add(headStart, 256), and(value8, _2))\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool_t_uint256_t_uint256__to_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool_t_uint256_t_uint256__fromStack_reversed(headStart, value10, value9, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 352\n mstore(headStart, _1)\n tail := abi_encode_bytes(value0, add(headStart, _1))\n let _2 := 0xffffffff\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), signextend(7, value2))\n mstore(add(headStart, 96), value3)\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), and(value5, _2))\n mstore(add(headStart, 192), and(value6, _2))\n mstore(add(headStart, 224), and(value7, 0xffff))\n mstore(add(headStart, 256), iszero(iszero(value8)))\n mstore(add(headStart, 288), value9)\n mstore(add(headStart, 320), value10)\n }\n function abi_encode_tuple_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__to_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 288\n let _2 := sub(shl(160, 1), 1)\n mstore(headStart, and(value0, _2))\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), _1)\n let tail_1 := abi_encode_bytes(value2, add(headStart, _1))\n mstore(add(headStart, 96), and(value3, _2))\n mstore(add(headStart, 128), sub(tail_1, headStart))\n let tail_2 := abi_encode_bytes(value4, tail_1)\n mstore(add(headStart, 160), value5)\n mstore(add(headStart, 192), value6)\n mstore(add(headStart, 224), signextend(7, value7))\n mstore(add(headStart, 256), sub(tail_2, headStart))\n tail := abi_encode_bytes(value8, tail_2)\n }\n function abi_encode_tuple_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32_t_uint256_t_uint256__to_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32_t_uint256_t_uint256__fromStack_reversed(headStart, value9, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 320)\n mstore(headStart, value0)\n let _1 := 0xffffffff\n mstore(add(headStart, 32), and(value1, _1))\n mstore(add(headStart, 64), and(value2, _1))\n let _2 := 0xffff\n mstore(add(headStart, 96), and(value3, _2))\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), and(value5, _1))\n mstore(add(headStart, 192), and(value6, _1))\n mstore(add(headStart, 224), and(value7, _1))\n mstore(add(headStart, 256), value8)\n mstore(add(headStart, 288), value9)\n }\n}", + "contents": "{\n { }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function allocate_memory_1569() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0280)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0260)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function abi_decode_bytes20(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, not(sub(shl(96, 1), 1))))) { revert(0, 0) }\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_bytes(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let _2 := sub(shl(64, 1), 1)\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_1, 0x1f), _3), 63), _3))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(memPtr, 0x20), add(offset, 0x20), _1)\n mstore(add(add(memPtr, _1), 0x20), 0)\n array := memPtr\n }\n function abi_decode_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_int64(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, signextend(7, value))) { revert(0, 0) }\n }\n function abi_decode_uint16(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_struct_PeginQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0280) { revert(0, 0) }\n value := allocate_memory_1569()\n mstore(value, abi_decode_bytes20(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n mstore(add(value, 64), abi_decode_address(add(headStart, 64)))\n let offset := calldataload(add(headStart, 96))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 96), abi_decode_bytes(add(headStart, offset), end))\n mstore(add(value, 128), abi_decode_address(add(headStart, 128)))\n let offset_1 := calldataload(add(headStart, 160))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 160), abi_decode_bytes(add(headStart, offset_1), end))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), calldataload(add(headStart, 224)))\n let _2 := 256\n mstore(add(value, _2), abi_decode_address(add(headStart, _2)))\n let _3 := 288\n let offset_2 := calldataload(add(headStart, _3))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_bytes(add(headStart, offset_2), end))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_int64(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), calldataload(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint32(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint16(add(headStart, _10)))\n let _11 := 544\n mstore(add(value, _11), abi_decode_bool(add(headStart, _11)))\n let _12 := 576\n mstore(add(value, _12), calldataload(add(headStart, _12)))\n let _13 := 608\n mstore(add(value, _13), calldataload(add(headStart, _13)))\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$11195_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n }\n function abi_encode_bytes(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n let i := 0\n for { } lt(i, length) { i := add(i, 0x20) }\n {\n let _1 := 0x20\n mstore(add(add(pos, i), _1), mload(add(add(value, i), _1)))\n }\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$11234_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if slt(sub(dataEnd, _2), 0x0260) { revert(0, 0) }\n let value := allocate_memory()\n mstore(value, abi_decode_address(_2))\n mstore(add(value, 32), abi_decode_address(add(_2, 32)))\n let offset_1 := calldataload(add(_2, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 64), abi_decode_bytes(add(_2, offset_1), dataEnd))\n mstore(add(value, 96), abi_decode_address(add(_2, 96)))\n let offset_2 := calldataload(add(_2, 128))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, 128), abi_decode_bytes(add(_2, offset_2), dataEnd))\n mstore(add(value, 160), calldataload(add(_2, 160)))\n mstore(add(value, 192), calldataload(add(_2, 192)))\n mstore(add(value, 224), abi_decode_int64(add(_2, 224)))\n let _3 := 256\n let offset_3 := calldataload(add(_2, _3))\n if gt(offset_3, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_bytes(add(_2, offset_3), dataEnd))\n let _4 := 288\n mstore(add(value, _4), calldataload(add(_2, _4)))\n let _5 := 320\n mstore(add(value, _5), abi_decode_uint32(add(_2, _5)))\n let _6 := 352\n mstore(add(value, _6), abi_decode_uint32(add(_2, _6)))\n let _7 := 384\n mstore(add(value, _7), abi_decode_uint16(add(_2, _7)))\n let _8 := 416\n mstore(add(value, _8), abi_decode_uint16(add(_2, _8)))\n let _9 := 448\n mstore(add(value, _9), abi_decode_uint32(add(_2, _9)))\n let _10 := 480\n mstore(add(value, _10), abi_decode_uint32(add(_2, _10)))\n let _11 := 512\n mstore(add(value, _11), abi_decode_uint32(add(_2, _11)))\n let _12 := 544\n mstore(add(value, _12), calldataload(add(_2, _12)))\n let _13 := 576\n mstore(add(value, _13), calldataload(add(_2, _13)))\n value0 := value\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$11195_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n value1 := calldataload(add(headStart, 32))\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n let tail_1 := abi_encode_bytes(value0, add(headStart, 64))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_bytes(value1, tail_1)\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function checked_div_t_uint256(x, y) -> r\n {\n if iszero(y)\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n r := div(x, y)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_edc8872f52a3fbd4c102c7239a16e50d62a454725123fb252e7131b6a2223277__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC057\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__to_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 288\n mstore(headStart, and(value0, not(sub(shl(96, 1), 1))))\n let _2 := sub(shl(160, 1), 1)\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), and(value2, _2))\n mstore(add(headStart, 96), _1)\n let tail_1 := abi_encode_bytes(value3, add(headStart, _1))\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), sub(tail_1, headStart))\n tail := abi_encode_bytes(value5, tail_1)\n mstore(add(headStart, 192), value6)\n mstore(add(headStart, 224), value7)\n mstore(add(headStart, 256), and(value8, _2))\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool_t_uint256_t_uint256__to_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool_t_uint256_t_uint256__fromStack_reversed(headStart, value10, value9, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 352\n mstore(headStart, _1)\n tail := abi_encode_bytes(value0, add(headStart, _1))\n let _2 := 0xffffffff\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), signextend(7, value2))\n mstore(add(headStart, 96), value3)\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), and(value5, _2))\n mstore(add(headStart, 192), and(value6, _2))\n mstore(add(headStart, 224), and(value7, 0xffff))\n mstore(add(headStart, 256), iszero(iszero(value8)))\n mstore(add(headStart, 288), value9)\n mstore(add(headStart, 320), value10)\n }\n function abi_encode_tuple_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__to_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 288\n let _2 := sub(shl(160, 1), 1)\n mstore(headStart, and(value0, _2))\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), _1)\n let tail_1 := abi_encode_bytes(value2, add(headStart, _1))\n mstore(add(headStart, 96), and(value3, _2))\n mstore(add(headStart, 128), sub(tail_1, headStart))\n let tail_2 := abi_encode_bytes(value4, tail_1)\n mstore(add(headStart, 160), value5)\n mstore(add(headStart, 192), value6)\n mstore(add(headStart, 224), signextend(7, value7))\n mstore(add(headStart, 256), sub(tail_2, headStart))\n tail := abi_encode_bytes(value8, tail_2)\n }\n function abi_encode_tuple_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32_t_uint256_t_uint256__to_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32_t_uint256_t_uint256__fromStack_reversed(headStart, value9, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 320)\n mstore(headStart, value0)\n let _1 := 0xffffffff\n mstore(add(headStart, 32), and(value1, _1))\n mstore(add(headStart, 64), and(value2, _1))\n let _2 := 0xffff\n mstore(add(headStart, 96), and(value3, _2))\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), and(value5, _1))\n mstore(add(headStart, 192), and(value6, _1))\n mstore(add(headStart, 224), and(value7, _1))\n mstore(add(headStart, 256), value8)\n mstore(add(headStart, 288), value9)\n }\n}", "id": 32, "language": "Yul", "name": "#utility.yul" @@ -12035,20 +12035,20 @@ "sourceMap": "58:4493:28:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;58:4493:28;;;;;;;;;;;;;;;;;", "deployedSourceMap": "58:4493:28:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1320:284;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1610:303;;;;;;:::i;:::-;;:::i;4014:534::-;;;;;;:::i;:::-;;:::i;:::-;;1320:284;1403:12;1558:18;1570:5;1558:11;:18::i;:::-;1578;1590:5;1578:11;:18::i;:::-;1547:50;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1540:57;;1320:284;;;:::o;1610:303::-;1700:12;1855:24;1873:5;1855:17;:24::i;:::-;1881;1899:5;1881:17;:24::i;4014:534::-;4136:17;4237:5;:12;;;4212:5;:22;;;4196:5;:13;;;4182:5;:11;;;:27;;;;:::i;:::-;:52;;;;:::i;:::-;:67;;;;:::i;:::-;4167:82;-1:-1:-1;4261:10:28;4274:20;4289:5;4167:82;4274:20;:::i;:::-;4261:33;-1:-1:-1;4489:20:28;4261:33;4489:12;:20;:::i;:::-;4468:17;:41;;4447:94;;;;-1:-1:-1;;;4447:94:28;;9442:2:32;4447:94:28;;;9424:21:32;9481:1;9461:18;;;9454:29;-1:-1:-1;;;9499:18:32;;;9492:36;9545:18;;4447:94:28;;;;;;;;4126:422;;4014:534;;:::o;1919:513::-;2001:12;2072:5;:19;;;2109:5;:16;;;2143:5;:33;;;2194:5;:22;;;2234:5;:22;;;2274:5;:33;;;2325:5;:13;;;2356:5;:16;;;2390:5;:21;;;2044:381;;;;;;;;;;;;;;;;:::i;2438:538::-;2520:12;2591:5;:10;;;2619:5;:14;;;2651:5;:11;;;2680:5;:11;;;2709:5;:24;;;2751:5;:20;;;2789:5;:14;;;2821:5;:26;;;2865:5;:20;;;2903:5;:22;;;2943:5;:12;;;2563:406;;;;;;;;;;;;;;;;;;:::i;2982:482::-;3071:12;3142:5;:16;;;3176:5;:18;;;3212:5;:22;;;3252:5;:22;;;3292:5;:18;;;3328:5;:13;;;3359:5;:16;;;3393:5;:11;;;3422:5;:21;;;3114:343;;;;;;;;;;;;;;;;:::i;3470:538::-;3630:11;;;;;3659:24;;;;;3701:22;;;;;3741:26;;;;3785:27;;;;3830:18;;;;3866:16;;;;3900:17;;;;3935:22;;;;3975:12;;;;3602:399;;;;;;13108:25:32;;;;13152:10;13198:15;;;13178:18;;;13171:43;13250:15;;;3559:12:28;13230:18:32;;;13223:43;;;;13285:6;13327:15;;;13307:18;;;13300:43;13380:15;;;;13359:19;;;13352:44;13433:15;;;13412:19;;;13405:44;13486:15;;13465:19;;;13458:44;13539:15;;;;-1:-1:-1;13518:19:32;;13511:44;13571:19;;;13564:35;;;;13615:19;;;13608:35;13080:19;3602:399:28;12723:926:32;14:127;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:255;218:2;212:9;260:6;248:19;;-1:-1:-1;;;;;282:34:32;;318:22;;;279:62;276:88;;;344:18;;:::i;:::-;380:2;373:22;146:255;:::o;406:250::-;473:2;467:9;515:6;503:19;;-1:-1:-1;;;;;537:34:32;;573:22;;;534:62;531:88;;;599:18;;:::i;661:177::-;729:20;;-1:-1:-1;;;;;;778:35:32;;768:46;;758:74;;828:1;825;818:12;758:74;661:177;;;:::o;843:173::-;911:20;;-1:-1:-1;;;;;960:31:32;;950:42;;940:70;;1006:1;1003;996:12;1021:718;1063:5;1116:3;1109:4;1101:6;1097:17;1093:27;1083:55;;1134:1;1131;1124:12;1083:55;1157:20;;-1:-1:-1;;;;;1226:10:32;;;1223:36;;;1239:18;;:::i;:::-;1314:2;1308:9;1282:2;1368:13;;-1:-1:-1;;1364:22:32;;;1388:2;1360:31;1356:40;1344:53;;;1412:18;;;1432:22;;;1409:46;1406:72;;;1458:18;;:::i;:::-;1498:10;1494:2;1487:22;1533:2;1525:6;1518:18;1579:3;1572:4;1567:2;1559:6;1555:15;1551:26;1548:35;1545:55;;;1596:1;1593;1586:12;1545:55;1660:2;1653:4;1645:6;1641:17;1634:4;1626:6;1622:17;1609:54;1707:1;1700:4;1695:2;1687:6;1683:15;1679:26;1672:37;1727:6;1718:15;;;;;;1021:718;;;;:::o;1744:163::-;1811:20;;1871:10;1860:22;;1850:33;;1840:61;;1897:1;1894;1887:12;1912:160;1978:20;;2038:1;2027:20;;;2017:31;;2007:59;;2062:1;2059;2052:12;2077:159;2144:20;;2204:6;2193:18;;2183:29;;2173:57;;2226:1;2223;2216:12;2241:160;2306:20;;2362:13;;2355:21;2345:32;;2335:60;;2391:1;2388;2381:12;2406:2185;2463:5;2511:6;2499:9;2494:3;2490:19;2486:32;2483:52;;;2531:1;2528;2521:12;2483:52;2553:22;;:::i;:::-;2544:31;;2598:29;2617:9;2598:29;:::i;:::-;2591:5;2584:44;2660:38;2694:2;2683:9;2679:18;2660:38;:::i;:::-;2655:2;2648:5;2644:14;2637:62;2731:38;2765:2;2754:9;2750:18;2731:38;:::i;:::-;2726:2;2715:14;;2708:62;2821:2;2806:18;;2793:32;-1:-1:-1;;;;;2874:14:32;;;2871:34;;;2901:1;2898;2891:12;2871:34;2937:45;2978:3;2969:6;2958:9;2954:22;2937:45;:::i;:::-;2932:2;2925:5;2921:14;2914:69;3016:39;3050:3;3039:9;3035:19;3016:39;:::i;:::-;3010:3;3003:5;2999:15;2992:64;3109:3;3098:9;3094:19;3081:33;3065:49;;3139:2;3129:8;3126:16;3123:36;;;3155:1;3152;3145:12;3123:36;3192:47;3235:3;3224:8;3213:9;3209:24;3192:47;:::i;:::-;3186:3;3179:5;3175:15;3168:72;3301:3;3290:9;3286:19;3273:33;3267:3;3260:5;3256:15;3249:58;3368:3;3357:9;3353:19;3340:33;3334:3;3327:5;3323:15;3316:58;3393:3;3383:13;;3428:38;3462:2;3451:9;3447:18;3428:38;:::i;:::-;3423:2;3416:5;3412:14;3405:62;3486:3;3476:13;;3542:2;3531:9;3527:18;3514:32;3571:2;3561:8;3558:16;3555:36;;;3587:1;3584;3577:12;3555:36;3623:47;3666:3;3655:8;3644:9;3640:24;3623:47;:::i;:::-;3618:2;3611:5;3607:14;3600:71;;;;3690:3;3725:37;3758:2;3747:9;3743:18;3725:37;:::i;:::-;3709:14;;;3702:61;3782:3;3817:36;3834:18;;;3817:36;:::i;:::-;3801:14;;;3794:60;3873:3;3921:18;;;3908:32;3892:14;;;3885:56;3960:3;3995:37;4013:18;;;3995:37;:::i;:::-;3979:14;;;3972:61;4052:3;4087:37;4105:18;;;4087:37;:::i;:::-;4071:14;;;4064:61;4144:3;4179:37;4197:18;;;4179:37;:::i;:::-;4163:14;;;4156:61;4237:3;4273:38;4291:19;;;4273:38;:::i;:::-;4256:15;;;4249:63;4332:3;4368:36;4384:19;;;4368:36;:::i;:::-;4351:15;;;4344:61;4425:3;4474:19;;;4461:33;4444:15;;;4437:58;4515:3;4564:19;;;4551:33;4534:15;;;4527:58;;;;4355:5;2406:2185;-1:-1:-1;2406:2185:32:o;4596:352::-;4684:6;4737:2;4725:9;4716:7;4712:23;4708:32;4705:52;;;4753:1;4750;4743:12;4705:52;4780:23;;-1:-1:-1;;;;;4815:30:32;;4812:50;;;4858:1;4855;4848:12;4812:50;4881:61;4934:7;4925:6;4914:9;4910:22;4881:61;:::i;:::-;4871:71;4596:352;-1:-1:-1;;;;4596:352:32:o;4953:422::-;4994:3;5032:5;5026:12;5059:6;5054:3;5047:19;5084:1;5094:162;5108:6;5105:1;5102:13;5094:162;;;5170:4;5226:13;;;5222:22;;5216:29;5198:11;;;5194:20;;5187:59;5123:12;5094:162;;;5098:3;5301:1;5294:4;5285:6;5280:3;5276:16;5272:27;5265:38;5364:4;5357:2;5353:7;5348:2;5340:6;5336:15;5332:29;5327:3;5323:39;5319:50;5312:57;;;4953:422;;;;:::o;5380:225::-;5535:2;5524:9;5517:21;5498:4;5555:44;5595:2;5584:9;5580:18;5572:6;5555:44;:::i;:::-;5547:52;5380:225;-1:-1:-1;;;5380:225:32:o;5610:2201::-;5699:6;5752:2;5740:9;5731:7;5727:23;5723:32;5720:52;;;5768:1;5765;5758:12;5720:52;5795:23;;-1:-1:-1;;;;;5867:14:32;;;5864:34;;;5894:1;5891;5884:12;5864:34;5917:22;;;;5973:6;5955:16;;;5951:29;5948:49;;;5993:1;5990;5983:12;5948:49;6019:17;;:::i;:::-;6059:22;6078:2;6059:22;:::i;:::-;6052:5;6045:37;6114:31;6141:2;6137;6133:11;6114:31;:::i;:::-;6109:2;6102:5;6098:14;6091:55;6192:2;6188;6184:11;6171:25;6221:2;6211:8;6208:16;6205:36;;;6237:1;6234;6227:12;6205:36;6273:44;6309:7;6298:8;6294:2;6290:17;6273:44;:::i;:::-;6268:2;6261:5;6257:14;6250:68;;6350:31;6377:2;6373;6369:11;6350:31;:::i;:::-;6345:2;6338:5;6334:14;6327:55;6428:3;6424:2;6420:12;6407:26;6458:2;6448:8;6445:16;6442:36;;;6474:1;6471;6464:12;6442:36;6511:44;6547:7;6536:8;6532:2;6528:17;6511:44;:::i;:::-;6505:3;6498:5;6494:15;6487:69;;6610:3;6606:2;6602:12;6589:26;6583:3;6576:5;6572:15;6565:51;6670:3;6666:2;6662:12;6649:26;6643:3;6636:5;6632:15;6625:51;6709:30;6734:3;6730:2;6726:12;6709:30;:::i;:::-;6703:3;6696:5;6692:15;6685:55;6759:3;6808:2;6804;6800:11;6787:25;6837:2;6827:8;6824:16;6821:36;;;6853:1;6850;6843:12;6821:36;6889:44;6925:7;6914:8;6910:2;6906:17;6889:44;:::i;:::-;6884:2;6877:5;6873:14;6866:68;;;6953:3;6943:13;;7009:2;7005;7001:11;6988:25;6983:2;6976:5;6972:14;6965:49;7033:3;7023:13;;7068:30;7094:2;7090;7086:11;7068:30;:::i;:::-;7063:2;7056:5;7052:14;7045:54;7118:3;7108:13;;7153:30;7179:2;7175;7171:11;7153:30;:::i;:::-;7148:2;7141:5;7137:14;7130:54;7203:3;7193:13;;7238:30;7264:2;7260;7256:11;7238:30;:::i;:::-;7233:2;7226:5;7222:14;7215:54;7288:3;7278:13;;7323:30;7349:2;7345;7341:11;7323:30;:::i;:::-;7318:2;7311:5;7307:14;7300:54;7373:3;7363:13;;7408:30;7434:2;7430;7426:11;7408:30;:::i;:::-;7403:2;7396:5;7392:14;7385:54;7459:3;7448:14;;7495:31;7521:3;7517:2;7513:12;7495:31;:::i;:::-;7489:3;7482:5;7478:15;7471:56;7547:3;7536:14;;7583:31;7609:3;7605:2;7601:12;7583:31;:::i;:::-;7566:15;;;7559:56;;;;7635:3;7684:12;;;7671:26;7654:15;;;7647:51;7718:3;7767:12;;;7754:26;7737:15;;;7730:51;;;;7570:5;5610:2201;-1:-1:-1;;;5610:2201:32:o;7816:420::-;7913:6;7921;7974:2;7962:9;7953:7;7949:23;7945:32;7942:52;;;7990:1;7987;7980:12;7942:52;8017:23;;-1:-1:-1;;;;;8052:30:32;;8049:50;;;8095:1;8092;8085:12;8049:50;8118:61;8171:7;8162:6;8151:9;8147:22;8118:61;:::i;:::-;8108:71;8226:2;8211:18;;;;8198:32;;-1:-1:-1;;;;7816:420:32:o;8241:377::-;8434:2;8423:9;8416:21;8397:4;8460:44;8500:2;8489:9;8485:18;8477:6;8460:44;:::i;:::-;8552:9;8544:6;8540:22;8535:2;8524:9;8520:18;8513:50;8580:32;8605:6;8597;8580:32;:::i;:::-;8572:40;8241:377;-1:-1:-1;;;;;8241:377:32:o;8623:127::-;8684:10;8679:3;8675:20;8672:1;8665:31;8715:4;8712:1;8705:15;8739:4;8736:1;8729:15;8755:125;8820:9;;;8841:10;;;8838:36;;;8854:18;;:::i;:::-;8755:125;;;;:::o;8885:217::-;8925:1;8951;8941:132;;8995:10;8990:3;8986:20;8983:1;8976:31;9030:4;9027:1;9020:15;9058:4;9055:1;9048:15;8941:132;-1:-1:-1;9087:9:32;;8885:217::o;9107:128::-;9174:9;;;9195:11;;;9192:37;;;9209:18;;:::i;9574:1021::-;-1:-1:-1;;;;;;10001:36:32;;9983:55;;-1:-1:-1;;;;;10112:15:32;;;10107:2;10092:18;;10085:43;10164:15;;;10159:2;10144:18;;10137:43;9971:3;10025:2;10196:18;;10189:30;;;9942:4;;10242:44;10267:18;;;10259:6;10242:44;:::i;:::-;10228:58;;10335:2;10327:6;10323:15;10317:3;10306:9;10302:19;10295:44;10388:9;10380:6;10376:22;10370:3;10359:9;10355:19;10348:51;10416:32;10441:6;10433;10416:32;:::i;:::-;10479:3;10464:19;;10457:35;;;;10523:3;10508:19;;10501:35;;;;-1:-1:-1;;10573:15:32;;10567:3;10552:19;;;10545:44;10408:40;9574:1021;-1:-1:-1;;;;;;9574:1021:32:o;10600:1047::-;10971:4;11000:3;11030:2;11019:9;11012:21;11050:44;11090:2;11079:9;11075:18;11067:6;11050:44;:::i;:::-;11113:10;11159:15;;;11154:2;11139:18;;11132:43;11222:1;11211:21;;;;11206:2;11191:18;;11184:49;-1:-1:-1;;11264:2:32;11249:18;;11242:34;;;;11313:15;;;11307:3;11292:19;;11285:44;11366:15;;;11360:3;11345:19;;11338:44;11419:15;;;;11413:3;11398:19;;11391:44;11484:6;11472:19;;;11466:3;11451:19;;11444:48;11536:14;;11529:22;11523:3;11508:19;;11501:51;11583:3;11568:19;;11561:35;;;;11627:3;11612:19;11605:36;;;;11211:21;11042:52;-1:-1:-1;10600:1047:32:o;11652:1066::-;-1:-1:-1;;;;;12115:15:32;;;12097:34;;12167:15;;;12162:2;12147:18;;12140:43;12047:3;12214:2;12199:18;;12192:30;;;12018:4;;12245:44;12270:18;;;12262:6;12245:44;:::i;:::-;12325:15;;;12320:2;12305:18;;12298:43;12378:22;;;12372:3;12357:19;;12350:51;12231:58;-1:-1:-1;12424:32:32;12231:58;12441:6;12424:32;:::i;:::-;12410:46;;12493:6;12487:3;12476:9;12472:19;12465:35;12537:6;12531:3;12520:9;12516:19;12509:35;12595:6;12592:1;12581:21;12575:3;12564:9;12560:19;12553:50;12652:9;12644:6;12640:22;12634:3;12623:9;12619:19;12612:51;12680:32;12705:6;12697;12680:32;:::i;:::-;12672:40;11652:1066;-1:-1:-1;;;;;;;;;;;;11652:1066:32:o", "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nlibrary QuotesV2 {\n struct PeginQuote {\n bytes20 fedBtcAddress;\n address lbcAddress;\n address liquidityProviderRskAddress;\n bytes btcRefundAddress;\n address payable rskRefundAddress;\n bytes liquidityProviderBtcAddress;\n uint256 callFee;\n uint256 penaltyFee;\n address contractAddress;\n bytes data;\n uint32 gasLimit;\n int64 nonce;\n uint256 value;\n uint32 agreementTimestamp;\n uint32 timeForDeposit;\n uint32 callTime;\n uint16 depositConfirmations;\n bool callOnRegister;\n uint256 productFeeAmount;\n uint256 gasFee;\n }\n\n struct PegOutQuote {\n address lbcAddress;\n address lpRskAddress;\n bytes btcRefundAddress;\n address rskRefundAddress;\n bytes lpBtcAddress;\n uint256 callFee;\n uint256 penaltyFee;\n int64 nonce;\n bytes deposityAddress;\n uint256 value;\n uint32 agreementTimestamp;\n uint32 depositDateLimit;\n uint16 depositConfirmations;\n uint16 transferConfirmations;\n uint32 transferTime;\n uint32 expireDate;\n uint32 expireBlock;\n uint256 productFeeAmount;\n uint256 gasFee;\n }\n\n function encodeQuote(\n PeginQuote memory quote\n ) external pure returns (bytes memory) {\n // Encode in two parts because abi.encode cannot take more than 12 parameters due to stack depth limits.\n return abi.encode(encodePart1(quote), encodePart2(quote));\n }\n\n function encodePegOutQuote(\n PegOutQuote memory quote\n ) external pure returns (bytes memory) {\n // Encode in two parts because abi.encode cannot take more than 12 parameters due to stack depth limits.\n return abi.encode(encodePegOutPart1(quote), encodePegOutPart2(quote));\n }\n\n function encodePart1(\n PeginQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.fedBtcAddress,\n quote.lbcAddress,\n quote.liquidityProviderRskAddress,\n quote.btcRefundAddress,\n quote.rskRefundAddress,\n quote.liquidityProviderBtcAddress,\n quote.callFee,\n quote.penaltyFee,\n quote.contractAddress\n );\n }\n\n function encodePart2(\n PeginQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.data,\n quote.gasLimit,\n quote.nonce,\n quote.value,\n quote.agreementTimestamp,\n quote.timeForDeposit,\n quote.callTime,\n quote.depositConfirmations,\n quote.callOnRegister,\n quote.productFeeAmount,\n quote.gasFee\n );\n }\n\n function encodePegOutPart1(\n PegOutQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.lbcAddress,\n quote.lpRskAddress,\n quote.btcRefundAddress,\n quote.rskRefundAddress,\n quote.lpBtcAddress,\n quote.callFee,\n quote.penaltyFee,\n quote.nonce,\n quote.deposityAddress\n );\n }\n\n function encodePegOutPart2(\n PegOutQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.value,\n quote.agreementTimestamp,\n quote.depositDateLimit,\n quote.depositConfirmations,\n quote.transferConfirmations,\n quote.transferTime,\n quote.expireDate,\n quote.expireBlock,\n quote.productFeeAmount,\n quote.gasFee\n );\n }\n\n function checkAgreedAmount(\n PeginQuote memory quote,\n uint transferredAmount\n ) external pure {\n uint agreedAmount = 0;\n agreedAmount = quote.value + quote.callFee + quote.productFeeAmount + quote.gasFee;\n\n\n uint delta = agreedAmount / 10000;\n // transferred amount should not be lower than (agreed amount - delta),\n // where delta is intended to tackle rounding problems\n require(\n transferredAmount >= agreedAmount - delta,\n \"LBC057\"\n );\n }\n\n}", - "sourcePath": "/Users/guilhermesoares/WebstormProjects/Rootstock/liquidity-bridge-contract/contracts/QuotesV2.sol", + "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/QuotesV2.sol", "ast": { "absolutePath": "project:/contracts/QuotesV2.sol", "exportedSymbols": { "QuotesV2": [ - 10849 + 11445 ] }, - "id": 10850, + "id": 11446, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 10558, + "id": 11154, "literals": [ "solidity", "^", @@ -12065,9 +12065,9 @@ "contractDependencies": [], "contractKind": "library", "fullyImplemented": true, - "id": 10849, + "id": 11445, "linearizedBaseContracts": [ - 10849 + 11445 ], "name": "QuotesV2", "nameLocation": "66:8:28", @@ -12075,16 +12075,16 @@ "nodes": [ { "canonicalName": "QuotesV2.PeginQuote", - "id": 10599, + "id": 11195, "members": [ { "constant": false, - "id": 10560, + "id": 11156, "mutability": "mutable", "name": "fedBtcAddress", "nameLocation": "117:13:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "109:21:28", "stateVariable": false, "storageLocation": "default", @@ -12093,7 +12093,7 @@ "typeString": "bytes20" }, "typeName": { - "id": 10559, + "id": 11155, "name": "bytes20", "nodeType": "ElementaryTypeName", "src": "109:7:28", @@ -12106,12 +12106,12 @@ }, { "constant": false, - "id": 10562, + "id": 11158, "mutability": "mutable", "name": "lbcAddress", "nameLocation": "148:10:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "140:18:28", "stateVariable": false, "storageLocation": "default", @@ -12120,7 +12120,7 @@ "typeString": "address" }, "typeName": { - "id": 10561, + "id": 11157, "name": "address", "nodeType": "ElementaryTypeName", "src": "140:7:28", @@ -12134,12 +12134,12 @@ }, { "constant": false, - "id": 10564, + "id": 11160, "mutability": "mutable", "name": "liquidityProviderRskAddress", "nameLocation": "176:27:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "168:35:28", "stateVariable": false, "storageLocation": "default", @@ -12148,7 +12148,7 @@ "typeString": "address" }, "typeName": { - "id": 10563, + "id": 11159, "name": "address", "nodeType": "ElementaryTypeName", "src": "168:7:28", @@ -12162,12 +12162,12 @@ }, { "constant": false, - "id": 10566, + "id": 11162, "mutability": "mutable", "name": "btcRefundAddress", "nameLocation": "219:16:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "213:22:28", "stateVariable": false, "storageLocation": "default", @@ -12176,7 +12176,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10565, + "id": 11161, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "213:5:28", @@ -12189,12 +12189,12 @@ }, { "constant": false, - "id": 10568, + "id": 11164, "mutability": "mutable", "name": "rskRefundAddress", "nameLocation": "261:16:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "245:32:28", "stateVariable": false, "storageLocation": "default", @@ -12203,7 +12203,7 @@ "typeString": "address payable" }, "typeName": { - "id": 10567, + "id": 11163, "name": "address", "nodeType": "ElementaryTypeName", "src": "245:15:28", @@ -12217,12 +12217,12 @@ }, { "constant": false, - "id": 10570, + "id": 11166, "mutability": "mutable", "name": "liquidityProviderBtcAddress", "nameLocation": "293:27:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "287:33:28", "stateVariable": false, "storageLocation": "default", @@ -12231,7 +12231,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10569, + "id": 11165, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "287:5:28", @@ -12244,12 +12244,12 @@ }, { "constant": false, - "id": 10572, + "id": 11168, "mutability": "mutable", "name": "callFee", "nameLocation": "338:7:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "330:15:28", "stateVariable": false, "storageLocation": "default", @@ -12258,7 +12258,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10571, + "id": 11167, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "330:7:28", @@ -12271,12 +12271,12 @@ }, { "constant": false, - "id": 10574, + "id": 11170, "mutability": "mutable", "name": "penaltyFee", "nameLocation": "363:10:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "355:18:28", "stateVariable": false, "storageLocation": "default", @@ -12285,7 +12285,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10573, + "id": 11169, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "355:7:28", @@ -12298,12 +12298,12 @@ }, { "constant": false, - "id": 10576, + "id": 11172, "mutability": "mutable", "name": "contractAddress", "nameLocation": "391:15:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "383:23:28", "stateVariable": false, "storageLocation": "default", @@ -12312,7 +12312,7 @@ "typeString": "address" }, "typeName": { - "id": 10575, + "id": 11171, "name": "address", "nodeType": "ElementaryTypeName", "src": "383:7:28", @@ -12326,12 +12326,12 @@ }, { "constant": false, - "id": 10578, + "id": 11174, "mutability": "mutable", "name": "data", "nameLocation": "422:4:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "416:10:28", "stateVariable": false, "storageLocation": "default", @@ -12340,7 +12340,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10577, + "id": 11173, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "416:5:28", @@ -12353,12 +12353,12 @@ }, { "constant": false, - "id": 10580, + "id": 11176, "mutability": "mutable", "name": "gasLimit", "nameLocation": "443:8:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "436:15:28", "stateVariable": false, "storageLocation": "default", @@ -12367,7 +12367,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10579, + "id": 11175, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "436:6:28", @@ -12380,12 +12380,12 @@ }, { "constant": false, - "id": 10582, + "id": 11178, "mutability": "mutable", "name": "nonce", "nameLocation": "467:5:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "461:11:28", "stateVariable": false, "storageLocation": "default", @@ -12394,7 +12394,7 @@ "typeString": "int64" }, "typeName": { - "id": 10581, + "id": 11177, "name": "int64", "nodeType": "ElementaryTypeName", "src": "461:5:28", @@ -12407,12 +12407,12 @@ }, { "constant": false, - "id": 10584, + "id": 11180, "mutability": "mutable", "name": "value", "nameLocation": "490:5:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "482:13:28", "stateVariable": false, "storageLocation": "default", @@ -12421,7 +12421,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10583, + "id": 11179, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "482:7:28", @@ -12434,12 +12434,12 @@ }, { "constant": false, - "id": 10586, + "id": 11182, "mutability": "mutable", "name": "agreementTimestamp", "nameLocation": "512:18:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "505:25:28", "stateVariable": false, "storageLocation": "default", @@ -12448,7 +12448,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10585, + "id": 11181, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "505:6:28", @@ -12461,12 +12461,12 @@ }, { "constant": false, - "id": 10588, + "id": 11184, "mutability": "mutable", "name": "timeForDeposit", "nameLocation": "547:14:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "540:21:28", "stateVariable": false, "storageLocation": "default", @@ -12475,7 +12475,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10587, + "id": 11183, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "540:6:28", @@ -12488,12 +12488,12 @@ }, { "constant": false, - "id": 10590, + "id": 11186, "mutability": "mutable", "name": "callTime", "nameLocation": "578:8:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "571:15:28", "stateVariable": false, "storageLocation": "default", @@ -12502,7 +12502,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10589, + "id": 11185, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "571:6:28", @@ -12515,12 +12515,12 @@ }, { "constant": false, - "id": 10592, + "id": 11188, "mutability": "mutable", "name": "depositConfirmations", "nameLocation": "603:20:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "596:27:28", "stateVariable": false, "storageLocation": "default", @@ -12529,7 +12529,7 @@ "typeString": "uint16" }, "typeName": { - "id": 10591, + "id": 11187, "name": "uint16", "nodeType": "ElementaryTypeName", "src": "596:6:28", @@ -12542,12 +12542,12 @@ }, { "constant": false, - "id": 10594, + "id": 11190, "mutability": "mutable", "name": "callOnRegister", "nameLocation": "638:14:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "633:19:28", "stateVariable": false, "storageLocation": "default", @@ -12556,7 +12556,7 @@ "typeString": "bool" }, "typeName": { - "id": 10593, + "id": 11189, "name": "bool", "nodeType": "ElementaryTypeName", "src": "633:4:28", @@ -12569,12 +12569,12 @@ }, { "constant": false, - "id": 10596, + "id": 11192, "mutability": "mutable", "name": "productFeeAmount", "nameLocation": "670:16:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "662:24:28", "stateVariable": false, "storageLocation": "default", @@ -12583,7 +12583,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10595, + "id": 11191, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "662:7:28", @@ -12596,12 +12596,12 @@ }, { "constant": false, - "id": 10598, + "id": 11194, "mutability": "mutable", "name": "gasFee", "nameLocation": "704:6:28", "nodeType": "VariableDeclaration", - "scope": 10599, + "scope": 11195, "src": "696:14:28", "stateVariable": false, "storageLocation": "default", @@ -12610,7 +12610,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10597, + "id": 11193, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "696:7:28", @@ -12625,22 +12625,22 @@ "name": "PeginQuote", "nameLocation": "88:10:28", "nodeType": "StructDefinition", - "scope": 10849, + "scope": 11445, "src": "81:636:28", "visibility": "public" }, { "canonicalName": "QuotesV2.PegOutQuote", - "id": 10638, + "id": 11234, "members": [ { "constant": false, - "id": 10601, + "id": 11197, "mutability": "mutable", "name": "lbcAddress", "nameLocation": "760:10:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "752:18:28", "stateVariable": false, "storageLocation": "default", @@ -12649,7 +12649,7 @@ "typeString": "address" }, "typeName": { - "id": 10600, + "id": 11196, "name": "address", "nodeType": "ElementaryTypeName", "src": "752:7:28", @@ -12663,12 +12663,12 @@ }, { "constant": false, - "id": 10603, + "id": 11199, "mutability": "mutable", "name": "lpRskAddress", "nameLocation": "788:12:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "780:20:28", "stateVariable": false, "storageLocation": "default", @@ -12677,7 +12677,7 @@ "typeString": "address" }, "typeName": { - "id": 10602, + "id": 11198, "name": "address", "nodeType": "ElementaryTypeName", "src": "780:7:28", @@ -12691,12 +12691,12 @@ }, { "constant": false, - "id": 10605, + "id": 11201, "mutability": "mutable", "name": "btcRefundAddress", "nameLocation": "816:16:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "810:22:28", "stateVariable": false, "storageLocation": "default", @@ -12705,7 +12705,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10604, + "id": 11200, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "810:5:28", @@ -12718,12 +12718,12 @@ }, { "constant": false, - "id": 10607, + "id": 11203, "mutability": "mutable", "name": "rskRefundAddress", "nameLocation": "850:16:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "842:24:28", "stateVariable": false, "storageLocation": "default", @@ -12732,7 +12732,7 @@ "typeString": "address" }, "typeName": { - "id": 10606, + "id": 11202, "name": "address", "nodeType": "ElementaryTypeName", "src": "842:7:28", @@ -12746,12 +12746,12 @@ }, { "constant": false, - "id": 10609, + "id": 11205, "mutability": "mutable", "name": "lpBtcAddress", "nameLocation": "882:12:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "876:18:28", "stateVariable": false, "storageLocation": "default", @@ -12760,7 +12760,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10608, + "id": 11204, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "876:5:28", @@ -12773,12 +12773,12 @@ }, { "constant": false, - "id": 10611, + "id": 11207, "mutability": "mutable", "name": "callFee", "nameLocation": "912:7:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "904:15:28", "stateVariable": false, "storageLocation": "default", @@ -12787,7 +12787,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10610, + "id": 11206, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "904:7:28", @@ -12800,12 +12800,12 @@ }, { "constant": false, - "id": 10613, + "id": 11209, "mutability": "mutable", "name": "penaltyFee", "nameLocation": "937:10:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "929:18:28", "stateVariable": false, "storageLocation": "default", @@ -12814,7 +12814,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10612, + "id": 11208, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "929:7:28", @@ -12827,12 +12827,12 @@ }, { "constant": false, - "id": 10615, + "id": 11211, "mutability": "mutable", "name": "nonce", "nameLocation": "963:5:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "957:11:28", "stateVariable": false, "storageLocation": "default", @@ -12841,7 +12841,7 @@ "typeString": "int64" }, "typeName": { - "id": 10614, + "id": 11210, "name": "int64", "nodeType": "ElementaryTypeName", "src": "957:5:28", @@ -12854,12 +12854,12 @@ }, { "constant": false, - "id": 10617, + "id": 11213, "mutability": "mutable", "name": "deposityAddress", "nameLocation": "984:15:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "978:21:28", "stateVariable": false, "storageLocation": "default", @@ -12868,7 +12868,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10616, + "id": 11212, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "978:5:28", @@ -12881,12 +12881,12 @@ }, { "constant": false, - "id": 10619, + "id": 11215, "mutability": "mutable", "name": "value", "nameLocation": "1017:5:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "1009:13:28", "stateVariable": false, "storageLocation": "default", @@ -12895,7 +12895,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10618, + "id": 11214, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1009:7:28", @@ -12908,12 +12908,12 @@ }, { "constant": false, - "id": 10621, + "id": 11217, "mutability": "mutable", "name": "agreementTimestamp", "nameLocation": "1039:18:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "1032:25:28", "stateVariable": false, "storageLocation": "default", @@ -12922,7 +12922,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10620, + "id": 11216, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "1032:6:28", @@ -12935,12 +12935,12 @@ }, { "constant": false, - "id": 10623, + "id": 11219, "mutability": "mutable", "name": "depositDateLimit", "nameLocation": "1074:16:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "1067:23:28", "stateVariable": false, "storageLocation": "default", @@ -12949,7 +12949,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10622, + "id": 11218, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "1067:6:28", @@ -12962,12 +12962,12 @@ }, { "constant": false, - "id": 10625, + "id": 11221, "mutability": "mutable", "name": "depositConfirmations", "nameLocation": "1107:20:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "1100:27:28", "stateVariable": false, "storageLocation": "default", @@ -12976,7 +12976,7 @@ "typeString": "uint16" }, "typeName": { - "id": 10624, + "id": 11220, "name": "uint16", "nodeType": "ElementaryTypeName", "src": "1100:6:28", @@ -12989,12 +12989,12 @@ }, { "constant": false, - "id": 10627, + "id": 11223, "mutability": "mutable", "name": "transferConfirmations", "nameLocation": "1144:21:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "1137:28:28", "stateVariable": false, "storageLocation": "default", @@ -13003,7 +13003,7 @@ "typeString": "uint16" }, "typeName": { - "id": 10626, + "id": 11222, "name": "uint16", "nodeType": "ElementaryTypeName", "src": "1137:6:28", @@ -13016,12 +13016,12 @@ }, { "constant": false, - "id": 10629, + "id": 11225, "mutability": "mutable", "name": "transferTime", "nameLocation": "1182:12:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "1175:19:28", "stateVariable": false, "storageLocation": "default", @@ -13030,7 +13030,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10628, + "id": 11224, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "1175:6:28", @@ -13043,12 +13043,12 @@ }, { "constant": false, - "id": 10631, + "id": 11227, "mutability": "mutable", "name": "expireDate", "nameLocation": "1211:10:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "1204:17:28", "stateVariable": false, "storageLocation": "default", @@ -13057,7 +13057,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10630, + "id": 11226, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "1204:6:28", @@ -13070,12 +13070,12 @@ }, { "constant": false, - "id": 10633, + "id": 11229, "mutability": "mutable", "name": "expireBlock", "nameLocation": "1238:11:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "1231:18:28", "stateVariable": false, "storageLocation": "default", @@ -13084,7 +13084,7 @@ "typeString": "uint32" }, "typeName": { - "id": 10632, + "id": 11228, "name": "uint32", "nodeType": "ElementaryTypeName", "src": "1231:6:28", @@ -13097,12 +13097,12 @@ }, { "constant": false, - "id": 10635, + "id": 11231, "mutability": "mutable", "name": "productFeeAmount", "nameLocation": "1267:16:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "1259:24:28", "stateVariable": false, "storageLocation": "default", @@ -13111,7 +13111,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10634, + "id": 11230, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1259:7:28", @@ -13124,12 +13124,12 @@ }, { "constant": false, - "id": 10637, + "id": 11233, "mutability": "mutable", "name": "gasFee", "nameLocation": "1301:6:28", "nodeType": "VariableDeclaration", - "scope": 10638, + "scope": 11234, "src": "1293:14:28", "stateVariable": false, "storageLocation": "default", @@ -13138,7 +13138,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10636, + "id": 11232, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1293:7:28", @@ -13153,13 +13153,13 @@ "name": "PegOutQuote", "nameLocation": "730:11:28", "nodeType": "StructDefinition", - "scope": 10849, + "scope": 11445, "src": "723:591:28", "visibility": "public" }, { "body": { - "id": 10656, + "id": 11252, "nodeType": "Block", "src": "1417:187:28", "statements": [ @@ -13169,14 +13169,14 @@ { "arguments": [ { - "id": 10649, + "id": 11245, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10641, + "referencedDeclaration": 11237, "src": "1570:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } } @@ -13184,22 +13184,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } ], - "id": 10648, + "id": 11244, "name": "encodePart1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10707, + "referencedDeclaration": 11303, "src": "1558:11:28", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PeginQuote_$10599_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeIdentifier": "t_function_internal_pure$_t_struct$_PeginQuote_$11195_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (struct QuotesV2.PeginQuote memory) pure returns (bytes memory)" } }, - "id": 10650, + "id": 11246, "isConstant": false, "isLValue": false, "isPure": false, @@ -13218,14 +13218,14 @@ { "arguments": [ { - "id": 10652, + "id": 11248, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10641, + "referencedDeclaration": 11237, "src": "1590:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } } @@ -13233,22 +13233,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } ], - "id": 10651, + "id": 11247, "name": "encodePart2", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10742, + "referencedDeclaration": 11338, "src": "1578:11:28", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PeginQuote_$10599_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeIdentifier": "t_function_internal_pure$_t_struct$_PeginQuote_$11195_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (struct QuotesV2.PeginQuote memory) pure returns (bytes memory)" } }, - "id": 10653, + "id": 11249, "isConstant": false, "isLValue": false, "isPure": false, @@ -13277,7 +13277,7 @@ } ], "expression": { - "id": 10646, + "id": 11242, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -13288,7 +13288,7 @@ "typeString": "abi" } }, - "id": 10647, + "id": 11243, "isConstant": false, "isLValue": false, "isPure": true, @@ -13302,7 +13302,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 10654, + "id": 11250, "isConstant": false, "isLValue": false, "isPure": false, @@ -13318,15 +13318,15 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 10645, - "id": 10655, + "functionReturnParameters": 11241, + "id": 11251, "nodeType": "Return", "src": "1540:57:28" } ] }, "functionSelector": "00773b79", - "id": 10657, + "id": 11253, "implemented": true, "kind": "function", "modifiers": [], @@ -13334,41 +13334,41 @@ "nameLocation": "1329:11:28", "nodeType": "FunctionDefinition", "parameters": { - "id": 10642, + "id": 11238, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10641, + "id": 11237, "mutability": "mutable", "name": "quote", "nameLocation": "1368:5:28", "nodeType": "VariableDeclaration", - "scope": 10657, + "scope": 11253, "src": "1350:23:28", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote" }, "typeName": { - "id": 10640, + "id": 11236, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10639, + "id": 11235, "name": "PeginQuote", "nameLocations": [ "1350:10:28" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10599, + "referencedDeclaration": 11195, "src": "1350:10:28" }, - "referencedDeclaration": 10599, + "referencedDeclaration": 11195, "src": "1350:10:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_storage_ptr", "typeString": "struct QuotesV2.PeginQuote" } }, @@ -13378,17 +13378,17 @@ "src": "1340:39:28" }, "returnParameters": { - "id": 10645, + "id": 11241, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10644, + "id": 11240, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10657, + "scope": 11253, "src": "1403:12:28", "stateVariable": false, "storageLocation": "memory", @@ -13397,7 +13397,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10643, + "id": 11239, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1403:5:28", @@ -13411,7 +13411,7 @@ ], "src": "1402:14:28" }, - "scope": 10849, + "scope": 11445, "src": "1320:284:28", "stateMutability": "pure", "virtual": false, @@ -13419,7 +13419,7 @@ }, { "body": { - "id": 10675, + "id": 11271, "nodeType": "Block", "src": "1714:199:28", "statements": [ @@ -13429,14 +13429,14 @@ { "arguments": [ { - "id": 10668, + "id": 11264, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10660, + "referencedDeclaration": 11256, "src": "1873:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } } @@ -13444,22 +13444,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } ], - "id": 10667, + "id": 11263, "name": "encodePegOutPart1", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10773, + "referencedDeclaration": 11369, "src": "1855:17:28", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PegOutQuote_$10638_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeIdentifier": "t_function_internal_pure$_t_struct$_PegOutQuote_$11234_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (struct QuotesV2.PegOutQuote memory) pure returns (bytes memory)" } }, - "id": 10669, + "id": 11265, "isConstant": false, "isLValue": false, "isPure": false, @@ -13478,14 +13478,14 @@ { "arguments": [ { - "id": 10671, + "id": 11267, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10660, + "referencedDeclaration": 11256, "src": "1899:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } } @@ -13493,22 +13493,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } ], - "id": 10670, + "id": 11266, "name": "encodePegOutPart2", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10806, + "referencedDeclaration": 11402, "src": "1881:17:28", "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PegOutQuote_$10638_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeIdentifier": "t_function_internal_pure$_t_struct$_PegOutQuote_$11234_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (struct QuotesV2.PegOutQuote memory) pure returns (bytes memory)" } }, - "id": 10672, + "id": 11268, "isConstant": false, "isLValue": false, "isPure": false, @@ -13537,7 +13537,7 @@ } ], "expression": { - "id": 10665, + "id": 11261, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -13548,7 +13548,7 @@ "typeString": "abi" } }, - "id": 10666, + "id": 11262, "isConstant": false, "isLValue": false, "isPure": true, @@ -13562,7 +13562,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 10673, + "id": 11269, "isConstant": false, "isLValue": false, "isPure": false, @@ -13578,15 +13578,15 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 10664, - "id": 10674, + "functionReturnParameters": 11260, + "id": 11270, "nodeType": "Return", "src": "1837:69:28" } ] }, "functionSelector": "1280c738", - "id": 10676, + "id": 11272, "implemented": true, "kind": "function", "modifiers": [], @@ -13594,41 +13594,41 @@ "nameLocation": "1619:17:28", "nodeType": "FunctionDefinition", "parameters": { - "id": 10661, + "id": 11257, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10660, + "id": 11256, "mutability": "mutable", "name": "quote", "nameLocation": "1665:5:28", "nodeType": "VariableDeclaration", - "scope": 10676, + "scope": 11272, "src": "1646:24:28", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote" }, "typeName": { - "id": 10659, + "id": 11255, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10658, + "id": 11254, "name": "PegOutQuote", "nameLocations": [ "1646:11:28" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10638, + "referencedDeclaration": 11234, "src": "1646:11:28" }, - "referencedDeclaration": 10638, + "referencedDeclaration": 11234, "src": "1646:11:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote" } }, @@ -13638,17 +13638,17 @@ "src": "1636:40:28" }, "returnParameters": { - "id": 10664, + "id": 11260, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10663, + "id": 11259, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10676, + "scope": 11272, "src": "1700:12:28", "stateVariable": false, "storageLocation": "memory", @@ -13657,7 +13657,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10662, + "id": 11258, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1700:5:28", @@ -13671,7 +13671,7 @@ ], "src": "1699:14:28" }, - "scope": 10849, + "scope": 11445, "src": "1610:303:28", "stateMutability": "pure", "virtual": false, @@ -13679,7 +13679,7 @@ }, { "body": { - "id": 10706, + "id": 11302, "nodeType": "Block", "src": "2015:417:28", "statements": [ @@ -13688,18 +13688,18 @@ "arguments": [ { "expression": { - "id": 10686, + "id": 11282, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10679, + "referencedDeclaration": 11275, "src": "2072:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10687, + "id": 11283, "isConstant": false, "isLValue": true, "isPure": false, @@ -13707,7 +13707,7 @@ "memberLocation": "2078:13:28", "memberName": "fedBtcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10560, + "referencedDeclaration": 11156, "src": "2072:19:28", "typeDescriptions": { "typeIdentifier": "t_bytes20", @@ -13716,18 +13716,18 @@ }, { "expression": { - "id": 10688, + "id": 11284, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10679, + "referencedDeclaration": 11275, "src": "2109:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10689, + "id": 11285, "isConstant": false, "isLValue": true, "isPure": false, @@ -13735,7 +13735,7 @@ "memberLocation": "2115:10:28", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10562, + "referencedDeclaration": 11158, "src": "2109:16:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -13744,18 +13744,18 @@ }, { "expression": { - "id": 10690, + "id": 11286, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10679, + "referencedDeclaration": 11275, "src": "2143:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10691, + "id": 11287, "isConstant": false, "isLValue": true, "isPure": false, @@ -13763,7 +13763,7 @@ "memberLocation": "2149:27:28", "memberName": "liquidityProviderRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10564, + "referencedDeclaration": 11160, "src": "2143:33:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -13772,18 +13772,18 @@ }, { "expression": { - "id": 10692, + "id": 11288, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10679, + "referencedDeclaration": 11275, "src": "2194:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10693, + "id": 11289, "isConstant": false, "isLValue": true, "isPure": false, @@ -13791,7 +13791,7 @@ "memberLocation": "2200:16:28", "memberName": "btcRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10566, + "referencedDeclaration": 11162, "src": "2194:22:28", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -13800,18 +13800,18 @@ }, { "expression": { - "id": 10694, + "id": 11290, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10679, + "referencedDeclaration": 11275, "src": "2234:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10695, + "id": 11291, "isConstant": false, "isLValue": true, "isPure": false, @@ -13819,7 +13819,7 @@ "memberLocation": "2240:16:28", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10568, + "referencedDeclaration": 11164, "src": "2234:22:28", "typeDescriptions": { "typeIdentifier": "t_address_payable", @@ -13828,18 +13828,18 @@ }, { "expression": { - "id": 10696, + "id": 11292, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10679, + "referencedDeclaration": 11275, "src": "2274:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10697, + "id": 11293, "isConstant": false, "isLValue": true, "isPure": false, @@ -13847,7 +13847,7 @@ "memberLocation": "2280:27:28", "memberName": "liquidityProviderBtcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10570, + "referencedDeclaration": 11166, "src": "2274:33:28", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -13856,18 +13856,18 @@ }, { "expression": { - "id": 10698, + "id": 11294, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10679, + "referencedDeclaration": 11275, "src": "2325:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10699, + "id": 11295, "isConstant": false, "isLValue": true, "isPure": false, @@ -13875,7 +13875,7 @@ "memberLocation": "2331:7:28", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10572, + "referencedDeclaration": 11168, "src": "2325:13:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -13884,18 +13884,18 @@ }, { "expression": { - "id": 10700, + "id": 11296, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10679, + "referencedDeclaration": 11275, "src": "2356:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10701, + "id": 11297, "isConstant": false, "isLValue": true, "isPure": false, @@ -13903,7 +13903,7 @@ "memberLocation": "2362:10:28", "memberName": "penaltyFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10574, + "referencedDeclaration": 11170, "src": "2356:16:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -13912,18 +13912,18 @@ }, { "expression": { - "id": 10702, + "id": 11298, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10679, + "referencedDeclaration": 11275, "src": "2390:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10703, + "id": 11299, "isConstant": false, "isLValue": true, "isPure": false, @@ -13931,7 +13931,7 @@ "memberLocation": "2396:15:28", "memberName": "contractAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10576, + "referencedDeclaration": 11172, "src": "2390:21:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -13979,7 +13979,7 @@ } ], "expression": { - "id": 10684, + "id": 11280, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -13990,7 +13990,7 @@ "typeString": "abi" } }, - "id": 10685, + "id": 11281, "isConstant": false, "isLValue": false, "isPure": true, @@ -14004,7 +14004,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 10704, + "id": 11300, "isConstant": false, "isLValue": false, "isPure": false, @@ -14020,14 +14020,14 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 10683, - "id": 10705, + "functionReturnParameters": 11279, + "id": 11301, "nodeType": "Return", "src": "2025:400:28" } ] }, - "id": 10707, + "id": 11303, "implemented": true, "kind": "function", "modifiers": [], @@ -14035,41 +14035,41 @@ "nameLocation": "1928:11:28", "nodeType": "FunctionDefinition", "parameters": { - "id": 10680, + "id": 11276, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10679, + "id": 11275, "mutability": "mutable", "name": "quote", "nameLocation": "1967:5:28", "nodeType": "VariableDeclaration", - "scope": 10707, + "scope": 11303, "src": "1949:23:28", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote" }, "typeName": { - "id": 10678, + "id": 11274, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10677, + "id": 11273, "name": "PeginQuote", "nameLocations": [ "1949:10:28" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10599, + "referencedDeclaration": 11195, "src": "1949:10:28" }, - "referencedDeclaration": 10599, + "referencedDeclaration": 11195, "src": "1949:10:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_storage_ptr", "typeString": "struct QuotesV2.PeginQuote" } }, @@ -14079,17 +14079,17 @@ "src": "1939:39:28" }, "returnParameters": { - "id": 10683, + "id": 11279, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10682, + "id": 11278, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10707, + "scope": 11303, "src": "2001:12:28", "stateVariable": false, "storageLocation": "memory", @@ -14098,7 +14098,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10681, + "id": 11277, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2001:5:28", @@ -14112,7 +14112,7 @@ ], "src": "2000:14:28" }, - "scope": 10849, + "scope": 11445, "src": "1919:513:28", "stateMutability": "pure", "virtual": false, @@ -14120,7 +14120,7 @@ }, { "body": { - "id": 10741, + "id": 11337, "nodeType": "Block", "src": "2534:442:28", "statements": [ @@ -14129,18 +14129,18 @@ "arguments": [ { "expression": { - "id": 10717, + "id": 11313, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10710, + "referencedDeclaration": 11306, "src": "2591:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10718, + "id": 11314, "isConstant": false, "isLValue": true, "isPure": false, @@ -14148,7 +14148,7 @@ "memberLocation": "2597:4:28", "memberName": "data", "nodeType": "MemberAccess", - "referencedDeclaration": 10578, + "referencedDeclaration": 11174, "src": "2591:10:28", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -14157,18 +14157,18 @@ }, { "expression": { - "id": 10719, + "id": 11315, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10710, + "referencedDeclaration": 11306, "src": "2619:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10720, + "id": 11316, "isConstant": false, "isLValue": true, "isPure": false, @@ -14176,7 +14176,7 @@ "memberLocation": "2625:8:28", "memberName": "gasLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10580, + "referencedDeclaration": 11176, "src": "2619:14:28", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -14185,18 +14185,18 @@ }, { "expression": { - "id": 10721, + "id": 11317, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10710, + "referencedDeclaration": 11306, "src": "2651:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10722, + "id": 11318, "isConstant": false, "isLValue": true, "isPure": false, @@ -14204,7 +14204,7 @@ "memberLocation": "2657:5:28", "memberName": "nonce", "nodeType": "MemberAccess", - "referencedDeclaration": 10582, + "referencedDeclaration": 11178, "src": "2651:11:28", "typeDescriptions": { "typeIdentifier": "t_int64", @@ -14213,18 +14213,18 @@ }, { "expression": { - "id": 10723, + "id": 11319, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10710, + "referencedDeclaration": 11306, "src": "2680:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10724, + "id": 11320, "isConstant": false, "isLValue": true, "isPure": false, @@ -14232,7 +14232,7 @@ "memberLocation": "2686:5:28", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10584, + "referencedDeclaration": 11180, "src": "2680:11:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14241,18 +14241,18 @@ }, { "expression": { - "id": 10725, + "id": 11321, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10710, + "referencedDeclaration": 11306, "src": "2709:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10726, + "id": 11322, "isConstant": false, "isLValue": true, "isPure": false, @@ -14260,7 +14260,7 @@ "memberLocation": "2715:18:28", "memberName": "agreementTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 10586, + "referencedDeclaration": 11182, "src": "2709:24:28", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -14269,18 +14269,18 @@ }, { "expression": { - "id": 10727, + "id": 11323, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10710, + "referencedDeclaration": 11306, "src": "2751:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10728, + "id": 11324, "isConstant": false, "isLValue": true, "isPure": false, @@ -14288,7 +14288,7 @@ "memberLocation": "2757:14:28", "memberName": "timeForDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 10588, + "referencedDeclaration": 11184, "src": "2751:20:28", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -14297,18 +14297,18 @@ }, { "expression": { - "id": 10729, + "id": 11325, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10710, + "referencedDeclaration": 11306, "src": "2789:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10730, + "id": 11326, "isConstant": false, "isLValue": true, "isPure": false, @@ -14316,7 +14316,7 @@ "memberLocation": "2795:8:28", "memberName": "callTime", "nodeType": "MemberAccess", - "referencedDeclaration": 10590, + "referencedDeclaration": 11186, "src": "2789:14:28", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -14325,18 +14325,18 @@ }, { "expression": { - "id": 10731, + "id": 11327, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10710, + "referencedDeclaration": 11306, "src": "2821:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10732, + "id": 11328, "isConstant": false, "isLValue": true, "isPure": false, @@ -14344,7 +14344,7 @@ "memberLocation": "2827:20:28", "memberName": "depositConfirmations", "nodeType": "MemberAccess", - "referencedDeclaration": 10592, + "referencedDeclaration": 11188, "src": "2821:26:28", "typeDescriptions": { "typeIdentifier": "t_uint16", @@ -14353,18 +14353,18 @@ }, { "expression": { - "id": 10733, + "id": 11329, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10710, + "referencedDeclaration": 11306, "src": "2865:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10734, + "id": 11330, "isConstant": false, "isLValue": true, "isPure": false, @@ -14372,7 +14372,7 @@ "memberLocation": "2871:14:28", "memberName": "callOnRegister", "nodeType": "MemberAccess", - "referencedDeclaration": 10594, + "referencedDeclaration": 11190, "src": "2865:20:28", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -14381,18 +14381,18 @@ }, { "expression": { - "id": 10735, + "id": 11331, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10710, + "referencedDeclaration": 11306, "src": "2903:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10736, + "id": 11332, "isConstant": false, "isLValue": true, "isPure": false, @@ -14400,7 +14400,7 @@ "memberLocation": "2909:16:28", "memberName": "productFeeAmount", "nodeType": "MemberAccess", - "referencedDeclaration": 10596, + "referencedDeclaration": 11192, "src": "2903:22:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14409,18 +14409,18 @@ }, { "expression": { - "id": 10737, + "id": 11333, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10710, + "referencedDeclaration": 11306, "src": "2943:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10738, + "id": 11334, "isConstant": false, "isLValue": true, "isPure": false, @@ -14428,7 +14428,7 @@ "memberLocation": "2949:6:28", "memberName": "gasFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10598, + "referencedDeclaration": 11194, "src": "2943:12:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14484,7 +14484,7 @@ } ], "expression": { - "id": 10715, + "id": 11311, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -14495,7 +14495,7 @@ "typeString": "abi" } }, - "id": 10716, + "id": 11312, "isConstant": false, "isLValue": false, "isPure": true, @@ -14509,7 +14509,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 10739, + "id": 11335, "isConstant": false, "isLValue": false, "isPure": false, @@ -14525,14 +14525,14 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 10714, - "id": 10740, + "functionReturnParameters": 11310, + "id": 11336, "nodeType": "Return", "src": "2544:425:28" } ] }, - "id": 10742, + "id": 11338, "implemented": true, "kind": "function", "modifiers": [], @@ -14540,41 +14540,41 @@ "nameLocation": "2447:11:28", "nodeType": "FunctionDefinition", "parameters": { - "id": 10711, + "id": 11307, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10710, + "id": 11306, "mutability": "mutable", "name": "quote", "nameLocation": "2486:5:28", "nodeType": "VariableDeclaration", - "scope": 10742, + "scope": 11338, "src": "2468:23:28", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote" }, "typeName": { - "id": 10709, + "id": 11305, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10708, + "id": 11304, "name": "PeginQuote", "nameLocations": [ "2468:10:28" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10599, + "referencedDeclaration": 11195, "src": "2468:10:28" }, - "referencedDeclaration": 10599, + "referencedDeclaration": 11195, "src": "2468:10:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_storage_ptr", "typeString": "struct QuotesV2.PeginQuote" } }, @@ -14584,17 +14584,17 @@ "src": "2458:39:28" }, "returnParameters": { - "id": 10714, + "id": 11310, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10713, + "id": 11309, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10742, + "scope": 11338, "src": "2520:12:28", "stateVariable": false, "storageLocation": "memory", @@ -14603,7 +14603,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10712, + "id": 11308, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2520:5:28", @@ -14617,7 +14617,7 @@ ], "src": "2519:14:28" }, - "scope": 10849, + "scope": 11445, "src": "2438:538:28", "stateMutability": "pure", "virtual": false, @@ -14625,7 +14625,7 @@ }, { "body": { - "id": 10772, + "id": 11368, "nodeType": "Block", "src": "3085:379:28", "statements": [ @@ -14634,18 +14634,18 @@ "arguments": [ { "expression": { - "id": 10752, + "id": 11348, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10745, + "referencedDeclaration": 11341, "src": "3142:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10753, + "id": 11349, "isConstant": false, "isLValue": true, "isPure": false, @@ -14653,7 +14653,7 @@ "memberLocation": "3148:10:28", "memberName": "lbcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10601, + "referencedDeclaration": 11197, "src": "3142:16:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -14662,18 +14662,18 @@ }, { "expression": { - "id": 10754, + "id": 11350, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10745, + "referencedDeclaration": 11341, "src": "3176:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10755, + "id": 11351, "isConstant": false, "isLValue": true, "isPure": false, @@ -14681,7 +14681,7 @@ "memberLocation": "3182:12:28", "memberName": "lpRskAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10603, + "referencedDeclaration": 11199, "src": "3176:18:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -14690,18 +14690,18 @@ }, { "expression": { - "id": 10756, + "id": 11352, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10745, + "referencedDeclaration": 11341, "src": "3212:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10757, + "id": 11353, "isConstant": false, "isLValue": true, "isPure": false, @@ -14709,7 +14709,7 @@ "memberLocation": "3218:16:28", "memberName": "btcRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10605, + "referencedDeclaration": 11201, "src": "3212:22:28", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -14718,18 +14718,18 @@ }, { "expression": { - "id": 10758, + "id": 11354, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10745, + "referencedDeclaration": 11341, "src": "3252:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10759, + "id": 11355, "isConstant": false, "isLValue": true, "isPure": false, @@ -14737,7 +14737,7 @@ "memberLocation": "3258:16:28", "memberName": "rskRefundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10607, + "referencedDeclaration": 11203, "src": "3252:22:28", "typeDescriptions": { "typeIdentifier": "t_address", @@ -14746,18 +14746,18 @@ }, { "expression": { - "id": 10760, + "id": 11356, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10745, + "referencedDeclaration": 11341, "src": "3292:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10761, + "id": 11357, "isConstant": false, "isLValue": true, "isPure": false, @@ -14765,7 +14765,7 @@ "memberLocation": "3298:12:28", "memberName": "lpBtcAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10609, + "referencedDeclaration": 11205, "src": "3292:18:28", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -14774,18 +14774,18 @@ }, { "expression": { - "id": 10762, + "id": 11358, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10745, + "referencedDeclaration": 11341, "src": "3328:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10763, + "id": 11359, "isConstant": false, "isLValue": true, "isPure": false, @@ -14793,7 +14793,7 @@ "memberLocation": "3334:7:28", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10611, + "referencedDeclaration": 11207, "src": "3328:13:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14802,18 +14802,18 @@ }, { "expression": { - "id": 10764, + "id": 11360, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10745, + "referencedDeclaration": 11341, "src": "3359:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10765, + "id": 11361, "isConstant": false, "isLValue": true, "isPure": false, @@ -14821,7 +14821,7 @@ "memberLocation": "3365:10:28", "memberName": "penaltyFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10613, + "referencedDeclaration": 11209, "src": "3359:16:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14830,18 +14830,18 @@ }, { "expression": { - "id": 10766, + "id": 11362, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10745, + "referencedDeclaration": 11341, "src": "3393:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10767, + "id": 11363, "isConstant": false, "isLValue": true, "isPure": false, @@ -14849,7 +14849,7 @@ "memberLocation": "3399:5:28", "memberName": "nonce", "nodeType": "MemberAccess", - "referencedDeclaration": 10615, + "referencedDeclaration": 11211, "src": "3393:11:28", "typeDescriptions": { "typeIdentifier": "t_int64", @@ -14858,18 +14858,18 @@ }, { "expression": { - "id": 10768, + "id": 11364, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10745, + "referencedDeclaration": 11341, "src": "3422:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10769, + "id": 11365, "isConstant": false, "isLValue": true, "isPure": false, @@ -14877,7 +14877,7 @@ "memberLocation": "3428:15:28", "memberName": "deposityAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 10617, + "referencedDeclaration": 11213, "src": "3422:21:28", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -14925,7 +14925,7 @@ } ], "expression": { - "id": 10750, + "id": 11346, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -14936,7 +14936,7 @@ "typeString": "abi" } }, - "id": 10751, + "id": 11347, "isConstant": false, "isLValue": false, "isPure": true, @@ -14950,7 +14950,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 10770, + "id": 11366, "isConstant": false, "isLValue": false, "isPure": false, @@ -14966,14 +14966,14 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 10749, - "id": 10771, + "functionReturnParameters": 11345, + "id": 11367, "nodeType": "Return", "src": "3095:362:28" } ] }, - "id": 10773, + "id": 11369, "implemented": true, "kind": "function", "modifiers": [], @@ -14981,41 +14981,41 @@ "nameLocation": "2991:17:28", "nodeType": "FunctionDefinition", "parameters": { - "id": 10746, + "id": 11342, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10745, + "id": 11341, "mutability": "mutable", "name": "quote", "nameLocation": "3037:5:28", "nodeType": "VariableDeclaration", - "scope": 10773, + "scope": 11369, "src": "3018:24:28", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote" }, "typeName": { - "id": 10744, + "id": 11340, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10743, + "id": 11339, "name": "PegOutQuote", "nameLocations": [ "3018:11:28" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10638, + "referencedDeclaration": 11234, "src": "3018:11:28" }, - "referencedDeclaration": 10638, + "referencedDeclaration": 11234, "src": "3018:11:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote" } }, @@ -15025,17 +15025,17 @@ "src": "3008:40:28" }, "returnParameters": { - "id": 10749, + "id": 11345, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10748, + "id": 11344, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10773, + "scope": 11369, "src": "3071:12:28", "stateVariable": false, "storageLocation": "memory", @@ -15044,7 +15044,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10747, + "id": 11343, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3071:5:28", @@ -15058,7 +15058,7 @@ ], "src": "3070:14:28" }, - "scope": 10849, + "scope": 11445, "src": "2982:482:28", "stateMutability": "pure", "virtual": false, @@ -15066,7 +15066,7 @@ }, { "body": { - "id": 10805, + "id": 11401, "nodeType": "Block", "src": "3573:435:28", "statements": [ @@ -15075,18 +15075,18 @@ "arguments": [ { "expression": { - "id": 10783, + "id": 11379, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10776, + "referencedDeclaration": 11372, "src": "3630:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10784, + "id": 11380, "isConstant": false, "isLValue": true, "isPure": false, @@ -15094,7 +15094,7 @@ "memberLocation": "3636:5:28", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10619, + "referencedDeclaration": 11215, "src": "3630:11:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -15103,18 +15103,18 @@ }, { "expression": { - "id": 10785, + "id": 11381, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10776, + "referencedDeclaration": 11372, "src": "3659:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10786, + "id": 11382, "isConstant": false, "isLValue": true, "isPure": false, @@ -15122,7 +15122,7 @@ "memberLocation": "3665:18:28", "memberName": "agreementTimestamp", "nodeType": "MemberAccess", - "referencedDeclaration": 10621, + "referencedDeclaration": 11217, "src": "3659:24:28", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -15131,18 +15131,18 @@ }, { "expression": { - "id": 10787, + "id": 11383, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10776, + "referencedDeclaration": 11372, "src": "3701:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10788, + "id": 11384, "isConstant": false, "isLValue": true, "isPure": false, @@ -15150,7 +15150,7 @@ "memberLocation": "3707:16:28", "memberName": "depositDateLimit", "nodeType": "MemberAccess", - "referencedDeclaration": 10623, + "referencedDeclaration": 11219, "src": "3701:22:28", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -15159,18 +15159,18 @@ }, { "expression": { - "id": 10789, + "id": 11385, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10776, + "referencedDeclaration": 11372, "src": "3741:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10790, + "id": 11386, "isConstant": false, "isLValue": true, "isPure": false, @@ -15178,7 +15178,7 @@ "memberLocation": "3747:20:28", "memberName": "depositConfirmations", "nodeType": "MemberAccess", - "referencedDeclaration": 10625, + "referencedDeclaration": 11221, "src": "3741:26:28", "typeDescriptions": { "typeIdentifier": "t_uint16", @@ -15187,18 +15187,18 @@ }, { "expression": { - "id": 10791, + "id": 11387, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10776, + "referencedDeclaration": 11372, "src": "3785:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10792, + "id": 11388, "isConstant": false, "isLValue": true, "isPure": false, @@ -15206,7 +15206,7 @@ "memberLocation": "3791:21:28", "memberName": "transferConfirmations", "nodeType": "MemberAccess", - "referencedDeclaration": 10627, + "referencedDeclaration": 11223, "src": "3785:27:28", "typeDescriptions": { "typeIdentifier": "t_uint16", @@ -15215,18 +15215,18 @@ }, { "expression": { - "id": 10793, + "id": 11389, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10776, + "referencedDeclaration": 11372, "src": "3830:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10794, + "id": 11390, "isConstant": false, "isLValue": true, "isPure": false, @@ -15234,7 +15234,7 @@ "memberLocation": "3836:12:28", "memberName": "transferTime", "nodeType": "MemberAccess", - "referencedDeclaration": 10629, + "referencedDeclaration": 11225, "src": "3830:18:28", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -15243,18 +15243,18 @@ }, { "expression": { - "id": 10795, + "id": 11391, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10776, + "referencedDeclaration": 11372, "src": "3866:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10796, + "id": 11392, "isConstant": false, "isLValue": true, "isPure": false, @@ -15262,7 +15262,7 @@ "memberLocation": "3872:10:28", "memberName": "expireDate", "nodeType": "MemberAccess", - "referencedDeclaration": 10631, + "referencedDeclaration": 11227, "src": "3866:16:28", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -15271,18 +15271,18 @@ }, { "expression": { - "id": 10797, + "id": 11393, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10776, + "referencedDeclaration": 11372, "src": "3900:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10798, + "id": 11394, "isConstant": false, "isLValue": true, "isPure": false, @@ -15290,7 +15290,7 @@ "memberLocation": "3906:11:28", "memberName": "expireBlock", "nodeType": "MemberAccess", - "referencedDeclaration": 10633, + "referencedDeclaration": 11229, "src": "3900:17:28", "typeDescriptions": { "typeIdentifier": "t_uint32", @@ -15299,18 +15299,18 @@ }, { "expression": { - "id": 10799, + "id": 11395, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10776, + "referencedDeclaration": 11372, "src": "3935:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10800, + "id": 11396, "isConstant": false, "isLValue": true, "isPure": false, @@ -15318,7 +15318,7 @@ "memberLocation": "3941:16:28", "memberName": "productFeeAmount", "nodeType": "MemberAccess", - "referencedDeclaration": 10635, + "referencedDeclaration": 11231, "src": "3935:22:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -15327,18 +15327,18 @@ }, { "expression": { - "id": 10801, + "id": 11397, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10776, + "referencedDeclaration": 11372, "src": "3975:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote memory" } }, - "id": 10802, + "id": 11398, "isConstant": false, "isLValue": true, "isPure": false, @@ -15346,7 +15346,7 @@ "memberLocation": "3981:6:28", "memberName": "gasFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10637, + "referencedDeclaration": 11233, "src": "3975:12:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -15398,7 +15398,7 @@ } ], "expression": { - "id": 10781, + "id": 11377, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -15409,7 +15409,7 @@ "typeString": "abi" } }, - "id": 10782, + "id": 11378, "isConstant": false, "isLValue": false, "isPure": true, @@ -15423,7 +15423,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 10803, + "id": 11399, "isConstant": false, "isLValue": false, "isPure": false, @@ -15439,14 +15439,14 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 10780, - "id": 10804, + "functionReturnParameters": 11376, + "id": 11400, "nodeType": "Return", "src": "3583:418:28" } ] }, - "id": 10806, + "id": 11402, "implemented": true, "kind": "function", "modifiers": [], @@ -15454,41 +15454,41 @@ "nameLocation": "3479:17:28", "nodeType": "FunctionDefinition", "parameters": { - "id": 10777, + "id": 11373, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10776, + "id": 11372, "mutability": "mutable", "name": "quote", "nameLocation": "3525:5:28", "nodeType": "VariableDeclaration", - "scope": 10806, + "scope": 11402, "src": "3506:24:28", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_memory_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_memory_ptr", "typeString": "struct QuotesV2.PegOutQuote" }, "typeName": { - "id": 10775, + "id": 11371, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10774, + "id": 11370, "name": "PegOutQuote", "nameLocations": [ "3506:11:28" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10638, + "referencedDeclaration": 11234, "src": "3506:11:28" }, - "referencedDeclaration": 10638, + "referencedDeclaration": 11234, "src": "3506:11:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10638_storage_ptr", + "typeIdentifier": "t_struct$_PegOutQuote_$11234_storage_ptr", "typeString": "struct QuotesV2.PegOutQuote" } }, @@ -15498,17 +15498,17 @@ "src": "3496:40:28" }, "returnParameters": { - "id": 10780, + "id": 11376, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10779, + "id": 11375, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10806, + "scope": 11402, "src": "3559:12:28", "stateVariable": false, "storageLocation": "memory", @@ -15517,7 +15517,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10778, + "id": 11374, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3559:5:28", @@ -15531,7 +15531,7 @@ ], "src": "3558:14:28" }, - "scope": 10849, + "scope": 11445, "src": "3470:538:28", "stateMutability": "pure", "virtual": false, @@ -15539,23 +15539,23 @@ }, { "body": { - "id": 10847, + "id": 11443, "nodeType": "Block", "src": "4126:422:28", "statements": [ { "assignments": [ - 10815 + 11411 ], "declarations": [ { "constant": false, - "id": 10815, + "id": 11411, "mutability": "mutable", "name": "agreedAmount", "nameLocation": "4141:12:28", "nodeType": "VariableDeclaration", - "scope": 10847, + "scope": 11443, "src": "4136:17:28", "stateVariable": false, "storageLocation": "default", @@ -15564,7 +15564,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10814, + "id": 11410, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4136:4:28", @@ -15576,10 +15576,10 @@ "visibility": "internal" } ], - "id": 10817, + "id": 11413, "initialValue": { "hexValue": "30", - "id": 10816, + "id": 11412, "isConstant": false, "isLValue": false, "isPure": true, @@ -15598,17 +15598,17 @@ }, { "expression": { - "id": 10830, + "id": 11426, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 10818, + "id": 11414, "name": "agreedAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10815, + "referencedDeclaration": 11411, "src": "4167:12:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -15622,7 +15622,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10829, + "id": 11425, "isConstant": false, "isLValue": false, "isPure": false, @@ -15632,7 +15632,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10826, + "id": 11422, "isConstant": false, "isLValue": false, "isPure": false, @@ -15642,25 +15642,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10823, + "id": 11419, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 10819, + "id": 11415, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10809, + "referencedDeclaration": 11405, "src": "4182:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10820, + "id": 11416, "isConstant": false, "isLValue": true, "isPure": false, @@ -15668,7 +15668,7 @@ "memberLocation": "4188:5:28", "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 10584, + "referencedDeclaration": 11180, "src": "4182:11:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -15679,18 +15679,18 @@ "operator": "+", "rightExpression": { "expression": { - "id": 10821, + "id": 11417, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10809, + "referencedDeclaration": 11405, "src": "4196:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10822, + "id": 11418, "isConstant": false, "isLValue": true, "isPure": false, @@ -15698,7 +15698,7 @@ "memberLocation": "4202:7:28", "memberName": "callFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10572, + "referencedDeclaration": 11168, "src": "4196:13:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -15715,18 +15715,18 @@ "operator": "+", "rightExpression": { "expression": { - "id": 10824, + "id": 11420, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10809, + "referencedDeclaration": 11405, "src": "4212:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10825, + "id": 11421, "isConstant": false, "isLValue": true, "isPure": false, @@ -15734,7 +15734,7 @@ "memberLocation": "4218:16:28", "memberName": "productFeeAmount", "nodeType": "MemberAccess", - "referencedDeclaration": 10596, + "referencedDeclaration": 11192, "src": "4212:22:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -15751,18 +15751,18 @@ "operator": "+", "rightExpression": { "expression": { - "id": 10827, + "id": 11423, "name": "quote", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10809, + "referencedDeclaration": 11405, "src": "4237:5:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote memory" } }, - "id": 10828, + "id": 11424, "isConstant": false, "isLValue": true, "isPure": false, @@ -15770,7 +15770,7 @@ "memberLocation": "4243:6:28", "memberName": "gasFee", "nodeType": "MemberAccess", - "referencedDeclaration": 10598, + "referencedDeclaration": 11194, "src": "4237:12:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -15789,23 +15789,23 @@ "typeString": "uint256" } }, - "id": 10831, + "id": 11427, "nodeType": "ExpressionStatement", "src": "4167:82:28" }, { "assignments": [ - 10833 + 11429 ], "declarations": [ { "constant": false, - "id": 10833, + "id": 11429, "mutability": "mutable", "name": "delta", "nameLocation": "4266:5:28", "nodeType": "VariableDeclaration", - "scope": 10847, + "scope": 11443, "src": "4261:10:28", "stateVariable": false, "storageLocation": "default", @@ -15814,7 +15814,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10832, + "id": 11428, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4261:4:28", @@ -15826,23 +15826,23 @@ "visibility": "internal" } ], - "id": 10837, + "id": 11433, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10836, + "id": 11432, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 10834, + "id": 11430, "name": "agreedAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10815, + "referencedDeclaration": 11411, "src": "4274:12:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -15853,7 +15853,7 @@ "operator": "/", "rightExpression": { "hexValue": "3130303030", - "id": 10835, + "id": 11431, "isConstant": false, "isLValue": false, "isPure": true, @@ -15884,17 +15884,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10843, + "id": 11439, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 10839, + "id": 11435, "name": "transferredAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10811, + "referencedDeclaration": 11407, "src": "4468:17:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -15908,17 +15908,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 10842, + "id": 11438, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 10840, + "id": 11436, "name": "agreedAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10815, + "referencedDeclaration": 11411, "src": "4489:12:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -15928,11 +15928,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 10841, + "id": 11437, "name": "delta", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10833, + "referencedDeclaration": 11429, "src": "4504:5:28", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -15953,7 +15953,7 @@ }, { "hexValue": "4c4243303537", - "id": 10844, + "id": 11440, "isConstant": false, "isLValue": false, "isPure": true, @@ -15979,7 +15979,7 @@ "typeString": "literal_string \"LBC057\"" } ], - "id": 10838, + "id": 11434, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -15993,7 +15993,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 10845, + "id": 11441, "isConstant": false, "isLValue": false, "isPure": false, @@ -16009,14 +16009,14 @@ "typeString": "tuple()" } }, - "id": 10846, + "id": 11442, "nodeType": "ExpressionStatement", "src": "4447:94:28" } ] }, "functionSelector": "fa6ea3e7", - "id": 10848, + "id": 11444, "implemented": true, "kind": "function", "modifiers": [], @@ -16024,41 +16024,41 @@ "nameLocation": "4023:17:28", "nodeType": "FunctionDefinition", "parameters": { - "id": 10812, + "id": 11408, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10809, + "id": 11405, "mutability": "mutable", "name": "quote", "nameLocation": "4068:5:28", "nodeType": "VariableDeclaration", - "scope": 10848, + "scope": 11444, "src": "4050:23:28", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_memory_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_memory_ptr", "typeString": "struct QuotesV2.PeginQuote" }, "typeName": { - "id": 10808, + "id": 11404, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 10807, + "id": 11403, "name": "PeginQuote", "nameLocations": [ "4050:10:28" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 10599, + "referencedDeclaration": 11195, "src": "4050:10:28" }, - "referencedDeclaration": 10599, + "referencedDeclaration": 11195, "src": "4050:10:28", "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10599_storage_ptr", + "typeIdentifier": "t_struct$_PeginQuote_$11195_storage_ptr", "typeString": "struct QuotesV2.PeginQuote" } }, @@ -16066,12 +16066,12 @@ }, { "constant": false, - "id": 10811, + "id": 11407, "mutability": "mutable", "name": "transferredAmount", "nameLocation": "4088:17:28", "nodeType": "VariableDeclaration", - "scope": 10848, + "scope": 11444, "src": "4083:22:28", "stateVariable": false, "storageLocation": "default", @@ -16080,7 +16080,7 @@ "typeString": "uint256" }, "typeName": { - "id": 10810, + "id": 11406, "name": "uint", "nodeType": "ElementaryTypeName", "src": "4083:4:28", @@ -16095,19 +16095,19 @@ "src": "4040:71:28" }, "returnParameters": { - "id": 10813, + "id": 11409, "nodeType": "ParameterList", "parameters": [], "src": "4126:0:28" }, - "scope": 10849, + "scope": 11445, "src": "4014:534:28", "stateMutability": "pure", "virtual": false, "visibility": "external" } ], - "scope": 10850, + "scope": 11446, "src": "58:4493:28", "usedErrors": [] } @@ -16127,7 +16127,7 @@ } }, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:56:36.724Z", + "updatedAt": "2024-08-13T18:16:26.103Z", "networkType": "ethereum", "devdoc": { "kind": "dev", diff --git a/build/contracts/ReentrancyGuardUpgradeable.json b/build/contracts/ReentrancyGuardUpgradeable.json index 4515188..3035b6d 100644 --- a/build/contracts/ReentrancyGuardUpgradeable.json +++ b/build/contracts/ReentrancyGuardUpgradeable.json @@ -956,7 +956,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.105Z", + "updatedAt": "2024-08-13T18:10:00.942Z", "devdoc": { "details": "Contract module that helps prevent reentrant calls to a function. Inheriting from `ReentrancyGuard` will make the {nonReentrant} modifier available, which can be applied to functions to make sure there are no nested (reentrant) calls to them. Note that because there is a single `nonReentrant` guard, functions marked as `nonReentrant` may not call one another. This can be worked around by making those functions `private`, and then adding `external` `nonReentrant` entry points to them. TIP: If you would like to learn more about reentrancy and alternative ways to protect against it, check out our blog post https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul].", "events": { diff --git a/build/contracts/SignatureValidator.json b/build/contracts/SignatureValidator.json index b211f6b..aae9380 100644 --- a/build/contracts/SignatureValidator.json +++ b/build/contracts/SignatureValidator.json @@ -2106,20 +2106,20 @@ "sourceMap": "58:913:29:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;58:913:29;;;;;;;;;;;;;;;;;", "deployedSourceMap": "58:913:29:-:0;;;;;;;;;;;;;;;;;;;;;;;;373:596;;;;;;:::i;:::-;;:::i;:::-;;;1487:14:32;;1480:22;1462:41;;1450:2;1435:18;373:596:29;;;;;;;;593:4;578:20;;;572:27;638:4;623:20;;;617:27;691:4;676:20;;670:27;770:56;;;;;;;;;;-1:-1:-1;;;770:56:29;;;;869:35;;467:4;;617:27;;662:36;;;;467:4;;869:35;;770:56;;894:9;;869:35;;:::i;:::-;;;;-1:-1:-1;;869:35:29;;;;;;;;;859:46;;869:35;859:46;;;;922:32;;;;;;;;;2202:25:32;;;2275:4;2263:17;;2243:18;;;2236:45;;;;2297:18;;;2290:34;;;2340:18;;;2333:34;;;859:46:29;-1:-1:-1;;;;;;922:40:29;;;:32;;2174:19:32;;922:32:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;922:40:29;;915:47;;;;;;;373:596;;;;;:::o;14:127:32:-;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:1163;232:6;240;248;301:2;289:9;280:7;276:23;272:32;269:52;;;317:1;314;307:12;269:52;343:23;;-1:-1:-1;;;;;395:31:32;;385:42;;375:70;;441:1;438;431:12;375:70;464:5;-1:-1:-1;516:2:32;501:18;;488:32;;-1:-1:-1;571:2:32;556:18;;543:32;-1:-1:-1;;;;;624:14:32;;;621:34;;;651:1;648;641:12;621:34;689:6;678:9;674:22;664:32;;734:7;727:4;723:2;719:13;715:27;705:55;;756:1;753;746:12;705:55;792:2;779:16;814:2;810;807:10;804:36;;;820:18;;:::i;:::-;895:2;889:9;863:2;949:13;;-1:-1:-1;;945:22:32;;;969:2;941:31;937:40;925:53;;;993:18;;;1013:22;;;990:46;987:72;;;1039:18;;:::i;:::-;1079:10;1075:2;1068:22;1114:2;1106:6;1099:18;1154:7;1149:2;1144;1140;1136:11;1132:20;1129:33;1126:53;;;1175:1;1172;1165:12;1126:53;1231:2;1226;1222;1218:11;1213:2;1205:6;1201:15;1188:46;1276:1;1271:2;1266;1258:6;1254:15;1250:24;1243:35;1297:6;1287:16;;;;;;;146:1163;;;;;:::o;1514:456::-;1671:3;1709:6;1703:13;1734:1;1744:129;1758:6;1755:1;1752:13;1744:129;;;1856:4;1840:14;;;1836:25;;1830:32;1817:11;;;1810:53;1773:12;1744:129;;;-1:-1:-1;1892:16:32;;;;1917:18;;;-1:-1:-1;1959:4:32;1951:13;;1514:456;-1:-1:-1;1514:456:32:o", "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nlibrary SignatureValidator {\n /**\n @dev Verfies signature against address\n @param addr The signing address\n @param quoteHash The hash of the signed data\n @param signature The signature containing v, r and s\n @return True if the signature is valid, false otherwise.\n */\n function verify(address addr, bytes32 quoteHash, bytes memory signature) public pure returns (bool) {\n bytes32 r;\n bytes32 s;\n uint8 v;\n \n assembly {\n r := mload(add(signature, 0x20))\n s := mload(add(signature, 0x40))\n v := byte(0, mload(add(signature, 0x60)))\n }\n // TODO use EIP712 compatible format instead\n bytes memory prefix = \"\\x19Ethereum Signed Message:\\n32\";\n bytes32 prefixedHash = keccak256(abi.encodePacked(prefix, quoteHash));\n return ecrecover(prefixedHash, v, r, s) == addr;\n }\n}\n", - "sourcePath": "/Users/guilhermesoares/WebstormProjects/Rootstock/liquidity-bridge-contract/contracts/SignatureValidator.sol", + "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/SignatureValidator.sol", "ast": { "absolutePath": "project:/contracts/SignatureValidator.sol", "exportedSymbols": { "SignatureValidator": [ - 10898 + 11494 ] }, - "id": 10899, + "id": 11495, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 10851, + "id": 11447, "literals": [ "solidity", "^", @@ -2136,9 +2136,9 @@ "contractDependencies": [], "contractKind": "library", "fullyImplemented": true, - "id": 10898, + "id": 11494, "linearizedBaseContracts": [ - 10898 + 11494 ], "name": "SignatureValidator", "nameLocation": "66:18:29", @@ -2146,23 +2146,23 @@ "nodes": [ { "body": { - "id": 10896, + "id": 11492, "nodeType": "Block", "src": "473:496:29", "statements": [ { "assignments": [ - 10864 + 11460 ], "declarations": [ { "constant": false, - "id": 10864, + "id": 11460, "mutability": "mutable", "name": "r", "nameLocation": "491:1:29", "nodeType": "VariableDeclaration", - "scope": 10896, + "scope": 11492, "src": "483:9:29", "stateVariable": false, "storageLocation": "default", @@ -2171,7 +2171,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 10863, + "id": 11459, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "483:7:29", @@ -2183,23 +2183,23 @@ "visibility": "internal" } ], - "id": 10865, + "id": 11461, "nodeType": "VariableDeclarationStatement", "src": "483:9:29" }, { "assignments": [ - 10867 + 11463 ], "declarations": [ { "constant": false, - "id": 10867, + "id": 11463, "mutability": "mutable", "name": "s", "nameLocation": "510:1:29", "nodeType": "VariableDeclaration", - "scope": 10896, + "scope": 11492, "src": "502:9:29", "stateVariable": false, "storageLocation": "default", @@ -2208,7 +2208,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 10866, + "id": 11462, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "502:7:29", @@ -2220,23 +2220,23 @@ "visibility": "internal" } ], - "id": 10868, + "id": 11464, "nodeType": "VariableDeclarationStatement", "src": "502:9:29" }, { "assignments": [ - 10870 + 11466 ], "declarations": [ { "constant": false, - "id": 10870, + "id": 11466, "mutability": "mutable", "name": "v", "nameLocation": "527:1:29", "nodeType": "VariableDeclaration", - "scope": 10896, + "scope": 11492, "src": "521:7:29", "stateVariable": false, "storageLocation": "default", @@ -2245,7 +2245,7 @@ "typeString": "uint8" }, "typeName": { - "id": 10869, + "id": 11465, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "521:5:29", @@ -2257,7 +2257,7 @@ "visibility": "internal" } ], - "id": 10871, + "id": 11467, "nodeType": "VariableDeclarationStatement", "src": "521:7:29" }, @@ -2424,65 +2424,65 @@ "evmVersion": "paris", "externalReferences": [ { - "declaration": 10864, + "declaration": 11460, "isOffset": false, "isSlot": false, "src": "567:1:29", "valueSize": 1 }, { - "declaration": 10867, + "declaration": 11463, "isOffset": false, "isSlot": false, "src": "612:1:29", "valueSize": 1 }, { - "declaration": 10858, + "declaration": 11454, "isOffset": false, "isSlot": false, "src": "582:9:29", "valueSize": 1 }, { - "declaration": 10858, + "declaration": 11454, "isOffset": false, "isSlot": false, "src": "627:9:29", "valueSize": 1 }, { - "declaration": 10858, + "declaration": 11454, "isOffset": false, "isSlot": false, "src": "680:9:29", "valueSize": 1 }, { - "declaration": 10870, + "declaration": 11466, "isOffset": false, "isSlot": false, "src": "657:1:29", "valueSize": 1 } ], - "id": 10872, + "id": 11468, "nodeType": "InlineAssembly", "src": "544:164:29" }, { "assignments": [ - 10874 + 11470 ], "declarations": [ { "constant": false, - "id": 10874, + "id": 11470, "mutability": "mutable", "name": "prefix", "nameLocation": "783:6:29", "nodeType": "VariableDeclaration", - "scope": 10896, + "scope": 11492, "src": "770:19:29", "stateVariable": false, "storageLocation": "memory", @@ -2491,7 +2491,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10873, + "id": 11469, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "770:5:29", @@ -2503,10 +2503,10 @@ "visibility": "internal" } ], - "id": 10876, + "id": 11472, "initialValue": { "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", - "id": 10875, + "id": 11471, "isConstant": false, "isLValue": false, "isPure": true, @@ -2525,17 +2525,17 @@ }, { "assignments": [ - 10878 + 11474 ], "declarations": [ { "constant": false, - "id": 10878, + "id": 11474, "mutability": "mutable", "name": "prefixedHash", "nameLocation": "844:12:29", "nodeType": "VariableDeclaration", - "scope": 10896, + "scope": 11492, "src": "836:20:29", "stateVariable": false, "storageLocation": "default", @@ -2544,7 +2544,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 10877, + "id": 11473, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "836:7:29", @@ -2556,17 +2556,17 @@ "visibility": "internal" } ], - "id": 10886, + "id": 11482, "initialValue": { "arguments": [ { "arguments": [ { - "id": 10882, + "id": 11478, "name": "prefix", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10874, + "referencedDeclaration": 11470, "src": "886:6:29", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -2574,11 +2574,11 @@ } }, { - "id": 10883, + "id": 11479, "name": "quoteHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10856, + "referencedDeclaration": 11452, "src": "894:9:29", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -2598,7 +2598,7 @@ } ], "expression": { - "id": 10880, + "id": 11476, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -2609,7 +2609,7 @@ "typeString": "abi" } }, - "id": 10881, + "id": 11477, "isConstant": false, "isLValue": false, "isPure": true, @@ -2623,7 +2623,7 @@ "typeString": "function () pure returns (bytes memory)" } }, - "id": 10884, + "id": 11480, "isConstant": false, "isLValue": false, "isPure": false, @@ -2647,7 +2647,7 @@ "typeString": "bytes memory" } ], - "id": 10879, + "id": 11475, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -2658,7 +2658,7 @@ "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 10885, + "id": 11481, "isConstant": false, "isLValue": false, "isPure": false, @@ -2683,7 +2683,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 10894, + "id": 11490, "isConstant": false, "isLValue": false, "isPure": false, @@ -2691,11 +2691,11 @@ "leftExpression": { "arguments": [ { - "id": 10888, + "id": 11484, "name": "prefixedHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10878, + "referencedDeclaration": 11474, "src": "932:12:29", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -2703,11 +2703,11 @@ } }, { - "id": 10889, + "id": 11485, "name": "v", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10870, + "referencedDeclaration": 11466, "src": "946:1:29", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -2715,11 +2715,11 @@ } }, { - "id": 10890, + "id": 11486, "name": "r", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10864, + "referencedDeclaration": 11460, "src": "949:1:29", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -2727,11 +2727,11 @@ } }, { - "id": 10891, + "id": 11487, "name": "s", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10867, + "referencedDeclaration": 11463, "src": "952:1:29", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -2758,7 +2758,7 @@ "typeString": "bytes32" } ], - "id": 10887, + "id": 11483, "name": "ecrecover", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -2769,7 +2769,7 @@ "typeString": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)" } }, - "id": 10892, + "id": 11488, "isConstant": false, "isLValue": false, "isPure": false, @@ -2788,11 +2788,11 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 10893, + "id": 11489, "name": "addr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10854, + "referencedDeclaration": 11450, "src": "958:4:29", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2805,21 +2805,21 @@ "typeString": "bool" } }, - "functionReturnParameters": 10862, - "id": 10895, + "functionReturnParameters": 11458, + "id": 11491, "nodeType": "Return", "src": "915:47:29" } ] }, "documentation": { - "id": 10852, + "id": 11448, "nodeType": "StructuredDocumentation", "src": "91:277:29", "text": "@dev Verfies signature against address\n@param addr The signing address\n@param quoteHash The hash of the signed data\n@param signature The signature containing v, r and s\n@return True if the signature is valid, false otherwise." }, "functionSelector": "1a86b550", - "id": 10897, + "id": 11493, "implemented": true, "kind": "function", "modifiers": [], @@ -2827,17 +2827,17 @@ "nameLocation": "382:6:29", "nodeType": "FunctionDefinition", "parameters": { - "id": 10859, + "id": 11455, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10854, + "id": 11450, "mutability": "mutable", "name": "addr", "nameLocation": "397:4:29", "nodeType": "VariableDeclaration", - "scope": 10897, + "scope": 11493, "src": "389:12:29", "stateVariable": false, "storageLocation": "default", @@ -2846,7 +2846,7 @@ "typeString": "address" }, "typeName": { - "id": 10853, + "id": 11449, "name": "address", "nodeType": "ElementaryTypeName", "src": "389:7:29", @@ -2860,12 +2860,12 @@ }, { "constant": false, - "id": 10856, + "id": 11452, "mutability": "mutable", "name": "quoteHash", "nameLocation": "411:9:29", "nodeType": "VariableDeclaration", - "scope": 10897, + "scope": 11493, "src": "403:17:29", "stateVariable": false, "storageLocation": "default", @@ -2874,7 +2874,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 10855, + "id": 11451, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "403:7:29", @@ -2887,12 +2887,12 @@ }, { "constant": false, - "id": 10858, + "id": 11454, "mutability": "mutable", "name": "signature", "nameLocation": "435:9:29", "nodeType": "VariableDeclaration", - "scope": 10897, + "scope": 11493, "src": "422:22:29", "stateVariable": false, "storageLocation": "memory", @@ -2901,7 +2901,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10857, + "id": 11453, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "422:5:29", @@ -2916,17 +2916,17 @@ "src": "388:57:29" }, "returnParameters": { - "id": 10862, + "id": 11458, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10861, + "id": 11457, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10897, + "scope": 11493, "src": "467:4:29", "stateVariable": false, "storageLocation": "default", @@ -2935,7 +2935,7 @@ "typeString": "bool" }, "typeName": { - "id": 10860, + "id": 11456, "name": "bool", "nodeType": "ElementaryTypeName", "src": "467:4:29", @@ -2949,14 +2949,14 @@ ], "src": "466:6:29" }, - "scope": 10898, + "scope": 11494, "src": "373:596:29", "stateMutability": "pure", "virtual": false, "visibility": "public" } ], - "scope": 10899, + "scope": 11495, "src": "58:913:29", "usedErrors": [] } @@ -2969,7 +2969,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:56:36.720Z", + "updatedAt": "2024-08-13T18:16:26.099Z", "networkType": "ethereum", "devdoc": { "kind": "dev", diff --git a/build/contracts/SignatureValidatorMock.json b/build/contracts/SignatureValidatorMock.json index 64deed7..2edc422 100644 --- a/build/contracts/SignatureValidatorMock.json +++ b/build/contracts/SignatureValidatorMock.json @@ -1508,20 +1508,20 @@ "sourceMap": "58:427:30:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;58:427:30;;;;;;;;;;;;;;;;;", "deployedSourceMap": "58:427:30:-:0;;;;;;;;;;;;;;;;;;;;;;;;95:388;;;;;;:::i;:::-;472:4;95:388;;;;;;;;;1487:14:32;;1480:22;1462:41;;1450:2;1435:18;95:388:30;;;;;;;14:127:32;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:1163;232:6;240;248;301:2;289:9;280:7;276:23;272:32;269:52;;;317:1;314;307:12;269:52;343:23;;-1:-1:-1;;;;;395:31:32;;385:42;;375:70;;441:1;438;431:12;375:70;464:5;-1:-1:-1;516:2:32;501:18;;488:32;;-1:-1:-1;571:2:32;556:18;;543:32;-1:-1:-1;;;;;624:14:32;;;621:34;;;651:1;648;641:12;621:34;689:6;678:9;674:22;664:32;;734:7;727:4;723:2;719:13;715:27;705:55;;756:1;753;746:12;705:55;792:2;779:16;814:2;810;807:10;804:36;;;820:18;;:::i;:::-;895:2;889:9;863:2;949:13;;-1:-1:-1;;945:22:32;;;969:2;941:31;937:40;925:53;;;993:18;;;1013:22;;;990:46;987:72;;;1039:18;;:::i;:::-;1079:10;1075:2;1068:22;1114:2;1106:6;1099:18;1154:7;1149:2;1144;1140;1136:11;1132:20;1129:33;1126:53;;;1175:1;1172;1165:12;1126:53;1231:2;1226;1222;1218:11;1213:2;1205:6;1201:15;1188:46;1276:1;1271:2;1266;1258:6;1254:15;1250:24;1243:35;1297:6;1287:16;;;;;;;146:1163;;;;;:::o", "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nlibrary SignatureValidatorMock {\n function verify(address , bytes32 , bytes memory) public pure returns (bool) {\n // This is mocked due to an issue with truffle evm that makes the\n // ecrecover function to return address 0x000...0 as the signer\n // when executing against RSK the issue doesn't happen, so the actual implementation\n // uses the class and not this mock\n return true;\n }\n}\n", - "sourcePath": "/Users/guilhermesoares/WebstormProjects/Rootstock/liquidity-bridge-contract/contracts/SignatureValidatorMock.sol", + "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/SignatureValidatorMock.sol", "ast": { "absolutePath": "project:/contracts/SignatureValidatorMock.sol", "exportedSymbols": { "SignatureValidatorMock": [ - 10915 + 11511 ] }, - "id": 10916, + "id": 11512, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 10900, + "id": 11496, "literals": [ "solidity", "^", @@ -1538,9 +1538,9 @@ "contractDependencies": [], "contractKind": "library", "fullyImplemented": true, - "id": 10915, + "id": 11511, "linearizedBaseContracts": [ - 10915 + 11511 ], "name": "SignatureValidatorMock", "nameLocation": "66:22:30", @@ -1548,14 +1548,14 @@ "nodes": [ { "body": { - "id": 10913, + "id": 11509, "nodeType": "Block", "src": "172:311:30", "statements": [ { "expression": { "hexValue": "74727565", - "id": 10911, + "id": 11507, "isConstant": false, "isLValue": false, "isPure": true, @@ -1569,15 +1569,15 @@ }, "value": "true" }, - "functionReturnParameters": 10910, - "id": 10912, + "functionReturnParameters": 11506, + "id": 11508, "nodeType": "Return", "src": "465:11:30" } ] }, "functionSelector": "1a86b550", - "id": 10914, + "id": 11510, "implemented": true, "kind": "function", "modifiers": [], @@ -1585,17 +1585,17 @@ "nameLocation": "104:6:30", "nodeType": "FunctionDefinition", "parameters": { - "id": 10907, + "id": 11503, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10902, + "id": 11498, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10914, + "scope": 11510, "src": "111:7:30", "stateVariable": false, "storageLocation": "default", @@ -1604,7 +1604,7 @@ "typeString": "address" }, "typeName": { - "id": 10901, + "id": 11497, "name": "address", "nodeType": "ElementaryTypeName", "src": "111:7:30", @@ -1618,12 +1618,12 @@ }, { "constant": false, - "id": 10904, + "id": 11500, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10914, + "scope": 11510, "src": "121:7:30", "stateVariable": false, "storageLocation": "default", @@ -1632,7 +1632,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 10903, + "id": 11499, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "121:7:30", @@ -1645,12 +1645,12 @@ }, { "constant": false, - "id": 10906, + "id": 11502, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10914, + "scope": 11510, "src": "131:12:30", "stateVariable": false, "storageLocation": "memory", @@ -1659,7 +1659,7 @@ "typeString": "bytes" }, "typeName": { - "id": 10905, + "id": 11501, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "131:5:30", @@ -1674,17 +1674,17 @@ "src": "110:34:30" }, "returnParameters": { - "id": 10910, + "id": 11506, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10909, + "id": 11505, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 10914, + "scope": 11510, "src": "166:4:30", "stateVariable": false, "storageLocation": "default", @@ -1693,7 +1693,7 @@ "typeString": "bool" }, "typeName": { - "id": 10908, + "id": 11504, "name": "bool", "nodeType": "ElementaryTypeName", "src": "166:4:30", @@ -1707,14 +1707,14 @@ ], "src": "165:6:30" }, - "scope": 10915, + "scope": 11511, "src": "95:388:30", "stateMutability": "pure", "virtual": false, "visibility": "public" } ], - "scope": 10916, + "scope": 11512, "src": "58:427:30", "usedErrors": [] } @@ -1727,7 +1727,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:54:03.286Z", + "updatedAt": "2024-08-13T18:14:01.695Z", "networkType": "ethereum", "devdoc": { "kind": "dev", diff --git a/build/contracts/StorageSlot.json b/build/contracts/StorageSlot.json index 0a06660..4e37421 100644 --- a/build/contracts/StorageSlot.json +++ b/build/contracts/StorageSlot.json @@ -1513,7 +1513,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.117Z", + "updatedAt": "2024-08-13T18:10:00.972Z", "devdoc": { "details": "Library for reading and writing primitive types to specific storage slots. Storage slots are often used to avoid storage conflict when dealing with upgradeable contracts. This library helps with reading and writing to such slots without the need for inline assembly. The functions in this library return Slot structs that contain a `value` member that can be used to read or write. Example usage to set ERC1967 implementation slot: ```solidity contract ERC1967 { bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc; function _getImplementation() internal view returns (address) { return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value; } function _setImplementation(address newImplementation) internal { require(Address.isContract(newImplementation), \"ERC1967: new implementation is not a contract\"); StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = newImplementation; } } ``` _Available since v4.1 for `address`, `bool`, `bytes32`, `uint256`._ _Available since v4.9 for `string`, `bytes`._", "kind": "dev", diff --git a/build/contracts/TransparentUpgradeableProxy.json b/build/contracts/TransparentUpgradeableProxy.json index 62f3a4f..c2bb86c 100644 --- a/build/contracts/TransparentUpgradeableProxy.json +++ b/build/contracts/TransparentUpgradeableProxy.json @@ -10601,7 +10601,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.113Z", + "updatedAt": "2024-08-13T18:10:00.966Z", "devdoc": { "details": "This contract implements a proxy that is upgradeable by an admin. To avoid https://medium.com/nomic-labs-blog/malicious-backdoors-in-ethereum-proxies-62629adf3357[proxy selector clashing], which can potentially be used in an attack, this contract uses the https://blog.openzeppelin.com/the-transparent-proxy-pattern/[transparent proxy pattern]. This pattern implies two things that go hand in hand: 1. If any account other than the admin calls the proxy, the call will be forwarded to the implementation, even if that call matches one of the admin functions exposed by the proxy itself. 2. If the admin calls the proxy, it can access the admin functions, but its calls will never be forwarded to the implementation. If the admin tries to call a function on the implementation it will fail with an error that says \"admin cannot fallback to proxy target\". These properties mean that the admin account can only be used for admin actions like upgrading the proxy or changing the admin, so it's best if it's a dedicated account that is not used for anything else. This will avoid headaches due to sudden errors when trying to call a function from the proxy implementation. Our recommendation is for the dedicated account to be an instance of the {ProxyAdmin} contract. If set up this way, you should think of the `ProxyAdmin` instance as the real administrative interface of your proxy. NOTE: The real interface of this proxy is that defined in `ITransparentUpgradeableProxy`. This contract does not inherit from that interface, and instead the admin functions are implicitly implemented using a custom dispatch mechanism in `_fallback`. Consequently, the compiler will not produce an ABI for this contract. This is necessary to fully implement transparency without decoding reverts caused by selector clashes between the proxy and the implementation. WARNING: It is not recommended to extend this contract to add additional external functions. If you do so, the compiler will not check that there are no selector conflicts, due to the note above. A selector clash between any new function and the functions declared in {ITransparentUpgradeableProxy} will be resolved in favor of the new one. This could render the admin operations inaccessible, which could prevent upgradeability. Transparency may also be compromised.", "events": { diff --git a/build/contracts/WalletMock.json b/build/contracts/WalletMock.json index cdf67ee..a409da1 100644 --- a/build/contracts/WalletMock.json +++ b/build/contracts/WalletMock.json @@ -473,20 +473,20 @@ "sourceMap": "58:220:31:-:0;;;;;;;;;;;;;;;;;;;", "deployedSourceMap": "58:220:31:-:0;;;;;;;;;;;;;;;;;;;;;;;;245:11;;;;244:12;236:33;;;;-1:-1:-1;;;236:33:31;;216:2:32;236:33:31;;;198:21:32;255:1;235:18;;;228:29;-1:-1:-1;;;273:18:32;;;266:38;321:18;;236:33:31;;;;;;;;58:220;;;;;116:77;;;;;;;;;;-1:-1:-1;116:77:31;;;;;:::i;:::-;169:11;:17;;-1:-1:-1;;169:17:31;;;;;;;;;;116:77;350:273:32;406:6;459:2;447:9;438:7;434:23;430:32;427:52;;;475:1;472;465:12;427:52;514:9;501:23;567:5;560:13;553:21;546:5;543:32;533:60;;589:1;586;579:12;533:60;612:5;350:273;-1:-1:-1;;;350:273:32:o", "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\ncontract WalletMock {\n\n bool private rejectFunds;\n\n function setRejectFunds(bool val) external {\n rejectFunds = val;\n }\n\n receive() external payable {\n require(!rejectFunds, \"rejected\");\n }\n}\n", - "sourcePath": "/Users/guilhermesoares/WebstormProjects/Rootstock/liquidity-bridge-contract/contracts/WalletMock.sol", + "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/WalletMock.sol", "ast": { "absolutePath": "project:/contracts/WalletMock.sol", "exportedSymbols": { "WalletMock": [ - 10940 + 11536 ] }, - "id": 10941, + "id": 11537, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 10917, + "id": 11513, "literals": [ "solidity", "^", @@ -503,9 +503,9 @@ "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, - "id": 10940, + "id": 11536, "linearizedBaseContracts": [ - 10940 + 11536 ], "name": "WalletMock", "nameLocation": "67:10:31", @@ -513,12 +513,12 @@ "nodes": [ { "constant": false, - "id": 10919, + "id": 11515, "mutability": "mutable", "name": "rejectFunds", "nameLocation": "98:11:31", "nodeType": "VariableDeclaration", - "scope": 10940, + "scope": 11536, "src": "85:24:31", "stateVariable": true, "storageLocation": "default", @@ -527,7 +527,7 @@ "typeString": "bool" }, "typeName": { - "id": 10918, + "id": 11514, "name": "bool", "nodeType": "ElementaryTypeName", "src": "85:4:31", @@ -540,23 +540,23 @@ }, { "body": { - "id": 10928, + "id": 11524, "nodeType": "Block", "src": "159:34:31", "statements": [ { "expression": { - "id": 10926, + "id": 11522, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 10924, + "id": 11520, "name": "rejectFunds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10919, + "referencedDeclaration": 11515, "src": "169:11:31", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -566,11 +566,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 10925, + "id": 11521, "name": "val", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10921, + "referencedDeclaration": 11517, "src": "183:3:31", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -583,14 +583,14 @@ "typeString": "bool" } }, - "id": 10927, + "id": 11523, "nodeType": "ExpressionStatement", "src": "169:17:31" } ] }, "functionSelector": "3eb9f753", - "id": 10929, + "id": 11525, "implemented": true, "kind": "function", "modifiers": [], @@ -598,17 +598,17 @@ "nameLocation": "125:14:31", "nodeType": "FunctionDefinition", "parameters": { - "id": 10922, + "id": 11518, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 10921, + "id": 11517, "mutability": "mutable", "name": "val", "nameLocation": "145:3:31", "nodeType": "VariableDeclaration", - "scope": 10929, + "scope": 11525, "src": "140:8:31", "stateVariable": false, "storageLocation": "default", @@ -617,7 +617,7 @@ "typeString": "bool" }, "typeName": { - "id": 10920, + "id": 11516, "name": "bool", "nodeType": "ElementaryTypeName", "src": "140:4:31", @@ -632,12 +632,12 @@ "src": "139:10:31" }, "returnParameters": { - "id": 10923, + "id": 11519, "nodeType": "ParameterList", "parameters": [], "src": "159:0:31" }, - "scope": 10940, + "scope": 11536, "src": "116:77:31", "stateMutability": "nonpayable", "virtual": false, @@ -645,7 +645,7 @@ }, { "body": { - "id": 10938, + "id": 11534, "nodeType": "Block", "src": "226:50:31", "statements": [ @@ -653,7 +653,7 @@ "expression": { "arguments": [ { - "id": 10934, + "id": 11530, "isConstant": false, "isLValue": false, "isPure": false, @@ -663,11 +663,11 @@ "prefix": true, "src": "244:12:31", "subExpression": { - "id": 10933, + "id": 11529, "name": "rejectFunds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10919, + "referencedDeclaration": 11515, "src": "245:11:31", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -681,7 +681,7 @@ }, { "hexValue": "72656a6563746564", - "id": 10935, + "id": 11531, "isConstant": false, "isLValue": false, "isPure": true, @@ -707,7 +707,7 @@ "typeString": "literal_string \"rejected\"" } ], - "id": 10932, + "id": 11528, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -721,7 +721,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 10936, + "id": 11532, "isConstant": false, "isLValue": false, "isPure": false, @@ -737,13 +737,13 @@ "typeString": "tuple()" } }, - "id": 10937, + "id": 11533, "nodeType": "ExpressionStatement", "src": "236:33:31" } ] }, - "id": 10939, + "id": 11535, "implemented": true, "kind": "receive", "modifiers": [], @@ -751,25 +751,25 @@ "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 10930, + "id": 11526, "nodeType": "ParameterList", "parameters": [], "src": "206:2:31" }, "returnParameters": { - "id": 10931, + "id": 11527, "nodeType": "ParameterList", "parameters": [], "src": "226:0:31" }, - "scope": 10940, + "scope": 11536, "src": "199:77:31", "stateMutability": "payable", "virtual": false, "visibility": "external" } ], - "scope": 10941, + "scope": 11537, "src": "58:220:31", "usedErrors": [] } @@ -782,7 +782,7 @@ }, "networks": {}, "schemaVersion": "3.4.13", - "updatedAt": "2024-08-08T08:53:06.186Z", + "updatedAt": "2024-08-13T18:10:01.093Z", "devdoc": { "kind": "dev", "methods": {}, diff --git a/config.json b/config.json index 2d2a866..ef79d62 100644 --- a/config.json +++ b/config.json @@ -134,7 +134,7 @@ "deployed": true }, "BtcUtils": { - "address": "0x1a11730F3853EA233D22A57459d361481690cfdD", + "address": "0x368233164bd877B075E3492e49FE8b4F5360F3B6", "deployed": true }, "LiquidityBridgeContract": { diff --git a/package-lock.json b/package-lock.json index 4944847..eba9ae0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8847,6 +8847,7 @@ "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.5.tgz", "integrity": "sha512-HTm14iMQKK2FjFLRTM5lAVcyaUzOnqbPtesFIvREgXpJHdQm8bWS+GkQgIkfaBYRHuCnea7w8UVNfwiAQhlr9A==", "dev": true, + "hasInstallScript": true, "optional": true, "peer": true, "dependencies": { @@ -9232,6 +9233,7 @@ "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.7.tgz", "integrity": "sha512-vLt1O5Pp+flcArHGIyKEQq883nBt8nN8tVBcoL0qUXj2XT1n7p70yGIq2VK98I5FdZ1YHc0wk/koOnHjnXWk1Q==", "dev": true, + "hasInstallScript": true, "optional": true, "peer": true, "dependencies": { From 31378bb9f120418c6a7eda27968b2c753be51623 Mon Sep 17 00:00:00 2001 From: Luisfc68 Date: Thu, 15 Aug 2024 09:43:59 -0300 Subject: [PATCH 2/2] chore: add read permission to slither action --- .github/workflows/slither.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/slither.yml b/.github/workflows/slither.yml index e0c5d7a..0e036f4 100644 --- a/.github/workflows/slither.yml +++ b/.github/workflows/slither.yml @@ -5,6 +5,7 @@ jobs: runs-on: ubuntu-latest permissions: security-events: write + packages: read steps: - uses: actions/checkout@v3