@verified-network/verified-sdk 0.9.3 → 0.9.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/abi/L1distribution/Distribution.json +4 -4
- package/dist/abi/assetmanager/kyber/PrimaryIssueManager.json +74238 -0
- package/dist/abi/custody/Vault.json +4 -10
- package/dist/abi/deposits/Bond.json +224 -224
- package/dist/abi/deposits/Cash.json +423 -423
- package/dist/abi/deposits/Factory.json +3626 -3173
- package/dist/abi/deposits/Rates.json +1410 -1410
- package/dist/abi/deposits/Security.json +514 -514
- package/dist/abi/liquidity/Liquidity.json +4 -4
- package/dist/contract/amm/primary/index.js +141 -0
- package/dist/contract/amm/secondary/index.js +42 -0
- package/dist/contract/pretrade/index.js +2 -2
- package/dist/contract/public/client/index.js +9 -0
- package/dist/contract/public/factory/index.js +9 -0
- package/dist/contract/securitiesregistry/index.js +12 -0
- package/dist/contractAddress/index.js +21 -20
- package/dist/index.js +5 -5
- package/package.json +1 -1
|
@@ -827,13 +827,13 @@
|
|
|
827
827
|
"type": "function"
|
|
828
828
|
}
|
|
829
829
|
],
|
|
830
|
-
"metadata": "{\"compiler\":{\"version\":\"0.5.7+commit.6da8b019\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"cashtokenName\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"sender\",\"type\":\"address\"},{\"name\":\"receiver\",\"type\":\"address\"},{\"name\":\"token\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"},{\"name\":\"_name\",\"type\":\"bytes32\"}],\"name\":\"supportTokens\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"addedValue\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"unpause\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_name\",\"type\":\"bytes32\"},{\"name\":\"_currency\",\"type\":\"bytes32\"},{\"name\":\"_owner\",\"type\":\"address\"},{\"name\":\"_fee\",\"type\":\"address\"},{\"name\":\"_bridge\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"},{\"name\":\"_amount\",\"type\":\"uint256\"},{\"name\":\"_buyer\",\"type\":\"address\"}],\"name\":\"requestIssue\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"checkSupportForToken\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_signer\",\"type\":\"address\"}],\"name\":\"setSigner\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"transferor\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"},{\"name\":\"transferee\",\"type\":\"address\"},{\"name\":\"currency\",\"type\":\"bytes32\"},{\"name\":\"_hashedMessage\",\"type\":\"bytes32\"},{\"name\":\"_v\",\"type\":\"uint8\"},{\"name\":\"_r\",\"type\":\"bytes32\"},{\"name\":\"_s\",\"type\":\"bytes32\"}],\"name\":\"transferDeposit\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"pause\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"transferor\",\"type\":\"address\"},{\"name\":\"currency\",\"type\":\"bytes32\"},{\"name\":\"amount\",\"type\":\"uint256\"},{\"name\":\"deposited\",\"type\":\"uint256\"},{\"name\":\"_hashedMessage\",\"type\":\"bytes32\"},{\"name\":\"_v\",\"type\":\"uint8\"},{\"name\":\"_r\",\"type\":\"bytes32\"},{\"name\":\"_s\",\"type\":\"bytes32\"}],\"name\":\"transferIssuedBalance\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"subtractedValue\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"recipient\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isPaused\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getSupportedTokens\",\"outputs\":[{\"components\":[{\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"name\":\"tokenAddress\",\"type\":\"address\"}],\"name\":\"\",\"type\":\"tuple[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"amount\",\"type\":\"uint256\"},{\"name\":\"redeemer\",\"type\":\"address\"},{\"name\":\"currency\",\"type\":\"bytes32\"},{\"name\":\"balance\",\"type\":\"uint256\"},{\"name\":\"_hashedMessage\",\"type\":\"bytes32\"},{\"name\":\"_v\",\"type\":\"uint8\"},{\"name\":\"_r\",\"type\":\"bytes32\"},{\"name\":\"_s\",\"type\":\"bytes32\"}],\"name\":\"redeemDeposits\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"balance\",\"type\":\"uint256\"},{\"name\":\"buyer\",\"type\":\"address\"},{\"name\":\"currency\",\"type\":\"bytes32\"},{\"name\":\"_hashedMessage\",\"type\":\"bytes32\"},{\"name\":\"_v\",\"type\":\"uint8\"},{\"name\":\"_r\",\"type\":\"bytes32\"},{\"name\":\"_s\",\"type\":\"bytes32\"}],\"name\":\"addIssuedBalance\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"party\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CashIssueRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"redeemer\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CashRedeemed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"transferor\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"transferee\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CashTransfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"party\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CashIssued\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"party\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"addedL2Balance\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"transferor\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"transferee\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferredL2Balance\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{\"allowance(address,address)\":{\"details\":\"See {IERC20-allowance}.\"},\"approve(address,uint256)\":{\"details\":\"See {IERC20-approve}. * Requirements: * - `spender` cannot be the zero address.\"},\"balanceOf(address)\":{\"details\":\"See {IERC20-balanceOf}.\"},\"checkSupportForToken(address)\":{\"params\":{\"_token\":\"token that is supported for issuing cash tokens\\r\"}},\"decreaseAllowance(address,uint256)\":{\"details\":\"Atomically decreases the allowance granted to `spender` by the caller. * This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. * Emits an {Approval} event indicating the updated allowance. * Requirements: * - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`.\"},\"increaseAllowance(address,uint256)\":{\"details\":\"Atomically increases the allowance granted to `spender` by the caller. * This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. * Emits an {Approval} event indicating the updated allowance. * Requirements: * - `spender` cannot be the zero address.\"},\"initialize(address)\":{\"details\":\"Initializes the contract setting the deployer as the initial owner.\"},\"isOwner()\":{\"details\":\"Returns true if the caller is the current owner.\"},\"isPaused()\":{\"return\":\"True: contract is paused\\rFalse: contract is not paused\\r\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. * > Note: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"requestIssue(address,uint256,address)\":{\"params\":{\"_amount\":\"amount of token that is transferred from investor to this cash token issuing contract\\r\",\"_token\":\"address of token used by investor to buy the cash token\\r\"}},\"supportTokens(address,bytes32)\":{\"params\":{\"_name\":\"name of token supported\\r\",\"_token\":\"address of token supported\\r\"}},\"totalSupply()\":{\"details\":\"See {IERC20-totalSupply}.\"},\"transfer(address,uint256)\":{\"details\":\"See {IERC20-transfer}. * Requirements: * - `recipient` cannot be the zero address. - the caller must have a balance of at least `amount`.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}}},\"userdoc\":{\"methods\":{\"checkSupportForToken(address)\":{\"notice\":\"Checks if a specified token is supported for issuing Verified cash tokens\\r\"},\"getSupportedTokens()\":{\"notice\":\"Returns array of tokens supported\\r\"},\"isPaused()\":{\"notice\":\"returns whether or not the contract is paused\\r\"},\"requestIssue(address,uint256,address)\":{\"notice\":\"Used by external apps (eg, exchange, wallet) to buy Verified cash token \\r\"},\"supportTokens(address,bytes32)\":{\"notice\":\"Specifies list of supported tokens that can be deposited to issue Verified cash tokens\\r\"}}}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Cash.sol\":\"Cash\"},\"evmVersion\":\"petersburg\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-ethereum-package/contracts/GSN/Context.sol\":{\"keccak256\":\"0x3491510fa4862af1a43f6c860d9cf7392240196540cd3c0eea79d374d419c5a1\",\"urls\":[\"bzzr://5cddbf3b74b775a8670757a6b8e108dac17dac20253f35f4c729e9cb6bea4ed3\"]},\"@openzeppelin/contracts-ethereum-package/contracts/math/SafeMath.sol\":{\"keccak256\":\"0x640b6dee7a4b830bdfd52b5031a07fc2b12209f5b2e29e5d364a7d37f69d8076\",\"urls\":[\"bzzr://292843005e754e752644f767477ec5ad7a1ffc91ddb18c38b8079c62f3993cad\"]},\"@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol\":{\"keccak256\":\"0xd7e8ab76fa35c4d8d35a06a6ed538cadab8b75a1aa00594ced1568b2c0cadde3\",\"urls\":[\"bzzr://b4c855b32d75f2a4969bfbd530b6934b69f12f28584b3746967e1ca64e024bd9\"]},\"@openzeppelin/contracts-ethereum-package/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0x2a474399663812668bb8e9c9e7d011d54fd09de386bd6e9fcb2407a677ebd1aa\",\"urls\":[\"bzzr://3d70561b32ba1494d2b2df362e92dff5ab869d27e2fe35cf9bf3a8ae137cffd3\"]},\"@openzeppelin/contracts-ethereum-package/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xe5bb0f57cff3e299f360052ba50f1ea0fff046df2be070b6943e0e3c3fdad8a9\",\"urls\":[\"bzzr://cf2d583b8dce38d0617fdcd65f2fd9f126fe17b7f683b5a515ea9d2762d8b062\"]},\"@openzeppelin/upgrades/contracts/Initializable.sol\":{\"keccak256\":\"0x9bfec92e36234ecc99b5d37230acb6cd1f99560233753162204104a4897e8721\",\"urls\":[\"bzzr://f75d88b16fe25a9e19b3512691c496e2bb6d8451bc9a636196c4e17ca9b40201\"]},\"abdk-libraries-solidity/ABDKMathQuad.sol\":{\"keccak256\":\"0x0ae8a1dd1dce31cc6b46fa58d6a4b72353ece1c96a8497aa0d494797dc94bc36\",\"urls\":[\"bzzr://d29078c35091aee1858898e0e6f1572ab214634d82bee162efbb90b32a9a66cb\"]},\"project:/contracts/Cash.sol\":{\"keccak256\":\"0xc3f25067d7f8ab73b1f56fcd75b0e81e29a410332a96ff429492a3b2ce0dac3c\",\"urls\":[\"bzzr://410a854456ba1dc4d779584014564f2005e0dd62f13802a6f5433e758ba7b751\"]},\"project:/contracts/interfaces/IBond.sol\":{\"keccak256\":\"0x865b390946b6faa66ff8f3434fe714b2f081926b1e826ce1494c2b2df949d669\",\"urls\":[\"bzzr://6fd782eda38cbf7c968a841a9a4af9a6cbbf01fe19a8f04053fd7c3b9d8214f1\"]},\"project:/contracts/interfaces/ICash.sol\":{\"keccak256\":\"0x4c8c69f2cc22854e02ffb710d74a3e461e02c1862040d6d2cfe545e79d265330\",\"urls\":[\"bzzr://66a9e619781b6f2725348ccfb821899825b0d4099f35f7ec3b6887e0f92b1631\"]},\"project:/contracts/interfaces/IFactory.sol\":{\"keccak256\":\"0xe0dcf7b8cc48d3833fac3aae6bc8b865bd9448e1d98626b161ba57cc415262dd\",\"urls\":[\"bzzr://303315693a59ba004feeefe5bc0008857d452f6786b30c2642ba5e047f08b343\"]},\"project:/contracts/interfaces/IRates.sol\":{\"keccak256\":\"0xc32e70549fdb4e147901361b00ddc891db5d811cdea0db365695ab52106ff6fb\",\"urls\":[\"bzzr://3dd800321631ec5f22fbe955f807762ee0537e2ec8f37f27ecede1e9a333d39f\"]},\"project:/contracts/utilities/Pausable.sol\":{\"keccak256\":\"0x96eceae12582eec38cc9706095b6f7d038b00dc36d98a02d234e7051b42a2a6a\",\"urls\":[\"bzzr://e5e1adfa3d22d6769d754f3f7f74eb1b12f5327b56b49584d34490b9d747d9b3\"]},\"project:/contracts/utilities/StringUtils.sol\":{\"keccak256\":\"0x18f1be0daaca27eba3c56a0da1613331cd1a37eab4970307909d8be77d6fc34e\",\"urls\":[\"bzzr://e3b548071313cf6f3cdaf33069f4648feadeb37fb33c75fe6fd40e8310f8ff7c\"]}},\"version\":1}",
|
|
831
|
-
"bytecode": "0x6080604052614c2c806100136000396000f3fe6080604052600436106101c25760003560e01c806380726e14116100f7578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e14610554578063eace6d3b14610574578063ee8edd5614610594578063f2fde38b146105b4576101c2565b8063a9059cbb146104dd578063b187bd26146104fd578063c4d66de814610512578063d3c7c2c714610532576101c2565b80638f32d59b116100d15780638f32d59b1461047357806395d89b4114610488578063a0213ff11461049d578063a457c2d7146104bd576101c2565b806380726e141461041c5780638456cb591461043c5780638da5cb5b14610451576101c2565b80633f4ba83a116101645780635d4f5b1c1161013e5780635d4f5b1c146103a75780636c19e783146103c757806370a08231146103e7578063715018a614610407576101c2565b80633f4ba83a1461035257806346499770146103675780634ba3f98814610387576101c2565b806318160ddd116101a057806318160ddd146102db57806323b872dd146102f05780632ceafc27146103105780633950935114610332576101c2565b806306fdde0314610261578063095ea7b31461028c5780630bc4b81a146102b9575b346101cc57600080fd5b36156101d757600080fd5b609b5460ff16156101e757600080fd5b33600090815260a160209081526040808320600160d91b6432ba3432b90284529091529020546102229060801b61021d346105d4565b61063a565b33600090815260a160209081526040808320600160d91b6432ba3432b9028452909152902080546001600160801b03191660809290921c919091179055005b34801561026d57600080fd5b50610276610a40565b60405161028391906149b5565b60405180910390f35b34801561029857600080fd5b506102ac6102a7366004614096565b610ace565b6040516102839190614906565b3480156102c557600080fd5b506102ce610aeb565b6040516102839190614914565b3480156102e757600080fd5b506102ce610af1565b3480156102fc57600080fd5b506102ac61030b366004614049565b610af8565b34801561031c57600080fd5b5061033061032b366004614096565b610cef565b005b34801561033e57600080fd5b506102ac61034d366004614096565b610def565b34801561035e57600080fd5b50610330610e48565b34801561037357600080fd5b50610330610382366004614240565b610e79565b34801561039357600080fd5b506103306103a2366004614176565b61104c565b3480156103b357600080fd5b506102ac6103c2366004613fd3565b611383565b3480156103d357600080fd5b506103306103e2366004613fd3565b6113b1565b3480156103f357600080fd5b506102ce610402366004613fd3565b611400565b34801561041357600080fd5b5061033061141b565b34801561042857600080fd5b506103306104373660046141b9565b61148c565b34801561044857600080fd5b50610330611666565b34801561045d57600080fd5b50610466611695565b6040516102839190614889565b34801561047f57600080fd5b506102ac6116a4565b34801561049457600080fd5b506102766116ca565b3480156104a957600080fd5b506103306104b83660046140c6565b611725565b3480156104c957600080fd5b506102ac6104d8366004614096565b6119f1565b3480156104e957600080fd5b506102ac6104f8366004614096565b611a5f565b34801561050957600080fd5b506102ac611a73565b34801561051e57600080fd5b5061033061052d366004613fd3565b611a7c565b34801561053e57600080fd5b50610547611b51565b60405161028391906148f5565b34801561056057600080fd5b506102ce61056f36600461400f565b611bc6565b34801561058057600080fd5b5061033061058f366004614386565b611bf1565b3480156105a057600080fd5b506103306105af3660046142ea565b611f5f565b3480156105c057600080fd5b506103306105cf366004613fd3565b61219b565b6000816105e357506000610635565b8160006105ef826121ce565b90506070811015610608578060700382901b915061061b565b607081111561061b576070810382901c91505b613fff0160701b6001600160701b03919091161760801b90505b919050565b6000617fff6001600160801b03608085811c8216607090811c8416939186901c90921690911c8116908214156106b05780617fff14156106a6576001600160801b03198581169085161415610693578492505050610a3a565b50600160ef1b61ffff029150610a3a9050565b8492505050610a3a565b80617fff14156106c4578392505050610a3a565b6001607f1b608086901c6001600160801b0381169190911015906001600160701b0316836106f557600193506106fc565b600160701b175b6001607f1b608087901c6001600160801b0381169190911015906001600160701b03168461072d5760019450610734565b600160701b175b82610764576001600160801b03198816600160ff1b146107545787610757565b60005b9650505050505050610a3a565b80610784576001600160801b03198916600160ff1b146107545788610757565b84860384151583151514156108925760708113156107ab5789975050505050505050610a3a565b60008113156107bd5790811c906107ec565b606f198112156107d65788975050505050505050610a3a565b60008112156107ec578060000384901c93508596505b92810192600160711b8410610807576001968701969390931c925b86617fff141561083c578461082457600160f01b617fff0261082e565b6001600160f01b03195b975050505050505050610a3a565b600160701b841015610851576000965061085e565b6001600160701b03841693505b83607088901b86610870576000610876565b6001607f1b5b6001600160801b0316171760801b975050505050505050610a3a565b60008113156108ad57600184901b93506001870396506108c4565b60008112156108c457600182901b91506001860396505b60708113156108d65760019150610923565b60018113156108f3576001810360018303901c6001019150610923565b606f198112156109065760019350610923565b600019811215610923576001816000030360018503901c60010193505b81841061093457818403935061093d565b83820393508294505b83610953575060009650610a3a95505050505050565b600061095e856121ce565b9050806071141561098457600185901c6001600160701b031694506001880197506109d3565b60708110156109c6576070819003808911156109b3578086901b6001600160701b0316955080890398506109c0565b600098600019019590951b945b506109d3565b6001600160701b03851694505b87617fff1415610a0957856109f057600160f01b617fff026109fa565b6001600160f01b03195b98505050505050505050610a3a565b84607089901b87610a1b576000610a21565b6001607f1b5b6001600160801b0316171760801b985050505050505050505b92915050565b609c805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610ac65780601f10610a9b57610100808354040283529160200191610ac6565b820191906000526020600020905b815481529060010190602001808311610aa957829003601f168201915b505050505081565b6000610ae2610adb612271565b8484612275565b50600192915050565b609e5481565b6035545b90565b609b5460009060ff1615610b0b57600080fd5b6000610b2f610b21610b1c87611400565b6105d4565b610b2a856105d4565b61232f565b60000b1215610b3d57600080fd5b6001600160a01b038316301415610b8357610b6e610b5a836105d4565b85600160d01b6572656465656d0230612478565b15610b7b57506001610ce8565b506000610ce8565b609f54604051600160e01b63f429f19b0281526001600160a01b039091169063f429f19b90610bb6908690600401614889565b60206040518083038186803b158015610bce57600080fd5b505afa158015610be2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610c069190810190614222565b600160cb1b660acd2c286c2e6d021480610cae5750609f54604051600160e01b63f429f19b0281526001600160a01b039091169063f429f19b90610c4e908690600401614889565b60206040518083038186803b158015610c6657600080fd5b505afa158015610c7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610c9e9190810190614222565b600160ca1b66159a58509bdb9902145b15610cc657610cbe84848461327e565b506001610ce8565b610b6e610cd2836105d4565b85600160c11b673a3930b739b332b90286612478565b9392505050565b610cf76116a4565b610d1f57604051600160e51b62461bcd028152600401610d1690614a4a565b60405180910390fd5b6001600160a01b038216600090815260a46020526040902054610deb57610d44613e88565b506040805180820182528281526001600160a01b03848116602080840182815260a38054600181018255600082815296517f60859188cffe297f44dde29f2d2865634621f26215049caeb304ccba566a8b1760029092029182015591517f60859188cffe297f44dde29f2d2865634621f26215049caeb304ccba566a8b1890920180546001600160a01b0319169290951691909117909355915490835260a4909152919020555b5050565b6000610ae2610dfc612271565b84610e438560346000610e0d612271565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff61339a16565b612275565b610e506116a4565b610e6f57604051600160e51b62461bcd028152600401610d1690614a4a565b610e776133c2565b565b600054610100900460ff1680610e925750610e926133f7565b80610ea0575060005460ff16155b610ebf57604051600160e51b62461bcd028152600401610d1690614a5a565b600054610100900460ff16158015610eea576000805460ff1961ff0019909116610100171660011790555b610ef384611a7c565b609f80546001600160a01b03191633179055604051610f1690879060200161485d565b604051602081830303815290604052609c9080519060200190610f3a929190613e9f565b50604051600160e01b63f921e64702815273__stringutils___________________________9063f921e64790610f7b908990600090600590600401614922565b60006040518083038186803b158015610f9357600080fd5b505af4158015610fa7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fcf91908101906142b5565b8051610fe391609d91602090910190613e9f565b50609e85905560a080546001600160a01b0319166001600160a01b0385811691909117909155609b8054610100600160a81b0319166101009285169290920291909117600160a81b60ff02191690558015611044576000805461ff00191690555b505050505050565b609b5460ff161561107257604051600160e51b62461bcd028152600401610d1690614a3a565b6001600160a01b038316600090815260a4602052604081205415611094575060015b801561121e576110a5333085612275565b6001600160a01b038416600090815260a4602052604081205460a380549091600019019081106110d157fe5b9060005260206000209060020201600001549050846001600160a01b03166323b872dd3330876040518463ffffffff1660e01b815260040161111593929190614897565b602060405180830381600087803b15801561112f57600080fd5b505af1158015611143573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506111679190810190614204565b15611218576001600160a01b038316600090815260a2602090815260408083208484529091529020546111a09060801b61021d866105d4565b6001600160a01b038416600081815260a2602090815260408083208684529091529081902080546001600160801b03191660809490941c9390931790925590517fe2ac3a086131f5c7b3a741ffad3af27c104ddc624ae2b853152c00c64bcbcf039061120f9084908890614969565b60405180910390a25b5061137d565b33600090815260a160209081526040808320600160d91b6432ba3432b90284529091528120546112549060801b610b2a866105d4565b60000b1261137d5733600090815260a160209081526040808320600160d91b6432ba3432b90284529091529020546112979060801b611292856105d4565b6133fd565b33600090815260a160209081526040808320600160d91b6432ba3432b90280855290835281842080546001600160801b031916608096871c1790556001600160a01b038716845260a283528184209084529091529020546112fc911b61021d856105d4565b6001600160a01b038316600081815260a260209081526040808320600160d91b6432ba3432b90284529091529081902080546001600160801b03191660809490941c9390931790925590517fe2ac3a086131f5c7b3a741ffad3af27c104ddc624ae2b853152c00c64bcbcf03906113749086906149d6565b60405180910390a25b50505050565b6001600160a01b038116600090815260a46020526040812054156113a957506001610635565b506000610635565b6113b96116a4565b6113d857604051600160e51b62461bcd028152600401610d1690614a4a565b609b80546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b031660009081526033602052604090205490565b6114236116a4565b61144257604051600160e51b62461bcd028152600401610d1690614a4a565b6068546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606880546001600160a01b0319169055565b60008460405160200161149f919061494a565b6040516020818303038152906040528051906020012090506000816040516020016114ca9190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b0316600182878787604051600081526020016040526040516115249493929190614977565b6020604051602081039080840390855afa158015611546573d6000803e3d6000fd5b505050602060405103516001600160a01b03161461156357600080fd5b6001600160a01b038a16600090815260a2602090815260408083208a84529091528120546115a29061159b9060801b6112928d6105d4565b600061232f565b60000b1261165a576001600160a01b038a16600090815260a2602090815260408083208a84529091529020546115de9060801b6112928b6105d4565b506001600160a01b038816600090815260a2602090815260408083208a84529091529020546116139060801b61021d8b6105d4565b50896001600160a01b03167fff1247709775171c6ced2a84a8776135fbf147b71843e06d083855dce5250dd689898c604051611651939291906148bf565b60405180910390a25b50505050505050505050565b61166e6116a4565b61168d57604051600160e51b62461bcd028152600401610d1690614a4a565b610e7761340f565b6068546001600160a01b031690565b6068546000906001600160a01b03166116bb612271565b6001600160a01b031614905090565b609d805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610ac65780601f10610a9b57610100808354040283529160200191610ac6565b600084604051602001611738919061494a565b6040516020818303038152906040528051906020012090506000816040516020016117639190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b0316600182878787604051600081526020016040526040516117bd9493929190614977565b6020604051602081039080840390855afa1580156117df573d6000803e3d6000fd5b505050602060405103516001600160a01b0316146117fc57600080fd5b6001600160a01b038a16600090815260a2602090815260408083208c84529091529020546118309060801b611292896105d4565b6001600160a01b038b16600081815260a2602090815260408083208e8452825280832080546001600160801b031916608096871c17905592825260a181528282208d835290522054611886911b61021d896105d4565b6001600160a01b038b16600090815260a1602090815260408083208d8452909152902080546001600160801b03191660809290921c9190911790556118cb3089613447565b6118d6308b8a61327e565b6001600160a01b038a16600090815260a2602090815260408083208c845290915290205461191190600160801b900460801b6112928a6105d4565b6001600160a01b038b16600081815260a2602090815260408083208e8452825280832080546001600160801b0316600160801b608097881c81029190911790915593835260a182528083208e845290915290205461197792919004901b61021d8a6105d4565b6001600160a01b038b16600081815260a1602090815260408083208e845290915290819020805460809490941c600160801b026001600160801b0390941693909317909255609e54915190917fc49566a7c5334ea8858c89b2e78ca7b7bcba63008800b945859eded70040a8329161165191908c90614969565b6000610ae26119fe612271565b84610e4385604051806060016040528060258152602001614bce6025913960346000611a28612271565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff61350a16565b6000610ae2611a6c612271565b848461327e565b609b5460ff1690565b600054610100900460ff1680611a955750611a956133f7565b80611aa3575060005460ff16155b611ac257604051600160e51b62461bcd028152600401610d1690614a5a565b600054610100900460ff16158015611aed576000805460ff1961ff0019909116610100171660011790555b606880546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015610deb576000805461ff00191690555050565b606060a3805480602002602001604051908101604052809291908181526020016000905b82821015611bbd5760008481526020908190206040805180820190915260028502909101805482526001908101546001600160a01b0316828401529083529092019101611b75565b50505050905090565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b600084604051602001611c04919061494a565b604051602081830303815290604052805190602001209050600081604051602001611c2f9190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b031660018287878760405160008152602001604052604051611c899493929190614977565b6020604051602081039080840390855afa158015611cab573d6000803e3d6000fd5b505050602060405103516001600160a01b031614611cc857600080fd5b611cd1876105d4565b6001600160a01b038a16600090815260a2602090815260408083208c84529091529020805460809290921c600160801b026001600160801b03909216919091179055600160d91b6432ba3432b902881415611dd1576040516001600160a01b038a16908b156108fc02908c906000818181858888f19350505050158015611d5c573d6000803e3d6000fd5b506001600160a01b038916600090815260a2602090815260408083208b8452909152902054611d919060801b6112928c6105d4565b6001600160a01b038a16600090815260a2602090815260408083208c8452909152902080546001600160801b03191660809290921c919091179055611f24565b60005b60a354811015611f22578860a38281548110611dec57fe5b9060005260206000209060020201600001541415611f1a5760a38181548110611e1157fe5b6000918252602090912060016002909202010154604051600160e01b63a9059cbb0281526001600160a01b039091169063a9059cbb90611e57908d908f906004016148da565b602060405180830381600087803b158015611e7157600080fd5b505af1158015611e85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250611ea99190810190614204565b506001600160a01b038a16600090815260a2602090815260408083208c8452909152902054611ede9060801b6112928d6105d4565b6001600160a01b038b16600090815260a2602090815260408083208d8452909152902080546001600160801b03191660809290921c9190911790555b600101611dd4565b505b886001600160a01b03167fc3cc9f7dc78b4765f7ece03d1970d655883f54b5927067c97cded09fa91915b1898c604051611651929190614969565b600084604051602001611f72919061494a565b604051602081830303815290604052805190602001209050600081604051602001611f9d9190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b031660018287878760405160008152602001604052604051611ff79493929190614977565b6020604051602081039080840390855afa158015612019573d6000803e3d6000fd5b505050602060405103516001600160a01b03161461203657600080fd5b609f54604051600160e01b632ea7791702815230916001600160a01b031690632ea7791790612069908b90600401614a20565b60206040518083038186803b15801561208157600080fd5b505afa158015612095573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506120b99190810190613ff1565b6001600160a01b03161415612190576001600160a01b038816600081815260a2602090815260408083208b84529091529020547f210f33c455d7281801a9d50a1a61a0cd090cda687918f934a3d95784440ca2c290899061212e908d9061212990600160801b900460801b613539565b6135d1565b60405161213c929190614969565b60405180910390a261214d896105d4565b6001600160a01b038916600090815260a2602090815260408083208b84529091529020805460809290921c600160801b026001600160801b039092169190911790555b505050505050505050565b6121a36116a4565b6121c257604051600160e51b62461bcd028152600401610d1690614a4a565b6121cb81613613565b50565b60008082116121dc57600080fd5b6000600160801b83106121f157608092831c92015b68010000000000000000831061220957604092831c92015b640100000000831061221d57602092831c92015b62010000831061222f57601092831c92015b610100831061224057600892831c92015b6010831061225057600492831c92015b6004831061226057600292831c92015b60028310610a3a5760010192915050565b3390565b6001600160a01b03831661229e57604051600160e51b62461bcd028152600401610d1690614a8a565b6001600160a01b0382166122c757604051600160e51b62461bcd028152600401610d1690614a00565b6001600160a01b0380841660008181526034602090815260408083209487168084529490915290819020849055517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590612322908590614914565b60405180910390a3505050565b600060016001607f1b03608084901c16600160701b617fff0281111561235457600080fd5b60016001607f1b03608084901c16600160701b617fff0281111561237757600080fd5b6001600160801b03198581169085161415806123a35750600160701b617fff02826001600160801b0316105b6123ac57600080fd5b6001600160801b031985811690851614156123cc57600092505050610a3a565b60006001607f1b8660801c6001600160801b03161015905060006001607f1b8660801c6001600160801b031610159050811561243757801561242857826001600160801b0316846001600160801b03161161242857600161242c565b6000195b945050505050610a3a565b801561244a576001945050505050610a3a565b826001600160801b0316846001600160801b03161161246b5760001961242c565b6001945050505050610a3a565b600080805b60a354811080156124965750600061249488613539565b115b15613272576001600160a01b038616600090815260a16020526040812060a380546124f992918491869081106124c857fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b8961232f565b60000b12612bbd5760006125c061256e8960a160008b6001600160a01b03166001600160a01b03168152602001908152602001600020600060a3878154811061253e57fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b613698565b6001600160a01b038916600090815260a16020526040812060a380549192918790811061259757fe5b60009182526020808320600290920290910154835282019290925260400190205460801b61395e565b905061262360a16000896001600160a01b03166001600160a01b03168152602001908152602001600020600060a385815481106125f957fe5b60009182526020808320600290920290910154835282019290925260400190205460801b826133fd565b6001600160a01b038816600090815260a16020526040812060a380549192918690811061264c57fe5b906000526020600020906002020160000154815260200190815260200160002060000160006101000a8154816001600160801b03021916908360801c02179055506126f560a16000896001600160a01b03166001600160a01b03168152602001908152602001600020600060a385815481106126c457fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b896133fd565b6001600160a01b038816600090815260a16020526040812060a380549192918690811061271e57fe5b6000918252602080832060029092029091015483528201929092526040019020805460809290921c600160801b026001600160801b03909216919091179055609b5460ff600160a81b909104161561277557600080fd5b609b8054600160a81b60ff021916600160a81b179055600160d01b6572656465656d0286141561293e576127b1876127ac8a613539565b613bc5565b60a382815481106127be57fe5b906000526020600020906002020160000154600160d91b6432ba3432b902141561282657866001600160a01b03166108fc6127f883613539565b6040518115909202916000818181858888f19350505050158015612820573d6000803e3d6000fd5b506128d0565b60a3828154811061283357fe5b60009182526020909120600160029092020101546001600160a01b031663a9059cbb8861285f84613539565b6040518363ffffffff1660e01b815260040161287c9291906148da565b602060405180830381600087803b15801561289657600080fd5b505af11580156128aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506128ce9190810190614204565b505b866001600160a01b03167fc3cc9f7dc78b4765f7ece03d1970d655883f54b5927067c97cded09fa91915b160a3848154811061290857fe5b90600052602060002090600202016000015461292384613539565b604051612931929190614969565b60405180910390a2612b9f565b85600160c11b673a3930b739b332b9021415612b9f5761297d888260a3858154811061296657fe5b906000526020600020906002020160000154613c9e565b909850905061298f876127ac8a613539565b6129a18561299c8a613539565b613447565b6001600160a01b038516600090815260a16020526040812060a380546129f7939190869081106129cd57fe5b60009182526020808320600290920290910154835282019290925260400190205460801b8261063a565b6001600160a01b038616600090815260a16020526040812060a3805491929186908110612a2057fe5b906000526020600020906002020160000154815260200190815260200160002060000160006101000a8154816001600160801b03021916908360801c0217905550612ac960a16000876001600160a01b03166001600160a01b03168152602001908152602001600020600060a38581548110612a9857fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b8961063a565b6001600160a01b038616600090815260a16020526040812060a3805491929186908110612af257fe5b906000526020600020906002020160000154815260200190815260200160002060000160106101000a8154816001600160801b03021916908360801c0217905550866001600160a01b03167f952d4864a5fc6f5a60dff7f24a4cc96e6ec94f1b5c343ed13fb6cb321c771b858660a38581548110612b6c57fe5b906000526020600020906002020160000154612b878c613539565b604051612b96939291906148bf565b60405180910390a25b50609b8054600160a81b60ff0219169055600096506001915061326a565b6001600160a01b038616600090815260a16020526040812060a38054612c1b9291849186908110612bea57fe5b600091825260208083206002909202909101548352820192909252604001812054600160801b900460801b9061232f565b60000b131561326a57609b54600160a81b900460ff1615612c3b57600080fd5b609b8054600160a81b60ff021916600160a81b179055600160d01b6572656465656d02851415612eba57612cd0866127ac60a160008a6001600160a01b03166001600160a01b03168152602001908152602001600020600060a38681548110612ca057fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b613539565b6001600160a01b038616600090815260a16020526040812060a3805483919085908110612cf957fe5b906000526020600020906002020160000154815260200190815260200160002060000160009054906101000a900460801b905060a38281548110612d3957fe5b906000526020600020906002020160000154600160d91b6432ba3432b9021415612da157866001600160a01b03166108fc612d7383613539565b6040518115909202916000818181858888f19350505050158015612d9b573d6000803e3d6000fd5b50612e4b565b60a38281548110612dae57fe5b60009182526020909120600160029092020101546001600160a01b031663a9059cbb88612dda84613539565b6040518363ffffffff1660e01b8152600401612df79291906148da565b602060405180830381600087803b158015612e1157600080fd5b505af1158015612e25573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250612e499190810190614204565b505b866001600160a01b03167fc3cc9f7dc78b4765f7ece03d1970d655883f54b5927067c97cded09fa91915b160a38481548110612e8357fe5b906000526020600020906002020160000154612e9e84613539565b604051612eac929190614969565b60405180910390a2506131a1565b84600160c11b673a3930b739b332b90214156131a157600080612fad60a160008a6001600160a01b03166001600160a01b03168152602001908152602001600020600060a38681548110612f0a57fe5b906000526020600020906002020160000154815260200190815260200160002060000160109054906101000a900460801b60a160008b6001600160a01b03166001600160a01b03168152602001908152602001600020600060a38781548110612f6f57fe5b906000526020600020906002020160000154815260200190815260200160002060000160009054906101000a900460801b60a3868154811061296657fe5b91509150612fbe886127ac84613539565b612fcb8661299c84613539565b6001600160a01b038616600090815260a16020526040812060a38054612ff7939190879081106129cd57fe5b6001600160a01b038716600090815260a16020526040812060a380549192918790811061302057fe5b906000526020600020906002020160000154815260200190815260200160002060000160006101000a8154816001600160801b03021916908360801c02179055506130c960a16000886001600160a01b03166001600160a01b03168152602001908152602001600020600060a3868154811061309857fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b8361063a565b6001600160a01b038716600090815260a16020526040812060a38054919291879081106130f257fe5b906000526020600020906002020160000154815260200190815260200160002060000160106101000a8154816001600160801b03021916908360801c0217905550876001600160a01b03167f952d4864a5fc6f5a60dff7f24a4cc96e6ec94f1b5c343ed13fb6cb321c771b858760a3868154811061316c57fe5b90600052602060002090600202016000015461318786613539565b604051613196939291906148bf565b60405180910390a250505b6132098760a16000896001600160a01b03166001600160a01b03168152602001908152602001600020600060a385815481106131d957fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b6133fd565b6001600160a01b038716600090815260a16020526040812060a38054939a5090928490811061323457fe5b600091825260208083206002909202909101548352820192909252604001812055609b8054600160a81b60ff0219169055600191505b60010161247d565b5090505b949350505050565b6001600160a01b0383166132a757604051600160e51b62461bcd028152600401610d1690614a7a565b6001600160a01b0382166132d057604051600160e51b62461bcd028152600401610d16906149c6565b61331381604051806060016040528060268152602001614ba8602691396001600160a01b038616600090815260336020526040902054919063ffffffff61350a16565b6001600160a01b038085166000908152603360205260408082209390935590841681522054613348908263ffffffff61339a16565b6001600160a01b0380841660008181526033602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90612322908590614914565b600082820183811015610ce857604051600160e51b62461bcd028152600401610d1690614a10565b609b805460ff191690556040517fa45f47fdea8a1efdd9029a5691c7f759c32b7c698632b563573e155625d1693390600090a1565b303b1590565b6000610ce883600160ff1b841861063a565b609b805460ff191660011790556040517f9e87fac88ff661f02d44f95383c817fece4bce600a3dab7a54406878b965e75290600090a1565b6001600160a01b03821661347057604051600160e51b62461bcd028152600401610d1690614a9a565b603554613483908263ffffffff61339a16565b6035556001600160a01b0382166000908152603360205260409020546134af908263ffffffff61339a16565b6001600160a01b0383166000818152603360205260408082209390935591519091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906134fe908590614914565b60405180910390a35050565b6000818484111561353157604051600160e51b62461bcd028152600401610d1691906149b5565b505050900390565b6000617fff6001600160801b03608084901c1660701c16613fff811015613564576000915050610635565b6001607f1b8360801c6001600160801b03161061358057600080fd5b6140fe81111561358f57600080fd5b600160701b6001600160701b03608085901c161761406f8210156135b95761406f8290031c610ce8565b61406f821115610ce85761406e1982011b9392505050565b6000610ce883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061350a565b6001600160a01b03811661363c57604051600160e51b62461bcd028152600401610d16906149f0565b6068546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606880546001600160a01b0319166001600160a01b0392909216919091179055565b6000617fff6001600160801b03608085811c8216607090811c8416939186901c90921690911c8116908214156136f65780617fff14156136e55750600160ef1b61ffff029150610a3a9050565b505050600160ff1b81168218610a3a565b80617fff141561373657600160801b600160f01b038416156137255750600160ef1b61ffff029150610a3a9050565b505050808218600160ff1b16610a3a565b600160801b600160ff1b03841661378657600160801b600160ff1b03851661376b5750600160ef1b61ffff029150610a3a9050565b505050808218600160ff1b16600160f01b617fff0217610a3a565b6001600160701b03608085901c16816137a257600191506137a9565b600160701b175b6001600160701b03608087901c16836137e85780156137e35760006137cd826121ce565b6001955060e20393840160711901939190911b90505b6137f2565b600160701b1760721b5b8181816137fb57fe5b0490508061382757600160ff1b8787181661381757600061242c565b600160ff1b945050505050610a3a565b6001606c1b81101561383557fe5b6000600160731b82101561387557600160721b82101561386a57600160711b821015613862576070613865565b60715b61386d565b60725b60ff1661387e565b61387e826121ce565b90508361407101818601111561389c57617fff94506000915061392f565b83818601613ffc0110156138b757600094506000915061392f565b83818601613f8c011015613904578385613ffc0111156138e2578385613ffc010382901b91506138fb565b8385613ffc0110156138fb57613ffc8585030382901c91505b6000945061392f565b6070811115613917576070810382901c91505b6001600160701b038216915083818601613f8d010394505b81607086901b888a186001607f1b60801b1660801c6001600160801b0316171760801b95505050505050610a3a565b6000617fff6001600160801b03608085811c8216607090811c8416939186901c90921690911c811690821415613a055780617fff14156139e1576001600160801b031985811690851614156139be57505050600160ff1b81168218610a3a565b600160ff1b6001600160801b031986861816141561069357505050818117610a3a565b600160801b600160ff1b0384166136e55750600160ef1b61ffff029150610a3a9050565b80617fff1415613a4457600160801b600160ff1b038516613a335750600160ef1b61ffff029150610a3a9050565b505050600160ff1b82168118610a3a565b6001600160701b03608086901c1682613a605760019250613a67565b600160701b175b6001600160701b03608086901c1682613a835760019250613a8a565b600160701b175b9081029081613aa757600160ff1b8787181661381757600061242c565b928201926000600160e11b831015613adb57600160e01b831015613ad357613ace836121ce565b613ad6565b60e05b613ade565b60e15b90506140708186011015613af9576000945060009250613b96565b6140e08186011015613b3c57614070851015613b1e57846140700383901c9250613b33565b614070851115613b3357614070850383901b92505b60009450613b96565b61c0dd8186011115613b5657617fff945060009250613b96565b6070811115613b6d576070810383901c9250613b80565b6070811015613b80578060700383901b92505b6001600160701b03831692506140df8186010394505b82607086901b888a186001607f1b60801b1660801c6001600160801b0316171760801b95505050505050610a3a565b6001600160a01b038216613bee57604051600160e51b62461bcd028152600401610d1690614a6a565b613c3181604051806060016040528060228152602001614b86602291396001600160a01b038516600090815260336020526040902054919063ffffffff61350a16565b6001600160a01b038316600090815260336020526040902055603554613c5d908263ffffffff6135d116565b6035556040516000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906134fe908590614914565b60a054604051600160e01b63e5f3d3a502815260009182918291613d2a916001600160a01b039091169063e5f3d3a590613cda90600401614a2d565b60206040518083038186803b158015613cf257600080fd5b505afa158015613d06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610b1c9190810190614222565b9050613d3781600061232f565b60000b60011415613e7e5760a05460408051600160e11b637a55098102815290516000926001600160a01b03169163f4aa1302916004808301926020929190829003018186803b158015613d8a57600080fd5b505afa158015613d9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250613dc29190810190613ff1565b90506001600160a01b03811615613e7c57613de9816104f8613de4858b61395e565b613539565b50613df887611292848a61395e565b6001600160a01b038216600090815260a160209081526040808320898452909152902054909750613e309060801b61021d848961395e565b6001600160a01b038216600090815260a160209081526040808320898452909152902080546001600160801b03191660809290921c919091179055613e7986611292848261395e565b95505b505b5093949293505050565b604080518082019091526000808252602082015290565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613ee057805160ff1916838001178555613f0d565b82800160010185558215613f0d579182015b82811115613f0d578251825591602001919060010190613ef2565b50613f19929150613f1d565b5090565b610af591905b80821115613f195760008155600101613f23565b6000610ce88235614b0c565b6000610ce88251614b0c565b6000610ce88251614b17565b6000610ce88235610af5565b6000610ce88251610af5565b600082601f830112613f8457600080fd5b8151613f97613f9282614ad1565b614aaa565b91508082526020830160208301858383011115613fb357600080fd5b613fbe838284614b4f565b50505092915050565b6000610ce88235614b28565b600060208284031215613fe557600080fd5b60006132768484613f37565b60006020828403121561400357600080fd5b60006132768484613f43565b6000806040838503121561402257600080fd5b600061402e8585613f37565b925050602061403f85828601613f37565b9150509250929050565b60008060006060848603121561405e57600080fd5b600061406a8686613f37565b935050602061407b86828701613f37565b925050604061408c86828701613f5b565b9150509250925092565b600080604083850312156140a957600080fd5b60006140b58585613f37565b925050602061403f85828601613f5b565b600080600080600080600080610100898b0312156140e357600080fd5b60006140ef8b8b613f37565b98505060206141008b828c01613f5b565b97505060406141118b828c01613f5b565b96505060606141228b828c01613f5b565b95505060806141338b828c01613f5b565b94505060a06141448b828c01613fc7565b93505060c06141558b828c01613f5b565b92505060e06141668b828c01613f5b565b9150509295985092959890939650565b60008060006060848603121561418b57600080fd5b60006141978686613f37565b93505060206141a886828701613f5b565b925050604061408c86828701613f37565b600080600080600080600080610100898b0312156141d657600080fd5b60006141e28b8b613f37565b98505060206141f38b828c01613f5b565b97505060406141118b828c01613f37565b60006020828403121561421657600080fd5b60006132768484613f4f565b60006020828403121561423457600080fd5b60006132768484613f67565b600080600080600060a0868803121561425857600080fd5b60006142648888613f5b565b955050602061427588828901613f5b565b945050604061428688828901613f37565b935050606061429788828901613f37565b92505060806142a888828901613f37565b9150509295509295909350565b6000602082840312156142c757600080fd5b815167ffffffffffffffff8111156142de57600080fd5b61327684828501613f73565b600080600080600080600060e0888a03121561430557600080fd5b60006143118a8a613f5b565b97505060206143228a828b01613f37565b96505060406143338a828b01613f5b565b95505060606143448a828b01613f5b565b94505060806143558a828b01613fc7565b93505060a06143668a828b01613f5b565b92505060c06143778a828b01613f5b565b91505092959891949750929550565b600080600080600080600080610100898b0312156143a357600080fd5b60006143af8b8b613f5b565b98505060206141008b828c01613f37565b60006143cc8383614830565b505060400190565b6143dd81614b2e565b82525050565b6143dd81614b0c565b60006143f782614aff565b6144018185614b03565b935061440c83614af9565b60005b82811015614437576144228683516143c0565b955061442d82614af9565b915060010161440f565b5093949350505050565b6143dd81614b17565b6143dd81610af5565b6143dd61445f82610af5565b610af5565b6143dd81614b39565b600061447882614aff565b6144828185614b03565b9350614492818560208601614b4f565b61449b81614b7b565b9093019392505050565b60006144b2602383614b03565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464728152600160e81b6265737302602082015260400192915050565b600160d91b6432ba3432b9029052565b600061450a601c83610635565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000614543602683614b03565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20618152600160d01b6564647265737302602082015260400192915050565b600061458e602283614b03565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472658152600160f01b61737302602082015260400192915050565b60006145d5601b83614b03565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000815260200192915050565b600160cb1b660acd2c286c2e6d029052565b600160b01b6972656d697474616e6365029052565b6000614635601883614b03565b7f436f6e747261637420696e207061757365642073746174650000000000000000815260200192915050565b600061466e602083614b03565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572815260200192915050565b60006146a7602e83614b03565b7f436f6e747261637420696e7374616e63652068617320616c726561647920626581527f656e20696e697469616c697a6564000000000000000000000000000000000000602082015260400192915050565b6000614706600683614b03565b600160d01b654c32746f4c3102815260200192915050565b600061472b602183614b03565b7f45524332303a206275726e2066726f6d20746865207a65726f206164647265738152600160f81b607302602082015260400192915050565b6000614771602583614b03565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061648152600160d81b64647265737302602082015260400192915050565b60006147bb602483614b03565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164648152600160e01b637265737302602082015260400192915050565b6000614804601f83614b03565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300815260200192915050565b80516040830190614841848261444a565b50602082015161137d60208501826143e3565b6143dd81614b28565b60006148698284614453565b50602001919050565b600061487d826144fd565b91506148698284614453565b60208101610a3a82846143e3565b606081016148a582866143d4565b6148b260208301856143d4565b613276604083018461444a565b606081016148cd82866143e3565b6148b2602083018561444a565b604081016148e882856143e3565b610ce8602083018461444a565b60208082528101610ce881846143ec565b60208101610a3a8284614441565b60208101610a3a828461444a565b60608101614930828661444a565b61493d6020830185614464565b6132766040830184614464565b60408101614958828461444a565b8181036020830152610ce8816146f9565b604081016148e8828561444a565b60808101614985828761444a565b6149926020830186614854565b61499f604083018561444a565b6149ac606083018461444a565b95945050505050565b60208082528101610ce8818461446d565b60208082528101610a3a816144a5565b604081016149e3826144ed565b610a3a602083018461444a565b60208082528101610a3a81614536565b60208082528101610a3a81614581565b60208082528101610a3a816145c8565b604081016149e382614601565b6020810161063582614613565b60208082528101610a3a81614628565b60208082528101610a3a81614661565b60208082528101610a3a8161469a565b60208082528101610a3a8161471e565b60208082528101610a3a81614764565b60208082528101610a3a816147ae565b60208082528101610a3a816147f7565b60405181810167ffffffffffffffff81118282101715614ac957600080fd5b604052919050565b600067ffffffffffffffff821115614ae857600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b6000610a3a82614b1c565b151590565b6001600160a01b031690565b60ff1690565b6000610a3a82614b44565b6000610a3a82610af5565b6000610a3a82614b0c565b60005b83811015614b6a578181015183820152602001614b52565b8381111561137d5750506000910152565b601f01601f19169056fe45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a723058206c469d55b1a4f726cce71f2ea317c960619e723a75af0fe4b0b1558474a9be386c6578706572696d656e74616cf50037",
|
|
832
|
-
"deployedBytecode": "0x6080604052600436106101c25760003560e01c806380726e14116100f7578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e14610554578063eace6d3b14610574578063ee8edd5614610594578063f2fde38b146105b4576101c2565b8063a9059cbb146104dd578063b187bd26146104fd578063c4d66de814610512578063d3c7c2c714610532576101c2565b80638f32d59b116100d15780638f32d59b1461047357806395d89b4114610488578063a0213ff11461049d578063a457c2d7146104bd576101c2565b806380726e141461041c5780638456cb591461043c5780638da5cb5b14610451576101c2565b80633f4ba83a116101645780635d4f5b1c1161013e5780635d4f5b1c146103a75780636c19e783146103c757806370a08231146103e7578063715018a614610407576101c2565b80633f4ba83a1461035257806346499770146103675780634ba3f98814610387576101c2565b806318160ddd116101a057806318160ddd146102db57806323b872dd146102f05780632ceafc27146103105780633950935114610332576101c2565b806306fdde0314610261578063095ea7b31461028c5780630bc4b81a146102b9575b346101cc57600080fd5b36156101d757600080fd5b609b5460ff16156101e757600080fd5b33600090815260a160209081526040808320600160d91b6432ba3432b90284529091529020546102229060801b61021d346105d4565b61063a565b33600090815260a160209081526040808320600160d91b6432ba3432b9028452909152902080546001600160801b03191660809290921c919091179055005b34801561026d57600080fd5b50610276610a40565b60405161028391906149b5565b60405180910390f35b34801561029857600080fd5b506102ac6102a7366004614096565b610ace565b6040516102839190614906565b3480156102c557600080fd5b506102ce610aeb565b6040516102839190614914565b3480156102e757600080fd5b506102ce610af1565b3480156102fc57600080fd5b506102ac61030b366004614049565b610af8565b34801561031c57600080fd5b5061033061032b366004614096565b610cef565b005b34801561033e57600080fd5b506102ac61034d366004614096565b610def565b34801561035e57600080fd5b50610330610e48565b34801561037357600080fd5b50610330610382366004614240565b610e79565b34801561039357600080fd5b506103306103a2366004614176565b61104c565b3480156103b357600080fd5b506102ac6103c2366004613fd3565b611383565b3480156103d357600080fd5b506103306103e2366004613fd3565b6113b1565b3480156103f357600080fd5b506102ce610402366004613fd3565b611400565b34801561041357600080fd5b5061033061141b565b34801561042857600080fd5b506103306104373660046141b9565b61148c565b34801561044857600080fd5b50610330611666565b34801561045d57600080fd5b50610466611695565b6040516102839190614889565b34801561047f57600080fd5b506102ac6116a4565b34801561049457600080fd5b506102766116ca565b3480156104a957600080fd5b506103306104b83660046140c6565b611725565b3480156104c957600080fd5b506102ac6104d8366004614096565b6119f1565b3480156104e957600080fd5b506102ac6104f8366004614096565b611a5f565b34801561050957600080fd5b506102ac611a73565b34801561051e57600080fd5b5061033061052d366004613fd3565b611a7c565b34801561053e57600080fd5b50610547611b51565b60405161028391906148f5565b34801561056057600080fd5b506102ce61056f36600461400f565b611bc6565b34801561058057600080fd5b5061033061058f366004614386565b611bf1565b3480156105a057600080fd5b506103306105af3660046142ea565b611f5f565b3480156105c057600080fd5b506103306105cf366004613fd3565b61219b565b6000816105e357506000610635565b8160006105ef826121ce565b90506070811015610608578060700382901b915061061b565b607081111561061b576070810382901c91505b613fff0160701b6001600160701b03919091161760801b90505b919050565b6000617fff6001600160801b03608085811c8216607090811c8416939186901c90921690911c8116908214156106b05780617fff14156106a6576001600160801b03198581169085161415610693578492505050610a3a565b50600160ef1b61ffff029150610a3a9050565b8492505050610a3a565b80617fff14156106c4578392505050610a3a565b6001607f1b608086901c6001600160801b0381169190911015906001600160701b0316836106f557600193506106fc565b600160701b175b6001607f1b608087901c6001600160801b0381169190911015906001600160701b03168461072d5760019450610734565b600160701b175b82610764576001600160801b03198816600160ff1b146107545787610757565b60005b9650505050505050610a3a565b80610784576001600160801b03198916600160ff1b146107545788610757565b84860384151583151514156108925760708113156107ab5789975050505050505050610a3a565b60008113156107bd5790811c906107ec565b606f198112156107d65788975050505050505050610a3a565b60008112156107ec578060000384901c93508596505b92810192600160711b8410610807576001968701969390931c925b86617fff141561083c578461082457600160f01b617fff0261082e565b6001600160f01b03195b975050505050505050610a3a565b600160701b841015610851576000965061085e565b6001600160701b03841693505b83607088901b86610870576000610876565b6001607f1b5b6001600160801b0316171760801b975050505050505050610a3a565b60008113156108ad57600184901b93506001870396506108c4565b60008112156108c457600182901b91506001860396505b60708113156108d65760019150610923565b60018113156108f3576001810360018303901c6001019150610923565b606f198112156109065760019350610923565b600019811215610923576001816000030360018503901c60010193505b81841061093457818403935061093d565b83820393508294505b83610953575060009650610a3a95505050505050565b600061095e856121ce565b9050806071141561098457600185901c6001600160701b031694506001880197506109d3565b60708110156109c6576070819003808911156109b3578086901b6001600160701b0316955080890398506109c0565b600098600019019590951b945b506109d3565b6001600160701b03851694505b87617fff1415610a0957856109f057600160f01b617fff026109fa565b6001600160f01b03195b98505050505050505050610a3a565b84607089901b87610a1b576000610a21565b6001607f1b5b6001600160801b0316171760801b985050505050505050505b92915050565b609c805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610ac65780601f10610a9b57610100808354040283529160200191610ac6565b820191906000526020600020905b815481529060010190602001808311610aa957829003601f168201915b505050505081565b6000610ae2610adb612271565b8484612275565b50600192915050565b609e5481565b6035545b90565b609b5460009060ff1615610b0b57600080fd5b6000610b2f610b21610b1c87611400565b6105d4565b610b2a856105d4565b61232f565b60000b1215610b3d57600080fd5b6001600160a01b038316301415610b8357610b6e610b5a836105d4565b85600160d01b6572656465656d0230612478565b15610b7b57506001610ce8565b506000610ce8565b609f54604051600160e01b63f429f19b0281526001600160a01b039091169063f429f19b90610bb6908690600401614889565b60206040518083038186803b158015610bce57600080fd5b505afa158015610be2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610c069190810190614222565b600160cb1b660acd2c286c2e6d021480610cae5750609f54604051600160e01b63f429f19b0281526001600160a01b039091169063f429f19b90610c4e908690600401614889565b60206040518083038186803b158015610c6657600080fd5b505afa158015610c7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610c9e9190810190614222565b600160ca1b66159a58509bdb9902145b15610cc657610cbe84848461327e565b506001610ce8565b610b6e610cd2836105d4565b85600160c11b673a3930b739b332b90286612478565b9392505050565b610cf76116a4565b610d1f57604051600160e51b62461bcd028152600401610d1690614a4a565b60405180910390fd5b6001600160a01b038216600090815260a46020526040902054610deb57610d44613e88565b506040805180820182528281526001600160a01b03848116602080840182815260a38054600181018255600082815296517f60859188cffe297f44dde29f2d2865634621f26215049caeb304ccba566a8b1760029092029182015591517f60859188cffe297f44dde29f2d2865634621f26215049caeb304ccba566a8b1890920180546001600160a01b0319169290951691909117909355915490835260a4909152919020555b5050565b6000610ae2610dfc612271565b84610e438560346000610e0d612271565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff61339a16565b612275565b610e506116a4565b610e6f57604051600160e51b62461bcd028152600401610d1690614a4a565b610e776133c2565b565b600054610100900460ff1680610e925750610e926133f7565b80610ea0575060005460ff16155b610ebf57604051600160e51b62461bcd028152600401610d1690614a5a565b600054610100900460ff16158015610eea576000805460ff1961ff0019909116610100171660011790555b610ef384611a7c565b609f80546001600160a01b03191633179055604051610f1690879060200161485d565b604051602081830303815290604052609c9080519060200190610f3a929190613e9f565b50604051600160e01b63f921e64702815273__stringutils___________________________9063f921e64790610f7b908990600090600590600401614922565b60006040518083038186803b158015610f9357600080fd5b505af4158015610fa7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fcf91908101906142b5565b8051610fe391609d91602090910190613e9f565b50609e85905560a080546001600160a01b0319166001600160a01b0385811691909117909155609b8054610100600160a81b0319166101009285169290920291909117600160a81b60ff02191690558015611044576000805461ff00191690555b505050505050565b609b5460ff161561107257604051600160e51b62461bcd028152600401610d1690614a3a565b6001600160a01b038316600090815260a4602052604081205415611094575060015b801561121e576110a5333085612275565b6001600160a01b038416600090815260a4602052604081205460a380549091600019019081106110d157fe5b9060005260206000209060020201600001549050846001600160a01b03166323b872dd3330876040518463ffffffff1660e01b815260040161111593929190614897565b602060405180830381600087803b15801561112f57600080fd5b505af1158015611143573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506111679190810190614204565b15611218576001600160a01b038316600090815260a2602090815260408083208484529091529020546111a09060801b61021d866105d4565b6001600160a01b038416600081815260a2602090815260408083208684529091529081902080546001600160801b03191660809490941c9390931790925590517fe2ac3a086131f5c7b3a741ffad3af27c104ddc624ae2b853152c00c64bcbcf039061120f9084908890614969565b60405180910390a25b5061137d565b33600090815260a160209081526040808320600160d91b6432ba3432b90284529091528120546112549060801b610b2a866105d4565b60000b1261137d5733600090815260a160209081526040808320600160d91b6432ba3432b90284529091529020546112979060801b611292856105d4565b6133fd565b33600090815260a160209081526040808320600160d91b6432ba3432b90280855290835281842080546001600160801b031916608096871c1790556001600160a01b038716845260a283528184209084529091529020546112fc911b61021d856105d4565b6001600160a01b038316600081815260a260209081526040808320600160d91b6432ba3432b90284529091529081902080546001600160801b03191660809490941c9390931790925590517fe2ac3a086131f5c7b3a741ffad3af27c104ddc624ae2b853152c00c64bcbcf03906113749086906149d6565b60405180910390a25b50505050565b6001600160a01b038116600090815260a46020526040812054156113a957506001610635565b506000610635565b6113b96116a4565b6113d857604051600160e51b62461bcd028152600401610d1690614a4a565b609b80546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b031660009081526033602052604090205490565b6114236116a4565b61144257604051600160e51b62461bcd028152600401610d1690614a4a565b6068546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606880546001600160a01b0319169055565b60008460405160200161149f919061494a565b6040516020818303038152906040528051906020012090506000816040516020016114ca9190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b0316600182878787604051600081526020016040526040516115249493929190614977565b6020604051602081039080840390855afa158015611546573d6000803e3d6000fd5b505050602060405103516001600160a01b03161461156357600080fd5b6001600160a01b038a16600090815260a2602090815260408083208a84529091528120546115a29061159b9060801b6112928d6105d4565b600061232f565b60000b1261165a576001600160a01b038a16600090815260a2602090815260408083208a84529091529020546115de9060801b6112928b6105d4565b506001600160a01b038816600090815260a2602090815260408083208a84529091529020546116139060801b61021d8b6105d4565b50896001600160a01b03167fff1247709775171c6ced2a84a8776135fbf147b71843e06d083855dce5250dd689898c604051611651939291906148bf565b60405180910390a25b50505050505050505050565b61166e6116a4565b61168d57604051600160e51b62461bcd028152600401610d1690614a4a565b610e7761340f565b6068546001600160a01b031690565b6068546000906001600160a01b03166116bb612271565b6001600160a01b031614905090565b609d805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610ac65780601f10610a9b57610100808354040283529160200191610ac6565b600084604051602001611738919061494a565b6040516020818303038152906040528051906020012090506000816040516020016117639190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b0316600182878787604051600081526020016040526040516117bd9493929190614977565b6020604051602081039080840390855afa1580156117df573d6000803e3d6000fd5b505050602060405103516001600160a01b0316146117fc57600080fd5b6001600160a01b038a16600090815260a2602090815260408083208c84529091529020546118309060801b611292896105d4565b6001600160a01b038b16600081815260a2602090815260408083208e8452825280832080546001600160801b031916608096871c17905592825260a181528282208d835290522054611886911b61021d896105d4565b6001600160a01b038b16600090815260a1602090815260408083208d8452909152902080546001600160801b03191660809290921c9190911790556118cb3089613447565b6118d6308b8a61327e565b6001600160a01b038a16600090815260a2602090815260408083208c845290915290205461191190600160801b900460801b6112928a6105d4565b6001600160a01b038b16600081815260a2602090815260408083208e8452825280832080546001600160801b0316600160801b608097881c81029190911790915593835260a182528083208e845290915290205461197792919004901b61021d8a6105d4565b6001600160a01b038b16600081815260a1602090815260408083208e845290915290819020805460809490941c600160801b026001600160801b0390941693909317909255609e54915190917fc49566a7c5334ea8858c89b2e78ca7b7bcba63008800b945859eded70040a8329161165191908c90614969565b6000610ae26119fe612271565b84610e4385604051806060016040528060258152602001614bce6025913960346000611a28612271565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff61350a16565b6000610ae2611a6c612271565b848461327e565b609b5460ff1690565b600054610100900460ff1680611a955750611a956133f7565b80611aa3575060005460ff16155b611ac257604051600160e51b62461bcd028152600401610d1690614a5a565b600054610100900460ff16158015611aed576000805460ff1961ff0019909116610100171660011790555b606880546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015610deb576000805461ff00191690555050565b606060a3805480602002602001604051908101604052809291908181526020016000905b82821015611bbd5760008481526020908190206040805180820190915260028502909101805482526001908101546001600160a01b0316828401529083529092019101611b75565b50505050905090565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b600084604051602001611c04919061494a565b604051602081830303815290604052805190602001209050600081604051602001611c2f9190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b031660018287878760405160008152602001604052604051611c899493929190614977565b6020604051602081039080840390855afa158015611cab573d6000803e3d6000fd5b505050602060405103516001600160a01b031614611cc857600080fd5b611cd1876105d4565b6001600160a01b038a16600090815260a2602090815260408083208c84529091529020805460809290921c600160801b026001600160801b03909216919091179055600160d91b6432ba3432b902881415611dd1576040516001600160a01b038a16908b156108fc02908c906000818181858888f19350505050158015611d5c573d6000803e3d6000fd5b506001600160a01b038916600090815260a2602090815260408083208b8452909152902054611d919060801b6112928c6105d4565b6001600160a01b038a16600090815260a2602090815260408083208c8452909152902080546001600160801b03191660809290921c919091179055611f24565b60005b60a354811015611f22578860a38281548110611dec57fe5b9060005260206000209060020201600001541415611f1a5760a38181548110611e1157fe5b6000918252602090912060016002909202010154604051600160e01b63a9059cbb0281526001600160a01b039091169063a9059cbb90611e57908d908f906004016148da565b602060405180830381600087803b158015611e7157600080fd5b505af1158015611e85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250611ea99190810190614204565b506001600160a01b038a16600090815260a2602090815260408083208c8452909152902054611ede9060801b6112928d6105d4565b6001600160a01b038b16600090815260a2602090815260408083208d8452909152902080546001600160801b03191660809290921c9190911790555b600101611dd4565b505b886001600160a01b03167fc3cc9f7dc78b4765f7ece03d1970d655883f54b5927067c97cded09fa91915b1898c604051611651929190614969565b600084604051602001611f72919061494a565b604051602081830303815290604052805190602001209050600081604051602001611f9d9190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b031660018287878760405160008152602001604052604051611ff79493929190614977565b6020604051602081039080840390855afa158015612019573d6000803e3d6000fd5b505050602060405103516001600160a01b03161461203657600080fd5b609f54604051600160e01b632ea7791702815230916001600160a01b031690632ea7791790612069908b90600401614a20565b60206040518083038186803b15801561208157600080fd5b505afa158015612095573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506120b99190810190613ff1565b6001600160a01b03161415612190576001600160a01b038816600081815260a2602090815260408083208b84529091529020547f210f33c455d7281801a9d50a1a61a0cd090cda687918f934a3d95784440ca2c290899061212e908d9061212990600160801b900460801b613539565b6135d1565b60405161213c929190614969565b60405180910390a261214d896105d4565b6001600160a01b038916600090815260a2602090815260408083208b84529091529020805460809290921c600160801b026001600160801b039092169190911790555b505050505050505050565b6121a36116a4565b6121c257604051600160e51b62461bcd028152600401610d1690614a4a565b6121cb81613613565b50565b60008082116121dc57600080fd5b6000600160801b83106121f157608092831c92015b68010000000000000000831061220957604092831c92015b640100000000831061221d57602092831c92015b62010000831061222f57601092831c92015b610100831061224057600892831c92015b6010831061225057600492831c92015b6004831061226057600292831c92015b60028310610a3a5760010192915050565b3390565b6001600160a01b03831661229e57604051600160e51b62461bcd028152600401610d1690614a8a565b6001600160a01b0382166122c757604051600160e51b62461bcd028152600401610d1690614a00565b6001600160a01b0380841660008181526034602090815260408083209487168084529490915290819020849055517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590612322908590614914565b60405180910390a3505050565b600060016001607f1b03608084901c16600160701b617fff0281111561235457600080fd5b60016001607f1b03608084901c16600160701b617fff0281111561237757600080fd5b6001600160801b03198581169085161415806123a35750600160701b617fff02826001600160801b0316105b6123ac57600080fd5b6001600160801b031985811690851614156123cc57600092505050610a3a565b60006001607f1b8660801c6001600160801b03161015905060006001607f1b8660801c6001600160801b031610159050811561243757801561242857826001600160801b0316846001600160801b03161161242857600161242c565b6000195b945050505050610a3a565b801561244a576001945050505050610a3a565b826001600160801b0316846001600160801b03161161246b5760001961242c565b6001945050505050610a3a565b600080805b60a354811080156124965750600061249488613539565b115b15613272576001600160a01b038616600090815260a16020526040812060a380546124f992918491869081106124c857fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b8961232f565b60000b12612bbd5760006125c061256e8960a160008b6001600160a01b03166001600160a01b03168152602001908152602001600020600060a3878154811061253e57fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b613698565b6001600160a01b038916600090815260a16020526040812060a380549192918790811061259757fe5b60009182526020808320600290920290910154835282019290925260400190205460801b61395e565b905061262360a16000896001600160a01b03166001600160a01b03168152602001908152602001600020600060a385815481106125f957fe5b60009182526020808320600290920290910154835282019290925260400190205460801b826133fd565b6001600160a01b038816600090815260a16020526040812060a380549192918690811061264c57fe5b906000526020600020906002020160000154815260200190815260200160002060000160006101000a8154816001600160801b03021916908360801c02179055506126f560a16000896001600160a01b03166001600160a01b03168152602001908152602001600020600060a385815481106126c457fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b896133fd565b6001600160a01b038816600090815260a16020526040812060a380549192918690811061271e57fe5b6000918252602080832060029092029091015483528201929092526040019020805460809290921c600160801b026001600160801b03909216919091179055609b5460ff600160a81b909104161561277557600080fd5b609b8054600160a81b60ff021916600160a81b179055600160d01b6572656465656d0286141561293e576127b1876127ac8a613539565b613bc5565b60a382815481106127be57fe5b906000526020600020906002020160000154600160d91b6432ba3432b902141561282657866001600160a01b03166108fc6127f883613539565b6040518115909202916000818181858888f19350505050158015612820573d6000803e3d6000fd5b506128d0565b60a3828154811061283357fe5b60009182526020909120600160029092020101546001600160a01b031663a9059cbb8861285f84613539565b6040518363ffffffff1660e01b815260040161287c9291906148da565b602060405180830381600087803b15801561289657600080fd5b505af11580156128aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506128ce9190810190614204565b505b866001600160a01b03167fc3cc9f7dc78b4765f7ece03d1970d655883f54b5927067c97cded09fa91915b160a3848154811061290857fe5b90600052602060002090600202016000015461292384613539565b604051612931929190614969565b60405180910390a2612b9f565b85600160c11b673a3930b739b332b9021415612b9f5761297d888260a3858154811061296657fe5b906000526020600020906002020160000154613c9e565b909850905061298f876127ac8a613539565b6129a18561299c8a613539565b613447565b6001600160a01b038516600090815260a16020526040812060a380546129f7939190869081106129cd57fe5b60009182526020808320600290920290910154835282019290925260400190205460801b8261063a565b6001600160a01b038616600090815260a16020526040812060a3805491929186908110612a2057fe5b906000526020600020906002020160000154815260200190815260200160002060000160006101000a8154816001600160801b03021916908360801c0217905550612ac960a16000876001600160a01b03166001600160a01b03168152602001908152602001600020600060a38581548110612a9857fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b8961063a565b6001600160a01b038616600090815260a16020526040812060a3805491929186908110612af257fe5b906000526020600020906002020160000154815260200190815260200160002060000160106101000a8154816001600160801b03021916908360801c0217905550866001600160a01b03167f952d4864a5fc6f5a60dff7f24a4cc96e6ec94f1b5c343ed13fb6cb321c771b858660a38581548110612b6c57fe5b906000526020600020906002020160000154612b878c613539565b604051612b96939291906148bf565b60405180910390a25b50609b8054600160a81b60ff0219169055600096506001915061326a565b6001600160a01b038616600090815260a16020526040812060a38054612c1b9291849186908110612bea57fe5b600091825260208083206002909202909101548352820192909252604001812054600160801b900460801b9061232f565b60000b131561326a57609b54600160a81b900460ff1615612c3b57600080fd5b609b8054600160a81b60ff021916600160a81b179055600160d01b6572656465656d02851415612eba57612cd0866127ac60a160008a6001600160a01b03166001600160a01b03168152602001908152602001600020600060a38681548110612ca057fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b613539565b6001600160a01b038616600090815260a16020526040812060a3805483919085908110612cf957fe5b906000526020600020906002020160000154815260200190815260200160002060000160009054906101000a900460801b905060a38281548110612d3957fe5b906000526020600020906002020160000154600160d91b6432ba3432b9021415612da157866001600160a01b03166108fc612d7383613539565b6040518115909202916000818181858888f19350505050158015612d9b573d6000803e3d6000fd5b50612e4b565b60a38281548110612dae57fe5b60009182526020909120600160029092020101546001600160a01b031663a9059cbb88612dda84613539565b6040518363ffffffff1660e01b8152600401612df79291906148da565b602060405180830381600087803b158015612e1157600080fd5b505af1158015612e25573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250612e499190810190614204565b505b866001600160a01b03167fc3cc9f7dc78b4765f7ece03d1970d655883f54b5927067c97cded09fa91915b160a38481548110612e8357fe5b906000526020600020906002020160000154612e9e84613539565b604051612eac929190614969565b60405180910390a2506131a1565b84600160c11b673a3930b739b332b90214156131a157600080612fad60a160008a6001600160a01b03166001600160a01b03168152602001908152602001600020600060a38681548110612f0a57fe5b906000526020600020906002020160000154815260200190815260200160002060000160109054906101000a900460801b60a160008b6001600160a01b03166001600160a01b03168152602001908152602001600020600060a38781548110612f6f57fe5b906000526020600020906002020160000154815260200190815260200160002060000160009054906101000a900460801b60a3868154811061296657fe5b91509150612fbe886127ac84613539565b612fcb8661299c84613539565b6001600160a01b038616600090815260a16020526040812060a38054612ff7939190879081106129cd57fe5b6001600160a01b038716600090815260a16020526040812060a380549192918790811061302057fe5b906000526020600020906002020160000154815260200190815260200160002060000160006101000a8154816001600160801b03021916908360801c02179055506130c960a16000886001600160a01b03166001600160a01b03168152602001908152602001600020600060a3868154811061309857fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b8361063a565b6001600160a01b038716600090815260a16020526040812060a38054919291879081106130f257fe5b906000526020600020906002020160000154815260200190815260200160002060000160106101000a8154816001600160801b03021916908360801c0217905550876001600160a01b03167f952d4864a5fc6f5a60dff7f24a4cc96e6ec94f1b5c343ed13fb6cb321c771b858760a3868154811061316c57fe5b90600052602060002090600202016000015461318786613539565b604051613196939291906148bf565b60405180910390a250505b6132098760a16000896001600160a01b03166001600160a01b03168152602001908152602001600020600060a385815481106131d957fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b6133fd565b6001600160a01b038716600090815260a16020526040812060a38054939a5090928490811061323457fe5b600091825260208083206002909202909101548352820192909252604001812055609b8054600160a81b60ff0219169055600191505b60010161247d565b5090505b949350505050565b6001600160a01b0383166132a757604051600160e51b62461bcd028152600401610d1690614a7a565b6001600160a01b0382166132d057604051600160e51b62461bcd028152600401610d16906149c6565b61331381604051806060016040528060268152602001614ba8602691396001600160a01b038616600090815260336020526040902054919063ffffffff61350a16565b6001600160a01b038085166000908152603360205260408082209390935590841681522054613348908263ffffffff61339a16565b6001600160a01b0380841660008181526033602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90612322908590614914565b600082820183811015610ce857604051600160e51b62461bcd028152600401610d1690614a10565b609b805460ff191690556040517fa45f47fdea8a1efdd9029a5691c7f759c32b7c698632b563573e155625d1693390600090a1565b303b1590565b6000610ce883600160ff1b841861063a565b609b805460ff191660011790556040517f9e87fac88ff661f02d44f95383c817fece4bce600a3dab7a54406878b965e75290600090a1565b6001600160a01b03821661347057604051600160e51b62461bcd028152600401610d1690614a9a565b603554613483908263ffffffff61339a16565b6035556001600160a01b0382166000908152603360205260409020546134af908263ffffffff61339a16565b6001600160a01b0383166000818152603360205260408082209390935591519091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906134fe908590614914565b60405180910390a35050565b6000818484111561353157604051600160e51b62461bcd028152600401610d1691906149b5565b505050900390565b6000617fff6001600160801b03608084901c1660701c16613fff811015613564576000915050610635565b6001607f1b8360801c6001600160801b03161061358057600080fd5b6140fe81111561358f57600080fd5b600160701b6001600160701b03608085901c161761406f8210156135b95761406f8290031c610ce8565b61406f821115610ce85761406e1982011b9392505050565b6000610ce883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061350a565b6001600160a01b03811661363c57604051600160e51b62461bcd028152600401610d16906149f0565b6068546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606880546001600160a01b0319166001600160a01b0392909216919091179055565b6000617fff6001600160801b03608085811c8216607090811c8416939186901c90921690911c8116908214156136f65780617fff14156136e55750600160ef1b61ffff029150610a3a9050565b505050600160ff1b81168218610a3a565b80617fff141561373657600160801b600160f01b038416156137255750600160ef1b61ffff029150610a3a9050565b505050808218600160ff1b16610a3a565b600160801b600160ff1b03841661378657600160801b600160ff1b03851661376b5750600160ef1b61ffff029150610a3a9050565b505050808218600160ff1b16600160f01b617fff0217610a3a565b6001600160701b03608085901c16816137a257600191506137a9565b600160701b175b6001600160701b03608087901c16836137e85780156137e35760006137cd826121ce565b6001955060e20393840160711901939190911b90505b6137f2565b600160701b1760721b5b8181816137fb57fe5b0490508061382757600160ff1b8787181661381757600061242c565b600160ff1b945050505050610a3a565b6001606c1b81101561383557fe5b6000600160731b82101561387557600160721b82101561386a57600160711b821015613862576070613865565b60715b61386d565b60725b60ff1661387e565b61387e826121ce565b90508361407101818601111561389c57617fff94506000915061392f565b83818601613ffc0110156138b757600094506000915061392f565b83818601613f8c011015613904578385613ffc0111156138e2578385613ffc010382901b91506138fb565b8385613ffc0110156138fb57613ffc8585030382901c91505b6000945061392f565b6070811115613917576070810382901c91505b6001600160701b038216915083818601613f8d010394505b81607086901b888a186001607f1b60801b1660801c6001600160801b0316171760801b95505050505050610a3a565b6000617fff6001600160801b03608085811c8216607090811c8416939186901c90921690911c811690821415613a055780617fff14156139e1576001600160801b031985811690851614156139be57505050600160ff1b81168218610a3a565b600160ff1b6001600160801b031986861816141561069357505050818117610a3a565b600160801b600160ff1b0384166136e55750600160ef1b61ffff029150610a3a9050565b80617fff1415613a4457600160801b600160ff1b038516613a335750600160ef1b61ffff029150610a3a9050565b505050600160ff1b82168118610a3a565b6001600160701b03608086901c1682613a605760019250613a67565b600160701b175b6001600160701b03608086901c1682613a835760019250613a8a565b600160701b175b9081029081613aa757600160ff1b8787181661381757600061242c565b928201926000600160e11b831015613adb57600160e01b831015613ad357613ace836121ce565b613ad6565b60e05b613ade565b60e15b90506140708186011015613af9576000945060009250613b96565b6140e08186011015613b3c57614070851015613b1e57846140700383901c9250613b33565b614070851115613b3357614070850383901b92505b60009450613b96565b61c0dd8186011115613b5657617fff945060009250613b96565b6070811115613b6d576070810383901c9250613b80565b6070811015613b80578060700383901b92505b6001600160701b03831692506140df8186010394505b82607086901b888a186001607f1b60801b1660801c6001600160801b0316171760801b95505050505050610a3a565b6001600160a01b038216613bee57604051600160e51b62461bcd028152600401610d1690614a6a565b613c3181604051806060016040528060228152602001614b86602291396001600160a01b038516600090815260336020526040902054919063ffffffff61350a16565b6001600160a01b038316600090815260336020526040902055603554613c5d908263ffffffff6135d116565b6035556040516000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906134fe908590614914565b60a054604051600160e01b63e5f3d3a502815260009182918291613d2a916001600160a01b039091169063e5f3d3a590613cda90600401614a2d565b60206040518083038186803b158015613cf257600080fd5b505afa158015613d06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610b1c9190810190614222565b9050613d3781600061232f565b60000b60011415613e7e5760a05460408051600160e11b637a55098102815290516000926001600160a01b03169163f4aa1302916004808301926020929190829003018186803b158015613d8a57600080fd5b505afa158015613d9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250613dc29190810190613ff1565b90506001600160a01b03811615613e7c57613de9816104f8613de4858b61395e565b613539565b50613df887611292848a61395e565b6001600160a01b038216600090815260a160209081526040808320898452909152902054909750613e309060801b61021d848961395e565b6001600160a01b038216600090815260a160209081526040808320898452909152902080546001600160801b03191660809290921c919091179055613e7986611292848261395e565b95505b505b5093949293505050565b604080518082019091526000808252602082015290565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613ee057805160ff1916838001178555613f0d565b82800160010185558215613f0d579182015b82811115613f0d578251825591602001919060010190613ef2565b50613f19929150613f1d565b5090565b610af591905b80821115613f195760008155600101613f23565b6000610ce88235614b0c565b6000610ce88251614b0c565b6000610ce88251614b17565b6000610ce88235610af5565b6000610ce88251610af5565b600082601f830112613f8457600080fd5b8151613f97613f9282614ad1565b614aaa565b91508082526020830160208301858383011115613fb357600080fd5b613fbe838284614b4f565b50505092915050565b6000610ce88235614b28565b600060208284031215613fe557600080fd5b60006132768484613f37565b60006020828403121561400357600080fd5b60006132768484613f43565b6000806040838503121561402257600080fd5b600061402e8585613f37565b925050602061403f85828601613f37565b9150509250929050565b60008060006060848603121561405e57600080fd5b600061406a8686613f37565b935050602061407b86828701613f37565b925050604061408c86828701613f5b565b9150509250925092565b600080604083850312156140a957600080fd5b60006140b58585613f37565b925050602061403f85828601613f5b565b600080600080600080600080610100898b0312156140e357600080fd5b60006140ef8b8b613f37565b98505060206141008b828c01613f5b565b97505060406141118b828c01613f5b565b96505060606141228b828c01613f5b565b95505060806141338b828c01613f5b565b94505060a06141448b828c01613fc7565b93505060c06141558b828c01613f5b565b92505060e06141668b828c01613f5b565b9150509295985092959890939650565b60008060006060848603121561418b57600080fd5b60006141978686613f37565b93505060206141a886828701613f5b565b925050604061408c86828701613f37565b600080600080600080600080610100898b0312156141d657600080fd5b60006141e28b8b613f37565b98505060206141f38b828c01613f5b565b97505060406141118b828c01613f37565b60006020828403121561421657600080fd5b60006132768484613f4f565b60006020828403121561423457600080fd5b60006132768484613f67565b600080600080600060a0868803121561425857600080fd5b60006142648888613f5b565b955050602061427588828901613f5b565b945050604061428688828901613f37565b935050606061429788828901613f37565b92505060806142a888828901613f37565b9150509295509295909350565b6000602082840312156142c757600080fd5b815167ffffffffffffffff8111156142de57600080fd5b61327684828501613f73565b600080600080600080600060e0888a03121561430557600080fd5b60006143118a8a613f5b565b97505060206143228a828b01613f37565b96505060406143338a828b01613f5b565b95505060606143448a828b01613f5b565b94505060806143558a828b01613fc7565b93505060a06143668a828b01613f5b565b92505060c06143778a828b01613f5b565b91505092959891949750929550565b600080600080600080600080610100898b0312156143a357600080fd5b60006143af8b8b613f5b565b98505060206141008b828c01613f37565b60006143cc8383614830565b505060400190565b6143dd81614b2e565b82525050565b6143dd81614b0c565b60006143f782614aff565b6144018185614b03565b935061440c83614af9565b60005b82811015614437576144228683516143c0565b955061442d82614af9565b915060010161440f565b5093949350505050565b6143dd81614b17565b6143dd81610af5565b6143dd61445f82610af5565b610af5565b6143dd81614b39565b600061447882614aff565b6144828185614b03565b9350614492818560208601614b4f565b61449b81614b7b565b9093019392505050565b60006144b2602383614b03565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464728152600160e81b6265737302602082015260400192915050565b600160d91b6432ba3432b9029052565b600061450a601c83610635565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000614543602683614b03565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20618152600160d01b6564647265737302602082015260400192915050565b600061458e602283614b03565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472658152600160f01b61737302602082015260400192915050565b60006145d5601b83614b03565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000815260200192915050565b600160cb1b660acd2c286c2e6d029052565b600160b01b6972656d697474616e6365029052565b6000614635601883614b03565b7f436f6e747261637420696e207061757365642073746174650000000000000000815260200192915050565b600061466e602083614b03565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572815260200192915050565b60006146a7602e83614b03565b7f436f6e747261637420696e7374616e63652068617320616c726561647920626581527f656e20696e697469616c697a6564000000000000000000000000000000000000602082015260400192915050565b6000614706600683614b03565b600160d01b654c32746f4c3102815260200192915050565b600061472b602183614b03565b7f45524332303a206275726e2066726f6d20746865207a65726f206164647265738152600160f81b607302602082015260400192915050565b6000614771602583614b03565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061648152600160d81b64647265737302602082015260400192915050565b60006147bb602483614b03565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164648152600160e01b637265737302602082015260400192915050565b6000614804601f83614b03565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300815260200192915050565b80516040830190614841848261444a565b50602082015161137d60208501826143e3565b6143dd81614b28565b60006148698284614453565b50602001919050565b600061487d826144fd565b91506148698284614453565b60208101610a3a82846143e3565b606081016148a582866143d4565b6148b260208301856143d4565b613276604083018461444a565b606081016148cd82866143e3565b6148b2602083018561444a565b604081016148e882856143e3565b610ce8602083018461444a565b60208082528101610ce881846143ec565b60208101610a3a8284614441565b60208101610a3a828461444a565b60608101614930828661444a565b61493d6020830185614464565b6132766040830184614464565b60408101614958828461444a565b8181036020830152610ce8816146f9565b604081016148e8828561444a565b60808101614985828761444a565b6149926020830186614854565b61499f604083018561444a565b6149ac606083018461444a565b95945050505050565b60208082528101610ce8818461446d565b60208082528101610a3a816144a5565b604081016149e3826144ed565b610a3a602083018461444a565b60208082528101610a3a81614536565b60208082528101610a3a81614581565b60208082528101610a3a816145c8565b604081016149e382614601565b6020810161063582614613565b60208082528101610a3a81614628565b60208082528101610a3a81614661565b60208082528101610a3a8161469a565b60208082528101610a3a8161471e565b60208082528101610a3a81614764565b60208082528101610a3a816147ae565b60208082528101610a3a816147f7565b60405181810167ffffffffffffffff81118282101715614ac957600080fd5b604052919050565b600067ffffffffffffffff821115614ae857600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b6000610a3a82614b1c565b151590565b6001600160a01b031690565b60ff1690565b6000610a3a82614b44565b6000610a3a82610af5565b6000610a3a82614b0c565b60005b83811015614b6a578181015183820152602001614b52565b8381111561137d5750506000910152565b601f01601f19169056fe45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a723058206c469d55b1a4f726cce71f2ea317c960619e723a75af0fe4b0b1558474a9be386c6578706572696d656e74616cf50037",
|
|
830
|
+
"metadata": "{\"compiler\":{\"version\":\"0.5.7+commit.6da8b019\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"cashtokenName\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"sender\",\"type\":\"address\"},{\"name\":\"receiver\",\"type\":\"address\"},{\"name\":\"token\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"},{\"name\":\"_name\",\"type\":\"bytes32\"}],\"name\":\"supportTokens\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"addedValue\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"unpause\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_name\",\"type\":\"bytes32\"},{\"name\":\"_currency\",\"type\":\"bytes32\"},{\"name\":\"_owner\",\"type\":\"address\"},{\"name\":\"_fee\",\"type\":\"address\"},{\"name\":\"_bridge\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"},{\"name\":\"_amount\",\"type\":\"uint256\"},{\"name\":\"_buyer\",\"type\":\"address\"}],\"name\":\"requestIssue\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"checkSupportForToken\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_signer\",\"type\":\"address\"}],\"name\":\"setSigner\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"transferor\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"},{\"name\":\"transferee\",\"type\":\"address\"},{\"name\":\"currency\",\"type\":\"bytes32\"},{\"name\":\"_hashedMessage\",\"type\":\"bytes32\"},{\"name\":\"_v\",\"type\":\"uint8\"},{\"name\":\"_r\",\"type\":\"bytes32\"},{\"name\":\"_s\",\"type\":\"bytes32\"}],\"name\":\"transferDeposit\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"pause\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"transferor\",\"type\":\"address\"},{\"name\":\"currency\",\"type\":\"bytes32\"},{\"name\":\"amount\",\"type\":\"uint256\"},{\"name\":\"deposited\",\"type\":\"uint256\"},{\"name\":\"_hashedMessage\",\"type\":\"bytes32\"},{\"name\":\"_v\",\"type\":\"uint8\"},{\"name\":\"_r\",\"type\":\"bytes32\"},{\"name\":\"_s\",\"type\":\"bytes32\"}],\"name\":\"transferIssuedBalance\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"subtractedValue\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"recipient\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isPaused\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getSupportedTokens\",\"outputs\":[{\"components\":[{\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"name\":\"tokenAddress\",\"type\":\"address\"}],\"name\":\"\",\"type\":\"tuple[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"amount\",\"type\":\"uint256\"},{\"name\":\"redeemer\",\"type\":\"address\"},{\"name\":\"currency\",\"type\":\"bytes32\"},{\"name\":\"balance\",\"type\":\"uint256\"},{\"name\":\"_hashedMessage\",\"type\":\"bytes32\"},{\"name\":\"_v\",\"type\":\"uint8\"},{\"name\":\"_r\",\"type\":\"bytes32\"},{\"name\":\"_s\",\"type\":\"bytes32\"}],\"name\":\"redeemDeposits\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"balance\",\"type\":\"uint256\"},{\"name\":\"buyer\",\"type\":\"address\"},{\"name\":\"currency\",\"type\":\"bytes32\"},{\"name\":\"_hashedMessage\",\"type\":\"bytes32\"},{\"name\":\"_v\",\"type\":\"uint8\"},{\"name\":\"_r\",\"type\":\"bytes32\"},{\"name\":\"_s\",\"type\":\"bytes32\"}],\"name\":\"addIssuedBalance\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"party\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CashIssueRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"redeemer\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CashRedeemed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"transferor\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"transferee\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CashTransfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"party\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CashIssued\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"party\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"addedL2Balance\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"transferor\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"transferee\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"currency\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferredL2Balance\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Paused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Unpaused\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{\"allowance(address,address)\":{\"details\":\"See {IERC20-allowance}.\"},\"approve(address,uint256)\":{\"details\":\"See {IERC20-approve}. * Requirements: * - `spender` cannot be the zero address.\"},\"balanceOf(address)\":{\"details\":\"See {IERC20-balanceOf}.\"},\"checkSupportForToken(address)\":{\"params\":{\"_token\":\"token that is supported for issuing cash tokens\\r\"}},\"decreaseAllowance(address,uint256)\":{\"details\":\"Atomically decreases the allowance granted to `spender` by the caller. * This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. * Emits an {Approval} event indicating the updated allowance. * Requirements: * - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`.\"},\"increaseAllowance(address,uint256)\":{\"details\":\"Atomically increases the allowance granted to `spender` by the caller. * This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. * Emits an {Approval} event indicating the updated allowance. * Requirements: * - `spender` cannot be the zero address.\"},\"initialize(address)\":{\"details\":\"Initializes the contract setting the deployer as the initial owner.\"},\"isOwner()\":{\"details\":\"Returns true if the caller is the current owner.\"},\"isPaused()\":{\"return\":\"True: contract is paused\\rFalse: contract is not paused\\r\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. * > Note: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"requestIssue(address,uint256,address)\":{\"params\":{\"_amount\":\"amount of token that is transferred from investor to this cash token issuing contract\\r\",\"_token\":\"address of token used by investor to buy the cash token\\r\"}},\"supportTokens(address,bytes32)\":{\"params\":{\"_name\":\"name of token supported\\r\",\"_token\":\"address of token supported\\r\"}},\"totalSupply()\":{\"details\":\"See {IERC20-totalSupply}.\"},\"transfer(address,uint256)\":{\"details\":\"See {IERC20-transfer}. * Requirements: * - `recipient` cannot be the zero address. - the caller must have a balance of at least `amount`.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}}},\"userdoc\":{\"methods\":{\"checkSupportForToken(address)\":{\"notice\":\"Checks if a specified token is supported for issuing Verified cash tokens\\r\"},\"getSupportedTokens()\":{\"notice\":\"Returns array of tokens supported\\r\"},\"isPaused()\":{\"notice\":\"returns whether or not the contract is paused\\r\"},\"requestIssue(address,uint256,address)\":{\"notice\":\"Used by external apps (eg, exchange, wallet) to buy Verified cash token \\r\"},\"supportTokens(address,bytes32)\":{\"notice\":\"Specifies list of supported tokens that can be deposited to issue Verified cash tokens\\r\"}}}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Cash.sol\":\"Cash\"},\"evmVersion\":\"petersburg\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-ethereum-package/contracts/GSN/Context.sol\":{\"keccak256\":\"0x3491510fa4862af1a43f6c860d9cf7392240196540cd3c0eea79d374d419c5a1\",\"urls\":[\"bzzr://5cddbf3b74b775a8670757a6b8e108dac17dac20253f35f4c729e9cb6bea4ed3\"]},\"@openzeppelin/contracts-ethereum-package/contracts/math/SafeMath.sol\":{\"keccak256\":\"0x640b6dee7a4b830bdfd52b5031a07fc2b12209f5b2e29e5d364a7d37f69d8076\",\"urls\":[\"bzzr://292843005e754e752644f767477ec5ad7a1ffc91ddb18c38b8079c62f3993cad\"]},\"@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol\":{\"keccak256\":\"0xd7e8ab76fa35c4d8d35a06a6ed538cadab8b75a1aa00594ced1568b2c0cadde3\",\"urls\":[\"bzzr://b4c855b32d75f2a4969bfbd530b6934b69f12f28584b3746967e1ca64e024bd9\"]},\"@openzeppelin/contracts-ethereum-package/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0x2a474399663812668bb8e9c9e7d011d54fd09de386bd6e9fcb2407a677ebd1aa\",\"urls\":[\"bzzr://3d70561b32ba1494d2b2df362e92dff5ab869d27e2fe35cf9bf3a8ae137cffd3\"]},\"@openzeppelin/contracts-ethereum-package/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xe5bb0f57cff3e299f360052ba50f1ea0fff046df2be070b6943e0e3c3fdad8a9\",\"urls\":[\"bzzr://cf2d583b8dce38d0617fdcd65f2fd9f126fe17b7f683b5a515ea9d2762d8b062\"]},\"@openzeppelin/upgrades/contracts/Initializable.sol\":{\"keccak256\":\"0x9bfec92e36234ecc99b5d37230acb6cd1f99560233753162204104a4897e8721\",\"urls\":[\"bzzr://f75d88b16fe25a9e19b3512691c496e2bb6d8451bc9a636196c4e17ca9b40201\"]},\"abdk-libraries-solidity/ABDKMathQuad.sol\":{\"keccak256\":\"0x0ae8a1dd1dce31cc6b46fa58d6a4b72353ece1c96a8497aa0d494797dc94bc36\",\"urls\":[\"bzzr://d29078c35091aee1858898e0e6f1572ab214634d82bee162efbb90b32a9a66cb\"]},\"project:/contracts/Cash.sol\":{\"keccak256\":\"0xc3f25067d7f8ab73b1f56fcd75b0e81e29a410332a96ff429492a3b2ce0dac3c\",\"urls\":[\"bzzr://410a854456ba1dc4d779584014564f2005e0dd62f13802a6f5433e758ba7b751\"]},\"project:/contracts/interfaces/IBond.sol\":{\"keccak256\":\"0x865b390946b6faa66ff8f3434fe714b2f081926b1e826ce1494c2b2df949d669\",\"urls\":[\"bzzr://6fd782eda38cbf7c968a841a9a4af9a6cbbf01fe19a8f04053fd7c3b9d8214f1\"]},\"project:/contracts/interfaces/ICash.sol\":{\"keccak256\":\"0x4c8c69f2cc22854e02ffb710d74a3e461e02c1862040d6d2cfe545e79d265330\",\"urls\":[\"bzzr://66a9e619781b6f2725348ccfb821899825b0d4099f35f7ec3b6887e0f92b1631\"]},\"project:/contracts/interfaces/IFactory.sol\":{\"keccak256\":\"0x8d8fb8720c666398bc8ee506afdccdc73942f19207639a03c9f20e28c7ab220b\",\"urls\":[\"bzzr://59f99f7e0ca0a864ed176c45a7e932093dd18c694a9ef0bc75eb5c8a07b97c4a\"]},\"project:/contracts/interfaces/IRates.sol\":{\"keccak256\":\"0xc32e70549fdb4e147901361b00ddc891db5d811cdea0db365695ab52106ff6fb\",\"urls\":[\"bzzr://3dd800321631ec5f22fbe955f807762ee0537e2ec8f37f27ecede1e9a333d39f\"]},\"project:/contracts/utilities/Pausable.sol\":{\"keccak256\":\"0x96eceae12582eec38cc9706095b6f7d038b00dc36d98a02d234e7051b42a2a6a\",\"urls\":[\"bzzr://e5e1adfa3d22d6769d754f3f7f74eb1b12f5327b56b49584d34490b9d747d9b3\"]},\"project:/contracts/utilities/StringUtils.sol\":{\"keccak256\":\"0x18f1be0daaca27eba3c56a0da1613331cd1a37eab4970307909d8be77d6fc34e\",\"urls\":[\"bzzr://e3b548071313cf6f3cdaf33069f4648feadeb37fb33c75fe6fd40e8310f8ff7c\"]}},\"version\":1}",
|
|
831
|
+
"bytecode": "0x6080604052614c2c806100136000396000f3fe6080604052600436106101c25760003560e01c806380726e14116100f7578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e14610554578063eace6d3b14610574578063ee8edd5614610594578063f2fde38b146105b4576101c2565b8063a9059cbb146104dd578063b187bd26146104fd578063c4d66de814610512578063d3c7c2c714610532576101c2565b80638f32d59b116100d15780638f32d59b1461047357806395d89b4114610488578063a0213ff11461049d578063a457c2d7146104bd576101c2565b806380726e141461041c5780638456cb591461043c5780638da5cb5b14610451576101c2565b80633f4ba83a116101645780635d4f5b1c1161013e5780635d4f5b1c146103a75780636c19e783146103c757806370a08231146103e7578063715018a614610407576101c2565b80633f4ba83a1461035257806346499770146103675780634ba3f98814610387576101c2565b806318160ddd116101a057806318160ddd146102db57806323b872dd146102f05780632ceafc27146103105780633950935114610332576101c2565b806306fdde0314610261578063095ea7b31461028c5780630bc4b81a146102b9575b346101cc57600080fd5b36156101d757600080fd5b609b5460ff16156101e757600080fd5b33600090815260a160209081526040808320600160d91b6432ba3432b90284529091529020546102229060801b61021d346105d4565b61063a565b33600090815260a160209081526040808320600160d91b6432ba3432b9028452909152902080546001600160801b03191660809290921c919091179055005b34801561026d57600080fd5b50610276610a40565b60405161028391906149b5565b60405180910390f35b34801561029857600080fd5b506102ac6102a7366004614096565b610ace565b6040516102839190614906565b3480156102c557600080fd5b506102ce610aeb565b6040516102839190614914565b3480156102e757600080fd5b506102ce610af1565b3480156102fc57600080fd5b506102ac61030b366004614049565b610af8565b34801561031c57600080fd5b5061033061032b366004614096565b610cef565b005b34801561033e57600080fd5b506102ac61034d366004614096565b610def565b34801561035e57600080fd5b50610330610e48565b34801561037357600080fd5b50610330610382366004614240565b610e79565b34801561039357600080fd5b506103306103a2366004614176565b61104c565b3480156103b357600080fd5b506102ac6103c2366004613fd3565b611383565b3480156103d357600080fd5b506103306103e2366004613fd3565b6113b1565b3480156103f357600080fd5b506102ce610402366004613fd3565b611400565b34801561041357600080fd5b5061033061141b565b34801561042857600080fd5b506103306104373660046141b9565b61148c565b34801561044857600080fd5b50610330611666565b34801561045d57600080fd5b50610466611695565b6040516102839190614889565b34801561047f57600080fd5b506102ac6116a4565b34801561049457600080fd5b506102766116ca565b3480156104a957600080fd5b506103306104b83660046140c6565b611725565b3480156104c957600080fd5b506102ac6104d8366004614096565b6119f1565b3480156104e957600080fd5b506102ac6104f8366004614096565b611a5f565b34801561050957600080fd5b506102ac611a73565b34801561051e57600080fd5b5061033061052d366004613fd3565b611a7c565b34801561053e57600080fd5b50610547611b51565b60405161028391906148f5565b34801561056057600080fd5b506102ce61056f36600461400f565b611bc6565b34801561058057600080fd5b5061033061058f366004614386565b611bf1565b3480156105a057600080fd5b506103306105af3660046142ea565b611f5f565b3480156105c057600080fd5b506103306105cf366004613fd3565b61219b565b6000816105e357506000610635565b8160006105ef826121ce565b90506070811015610608578060700382901b915061061b565b607081111561061b576070810382901c91505b613fff0160701b6001600160701b03919091161760801b90505b919050565b6000617fff6001600160801b03608085811c8216607090811c8416939186901c90921690911c8116908214156106b05780617fff14156106a6576001600160801b03198581169085161415610693578492505050610a3a565b50600160ef1b61ffff029150610a3a9050565b8492505050610a3a565b80617fff14156106c4578392505050610a3a565b6001607f1b608086901c6001600160801b0381169190911015906001600160701b0316836106f557600193506106fc565b600160701b175b6001607f1b608087901c6001600160801b0381169190911015906001600160701b03168461072d5760019450610734565b600160701b175b82610764576001600160801b03198816600160ff1b146107545787610757565b60005b9650505050505050610a3a565b80610784576001600160801b03198916600160ff1b146107545788610757565b84860384151583151514156108925760708113156107ab5789975050505050505050610a3a565b60008113156107bd5790811c906107ec565b606f198112156107d65788975050505050505050610a3a565b60008112156107ec578060000384901c93508596505b92810192600160711b8410610807576001968701969390931c925b86617fff141561083c578461082457600160f01b617fff0261082e565b6001600160f01b03195b975050505050505050610a3a565b600160701b841015610851576000965061085e565b6001600160701b03841693505b83607088901b86610870576000610876565b6001607f1b5b6001600160801b0316171760801b975050505050505050610a3a565b60008113156108ad57600184901b93506001870396506108c4565b60008112156108c457600182901b91506001860396505b60708113156108d65760019150610923565b60018113156108f3576001810360018303901c6001019150610923565b606f198112156109065760019350610923565b600019811215610923576001816000030360018503901c60010193505b81841061093457818403935061093d565b83820393508294505b83610953575060009650610a3a95505050505050565b600061095e856121ce565b9050806071141561098457600185901c6001600160701b031694506001880197506109d3565b60708110156109c6576070819003808911156109b3578086901b6001600160701b0316955080890398506109c0565b600098600019019590951b945b506109d3565b6001600160701b03851694505b87617fff1415610a0957856109f057600160f01b617fff026109fa565b6001600160f01b03195b98505050505050505050610a3a565b84607089901b87610a1b576000610a21565b6001607f1b5b6001600160801b0316171760801b985050505050505050505b92915050565b609c805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610ac65780601f10610a9b57610100808354040283529160200191610ac6565b820191906000526020600020905b815481529060010190602001808311610aa957829003601f168201915b505050505081565b6000610ae2610adb612271565b8484612275565b50600192915050565b609e5481565b6035545b90565b609b5460009060ff1615610b0b57600080fd5b6000610b2f610b21610b1c87611400565b6105d4565b610b2a856105d4565b61232f565b60000b1215610b3d57600080fd5b6001600160a01b038316301415610b8357610b6e610b5a836105d4565b85600160d01b6572656465656d0230612478565b15610b7b57506001610ce8565b506000610ce8565b609f54604051600160e01b63f429f19b0281526001600160a01b039091169063f429f19b90610bb6908690600401614889565b60206040518083038186803b158015610bce57600080fd5b505afa158015610be2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610c069190810190614222565b600160cb1b660acd2c286c2e6d021480610cae5750609f54604051600160e01b63f429f19b0281526001600160a01b039091169063f429f19b90610c4e908690600401614889565b60206040518083038186803b158015610c6657600080fd5b505afa158015610c7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610c9e9190810190614222565b600160ca1b66159a58509bdb9902145b15610cc657610cbe84848461327e565b506001610ce8565b610b6e610cd2836105d4565b85600160c11b673a3930b739b332b90286612478565b9392505050565b610cf76116a4565b610d1f57604051600160e51b62461bcd028152600401610d1690614a4a565b60405180910390fd5b6001600160a01b038216600090815260a46020526040902054610deb57610d44613e88565b506040805180820182528281526001600160a01b03848116602080840182815260a38054600181018255600082815296517f60859188cffe297f44dde29f2d2865634621f26215049caeb304ccba566a8b1760029092029182015591517f60859188cffe297f44dde29f2d2865634621f26215049caeb304ccba566a8b1890920180546001600160a01b0319169290951691909117909355915490835260a4909152919020555b5050565b6000610ae2610dfc612271565b84610e438560346000610e0d612271565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff61339a16565b612275565b610e506116a4565b610e6f57604051600160e51b62461bcd028152600401610d1690614a4a565b610e776133c2565b565b600054610100900460ff1680610e925750610e926133f7565b80610ea0575060005460ff16155b610ebf57604051600160e51b62461bcd028152600401610d1690614a5a565b600054610100900460ff16158015610eea576000805460ff1961ff0019909116610100171660011790555b610ef384611a7c565b609f80546001600160a01b03191633179055604051610f1690879060200161485d565b604051602081830303815290604052609c9080519060200190610f3a929190613e9f565b50604051600160e01b63f921e64702815273__stringutils___________________________9063f921e64790610f7b908990600090600590600401614922565b60006040518083038186803b158015610f9357600080fd5b505af4158015610fa7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fcf91908101906142b5565b8051610fe391609d91602090910190613e9f565b50609e85905560a080546001600160a01b0319166001600160a01b0385811691909117909155609b8054610100600160a81b0319166101009285169290920291909117600160a81b60ff02191690558015611044576000805461ff00191690555b505050505050565b609b5460ff161561107257604051600160e51b62461bcd028152600401610d1690614a3a565b6001600160a01b038316600090815260a4602052604081205415611094575060015b801561121e576110a5333085612275565b6001600160a01b038416600090815260a4602052604081205460a380549091600019019081106110d157fe5b9060005260206000209060020201600001549050846001600160a01b03166323b872dd3330876040518463ffffffff1660e01b815260040161111593929190614897565b602060405180830381600087803b15801561112f57600080fd5b505af1158015611143573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506111679190810190614204565b15611218576001600160a01b038316600090815260a2602090815260408083208484529091529020546111a09060801b61021d866105d4565b6001600160a01b038416600081815260a2602090815260408083208684529091529081902080546001600160801b03191660809490941c9390931790925590517fe2ac3a086131f5c7b3a741ffad3af27c104ddc624ae2b853152c00c64bcbcf039061120f9084908890614969565b60405180910390a25b5061137d565b33600090815260a160209081526040808320600160d91b6432ba3432b90284529091528120546112549060801b610b2a866105d4565b60000b1261137d5733600090815260a160209081526040808320600160d91b6432ba3432b90284529091529020546112979060801b611292856105d4565b6133fd565b33600090815260a160209081526040808320600160d91b6432ba3432b90280855290835281842080546001600160801b031916608096871c1790556001600160a01b038716845260a283528184209084529091529020546112fc911b61021d856105d4565b6001600160a01b038316600081815260a260209081526040808320600160d91b6432ba3432b90284529091529081902080546001600160801b03191660809490941c9390931790925590517fe2ac3a086131f5c7b3a741ffad3af27c104ddc624ae2b853152c00c64bcbcf03906113749086906149d6565b60405180910390a25b50505050565b6001600160a01b038116600090815260a46020526040812054156113a957506001610635565b506000610635565b6113b96116a4565b6113d857604051600160e51b62461bcd028152600401610d1690614a4a565b609b80546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b031660009081526033602052604090205490565b6114236116a4565b61144257604051600160e51b62461bcd028152600401610d1690614a4a565b6068546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606880546001600160a01b0319169055565b60008460405160200161149f919061494a565b6040516020818303038152906040528051906020012090506000816040516020016114ca9190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b0316600182878787604051600081526020016040526040516115249493929190614977565b6020604051602081039080840390855afa158015611546573d6000803e3d6000fd5b505050602060405103516001600160a01b03161461156357600080fd5b6001600160a01b038a16600090815260a2602090815260408083208a84529091528120546115a29061159b9060801b6112928d6105d4565b600061232f565b60000b1261165a576001600160a01b038a16600090815260a2602090815260408083208a84529091529020546115de9060801b6112928b6105d4565b506001600160a01b038816600090815260a2602090815260408083208a84529091529020546116139060801b61021d8b6105d4565b50896001600160a01b03167fff1247709775171c6ced2a84a8776135fbf147b71843e06d083855dce5250dd689898c604051611651939291906148bf565b60405180910390a25b50505050505050505050565b61166e6116a4565b61168d57604051600160e51b62461bcd028152600401610d1690614a4a565b610e7761340f565b6068546001600160a01b031690565b6068546000906001600160a01b03166116bb612271565b6001600160a01b031614905090565b609d805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610ac65780601f10610a9b57610100808354040283529160200191610ac6565b600084604051602001611738919061494a565b6040516020818303038152906040528051906020012090506000816040516020016117639190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b0316600182878787604051600081526020016040526040516117bd9493929190614977565b6020604051602081039080840390855afa1580156117df573d6000803e3d6000fd5b505050602060405103516001600160a01b0316146117fc57600080fd5b6001600160a01b038a16600090815260a2602090815260408083208c84529091529020546118309060801b611292896105d4565b6001600160a01b038b16600081815260a2602090815260408083208e8452825280832080546001600160801b031916608096871c17905592825260a181528282208d835290522054611886911b61021d896105d4565b6001600160a01b038b16600090815260a1602090815260408083208d8452909152902080546001600160801b03191660809290921c9190911790556118cb3089613447565b6118d6308b8a61327e565b6001600160a01b038a16600090815260a2602090815260408083208c845290915290205461191190600160801b900460801b6112928a6105d4565b6001600160a01b038b16600081815260a2602090815260408083208e8452825280832080546001600160801b0316600160801b608097881c81029190911790915593835260a182528083208e845290915290205461197792919004901b61021d8a6105d4565b6001600160a01b038b16600081815260a1602090815260408083208e845290915290819020805460809490941c600160801b026001600160801b0390941693909317909255609e54915190917fc49566a7c5334ea8858c89b2e78ca7b7bcba63008800b945859eded70040a8329161165191908c90614969565b6000610ae26119fe612271565b84610e4385604051806060016040528060258152602001614bce6025913960346000611a28612271565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff61350a16565b6000610ae2611a6c612271565b848461327e565b609b5460ff1690565b600054610100900460ff1680611a955750611a956133f7565b80611aa3575060005460ff16155b611ac257604051600160e51b62461bcd028152600401610d1690614a5a565b600054610100900460ff16158015611aed576000805460ff1961ff0019909116610100171660011790555b606880546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015610deb576000805461ff00191690555050565b606060a3805480602002602001604051908101604052809291908181526020016000905b82821015611bbd5760008481526020908190206040805180820190915260028502909101805482526001908101546001600160a01b0316828401529083529092019101611b75565b50505050905090565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b600084604051602001611c04919061494a565b604051602081830303815290604052805190602001209050600081604051602001611c2f9190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b031660018287878760405160008152602001604052604051611c899493929190614977565b6020604051602081039080840390855afa158015611cab573d6000803e3d6000fd5b505050602060405103516001600160a01b031614611cc857600080fd5b611cd1876105d4565b6001600160a01b038a16600090815260a2602090815260408083208c84529091529020805460809290921c600160801b026001600160801b03909216919091179055600160d91b6432ba3432b902881415611dd1576040516001600160a01b038a16908b156108fc02908c906000818181858888f19350505050158015611d5c573d6000803e3d6000fd5b506001600160a01b038916600090815260a2602090815260408083208b8452909152902054611d919060801b6112928c6105d4565b6001600160a01b038a16600090815260a2602090815260408083208c8452909152902080546001600160801b03191660809290921c919091179055611f24565b60005b60a354811015611f22578860a38281548110611dec57fe5b9060005260206000209060020201600001541415611f1a5760a38181548110611e1157fe5b6000918252602090912060016002909202010154604051600160e01b63a9059cbb0281526001600160a01b039091169063a9059cbb90611e57908d908f906004016148da565b602060405180830381600087803b158015611e7157600080fd5b505af1158015611e85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250611ea99190810190614204565b506001600160a01b038a16600090815260a2602090815260408083208c8452909152902054611ede9060801b6112928d6105d4565b6001600160a01b038b16600090815260a2602090815260408083208d8452909152902080546001600160801b03191660809290921c9190911790555b600101611dd4565b505b886001600160a01b03167fc3cc9f7dc78b4765f7ece03d1970d655883f54b5927067c97cded09fa91915b1898c604051611651929190614969565b600084604051602001611f72919061494a565b604051602081830303815290604052805190602001209050600081604051602001611f9d9190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b031660018287878760405160008152602001604052604051611ff79493929190614977565b6020604051602081039080840390855afa158015612019573d6000803e3d6000fd5b505050602060405103516001600160a01b03161461203657600080fd5b609f54604051600160e01b632ea7791702815230916001600160a01b031690632ea7791790612069908b90600401614a20565b60206040518083038186803b15801561208157600080fd5b505afa158015612095573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506120b99190810190613ff1565b6001600160a01b03161415612190576001600160a01b038816600081815260a2602090815260408083208b84529091529020547f210f33c455d7281801a9d50a1a61a0cd090cda687918f934a3d95784440ca2c290899061212e908d9061212990600160801b900460801b613539565b6135d1565b60405161213c929190614969565b60405180910390a261214d896105d4565b6001600160a01b038916600090815260a2602090815260408083208b84529091529020805460809290921c600160801b026001600160801b039092169190911790555b505050505050505050565b6121a36116a4565b6121c257604051600160e51b62461bcd028152600401610d1690614a4a565b6121cb81613613565b50565b60008082116121dc57600080fd5b6000600160801b83106121f157608092831c92015b68010000000000000000831061220957604092831c92015b640100000000831061221d57602092831c92015b62010000831061222f57601092831c92015b610100831061224057600892831c92015b6010831061225057600492831c92015b6004831061226057600292831c92015b60028310610a3a5760010192915050565b3390565b6001600160a01b03831661229e57604051600160e51b62461bcd028152600401610d1690614a8a565b6001600160a01b0382166122c757604051600160e51b62461bcd028152600401610d1690614a00565b6001600160a01b0380841660008181526034602090815260408083209487168084529490915290819020849055517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590612322908590614914565b60405180910390a3505050565b600060016001607f1b03608084901c16600160701b617fff0281111561235457600080fd5b60016001607f1b03608084901c16600160701b617fff0281111561237757600080fd5b6001600160801b03198581169085161415806123a35750600160701b617fff02826001600160801b0316105b6123ac57600080fd5b6001600160801b031985811690851614156123cc57600092505050610a3a565b60006001607f1b8660801c6001600160801b03161015905060006001607f1b8660801c6001600160801b031610159050811561243757801561242857826001600160801b0316846001600160801b03161161242857600161242c565b6000195b945050505050610a3a565b801561244a576001945050505050610a3a565b826001600160801b0316846001600160801b03161161246b5760001961242c565b6001945050505050610a3a565b600080805b60a354811080156124965750600061249488613539565b115b15613272576001600160a01b038616600090815260a16020526040812060a380546124f992918491869081106124c857fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b8961232f565b60000b12612bbd5760006125c061256e8960a160008b6001600160a01b03166001600160a01b03168152602001908152602001600020600060a3878154811061253e57fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b613698565b6001600160a01b038916600090815260a16020526040812060a380549192918790811061259757fe5b60009182526020808320600290920290910154835282019290925260400190205460801b61395e565b905061262360a16000896001600160a01b03166001600160a01b03168152602001908152602001600020600060a385815481106125f957fe5b60009182526020808320600290920290910154835282019290925260400190205460801b826133fd565b6001600160a01b038816600090815260a16020526040812060a380549192918690811061264c57fe5b906000526020600020906002020160000154815260200190815260200160002060000160006101000a8154816001600160801b03021916908360801c02179055506126f560a16000896001600160a01b03166001600160a01b03168152602001908152602001600020600060a385815481106126c457fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b896133fd565b6001600160a01b038816600090815260a16020526040812060a380549192918690811061271e57fe5b6000918252602080832060029092029091015483528201929092526040019020805460809290921c600160801b026001600160801b03909216919091179055609b5460ff600160a81b909104161561277557600080fd5b609b8054600160a81b60ff021916600160a81b179055600160d01b6572656465656d0286141561293e576127b1876127ac8a613539565b613bc5565b60a382815481106127be57fe5b906000526020600020906002020160000154600160d91b6432ba3432b902141561282657866001600160a01b03166108fc6127f883613539565b6040518115909202916000818181858888f19350505050158015612820573d6000803e3d6000fd5b506128d0565b60a3828154811061283357fe5b60009182526020909120600160029092020101546001600160a01b031663a9059cbb8861285f84613539565b6040518363ffffffff1660e01b815260040161287c9291906148da565b602060405180830381600087803b15801561289657600080fd5b505af11580156128aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506128ce9190810190614204565b505b866001600160a01b03167fc3cc9f7dc78b4765f7ece03d1970d655883f54b5927067c97cded09fa91915b160a3848154811061290857fe5b90600052602060002090600202016000015461292384613539565b604051612931929190614969565b60405180910390a2612b9f565b85600160c11b673a3930b739b332b9021415612b9f5761297d888260a3858154811061296657fe5b906000526020600020906002020160000154613c9e565b909850905061298f876127ac8a613539565b6129a18561299c8a613539565b613447565b6001600160a01b038516600090815260a16020526040812060a380546129f7939190869081106129cd57fe5b60009182526020808320600290920290910154835282019290925260400190205460801b8261063a565b6001600160a01b038616600090815260a16020526040812060a3805491929186908110612a2057fe5b906000526020600020906002020160000154815260200190815260200160002060000160006101000a8154816001600160801b03021916908360801c0217905550612ac960a16000876001600160a01b03166001600160a01b03168152602001908152602001600020600060a38581548110612a9857fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b8961063a565b6001600160a01b038616600090815260a16020526040812060a3805491929186908110612af257fe5b906000526020600020906002020160000154815260200190815260200160002060000160106101000a8154816001600160801b03021916908360801c0217905550866001600160a01b03167f952d4864a5fc6f5a60dff7f24a4cc96e6ec94f1b5c343ed13fb6cb321c771b858660a38581548110612b6c57fe5b906000526020600020906002020160000154612b878c613539565b604051612b96939291906148bf565b60405180910390a25b50609b8054600160a81b60ff0219169055600096506001915061326a565b6001600160a01b038616600090815260a16020526040812060a38054612c1b9291849186908110612bea57fe5b600091825260208083206002909202909101548352820192909252604001812054600160801b900460801b9061232f565b60000b131561326a57609b54600160a81b900460ff1615612c3b57600080fd5b609b8054600160a81b60ff021916600160a81b179055600160d01b6572656465656d02851415612eba57612cd0866127ac60a160008a6001600160a01b03166001600160a01b03168152602001908152602001600020600060a38681548110612ca057fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b613539565b6001600160a01b038616600090815260a16020526040812060a3805483919085908110612cf957fe5b906000526020600020906002020160000154815260200190815260200160002060000160009054906101000a900460801b905060a38281548110612d3957fe5b906000526020600020906002020160000154600160d91b6432ba3432b9021415612da157866001600160a01b03166108fc612d7383613539565b6040518115909202916000818181858888f19350505050158015612d9b573d6000803e3d6000fd5b50612e4b565b60a38281548110612dae57fe5b60009182526020909120600160029092020101546001600160a01b031663a9059cbb88612dda84613539565b6040518363ffffffff1660e01b8152600401612df79291906148da565b602060405180830381600087803b158015612e1157600080fd5b505af1158015612e25573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250612e499190810190614204565b505b866001600160a01b03167fc3cc9f7dc78b4765f7ece03d1970d655883f54b5927067c97cded09fa91915b160a38481548110612e8357fe5b906000526020600020906002020160000154612e9e84613539565b604051612eac929190614969565b60405180910390a2506131a1565b84600160c11b673a3930b739b332b90214156131a157600080612fad60a160008a6001600160a01b03166001600160a01b03168152602001908152602001600020600060a38681548110612f0a57fe5b906000526020600020906002020160000154815260200190815260200160002060000160109054906101000a900460801b60a160008b6001600160a01b03166001600160a01b03168152602001908152602001600020600060a38781548110612f6f57fe5b906000526020600020906002020160000154815260200190815260200160002060000160009054906101000a900460801b60a3868154811061296657fe5b91509150612fbe886127ac84613539565b612fcb8661299c84613539565b6001600160a01b038616600090815260a16020526040812060a38054612ff7939190879081106129cd57fe5b6001600160a01b038716600090815260a16020526040812060a380549192918790811061302057fe5b906000526020600020906002020160000154815260200190815260200160002060000160006101000a8154816001600160801b03021916908360801c02179055506130c960a16000886001600160a01b03166001600160a01b03168152602001908152602001600020600060a3868154811061309857fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b8361063a565b6001600160a01b038716600090815260a16020526040812060a38054919291879081106130f257fe5b906000526020600020906002020160000154815260200190815260200160002060000160106101000a8154816001600160801b03021916908360801c0217905550876001600160a01b03167f952d4864a5fc6f5a60dff7f24a4cc96e6ec94f1b5c343ed13fb6cb321c771b858760a3868154811061316c57fe5b90600052602060002090600202016000015461318786613539565b604051613196939291906148bf565b60405180910390a250505b6132098760a16000896001600160a01b03166001600160a01b03168152602001908152602001600020600060a385815481106131d957fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b6133fd565b6001600160a01b038716600090815260a16020526040812060a38054939a5090928490811061323457fe5b600091825260208083206002909202909101548352820192909252604001812055609b8054600160a81b60ff0219169055600191505b60010161247d565b5090505b949350505050565b6001600160a01b0383166132a757604051600160e51b62461bcd028152600401610d1690614a7a565b6001600160a01b0382166132d057604051600160e51b62461bcd028152600401610d16906149c6565b61331381604051806060016040528060268152602001614ba8602691396001600160a01b038616600090815260336020526040902054919063ffffffff61350a16565b6001600160a01b038085166000908152603360205260408082209390935590841681522054613348908263ffffffff61339a16565b6001600160a01b0380841660008181526033602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90612322908590614914565b600082820183811015610ce857604051600160e51b62461bcd028152600401610d1690614a10565b609b805460ff191690556040517fa45f47fdea8a1efdd9029a5691c7f759c32b7c698632b563573e155625d1693390600090a1565b303b1590565b6000610ce883600160ff1b841861063a565b609b805460ff191660011790556040517f9e87fac88ff661f02d44f95383c817fece4bce600a3dab7a54406878b965e75290600090a1565b6001600160a01b03821661347057604051600160e51b62461bcd028152600401610d1690614a9a565b603554613483908263ffffffff61339a16565b6035556001600160a01b0382166000908152603360205260409020546134af908263ffffffff61339a16565b6001600160a01b0383166000818152603360205260408082209390935591519091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906134fe908590614914565b60405180910390a35050565b6000818484111561353157604051600160e51b62461bcd028152600401610d1691906149b5565b505050900390565b6000617fff6001600160801b03608084901c1660701c16613fff811015613564576000915050610635565b6001607f1b8360801c6001600160801b03161061358057600080fd5b6140fe81111561358f57600080fd5b600160701b6001600160701b03608085901c161761406f8210156135b95761406f8290031c610ce8565b61406f821115610ce85761406e1982011b9392505050565b6000610ce883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061350a565b6001600160a01b03811661363c57604051600160e51b62461bcd028152600401610d16906149f0565b6068546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606880546001600160a01b0319166001600160a01b0392909216919091179055565b6000617fff6001600160801b03608085811c8216607090811c8416939186901c90921690911c8116908214156136f65780617fff14156136e55750600160ef1b61ffff029150610a3a9050565b505050600160ff1b81168218610a3a565b80617fff141561373657600160801b600160f01b038416156137255750600160ef1b61ffff029150610a3a9050565b505050808218600160ff1b16610a3a565b600160801b600160ff1b03841661378657600160801b600160ff1b03851661376b5750600160ef1b61ffff029150610a3a9050565b505050808218600160ff1b16600160f01b617fff0217610a3a565b6001600160701b03608085901c16816137a257600191506137a9565b600160701b175b6001600160701b03608087901c16836137e85780156137e35760006137cd826121ce565b6001955060e20393840160711901939190911b90505b6137f2565b600160701b1760721b5b8181816137fb57fe5b0490508061382757600160ff1b8787181661381757600061242c565b600160ff1b945050505050610a3a565b6001606c1b81101561383557fe5b6000600160731b82101561387557600160721b82101561386a57600160711b821015613862576070613865565b60715b61386d565b60725b60ff1661387e565b61387e826121ce565b90508361407101818601111561389c57617fff94506000915061392f565b83818601613ffc0110156138b757600094506000915061392f565b83818601613f8c011015613904578385613ffc0111156138e2578385613ffc010382901b91506138fb565b8385613ffc0110156138fb57613ffc8585030382901c91505b6000945061392f565b6070811115613917576070810382901c91505b6001600160701b038216915083818601613f8d010394505b81607086901b888a186001607f1b60801b1660801c6001600160801b0316171760801b95505050505050610a3a565b6000617fff6001600160801b03608085811c8216607090811c8416939186901c90921690911c811690821415613a055780617fff14156139e1576001600160801b031985811690851614156139be57505050600160ff1b81168218610a3a565b600160ff1b6001600160801b031986861816141561069357505050818117610a3a565b600160801b600160ff1b0384166136e55750600160ef1b61ffff029150610a3a9050565b80617fff1415613a4457600160801b600160ff1b038516613a335750600160ef1b61ffff029150610a3a9050565b505050600160ff1b82168118610a3a565b6001600160701b03608086901c1682613a605760019250613a67565b600160701b175b6001600160701b03608086901c1682613a835760019250613a8a565b600160701b175b9081029081613aa757600160ff1b8787181661381757600061242c565b928201926000600160e11b831015613adb57600160e01b831015613ad357613ace836121ce565b613ad6565b60e05b613ade565b60e15b90506140708186011015613af9576000945060009250613b96565b6140e08186011015613b3c57614070851015613b1e57846140700383901c9250613b33565b614070851115613b3357614070850383901b92505b60009450613b96565b61c0dd8186011115613b5657617fff945060009250613b96565b6070811115613b6d576070810383901c9250613b80565b6070811015613b80578060700383901b92505b6001600160701b03831692506140df8186010394505b82607086901b888a186001607f1b60801b1660801c6001600160801b0316171760801b95505050505050610a3a565b6001600160a01b038216613bee57604051600160e51b62461bcd028152600401610d1690614a6a565b613c3181604051806060016040528060228152602001614b86602291396001600160a01b038516600090815260336020526040902054919063ffffffff61350a16565b6001600160a01b038316600090815260336020526040902055603554613c5d908263ffffffff6135d116565b6035556040516000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906134fe908590614914565b60a054604051600160e01b63e5f3d3a502815260009182918291613d2a916001600160a01b039091169063e5f3d3a590613cda90600401614a2d565b60206040518083038186803b158015613cf257600080fd5b505afa158015613d06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610b1c9190810190614222565b9050613d3781600061232f565b60000b60011415613e7e5760a05460408051600160e11b637a55098102815290516000926001600160a01b03169163f4aa1302916004808301926020929190829003018186803b158015613d8a57600080fd5b505afa158015613d9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250613dc29190810190613ff1565b90506001600160a01b03811615613e7c57613de9816104f8613de4858b61395e565b613539565b50613df887611292848a61395e565b6001600160a01b038216600090815260a160209081526040808320898452909152902054909750613e309060801b61021d848961395e565b6001600160a01b038216600090815260a160209081526040808320898452909152902080546001600160801b03191660809290921c919091179055613e7986611292848261395e565b95505b505b5093949293505050565b604080518082019091526000808252602082015290565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613ee057805160ff1916838001178555613f0d565b82800160010185558215613f0d579182015b82811115613f0d578251825591602001919060010190613ef2565b50613f19929150613f1d565b5090565b610af591905b80821115613f195760008155600101613f23565b6000610ce88235614b0c565b6000610ce88251614b0c565b6000610ce88251614b17565b6000610ce88235610af5565b6000610ce88251610af5565b600082601f830112613f8457600080fd5b8151613f97613f9282614ad1565b614aaa565b91508082526020830160208301858383011115613fb357600080fd5b613fbe838284614b4f565b50505092915050565b6000610ce88235614b28565b600060208284031215613fe557600080fd5b60006132768484613f37565b60006020828403121561400357600080fd5b60006132768484613f43565b6000806040838503121561402257600080fd5b600061402e8585613f37565b925050602061403f85828601613f37565b9150509250929050565b60008060006060848603121561405e57600080fd5b600061406a8686613f37565b935050602061407b86828701613f37565b925050604061408c86828701613f5b565b9150509250925092565b600080604083850312156140a957600080fd5b60006140b58585613f37565b925050602061403f85828601613f5b565b600080600080600080600080610100898b0312156140e357600080fd5b60006140ef8b8b613f37565b98505060206141008b828c01613f5b565b97505060406141118b828c01613f5b565b96505060606141228b828c01613f5b565b95505060806141338b828c01613f5b565b94505060a06141448b828c01613fc7565b93505060c06141558b828c01613f5b565b92505060e06141668b828c01613f5b565b9150509295985092959890939650565b60008060006060848603121561418b57600080fd5b60006141978686613f37565b93505060206141a886828701613f5b565b925050604061408c86828701613f37565b600080600080600080600080610100898b0312156141d657600080fd5b60006141e28b8b613f37565b98505060206141f38b828c01613f5b565b97505060406141118b828c01613f37565b60006020828403121561421657600080fd5b60006132768484613f4f565b60006020828403121561423457600080fd5b60006132768484613f67565b600080600080600060a0868803121561425857600080fd5b60006142648888613f5b565b955050602061427588828901613f5b565b945050604061428688828901613f37565b935050606061429788828901613f37565b92505060806142a888828901613f37565b9150509295509295909350565b6000602082840312156142c757600080fd5b815167ffffffffffffffff8111156142de57600080fd5b61327684828501613f73565b600080600080600080600060e0888a03121561430557600080fd5b60006143118a8a613f5b565b97505060206143228a828b01613f37565b96505060406143338a828b01613f5b565b95505060606143448a828b01613f5b565b94505060806143558a828b01613fc7565b93505060a06143668a828b01613f5b565b92505060c06143778a828b01613f5b565b91505092959891949750929550565b600080600080600080600080610100898b0312156143a357600080fd5b60006143af8b8b613f5b565b98505060206141008b828c01613f37565b60006143cc8383614830565b505060400190565b6143dd81614b2e565b82525050565b6143dd81614b0c565b60006143f782614aff565b6144018185614b03565b935061440c83614af9565b60005b82811015614437576144228683516143c0565b955061442d82614af9565b915060010161440f565b5093949350505050565b6143dd81614b17565b6143dd81610af5565b6143dd61445f82610af5565b610af5565b6143dd81614b39565b600061447882614aff565b6144828185614b03565b9350614492818560208601614b4f565b61449b81614b7b565b9093019392505050565b60006144b2602383614b03565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464728152600160e81b6265737302602082015260400192915050565b600160d91b6432ba3432b9029052565b600061450a601c83610635565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000614543602683614b03565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20618152600160d01b6564647265737302602082015260400192915050565b600061458e602283614b03565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472658152600160f01b61737302602082015260400192915050565b60006145d5601b83614b03565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000815260200192915050565b600160cb1b660acd2c286c2e6d029052565b600160b01b6972656d697474616e6365029052565b6000614635601883614b03565b7f436f6e747261637420696e207061757365642073746174650000000000000000815260200192915050565b600061466e602083614b03565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572815260200192915050565b60006146a7602e83614b03565b7f436f6e747261637420696e7374616e63652068617320616c726561647920626581527f656e20696e697469616c697a6564000000000000000000000000000000000000602082015260400192915050565b6000614706600683614b03565b600160d01b654c32746f4c3102815260200192915050565b600061472b602183614b03565b7f45524332303a206275726e2066726f6d20746865207a65726f206164647265738152600160f81b607302602082015260400192915050565b6000614771602583614b03565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061648152600160d81b64647265737302602082015260400192915050565b60006147bb602483614b03565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164648152600160e01b637265737302602082015260400192915050565b6000614804601f83614b03565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300815260200192915050565b80516040830190614841848261444a565b50602082015161137d60208501826143e3565b6143dd81614b28565b60006148698284614453565b50602001919050565b600061487d826144fd565b91506148698284614453565b60208101610a3a82846143e3565b606081016148a582866143d4565b6148b260208301856143d4565b613276604083018461444a565b606081016148cd82866143e3565b6148b2602083018561444a565b604081016148e882856143e3565b610ce8602083018461444a565b60208082528101610ce881846143ec565b60208101610a3a8284614441565b60208101610a3a828461444a565b60608101614930828661444a565b61493d6020830185614464565b6132766040830184614464565b60408101614958828461444a565b8181036020830152610ce8816146f9565b604081016148e8828561444a565b60808101614985828761444a565b6149926020830186614854565b61499f604083018561444a565b6149ac606083018461444a565b95945050505050565b60208082528101610ce8818461446d565b60208082528101610a3a816144a5565b604081016149e3826144ed565b610a3a602083018461444a565b60208082528101610a3a81614536565b60208082528101610a3a81614581565b60208082528101610a3a816145c8565b604081016149e382614601565b6020810161063582614613565b60208082528101610a3a81614628565b60208082528101610a3a81614661565b60208082528101610a3a8161469a565b60208082528101610a3a8161471e565b60208082528101610a3a81614764565b60208082528101610a3a816147ae565b60208082528101610a3a816147f7565b60405181810167ffffffffffffffff81118282101715614ac957600080fd5b604052919050565b600067ffffffffffffffff821115614ae857600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b6000610a3a82614b1c565b151590565b6001600160a01b031690565b60ff1690565b6000610a3a82614b44565b6000610a3a82610af5565b6000610a3a82614b0c565b60005b83811015614b6a578181015183820152602001614b52565b8381111561137d5750506000910152565b601f01601f19169056fe45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a723058202d05dcc90230b5b66b3bfead918b09b51fb0d7f9b9bd9736905addc987f12b846c6578706572696d656e74616cf50037",
|
|
832
|
+
"deployedBytecode": "0x6080604052600436106101c25760003560e01c806380726e14116100f7578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e14610554578063eace6d3b14610574578063ee8edd5614610594578063f2fde38b146105b4576101c2565b8063a9059cbb146104dd578063b187bd26146104fd578063c4d66de814610512578063d3c7c2c714610532576101c2565b80638f32d59b116100d15780638f32d59b1461047357806395d89b4114610488578063a0213ff11461049d578063a457c2d7146104bd576101c2565b806380726e141461041c5780638456cb591461043c5780638da5cb5b14610451576101c2565b80633f4ba83a116101645780635d4f5b1c1161013e5780635d4f5b1c146103a75780636c19e783146103c757806370a08231146103e7578063715018a614610407576101c2565b80633f4ba83a1461035257806346499770146103675780634ba3f98814610387576101c2565b806318160ddd116101a057806318160ddd146102db57806323b872dd146102f05780632ceafc27146103105780633950935114610332576101c2565b806306fdde0314610261578063095ea7b31461028c5780630bc4b81a146102b9575b346101cc57600080fd5b36156101d757600080fd5b609b5460ff16156101e757600080fd5b33600090815260a160209081526040808320600160d91b6432ba3432b90284529091529020546102229060801b61021d346105d4565b61063a565b33600090815260a160209081526040808320600160d91b6432ba3432b9028452909152902080546001600160801b03191660809290921c919091179055005b34801561026d57600080fd5b50610276610a40565b60405161028391906149b5565b60405180910390f35b34801561029857600080fd5b506102ac6102a7366004614096565b610ace565b6040516102839190614906565b3480156102c557600080fd5b506102ce610aeb565b6040516102839190614914565b3480156102e757600080fd5b506102ce610af1565b3480156102fc57600080fd5b506102ac61030b366004614049565b610af8565b34801561031c57600080fd5b5061033061032b366004614096565b610cef565b005b34801561033e57600080fd5b506102ac61034d366004614096565b610def565b34801561035e57600080fd5b50610330610e48565b34801561037357600080fd5b50610330610382366004614240565b610e79565b34801561039357600080fd5b506103306103a2366004614176565b61104c565b3480156103b357600080fd5b506102ac6103c2366004613fd3565b611383565b3480156103d357600080fd5b506103306103e2366004613fd3565b6113b1565b3480156103f357600080fd5b506102ce610402366004613fd3565b611400565b34801561041357600080fd5b5061033061141b565b34801561042857600080fd5b506103306104373660046141b9565b61148c565b34801561044857600080fd5b50610330611666565b34801561045d57600080fd5b50610466611695565b6040516102839190614889565b34801561047f57600080fd5b506102ac6116a4565b34801561049457600080fd5b506102766116ca565b3480156104a957600080fd5b506103306104b83660046140c6565b611725565b3480156104c957600080fd5b506102ac6104d8366004614096565b6119f1565b3480156104e957600080fd5b506102ac6104f8366004614096565b611a5f565b34801561050957600080fd5b506102ac611a73565b34801561051e57600080fd5b5061033061052d366004613fd3565b611a7c565b34801561053e57600080fd5b50610547611b51565b60405161028391906148f5565b34801561056057600080fd5b506102ce61056f36600461400f565b611bc6565b34801561058057600080fd5b5061033061058f366004614386565b611bf1565b3480156105a057600080fd5b506103306105af3660046142ea565b611f5f565b3480156105c057600080fd5b506103306105cf366004613fd3565b61219b565b6000816105e357506000610635565b8160006105ef826121ce565b90506070811015610608578060700382901b915061061b565b607081111561061b576070810382901c91505b613fff0160701b6001600160701b03919091161760801b90505b919050565b6000617fff6001600160801b03608085811c8216607090811c8416939186901c90921690911c8116908214156106b05780617fff14156106a6576001600160801b03198581169085161415610693578492505050610a3a565b50600160ef1b61ffff029150610a3a9050565b8492505050610a3a565b80617fff14156106c4578392505050610a3a565b6001607f1b608086901c6001600160801b0381169190911015906001600160701b0316836106f557600193506106fc565b600160701b175b6001607f1b608087901c6001600160801b0381169190911015906001600160701b03168461072d5760019450610734565b600160701b175b82610764576001600160801b03198816600160ff1b146107545787610757565b60005b9650505050505050610a3a565b80610784576001600160801b03198916600160ff1b146107545788610757565b84860384151583151514156108925760708113156107ab5789975050505050505050610a3a565b60008113156107bd5790811c906107ec565b606f198112156107d65788975050505050505050610a3a565b60008112156107ec578060000384901c93508596505b92810192600160711b8410610807576001968701969390931c925b86617fff141561083c578461082457600160f01b617fff0261082e565b6001600160f01b03195b975050505050505050610a3a565b600160701b841015610851576000965061085e565b6001600160701b03841693505b83607088901b86610870576000610876565b6001607f1b5b6001600160801b0316171760801b975050505050505050610a3a565b60008113156108ad57600184901b93506001870396506108c4565b60008112156108c457600182901b91506001860396505b60708113156108d65760019150610923565b60018113156108f3576001810360018303901c6001019150610923565b606f198112156109065760019350610923565b600019811215610923576001816000030360018503901c60010193505b81841061093457818403935061093d565b83820393508294505b83610953575060009650610a3a95505050505050565b600061095e856121ce565b9050806071141561098457600185901c6001600160701b031694506001880197506109d3565b60708110156109c6576070819003808911156109b3578086901b6001600160701b0316955080890398506109c0565b600098600019019590951b945b506109d3565b6001600160701b03851694505b87617fff1415610a0957856109f057600160f01b617fff026109fa565b6001600160f01b03195b98505050505050505050610a3a565b84607089901b87610a1b576000610a21565b6001607f1b5b6001600160801b0316171760801b985050505050505050505b92915050565b609c805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610ac65780601f10610a9b57610100808354040283529160200191610ac6565b820191906000526020600020905b815481529060010190602001808311610aa957829003601f168201915b505050505081565b6000610ae2610adb612271565b8484612275565b50600192915050565b609e5481565b6035545b90565b609b5460009060ff1615610b0b57600080fd5b6000610b2f610b21610b1c87611400565b6105d4565b610b2a856105d4565b61232f565b60000b1215610b3d57600080fd5b6001600160a01b038316301415610b8357610b6e610b5a836105d4565b85600160d01b6572656465656d0230612478565b15610b7b57506001610ce8565b506000610ce8565b609f54604051600160e01b63f429f19b0281526001600160a01b039091169063f429f19b90610bb6908690600401614889565b60206040518083038186803b158015610bce57600080fd5b505afa158015610be2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610c069190810190614222565b600160cb1b660acd2c286c2e6d021480610cae5750609f54604051600160e01b63f429f19b0281526001600160a01b039091169063f429f19b90610c4e908690600401614889565b60206040518083038186803b158015610c6657600080fd5b505afa158015610c7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610c9e9190810190614222565b600160ca1b66159a58509bdb9902145b15610cc657610cbe84848461327e565b506001610ce8565b610b6e610cd2836105d4565b85600160c11b673a3930b739b332b90286612478565b9392505050565b610cf76116a4565b610d1f57604051600160e51b62461bcd028152600401610d1690614a4a565b60405180910390fd5b6001600160a01b038216600090815260a46020526040902054610deb57610d44613e88565b506040805180820182528281526001600160a01b03848116602080840182815260a38054600181018255600082815296517f60859188cffe297f44dde29f2d2865634621f26215049caeb304ccba566a8b1760029092029182015591517f60859188cffe297f44dde29f2d2865634621f26215049caeb304ccba566a8b1890920180546001600160a01b0319169290951691909117909355915490835260a4909152919020555b5050565b6000610ae2610dfc612271565b84610e438560346000610e0d612271565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff61339a16565b612275565b610e506116a4565b610e6f57604051600160e51b62461bcd028152600401610d1690614a4a565b610e776133c2565b565b600054610100900460ff1680610e925750610e926133f7565b80610ea0575060005460ff16155b610ebf57604051600160e51b62461bcd028152600401610d1690614a5a565b600054610100900460ff16158015610eea576000805460ff1961ff0019909116610100171660011790555b610ef384611a7c565b609f80546001600160a01b03191633179055604051610f1690879060200161485d565b604051602081830303815290604052609c9080519060200190610f3a929190613e9f565b50604051600160e01b63f921e64702815273__stringutils___________________________9063f921e64790610f7b908990600090600590600401614922565b60006040518083038186803b158015610f9357600080fd5b505af4158015610fa7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fcf91908101906142b5565b8051610fe391609d91602090910190613e9f565b50609e85905560a080546001600160a01b0319166001600160a01b0385811691909117909155609b8054610100600160a81b0319166101009285169290920291909117600160a81b60ff02191690558015611044576000805461ff00191690555b505050505050565b609b5460ff161561107257604051600160e51b62461bcd028152600401610d1690614a3a565b6001600160a01b038316600090815260a4602052604081205415611094575060015b801561121e576110a5333085612275565b6001600160a01b038416600090815260a4602052604081205460a380549091600019019081106110d157fe5b9060005260206000209060020201600001549050846001600160a01b03166323b872dd3330876040518463ffffffff1660e01b815260040161111593929190614897565b602060405180830381600087803b15801561112f57600080fd5b505af1158015611143573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506111679190810190614204565b15611218576001600160a01b038316600090815260a2602090815260408083208484529091529020546111a09060801b61021d866105d4565b6001600160a01b038416600081815260a2602090815260408083208684529091529081902080546001600160801b03191660809490941c9390931790925590517fe2ac3a086131f5c7b3a741ffad3af27c104ddc624ae2b853152c00c64bcbcf039061120f9084908890614969565b60405180910390a25b5061137d565b33600090815260a160209081526040808320600160d91b6432ba3432b90284529091528120546112549060801b610b2a866105d4565b60000b1261137d5733600090815260a160209081526040808320600160d91b6432ba3432b90284529091529020546112979060801b611292856105d4565b6133fd565b33600090815260a160209081526040808320600160d91b6432ba3432b90280855290835281842080546001600160801b031916608096871c1790556001600160a01b038716845260a283528184209084529091529020546112fc911b61021d856105d4565b6001600160a01b038316600081815260a260209081526040808320600160d91b6432ba3432b90284529091529081902080546001600160801b03191660809490941c9390931790925590517fe2ac3a086131f5c7b3a741ffad3af27c104ddc624ae2b853152c00c64bcbcf03906113749086906149d6565b60405180910390a25b50505050565b6001600160a01b038116600090815260a46020526040812054156113a957506001610635565b506000610635565b6113b96116a4565b6113d857604051600160e51b62461bcd028152600401610d1690614a4a565b609b80546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b031660009081526033602052604090205490565b6114236116a4565b61144257604051600160e51b62461bcd028152600401610d1690614a4a565b6068546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606880546001600160a01b0319169055565b60008460405160200161149f919061494a565b6040516020818303038152906040528051906020012090506000816040516020016114ca9190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b0316600182878787604051600081526020016040526040516115249493929190614977565b6020604051602081039080840390855afa158015611546573d6000803e3d6000fd5b505050602060405103516001600160a01b03161461156357600080fd5b6001600160a01b038a16600090815260a2602090815260408083208a84529091528120546115a29061159b9060801b6112928d6105d4565b600061232f565b60000b1261165a576001600160a01b038a16600090815260a2602090815260408083208a84529091529020546115de9060801b6112928b6105d4565b506001600160a01b038816600090815260a2602090815260408083208a84529091529020546116139060801b61021d8b6105d4565b50896001600160a01b03167fff1247709775171c6ced2a84a8776135fbf147b71843e06d083855dce5250dd689898c604051611651939291906148bf565b60405180910390a25b50505050505050505050565b61166e6116a4565b61168d57604051600160e51b62461bcd028152600401610d1690614a4a565b610e7761340f565b6068546001600160a01b031690565b6068546000906001600160a01b03166116bb612271565b6001600160a01b031614905090565b609d805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610ac65780601f10610a9b57610100808354040283529160200191610ac6565b600084604051602001611738919061494a565b6040516020818303038152906040528051906020012090506000816040516020016117639190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b0316600182878787604051600081526020016040526040516117bd9493929190614977565b6020604051602081039080840390855afa1580156117df573d6000803e3d6000fd5b505050602060405103516001600160a01b0316146117fc57600080fd5b6001600160a01b038a16600090815260a2602090815260408083208c84529091529020546118309060801b611292896105d4565b6001600160a01b038b16600081815260a2602090815260408083208e8452825280832080546001600160801b031916608096871c17905592825260a181528282208d835290522054611886911b61021d896105d4565b6001600160a01b038b16600090815260a1602090815260408083208d8452909152902080546001600160801b03191660809290921c9190911790556118cb3089613447565b6118d6308b8a61327e565b6001600160a01b038a16600090815260a2602090815260408083208c845290915290205461191190600160801b900460801b6112928a6105d4565b6001600160a01b038b16600081815260a2602090815260408083208e8452825280832080546001600160801b0316600160801b608097881c81029190911790915593835260a182528083208e845290915290205461197792919004901b61021d8a6105d4565b6001600160a01b038b16600081815260a1602090815260408083208e845290915290819020805460809490941c600160801b026001600160801b0390941693909317909255609e54915190917fc49566a7c5334ea8858c89b2e78ca7b7bcba63008800b945859eded70040a8329161165191908c90614969565b6000610ae26119fe612271565b84610e4385604051806060016040528060258152602001614bce6025913960346000611a28612271565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff61350a16565b6000610ae2611a6c612271565b848461327e565b609b5460ff1690565b600054610100900460ff1680611a955750611a956133f7565b80611aa3575060005460ff16155b611ac257604051600160e51b62461bcd028152600401610d1690614a5a565b600054610100900460ff16158015611aed576000805460ff1961ff0019909116610100171660011790555b606880546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015610deb576000805461ff00191690555050565b606060a3805480602002602001604051908101604052809291908181526020016000905b82821015611bbd5760008481526020908190206040805180820190915260028502909101805482526001908101546001600160a01b0316828401529083529092019101611b75565b50505050905090565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b600084604051602001611c04919061494a565b604051602081830303815290604052805190602001209050600081604051602001611c2f9190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b031660018287878760405160008152602001604052604051611c899493929190614977565b6020604051602081039080840390855afa158015611cab573d6000803e3d6000fd5b505050602060405103516001600160a01b031614611cc857600080fd5b611cd1876105d4565b6001600160a01b038a16600090815260a2602090815260408083208c84529091529020805460809290921c600160801b026001600160801b03909216919091179055600160d91b6432ba3432b902881415611dd1576040516001600160a01b038a16908b156108fc02908c906000818181858888f19350505050158015611d5c573d6000803e3d6000fd5b506001600160a01b038916600090815260a2602090815260408083208b8452909152902054611d919060801b6112928c6105d4565b6001600160a01b038a16600090815260a2602090815260408083208c8452909152902080546001600160801b03191660809290921c919091179055611f24565b60005b60a354811015611f22578860a38281548110611dec57fe5b9060005260206000209060020201600001541415611f1a5760a38181548110611e1157fe5b6000918252602090912060016002909202010154604051600160e01b63a9059cbb0281526001600160a01b039091169063a9059cbb90611e57908d908f906004016148da565b602060405180830381600087803b158015611e7157600080fd5b505af1158015611e85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250611ea99190810190614204565b506001600160a01b038a16600090815260a2602090815260408083208c8452909152902054611ede9060801b6112928d6105d4565b6001600160a01b038b16600090815260a2602090815260408083208d8452909152902080546001600160801b03191660809290921c9190911790555b600101611dd4565b505b886001600160a01b03167fc3cc9f7dc78b4765f7ece03d1970d655883f54b5927067c97cded09fa91915b1898c604051611651929190614969565b600084604051602001611f72919061494a565b604051602081830303815290604052805190602001209050600081604051602001611f9d9190614872565b604051602081830303815290604052805190602001209050609b60019054906101000a90046001600160a01b03166001600160a01b031660018287878760405160008152602001604052604051611ff79493929190614977565b6020604051602081039080840390855afa158015612019573d6000803e3d6000fd5b505050602060405103516001600160a01b03161461203657600080fd5b609f54604051600160e01b632ea7791702815230916001600160a01b031690632ea7791790612069908b90600401614a20565b60206040518083038186803b15801561208157600080fd5b505afa158015612095573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506120b99190810190613ff1565b6001600160a01b03161415612190576001600160a01b038816600081815260a2602090815260408083208b84529091529020547f210f33c455d7281801a9d50a1a61a0cd090cda687918f934a3d95784440ca2c290899061212e908d9061212990600160801b900460801b613539565b6135d1565b60405161213c929190614969565b60405180910390a261214d896105d4565b6001600160a01b038916600090815260a2602090815260408083208b84529091529020805460809290921c600160801b026001600160801b039092169190911790555b505050505050505050565b6121a36116a4565b6121c257604051600160e51b62461bcd028152600401610d1690614a4a565b6121cb81613613565b50565b60008082116121dc57600080fd5b6000600160801b83106121f157608092831c92015b68010000000000000000831061220957604092831c92015b640100000000831061221d57602092831c92015b62010000831061222f57601092831c92015b610100831061224057600892831c92015b6010831061225057600492831c92015b6004831061226057600292831c92015b60028310610a3a5760010192915050565b3390565b6001600160a01b03831661229e57604051600160e51b62461bcd028152600401610d1690614a8a565b6001600160a01b0382166122c757604051600160e51b62461bcd028152600401610d1690614a00565b6001600160a01b0380841660008181526034602090815260408083209487168084529490915290819020849055517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590612322908590614914565b60405180910390a3505050565b600060016001607f1b03608084901c16600160701b617fff0281111561235457600080fd5b60016001607f1b03608084901c16600160701b617fff0281111561237757600080fd5b6001600160801b03198581169085161415806123a35750600160701b617fff02826001600160801b0316105b6123ac57600080fd5b6001600160801b031985811690851614156123cc57600092505050610a3a565b60006001607f1b8660801c6001600160801b03161015905060006001607f1b8660801c6001600160801b031610159050811561243757801561242857826001600160801b0316846001600160801b03161161242857600161242c565b6000195b945050505050610a3a565b801561244a576001945050505050610a3a565b826001600160801b0316846001600160801b03161161246b5760001961242c565b6001945050505050610a3a565b600080805b60a354811080156124965750600061249488613539565b115b15613272576001600160a01b038616600090815260a16020526040812060a380546124f992918491869081106124c857fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b8961232f565b60000b12612bbd5760006125c061256e8960a160008b6001600160a01b03166001600160a01b03168152602001908152602001600020600060a3878154811061253e57fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b613698565b6001600160a01b038916600090815260a16020526040812060a380549192918790811061259757fe5b60009182526020808320600290920290910154835282019290925260400190205460801b61395e565b905061262360a16000896001600160a01b03166001600160a01b03168152602001908152602001600020600060a385815481106125f957fe5b60009182526020808320600290920290910154835282019290925260400190205460801b826133fd565b6001600160a01b038816600090815260a16020526040812060a380549192918690811061264c57fe5b906000526020600020906002020160000154815260200190815260200160002060000160006101000a8154816001600160801b03021916908360801c02179055506126f560a16000896001600160a01b03166001600160a01b03168152602001908152602001600020600060a385815481106126c457fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b896133fd565b6001600160a01b038816600090815260a16020526040812060a380549192918690811061271e57fe5b6000918252602080832060029092029091015483528201929092526040019020805460809290921c600160801b026001600160801b03909216919091179055609b5460ff600160a81b909104161561277557600080fd5b609b8054600160a81b60ff021916600160a81b179055600160d01b6572656465656d0286141561293e576127b1876127ac8a613539565b613bc5565b60a382815481106127be57fe5b906000526020600020906002020160000154600160d91b6432ba3432b902141561282657866001600160a01b03166108fc6127f883613539565b6040518115909202916000818181858888f19350505050158015612820573d6000803e3d6000fd5b506128d0565b60a3828154811061283357fe5b60009182526020909120600160029092020101546001600160a01b031663a9059cbb8861285f84613539565b6040518363ffffffff1660e01b815260040161287c9291906148da565b602060405180830381600087803b15801561289657600080fd5b505af11580156128aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506128ce9190810190614204565b505b866001600160a01b03167fc3cc9f7dc78b4765f7ece03d1970d655883f54b5927067c97cded09fa91915b160a3848154811061290857fe5b90600052602060002090600202016000015461292384613539565b604051612931929190614969565b60405180910390a2612b9f565b85600160c11b673a3930b739b332b9021415612b9f5761297d888260a3858154811061296657fe5b906000526020600020906002020160000154613c9e565b909850905061298f876127ac8a613539565b6129a18561299c8a613539565b613447565b6001600160a01b038516600090815260a16020526040812060a380546129f7939190869081106129cd57fe5b60009182526020808320600290920290910154835282019290925260400190205460801b8261063a565b6001600160a01b038616600090815260a16020526040812060a3805491929186908110612a2057fe5b906000526020600020906002020160000154815260200190815260200160002060000160006101000a8154816001600160801b03021916908360801c0217905550612ac960a16000876001600160a01b03166001600160a01b03168152602001908152602001600020600060a38581548110612a9857fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b8961063a565b6001600160a01b038616600090815260a16020526040812060a3805491929186908110612af257fe5b906000526020600020906002020160000154815260200190815260200160002060000160106101000a8154816001600160801b03021916908360801c0217905550866001600160a01b03167f952d4864a5fc6f5a60dff7f24a4cc96e6ec94f1b5c343ed13fb6cb321c771b858660a38581548110612b6c57fe5b906000526020600020906002020160000154612b878c613539565b604051612b96939291906148bf565b60405180910390a25b50609b8054600160a81b60ff0219169055600096506001915061326a565b6001600160a01b038616600090815260a16020526040812060a38054612c1b9291849186908110612bea57fe5b600091825260208083206002909202909101548352820192909252604001812054600160801b900460801b9061232f565b60000b131561326a57609b54600160a81b900460ff1615612c3b57600080fd5b609b8054600160a81b60ff021916600160a81b179055600160d01b6572656465656d02851415612eba57612cd0866127ac60a160008a6001600160a01b03166001600160a01b03168152602001908152602001600020600060a38681548110612ca057fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b613539565b6001600160a01b038616600090815260a16020526040812060a3805483919085908110612cf957fe5b906000526020600020906002020160000154815260200190815260200160002060000160009054906101000a900460801b905060a38281548110612d3957fe5b906000526020600020906002020160000154600160d91b6432ba3432b9021415612da157866001600160a01b03166108fc612d7383613539565b6040518115909202916000818181858888f19350505050158015612d9b573d6000803e3d6000fd5b50612e4b565b60a38281548110612dae57fe5b60009182526020909120600160029092020101546001600160a01b031663a9059cbb88612dda84613539565b6040518363ffffffff1660e01b8152600401612df79291906148da565b602060405180830381600087803b158015612e1157600080fd5b505af1158015612e25573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250612e499190810190614204565b505b866001600160a01b03167fc3cc9f7dc78b4765f7ece03d1970d655883f54b5927067c97cded09fa91915b160a38481548110612e8357fe5b906000526020600020906002020160000154612e9e84613539565b604051612eac929190614969565b60405180910390a2506131a1565b84600160c11b673a3930b739b332b90214156131a157600080612fad60a160008a6001600160a01b03166001600160a01b03168152602001908152602001600020600060a38681548110612f0a57fe5b906000526020600020906002020160000154815260200190815260200160002060000160109054906101000a900460801b60a160008b6001600160a01b03166001600160a01b03168152602001908152602001600020600060a38781548110612f6f57fe5b906000526020600020906002020160000154815260200190815260200160002060000160009054906101000a900460801b60a3868154811061296657fe5b91509150612fbe886127ac84613539565b612fcb8661299c84613539565b6001600160a01b038616600090815260a16020526040812060a38054612ff7939190879081106129cd57fe5b6001600160a01b038716600090815260a16020526040812060a380549192918790811061302057fe5b906000526020600020906002020160000154815260200190815260200160002060000160006101000a8154816001600160801b03021916908360801c02179055506130c960a16000886001600160a01b03166001600160a01b03168152602001908152602001600020600060a3868154811061309857fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b8361063a565b6001600160a01b038716600090815260a16020526040812060a38054919291879081106130f257fe5b906000526020600020906002020160000154815260200190815260200160002060000160106101000a8154816001600160801b03021916908360801c0217905550876001600160a01b03167f952d4864a5fc6f5a60dff7f24a4cc96e6ec94f1b5c343ed13fb6cb321c771b858760a3868154811061316c57fe5b90600052602060002090600202016000015461318786613539565b604051613196939291906148bf565b60405180910390a250505b6132098760a16000896001600160a01b03166001600160a01b03168152602001908152602001600020600060a385815481106131d957fe5b600091825260208083206002909202909101548352820192909252604001902054600160801b900460801b6133fd565b6001600160a01b038716600090815260a16020526040812060a38054939a5090928490811061323457fe5b600091825260208083206002909202909101548352820192909252604001812055609b8054600160a81b60ff0219169055600191505b60010161247d565b5090505b949350505050565b6001600160a01b0383166132a757604051600160e51b62461bcd028152600401610d1690614a7a565b6001600160a01b0382166132d057604051600160e51b62461bcd028152600401610d16906149c6565b61331381604051806060016040528060268152602001614ba8602691396001600160a01b038616600090815260336020526040902054919063ffffffff61350a16565b6001600160a01b038085166000908152603360205260408082209390935590841681522054613348908263ffffffff61339a16565b6001600160a01b0380841660008181526033602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90612322908590614914565b600082820183811015610ce857604051600160e51b62461bcd028152600401610d1690614a10565b609b805460ff191690556040517fa45f47fdea8a1efdd9029a5691c7f759c32b7c698632b563573e155625d1693390600090a1565b303b1590565b6000610ce883600160ff1b841861063a565b609b805460ff191660011790556040517f9e87fac88ff661f02d44f95383c817fece4bce600a3dab7a54406878b965e75290600090a1565b6001600160a01b03821661347057604051600160e51b62461bcd028152600401610d1690614a9a565b603554613483908263ffffffff61339a16565b6035556001600160a01b0382166000908152603360205260409020546134af908263ffffffff61339a16565b6001600160a01b0383166000818152603360205260408082209390935591519091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906134fe908590614914565b60405180910390a35050565b6000818484111561353157604051600160e51b62461bcd028152600401610d1691906149b5565b505050900390565b6000617fff6001600160801b03608084901c1660701c16613fff811015613564576000915050610635565b6001607f1b8360801c6001600160801b03161061358057600080fd5b6140fe81111561358f57600080fd5b600160701b6001600160701b03608085901c161761406f8210156135b95761406f8290031c610ce8565b61406f821115610ce85761406e1982011b9392505050565b6000610ce883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061350a565b6001600160a01b03811661363c57604051600160e51b62461bcd028152600401610d16906149f0565b6068546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606880546001600160a01b0319166001600160a01b0392909216919091179055565b6000617fff6001600160801b03608085811c8216607090811c8416939186901c90921690911c8116908214156136f65780617fff14156136e55750600160ef1b61ffff029150610a3a9050565b505050600160ff1b81168218610a3a565b80617fff141561373657600160801b600160f01b038416156137255750600160ef1b61ffff029150610a3a9050565b505050808218600160ff1b16610a3a565b600160801b600160ff1b03841661378657600160801b600160ff1b03851661376b5750600160ef1b61ffff029150610a3a9050565b505050808218600160ff1b16600160f01b617fff0217610a3a565b6001600160701b03608085901c16816137a257600191506137a9565b600160701b175b6001600160701b03608087901c16836137e85780156137e35760006137cd826121ce565b6001955060e20393840160711901939190911b90505b6137f2565b600160701b1760721b5b8181816137fb57fe5b0490508061382757600160ff1b8787181661381757600061242c565b600160ff1b945050505050610a3a565b6001606c1b81101561383557fe5b6000600160731b82101561387557600160721b82101561386a57600160711b821015613862576070613865565b60715b61386d565b60725b60ff1661387e565b61387e826121ce565b90508361407101818601111561389c57617fff94506000915061392f565b83818601613ffc0110156138b757600094506000915061392f565b83818601613f8c011015613904578385613ffc0111156138e2578385613ffc010382901b91506138fb565b8385613ffc0110156138fb57613ffc8585030382901c91505b6000945061392f565b6070811115613917576070810382901c91505b6001600160701b038216915083818601613f8d010394505b81607086901b888a186001607f1b60801b1660801c6001600160801b0316171760801b95505050505050610a3a565b6000617fff6001600160801b03608085811c8216607090811c8416939186901c90921690911c811690821415613a055780617fff14156139e1576001600160801b031985811690851614156139be57505050600160ff1b81168218610a3a565b600160ff1b6001600160801b031986861816141561069357505050818117610a3a565b600160801b600160ff1b0384166136e55750600160ef1b61ffff029150610a3a9050565b80617fff1415613a4457600160801b600160ff1b038516613a335750600160ef1b61ffff029150610a3a9050565b505050600160ff1b82168118610a3a565b6001600160701b03608086901c1682613a605760019250613a67565b600160701b175b6001600160701b03608086901c1682613a835760019250613a8a565b600160701b175b9081029081613aa757600160ff1b8787181661381757600061242c565b928201926000600160e11b831015613adb57600160e01b831015613ad357613ace836121ce565b613ad6565b60e05b613ade565b60e15b90506140708186011015613af9576000945060009250613b96565b6140e08186011015613b3c57614070851015613b1e57846140700383901c9250613b33565b614070851115613b3357614070850383901b92505b60009450613b96565b61c0dd8186011115613b5657617fff945060009250613b96565b6070811115613b6d576070810383901c9250613b80565b6070811015613b80578060700383901b92505b6001600160701b03831692506140df8186010394505b82607086901b888a186001607f1b60801b1660801c6001600160801b0316171760801b95505050505050610a3a565b6001600160a01b038216613bee57604051600160e51b62461bcd028152600401610d1690614a6a565b613c3181604051806060016040528060228152602001614b86602291396001600160a01b038516600090815260336020526040902054919063ffffffff61350a16565b6001600160a01b038316600090815260336020526040902055603554613c5d908263ffffffff6135d116565b6035556040516000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906134fe908590614914565b60a054604051600160e01b63e5f3d3a502815260009182918291613d2a916001600160a01b039091169063e5f3d3a590613cda90600401614a2d565b60206040518083038186803b158015613cf257600080fd5b505afa158015613d06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610b1c9190810190614222565b9050613d3781600061232f565b60000b60011415613e7e5760a05460408051600160e11b637a55098102815290516000926001600160a01b03169163f4aa1302916004808301926020929190829003018186803b158015613d8a57600080fd5b505afa158015613d9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250613dc29190810190613ff1565b90506001600160a01b03811615613e7c57613de9816104f8613de4858b61395e565b613539565b50613df887611292848a61395e565b6001600160a01b038216600090815260a160209081526040808320898452909152902054909750613e309060801b61021d848961395e565b6001600160a01b038216600090815260a160209081526040808320898452909152902080546001600160801b03191660809290921c919091179055613e7986611292848261395e565b95505b505b5093949293505050565b604080518082019091526000808252602082015290565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613ee057805160ff1916838001178555613f0d565b82800160010185558215613f0d579182015b82811115613f0d578251825591602001919060010190613ef2565b50613f19929150613f1d565b5090565b610af591905b80821115613f195760008155600101613f23565b6000610ce88235614b0c565b6000610ce88251614b0c565b6000610ce88251614b17565b6000610ce88235610af5565b6000610ce88251610af5565b600082601f830112613f8457600080fd5b8151613f97613f9282614ad1565b614aaa565b91508082526020830160208301858383011115613fb357600080fd5b613fbe838284614b4f565b50505092915050565b6000610ce88235614b28565b600060208284031215613fe557600080fd5b60006132768484613f37565b60006020828403121561400357600080fd5b60006132768484613f43565b6000806040838503121561402257600080fd5b600061402e8585613f37565b925050602061403f85828601613f37565b9150509250929050565b60008060006060848603121561405e57600080fd5b600061406a8686613f37565b935050602061407b86828701613f37565b925050604061408c86828701613f5b565b9150509250925092565b600080604083850312156140a957600080fd5b60006140b58585613f37565b925050602061403f85828601613f5b565b600080600080600080600080610100898b0312156140e357600080fd5b60006140ef8b8b613f37565b98505060206141008b828c01613f5b565b97505060406141118b828c01613f5b565b96505060606141228b828c01613f5b565b95505060806141338b828c01613f5b565b94505060a06141448b828c01613fc7565b93505060c06141558b828c01613f5b565b92505060e06141668b828c01613f5b565b9150509295985092959890939650565b60008060006060848603121561418b57600080fd5b60006141978686613f37565b93505060206141a886828701613f5b565b925050604061408c86828701613f37565b600080600080600080600080610100898b0312156141d657600080fd5b60006141e28b8b613f37565b98505060206141f38b828c01613f5b565b97505060406141118b828c01613f37565b60006020828403121561421657600080fd5b60006132768484613f4f565b60006020828403121561423457600080fd5b60006132768484613f67565b600080600080600060a0868803121561425857600080fd5b60006142648888613f5b565b955050602061427588828901613f5b565b945050604061428688828901613f37565b935050606061429788828901613f37565b92505060806142a888828901613f37565b9150509295509295909350565b6000602082840312156142c757600080fd5b815167ffffffffffffffff8111156142de57600080fd5b61327684828501613f73565b600080600080600080600060e0888a03121561430557600080fd5b60006143118a8a613f5b565b97505060206143228a828b01613f37565b96505060406143338a828b01613f5b565b95505060606143448a828b01613f5b565b94505060806143558a828b01613fc7565b93505060a06143668a828b01613f5b565b92505060c06143778a828b01613f5b565b91505092959891949750929550565b600080600080600080600080610100898b0312156143a357600080fd5b60006143af8b8b613f5b565b98505060206141008b828c01613f37565b60006143cc8383614830565b505060400190565b6143dd81614b2e565b82525050565b6143dd81614b0c565b60006143f782614aff565b6144018185614b03565b935061440c83614af9565b60005b82811015614437576144228683516143c0565b955061442d82614af9565b915060010161440f565b5093949350505050565b6143dd81614b17565b6143dd81610af5565b6143dd61445f82610af5565b610af5565b6143dd81614b39565b600061447882614aff565b6144828185614b03565b9350614492818560208601614b4f565b61449b81614b7b565b9093019392505050565b60006144b2602383614b03565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464728152600160e81b6265737302602082015260400192915050565b600160d91b6432ba3432b9029052565b600061450a601c83610635565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000614543602683614b03565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20618152600160d01b6564647265737302602082015260400192915050565b600061458e602283614b03565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472658152600160f01b61737302602082015260400192915050565b60006145d5601b83614b03565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000815260200192915050565b600160cb1b660acd2c286c2e6d029052565b600160b01b6972656d697474616e6365029052565b6000614635601883614b03565b7f436f6e747261637420696e207061757365642073746174650000000000000000815260200192915050565b600061466e602083614b03565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572815260200192915050565b60006146a7602e83614b03565b7f436f6e747261637420696e7374616e63652068617320616c726561647920626581527f656e20696e697469616c697a6564000000000000000000000000000000000000602082015260400192915050565b6000614706600683614b03565b600160d01b654c32746f4c3102815260200192915050565b600061472b602183614b03565b7f45524332303a206275726e2066726f6d20746865207a65726f206164647265738152600160f81b607302602082015260400192915050565b6000614771602583614b03565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061648152600160d81b64647265737302602082015260400192915050565b60006147bb602483614b03565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164648152600160e01b637265737302602082015260400192915050565b6000614804601f83614b03565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300815260200192915050565b80516040830190614841848261444a565b50602082015161137d60208501826143e3565b6143dd81614b28565b60006148698284614453565b50602001919050565b600061487d826144fd565b91506148698284614453565b60208101610a3a82846143e3565b606081016148a582866143d4565b6148b260208301856143d4565b613276604083018461444a565b606081016148cd82866143e3565b6148b2602083018561444a565b604081016148e882856143e3565b610ce8602083018461444a565b60208082528101610ce881846143ec565b60208101610a3a8284614441565b60208101610a3a828461444a565b60608101614930828661444a565b61493d6020830185614464565b6132766040830184614464565b60408101614958828461444a565b8181036020830152610ce8816146f9565b604081016148e8828561444a565b60808101614985828761444a565b6149926020830186614854565b61499f604083018561444a565b6149ac606083018461444a565b95945050505050565b60208082528101610ce8818461446d565b60208082528101610a3a816144a5565b604081016149e3826144ed565b610a3a602083018461444a565b60208082528101610a3a81614536565b60208082528101610a3a81614581565b60208082528101610a3a816145c8565b604081016149e382614601565b6020810161063582614613565b60208082528101610a3a81614628565b60208082528101610a3a81614661565b60208082528101610a3a8161469a565b60208082528101610a3a8161471e565b60208082528101610a3a81614764565b60208082528101610a3a816147ae565b60208082528101610a3a816147f7565b60405181810167ffffffffffffffff81118282101715614ac957600080fd5b604052919050565b600067ffffffffffffffff821115614ae857600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b6000610a3a82614b1c565b151590565b6001600160a01b031690565b60ff1690565b6000610a3a82614b44565b6000610a3a82610af5565b6000610a3a82614b0c565b60005b83811015614b6a578181015183820152602001614b52565b8381111561137d5750506000910152565b601f01601f19169056fe45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a723058202d05dcc90230b5b66b3bfead918b09b51fb0d7f9b9bd9736905addc987f12b846c6578706572696d656e74616cf50037",
|
|
833
833
|
"sourceMap": "706:17966:17:-;;;;;;;;;",
|
|
834
834
|
"deployedSourceMap": "706:17966:17:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2945:9;2937:22;;;;;;3010:8;:18;3002:27;;;;;;3087:6;;;;:15;3079:24;;;;;;3271:10;3260:22;;;;:10;:22;;;;;;;;-1:-1:-1;;;;;3260:31:17;;;;;;;:45;3243:97;;3260:45;;3307:32;3329:9;3307:21;:32::i;:::-;3243:16;:97::i;:::-;3206:10;3195:22;;;;:10;:22;;;;;;;;-1:-1:-1;;;;;3195:31:17;;;;;;;:145;;-1:-1:-1;;;;;;3195:145:17;;;;;;;;;;;;706:17966;1025:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1025:18:17;;;:::i;:::-;;;;;;;;;;;;;;;;2577:149:3;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2577:149:3;;;;;;;;:::i;:::-;;;;;;;;1077:28:17;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1077:28:17;;;:::i;:::-;;;;;;;;1636:89:3;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1636:89:3;;;:::i;10636:1383:17:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;10636:1383:17;;;;;;;;:::i;3575:347::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;3575:347:17;;;;;;;;:::i;:::-;;3879:207:3;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;3879:207:3;;;;;;;;:::i;18602:65:17:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18602:65:17;;;:::i;2297:411::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2297:411:17;;;;;;;;:::i;4768:1265::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4768:1265:17;;;;;;;;:::i;4104:182::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4104:182:17;;;;;;;;:::i;2716:89::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2716:89:17;;;;;;;;:::i;1783:108:3:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1783:108:3;;;;;;;;:::i;1746:137:2:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1746:137:2;;;:::i;6968:906:17:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6968:906:17;;;;;;;;:::i;18535:61::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18535:61:17;;;:::i;959:77:2:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;959:77:2;;;:::i;:::-;;;;;;;;1310:92;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1310:92:2;;;:::i;1050:20:17:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1050:20:17;;;:::i;9258:1238::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9258:1238:17;;;;;;;;:::i;4573:258:3:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4573:258:3;;;;;;;;:::i;2094:155::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2094:155:3;;;;;;;;:::i;762:79:27:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;762:79:27;;;:::i;741:142:2:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;741:142:2;;;;;;;;:::i;4355:105:17:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4355:105:17;;;:::i;:::-;;;;;;;;2307:132:3;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2307:132:3;;;;;;;;:::i;7925:1270:17:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7925:1270:17;;;;;;;;:::i;6108:745::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6108:745:17;;;;;;;;:::i;2032:107:2:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2032:107:2;;;;;;;;:::i;2992:392:15:-;3045:7;3064:6;3060:320;;-1:-1:-1;3088:1:15;3072:18;;3060:320;3126:1;3109:14;3150:12;3126:1;3150:3;:12::i;:::-;3136:26;;3180:3;3174;:9;3170:83;;;3202:3;3196;:9;3185:20;;;;;3170:83;;;3228:3;3222;:9;3218:35;;;3250:3;3244;:9;3233:20;;;;;3218:35;3313:5;:11;3328:3;3313:18;-1:-1:-1;;;;;3271:39:15;;;;:60;3347:26;;;-1:-1:-1;3060:320:15;2992:392;;;:::o;15491:3613::-;15550:7;15606:6;-1:-1:-1;;;;;15585:11:15;;;;:18;;15600:3;15585:18;;;:27;;;15638:11;;;;:18;;;;;;:27;;;15676:19;;15672:3428;;;15709:9;15722:6;15709:19;15705:104;;;-1:-1:-1;;;;;;15745:6:15;;;;;;;15741:45;;;15760:1;15753:8;;;;;;15741:45;-1:-1:-1;;;;;;15783:3:15;-1:-1:-1;15776:10:15;;-1:-1:-1;15776:10:15;15705:104;15808:1;15801:8;;;;;;15672:3428;15827:9;15840:6;15827:19;15823:3277;;;15855:1;15848:8;;;;;;15823:3277;-1:-1:-1;;;15888:11:15;;;;-1:-1:-1;;;;;15888:49:15;;;;;;;;-1:-1:-1;;;;;15966:44:15;16022:14;16018:91;;16050:1;16038:13;;16018:91;;;-1:-1:-1;;;16064:45:15;16018:91;-1:-1:-1;;;16131:11:15;;;;-1:-1:-1;;;;;16131:49:15;;;;;;;;-1:-1:-1;;;;;16209:44:15;16265:14;16261:91;;16293:1;16281:13;;16261:91;;;-1:-1:-1;;;16307:45:15;16261:91;16365:15;16361:2733;;-1:-1:-1;;;;;;16389:18:15;;-1:-1:-1;;;16389:18:15;:38;;16426:1;16389:38;;;591:34;16389:38;16382:45;;;;;;;;;;16361:2733;16444:15;16440:2654;;-1:-1:-1;;;;;;16468:18:15;;-1:-1:-1;;;16468:18:15;:38;;16505:1;16468:38;;16440:2654;16544:39;;;16600:14;;;;;;;16596:2490;;;16640:3;16632:5;:11;16628:255;;;16652:1;16645:8;;;;;;;;;;;16628:255;16682:1;16674:5;:9;16670:213;;;16685:30;;;;16670:213;;;-1:-1:-1;;16736:5:15;:12;16732:151;;;16757:1;16750:8;;;;;;;;;;;16732:151;16787:1;16779:5;:9;16775:108;;;16829:5;16828:6;;16804:31;;;;;16861:9;16849:21;;16775:108;16897:24;;;;-1:-1:-1;;;16940:45:15;;16936:122;;17016:1;17031:14;;;;17001:16;;;;;16936:122;17076:9;17089:6;17076:19;17072:435;;;17116:5;:45;;-1:-1:-1;;;;;17116:45:15;;;-1:-1:-1;;;;;;17116:45:15;17109:52;;;;;;;;;;;17072:435;-1:-1:-1;;;17196:10:15;:44;17192:126;;;17254:1;17242:13;;17192:126;;;-1:-1:-1;;;;;17274:44:15;;;;17192:126;17481:10;17458:3;17445:9;:16;;17378:5;:46;;17423:1;17378:46;;;-1:-1:-1;;;17378:46:15;-1:-1:-1;;;;;17377:85:15;;:114;17342:151;;17335:158;;;;;;;;;;;16596:2490;17547:1;17539:5;:9;17535:189;;;17579:1;17564:16;;;;;17607:1;17594:14;;;;17535:189;;;17639:1;17631:5;:9;17627:97;;;17671:1;17656:16;;;;;17710:1;17698:9;:13;17686:25;;17627:97;17748:3;17740:5;:11;17736:258;;;17766:1;17753:14;;17736:258;;;17796:1;17788:5;:9;17784:210;;;17848:1;17840:5;:9;17826:1;17813:10;:14;:37;;17854:1;17812:43;17799:56;;17784:210;;;-1:-1:-1;;17876:5:15;:12;17872:122;;;17903:1;17890:14;;17872:122;;;-1:-1:-1;;17925:5:15;:10;17921:73;;;17987:1;17979:5;17978:6;;:10;17964:1;17951:10;:14;:38;;17993:1;17950:44;17937:57;;17921:73;18025:10;18011;:24;18007:161;;18051:10;18037:24;;;;18007:161;;;18118:10;18105;:23;18092:36;;18150:5;18142:13;;18007:161;18184:15;18180:53;;-1:-1:-1;591:34:15;;-1:-1:-1;18213:20:15;;-1:-1:-1;;;;;;18213:20:15;18180:53;18246:11;18260:16;18265:10;18260:3;:16::i;:::-;18246:30;;18293:3;18300;18293:10;18289:515;;;18346:1;18332:10;:15;;-1:-1:-1;;;;;18332:48:15;18319:61;;18407:1;18394:14;;;;18289:515;;;18437:3;18431;:9;18427:377;;;18472:3;:9;;;18499:17;;;18495:247;;;18561:5;18547:10;:19;;-1:-1:-1;;;;;18547:52:15;18534:65;;18628:5;18615:18;;;;18495:247;;;18726:1;;-1:-1:-1;;18685:13:15;18670:28;;;;;18495:247;18427:377;;;;-1:-1:-1;;;;;18760:44:15;;;;18427:377;18821:9;18834:6;18821:19;18817:258;;;18861:5;:45;;-1:-1:-1;;;;;18861:45:15;;;-1:-1:-1;;;;;;18861:45:15;18854:52;;;;;;;;;;;;18817:258;19063:10;19042:3;19029:9;:16;;18964:5;:46;;19009:1;18964:46;;;-1:-1:-1;;;18964:46:15;-1:-1:-1;;;;;18963:83:15;;:110;18930:145;;18923:152;;;;;;;;;;15491:3613;;;;;:::o;1025:18:17:-;;;;;;;;;;;;;;;-1:-1:-1;;1025:18:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2577:149:3:-;2643:4;2659:39;2668:12;:10;:12::i;:::-;2682:7;2691:6;2659:8;:39::i;:::-;-1:-1:-1;2715:4:3;2577:149;;;;:::o;1077:28:17:-;;;;:::o;1636:89:3:-;1706:12;;1636:89;;:::o;10636:1383:17:-;10786:6;;10723:4;;10786:6;;:15;10778:24;;;;;;11120:1;11031:87;11048:40;11070:17;11080:6;11070:9;:17::i;:::-;11048:21;:40::i;:::-;11089:28;11111:5;11089:21;:28::i;:::-;11031:16;:87::i;:::-;:90;;;;11023:99;;;;;;-1:-1:-1;;;;;11207:25:17;;11227:4;11207:25;11204:807;;;11326:69;11333:28;11355:5;11333:21;:28::i;:::-;11363:6;-1:-1:-1;;;;;11389:4:17;11326:6;:69::i;:::-;11323:151;;;-1:-1:-1;11421:4:17;11414:11;;11323:151;-1:-1:-1;11469:5:17;11462:12;;11204:807;11504:7;;:25;;-1:-1:-1;;;;;11504:25:17;;-1:-1:-1;;;;;11504:7:17;;;;:15;;:25;;11520:8;;11504:25;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11504:25:17;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11504:25:17;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;11504:25:17;;;;;;;;;-1:-1:-1;;;;;11504:36:17;:76;;;-1:-1:-1;11544:7:17;;:25;;-1:-1:-1;;;;;11544:25:17;;-1:-1:-1;;;;;11544:7:17;;;;:15;;:25;;11560:8;;11544:25;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11544:25:17;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11544:25:17;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;11544:25:17;;;;;;;;;-1:-1:-1;;;;;11544:36:17;11504:76;11501:510;;;11595:34;11605:6;11613:8;11623:5;11595:9;:34::i;:::-;-1:-1:-1;11650:4:17;11643:11;;11501:510;11854:66;11861:28;11883:5;11861:21;:28::i;:::-;11891:6;-1:-1:-1;;;;;11911:8:17;11854:6;:66::i;11851:148::-;10636:1383;;;;;:::o;3575:347::-;1163:9:2;:7;:9::i;:::-;1155:54;;;;-1:-1:-1;;;;;1155:54:2;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3662:18:17;;;;;;:10;:18;;;;;;3659:256;;3699:20;;:::i;:::-;-1:-1:-1;3722:103:17;;;;;;;;;;;-1:-1:-1;;;;;3722:103:17;;;;;;;;;;3840:6;27:10:-1;;39:1;23:18;;45:23;;-1:-1;3840:14:17;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;3840:14:17;;;;;;;;;;;;3890:13;;3869:18;;;:10;:18;;;;;;:34;3659:256;3575:347;;:::o;3879:207:3:-;3959:4;3975:83;3984:12;:10;:12::i;:::-;3998:7;4007:50;4046:10;4007:11;:25;4019:12;:10;:12::i;:::-;-1:-1:-1;;;;;4007:25:3;;;;;;;;;;;;;;;;;-1:-1:-1;4007:25:3;;;:34;;;;;;;;;;;:50;:38;:50;:::i;:::-;3975:8;:83::i;18602:65:17:-;1163:9:2;:7;:9::i;:::-;1155:54;;;;-1:-1:-1;;;;;1155:54:2;;;;;;;;;18649:10:17;:8;:10::i;:::-;18602:65::o;2297:411::-;1024:12:5;;;;;;;;:31;;;1040:15;:13;:15::i;:::-;1024:47;;;-1:-1:-1;1060:11:5;;;;1059:12;1024:47;1016:106;;;;-1:-1:-1;;;;;1016:106:5;;;;;;;;;1129:19;1152:12;;;;;;1151:13;1170:80;;;;1198:12;:19;;-1:-1:-1;;;;1198:19:5;;;;;1225:18;1213:4;1225:18;;;1170:80;2427:26:17;2446:6;2427:18;:26::i;:::-;2464:7;:30;;-1:-1:-1;;;;;;2464:30:17;2483:10;2464:30;;;2519:23;;;;2536:5;;2519:23;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2519:23:17;;;2505:4;:38;;;;;;;;;;;;:::i;:::-;-1:-1:-1;2563:20:17;;-1:-1:-1;;;;;2563:20:17;;:15;;;;:20;;:5;;2579:1;;2581;;2563:20;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2563:20:17;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2563:20:17;;;;;;39:16:-1;36:1;17:17;2:54;101:4;2563:20:17;80:15:-1;;;-1:-1;;76:31;65:43;;120:4;113:20;2563::17;;;;;;;;;2554:29;;;;:6;;:29;;;;;;:::i;:::-;-1:-1:-1;2594:13:17;:25;;;2630:5;:20;;-1:-1:-1;;;;;;2630:20:17;-1:-1:-1;;;;;2630:20:17;;;;;;;;;;2661:6;:16;;-1:-1:-1;;;;;;2661:16:17;2630:20;2661:16;;;;;;;;;;;-1:-1:-1;;;;;;2688:12:17;;;1264:55:5;;;;1307:5;1292:20;;-1:-1:-1;;1292:20:5;;;1264:55;2297:411:17;;;;;;:::o;4768:1265::-;4867:6;;;;:15;4859:52;;;;-1:-1:-1;;;;;4859:52:17;;;;;;;;;-1:-1:-1;;;;;4954:18:17;;4922:10;4954:18;;;:10;:18;;;;;;:20;4951:50;;-1:-1:-1;4997:4:17;4951:50;5015:5;5012:1014;;;5048:44;5057:10;5077:4;5084:7;5048:8;:44::i;:::-;-1:-1:-1;;;;;5137:18:17;;5107:20;5137:18;;;:10;:18;;;;;;5130:6;:28;;:6;;-1:-1:-1;;5137:20:17;;5130:28;;;;;;;;;;;;;;;;:38;;;5107:61;;5192:6;-1:-1:-1;;;;;5186:26:17;;5213:10;5233:4;5240:7;5186:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5186:62:17;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5186:62:17;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;5186:62:17;;;;;;;;;5183:317;;;-1:-1:-1;;;;;5334:18:17;;;;;;:10;:18;;;;;;;;:32;;;;;;;;:46;5317:96;;5334:46;;5382:30;5404:7;5382:21;:30::i;5317:96::-;-1:-1:-1;;;;;5268:18:17;;;;;;:10;:18;;;;;;;;:32;;;;;;;;;;:145;;-1:-1:-1;;;;;;5268:145:17;;;;;;;;;;;;;5437:47;;;;;;5268:32;;5476:7;;5437:47;;;;;;;;;;5183:317;5012:1014;;;;5557:10;5626:1;5546:22;;;:10;:22;;;;;;;;-1:-1:-1;;;;;5546:31:17;;;;;;;:45;5529:95;;5546:45;;5593:30;5615:7;5593:21;:30::i;5529:95::-;:98;;;5526:500;;5719:10;5708:22;;;;:10;:22;;;;;;;;-1:-1:-1;;;;;5708:31:17;;;;;;;:45;5691:95;;5708:45;;5755:30;5777:7;5755:21;:30::i;:::-;5691:16;:95::i;:::-;5654:10;5643:22;;;;:10;:22;;;;;;;;-1:-1:-1;;;;;5643:31:17;;;;;;;;;:143;;-1:-1:-1;;;;;;5643:143:17;;;;;;;;-1:-1:-1;;;;;5862:18:17;;;;:10;:18;;;;;:27;;;;;;;;:41;5845:91;;5862:41;5905:30;5927:7;5905:21;:30::i;5845:91::-;-1:-1:-1;;;;;5801:18:17;;;;;;:10;:18;;;;;;;;-1:-1:-1;;;;;5801:27:17;;;;;;;;;:135;;-1:-1:-1;;;;;;5801:135:17;;;;;;;;;;;;;5956:42;;;;;;5990:7;;5956:42;;;;;;;;;;5526:500;4768:1265;;;;:::o;4104:182::-;-1:-1:-1;;;;;4191:18:17;;4172:4;4191:18;;;:10;:18;;;;;;:20;4188:90;;-1:-1:-1;4233:4:17;4226:11;;4188:90;-1:-1:-1;4273:5:17;4266:12;;2716:89;1163:9:2;:7;:9::i;:::-;1155:54;;;;-1:-1:-1;;;;;1155:54:2;;;;;;;;;2781:6:17;:16;;-1:-1:-1;;;;;2781:16:17;;;;;-1:-1:-1;;;;;;2781:16:17;;;;;;;;;2716:89::o;1783:108:3:-;-1:-1:-1;;;;;1866:18:3;1840:7;1866:18;;;:9;:18;;;;;;;1783:108::o;1746:137:2:-;1163:9;:7;:9::i;:::-;1155:54;;;;-1:-1:-1;;;;;1155:54:2;;;;;;;;;1828:6;;1807:40;;1844:1;;-1:-1:-1;;;;;1828:6:2;;1807:40;;1844:1;;1807:40;1857:6;:19;;-1:-1:-1;;;;;;1857:19:2;;;1746:137::o;6968:906:17:-;7175:19;7218:14;7207:36;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;7207:36:17;;;7197:47;;;;;;7175:69;;7255:19;7340:11;7287:65;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;7287:65:17;;;7277:76;;;;;;7255:98;;7409:6;;;;;;;;;-1:-1:-1;;;;;7409:6:17;-1:-1:-1;;;;;7372:43:17;:34;7382:11;7395:2;7399;7403;7372:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7372:34:17;;;;;;;;-1:-1:-1;;;;;7372:43:17;;7364:52;;;;;;-1:-1:-1;;;;;7464:22:17;;7547:1;7464:22;;;:10;:22;;;;;;;;:32;;;;;;;;:46;7430:115;;7447:95;;7464:46;;7512:29;7534:6;7512:21;:29::i;7447:95::-;7543:1;7430:16;:115::i;:::-;:118;;;7427:440;;-1:-1:-1;;;;;7585:22:17;;;;;;:10;:22;;;;;;;;:32;;;;;;;;:46;7568:95;;7585:46;;7633:29;7655:6;7633:21;:29::i;7568:95::-;-1:-1:-1;;;;;;7695:22:17;;;;;;:10;:22;;;;;;;;:32;;;;;;;;:46;7678:95;;7695:46;;7743:29;7765:6;7743:21;:29::i;7678:95::-;;7814:10;-1:-1:-1;;;;;7793:62:17;;7826:10;7838:8;7848:6;7793:62;;;;;;;;;;;;;;;;;7427:440;6968:906;;;;;;;;;;:::o;18535:61::-;1163:9:2;:7;:9::i;:::-;1155:54;;;;-1:-1:-1;;;;;1155:54:2;;;;;;;;;18580:8:17;:6;:8::i;959:77:2:-;1023:6;;-1:-1:-1;;;;;1023:6:2;959:77;:::o;1310:92::-;1389:6;;1350:4;;-1:-1:-1;;;;;1389:6:2;1373:12;:10;:12::i;:::-;-1:-1:-1;;;;;1373:22:2;;1366:29;;1310:92;:::o;1050:20:17:-;;;;;;;;;;;;;;;-1:-1:-1;;1050:20:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9258:1238;9470:19;9513:14;9502:36;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;9502:36:17;;;9492:47;;;;;;9470:69;;9550:19;9635:11;9582:65;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;9582:65:17;;;9572:76;;;;;;9550:98;;9704:6;;;;;;;;;-1:-1:-1;;;;;9704:6:17;-1:-1:-1;;;;;9667:43:17;:34;9677:11;9690:2;9694;9698;9667:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9667:34:17;;;;;;;;-1:-1:-1;;;;;9667:43:17;;9659:52;;;;;;-1:-1:-1;;;;;9788:22:17;;;;;;:10;:22;;;;;;;;:32;;;;;;;;:46;9771:98;;9788:46;;9836:32;9858:9;9836:21;:32::i;9771:98::-;-1:-1:-1;;;;;9722:22:17;;;;;;:10;:22;;;;;;;;:32;;;;;;;;:147;;-1:-1:-1;;;;;;9722:147:17;;;;;;;;9946:22;;;:10;:22;;;;;:32;;;;;;:46;9929:98;;9946:46;9994:32;10016:9;9994:21;:32::i;9929:98::-;-1:-1:-1;;;;;9880:22:17;;;;;;:10;:22;;;;;;;;:32;;;;;;;;:147;;-1:-1:-1;;;;;;9880:147:17;;;;;;;;;;;;10038:28;10052:4;10059:6;10038:5;:28::i;:::-;10077:44;10095:4;10102:10;10114:6;10077:9;:44::i;:::-;-1:-1:-1;;;;;10197:22:17;;;;;;:10;:22;;;;;;;;:32;;;;;;;;:45;10180:94;;-1:-1:-1;;;10197:45:17;;;;10244:29;10266:6;10244:21;:29::i;10180:94::-;-1:-1:-1;;;;;10132:22:17;;;;;;:10;:22;;;;;;;;:32;;;;;;;;:142;;-1:-1:-1;;;;;10132:142:17;-1:-1:-1;;;10132:142:17;;;;;;;;;;;;;10350:22;;;:10;:22;;;;;:32;;;;;;;;:45;10333:94;;10350:45;;;;;10397:29;10419:6;10397:21;:29::i;10333:94::-;-1:-1:-1;;;;;10285:22:17;;;;;;:10;:22;;;;;;;;:32;;;;;;;;;;:142;;;;;;;-1:-1:-1;;;10285:142:17;-1:-1:-1;;;;;10285:142:17;;;;;;;;;;10466:13;;10443:45;;10285:22;;10443:45;;;;10466:13;10481:6;;10443:45;;4573:258:3;4658:4;4674:129;4683:12;:10;:12::i;:::-;4697:7;4706:96;4745:15;4706:96;;;;;;;;;;;;;;;;;:11;:25;4718:12;:10;:12::i;:::-;-1:-1:-1;;;;;4706:25:3;;;;;;;;;;;;;;;;;-1:-1:-1;4706:25:3;;;:34;;;;;;;;;;;:96;;:38;:96;:::i;2094:155::-;2163:4;2179:42;2189:12;:10;:12::i;:::-;2203:9;2214:6;2179:9;:42::i;762:79:27:-;827:6;;;;762:79;:::o;741:142:2:-;1024:12:5;;;;;;;;:31;;;1040:15;:13;:15::i;:::-;1024:47;;;-1:-1:-1;1060:11:5;;;;1059:12;1024:47;1016:106;;;;-1:-1:-1;;;;;1016:106:5;;;;;;;;;1129:19;1152:12;;;;;;1151:13;1170:80;;;;1198:12;:19;;-1:-1:-1;;;;1198:19:5;;;;;1225:18;1213:4;1225:18;;;1170:80;806:6:2;:15;;-1:-1:-1;;;;;;806:15:2;-1:-1:-1;;;;;806:15:2;;;;;;;;;;;836:40;;869:6;;;-1:-1:-1;;836:40:2;;-1:-1:-1;;836:40:2;1268:14:5;1264:55;;;1307:5;1292:20;;-1:-1:-1;;1292:20:5;;;741:142:2;;:::o;4355:105:17:-;4407:20;4446:6;4439:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4439:13:17;;;;;;;;;;;;;;;;;;;;;;4355:105;:::o;2307:132:3:-;-1:-1:-1;;;;;2405:18:3;;;2379:7;2405:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;2307:132::o;7925:1270:17:-;8126:19;8169:14;8158:36;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;8158:36:17;;;8148:47;;;;;;8126:69;;8206:19;8291:11;8238:65;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;8238:65:17;;;8228:76;;;;;;8206:98;;8360:6;;;;;;;;;-1:-1:-1;;;;;8360:6:17;-1:-1:-1;;;;;8323:43:17;:34;8333:11;8346:2;8350;8354;8323:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8323:34:17;;;;;;;;-1:-1:-1;;;;;8323:43:17;;8315:52;;;;;;8424:30;8446:7;8424:21;:30::i;:::-;-1:-1:-1;;;;;8378:20:17;;;;;;:10;:20;;;;;;;;:30;;;;;;;;:76;;;;;;;-1:-1:-1;;;8378:76:17;-1:-1:-1;;;;;8378:76:17;;;;;;;;;-1:-1:-1;;;;;8476:17:17;;8473:657;;;8513:43;;-1:-1:-1;;;;;8513:35:17;;;:43;;;;;8549:6;;8513:43;;;;8549:6;8513:35;:43;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;;;;;8635:20:17;;;;;;:10;:20;;;;;;;;:30;;;;;;;;:44;8618:93;;8635:44;;8681:29;8703:6;8681:21;:29::i;8618:93::-;-1:-1:-1;;;;;8571:20:17;;;;;;:10;:20;;;;;;;;:30;;;;;;;;:140;;-1:-1:-1;;;;;;8571:140:17;;;;;;;;;;;;8473:657;;;8756:9;8752:367;8771:6;:13;8769:15;;8752:367;;;8833:8;8812:6;8819:1;8812:9;;;;;;;;;;;;;;;;;;:19;;;:29;8809:295;;;8871:6;8878:1;8871:9;;;;;;;;;;;;;;;;:22;:9;;;;;:22;;8865:56;;-1:-1:-1;;;;;8865:56:17;;-1:-1:-1;;;;;8871:22:17;;;;8865:38;;:56;;8904:8;;8914:6;;8865:56;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8865:56:17;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8865:56:17;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;8865:56:17;;;;;;;;;-1:-1:-1;;;;;;9008:20:17;;;;;;:10;:20;;;;;;;;:30;;;;;;;;:44;8991:93;;9008:44;;9054:29;9076:6;9054:21;:29::i;8991:93::-;-1:-1:-1;;;;;8944:20:17;;;;;;:10;:20;;;;;;;;:30;;;;;;;;:140;;-1:-1:-1;;;;;;8944:140:17;;;;;;;;;;;;8809:295;8786:3;;8752:367;;;;8473:657;9160:8;-1:-1:-1;;;;;9147:40:17;;9170:8;9180:6;9147:40;;;;;;;;6108:745;6292:19;6335:14;6324:36;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;6324:36:17;;;6314:47;;;;;;6292:69;;6372:19;6457:11;6404:65;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;6404:65:17;;;6394:76;;;;;;6372:98;;6526:6;;;;;;;;;-1:-1:-1;;;;;6526:6:17;-1:-1:-1;;;;;6489:43:17;:34;6499:11;6512:2;6516;6520;6489:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6489:34:17;;;;;;;;-1:-1:-1;;;;;6489:43:17;;6481:52;;;;;;6555:7;;:38;;-1:-1:-1;;;;;6555:38:17;;6603:4;;-1:-1:-1;;;;;6555:7:17;;:17;;:38;;6584:8;;6555:38;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6555:38:17;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6555:38:17;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;6555:38:17;;;;;;;;;-1:-1:-1;;;;;6555:53:17;;6552:294;;;-1:-1:-1;;;;;6629:117:17;;6703:17;;;;:10;:17;;;;;;;;:27;;;;;;;;:40;6629:117;;6651:8;;6661:84;;6674:7;;6683:61;;-1:-1:-1;;;6703:40:17;;;;6683:19;:61::i;:::-;6661:12;:84::i;:::-;6629:117;;;;;;;;;;;;;;;;6804:30;6826:7;6804:21;:30::i;:::-;-1:-1:-1;;;;;6761:17:17;;;;;;:10;:17;;;;;;;;:27;;;;;;;;:73;;;;;;;-1:-1:-1;;;6761:73:17;-1:-1:-1;;;;;6761:73:17;;;;;;;;;6552:294;6108:745;;;;;;;;;:::o;2032:107:2:-;1163:9;:7;:9::i;:::-;1155:54;;;;-1:-1:-1;;;;;1155:54:2;;;;;;;;;2104:28;2123:8;2104:18;:28::i;:::-;2032:107;:::o;49968:570:15:-;50015:7;50043:1;50039;:5;50030:15;;;;;;50052:14;-1:-1:-1;;;50081:40:15;;50077:75;;50131:3;50125:9;;;;50136:13;50077:75;50166:19;50161:1;:24;50157:57;;50195:2;50189:8;;;;50199:12;50157:57;50228:11;50223:1;:16;50219:49;;50249:2;50243:8;;;;50253:12;50219:49;50282:7;50277:1;:12;50273:45;;50299:2;50293:8;;;;50303:12;50273:45;50332:5;50327:1;:10;50323:41;;50347:1;50341:7;;;;50350:11;50323:41;50378:4;50373:1;:9;50369:40;;50392:1;50386:7;;;;50395:11;50369:40;50423:3;50418:1;:8;50414:39;;50436:1;50430:7;;;;50439:11;50414:39;50467:3;50462:1;:8;50458:25;;50482:1;50472:11;50527:6;49968:570;-1:-1:-1;;49968:570:15:o;867:96:0:-;946:10;867:96;:::o;7427:332:3:-;-1:-1:-1;;;;;7520:19:3;;7512:68;;;;-1:-1:-1;;;;;7512:68:3;;;;;;;;;-1:-1:-1;;;;;7598:21:3;;7590:68;;;;-1:-1:-1;;;;;7590:68:3;;;;;;;;;-1:-1:-1;;;;;7669:18:3;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;;:36;;;7720:32;;;;;7699:6;;7720:32;;;;;;;;;;7427:332;;;:::o;13643:906:15:-;13702:4;-1:-1:-1;;;;;13734:11:15;;;;:48;-1:-1:-1;;;;;13798:47:15;;;13789:57;;;;;;-1:-1:-1;;;;;13884:11:15;;;;:48;-1:-1:-1;;;;;13948:47:15;;;13939:57;;;;;;-1:-1:-1;;;;;;14062:6:15;;;;;;;;;:56;;;-1:-1:-1;;;;;14072:9:15;-1:-1:-1;;;;;14072:46:15;;14062:56;14053:66;;;;;;-1:-1:-1;;;;;;14130:6:15;;;;;;;14126:419;;;14145:1;14138:8;;;;;;14126:419;14165:14;-1:-1:-1;;;14191:1:15;14182:11;;-1:-1:-1;;;;;14182:49:15;;;14165:66;;14239:14;-1:-1:-1;;;14265:1:15;14256:11;;-1:-1:-1;;;;;14256:49:15;;;14239:66;;14318:9;14314:225;;;14343:9;14339:83;;;14373:9;-1:-1:-1;;;;;14361:21:15;:9;-1:-1:-1;;;;;14361:21:15;;:37;;14396:1;14361:37;;;-1:-1:-1;;14361:37:15;14354:44;;;;;;;;14314:225;14452:9;14448:82;;;14470:1;14463:8;;;;;;;;14448:82;14505:9;-1:-1:-1;;;;;14493:21:15;:9;-1:-1:-1;;;;;14493:21:15;;:37;;-1:-1:-1;;14493:37:15;;;14523:1;14486:44;;;;;;;;12241:5486:17;12341:4;;;12395:5302;12411:6;:13;12409:15;;:48;;;;;12456:1;12428:27;12448:6;12428:19;:27::i;:::-;:29;12409:48;12395:5302;;;-1:-1:-1;;;;;12625:17:17;;12687:1;12625:17;;;:10;:17;;;;;12643:6;:9;;12608:77;;12625:17;12687:1;;12650;;12643:9;;;;;;;;;;;;;;;;;;;;;:19;12625:38;;;;;;;;;;;;:51;-1:-1:-1;;;12625:51:17;;;;12678:6;12608:16;:77::i;:::-;:80;;;12605:5081;;12708:13;12724:148;12741:77;12758:6;12766:10;:17;12777:5;-1:-1:-1;;;;;12766:17:17;-1:-1:-1;;;;;12766:17:17;;;;;;;;;;;;:38;12784:6;12791:1;12784:9;;;;;;;;;;;;;;;;;;;;;;;:19;12766:38;;;;;;;;;;;;:51;-1:-1:-1;;;12766:51:17;;;;12741:16;:77::i;:::-;-1:-1:-1;;;;;12819:17:17;;;;;;:10;:17;;;;;12837:6;:9;;12819:17;;;12844:1;;12837:9;;;;;;;;;;;;;;;;;;;;;:19;12819:38;;;;;;;;;;;;:52;;;12724:16;:148::i;:::-;12708:164;;12946:77;12963:10;:17;12974:5;-1:-1:-1;;;;;12963:17:17;-1:-1:-1;;;;;12963:17:17;;;;;;;;;;;;:38;12981:6;12988:1;12981:9;;;;;;;;;;;;;;;;;;;;;;;:19;12963:38;;;;;;;;;;;;:52;;;13017:5;12946:16;:77::i;:::-;-1:-1:-1;;;;;12891:17:17;;;;;;:10;:17;;;;;12909:6;:9;;12891:17;;;12916:1;;12909:9;;;;;;;;;;;;;;;;:19;;;12891:38;;;;;;;;;;;:52;;;:132;;;;;-1:-1:-1;;;;;12891:132:17;;;;;;;;;;;;13096:77;13113:10;:17;13124:5;-1:-1:-1;;;;;13113:17:17;-1:-1:-1;;;;;13113:17:17;;;;;;;;;;;;:38;13131:6;13138:1;13131:9;;;;;;;;;;;;;;;;;;;;;;;:19;13113:38;;;;;;;;;;;;:51;-1:-1:-1;;;13113:51:17;;;;13166:6;13096:16;:77::i;:::-;-1:-1:-1;;;;;13042:17:17;;;;;;:10;:17;;;;;13060:6;:9;;13042:17;;;13067:1;;13060:9;;;;;;;;;;;;;;;;;;;;;:19;13042:38;;;;;;;;;;;;:131;;;;;;;-1:-1:-1;;;13042:131:17;-1:-1:-1;;;;;13042:131:17;;;;;;;;;13201:4;;;-1:-1:-1;;;13201:4:17;;;;13200:5;13192:14;;;;;;13225:4;:11;;-1:-1:-1;;;;;;13225:11:17;-1:-1:-1;;;13225:11:17;;;-1:-1:-1;;;;;13258:19:17;;13255:1629;;;13344:41;13350:5;13357:27;13377:6;13357:19;:27::i;:::-;13344:5;:41::i;:::-;13463:6;13470:1;13463:9;;;;;;;;;;;;;;;;;;:19;;;-1:-1:-1;;;;;13463:28:17;13460:293;;;13535:5;-1:-1:-1;;;;;13519:32:17;:60;13552:26;13572:5;13552:19;:26::i;:::-;13519:60;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13519:60:17;13460:293;;;13662:6;13669:1;13662:9;;;;;;;;;;;;;;;;:22;:9;;;;;:22;;-1:-1:-1;;;;;13662:22:17;13656:38;13695:5;13702:26;13722:5;13702:19;:26::i;:::-;13656:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13656:73:17;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13656:73:17;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;13656:73:17;;;;;;;;;;13460:293;13831:5;-1:-1:-1;;;;;13818:68:17;;13838:6;13845:1;13838:9;;;;;;;;;;;;;;;;;;:19;;;13859:26;13879:5;13859:19;:26::i;:::-;13818:68;;;;;;;;;;;;;;;;13255:1629;;;13932:9;-1:-1:-1;;;;;13932:21:17;13929:955;;;14106:50;14121:6;14129:5;14136:6;14143:1;14136:9;;;;;;;;;;;;;;;;;;:19;;;14106:14;:50::i;:::-;14088:68;;-1:-1:-1;14088:68:17;-1:-1:-1;14220:41:17;14226:5;14233:27;14088:68;14233:19;:27::i;14220:41::-;14284:44;14290:8;14300:27;14320:6;14300:19;:27::i;:::-;14284:5;:44::i;:::-;-1:-1:-1;;;;;14467:20:17;;;;;;:10;:20;;;;;14488:6;:9;;14450:80;;14467:20;14488:6;14495:1;;14488:9;;;;;;;;;;;;;;;;;;;;;:19;14467:41;;;;;;;;;;;;:55;;;14524:5;14450:16;:80::i;:::-;-1:-1:-1;;;;;14392:20:17;;;;;;:10;:20;;;;;14413:6;:9;;14392:20;;;14420:1;;14413:9;;;;;;;;;;;;;;;;:19;;;14392:41;;;;;;;;;;;:55;;;:138;;;;;-1:-1:-1;;;;;14392:138:17;;;;;;;;;;;;14657:80;14674:10;:20;14685:8;-1:-1:-1;;;;;14674:20:17;-1:-1:-1;;;;;14674:20:17;;;;;;;;;;;;:41;14695:6;14702:1;14695:9;;;;;;;;;;;;;;;;;;;;;;;:19;14674:41;;;;;;;;;;;;:54;-1:-1:-1;;;14674:54:17;;;;14730:6;14657:16;:80::i;:::-;-1:-1:-1;;;;;14600:20:17;;;;;;:10;:20;;;;;14621:6;:9;;14600:20;;;14628:1;;14621:9;;;;;;;;;;;;;;;;:19;;;14600:41;;;;;;;;;;;:54;;;:137;;;;;-1:-1:-1;;;;;14600:137:17;;;;;;;;;;;;14798:5;-1:-1:-1;;;;;14785:79:17;;14805:8;14815:6;14822:1;14815:9;;;;;;;;;;;;;;;;;;:19;;;14836:27;14856:6;14836:19;:27::i;:::-;14785:79;;;;;;;;;;;;;;;;;13929:955;-1:-1:-1;14962:4:17;:12;;-1:-1:-1;;;;;;14962:12:17;;;14911:1;;-1:-1:-1;14939:4:17;;-1:-1:-1;12605:5081:17;;;-1:-1:-1;;;;;15140:17:17;;15196:1;15140:17;;;:10;:17;;;;;15158:6;:9;;15123:72;;15140:17;15196:1;;15165;;15158:9;;;;;;;;;;;;;;;;;;;;;:19;15140:38;;;;;;;;;;;;:51;-1:-1:-1;;;15140:51:17;;;;;15123:16;:72::i;:::-;:74;;;15120:2566;;;15226:4;;-1:-1:-1;;;15226:4:17;;;;15225:5;15217:14;;;;;;15250:4;:11;;-1:-1:-1;;;;;;15250:11:17;-1:-1:-1;;;15250:11:17;;;-1:-1:-1;;;;;15283:19:17;;15280:2018;;;15369:86;15375:5;15382:72;15402:10;:17;15413:5;-1:-1:-1;;;;;15402:17:17;-1:-1:-1;;;;;15402:17:17;;;;;;;;;;;;:38;15420:6;15427:1;15420:9;;;;;;;;;;;;;;;;;;;;;;;:19;15402:38;;;;;;;;;;;;:51;-1:-1:-1;;;15402:51:17;;;;15382:19;:72::i;15369:86::-;-1:-1:-1;;;;;15590:17:17;;15574:13;15590:17;;;:10;:17;;;;;15608:6;:9;;15574:13;;15608:6;15615:1;;15608:9;;;;;;;;;;;;;;;;:19;;;15590:38;;;;;;;;;;;:52;;;;;;;;;;;;15574:68;;15780:6;15787:1;15780:9;;;;;;;;;;;;;;;;;;:19;;;-1:-1:-1;;;;;15780:28:17;15777:297;;;15856:5;-1:-1:-1;;;;;15840:32:17;:60;15873:26;15893:5;15873:19;:26::i;:::-;15840:60;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15840:60:17;15777:297;;;15983:6;15990:1;15983:9;;;;;;;;;;;;;;;;:22;:9;;;;;:22;;-1:-1:-1;;;;;15983:22:17;15977:38;16016:5;16023:26;16043:5;16023:19;:26::i;:::-;15977:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15977:73:17;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15977:73:17;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;15977:73:17;;;;;;;;;;15777:297;16172:5;-1:-1:-1;;;;;16159:68:17;;16179:6;16186:1;16179:9;;;;;;;;;;;;;;;;;;:19;;;16200:26;16220:5;16200:19;:26::i;:::-;16159:68;;;;;;;;;;;;;;;;15280:2018;;;;16273:9;-1:-1:-1;;;;;16273:21:17;16270:1028;;;16430:11;16443:13;16460:142;16475:10;:17;16486:5;-1:-1:-1;;;;;16475:17:17;-1:-1:-1;;;;;16475:17:17;;;;;;;;;;;;:38;16493:6;16500:1;16493:9;;;;;;;;;;;;;;;;;;:19;;;16475:38;;;;;;;;;;;:51;;;;;;;;;;;;16528:10;:17;16539:5;-1:-1:-1;;;;;16528:17:17;-1:-1:-1;;;;;16528:17:17;;;;;;;;;;;;:38;16546:6;16553:1;16546:9;;;;;;;;;;;;;;;;;;:19;;;16528:38;;;;;;;;;;;:52;;;;;;;;;;;;16582:6;16589:1;16582:9;;;;;;;16460:142;16429:173;;;;16666:38;16672:5;16679:24;16699:3;16679:19;:24::i;16666:38::-;16727:41;16733:8;16743:24;16763:3;16743:19;:24::i;16727:41::-;-1:-1:-1;;;;;16907:20:17;;;;;;:10;:20;;;;;16928:6;:9;;16890:80;;16907:20;16928:6;16935:1;;16928:9;;;;;16890:80;-1:-1:-1;;;;;16832:20:17;;;;;;:10;:20;;;;;16853:6;:9;;16832:20;;;16860:1;;16853:9;;;;;;;;;;;;;;;;:19;;;16832:41;;;;;;;;;;;:55;;;:138;;;;;-1:-1:-1;;;;;16832:138:17;;;;;;;;;;;;17097:77;17114:10;:20;17125:8;-1:-1:-1;;;;;17114:20:17;-1:-1:-1;;;;;17114:20:17;;;;;;;;;;;;:41;17135:6;17142:1;17135:9;;;;;;;;;;;;;;;;;;;;;;;:19;17114:41;;;;;;;;;;;;:54;-1:-1:-1;;;17114:54:17;;;;17170:3;17097:16;:77::i;:::-;-1:-1:-1;;;;;17040:20:17;;;;;;:10;:20;;;;;17061:6;:9;;17040:20;;;17068:1;;17061:9;;;;;;;;;;;;;;;;:19;;;17040:41;;;;;;;;;;;:54;;;:134;;;;;-1:-1:-1;;;;;17040:134:17;;;;;;;;;;;;17215:5;-1:-1:-1;;;;;17202:76:17;;17222:8;17232:6;17239:1;17232:9;;;;;;;;;;;;;;;;;;:19;;;17253:24;17273:3;17253:19;:24::i;:::-;17202:76;;;;;;;;;;;;;;;;;16270:1028;;;17393:77;17410:6;17418:10;:17;17429:5;-1:-1:-1;;;;;17418:17:17;-1:-1:-1;;;;;17418:17:17;;;;;;;;;;;;:38;17436:6;17443:1;17436:9;;;;;;;;;;;;;;;;;;;;;;;:19;17418:38;;;;;;;;;;;;:51;-1:-1:-1;;;17418:51:17;;;;17393:16;:77::i;:::-;-1:-1:-1;;;;;17570:17:17;;;;;;:10;:17;;;;;17588:6;:9;;17384:86;;-1:-1:-1;17570:17:17;;17595:1;;17588:9;;;;;;;;;;;;;;;;;;;;;:19;17570:38;;;;;;;;;;;;17563:45;17658:4;:12;;-1:-1:-1;;;;;;17658:12:17;;;17563:45;;-1:-1:-1;15120:2566:17;12459:3;;12395:5302;;;-1:-1:-1;17714:5:17;-1:-1:-1;12241:5486:17;;;;;;;:::o;5305:464:3:-;-1:-1:-1;;;;;5402:20:3;;5394:70;;;;-1:-1:-1;;;;;5394:70:3;;;;;;;;;-1:-1:-1;;;;;5482:23:3;;5474:71;;;;-1:-1:-1;;;;;5474:71:3;;;;;;;;;5576;5598:6;5576:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5576:17:3;;;;;;:9;:17;;;;;;;:71;;:21;:71;:::i;:::-;-1:-1:-1;;;;;5556:17:3;;;;;;;:9;:17;;;;;;:91;;;;5680:20;;;;;;;:32;;5705:6;5680:32;:24;:32;:::i;:::-;-1:-1:-1;;;;;5657:20:3;;;;;;;:9;:20;;;;;;;:55;;;;5727:35;;;;;;;;;;5755:6;;5727:35;;834:176:1;892:7;923:5;;;946:6;;;;938:46;;;;-1:-1:-1;;;;;938:46:1;;;;;;;;491:88:27;531:6;:14;;-1:-1:-1;;531:14:27;;;561:10;;;;540:5;;561:10;491:88::o;1409:498:5:-;1820:4;1864:17;1895:7;1409:498;:::o;19578:133:15:-;19637:7;19659:47;19664:1;-1:-1:-1;;;19667:38:15;;19659:3;:47::i;298:83:27:-;336:6;:13;;-1:-1:-1;;336:13:27;345:4;336:13;;;365:8;;;;336:6;;365:8;298:83::o;6039:302:3:-;-1:-1:-1;;;;;6114:21:3;;6106:65;;;;-1:-1:-1;;;;;6106:65:3;;;;;;;;;6197:12;;:24;;6214:6;6197:24;:16;:24;:::i;:::-;6182:12;:39;-1:-1:-1;;;;;6252:18:3;;;;;;:9;:18;;;;;;:30;;6275:6;6252:30;:22;:30;:::i;:::-;-1:-1:-1;;;;;6231:18:3;;;;;;:9;:18;;;;;;:51;;;;6297:37;;6231:18;;;6297:37;;;;6327:6;;6297:37;;;;;;;;;;6039:302;;:::o;1732:187:1:-;1818:7;1853:12;1845:6;;;;1837:29;;;;-1:-1:-1;;;;;1837:29:1;;;;;;;;;;-1:-1:-1;;;1888:5:1;;;1732:187::o;3781:543:15:-;3832:7;3887:6;-1:-1:-1;;;;;3866:11:15;;;;:18;3881:3;3866:18;:27;3915:5;3904:16;;3900:30;;;3929:1;3922:8;;;;;3900:30;-1:-1:-1;;;3968:1:15;3959:11;;-1:-1:-1;;;;;3959:48:15;;3950:58;;;;;;4048:5;4036:8;:17;;4027:27;;;;;;-1:-1:-1;;;;;;;;4098:11:15;;;;4089:54;:94;4205:5;4194:16;;4190:109;;;4223:5;:16;;;4212:27;4190:109;;;4265:5;4254:8;:16;4250:49;;;-1:-1:-1;;4283:16:15;;4272:27;4313:6;3781:543;-1:-1:-1;;;3781:543:15:o;1274:134:1:-;1332:7;1358:43;1362:1;1365;1358:43;;;;;;;;;;;;;;;;;:3;:43::i;2240:225:2:-;-1:-1:-1;;;;;2313:22:2;;2305:73;;;;-1:-1:-1;;;;;2305:73:2;;;;;;;;;2414:6;;2393:38;;-1:-1:-1;;;;;2393:38:2;;;;2414:6;;2393:38;;2414:6;;2393:38;2441:6;:17;;-1:-1:-1;;;;;;2441:17:2;-1:-1:-1;;;;;2441:17:2;;;;;;;;;;2240:225::o;23988:2628:15:-;24047:7;24103:6;-1:-1:-1;;;;;24082:11:15;;;;:18;;24097:3;24082:18;;;:27;;;24135:11;;;;:18;;;;;;:27;;;24173:19;;24169:2443;;;24206:9;24219:6;24206:19;24202:97;;;-1:-1:-1;;;;;;24234:3:15;-1:-1:-1;24227:10:15;;-1:-1:-1;24227:10:15;24202:97;-1:-1:-1;;;;;;24261:38:15;;24257:42;;24250:49;;24169:2443;24316:9;24329:6;24316:19;24312:2300;;;-1:-1:-1;;;;;;;24349:38:15;;:43;24345:139;;-1:-1:-1;;;;;;24401:3:15;-1:-1:-1;24394:10:15;;-1:-1:-1;24394:10:15;24345:139;-1:-1:-1;;;24441:5:15;;;-1:-1:-1;;;24440:44:15;24417:67;;24312:2300;-1:-1:-1;;;;;;;24501:38:15;;24497:2115;;-1:-1:-1;;;;;;;24558:38:15;;24554:143;;-1:-1:-1;;;;;;24610:3:15;-1:-1:-1;24603:10:15;;-1:-1:-1;24603:10:15;24554:143;-1:-1:-1;;;24654:5:15;;;-1:-1:-1;;;24653:44:15;-1:-1:-1;;;;;24633:64:15;24626:71;;24497:2115;-1:-1:-1;;;;;24739:11:15;;;;:44;24795:14;24791:91;;24823:1;24811:13;;24791:91;;;-1:-1:-1;;;24837:45:15;24791:91;-1:-1:-1;;;;;24912:11:15;;;;:44;24968:14;24964:309;;24998:15;;24994:174;;25027:10;25046:16;25051:10;25046:3;:16::i;:::-;25120:1;;-1:-1:-1;25040:3:15;:22;25133:24;;;-1:-1:-1;;25133:24:15;;25075:20;;;;;-1:-1:-1;24994:174:15;24964:309;;;-1:-1:-1;;;25212:44:15;25261:3;25211:53;24964:309;25307:10;25294;:23;;;;;;;-1:-1:-1;25329:15:15;25325:128;;-1:-1:-1;;;25362:5:15;;;25361:44;:92;;591:34;25361:92;;;-1:-1:-1;;;25354:99:15;;;;;;;;25325:128;-1:-1:-1;;;25470:10:15;:44;;25462:53;;;;25524:11;-1:-1:-1;;;25546:10:15;:45;;:194;;-1:-1:-1;;;25621:10:15;:45;;:119;;-1:-1:-1;;;25683:10:15;:45;;:57;;25737:3;25683:57;;;25731:3;25683:57;25621:119;;;25669:3;25621:119;25546:194;;;;;25594:16;25599:10;25594:3;:16::i;:::-;25524:216;;25771:9;25783:5;25771:17;25765:3;25753:9;:15;:35;25749:725;;;25824:6;25812:18;;25853:1;25840:14;;25749:725;;;25900:9;25885:3;25873:9;:15;25891:5;25873:23;:36;25869:605;;;25946:1;25934:13;;25970:1;25957:14;;25869:605;;;26017:9;26002:3;25990:9;:15;26008:5;25990:23;:36;25986:488;;;26075:9;26055;26067:5;26055:17;:29;26051:193;;;26131:9;26111;26123:5;26111:17;:29;26096:44;;;;;26051:193;;;26179:9;26159;26171:5;26159:17;:29;26155:89;;;26239:5;26227:9;26215;:21;:29;26200:44;;;;;26155:89;26267:1;26255:13;;25986:488;;;26313:3;26307;:9;26303:49;;;26349:3;26343;:9;26328:24;;;;;26303:49;-1:-1:-1;;;;;26363:44:15;;;;26456:9;26442:3;26430:9;:15;26448:5;26430:23;:35;26418:47;;25986:488;26593:10;26587:3;26574:9;:16;;26521:1;26517;:5;-1:-1:-1;;;26516:44:15;;;26507:54;;-1:-1:-1;;;;;26507:83:15;;:96;26489:116;;26482:123;;;;;;;;;20389:2342;20448:7;20504:6;-1:-1:-1;;;;;20483:11:15;;;;:18;;20498:3;20483:18;;;:27;;;20536:11;;;;:18;;;;;;:27;;;20574:19;;20570:2157;;;20607:9;20620:6;20607:19;20603:354;;;-1:-1:-1;;;;;;20642:6:15;;;;;;;20638:162;;;-1:-1:-1;;;;;;20661:38:15;;20657:42;;20650:49;;20638:162;-1:-1:-1;;;;;;;;;20718:5:15;;;:43;;20714:86;;;-1:-1:-1;;;20770:5:15;;;20763:12;;20603:354;-1:-1:-1;;;;;;;20829:38:15;;20825:123;;-1:-1:-1;;;;;;20881:3:15;-1:-1:-1;20874:10:15;;-1:-1:-1;20874:10:15;20570:2157;20973:9;20986:6;20973:19;20969:1758;;;-1:-1:-1;;;;;;;21008:38:15;;21004:123;;-1:-1:-1;;;;;;21060:3:15;-1:-1:-1;21053:10:15;;-1:-1:-1;21053:10:15;21004:123;-1:-1:-1;;;;;;21089:38:15;;21085:42;;21078:49;;20969:1758;-1:-1:-1;;;;;21169:11:15;;;;:44;21225:14;21221:91;;21253:1;21241:13;;21221:91;;;-1:-1:-1;;;21267:45:15;21221:91;-1:-1:-1;;;;;21342:11:15;;;;:44;21398:14;21394:91;;21426:1;21414:13;;21394:91;;;-1:-1:-1;;;21440:45:15;21394:91;21494:24;;;;21530:15;21526:128;;-1:-1:-1;;;21563:5:15;;;21562:44;:92;;591:34;21562:92;;21526:128;21663:22;;;;21694:11;-1:-1:-1;;;21716:73:15;;;:196;;-1:-1:-1;;;21806:10:15;:73;;:106;;21896:16;21901:10;21896:3;:16::i;:::-;21806:106;;;21882:3;21806:106;21716:196;;;21792:3;21716:196;21694:218;;21943:5;21937:3;21925:9;:15;:23;21921:668;;;21985:1;21973:13;;22009:1;21996:14;;21921:668;;;22047:5;22041:3;22029:9;:15;:23;22025:564;;;22093:5;22081:9;:17;22077:145;;;22133:9;22125:5;:17;22110:32;;;;;22077:145;;;22173:5;22161:9;:17;22157:65;;;22217:5;22205:9;:17;22190:32;;;;;22157:65;22244:1;22232:13;;22025:564;;;22282:5;22276:3;22264:9;:15;:23;22260:329;;;22311:6;22299:18;;22340:1;22327:14;;22260:329;;;22376:3;22370;:9;22366:113;;;22412:3;22406;:9;22391:24;;;;;22366:113;;;22440:3;22434;:9;22430:49;;;22476:3;22470;:9;22455:24;;;;;22430:49;-1:-1:-1;;;;;22490:44:15;;;;22575:5;22569:3;22557:9;:15;:23;22545:35;;22260:329;22708:10;22702:3;22689:9;:16;;22636:1;22632;:5;-1:-1:-1;;;22631:44:15;;;22622:54;;-1:-1:-1;;;;;22622:83:15;;:96;22604:116;;22597:123;;;;;;;;;6660:342:3;-1:-1:-1;;;;;6735:21:3;;6727:67;;;;-1:-1:-1;;;;;6727:67:3;;;;;;;;;6826:68;6849:6;6826:68;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6826:18:3;;;;;;:9;:18;;;;;;;:68;;:22;:68;:::i;:::-;-1:-1:-1;;;;;6805:18:3;;;;;;:9;:18;;;;;:89;6919:12;;:24;;6936:6;6919:24;:16;:24;:::i;:::-;6904:12;:39;6958:37;;6984:1;;-1:-1:-1;;;;;6958:37:3;;;;;;;6988:6;;6958:37;;17735:788:17;17890:5;;:26;;-1:-1:-1;;;;;17890:26:17;;17825:7;;;;;;17868:49;;-1:-1:-1;;;;;17890:5:17;;;;:12;;:26;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17890:26:17;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17890:26:17;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;17890:26:17;;;;;;;;17868:49;17853:64;-1:-1:-1;17931:24:17;17853:64;17953:1;17931:16;:24::i;:::-;:27;;17957:1;17931:27;17928:555;;;17990:5;;:22;;;-1:-1:-1;;;;;17990:22:17;;;;17974:13;;-1:-1:-1;;;;;17990:5:17;;:20;;:22;;;;;;;;;;;;;;:5;:22;;;5:2:-1;;;;30:1;27;20:12;5:2;17990:22:17;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17990:22:17;;;;;;;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;17990:22:17;;;;;;;;;17974:38;-1:-1:-1;;;;;;18030:19:17;;;18027:445;;18069:68;18078:5;18085:51;18105:30;18122:4;18128:6;18105:16;:30::i;:::-;18085:19;:51::i;18069:68::-;;18165:56;18182:6;18190:30;18207:4;18213:6;18190:16;:30::i;18165:56::-;-1:-1:-1;;;;;18301:17:17;;;;;;:10;:17;;;;;;;;:27;;;;;;;;:41;18156:65;;-1:-1:-1;18284:90:17;;18301:41;;18344:29;18361:4;18367:5;18344:16;:29::i;18284:90::-;-1:-1:-1;;;;;18240:17:17;;;;;;:10;:17;;;;;;;;:27;;;;;;;;:134;;-1:-1:-1;;;;;;18240:134:17;;;;;;;;;;;;18402:54;18419:5;18426:29;18443:4;18419:5;18426:16;:29::i;18402:54::-;18394:62;;18027:445;17928:555;;-1:-1:-1;18501:6:17;;18509:5;;-1:-1:-1;;;17735:788:17:o;706:17966::-;;;;;;;;;;-1:-1:-1;706:17966:17;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;706:17966:17;;;-1:-1:-1;706:17966:17;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;5:118:-1;;72:46;110:6;97:20;72:46;;130:122;;208:39;239:6;233:13;208:39;;259:116;;334:36;362:6;356:13;334:36;;382:118;;449:46;487:6;474:20;449:46;;507:122;;585:39;616:6;610:13;585:39;;637:444;;750:3;743:4;735:6;731:17;727:27;717:2;;768:1;765;758:12;717:2;798:6;792:13;820:65;835:49;877:6;835:49;;;820:65;;;811:74;;905:6;898:5;891:21;941:4;933:6;929:17;974:4;967:5;963:16;1009:3;1000:6;995:3;991:16;988:25;985:2;;;1026:1;1023;1016:12;985:2;1036:39;1068:6;1063:3;1058;1036:39;;;710:371;;;;;;;;1343:114;;1408:44;1444:6;1431:20;1408:44;;1464:241;;1568:2;1556:9;1547:7;1543:23;1539:32;1536:2;;;1584:1;1581;1574:12;1536:2;1619:1;1636:53;1681:7;1661:9;1636:53;;1712:263;;1827:2;1815:9;1806:7;1802:23;1798:32;1795:2;;;1843:1;1840;1833:12;1795:2;1878:1;1895:64;1951:7;1931:9;1895:64;;1982:366;;;2103:2;2091:9;2082:7;2078:23;2074:32;2071:2;;;2119:1;2116;2109:12;2071:2;2154:1;2171:53;2216:7;2196:9;2171:53;;;2161:63;;2133:97;2261:2;2279:53;2324:7;2315:6;2304:9;2300:22;2279:53;;;2269:63;;2240:98;2065:283;;;;;;2355:491;;;;2493:2;2481:9;2472:7;2468:23;2464:32;2461:2;;;2509:1;2506;2499:12;2461:2;2544:1;2561:53;2606:7;2586:9;2561:53;;;2551:63;;2523:97;2651:2;2669:53;2714:7;2705:6;2694:9;2690:22;2669:53;;;2659:63;;2630:98;2759:2;2777:53;2822:7;2813:6;2802:9;2798:22;2777:53;;;2767:63;;2738:98;2455:391;;;;;;2853:366;;;2974:2;2962:9;2953:7;2949:23;2945:32;2942:2;;;2990:1;2987;2980:12;2942:2;3025:1;3042:53;3087:7;3067:9;3042:53;;;3032:63;;3004:97;3132:2;3150:53;3195:7;3186:6;3175:9;3171:22;3150:53;;3226:1117;;;;;;;;;3447:3;3435:9;3426:7;3422:23;3418:33;3415:2;;;3464:1;3461;3454:12;3415:2;3499:1;3516:53;3561:7;3541:9;3516:53;;;3506:63;;3478:97;3606:2;3624:53;3669:7;3660:6;3649:9;3645:22;3624:53;;;3614:63;;3585:98;3714:2;3732:53;3777:7;3768:6;3757:9;3753:22;3732:53;;;3722:63;;3693:98;3822:2;3840:53;3885:7;3876:6;3865:9;3861:22;3840:53;;;3830:63;;3801:98;3930:3;3949:53;3994:7;3985:6;3974:9;3970:22;3949:53;;;3939:63;;3909:99;4039:3;4058:51;4101:7;4092:6;4081:9;4077:22;4058:51;;;4048:61;;4018:97;4146:3;4165:53;4210:7;4201:6;4190:9;4186:22;4165:53;;;4155:63;;4125:99;4255:3;4274:53;4319:7;4310:6;4299:9;4295:22;4274:53;;;4264:63;;4234:99;3409:934;;;;;;;;;;;;4723:491;;;;4861:2;4849:9;4840:7;4836:23;4832:32;4829:2;;;4877:1;4874;4867:12;4829:2;4912:1;4929:53;4974:7;4954:9;4929:53;;;4919:63;;4891:97;5019:2;5037:53;5082:7;5073:6;5062:9;5058:22;5037:53;;;5027:63;;4998:98;5127:2;5145:53;5190:7;5181:6;5170:9;5166:22;5145:53;;5221:1117;;;;;;;;;5442:3;5430:9;5421:7;5417:23;5413:33;5410:2;;;5459:1;5456;5449:12;5410:2;5494:1;5511:53;5556:7;5536:9;5511:53;;;5501:63;;5473:97;5601:2;5619:53;5664:7;5655:6;5644:9;5640:22;5619:53;;;5609:63;;5580:98;5709:2;5727:53;5772:7;5763:6;5752:9;5748:22;5727:53;;6345:257;;6457:2;6445:9;6436:7;6432:23;6428:32;6425:2;;;6473:1;6470;6463:12;6425:2;6508:1;6525:61;6578:7;6558:9;6525:61;;6609:263;;6724:2;6712:9;6703:7;6699:23;6695:32;6692:2;;;6740:1;6737;6730:12;6692:2;6775:1;6792:64;6848:7;6828:9;6792:64;;6879:743;;;;;;7051:3;7039:9;7030:7;7026:23;7022:33;7019:2;;;7068:1;7065;7058:12;7019:2;7103:1;7120:53;7165:7;7145:9;7120:53;;;7110:63;;7082:97;7210:2;7228:53;7273:7;7264:6;7253:9;7249:22;7228:53;;;7218:63;;7189:98;7318:2;7336:53;7381:7;7372:6;7361:9;7357:22;7336:53;;;7326:63;;7297:98;7426:2;7444:53;7489:7;7480:6;7469:9;7465:22;7444:53;;;7434:63;;7405:98;7534:3;7553:53;7598:7;7589:6;7578:9;7574:22;7553:53;;;7543:63;;7513:99;7013:609;;;;;;;;;7629:362;;7754:2;7742:9;7733:7;7729:23;7725:32;7722:2;;;7770:1;7767;7760:12;7722:2;7805:24;;7849:18;7838:30;;7835:2;;;7881:1;7878;7871:12;7835:2;7901:74;7967:7;7958:6;7947:9;7943:22;7901:74;;8268:991;;;;;;;;8472:3;8460:9;8451:7;8447:23;8443:33;8440:2;;;8489:1;8486;8479:12;8440:2;8524:1;8541:53;8586:7;8566:9;8541:53;;;8531:63;;8503:97;8631:2;8649:53;8694:7;8685:6;8674:9;8670:22;8649:53;;;8639:63;;8610:98;8739:2;8757:53;8802:7;8793:6;8782:9;8778:22;8757:53;;;8747:63;;8718:98;8847:2;8865:53;8910:7;8901:6;8890:9;8886:22;8865:53;;;8855:63;;8826:98;8955:3;8974:51;9017:7;9008:6;8997:9;8993:22;8974:51;;;8964:61;;8934:97;9062:3;9081:53;9126:7;9117:6;9106:9;9102:22;9081:53;;;9071:63;;9041:99;9171:3;9190:53;9235:7;9226:6;9215:9;9211:22;9190:53;;;9180:63;;9150:99;8434:825;;;;;;;;;;;9266:1117;;;;;;;;;9487:3;9475:9;9466:7;9462:23;9458:33;9455:2;;;9504:1;9501;9494:12;9455:2;9539:1;9556:53;9601:7;9581:9;9556:53;;;9546:63;;9518:97;9646:2;9664:53;9709:7;9700:6;9689:9;9685:22;9664:53;;10391:257;;10518:90;10604:3;10596:6;10518:90;;;-1:-1;;10637:4;10628:14;;10511:137;10656:142;10747:45;10786:5;10747:45;;;10742:3;10735:58;10729:69;;;10805:110;10878:31;10903:5;10878:31;;11102:781;;11287:74;11355:5;11287:74;;;11374:106;11473:6;11468:3;11374:106;;;11367:113;;11500:76;11570:5;11500:76;;;11597:1;11582:279;11607:6;11604:1;11601:13;11582:279;;;11654:103;11753:3;11744:6;11738:13;11654:103;;;11647:110;;11774:80;11847:6;11774:80;;;11764:90;-1:-1;11629:1;11622:9;11582:279;;;-1:-1;11874:3;;11266:617;-1:-1;;;;11266:617;11891:111;11968:28;11990:5;11968:28;;12009:110;12082:31;12107:5;12082:31;;12388:159;12489:52;12509:31;12534:5;12509:31;;;12489:52;;12554:150;12653:45;12692:5;12653:45;;12868:347;;12980:39;13013:5;12980:39;;;13031:71;13095:6;13090:3;13031:71;;;13024:78;;13107:52;13152:6;13147:3;13140:4;13133:5;13129:16;13107:52;;;13180:29;13202:6;13180:29;;;13171:39;;;;12960:255;-1:-1;;;12960:255;13569:465;;13729:67;13793:2;13788:3;13729:67;;;13829:66;13809:87;;-1:-1;;;;;13925:2;13916:12;;13909:88;14025:2;14016:12;;13715:319;-1:-1;;13715:319;14043:221;-1:-1;;;;;14179:79;;14172:92;14273:400;;14451:85;14533:2;14528:3;14451:85;;;14569:66;14549:87;;14664:2;14655:12;;14437:236;-1:-1;;14437:236;14682:465;;14842:67;14906:2;14901:3;14842:67;;;14942:66;14922:87;;-1:-1;;;;;15038:2;15029:12;;15022:88;15138:2;15129:12;;14828:319;-1:-1;;14828:319;15156:465;;15316:67;15380:2;15375:3;15316:67;;;15416:66;15396:87;;-1:-1;;;;;15512:2;15503:12;;15496:88;15612:2;15603:12;;15302:319;-1:-1;;15302:319;15630:364;;15790:67;15854:2;15849:3;15790:67;;;15890:66;15870:87;;15985:2;15976:12;;15776:218;-1:-1;;15776:218;16003:221;-1:-1;;;;;16139:79;;16132:92;16233:221;-1:-1;;;;;16369:79;;16362:92;16463:364;;16623:67;16687:2;16682:3;16623:67;;;16723:66;16703:87;;16818:2;16809:12;;16609:218;-1:-1;;16609:218;16836:364;;16996:67;17060:2;17055:3;16996:67;;;17096:66;17076:87;;17191:2;17182:12;;16982:218;-1:-1;;16982:218;17209:465;;17369:67;17433:2;17428:3;17369:67;;;17469:66;17449:87;;17570:66;17565:2;17556:12;;17549:88;17665:2;17656:12;;17355:319;-1:-1;;17355:319;17683:363;;17843:66;17907:1;17902:3;17843:66;;;-1:-1;;;;;17922:87;;18037:2;18028:12;;17829:217;-1:-1;;17829:217;18055:465;;18215:67;18279:2;18274:3;18215:67;;;18315:66;18295:87;;-1:-1;;;;;18411:2;18402:12;;18395:88;18511:2;18502:12;;18201:319;-1:-1;;18201:319;18529:465;;18689:67;18753:2;18748:3;18689:67;;;18789:66;18769:87;;-1:-1;;;;;18885:2;18876:12;;18869:88;18985:2;18976:12;;18675:319;-1:-1;;18675:319;19003:465;;19163:67;19227:2;19222:3;19163:67;;;19263:66;19243:87;;-1:-1;;;;;19359:2;19350:12;;19343:88;19459:2;19450:12;;19149:319;-1:-1;;19149:319;19477:364;;19637:67;19701:2;19696:3;19637:67;;;19737:66;19717:87;;19832:2;19823:12;;19623:218;-1:-1;;19623:218;19896:467;20093:22;;20023:4;20014:14;;;20121:61;20018:3;20093:22;20121:61;;;20043:145;20268:4;20261:5;20257:16;20251:23;20280:62;20336:4;20331:3;20327:14;20314:11;20280:62;;20497:114;20576:29;20599:5;20576:29;;20618:244;;20737:75;20808:3;20799:6;20737:75;;;-1:-1;20834:2;20825:12;;20725:137;-1:-1;20725:137;20869:511;;21096:148;21240:3;21096:148;;;21089:155;;21255:75;21326:3;21317:6;21255:75;;21387:213;21505:2;21490:18;;21519:71;21494:9;21563:6;21519:71;;21607:467;21797:2;21782:18;;21811:79;21786:9;21863:6;21811:79;;;21901:80;21977:2;21966:9;21962:18;21953:6;21901:80;;;21992:72;22060:2;22049:9;22045:18;22036:6;21992:72;;22081:435;22255:2;22240:18;;22269:71;22244:9;22313:6;22269:71;;;22351:72;22419:2;22408:9;22404:18;22395:6;22351:72;;22523:324;22669:2;22654:18;;22683:71;22658:9;22727:6;22683:71;;;22765:72;22833:2;22822:9;22818:18;22809:6;22765:72;;22854:441;23062:2;23076:47;;;23047:18;;23137:148;23047:18;23271:6;23137:148;;23302:201;23414:2;23399:18;;23428:65;23403:9;23466:6;23428:65;;23510:213;23628:2;23613:18;;23642:71;23617:9;23686:6;23642:71;;23730:499;23928:2;23913:18;;23942:79;23917:9;23994:6;23942:79;;;24032:88;24116:2;24105:9;24101:18;24092:6;24032:88;;;24131;24215:2;24204:9;24200:18;24191:6;24131:88;;24236:518;24455:2;24440:18;;24469:71;24444:9;24513:6;24469:71;;;24588:9;24582:4;24578:20;24573:2;24562:9;24558:18;24551:48;24613:131;24739:4;24613:131;;24761:324;24907:2;24892:18;;24921:71;24896:9;24965:6;24921:71;;25092:539;25290:3;25275:19;;25305:71;25279:9;25349:6;25305:71;;;25387:68;25451:2;25440:9;25436:18;25427:6;25387:68;;;25466:72;25534:2;25523:9;25519:18;25510:6;25466:72;;;25549;25617:2;25606:9;25602:18;25593:6;25549:72;;;25261:370;;;;;;;;25638:293;25772:2;25786:47;;;25757:18;;25847:74;25757:18;25907:6;25847:74;;26246:407;26437:2;26451:47;;;26422:18;;26512:131;26422:18;26512:131;;26660:450;26869:2;26854:18;;26883:134;26858:9;26883:134;;;27028:72;27096:2;27085:9;27081:18;27072:6;27028:72;;27117:407;27308:2;27322:47;;;27293:18;;27383:131;27293:18;27383:131;;27531:407;27722:2;27736:47;;;27707:18;;27797:131;27707:18;27797:131;;27945:407;28136:2;28150:47;;;28121:18;;28211:131;28121:18;28211:131;;28359:450;28568:2;28553:18;;28582:134;28557:9;28582:134;;28816:339;28997:2;28982:18;;29011:134;28986:9;29011:134;;29162:407;29353:2;29367:47;;;29338:18;;29428:131;29338:18;29428:131;;29576:407;29767:2;29781:47;;;29752:18;;29842:131;29752:18;29842:131;;29990:407;30181:2;30195:47;;;30166:18;;30256:131;30166:18;30256:131;;30404:407;30595:2;30609:47;;;30580:18;;30670:131;30580:18;30670:131;;30818:407;31009:2;31023:47;;;30994:18;;31084:131;30994:18;31084:131;;31232:407;31423:2;31437:47;;;31408:18;;31498:131;31408:18;31498:131;;31646:407;31837:2;31851:47;;;31822:18;;31912:131;31822:18;31912:131;;32280:256;32342:2;32336:9;32368:17;;;32443:18;32428:34;;32464:22;;;32425:62;32422:2;;;32500:1;32497;32490:12;32422:2;32516;32509:22;32320:216;;-1:-1;32320:216;32543:259;;32687:18;32679:6;32676:30;32673:2;;;32719:1;32716;32709:12;32673:2;-1:-1;32792:4;32763;32740:17;;;;-1:-1;;32736:33;32782:15;;32610:192;32811:141;32940:4;32928:17;;32909:43;32961:127;33071:12;;33055:33;33441:198;33579:19;;;33628:4;33619:14;;33572:67;33973:105;;34042:31;34067:5;34042:31;;34085:92;34158:13;34151:21;;34134:43;34270:128;-1:-1;;;;;34339:54;;34322:76;34491:88;34569:4;34558:16;;34541:38;35199:129;;35286:37;35317:5;35286:37;;35335:123;;35422:31;35447:5;35422:31;;35595:121;;35674:37;35705:5;35674:37;;35846:268;35911:1;35918:101;35932:6;35929:1;35926:13;35918:101;;;35999:11;;;35993:18;35980:11;;;35973:39;35954:2;35947:10;35918:101;;;36034:6;36031:1;36028:13;36025:2;;;-1:-1;;36099:1;36081:16;;36074:27;35895:219;36203:97;36291:2;36271:14;-1:-1;;36267:28;;36251:49",
|
|
835
835
|
"source": "// Verified cash manager on mainnet\r\n// (c) Kallol Borah, 2021\r\n\r\npragma solidity 0.5.7;\r\npragma experimental ABIEncoderV2;\r\n\r\nimport \"./interfaces/ICash.sol\";\r\nimport \"./interfaces/IBond.sol\";\r\nimport \"./interfaces/IFactory.sol\";\r\nimport \"./interfaces/IRates.sol\";\r\nimport \"./utilities/Pausable.sol\";\r\nimport \"./utilities/StringUtils.sol\";\r\nimport \"abdk-libraries-solidity/ABDKMathQuad.sol\";\r\nimport \"@openzeppelin/upgrades/contracts/Initializable.sol\";\r\nimport \"@openzeppelin/contracts-ethereum-package/contracts/math/SafeMath.sol\";\r\nimport \"@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol\";\r\nimport \"@openzeppelin/contracts-ethereum-package/contracts/token/ERC20/ERC20.sol\";\r\n\r\ncontract Cash is ICash, ERC20, Ownable, Pausable {\r\n\r\n using stringutils for *;\r\n\r\n using ABDKMathQuad for uint256;\r\n using ABDKMathQuad for int256;\r\n using ABDKMathQuad for bytes16;\r\n\r\n //bridge\r\n address bridge;\r\n\r\n //mutex\r\n bool lock;\r\n\r\n //name of Verified cash token (eg, Via-USD)\r\n string public name;\r\n string public symbol;\r\n bytes32 public cashtokenName;\r\n\r\n //verified factory address\r\n IFactory private factory;\r\n\r\n //verified rates\r\n IRates private rates;\r\n\r\n struct deposit{\r\n bytes16 depositAmount;\r\n bytes16 issuedAmount;\r\n }\r\n\r\n //mapping of buyers (address) to currency (bytes32) to deposits \r\n mapping(address => mapping(bytes32 => deposit)) private L1deposits;\r\n mapping(address => mapping(bytes32 => deposit)) private L2deposits;\r\n\r\n //supported ERC20 tokens for issuing Verified cash tokens\r\n ICash.token[] private tokens;\r\n mapping(address => uint256) private tokenIndex;\r\n\r\n //events to capture by Verified bridge\r\n event CashIssueRequest(address indexed party, bytes32 currency, uint256 amount);\r\n event CashRedeemed(address indexed redeemer, bytes32 currency, uint256 amount);\r\n event CashTransfer(address indexed transferor, address transferee, bytes32 currency, uint256 amount);\r\n event CashIssued(address indexed party, bytes32 currency, uint256 amount);\r\n event addedL2Balance(address indexed party, bytes32 currency, uint256 amount);\r\n event transferredL2Balance(address indexed transferor, address transferee, bytes32 currency, uint256 amount);\r\n\r\n function initialize(bytes32 _name, bytes32 _currency, address _owner, address _fee, address _bridge) public initializer{\r\n Ownable.initialize(_owner);\r\n factory = IFactory(msg.sender);\r\n name = string(abi.encodePacked(_name));\r\n symbol = _name.substring(0,5);\r\n cashtokenName = _currency;\r\n rates = IRates(_fee);\r\n bridge = _bridge;\r\n lock = false;\r\n }\r\n\r\n function setSigner(address _signer) onlyOwner external{\r\n bridge = _signer;\r\n }\r\n\r\n //handling pay in of ether for issue of via cash tokens\r\n function() external payable{\r\n //ether paid in\r\n require(msg.value !=0);\r\n //only to pay in ether\r\n require(msg.data.length==0);\r\n //contract must not be paused\r\n require(paused == false);\r\n //check aml status\r\n //require(amlCheck(msg.sender)==true); \r\n L1deposits[msg.sender][\"ether\"].depositAmount = ABDKMathQuad.add(L1deposits[msg.sender][\"ether\"].depositAmount, ABDKMathQuad.fromUInt(msg.value)); \r\n }\r\n\r\n /**\r\n Specifies list of supported tokens that can be deposited to issue Verified cash tokens\r\n @param _token address of token supported\r\n @param _name name of token supported\r\n */\r\n function supportTokens(address _token, bytes32 _name) onlyOwner external {\r\n if(tokenIndex[_token]==0){\r\n ICash.token memory t = ICash.token ({\r\n tokenName: _name,\r\n tokenAddress: _token\r\n });\r\n tokens.push(t);\r\n tokenIndex[_token] = tokens.length;\r\n }\r\n }\r\n\r\n /**\r\n Checks if a specified token is supported for issuing Verified cash tokens\r\n @param _token token that is supported for issuing cash tokens\r\n */\r\n function checkSupportForToken(address _token) external view returns(bool){\r\n if(tokenIndex[_token]>0)\r\n return true;\r\n else\r\n return false;\r\n }\r\n\r\n /**\r\n Returns array of tokens supported\r\n */\r\n function getSupportedTokens() external view returns(ICash.token[] memory){\r\n return tokens;\r\n }\r\n \r\n /**\r\n Used by external apps (eg, exchange, wallet) to buy Verified cash token \r\n @param _token address of token used by investor to buy the cash token\r\n @param _amount amount of token that is transferred from investor to this cash token issuing contract\r\n */ \r\n function requestIssue(address _token, uint256 _amount, address _buyer) external {\r\n require(paused == false, \"Contract in paused state\");\r\n bool found = false;\r\n if(tokenIndex[_token]>0)\r\n found = true;\r\n if(found){ \r\n _approve(msg.sender, address(this), _amount);\r\n bytes32 currencyName = tokens[tokenIndex[_token]-1].tokenName;\r\n if(ERC20(_token).transferFrom(msg.sender, address(this), _amount)){\r\n L2deposits[_buyer][currencyName].depositAmount = ABDKMathQuad.add(L2deposits[_buyer][currencyName].depositAmount, ABDKMathQuad.fromUInt(_amount));\r\n emit CashIssueRequest(_buyer, currencyName, _amount);\r\n }\r\n }\r\n else if(ABDKMathQuad.cmp(L1deposits[msg.sender][\"ether\"].depositAmount, ABDKMathQuad.fromUInt(_amount))>=0){\r\n L1deposits[msg.sender][\"ether\"].depositAmount = ABDKMathQuad.sub(L1deposits[msg.sender][\"ether\"].depositAmount, ABDKMathQuad.fromUInt(_amount));\r\n L2deposits[_buyer][\"ether\"].depositAmount = ABDKMathQuad.add(L2deposits[_buyer][\"ether\"].depositAmount, ABDKMathQuad.fromUInt(_amount));\r\n emit CashIssueRequest(_buyer, \"ether\", _amount); \r\n }\r\n }\r\n \r\n //adds issued Verified cash tokens in L2 to user balances\r\n function addIssuedBalance(uint256 balance, address buyer, bytes32 currency, bytes32 _hashedMessage, uint8 _v, bytes32 _r, bytes32 _s) \r\n external {\r\n bytes32 payloadHash = keccak256(abi.encode(_hashedMessage, \"L2toL1\"));\r\n bytes32 messageHash = keccak256(abi.encodePacked(\"\\x19Ethereum Signed Message:\\n32\", payloadHash));\r\n require(ecrecover(messageHash, _v, _r, _s)== bridge); \r\n if(factory.getIssuer(\"ViaCash\", currency)==address(this)){\r\n emit addedL2Balance(buyer, currency, SafeMath.sub(balance, ABDKMathQuad.toUInt(L2deposits[buyer][currency].issuedAmount)));\r\n L2deposits[buyer][currency].issuedAmount = ABDKMathQuad.fromUInt(balance);\r\n }\r\n }\r\n \r\n //transfers deposit (against which cash tokens are issued) from transferor to transferee in L2 \r\n function transferDeposit(address transferor, uint256 amount, address transferee, bytes32 currency, bytes32 _hashedMessage, uint8 _v, bytes32 _r, bytes32 _s) \r\n external {\r\n bytes32 payloadHash = keccak256(abi.encode(_hashedMessage, \"L2toL1\"));\r\n bytes32 messageHash = keccak256(abi.encodePacked(\"\\x19Ethereum Signed Message:\\n32\", payloadHash));\r\n require(ecrecover(messageHash, _v, _r, _s)== bridge);\r\n if(ABDKMathQuad.cmp(ABDKMathQuad.sub(L2deposits[transferor][currency].depositAmount, ABDKMathQuad.fromUInt(amount)),0)>=0){ \r\n ABDKMathQuad.sub(L2deposits[transferor][currency].depositAmount, ABDKMathQuad.fromUInt(amount));\r\n ABDKMathQuad.add(L2deposits[transferee][currency].depositAmount, ABDKMathQuad.fromUInt(amount));\r\n emit transferredL2Balance(transferor, transferee, currency, amount);\r\n }\r\n }\r\n \r\n //redeems deposited amounts in L2\r\n function redeemDeposits(uint256 amount, address redeemer, bytes32 currency, uint256 balance, bytes32 _hashedMessage, uint8 _v, bytes32 _r, bytes32 _s) \r\n external {\r\n bytes32 payloadHash = keccak256(abi.encode(_hashedMessage, \"L2toL1\"));\r\n bytes32 messageHash = keccak256(abi.encodePacked(\"\\x19Ethereum Signed Message:\\n32\", payloadHash));\r\n require(ecrecover(messageHash, _v, _r, _s)== bridge);\r\n L2deposits[redeemer][currency].issuedAmount = ABDKMathQuad.fromUInt(balance); \r\n if(currency==\"ether\"){ \r\n address(uint160(redeemer)).transfer(amount);\r\n L2deposits[redeemer][currency].depositAmount = ABDKMathQuad.sub(L2deposits[redeemer][currency].depositAmount, ABDKMathQuad.fromUInt(amount));\r\n }\r\n else{\r\n for(uint256 i=0; i<tokens.length; i++){\r\n if(tokens[i].tokenName==currency){\r\n ERC20(tokens[i].tokenAddress).transfer(redeemer, amount);\r\n L2deposits[redeemer][currency].depositAmount = ABDKMathQuad.sub(L2deposits[redeemer][currency].depositAmount, ABDKMathQuad.fromUInt(amount));\r\n }\r\n }\r\n } \r\n emit CashRedeemed(redeemer, currency, amount);\r\n }\r\n\r\n //transfers issued cash tokens in L2 to L1 wallet\r\n function transferIssuedBalance(address transferor, bytes32 currency, uint256 amount, uint256 deposited, bytes32 _hashedMessage, uint8 _v, bytes32 _r, bytes32 _s) \r\n external {\r\n bytes32 payloadHash = keccak256(abi.encode(_hashedMessage, \"L2toL1\"));\r\n bytes32 messageHash = keccak256(abi.encodePacked(\"\\x19Ethereum Signed Message:\\n32\", payloadHash));\r\n require(ecrecover(messageHash, _v, _r, _s)== bridge);\r\n L2deposits[transferor][currency].depositAmount = ABDKMathQuad.sub(L2deposits[transferor][currency].depositAmount, ABDKMathQuad.fromUInt(deposited));\r\n L1deposits[transferor][currency].depositAmount = ABDKMathQuad.add(L1deposits[transferor][currency].depositAmount, ABDKMathQuad.fromUInt(deposited));\r\n _mint(address(this), amount);\r\n _transfer(address(this), transferor, amount);\r\n L2deposits[transferor][currency].issuedAmount = ABDKMathQuad.sub(L2deposits[transferor][currency].issuedAmount, ABDKMathQuad.fromUInt(amount));\r\n L1deposits[transferor][currency].issuedAmount = ABDKMathQuad.add(L1deposits[transferor][currency].issuedAmount, ABDKMathQuad.fromUInt(amount));\r\n emit CashIssued(transferor, cashtokenName, amount);\r\n }\r\n\r\n //overriding this function of ERC20 standard for transfer of via cash tokens to other users or to this contract for redemption\r\n function transferFrom(address sender, address receiver, uint256 token) public returns (bool){\r\n //contract must not be paused\r\n require(paused == false);\r\n //check aml status\r\n //require(amlCheck(sender)==true);\r\n //require(amlCheck(receiver)==true);\r\n //ensure sender has enough tokens in balance before transferring or redeeming them\r\n require(ABDKMathQuad.cmp(ABDKMathQuad.fromUInt(balanceOf(sender)),ABDKMathQuad.fromUInt(token))>=0);\r\n //check if tokens are being transferred to this cash contract\r\n if(receiver == address(this)){\r\n //if token name is the same, this transfer has to be redeemed\r\n if(redeem(ABDKMathQuad.fromUInt(token), sender, \"redeem\", address(this)))\r\n return true;\r\n else\r\n return false;\r\n }\r\n else if(factory.getType(receiver)==\"ViaCash\" || factory.getType(receiver)==\"ViaBond\"){\r\n _transfer(sender, receiver, token);\r\n return true;\r\n }\r\n else{\r\n //else, tokens are being sent to another user's account\r\n //sending contract should be allowed by token owner to make this transfer\r\n if(redeem(ABDKMathQuad.fromUInt(token), sender, \"transfer\", receiver))\r\n return true;\r\n else\r\n return false;\r\n } \r\n }\r\n \r\n //requesting redemption of Via cash token and transfer of currency it was issued against\r\n //operation parameter indicates whether it is a redemption or a transfer of deposits from one party to another\r\n function redeem(bytes16 amount, address party, bytes32 operation, address receiver) private returns(bool){\r\n bool found = false; \r\n for(uint i=0; i<tokens.length && ABDKMathQuad.toUInt(amount)>0; i++){ \r\n //check if currency in which redemption is to be done has sufficient issued balance for the deposited currency\r\n if(ABDKMathQuad.cmp(L1deposits[party][tokens[i].tokenName].issuedAmount, amount)>=0){\r\n bytes16 value = ABDKMathQuad.mul(ABDKMathQuad.div(amount, L1deposits[party][tokens[i].tokenName].issuedAmount),L1deposits[party][tokens[i].tokenName].depositAmount);\r\n L1deposits[party][tokens[i].tokenName].depositAmount = ABDKMathQuad.sub(L1deposits[party][tokens[i].tokenName].depositAmount, value);\r\n L1deposits[party][tokens[i].tokenName].issuedAmount = ABDKMathQuad.sub(L1deposits[party][tokens[i].tokenName].issuedAmount, amount);\r\n require(!lock);\r\n lock = true;\r\n if(operation==\"redeem\"){\r\n //adjust total supply\r\n _burn(party, ABDKMathQuad.toUInt(amount));\r\n //send redeemed ether to party\r\n if(tokens[i].tokenName==\"ether\"){\r\n address(uint160(party)).transfer(ABDKMathQuad.toUInt(value));\r\n }\r\n else{\r\n ERC20(tokens[i].tokenAddress).transfer(party, ABDKMathQuad.toUInt(value));\r\n }\r\n //generate event\r\n emit CashRedeemed(party, tokens[i].tokenName, ABDKMathQuad.toUInt(value));\r\n }\r\n else if(operation==\"transfer\"){\r\n //check if any fee is payable on remittance and acceptance and pay it if that is the case\r\n (amount, value) = payTransferFee(amount, value, tokens[i].tokenName);\r\n //transfer balances\r\n _burn(party, ABDKMathQuad.toUInt(amount));\r\n _mint(receiver, ABDKMathQuad.toUInt(amount));\r\n //transfer deposits\r\n L1deposits[receiver][tokens[i].tokenName].depositAmount = ABDKMathQuad.add(L1deposits[receiver][tokens[i].tokenName].depositAmount, value);\r\n //transfer issued amounts\r\n L1deposits[receiver][tokens[i].tokenName].issuedAmount = ABDKMathQuad.add(L1deposits[receiver][tokens[i].tokenName].issuedAmount, amount); \r\n emit CashTransfer(party, receiver, tokens[i].tokenName, ABDKMathQuad.toUInt(amount));\r\n }\r\n amount = 0;\r\n found = true;\r\n lock = false;\r\n }\r\n //amount to redeem is more than what is in deposit, so we need to remove deposit after redemption\r\n else if(ABDKMathQuad.cmp(L1deposits[party][tokens[i].tokenName].issuedAmount, 0)>0){\r\n require(!lock);\r\n lock = true;\r\n if(operation==\"redeem\"){\r\n //adjust total supply\r\n _burn(party, ABDKMathQuad.toUInt(L1deposits[party][tokens[i].tokenName].issuedAmount));\r\n //check if any fee is payable on redemption and pay it if that is the case\r\n bytes16 value = L1deposits[party][tokens[i].tokenName].depositAmount;\r\n //send redeemed ether to party which is all of the ether in deposit with this user (party)\r\n if(tokens[i].tokenName==\"ether\"){ \r\n address(uint160(party)).transfer(ABDKMathQuad.toUInt(value));\r\n }\r\n else{\r\n ERC20(tokens[i].tokenAddress).transfer(party, ABDKMathQuad.toUInt(value));\r\n } \r\n //generate event\r\n emit CashRedeemed(party, tokens[i].tokenName, ABDKMathQuad.toUInt(value));\r\n }\r\n else if(operation==\"transfer\"){\r\n //check if any fee is payable on remittance and acceptance and pay it if that is the case\r\n (bytes16 amt, bytes16 value) = payTransferFee(L1deposits[party][tokens[i].tokenName].issuedAmount, L1deposits[party][tokens[i].tokenName].depositAmount, tokens[i].tokenName);\r\n //transfer balances\r\n _burn(party, ABDKMathQuad.toUInt(amt));\r\n _mint(receiver, ABDKMathQuad.toUInt(amt));\r\n //transfer deposits\r\n L1deposits[receiver][tokens[i].tokenName].depositAmount = ABDKMathQuad.add(L1deposits[receiver][tokens[i].tokenName].depositAmount, value);\r\n //transfer issued amounts\r\n L1deposits[receiver][tokens[i].tokenName].issuedAmount = ABDKMathQuad.add(L1deposits[receiver][tokens[i].tokenName].issuedAmount, amt);\r\n emit CashTransfer(party, receiver, tokens[i].tokenName, ABDKMathQuad.toUInt(amt));\r\n }\r\n //calculate remaining amount to redeem or transfer\r\n amount = ABDKMathQuad.sub(amount, L1deposits[party][tokens[i].tokenName].issuedAmount);\r\n //make deposit and issued amount balances zero for ether\r\n delete L1deposits[party][tokens[i].tokenName];\r\n found = true;\r\n lock = false;\r\n }\r\n }\r\n return found;\r\n }\r\n\r\n function payTransferFee(bytes16 amount, bytes16 value, bytes32 currency) private returns (bytes16, bytes16){\r\n bytes16 fees = ABDKMathQuad.fromUInt(rates.getFee(\"remittance\"));\r\n if(ABDKMathQuad.cmp(fees,0)==1){\r\n address feeTo = rates.getFeeToSetter();\r\n if(feeTo!=address(0x0)){\r\n transfer(feeTo, ABDKMathQuad.toUInt(ABDKMathQuad.mul(fees, amount)));\r\n amount = ABDKMathQuad.sub(amount, ABDKMathQuad.mul(fees, amount));\r\n L1deposits[feeTo][currency].depositAmount = ABDKMathQuad.add(L1deposits[feeTo][currency].depositAmount, ABDKMathQuad.mul(fees, value)); \r\n value = ABDKMathQuad.sub(value, ABDKMathQuad.mul(fees, value));\r\n }\r\n }\r\n return (amount, value);\r\n } \r\n\r\n function pause() onlyOwner public {\r\n _pause();\r\n }\r\n function unpause() onlyOwner public {\r\n _unpause();\r\n }\r\n\r\n}",
|
|
836
|
-
"sourcePath": "D:\\Code\\verified-
|
|
836
|
+
"sourcePath": "D:\\Code\\verified-L1\\payments\\contracts\\Cash.sol",
|
|
837
837
|
"ast": {
|
|
838
838
|
"absolutePath": "project:/contracts/Cash.sol",
|
|
839
839
|
"exportedSymbols": {
|
|
@@ -869,7 +869,7 @@
|
|
|
869
869
|
"id": 7534,
|
|
870
870
|
"nodeType": "ImportDirective",
|
|
871
871
|
"scope": 9305,
|
|
872
|
-
"sourceUnit":
|
|
872
|
+
"sourceUnit": 10956,
|
|
873
873
|
"src": "127:32:17",
|
|
874
874
|
"symbolAliases": [],
|
|
875
875
|
"unitAlias": ""
|
|
@@ -880,7 +880,7 @@
|
|
|
880
880
|
"id": 7535,
|
|
881
881
|
"nodeType": "ImportDirective",
|
|
882
882
|
"scope": 9305,
|
|
883
|
-
"sourceUnit":
|
|
883
|
+
"sourceUnit": 10834,
|
|
884
884
|
"src": "161:32:17",
|
|
885
885
|
"symbolAliases": [],
|
|
886
886
|
"unitAlias": ""
|
|
@@ -891,7 +891,7 @@
|
|
|
891
891
|
"id": 7536,
|
|
892
892
|
"nodeType": "ImportDirective",
|
|
893
893
|
"scope": 9305,
|
|
894
|
-
"sourceUnit":
|
|
894
|
+
"sourceUnit": 11087,
|
|
895
895
|
"src": "195:35:17",
|
|
896
896
|
"symbolAliases": [],
|
|
897
897
|
"unitAlias": ""
|
|
@@ -902,7 +902,7 @@
|
|
|
902
902
|
"id": 7537,
|
|
903
903
|
"nodeType": "ImportDirective",
|
|
904
904
|
"scope": 9305,
|
|
905
|
-
"sourceUnit":
|
|
905
|
+
"sourceUnit": 11154,
|
|
906
906
|
"src": "232:33:17",
|
|
907
907
|
"symbolAliases": [],
|
|
908
908
|
"unitAlias": ""
|
|
@@ -913,7 +913,7 @@
|
|
|
913
913
|
"id": 7538,
|
|
914
914
|
"nodeType": "ImportDirective",
|
|
915
915
|
"scope": 9305,
|
|
916
|
-
"sourceUnit":
|
|
916
|
+
"sourceUnit": 11229,
|
|
917
917
|
"src": "267:34:17",
|
|
918
918
|
"symbolAliases": [],
|
|
919
919
|
"unitAlias": ""
|
|
@@ -924,7 +924,7 @@
|
|
|
924
924
|
"id": 7539,
|
|
925
925
|
"nodeType": "ImportDirective",
|
|
926
926
|
"scope": 9305,
|
|
927
|
-
"sourceUnit":
|
|
927
|
+
"sourceUnit": 11525,
|
|
928
928
|
"src": "303:37:17",
|
|
929
929
|
"symbolAliases": [],
|
|
930
930
|
"unitAlias": ""
|
|
@@ -993,10 +993,10 @@
|
|
|
993
993
|
"id": 7545,
|
|
994
994
|
"name": "ICash",
|
|
995
995
|
"nodeType": "UserDefinedTypeName",
|
|
996
|
-
"referencedDeclaration":
|
|
996
|
+
"referencedDeclaration": 10955,
|
|
997
997
|
"src": "723:5:17",
|
|
998
998
|
"typeDescriptions": {
|
|
999
|
-
"typeIdentifier": "t_contract$_ICash_$
|
|
999
|
+
"typeIdentifier": "t_contract$_ICash_$10955",
|
|
1000
1000
|
"typeString": "contract ICash"
|
|
1001
1001
|
}
|
|
1002
1002
|
},
|
|
@@ -1047,10 +1047,10 @@
|
|
|
1047
1047
|
"id": 7551,
|
|
1048
1048
|
"name": "Pausable",
|
|
1049
1049
|
"nodeType": "UserDefinedTypeName",
|
|
1050
|
-
"referencedDeclaration":
|
|
1050
|
+
"referencedDeclaration": 11228,
|
|
1051
1051
|
"src": "746:8:17",
|
|
1052
1052
|
"typeDescriptions": {
|
|
1053
|
-
"typeIdentifier": "t_contract$_Pausable_$
|
|
1053
|
+
"typeIdentifier": "t_contract$_Pausable_$11228",
|
|
1054
1054
|
"typeString": "contract Pausable"
|
|
1055
1055
|
}
|
|
1056
1056
|
},
|
|
@@ -1065,8 +1065,8 @@
|
|
|
1065
1065
|
752,
|
|
1066
1066
|
821,
|
|
1067
1067
|
890,
|
|
1068
|
-
|
|
1069
|
-
|
|
1068
|
+
10955,
|
|
1069
|
+
11228
|
|
1070
1070
|
],
|
|
1071
1071
|
"contractKind": "contract",
|
|
1072
1072
|
"documentation": null,
|
|
@@ -1074,13 +1074,13 @@
|
|
|
1074
1074
|
"id": 9304,
|
|
1075
1075
|
"linearizedBaseContracts": [
|
|
1076
1076
|
9304,
|
|
1077
|
-
|
|
1077
|
+
11228,
|
|
1078
1078
|
340,
|
|
1079
1079
|
752,
|
|
1080
1080
|
821,
|
|
1081
1081
|
29,
|
|
1082
1082
|
890,
|
|
1083
|
-
|
|
1083
|
+
10955
|
|
1084
1084
|
],
|
|
1085
1085
|
"name": "Cash",
|
|
1086
1086
|
"nodeType": "ContractDefinition",
|
|
@@ -1092,10 +1092,10 @@
|
|
|
1092
1092
|
"id": 7553,
|
|
1093
1093
|
"name": "stringutils",
|
|
1094
1094
|
"nodeType": "UserDefinedTypeName",
|
|
1095
|
-
"referencedDeclaration":
|
|
1095
|
+
"referencedDeclaration": 11524,
|
|
1096
1096
|
"src": "770:11:17",
|
|
1097
1097
|
"typeDescriptions": {
|
|
1098
|
-
"typeIdentifier": "t_contract$_stringutils_$
|
|
1098
|
+
"typeIdentifier": "t_contract$_stringutils_$11524",
|
|
1099
1099
|
"typeString": "library stringutils"
|
|
1100
1100
|
}
|
|
1101
1101
|
},
|
|
@@ -1325,7 +1325,7 @@
|
|
|
1325
1325
|
"stateVariable": true,
|
|
1326
1326
|
"storageLocation": "default",
|
|
1327
1327
|
"typeDescriptions": {
|
|
1328
|
-
"typeIdentifier": "t_contract$_IFactory_$
|
|
1328
|
+
"typeIdentifier": "t_contract$_IFactory_$11086",
|
|
1329
1329
|
"typeString": "contract IFactory"
|
|
1330
1330
|
},
|
|
1331
1331
|
"typeName": {
|
|
@@ -1333,10 +1333,10 @@
|
|
|
1333
1333
|
"id": 7574,
|
|
1334
1334
|
"name": "IFactory",
|
|
1335
1335
|
"nodeType": "UserDefinedTypeName",
|
|
1336
|
-
"referencedDeclaration":
|
|
1336
|
+
"referencedDeclaration": 11086,
|
|
1337
1337
|
"src": "1146:8:17",
|
|
1338
1338
|
"typeDescriptions": {
|
|
1339
|
-
"typeIdentifier": "t_contract$_IFactory_$
|
|
1339
|
+
"typeIdentifier": "t_contract$_IFactory_$11086",
|
|
1340
1340
|
"typeString": "contract IFactory"
|
|
1341
1341
|
}
|
|
1342
1342
|
},
|
|
@@ -1353,7 +1353,7 @@
|
|
|
1353
1353
|
"stateVariable": true,
|
|
1354
1354
|
"storageLocation": "default",
|
|
1355
1355
|
"typeDescriptions": {
|
|
1356
|
-
"typeIdentifier": "t_contract$_IRates_$
|
|
1356
|
+
"typeIdentifier": "t_contract$_IRates_$11153",
|
|
1357
1357
|
"typeString": "contract IRates"
|
|
1358
1358
|
},
|
|
1359
1359
|
"typeName": {
|
|
@@ -1361,10 +1361,10 @@
|
|
|
1361
1361
|
"id": 7576,
|
|
1362
1362
|
"name": "IRates",
|
|
1363
1363
|
"nodeType": "UserDefinedTypeName",
|
|
1364
|
-
"referencedDeclaration":
|
|
1364
|
+
"referencedDeclaration": 11153,
|
|
1365
1365
|
"src": "1201:6:17",
|
|
1366
1366
|
"typeDescriptions": {
|
|
1367
|
-
"typeIdentifier": "t_contract$_IRates_$
|
|
1367
|
+
"typeIdentifier": "t_contract$_IRates_$11153",
|
|
1368
1368
|
"typeString": "contract IRates"
|
|
1369
1369
|
}
|
|
1370
1370
|
},
|
|
@@ -1576,7 +1576,7 @@
|
|
|
1576
1576
|
"stateVariable": true,
|
|
1577
1577
|
"storageLocation": "default",
|
|
1578
1578
|
"typeDescriptions": {
|
|
1579
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
1579
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
1580
1580
|
"typeString": "struct ICash.token[]"
|
|
1581
1581
|
},
|
|
1582
1582
|
"typeName": {
|
|
@@ -1585,10 +1585,10 @@
|
|
|
1585
1585
|
"id": 7595,
|
|
1586
1586
|
"name": "ICash.token",
|
|
1587
1587
|
"nodeType": "UserDefinedTypeName",
|
|
1588
|
-
"referencedDeclaration":
|
|
1588
|
+
"referencedDeclaration": 10841,
|
|
1589
1589
|
"src": "1604:11:17",
|
|
1590
1590
|
"typeDescriptions": {
|
|
1591
|
-
"typeIdentifier": "t_struct$_token_$
|
|
1591
|
+
"typeIdentifier": "t_struct$_token_$10841_storage_ptr",
|
|
1592
1592
|
"typeString": "struct ICash.token"
|
|
1593
1593
|
}
|
|
1594
1594
|
},
|
|
@@ -1597,7 +1597,7 @@
|
|
|
1597
1597
|
"nodeType": "ArrayTypeName",
|
|
1598
1598
|
"src": "1604:13:17",
|
|
1599
1599
|
"typeDescriptions": {
|
|
1600
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
1600
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage_ptr",
|
|
1601
1601
|
"typeString": "struct ICash.token[]"
|
|
1602
1602
|
}
|
|
1603
1603
|
},
|
|
@@ -2380,7 +2380,7 @@
|
|
|
2380
2380
|
"referencedDeclaration": 7575,
|
|
2381
2381
|
"src": "2464:7:17",
|
|
2382
2382
|
"typeDescriptions": {
|
|
2383
|
-
"typeIdentifier": "t_contract$_IFactory_$
|
|
2383
|
+
"typeIdentifier": "t_contract$_IFactory_$11086",
|
|
2384
2384
|
"typeString": "contract IFactory"
|
|
2385
2385
|
}
|
|
2386
2386
|
},
|
|
@@ -2397,7 +2397,7 @@
|
|
|
2397
2397
|
"name": "msg",
|
|
2398
2398
|
"nodeType": "Identifier",
|
|
2399
2399
|
"overloadedDeclarations": [],
|
|
2400
|
-
"referencedDeclaration":
|
|
2400
|
+
"referencedDeclaration": 11539,
|
|
2401
2401
|
"src": "2483:3:17",
|
|
2402
2402
|
"typeDescriptions": {
|
|
2403
2403
|
"typeIdentifier": "t_magic_message",
|
|
@@ -2430,10 +2430,10 @@
|
|
|
2430
2430
|
"name": "IFactory",
|
|
2431
2431
|
"nodeType": "Identifier",
|
|
2432
2432
|
"overloadedDeclarations": [],
|
|
2433
|
-
"referencedDeclaration":
|
|
2433
|
+
"referencedDeclaration": 11086,
|
|
2434
2434
|
"src": "2474:8:17",
|
|
2435
2435
|
"typeDescriptions": {
|
|
2436
|
-
"typeIdentifier": "t_type$_t_contract$_IFactory_$
|
|
2436
|
+
"typeIdentifier": "t_type$_t_contract$_IFactory_$11086_$",
|
|
2437
2437
|
"typeString": "type(contract IFactory)"
|
|
2438
2438
|
}
|
|
2439
2439
|
},
|
|
@@ -2447,13 +2447,13 @@
|
|
|
2447
2447
|
"nodeType": "FunctionCall",
|
|
2448
2448
|
"src": "2474:20:17",
|
|
2449
2449
|
"typeDescriptions": {
|
|
2450
|
-
"typeIdentifier": "t_contract$_IFactory_$
|
|
2450
|
+
"typeIdentifier": "t_contract$_IFactory_$11086",
|
|
2451
2451
|
"typeString": "contract IFactory"
|
|
2452
2452
|
}
|
|
2453
2453
|
},
|
|
2454
2454
|
"src": "2464:30:17",
|
|
2455
2455
|
"typeDescriptions": {
|
|
2456
|
-
"typeIdentifier": "t_contract$_IFactory_$
|
|
2456
|
+
"typeIdentifier": "t_contract$_IFactory_$11086",
|
|
2457
2457
|
"typeString": "contract IFactory"
|
|
2458
2458
|
}
|
|
2459
2459
|
},
|
|
@@ -2517,7 +2517,7 @@
|
|
|
2517
2517
|
"name": "abi",
|
|
2518
2518
|
"nodeType": "Identifier",
|
|
2519
2519
|
"overloadedDeclarations": [],
|
|
2520
|
-
"referencedDeclaration":
|
|
2520
|
+
"referencedDeclaration": 11526,
|
|
2521
2521
|
"src": "2519:3:17",
|
|
2522
2522
|
"typeDescriptions": {
|
|
2523
2523
|
"typeIdentifier": "t_magic_abi",
|
|
@@ -2691,7 +2691,7 @@
|
|
|
2691
2691
|
"lValueRequested": false,
|
|
2692
2692
|
"memberName": "substring",
|
|
2693
2693
|
"nodeType": "MemberAccess",
|
|
2694
|
-
"referencedDeclaration":
|
|
2694
|
+
"referencedDeclaration": 11375,
|
|
2695
2695
|
"src": "2563:15:17",
|
|
2696
2696
|
"typeDescriptions": {
|
|
2697
2697
|
"typeIdentifier": "t_function_delegatecall_pure$_t_bytes32_$_t_uint256_$_t_uint256_$returns$_t_string_memory_ptr_$bound_to$_t_bytes32_$",
|
|
@@ -2785,7 +2785,7 @@
|
|
|
2785
2785
|
"referencedDeclaration": 7577,
|
|
2786
2786
|
"src": "2630:5:17",
|
|
2787
2787
|
"typeDescriptions": {
|
|
2788
|
-
"typeIdentifier": "t_contract$_IRates_$
|
|
2788
|
+
"typeIdentifier": "t_contract$_IRates_$11153",
|
|
2789
2789
|
"typeString": "contract IRates"
|
|
2790
2790
|
}
|
|
2791
2791
|
},
|
|
@@ -2819,10 +2819,10 @@
|
|
|
2819
2819
|
"name": "IRates",
|
|
2820
2820
|
"nodeType": "Identifier",
|
|
2821
2821
|
"overloadedDeclarations": [],
|
|
2822
|
-
"referencedDeclaration":
|
|
2822
|
+
"referencedDeclaration": 11153,
|
|
2823
2823
|
"src": "2638:6:17",
|
|
2824
2824
|
"typeDescriptions": {
|
|
2825
|
-
"typeIdentifier": "t_type$_t_contract$_IRates_$
|
|
2825
|
+
"typeIdentifier": "t_type$_t_contract$_IRates_$11153_$",
|
|
2826
2826
|
"typeString": "type(contract IRates)"
|
|
2827
2827
|
}
|
|
2828
2828
|
},
|
|
@@ -2836,13 +2836,13 @@
|
|
|
2836
2836
|
"nodeType": "FunctionCall",
|
|
2837
2837
|
"src": "2638:12:17",
|
|
2838
2838
|
"typeDescriptions": {
|
|
2839
|
-
"typeIdentifier": "t_contract$_IRates_$
|
|
2839
|
+
"typeIdentifier": "t_contract$_IRates_$11153",
|
|
2840
2840
|
"typeString": "contract IRates"
|
|
2841
2841
|
}
|
|
2842
2842
|
},
|
|
2843
2843
|
"src": "2630:20:17",
|
|
2844
2844
|
"typeDescriptions": {
|
|
2845
|
-
"typeIdentifier": "t_contract$_IRates_$
|
|
2845
|
+
"typeIdentifier": "t_contract$_IRates_$11153",
|
|
2846
2846
|
"typeString": "contract IRates"
|
|
2847
2847
|
}
|
|
2848
2848
|
},
|
|
@@ -3252,7 +3252,7 @@
|
|
|
3252
3252
|
"scope": 9304,
|
|
3253
3253
|
"src": "2716:89:17",
|
|
3254
3254
|
"stateMutability": "nonpayable",
|
|
3255
|
-
"superFunction":
|
|
3255
|
+
"superFunction": 10954,
|
|
3256
3256
|
"visibility": "external"
|
|
3257
3257
|
},
|
|
3258
3258
|
{
|
|
@@ -3284,7 +3284,7 @@
|
|
|
3284
3284
|
"name": "msg",
|
|
3285
3285
|
"nodeType": "Identifier",
|
|
3286
3286
|
"overloadedDeclarations": [],
|
|
3287
|
-
"referencedDeclaration":
|
|
3287
|
+
"referencedDeclaration": 11539,
|
|
3288
3288
|
"src": "2945:3:17",
|
|
3289
3289
|
"typeDescriptions": {
|
|
3290
3290
|
"typeIdentifier": "t_magic_message",
|
|
@@ -3343,10 +3343,10 @@
|
|
|
3343
3343
|
"name": "require",
|
|
3344
3344
|
"nodeType": "Identifier",
|
|
3345
3345
|
"overloadedDeclarations": [
|
|
3346
|
-
|
|
3347
|
-
|
|
3346
|
+
11542,
|
|
3347
|
+
11543
|
|
3348
3348
|
],
|
|
3349
|
-
"referencedDeclaration":
|
|
3349
|
+
"referencedDeclaration": 11542,
|
|
3350
3350
|
"src": "2937:7:17",
|
|
3351
3351
|
"typeDescriptions": {
|
|
3352
3352
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -3396,7 +3396,7 @@
|
|
|
3396
3396
|
"name": "msg",
|
|
3397
3397
|
"nodeType": "Identifier",
|
|
3398
3398
|
"overloadedDeclarations": [],
|
|
3399
|
-
"referencedDeclaration":
|
|
3399
|
+
"referencedDeclaration": 11539,
|
|
3400
3400
|
"src": "3010:3:17",
|
|
3401
3401
|
"typeDescriptions": {
|
|
3402
3402
|
"typeIdentifier": "t_magic_message",
|
|
@@ -3469,10 +3469,10 @@
|
|
|
3469
3469
|
"name": "require",
|
|
3470
3470
|
"nodeType": "Identifier",
|
|
3471
3471
|
"overloadedDeclarations": [
|
|
3472
|
-
|
|
3473
|
-
|
|
3472
|
+
11542,
|
|
3473
|
+
11543
|
|
3474
3474
|
],
|
|
3475
|
-
"referencedDeclaration":
|
|
3475
|
+
"referencedDeclaration": 11542,
|
|
3476
3476
|
"src": "3002:7:17",
|
|
3477
3477
|
"typeDescriptions": {
|
|
3478
3478
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -3518,7 +3518,7 @@
|
|
|
3518
3518
|
"name": "paused",
|
|
3519
3519
|
"nodeType": "Identifier",
|
|
3520
3520
|
"overloadedDeclarations": [],
|
|
3521
|
-
"referencedDeclaration":
|
|
3521
|
+
"referencedDeclaration": 11193,
|
|
3522
3522
|
"src": "3087:6:17",
|
|
3523
3523
|
"typeDescriptions": {
|
|
3524
3524
|
"typeIdentifier": "t_bool",
|
|
@@ -3563,10 +3563,10 @@
|
|
|
3563
3563
|
"name": "require",
|
|
3564
3564
|
"nodeType": "Identifier",
|
|
3565
3565
|
"overloadedDeclarations": [
|
|
3566
|
-
|
|
3567
|
-
|
|
3566
|
+
11542,
|
|
3567
|
+
11543
|
|
3568
3568
|
],
|
|
3569
|
-
"referencedDeclaration":
|
|
3569
|
+
"referencedDeclaration": 11542,
|
|
3570
3570
|
"src": "3079:7:17",
|
|
3571
3571
|
"typeDescriptions": {
|
|
3572
3572
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -3627,7 +3627,7 @@
|
|
|
3627
3627
|
"name": "msg",
|
|
3628
3628
|
"nodeType": "Identifier",
|
|
3629
3629
|
"overloadedDeclarations": [],
|
|
3630
|
-
"referencedDeclaration":
|
|
3630
|
+
"referencedDeclaration": 11539,
|
|
3631
3631
|
"src": "3206:3:17",
|
|
3632
3632
|
"typeDescriptions": {
|
|
3633
3633
|
"typeIdentifier": "t_magic_message",
|
|
@@ -3736,7 +3736,7 @@
|
|
|
3736
3736
|
"name": "msg",
|
|
3737
3737
|
"nodeType": "Identifier",
|
|
3738
3738
|
"overloadedDeclarations": [],
|
|
3739
|
-
"referencedDeclaration":
|
|
3739
|
+
"referencedDeclaration": 11539,
|
|
3740
3740
|
"src": "3271:3:17",
|
|
3741
3741
|
"typeDescriptions": {
|
|
3742
3742
|
"typeIdentifier": "t_magic_message",
|
|
@@ -3823,7 +3823,7 @@
|
|
|
3823
3823
|
"name": "msg",
|
|
3824
3824
|
"nodeType": "Identifier",
|
|
3825
3825
|
"overloadedDeclarations": [],
|
|
3826
|
-
"referencedDeclaration":
|
|
3826
|
+
"referencedDeclaration": 11539,
|
|
3827
3827
|
"src": "3329:3:17",
|
|
3828
3828
|
"typeDescriptions": {
|
|
3829
3829
|
"typeIdentifier": "t_magic_message",
|
|
@@ -4091,7 +4091,7 @@
|
|
|
4091
4091
|
"stateVariable": false,
|
|
4092
4092
|
"storageLocation": "memory",
|
|
4093
4093
|
"typeDescriptions": {
|
|
4094
|
-
"typeIdentifier": "t_struct$_token_$
|
|
4094
|
+
"typeIdentifier": "t_struct$_token_$10841_memory_ptr",
|
|
4095
4095
|
"typeString": "struct ICash.token"
|
|
4096
4096
|
},
|
|
4097
4097
|
"typeName": {
|
|
@@ -4099,10 +4099,10 @@
|
|
|
4099
4099
|
"id": 7794,
|
|
4100
4100
|
"name": "ICash.token",
|
|
4101
4101
|
"nodeType": "UserDefinedTypeName",
|
|
4102
|
-
"referencedDeclaration":
|
|
4102
|
+
"referencedDeclaration": 10841,
|
|
4103
4103
|
"src": "3699:11:17",
|
|
4104
4104
|
"typeDescriptions": {
|
|
4105
|
-
"typeIdentifier": "t_struct$_token_$
|
|
4105
|
+
"typeIdentifier": "t_struct$_token_$10841_storage_ptr",
|
|
4106
4106
|
"typeString": "struct ICash.token"
|
|
4107
4107
|
}
|
|
4108
4108
|
},
|
|
@@ -4158,10 +4158,10 @@
|
|
|
4158
4158
|
"name": "ICash",
|
|
4159
4159
|
"nodeType": "Identifier",
|
|
4160
4160
|
"overloadedDeclarations": [],
|
|
4161
|
-
"referencedDeclaration":
|
|
4161
|
+
"referencedDeclaration": 10955,
|
|
4162
4162
|
"src": "3722:5:17",
|
|
4163
4163
|
"typeDescriptions": {
|
|
4164
|
-
"typeIdentifier": "t_type$_t_contract$_ICash_$
|
|
4164
|
+
"typeIdentifier": "t_type$_t_contract$_ICash_$10955_$",
|
|
4165
4165
|
"typeString": "type(contract ICash)"
|
|
4166
4166
|
}
|
|
4167
4167
|
},
|
|
@@ -4172,10 +4172,10 @@
|
|
|
4172
4172
|
"lValueRequested": false,
|
|
4173
4173
|
"memberName": "token",
|
|
4174
4174
|
"nodeType": "MemberAccess",
|
|
4175
|
-
"referencedDeclaration":
|
|
4175
|
+
"referencedDeclaration": 10841,
|
|
4176
4176
|
"src": "3722:11:17",
|
|
4177
4177
|
"typeDescriptions": {
|
|
4178
|
-
"typeIdentifier": "t_type$_t_struct$_token_$
|
|
4178
|
+
"typeIdentifier": "t_type$_t_struct$_token_$10841_storage_ptr_$",
|
|
4179
4179
|
"typeString": "type(struct ICash.token storage pointer)"
|
|
4180
4180
|
}
|
|
4181
4181
|
},
|
|
@@ -4192,7 +4192,7 @@
|
|
|
4192
4192
|
"nodeType": "FunctionCall",
|
|
4193
4193
|
"src": "3722:103:17",
|
|
4194
4194
|
"typeDescriptions": {
|
|
4195
|
-
"typeIdentifier": "t_struct$_token_$
|
|
4195
|
+
"typeIdentifier": "t_struct$_token_$10841_memory",
|
|
4196
4196
|
"typeString": "struct ICash.token memory"
|
|
4197
4197
|
}
|
|
4198
4198
|
},
|
|
@@ -4212,7 +4212,7 @@
|
|
|
4212
4212
|
"referencedDeclaration": 7795,
|
|
4213
4213
|
"src": "3852:1:17",
|
|
4214
4214
|
"typeDescriptions": {
|
|
4215
|
-
"typeIdentifier": "t_struct$_token_$
|
|
4215
|
+
"typeIdentifier": "t_struct$_token_$10841_memory_ptr",
|
|
4216
4216
|
"typeString": "struct ICash.token memory"
|
|
4217
4217
|
}
|
|
4218
4218
|
}
|
|
@@ -4220,7 +4220,7 @@
|
|
|
4220
4220
|
"expression": {
|
|
4221
4221
|
"argumentTypes": [
|
|
4222
4222
|
{
|
|
4223
|
-
"typeIdentifier": "t_struct$_token_$
|
|
4223
|
+
"typeIdentifier": "t_struct$_token_$10841_memory_ptr",
|
|
4224
4224
|
"typeString": "struct ICash.token memory"
|
|
4225
4225
|
}
|
|
4226
4226
|
],
|
|
@@ -4233,7 +4233,7 @@
|
|
|
4233
4233
|
"referencedDeclaration": 7597,
|
|
4234
4234
|
"src": "3840:6:17",
|
|
4235
4235
|
"typeDescriptions": {
|
|
4236
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
4236
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
4237
4237
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
4238
4238
|
}
|
|
4239
4239
|
},
|
|
@@ -4247,7 +4247,7 @@
|
|
|
4247
4247
|
"referencedDeclaration": null,
|
|
4248
4248
|
"src": "3840:11:17",
|
|
4249
4249
|
"typeDescriptions": {
|
|
4250
|
-
"typeIdentifier": "t_function_arraypush_nonpayable$_t_struct$_token_$
|
|
4250
|
+
"typeIdentifier": "t_function_arraypush_nonpayable$_t_struct$_token_$10841_storage_$returns$_t_uint256_$",
|
|
4251
4251
|
"typeString": "function (struct ICash.token storage ref) returns (uint256)"
|
|
4252
4252
|
}
|
|
4253
4253
|
},
|
|
@@ -4330,7 +4330,7 @@
|
|
|
4330
4330
|
"referencedDeclaration": 7597,
|
|
4331
4331
|
"src": "3890:6:17",
|
|
4332
4332
|
"typeDescriptions": {
|
|
4333
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
4333
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
4334
4334
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
4335
4335
|
}
|
|
4336
4336
|
},
|
|
@@ -4459,7 +4459,7 @@
|
|
|
4459
4459
|
"scope": 9304,
|
|
4460
4460
|
"src": "3575:347:17",
|
|
4461
4461
|
"stateMutability": "nonpayable",
|
|
4462
|
-
"superFunction":
|
|
4462
|
+
"superFunction": 10853,
|
|
4463
4463
|
"visibility": "external"
|
|
4464
4464
|
},
|
|
4465
4465
|
{
|
|
@@ -4677,7 +4677,7 @@
|
|
|
4677
4677
|
"scope": 9304,
|
|
4678
4678
|
"src": "4104:182:17",
|
|
4679
4679
|
"stateMutability": "view",
|
|
4680
|
-
"superFunction":
|
|
4680
|
+
"superFunction": 10860,
|
|
4681
4681
|
"visibility": "external"
|
|
4682
4682
|
},
|
|
4683
4683
|
{
|
|
@@ -4696,7 +4696,7 @@
|
|
|
4696
4696
|
"referencedDeclaration": 7597,
|
|
4697
4697
|
"src": "4446:6:17",
|
|
4698
4698
|
"typeDescriptions": {
|
|
4699
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
4699
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
4700
4700
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
4701
4701
|
}
|
|
4702
4702
|
},
|
|
@@ -4734,7 +4734,7 @@
|
|
|
4734
4734
|
"stateVariable": false,
|
|
4735
4735
|
"storageLocation": "memory",
|
|
4736
4736
|
"typeDescriptions": {
|
|
4737
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
4737
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_memory_$dyn_memory_ptr",
|
|
4738
4738
|
"typeString": "struct ICash.token[]"
|
|
4739
4739
|
},
|
|
4740
4740
|
"typeName": {
|
|
@@ -4743,10 +4743,10 @@
|
|
|
4743
4743
|
"id": 7838,
|
|
4744
4744
|
"name": "ICash.token",
|
|
4745
4745
|
"nodeType": "UserDefinedTypeName",
|
|
4746
|
-
"referencedDeclaration":
|
|
4746
|
+
"referencedDeclaration": 10841,
|
|
4747
4747
|
"src": "4407:11:17",
|
|
4748
4748
|
"typeDescriptions": {
|
|
4749
|
-
"typeIdentifier": "t_struct$_token_$
|
|
4749
|
+
"typeIdentifier": "t_struct$_token_$10841_storage_ptr",
|
|
4750
4750
|
"typeString": "struct ICash.token"
|
|
4751
4751
|
}
|
|
4752
4752
|
},
|
|
@@ -4755,7 +4755,7 @@
|
|
|
4755
4755
|
"nodeType": "ArrayTypeName",
|
|
4756
4756
|
"src": "4407:13:17",
|
|
4757
4757
|
"typeDescriptions": {
|
|
4758
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
4758
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage_ptr",
|
|
4759
4759
|
"typeString": "struct ICash.token[]"
|
|
4760
4760
|
}
|
|
4761
4761
|
},
|
|
@@ -4768,7 +4768,7 @@
|
|
|
4768
4768
|
"scope": 9304,
|
|
4769
4769
|
"src": "4355:105:17",
|
|
4770
4770
|
"stateMutability": "view",
|
|
4771
|
-
"superFunction":
|
|
4771
|
+
"superFunction": 10866,
|
|
4772
4772
|
"visibility": "external"
|
|
4773
4773
|
},
|
|
4774
4774
|
{
|
|
@@ -4798,7 +4798,7 @@
|
|
|
4798
4798
|
"name": "paused",
|
|
4799
4799
|
"nodeType": "Identifier",
|
|
4800
4800
|
"overloadedDeclarations": [],
|
|
4801
|
-
"referencedDeclaration":
|
|
4801
|
+
"referencedDeclaration": 11193,
|
|
4802
4802
|
"src": "4867:6:17",
|
|
4803
4803
|
"typeDescriptions": {
|
|
4804
4804
|
"typeIdentifier": "t_bool",
|
|
@@ -4865,10 +4865,10 @@
|
|
|
4865
4865
|
"name": "require",
|
|
4866
4866
|
"nodeType": "Identifier",
|
|
4867
4867
|
"overloadedDeclarations": [
|
|
4868
|
-
|
|
4869
|
-
|
|
4868
|
+
11542,
|
|
4869
|
+
11543
|
|
4870
4870
|
],
|
|
4871
|
-
"referencedDeclaration":
|
|
4871
|
+
"referencedDeclaration": 11543,
|
|
4872
4872
|
"src": "4859:7:17",
|
|
4873
4873
|
"typeDescriptions": {
|
|
4874
4874
|
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
|
|
@@ -5138,7 +5138,7 @@
|
|
|
5138
5138
|
"name": "msg",
|
|
5139
5139
|
"nodeType": "Identifier",
|
|
5140
5140
|
"overloadedDeclarations": [],
|
|
5141
|
-
"referencedDeclaration":
|
|
5141
|
+
"referencedDeclaration": 11539,
|
|
5142
5142
|
"src": "5557:3:17",
|
|
5143
5143
|
"typeDescriptions": {
|
|
5144
5144
|
"typeIdentifier": "t_magic_message",
|
|
@@ -5403,7 +5403,7 @@
|
|
|
5403
5403
|
"name": "msg",
|
|
5404
5404
|
"nodeType": "Identifier",
|
|
5405
5405
|
"overloadedDeclarations": [],
|
|
5406
|
-
"referencedDeclaration":
|
|
5406
|
+
"referencedDeclaration": 11539,
|
|
5407
5407
|
"src": "5654:3:17",
|
|
5408
5408
|
"typeDescriptions": {
|
|
5409
5409
|
"typeIdentifier": "t_magic_message",
|
|
@@ -5512,7 +5512,7 @@
|
|
|
5512
5512
|
"name": "msg",
|
|
5513
5513
|
"nodeType": "Identifier",
|
|
5514
5514
|
"overloadedDeclarations": [],
|
|
5515
|
-
"referencedDeclaration":
|
|
5515
|
+
"referencedDeclaration": 11539,
|
|
5516
5516
|
"src": "5719:3:17",
|
|
5517
5517
|
"typeDescriptions": {
|
|
5518
5518
|
"typeIdentifier": "t_magic_message",
|
|
@@ -6149,7 +6149,7 @@
|
|
|
6149
6149
|
"name": "msg",
|
|
6150
6150
|
"nodeType": "Identifier",
|
|
6151
6151
|
"overloadedDeclarations": [],
|
|
6152
|
-
"referencedDeclaration":
|
|
6152
|
+
"referencedDeclaration": 11539,
|
|
6153
6153
|
"src": "5057:3:17",
|
|
6154
6154
|
"typeDescriptions": {
|
|
6155
6155
|
"typeIdentifier": "t_magic_message",
|
|
@@ -6179,7 +6179,7 @@
|
|
|
6179
6179
|
"name": "this",
|
|
6180
6180
|
"nodeType": "Identifier",
|
|
6181
6181
|
"overloadedDeclarations": [],
|
|
6182
|
-
"referencedDeclaration":
|
|
6182
|
+
"referencedDeclaration": 11599,
|
|
6183
6183
|
"src": "5077:4:17",
|
|
6184
6184
|
"typeDescriptions": {
|
|
6185
6185
|
"typeIdentifier": "t_contract$_Cash_$9304",
|
|
@@ -6325,7 +6325,7 @@
|
|
|
6325
6325
|
"referencedDeclaration": 7597,
|
|
6326
6326
|
"src": "5130:6:17",
|
|
6327
6327
|
"typeDescriptions": {
|
|
6328
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
6328
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
6329
6329
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
6330
6330
|
}
|
|
6331
6331
|
},
|
|
@@ -6414,7 +6414,7 @@
|
|
|
6414
6414
|
"nodeType": "IndexAccess",
|
|
6415
6415
|
"src": "5130:28:17",
|
|
6416
6416
|
"typeDescriptions": {
|
|
6417
|
-
"typeIdentifier": "t_struct$_token_$
|
|
6417
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
6418
6418
|
"typeString": "struct ICash.token storage ref"
|
|
6419
6419
|
}
|
|
6420
6420
|
},
|
|
@@ -6425,7 +6425,7 @@
|
|
|
6425
6425
|
"lValueRequested": false,
|
|
6426
6426
|
"memberName": "tokenName",
|
|
6427
6427
|
"nodeType": "MemberAccess",
|
|
6428
|
-
"referencedDeclaration":
|
|
6428
|
+
"referencedDeclaration": 10838,
|
|
6429
6429
|
"src": "5130:38:17",
|
|
6430
6430
|
"typeDescriptions": {
|
|
6431
6431
|
"typeIdentifier": "t_bytes32",
|
|
@@ -6447,7 +6447,7 @@
|
|
|
6447
6447
|
"name": "msg",
|
|
6448
6448
|
"nodeType": "Identifier",
|
|
6449
6449
|
"overloadedDeclarations": [],
|
|
6450
|
-
"referencedDeclaration":
|
|
6450
|
+
"referencedDeclaration": 11539,
|
|
6451
6451
|
"src": "5213:3:17",
|
|
6452
6452
|
"typeDescriptions": {
|
|
6453
6453
|
"typeIdentifier": "t_magic_message",
|
|
@@ -6477,7 +6477,7 @@
|
|
|
6477
6477
|
"name": "this",
|
|
6478
6478
|
"nodeType": "Identifier",
|
|
6479
6479
|
"overloadedDeclarations": [],
|
|
6480
|
-
"referencedDeclaration":
|
|
6480
|
+
"referencedDeclaration": 11599,
|
|
6481
6481
|
"src": "5233:4:17",
|
|
6482
6482
|
"typeDescriptions": {
|
|
6483
6483
|
"typeIdentifier": "t_contract$_Cash_$9304",
|
|
@@ -7140,7 +7140,7 @@
|
|
|
7140
7140
|
"scope": 9304,
|
|
7141
7141
|
"src": "4768:1265:17",
|
|
7142
7142
|
"stateMutability": "nonpayable",
|
|
7143
|
-
"superFunction":
|
|
7143
|
+
"superFunction": 10875,
|
|
7144
7144
|
"visibility": "external"
|
|
7145
7145
|
},
|
|
7146
7146
|
{
|
|
@@ -7237,7 +7237,7 @@
|
|
|
7237
7237
|
"name": "abi",
|
|
7238
7238
|
"nodeType": "Identifier",
|
|
7239
7239
|
"overloadedDeclarations": [],
|
|
7240
|
-
"referencedDeclaration":
|
|
7240
|
+
"referencedDeclaration": 11526,
|
|
7241
7241
|
"src": "6324:3:17",
|
|
7242
7242
|
"typeDescriptions": {
|
|
7243
7243
|
"typeIdentifier": "t_magic_abi",
|
|
@@ -7284,7 +7284,7 @@
|
|
|
7284
7284
|
"name": "keccak256",
|
|
7285
7285
|
"nodeType": "Identifier",
|
|
7286
7286
|
"overloadedDeclarations": [],
|
|
7287
|
-
"referencedDeclaration":
|
|
7287
|
+
"referencedDeclaration": 11533,
|
|
7288
7288
|
"src": "6314:9:17",
|
|
7289
7289
|
"typeDescriptions": {
|
|
7290
7290
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
@@ -7396,7 +7396,7 @@
|
|
|
7396
7396
|
"name": "abi",
|
|
7397
7397
|
"nodeType": "Identifier",
|
|
7398
7398
|
"overloadedDeclarations": [],
|
|
7399
|
-
"referencedDeclaration":
|
|
7399
|
+
"referencedDeclaration": 11526,
|
|
7400
7400
|
"src": "6404:3:17",
|
|
7401
7401
|
"typeDescriptions": {
|
|
7402
7402
|
"typeIdentifier": "t_magic_abi",
|
|
@@ -7443,7 +7443,7 @@
|
|
|
7443
7443
|
"name": "keccak256",
|
|
7444
7444
|
"nodeType": "Identifier",
|
|
7445
7445
|
"overloadedDeclarations": [],
|
|
7446
|
-
"referencedDeclaration":
|
|
7446
|
+
"referencedDeclaration": 11533,
|
|
7447
7447
|
"src": "6394:9:17",
|
|
7448
7448
|
"typeDescriptions": {
|
|
7449
7449
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
@@ -7561,7 +7561,7 @@
|
|
|
7561
7561
|
"name": "ecrecover",
|
|
7562
7562
|
"nodeType": "Identifier",
|
|
7563
7563
|
"overloadedDeclarations": [],
|
|
7564
|
-
"referencedDeclaration":
|
|
7564
|
+
"referencedDeclaration": 11531,
|
|
7565
7565
|
"src": "6489:9:17",
|
|
7566
7566
|
"typeDescriptions": {
|
|
7567
7567
|
"typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$",
|
|
@@ -7615,10 +7615,10 @@
|
|
|
7615
7615
|
"name": "require",
|
|
7616
7616
|
"nodeType": "Identifier",
|
|
7617
7617
|
"overloadedDeclarations": [
|
|
7618
|
-
|
|
7619
|
-
|
|
7618
|
+
11542,
|
|
7619
|
+
11543
|
|
7620
7620
|
],
|
|
7621
|
-
"referencedDeclaration":
|
|
7621
|
+
"referencedDeclaration": 11542,
|
|
7622
7622
|
"src": "6481:7:17",
|
|
7623
7623
|
"typeDescriptions": {
|
|
7624
7624
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -7710,7 +7710,7 @@
|
|
|
7710
7710
|
"referencedDeclaration": 7575,
|
|
7711
7711
|
"src": "6555:7:17",
|
|
7712
7712
|
"typeDescriptions": {
|
|
7713
|
-
"typeIdentifier": "t_contract$_IFactory_$
|
|
7713
|
+
"typeIdentifier": "t_contract$_IFactory_$11086",
|
|
7714
7714
|
"typeString": "contract IFactory"
|
|
7715
7715
|
}
|
|
7716
7716
|
},
|
|
@@ -7721,7 +7721,7 @@
|
|
|
7721
7721
|
"lValueRequested": false,
|
|
7722
7722
|
"memberName": "getIssuer",
|
|
7723
7723
|
"nodeType": "MemberAccess",
|
|
7724
|
-
"referencedDeclaration":
|
|
7724
|
+
"referencedDeclaration": 11010,
|
|
7725
7725
|
"src": "6555:17:17",
|
|
7726
7726
|
"typeDescriptions": {
|
|
7727
7727
|
"typeIdentifier": "t_function_external_view$_t_bytes32_$_t_bytes32_$returns$_t_address_$",
|
|
@@ -7753,7 +7753,7 @@
|
|
|
7753
7753
|
"name": "this",
|
|
7754
7754
|
"nodeType": "Identifier",
|
|
7755
7755
|
"overloadedDeclarations": [],
|
|
7756
|
-
"referencedDeclaration":
|
|
7756
|
+
"referencedDeclaration": 11599,
|
|
7757
7757
|
"src": "6603:4:17",
|
|
7758
7758
|
"typeDescriptions": {
|
|
7759
7759
|
"typeIdentifier": "t_contract$_Cash_$9304",
|
|
@@ -8468,7 +8468,7 @@
|
|
|
8468
8468
|
"scope": 9304,
|
|
8469
8469
|
"src": "6108:745:17",
|
|
8470
8470
|
"stateMutability": "nonpayable",
|
|
8471
|
-
"superFunction":
|
|
8471
|
+
"superFunction": 10911,
|
|
8472
8472
|
"visibility": "external"
|
|
8473
8473
|
},
|
|
8474
8474
|
{
|
|
@@ -8565,7 +8565,7 @@
|
|
|
8565
8565
|
"name": "abi",
|
|
8566
8566
|
"nodeType": "Identifier",
|
|
8567
8567
|
"overloadedDeclarations": [],
|
|
8568
|
-
"referencedDeclaration":
|
|
8568
|
+
"referencedDeclaration": 11526,
|
|
8569
8569
|
"src": "7207:3:17",
|
|
8570
8570
|
"typeDescriptions": {
|
|
8571
8571
|
"typeIdentifier": "t_magic_abi",
|
|
@@ -8612,7 +8612,7 @@
|
|
|
8612
8612
|
"name": "keccak256",
|
|
8613
8613
|
"nodeType": "Identifier",
|
|
8614
8614
|
"overloadedDeclarations": [],
|
|
8615
|
-
"referencedDeclaration":
|
|
8615
|
+
"referencedDeclaration": 11533,
|
|
8616
8616
|
"src": "7197:9:17",
|
|
8617
8617
|
"typeDescriptions": {
|
|
8618
8618
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
@@ -8724,7 +8724,7 @@
|
|
|
8724
8724
|
"name": "abi",
|
|
8725
8725
|
"nodeType": "Identifier",
|
|
8726
8726
|
"overloadedDeclarations": [],
|
|
8727
|
-
"referencedDeclaration":
|
|
8727
|
+
"referencedDeclaration": 11526,
|
|
8728
8728
|
"src": "7287:3:17",
|
|
8729
8729
|
"typeDescriptions": {
|
|
8730
8730
|
"typeIdentifier": "t_magic_abi",
|
|
@@ -8771,7 +8771,7 @@
|
|
|
8771
8771
|
"name": "keccak256",
|
|
8772
8772
|
"nodeType": "Identifier",
|
|
8773
8773
|
"overloadedDeclarations": [],
|
|
8774
|
-
"referencedDeclaration":
|
|
8774
|
+
"referencedDeclaration": 11533,
|
|
8775
8775
|
"src": "7277:9:17",
|
|
8776
8776
|
"typeDescriptions": {
|
|
8777
8777
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
@@ -8889,7 +8889,7 @@
|
|
|
8889
8889
|
"name": "ecrecover",
|
|
8890
8890
|
"nodeType": "Identifier",
|
|
8891
8891
|
"overloadedDeclarations": [],
|
|
8892
|
-
"referencedDeclaration":
|
|
8892
|
+
"referencedDeclaration": 11531,
|
|
8893
8893
|
"src": "7372:9:17",
|
|
8894
8894
|
"typeDescriptions": {
|
|
8895
8895
|
"typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$",
|
|
@@ -8943,10 +8943,10 @@
|
|
|
8943
8943
|
"name": "require",
|
|
8944
8944
|
"nodeType": "Identifier",
|
|
8945
8945
|
"overloadedDeclarations": [
|
|
8946
|
-
|
|
8947
|
-
|
|
8946
|
+
11542,
|
|
8947
|
+
11543
|
|
8948
8948
|
],
|
|
8949
|
-
"referencedDeclaration":
|
|
8949
|
+
"referencedDeclaration": 11542,
|
|
8950
8950
|
"src": "7364:7:17",
|
|
8951
8951
|
"typeDescriptions": {
|
|
8952
8952
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -10057,7 +10057,7 @@
|
|
|
10057
10057
|
"scope": 9304,
|
|
10058
10058
|
"src": "6968:906:17",
|
|
10059
10059
|
"stateMutability": "nonpayable",
|
|
10060
|
-
"superFunction":
|
|
10060
|
+
"superFunction": 10949,
|
|
10061
10061
|
"visibility": "external"
|
|
10062
10062
|
},
|
|
10063
10063
|
{
|
|
@@ -10154,7 +10154,7 @@
|
|
|
10154
10154
|
"name": "abi",
|
|
10155
10155
|
"nodeType": "Identifier",
|
|
10156
10156
|
"overloadedDeclarations": [],
|
|
10157
|
-
"referencedDeclaration":
|
|
10157
|
+
"referencedDeclaration": 11526,
|
|
10158
10158
|
"src": "8158:3:17",
|
|
10159
10159
|
"typeDescriptions": {
|
|
10160
10160
|
"typeIdentifier": "t_magic_abi",
|
|
@@ -10201,7 +10201,7 @@
|
|
|
10201
10201
|
"name": "keccak256",
|
|
10202
10202
|
"nodeType": "Identifier",
|
|
10203
10203
|
"overloadedDeclarations": [],
|
|
10204
|
-
"referencedDeclaration":
|
|
10204
|
+
"referencedDeclaration": 11533,
|
|
10205
10205
|
"src": "8148:9:17",
|
|
10206
10206
|
"typeDescriptions": {
|
|
10207
10207
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
@@ -10313,7 +10313,7 @@
|
|
|
10313
10313
|
"name": "abi",
|
|
10314
10314
|
"nodeType": "Identifier",
|
|
10315
10315
|
"overloadedDeclarations": [],
|
|
10316
|
-
"referencedDeclaration":
|
|
10316
|
+
"referencedDeclaration": 11526,
|
|
10317
10317
|
"src": "8238:3:17",
|
|
10318
10318
|
"typeDescriptions": {
|
|
10319
10319
|
"typeIdentifier": "t_magic_abi",
|
|
@@ -10360,7 +10360,7 @@
|
|
|
10360
10360
|
"name": "keccak256",
|
|
10361
10361
|
"nodeType": "Identifier",
|
|
10362
10362
|
"overloadedDeclarations": [],
|
|
10363
|
-
"referencedDeclaration":
|
|
10363
|
+
"referencedDeclaration": 11533,
|
|
10364
10364
|
"src": "8228:9:17",
|
|
10365
10365
|
"typeDescriptions": {
|
|
10366
10366
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
@@ -10478,7 +10478,7 @@
|
|
|
10478
10478
|
"name": "ecrecover",
|
|
10479
10479
|
"nodeType": "Identifier",
|
|
10480
10480
|
"overloadedDeclarations": [],
|
|
10481
|
-
"referencedDeclaration":
|
|
10481
|
+
"referencedDeclaration": 11531,
|
|
10482
10482
|
"src": "8323:9:17",
|
|
10483
10483
|
"typeDescriptions": {
|
|
10484
10484
|
"typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$",
|
|
@@ -10532,10 +10532,10 @@
|
|
|
10532
10532
|
"name": "require",
|
|
10533
10533
|
"nodeType": "Identifier",
|
|
10534
10534
|
"overloadedDeclarations": [
|
|
10535
|
-
|
|
10536
|
-
|
|
10535
|
+
11542,
|
|
10536
|
+
11543
|
|
10537
10537
|
],
|
|
10538
|
-
"referencedDeclaration":
|
|
10538
|
+
"referencedDeclaration": 11542,
|
|
10539
10539
|
"src": "8315:7:17",
|
|
10540
10540
|
"typeDescriptions": {
|
|
10541
10541
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -10815,7 +10815,7 @@
|
|
|
10815
10815
|
"referencedDeclaration": 7597,
|
|
10816
10816
|
"src": "8812:6:17",
|
|
10817
10817
|
"typeDescriptions": {
|
|
10818
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
10818
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
10819
10819
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
10820
10820
|
}
|
|
10821
10821
|
},
|
|
@@ -10840,7 +10840,7 @@
|
|
|
10840
10840
|
"nodeType": "IndexAccess",
|
|
10841
10841
|
"src": "8812:9:17",
|
|
10842
10842
|
"typeDescriptions": {
|
|
10843
|
-
"typeIdentifier": "t_struct$_token_$
|
|
10843
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
10844
10844
|
"typeString": "struct ICash.token storage ref"
|
|
10845
10845
|
}
|
|
10846
10846
|
},
|
|
@@ -10851,7 +10851,7 @@
|
|
|
10851
10851
|
"lValueRequested": false,
|
|
10852
10852
|
"memberName": "tokenName",
|
|
10853
10853
|
"nodeType": "MemberAccess",
|
|
10854
|
-
"referencedDeclaration":
|
|
10854
|
+
"referencedDeclaration": 10838,
|
|
10855
10855
|
"src": "8812:19:17",
|
|
10856
10856
|
"typeDescriptions": {
|
|
10857
10857
|
"typeIdentifier": "t_bytes32",
|
|
@@ -10946,7 +10946,7 @@
|
|
|
10946
10946
|
"referencedDeclaration": 7597,
|
|
10947
10947
|
"src": "8871:6:17",
|
|
10948
10948
|
"typeDescriptions": {
|
|
10949
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
10949
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
10950
10950
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
10951
10951
|
}
|
|
10952
10952
|
},
|
|
@@ -10971,7 +10971,7 @@
|
|
|
10971
10971
|
"nodeType": "IndexAccess",
|
|
10972
10972
|
"src": "8871:9:17",
|
|
10973
10973
|
"typeDescriptions": {
|
|
10974
|
-
"typeIdentifier": "t_struct$_token_$
|
|
10974
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
10975
10975
|
"typeString": "struct ICash.token storage ref"
|
|
10976
10976
|
}
|
|
10977
10977
|
},
|
|
@@ -10982,7 +10982,7 @@
|
|
|
10982
10982
|
"lValueRequested": false,
|
|
10983
10983
|
"memberName": "tokenAddress",
|
|
10984
10984
|
"nodeType": "MemberAccess",
|
|
10985
|
-
"referencedDeclaration":
|
|
10985
|
+
"referencedDeclaration": 10840,
|
|
10986
10986
|
"src": "8871:22:17",
|
|
10987
10987
|
"typeDescriptions": {
|
|
10988
10988
|
"typeIdentifier": "t_address",
|
|
@@ -11403,7 +11403,7 @@
|
|
|
11403
11403
|
"referencedDeclaration": 7597,
|
|
11404
11404
|
"src": "8771:6:17",
|
|
11405
11405
|
"typeDescriptions": {
|
|
11406
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
11406
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
11407
11407
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
11408
11408
|
}
|
|
11409
11409
|
},
|
|
@@ -12307,7 +12307,7 @@
|
|
|
12307
12307
|
"scope": 9304,
|
|
12308
12308
|
"src": "7925:1270:17",
|
|
12309
12309
|
"stateMutability": "nonpayable",
|
|
12310
|
-
"superFunction":
|
|
12310
|
+
"superFunction": 10894,
|
|
12311
12311
|
"visibility": "external"
|
|
12312
12312
|
},
|
|
12313
12313
|
{
|
|
@@ -12404,7 +12404,7 @@
|
|
|
12404
12404
|
"name": "abi",
|
|
12405
12405
|
"nodeType": "Identifier",
|
|
12406
12406
|
"overloadedDeclarations": [],
|
|
12407
|
-
"referencedDeclaration":
|
|
12407
|
+
"referencedDeclaration": 11526,
|
|
12408
12408
|
"src": "9502:3:17",
|
|
12409
12409
|
"typeDescriptions": {
|
|
12410
12410
|
"typeIdentifier": "t_magic_abi",
|
|
@@ -12451,7 +12451,7 @@
|
|
|
12451
12451
|
"name": "keccak256",
|
|
12452
12452
|
"nodeType": "Identifier",
|
|
12453
12453
|
"overloadedDeclarations": [],
|
|
12454
|
-
"referencedDeclaration":
|
|
12454
|
+
"referencedDeclaration": 11533,
|
|
12455
12455
|
"src": "9492:9:17",
|
|
12456
12456
|
"typeDescriptions": {
|
|
12457
12457
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
@@ -12563,7 +12563,7 @@
|
|
|
12563
12563
|
"name": "abi",
|
|
12564
12564
|
"nodeType": "Identifier",
|
|
12565
12565
|
"overloadedDeclarations": [],
|
|
12566
|
-
"referencedDeclaration":
|
|
12566
|
+
"referencedDeclaration": 11526,
|
|
12567
12567
|
"src": "9582:3:17",
|
|
12568
12568
|
"typeDescriptions": {
|
|
12569
12569
|
"typeIdentifier": "t_magic_abi",
|
|
@@ -12610,7 +12610,7 @@
|
|
|
12610
12610
|
"name": "keccak256",
|
|
12611
12611
|
"nodeType": "Identifier",
|
|
12612
12612
|
"overloadedDeclarations": [],
|
|
12613
|
-
"referencedDeclaration":
|
|
12613
|
+
"referencedDeclaration": 11533,
|
|
12614
12614
|
"src": "9572:9:17",
|
|
12615
12615
|
"typeDescriptions": {
|
|
12616
12616
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
@@ -12728,7 +12728,7 @@
|
|
|
12728
12728
|
"name": "ecrecover",
|
|
12729
12729
|
"nodeType": "Identifier",
|
|
12730
12730
|
"overloadedDeclarations": [],
|
|
12731
|
-
"referencedDeclaration":
|
|
12731
|
+
"referencedDeclaration": 11531,
|
|
12732
12732
|
"src": "9667:9:17",
|
|
12733
12733
|
"typeDescriptions": {
|
|
12734
12734
|
"typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$",
|
|
@@ -12782,10 +12782,10 @@
|
|
|
12782
12782
|
"name": "require",
|
|
12783
12783
|
"nodeType": "Identifier",
|
|
12784
12784
|
"overloadedDeclarations": [
|
|
12785
|
-
|
|
12786
|
-
|
|
12785
|
+
11542,
|
|
12786
|
+
11543
|
|
12787
12787
|
],
|
|
12788
|
-
"referencedDeclaration":
|
|
12788
|
+
"referencedDeclaration": 11542,
|
|
12789
12789
|
"src": "9659:7:17",
|
|
12790
12790
|
"typeDescriptions": {
|
|
12791
12791
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -13437,7 +13437,7 @@
|
|
|
13437
13437
|
"name": "this",
|
|
13438
13438
|
"nodeType": "Identifier",
|
|
13439
13439
|
"overloadedDeclarations": [],
|
|
13440
|
-
"referencedDeclaration":
|
|
13440
|
+
"referencedDeclaration": 11599,
|
|
13441
13441
|
"src": "10052:4:17",
|
|
13442
13442
|
"typeDescriptions": {
|
|
13443
13443
|
"typeIdentifier": "t_contract$_Cash_$9304",
|
|
@@ -13546,7 +13546,7 @@
|
|
|
13546
13546
|
"name": "this",
|
|
13547
13547
|
"nodeType": "Identifier",
|
|
13548
13548
|
"overloadedDeclarations": [],
|
|
13549
|
-
"referencedDeclaration":
|
|
13549
|
+
"referencedDeclaration": 11599,
|
|
13550
13550
|
"src": "10095:4:17",
|
|
13551
13551
|
"typeDescriptions": {
|
|
13552
13552
|
"typeIdentifier": "t_contract$_Cash_$9304",
|
|
@@ -14595,7 +14595,7 @@
|
|
|
14595
14595
|
"scope": 9304,
|
|
14596
14596
|
"src": "9258:1238:17",
|
|
14597
14597
|
"stateMutability": "nonpayable",
|
|
14598
|
-
"superFunction":
|
|
14598
|
+
"superFunction": 10930,
|
|
14599
14599
|
"visibility": "external"
|
|
14600
14600
|
},
|
|
14601
14601
|
{
|
|
@@ -14625,7 +14625,7 @@
|
|
|
14625
14625
|
"name": "paused",
|
|
14626
14626
|
"nodeType": "Identifier",
|
|
14627
14627
|
"overloadedDeclarations": [],
|
|
14628
|
-
"referencedDeclaration":
|
|
14628
|
+
"referencedDeclaration": 11193,
|
|
14629
14629
|
"src": "10786:6:17",
|
|
14630
14630
|
"typeDescriptions": {
|
|
14631
14631
|
"typeIdentifier": "t_bool",
|
|
@@ -14670,10 +14670,10 @@
|
|
|
14670
14670
|
"name": "require",
|
|
14671
14671
|
"nodeType": "Identifier",
|
|
14672
14672
|
"overloadedDeclarations": [
|
|
14673
|
-
|
|
14674
|
-
|
|
14673
|
+
11542,
|
|
14674
|
+
11543
|
|
14675
14675
|
],
|
|
14676
|
-
"referencedDeclaration":
|
|
14676
|
+
"referencedDeclaration": 11542,
|
|
14677
14677
|
"src": "10778:7:17",
|
|
14678
14678
|
"typeDescriptions": {
|
|
14679
14679
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -14973,10 +14973,10 @@
|
|
|
14973
14973
|
"name": "require",
|
|
14974
14974
|
"nodeType": "Identifier",
|
|
14975
14975
|
"overloadedDeclarations": [
|
|
14976
|
-
|
|
14977
|
-
|
|
14976
|
+
11542,
|
|
14977
|
+
11543
|
|
14978
14978
|
],
|
|
14979
|
-
"referencedDeclaration":
|
|
14979
|
+
"referencedDeclaration": 11542,
|
|
14980
14980
|
"src": "11023:7:17",
|
|
14981
14981
|
"typeDescriptions": {
|
|
14982
14982
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -15037,7 +15037,7 @@
|
|
|
15037
15037
|
"name": "this",
|
|
15038
15038
|
"nodeType": "Identifier",
|
|
15039
15039
|
"overloadedDeclarations": [],
|
|
15040
|
-
"referencedDeclaration":
|
|
15040
|
+
"referencedDeclaration": 11599,
|
|
15041
15041
|
"src": "11227:4:17",
|
|
15042
15042
|
"typeDescriptions": {
|
|
15043
15043
|
"typeIdentifier": "t_contract$_Cash_$9304",
|
|
@@ -15141,7 +15141,7 @@
|
|
|
15141
15141
|
"referencedDeclaration": 7575,
|
|
15142
15142
|
"src": "11504:7:17",
|
|
15143
15143
|
"typeDescriptions": {
|
|
15144
|
-
"typeIdentifier": "t_contract$_IFactory_$
|
|
15144
|
+
"typeIdentifier": "t_contract$_IFactory_$11086",
|
|
15145
15145
|
"typeString": "contract IFactory"
|
|
15146
15146
|
}
|
|
15147
15147
|
},
|
|
@@ -15152,7 +15152,7 @@
|
|
|
15152
15152
|
"lValueRequested": false,
|
|
15153
15153
|
"memberName": "getType",
|
|
15154
15154
|
"nodeType": "MemberAccess",
|
|
15155
|
-
"referencedDeclaration":
|
|
15155
|
+
"referencedDeclaration": 10983,
|
|
15156
15156
|
"src": "11504:15:17",
|
|
15157
15157
|
"typeDescriptions": {
|
|
15158
15158
|
"typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bytes32_$",
|
|
@@ -15245,7 +15245,7 @@
|
|
|
15245
15245
|
"referencedDeclaration": 7575,
|
|
15246
15246
|
"src": "11544:7:17",
|
|
15247
15247
|
"typeDescriptions": {
|
|
15248
|
-
"typeIdentifier": "t_contract$_IFactory_$
|
|
15248
|
+
"typeIdentifier": "t_contract$_IFactory_$11086",
|
|
15249
15249
|
"typeString": "contract IFactory"
|
|
15250
15250
|
}
|
|
15251
15251
|
},
|
|
@@ -15256,7 +15256,7 @@
|
|
|
15256
15256
|
"lValueRequested": false,
|
|
15257
15257
|
"memberName": "getType",
|
|
15258
15258
|
"nodeType": "MemberAccess",
|
|
15259
|
-
"referencedDeclaration":
|
|
15259
|
+
"referencedDeclaration": 10983,
|
|
15260
15260
|
"src": "11544:15:17",
|
|
15261
15261
|
"typeDescriptions": {
|
|
15262
15262
|
"typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bytes32_$",
|
|
@@ -15766,7 +15766,7 @@
|
|
|
15766
15766
|
"name": "this",
|
|
15767
15767
|
"nodeType": "Identifier",
|
|
15768
15768
|
"overloadedDeclarations": [],
|
|
15769
|
-
"referencedDeclaration":
|
|
15769
|
+
"referencedDeclaration": 11599,
|
|
15770
15770
|
"src": "11389:4:17",
|
|
15771
15771
|
"typeDescriptions": {
|
|
15772
15772
|
"typeIdentifier": "t_contract$_Cash_$9304",
|
|
@@ -16182,7 +16182,7 @@
|
|
|
16182
16182
|
"referencedDeclaration": 7597,
|
|
16183
16183
|
"src": "12643:6:17",
|
|
16184
16184
|
"typeDescriptions": {
|
|
16185
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
16185
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
16186
16186
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
16187
16187
|
}
|
|
16188
16188
|
},
|
|
@@ -16207,7 +16207,7 @@
|
|
|
16207
16207
|
"nodeType": "IndexAccess",
|
|
16208
16208
|
"src": "12643:9:17",
|
|
16209
16209
|
"typeDescriptions": {
|
|
16210
|
-
"typeIdentifier": "t_struct$_token_$
|
|
16210
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
16211
16211
|
"typeString": "struct ICash.token storage ref"
|
|
16212
16212
|
}
|
|
16213
16213
|
},
|
|
@@ -16218,7 +16218,7 @@
|
|
|
16218
16218
|
"lValueRequested": false,
|
|
16219
16219
|
"memberName": "tokenName",
|
|
16220
16220
|
"nodeType": "MemberAccess",
|
|
16221
|
-
"referencedDeclaration":
|
|
16221
|
+
"referencedDeclaration": 10838,
|
|
16222
16222
|
"src": "12643:19:17",
|
|
16223
16223
|
"typeDescriptions": {
|
|
16224
16224
|
"typeIdentifier": "t_bytes32",
|
|
@@ -16415,7 +16415,7 @@
|
|
|
16415
16415
|
"referencedDeclaration": 7597,
|
|
16416
16416
|
"src": "15158:6:17",
|
|
16417
16417
|
"typeDescriptions": {
|
|
16418
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
16418
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
16419
16419
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
16420
16420
|
}
|
|
16421
16421
|
},
|
|
@@ -16440,7 +16440,7 @@
|
|
|
16440
16440
|
"nodeType": "IndexAccess",
|
|
16441
16441
|
"src": "15158:9:17",
|
|
16442
16442
|
"typeDescriptions": {
|
|
16443
|
-
"typeIdentifier": "t_struct$_token_$
|
|
16443
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
16444
16444
|
"typeString": "struct ICash.token storage ref"
|
|
16445
16445
|
}
|
|
16446
16446
|
},
|
|
@@ -16451,7 +16451,7 @@
|
|
|
16451
16451
|
"lValueRequested": false,
|
|
16452
16452
|
"memberName": "tokenName",
|
|
16453
16453
|
"nodeType": "MemberAccess",
|
|
16454
|
-
"referencedDeclaration":
|
|
16454
|
+
"referencedDeclaration": 10838,
|
|
16455
16455
|
"src": "15158:19:17",
|
|
16456
16456
|
"typeDescriptions": {
|
|
16457
16457
|
"typeIdentifier": "t_bytes32",
|
|
@@ -16634,10 +16634,10 @@
|
|
|
16634
16634
|
"name": "require",
|
|
16635
16635
|
"nodeType": "Identifier",
|
|
16636
16636
|
"overloadedDeclarations": [
|
|
16637
|
-
|
|
16638
|
-
|
|
16637
|
+
11542,
|
|
16638
|
+
11543
|
|
16639
16639
|
],
|
|
16640
|
-
"referencedDeclaration":
|
|
16640
|
+
"referencedDeclaration": 11542,
|
|
16641
16641
|
"src": "15217:7:17",
|
|
16642
16642
|
"typeDescriptions": {
|
|
16643
16643
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -16945,7 +16945,7 @@
|
|
|
16945
16945
|
"referencedDeclaration": 7597,
|
|
16946
16946
|
"src": "16493:6:17",
|
|
16947
16947
|
"typeDescriptions": {
|
|
16948
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
16948
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
16949
16949
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
16950
16950
|
}
|
|
16951
16951
|
},
|
|
@@ -16970,7 +16970,7 @@
|
|
|
16970
16970
|
"nodeType": "IndexAccess",
|
|
16971
16971
|
"src": "16493:9:17",
|
|
16972
16972
|
"typeDescriptions": {
|
|
16973
|
-
"typeIdentifier": "t_struct$_token_$
|
|
16973
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
16974
16974
|
"typeString": "struct ICash.token storage ref"
|
|
16975
16975
|
}
|
|
16976
16976
|
},
|
|
@@ -16981,7 +16981,7 @@
|
|
|
16981
16981
|
"lValueRequested": false,
|
|
16982
16982
|
"memberName": "tokenName",
|
|
16983
16983
|
"nodeType": "MemberAccess",
|
|
16984
|
-
"referencedDeclaration":
|
|
16984
|
+
"referencedDeclaration": 10838,
|
|
16985
16985
|
"src": "16493:19:17",
|
|
16986
16986
|
"typeDescriptions": {
|
|
16987
16987
|
"typeIdentifier": "t_bytes32",
|
|
@@ -17071,7 +17071,7 @@
|
|
|
17071
17071
|
"referencedDeclaration": 7597,
|
|
17072
17072
|
"src": "16546:6:17",
|
|
17073
17073
|
"typeDescriptions": {
|
|
17074
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
17074
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
17075
17075
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
17076
17076
|
}
|
|
17077
17077
|
},
|
|
@@ -17096,7 +17096,7 @@
|
|
|
17096
17096
|
"nodeType": "IndexAccess",
|
|
17097
17097
|
"src": "16546:9:17",
|
|
17098
17098
|
"typeDescriptions": {
|
|
17099
|
-
"typeIdentifier": "t_struct$_token_$
|
|
17099
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
17100
17100
|
"typeString": "struct ICash.token storage ref"
|
|
17101
17101
|
}
|
|
17102
17102
|
},
|
|
@@ -17107,7 +17107,7 @@
|
|
|
17107
17107
|
"lValueRequested": false,
|
|
17108
17108
|
"memberName": "tokenName",
|
|
17109
17109
|
"nodeType": "MemberAccess",
|
|
17110
|
-
"referencedDeclaration":
|
|
17110
|
+
"referencedDeclaration": 10838,
|
|
17111
17111
|
"src": "16546:19:17",
|
|
17112
17112
|
"typeDescriptions": {
|
|
17113
17113
|
"typeIdentifier": "t_bytes32",
|
|
@@ -17152,7 +17152,7 @@
|
|
|
17152
17152
|
"referencedDeclaration": 7597,
|
|
17153
17153
|
"src": "16582:6:17",
|
|
17154
17154
|
"typeDescriptions": {
|
|
17155
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
17155
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
17156
17156
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
17157
17157
|
}
|
|
17158
17158
|
},
|
|
@@ -17177,7 +17177,7 @@
|
|
|
17177
17177
|
"nodeType": "IndexAccess",
|
|
17178
17178
|
"src": "16582:9:17",
|
|
17179
17179
|
"typeDescriptions": {
|
|
17180
|
-
"typeIdentifier": "t_struct$_token_$
|
|
17180
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
17181
17181
|
"typeString": "struct ICash.token storage ref"
|
|
17182
17182
|
}
|
|
17183
17183
|
},
|
|
@@ -17188,7 +17188,7 @@
|
|
|
17188
17188
|
"lValueRequested": false,
|
|
17189
17189
|
"memberName": "tokenName",
|
|
17190
17190
|
"nodeType": "MemberAccess",
|
|
17191
|
-
"referencedDeclaration":
|
|
17191
|
+
"referencedDeclaration": 10838,
|
|
17192
17192
|
"src": "16582:19:17",
|
|
17193
17193
|
"typeDescriptions": {
|
|
17194
17194
|
"typeIdentifier": "t_bytes32",
|
|
@@ -17551,7 +17551,7 @@
|
|
|
17551
17551
|
"referencedDeclaration": 7597,
|
|
17552
17552
|
"src": "16853:6:17",
|
|
17553
17553
|
"typeDescriptions": {
|
|
17554
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
17554
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
17555
17555
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
17556
17556
|
}
|
|
17557
17557
|
},
|
|
@@ -17576,7 +17576,7 @@
|
|
|
17576
17576
|
"nodeType": "IndexAccess",
|
|
17577
17577
|
"src": "16853:9:17",
|
|
17578
17578
|
"typeDescriptions": {
|
|
17579
|
-
"typeIdentifier": "t_struct$_token_$
|
|
17579
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
17580
17580
|
"typeString": "struct ICash.token storage ref"
|
|
17581
17581
|
}
|
|
17582
17582
|
},
|
|
@@ -17587,7 +17587,7 @@
|
|
|
17587
17587
|
"lValueRequested": false,
|
|
17588
17588
|
"memberName": "tokenName",
|
|
17589
17589
|
"nodeType": "MemberAccess",
|
|
17590
|
-
"referencedDeclaration":
|
|
17590
|
+
"referencedDeclaration": 10838,
|
|
17591
17591
|
"src": "16853:19:17",
|
|
17592
17592
|
"typeDescriptions": {
|
|
17593
17593
|
"typeIdentifier": "t_bytes32",
|
|
@@ -17682,7 +17682,7 @@
|
|
|
17682
17682
|
"referencedDeclaration": 7597,
|
|
17683
17683
|
"src": "16928:6:17",
|
|
17684
17684
|
"typeDescriptions": {
|
|
17685
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
17685
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
17686
17686
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
17687
17687
|
}
|
|
17688
17688
|
},
|
|
@@ -17707,7 +17707,7 @@
|
|
|
17707
17707
|
"nodeType": "IndexAccess",
|
|
17708
17708
|
"src": "16928:9:17",
|
|
17709
17709
|
"typeDescriptions": {
|
|
17710
|
-
"typeIdentifier": "t_struct$_token_$
|
|
17710
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
17711
17711
|
"typeString": "struct ICash.token storage ref"
|
|
17712
17712
|
}
|
|
17713
17713
|
},
|
|
@@ -17718,7 +17718,7 @@
|
|
|
17718
17718
|
"lValueRequested": false,
|
|
17719
17719
|
"memberName": "tokenName",
|
|
17720
17720
|
"nodeType": "MemberAccess",
|
|
17721
|
-
"referencedDeclaration":
|
|
17721
|
+
"referencedDeclaration": 10838,
|
|
17722
17722
|
"src": "16928:19:17",
|
|
17723
17723
|
"typeDescriptions": {
|
|
17724
17724
|
"typeIdentifier": "t_bytes32",
|
|
@@ -17892,7 +17892,7 @@
|
|
|
17892
17892
|
"referencedDeclaration": 7597,
|
|
17893
17893
|
"src": "17061:6:17",
|
|
17894
17894
|
"typeDescriptions": {
|
|
17895
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
17895
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
17896
17896
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
17897
17897
|
}
|
|
17898
17898
|
},
|
|
@@ -17917,7 +17917,7 @@
|
|
|
17917
17917
|
"nodeType": "IndexAccess",
|
|
17918
17918
|
"src": "17061:9:17",
|
|
17919
17919
|
"typeDescriptions": {
|
|
17920
|
-
"typeIdentifier": "t_struct$_token_$
|
|
17920
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
17921
17921
|
"typeString": "struct ICash.token storage ref"
|
|
17922
17922
|
}
|
|
17923
17923
|
},
|
|
@@ -17928,7 +17928,7 @@
|
|
|
17928
17928
|
"lValueRequested": false,
|
|
17929
17929
|
"memberName": "tokenName",
|
|
17930
17930
|
"nodeType": "MemberAccess",
|
|
17931
|
-
"referencedDeclaration":
|
|
17931
|
+
"referencedDeclaration": 10838,
|
|
17932
17932
|
"src": "17061:19:17",
|
|
17933
17933
|
"typeDescriptions": {
|
|
17934
17934
|
"typeIdentifier": "t_bytes32",
|
|
@@ -18023,7 +18023,7 @@
|
|
|
18023
18023
|
"referencedDeclaration": 7597,
|
|
18024
18024
|
"src": "17135:6:17",
|
|
18025
18025
|
"typeDescriptions": {
|
|
18026
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
18026
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
18027
18027
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
18028
18028
|
}
|
|
18029
18029
|
},
|
|
@@ -18048,7 +18048,7 @@
|
|
|
18048
18048
|
"nodeType": "IndexAccess",
|
|
18049
18049
|
"src": "17135:9:17",
|
|
18050
18050
|
"typeDescriptions": {
|
|
18051
|
-
"typeIdentifier": "t_struct$_token_$
|
|
18051
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
18052
18052
|
"typeString": "struct ICash.token storage ref"
|
|
18053
18053
|
}
|
|
18054
18054
|
},
|
|
@@ -18059,7 +18059,7 @@
|
|
|
18059
18059
|
"lValueRequested": false,
|
|
18060
18060
|
"memberName": "tokenName",
|
|
18061
18061
|
"nodeType": "MemberAccess",
|
|
18062
|
-
"referencedDeclaration":
|
|
18062
|
+
"referencedDeclaration": 10838,
|
|
18063
18063
|
"src": "17135:19:17",
|
|
18064
18064
|
"typeDescriptions": {
|
|
18065
18065
|
"typeIdentifier": "t_bytes32",
|
|
@@ -18210,7 +18210,7 @@
|
|
|
18210
18210
|
"referencedDeclaration": 7597,
|
|
18211
18211
|
"src": "17232:6:17",
|
|
18212
18212
|
"typeDescriptions": {
|
|
18213
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
18213
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
18214
18214
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
18215
18215
|
}
|
|
18216
18216
|
},
|
|
@@ -18235,7 +18235,7 @@
|
|
|
18235
18235
|
"nodeType": "IndexAccess",
|
|
18236
18236
|
"src": "17232:9:17",
|
|
18237
18237
|
"typeDescriptions": {
|
|
18238
|
-
"typeIdentifier": "t_struct$_token_$
|
|
18238
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
18239
18239
|
"typeString": "struct ICash.token storage ref"
|
|
18240
18240
|
}
|
|
18241
18241
|
},
|
|
@@ -18246,7 +18246,7 @@
|
|
|
18246
18246
|
"lValueRequested": false,
|
|
18247
18247
|
"memberName": "tokenName",
|
|
18248
18248
|
"nodeType": "MemberAccess",
|
|
18249
|
-
"referencedDeclaration":
|
|
18249
|
+
"referencedDeclaration": 10838,
|
|
18250
18250
|
"src": "17232:19:17",
|
|
18251
18251
|
"typeDescriptions": {
|
|
18252
18252
|
"typeIdentifier": "t_bytes32",
|
|
@@ -18456,7 +18456,7 @@
|
|
|
18456
18456
|
"referencedDeclaration": 7597,
|
|
18457
18457
|
"src": "15420:6:17",
|
|
18458
18458
|
"typeDescriptions": {
|
|
18459
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
18459
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
18460
18460
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
18461
18461
|
}
|
|
18462
18462
|
},
|
|
@@ -18481,7 +18481,7 @@
|
|
|
18481
18481
|
"nodeType": "IndexAccess",
|
|
18482
18482
|
"src": "15420:9:17",
|
|
18483
18483
|
"typeDescriptions": {
|
|
18484
|
-
"typeIdentifier": "t_struct$_token_$
|
|
18484
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
18485
18485
|
"typeString": "struct ICash.token storage ref"
|
|
18486
18486
|
}
|
|
18487
18487
|
},
|
|
@@ -18492,7 +18492,7 @@
|
|
|
18492
18492
|
"lValueRequested": false,
|
|
18493
18493
|
"memberName": "tokenName",
|
|
18494
18494
|
"nodeType": "MemberAccess",
|
|
18495
|
-
"referencedDeclaration":
|
|
18495
|
+
"referencedDeclaration": 10838,
|
|
18496
18496
|
"src": "15420:19:17",
|
|
18497
18497
|
"typeDescriptions": {
|
|
18498
18498
|
"typeIdentifier": "t_bytes32",
|
|
@@ -18705,7 +18705,7 @@
|
|
|
18705
18705
|
"referencedDeclaration": 7597,
|
|
18706
18706
|
"src": "15608:6:17",
|
|
18707
18707
|
"typeDescriptions": {
|
|
18708
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
18708
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
18709
18709
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
18710
18710
|
}
|
|
18711
18711
|
},
|
|
@@ -18730,7 +18730,7 @@
|
|
|
18730
18730
|
"nodeType": "IndexAccess",
|
|
18731
18731
|
"src": "15608:9:17",
|
|
18732
18732
|
"typeDescriptions": {
|
|
18733
|
-
"typeIdentifier": "t_struct$_token_$
|
|
18733
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
18734
18734
|
"typeString": "struct ICash.token storage ref"
|
|
18735
18735
|
}
|
|
18736
18736
|
},
|
|
@@ -18741,7 +18741,7 @@
|
|
|
18741
18741
|
"lValueRequested": false,
|
|
18742
18742
|
"memberName": "tokenName",
|
|
18743
18743
|
"nodeType": "MemberAccess",
|
|
18744
|
-
"referencedDeclaration":
|
|
18744
|
+
"referencedDeclaration": 10838,
|
|
18745
18745
|
"src": "15608:19:17",
|
|
18746
18746
|
"typeDescriptions": {
|
|
18747
18747
|
"typeIdentifier": "t_bytes32",
|
|
@@ -18801,7 +18801,7 @@
|
|
|
18801
18801
|
"referencedDeclaration": 7597,
|
|
18802
18802
|
"src": "15780:6:17",
|
|
18803
18803
|
"typeDescriptions": {
|
|
18804
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
18804
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
18805
18805
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
18806
18806
|
}
|
|
18807
18807
|
},
|
|
@@ -18826,7 +18826,7 @@
|
|
|
18826
18826
|
"nodeType": "IndexAccess",
|
|
18827
18827
|
"src": "15780:9:17",
|
|
18828
18828
|
"typeDescriptions": {
|
|
18829
|
-
"typeIdentifier": "t_struct$_token_$
|
|
18829
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
18830
18830
|
"typeString": "struct ICash.token storage ref"
|
|
18831
18831
|
}
|
|
18832
18832
|
},
|
|
@@ -18837,7 +18837,7 @@
|
|
|
18837
18837
|
"lValueRequested": false,
|
|
18838
18838
|
"memberName": "tokenName",
|
|
18839
18839
|
"nodeType": "MemberAccess",
|
|
18840
|
-
"referencedDeclaration":
|
|
18840
|
+
"referencedDeclaration": 10838,
|
|
18841
18841
|
"src": "15780:19:17",
|
|
18842
18842
|
"typeDescriptions": {
|
|
18843
18843
|
"typeIdentifier": "t_bytes32",
|
|
@@ -18985,7 +18985,7 @@
|
|
|
18985
18985
|
"referencedDeclaration": 7597,
|
|
18986
18986
|
"src": "15983:6:17",
|
|
18987
18987
|
"typeDescriptions": {
|
|
18988
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
18988
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
18989
18989
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
18990
18990
|
}
|
|
18991
18991
|
},
|
|
@@ -19010,7 +19010,7 @@
|
|
|
19010
19010
|
"nodeType": "IndexAccess",
|
|
19011
19011
|
"src": "15983:9:17",
|
|
19012
19012
|
"typeDescriptions": {
|
|
19013
|
-
"typeIdentifier": "t_struct$_token_$
|
|
19013
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
19014
19014
|
"typeString": "struct ICash.token storage ref"
|
|
19015
19015
|
}
|
|
19016
19016
|
},
|
|
@@ -19021,7 +19021,7 @@
|
|
|
19021
19021
|
"lValueRequested": false,
|
|
19022
19022
|
"memberName": "tokenAddress",
|
|
19023
19023
|
"nodeType": "MemberAccess",
|
|
19024
|
-
"referencedDeclaration":
|
|
19024
|
+
"referencedDeclaration": 10840,
|
|
19025
19025
|
"src": "15983:22:17",
|
|
19026
19026
|
"typeDescriptions": {
|
|
19027
19027
|
"typeIdentifier": "t_address",
|
|
@@ -19334,7 +19334,7 @@
|
|
|
19334
19334
|
"referencedDeclaration": 7597,
|
|
19335
19335
|
"src": "16179:6:17",
|
|
19336
19336
|
"typeDescriptions": {
|
|
19337
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
19337
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
19338
19338
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
19339
19339
|
}
|
|
19340
19340
|
},
|
|
@@ -19359,7 +19359,7 @@
|
|
|
19359
19359
|
"nodeType": "IndexAccess",
|
|
19360
19360
|
"src": "16179:9:17",
|
|
19361
19361
|
"typeDescriptions": {
|
|
19362
|
-
"typeIdentifier": "t_struct$_token_$
|
|
19362
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
19363
19363
|
"typeString": "struct ICash.token storage ref"
|
|
19364
19364
|
}
|
|
19365
19365
|
},
|
|
@@ -19370,7 +19370,7 @@
|
|
|
19370
19370
|
"lValueRequested": false,
|
|
19371
19371
|
"memberName": "tokenName",
|
|
19372
19372
|
"nodeType": "MemberAccess",
|
|
19373
|
-
"referencedDeclaration":
|
|
19373
|
+
"referencedDeclaration": 10838,
|
|
19374
19374
|
"src": "16179:19:17",
|
|
19375
19375
|
"typeDescriptions": {
|
|
19376
19376
|
"typeIdentifier": "t_bytes32",
|
|
@@ -19587,7 +19587,7 @@
|
|
|
19587
19587
|
"referencedDeclaration": 7597,
|
|
19588
19588
|
"src": "17436:6:17",
|
|
19589
19589
|
"typeDescriptions": {
|
|
19590
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
19590
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
19591
19591
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
19592
19592
|
}
|
|
19593
19593
|
},
|
|
@@ -19612,7 +19612,7 @@
|
|
|
19612
19612
|
"nodeType": "IndexAccess",
|
|
19613
19613
|
"src": "17436:9:17",
|
|
19614
19614
|
"typeDescriptions": {
|
|
19615
|
-
"typeIdentifier": "t_struct$_token_$
|
|
19615
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
19616
19616
|
"typeString": "struct ICash.token storage ref"
|
|
19617
19617
|
}
|
|
19618
19618
|
},
|
|
@@ -19623,7 +19623,7 @@
|
|
|
19623
19623
|
"lValueRequested": false,
|
|
19624
19624
|
"memberName": "tokenName",
|
|
19625
19625
|
"nodeType": "MemberAccess",
|
|
19626
|
-
"referencedDeclaration":
|
|
19626
|
+
"referencedDeclaration": 10838,
|
|
19627
19627
|
"src": "17436:19:17",
|
|
19628
19628
|
"typeDescriptions": {
|
|
19629
19629
|
"typeIdentifier": "t_bytes32",
|
|
@@ -19786,7 +19786,7 @@
|
|
|
19786
19786
|
"referencedDeclaration": 7597,
|
|
19787
19787
|
"src": "17588:6:17",
|
|
19788
19788
|
"typeDescriptions": {
|
|
19789
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
19789
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
19790
19790
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
19791
19791
|
}
|
|
19792
19792
|
},
|
|
@@ -19811,7 +19811,7 @@
|
|
|
19811
19811
|
"nodeType": "IndexAccess",
|
|
19812
19812
|
"src": "17588:9:17",
|
|
19813
19813
|
"typeDescriptions": {
|
|
19814
|
-
"typeIdentifier": "t_struct$_token_$
|
|
19814
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
19815
19815
|
"typeString": "struct ICash.token storage ref"
|
|
19816
19816
|
}
|
|
19817
19817
|
},
|
|
@@ -19822,7 +19822,7 @@
|
|
|
19822
19822
|
"lValueRequested": false,
|
|
19823
19823
|
"memberName": "tokenName",
|
|
19824
19824
|
"nodeType": "MemberAccess",
|
|
19825
|
-
"referencedDeclaration":
|
|
19825
|
+
"referencedDeclaration": 10838,
|
|
19826
19826
|
"src": "17588:19:17",
|
|
19827
19827
|
"typeDescriptions": {
|
|
19828
19828
|
"typeIdentifier": "t_bytes32",
|
|
@@ -20072,7 +20072,7 @@
|
|
|
20072
20072
|
"referencedDeclaration": 7597,
|
|
20073
20073
|
"src": "12784:6:17",
|
|
20074
20074
|
"typeDescriptions": {
|
|
20075
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
20075
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
20076
20076
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
20077
20077
|
}
|
|
20078
20078
|
},
|
|
@@ -20097,7 +20097,7 @@
|
|
|
20097
20097
|
"nodeType": "IndexAccess",
|
|
20098
20098
|
"src": "12784:9:17",
|
|
20099
20099
|
"typeDescriptions": {
|
|
20100
|
-
"typeIdentifier": "t_struct$_token_$
|
|
20100
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
20101
20101
|
"typeString": "struct ICash.token storage ref"
|
|
20102
20102
|
}
|
|
20103
20103
|
},
|
|
@@ -20108,7 +20108,7 @@
|
|
|
20108
20108
|
"lValueRequested": false,
|
|
20109
20109
|
"memberName": "tokenName",
|
|
20110
20110
|
"nodeType": "MemberAccess",
|
|
20111
|
-
"referencedDeclaration":
|
|
20111
|
+
"referencedDeclaration": 10838,
|
|
20112
20112
|
"src": "12784:19:17",
|
|
20113
20113
|
"typeDescriptions": {
|
|
20114
20114
|
"typeIdentifier": "t_bytes32",
|
|
@@ -20251,7 +20251,7 @@
|
|
|
20251
20251
|
"referencedDeclaration": 7597,
|
|
20252
20252
|
"src": "12837:6:17",
|
|
20253
20253
|
"typeDescriptions": {
|
|
20254
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
20254
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
20255
20255
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
20256
20256
|
}
|
|
20257
20257
|
},
|
|
@@ -20276,7 +20276,7 @@
|
|
|
20276
20276
|
"nodeType": "IndexAccess",
|
|
20277
20277
|
"src": "12837:9:17",
|
|
20278
20278
|
"typeDescriptions": {
|
|
20279
|
-
"typeIdentifier": "t_struct$_token_$
|
|
20279
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
20280
20280
|
"typeString": "struct ICash.token storage ref"
|
|
20281
20281
|
}
|
|
20282
20282
|
},
|
|
@@ -20287,7 +20287,7 @@
|
|
|
20287
20287
|
"lValueRequested": false,
|
|
20288
20288
|
"memberName": "tokenName",
|
|
20289
20289
|
"nodeType": "MemberAccess",
|
|
20290
|
-
"referencedDeclaration":
|
|
20290
|
+
"referencedDeclaration": 10838,
|
|
20291
20291
|
"src": "12837:19:17",
|
|
20292
20292
|
"typeDescriptions": {
|
|
20293
20293
|
"typeIdentifier": "t_bytes32",
|
|
@@ -20441,7 +20441,7 @@
|
|
|
20441
20441
|
"referencedDeclaration": 7597,
|
|
20442
20442
|
"src": "12909:6:17",
|
|
20443
20443
|
"typeDescriptions": {
|
|
20444
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
20444
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
20445
20445
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
20446
20446
|
}
|
|
20447
20447
|
},
|
|
@@ -20466,7 +20466,7 @@
|
|
|
20466
20466
|
"nodeType": "IndexAccess",
|
|
20467
20467
|
"src": "12909:9:17",
|
|
20468
20468
|
"typeDescriptions": {
|
|
20469
|
-
"typeIdentifier": "t_struct$_token_$
|
|
20469
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
20470
20470
|
"typeString": "struct ICash.token storage ref"
|
|
20471
20471
|
}
|
|
20472
20472
|
},
|
|
@@ -20477,7 +20477,7 @@
|
|
|
20477
20477
|
"lValueRequested": false,
|
|
20478
20478
|
"memberName": "tokenName",
|
|
20479
20479
|
"nodeType": "MemberAccess",
|
|
20480
|
-
"referencedDeclaration":
|
|
20480
|
+
"referencedDeclaration": 10838,
|
|
20481
20481
|
"src": "12909:19:17",
|
|
20482
20482
|
"typeDescriptions": {
|
|
20483
20483
|
"typeIdentifier": "t_bytes32",
|
|
@@ -20572,7 +20572,7 @@
|
|
|
20572
20572
|
"referencedDeclaration": 7597,
|
|
20573
20573
|
"src": "12981:6:17",
|
|
20574
20574
|
"typeDescriptions": {
|
|
20575
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
20575
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
20576
20576
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
20577
20577
|
}
|
|
20578
20578
|
},
|
|
@@ -20597,7 +20597,7 @@
|
|
|
20597
20597
|
"nodeType": "IndexAccess",
|
|
20598
20598
|
"src": "12981:9:17",
|
|
20599
20599
|
"typeDescriptions": {
|
|
20600
|
-
"typeIdentifier": "t_struct$_token_$
|
|
20600
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
20601
20601
|
"typeString": "struct ICash.token storage ref"
|
|
20602
20602
|
}
|
|
20603
20603
|
},
|
|
@@ -20608,7 +20608,7 @@
|
|
|
20608
20608
|
"lValueRequested": false,
|
|
20609
20609
|
"memberName": "tokenName",
|
|
20610
20610
|
"nodeType": "MemberAccess",
|
|
20611
|
-
"referencedDeclaration":
|
|
20611
|
+
"referencedDeclaration": 10838,
|
|
20612
20612
|
"src": "12981:19:17",
|
|
20613
20613
|
"typeDescriptions": {
|
|
20614
20614
|
"typeIdentifier": "t_bytes32",
|
|
@@ -20782,7 +20782,7 @@
|
|
|
20782
20782
|
"referencedDeclaration": 7597,
|
|
20783
20783
|
"src": "13060:6:17",
|
|
20784
20784
|
"typeDescriptions": {
|
|
20785
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
20785
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
20786
20786
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
20787
20787
|
}
|
|
20788
20788
|
},
|
|
@@ -20807,7 +20807,7 @@
|
|
|
20807
20807
|
"nodeType": "IndexAccess",
|
|
20808
20808
|
"src": "13060:9:17",
|
|
20809
20809
|
"typeDescriptions": {
|
|
20810
|
-
"typeIdentifier": "t_struct$_token_$
|
|
20810
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
20811
20811
|
"typeString": "struct ICash.token storage ref"
|
|
20812
20812
|
}
|
|
20813
20813
|
},
|
|
@@ -20818,7 +20818,7 @@
|
|
|
20818
20818
|
"lValueRequested": false,
|
|
20819
20819
|
"memberName": "tokenName",
|
|
20820
20820
|
"nodeType": "MemberAccess",
|
|
20821
|
-
"referencedDeclaration":
|
|
20821
|
+
"referencedDeclaration": 10838,
|
|
20822
20822
|
"src": "13060:19:17",
|
|
20823
20823
|
"typeDescriptions": {
|
|
20824
20824
|
"typeIdentifier": "t_bytes32",
|
|
@@ -20913,7 +20913,7 @@
|
|
|
20913
20913
|
"referencedDeclaration": 7597,
|
|
20914
20914
|
"src": "13131:6:17",
|
|
20915
20915
|
"typeDescriptions": {
|
|
20916
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
20916
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
20917
20917
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
20918
20918
|
}
|
|
20919
20919
|
},
|
|
@@ -20938,7 +20938,7 @@
|
|
|
20938
20938
|
"nodeType": "IndexAccess",
|
|
20939
20939
|
"src": "13131:9:17",
|
|
20940
20940
|
"typeDescriptions": {
|
|
20941
|
-
"typeIdentifier": "t_struct$_token_$
|
|
20941
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
20942
20942
|
"typeString": "struct ICash.token storage ref"
|
|
20943
20943
|
}
|
|
20944
20944
|
},
|
|
@@ -20949,7 +20949,7 @@
|
|
|
20949
20949
|
"lValueRequested": false,
|
|
20950
20950
|
"memberName": "tokenName",
|
|
20951
20951
|
"nodeType": "MemberAccess",
|
|
20952
|
-
"referencedDeclaration":
|
|
20952
|
+
"referencedDeclaration": 10838,
|
|
20953
20953
|
"src": "13131:19:17",
|
|
20954
20954
|
"typeDescriptions": {
|
|
20955
20955
|
"typeIdentifier": "t_bytes32",
|
|
@@ -21102,10 +21102,10 @@
|
|
|
21102
21102
|
"name": "require",
|
|
21103
21103
|
"nodeType": "Identifier",
|
|
21104
21104
|
"overloadedDeclarations": [
|
|
21105
|
-
|
|
21106
|
-
|
|
21105
|
+
11542,
|
|
21106
|
+
11543
|
|
21107
21107
|
],
|
|
21108
|
-
"referencedDeclaration":
|
|
21108
|
+
"referencedDeclaration": 11542,
|
|
21109
21109
|
"src": "13192:7:17",
|
|
21110
21110
|
"typeDescriptions": {
|
|
21111
21111
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -21387,7 +21387,7 @@
|
|
|
21387
21387
|
"referencedDeclaration": 7597,
|
|
21388
21388
|
"src": "14136:6:17",
|
|
21389
21389
|
"typeDescriptions": {
|
|
21390
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
21390
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
21391
21391
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
21392
21392
|
}
|
|
21393
21393
|
},
|
|
@@ -21412,7 +21412,7 @@
|
|
|
21412
21412
|
"nodeType": "IndexAccess",
|
|
21413
21413
|
"src": "14136:9:17",
|
|
21414
21414
|
"typeDescriptions": {
|
|
21415
|
-
"typeIdentifier": "t_struct$_token_$
|
|
21415
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
21416
21416
|
"typeString": "struct ICash.token storage ref"
|
|
21417
21417
|
}
|
|
21418
21418
|
},
|
|
@@ -21423,7 +21423,7 @@
|
|
|
21423
21423
|
"lValueRequested": false,
|
|
21424
21424
|
"memberName": "tokenName",
|
|
21425
21425
|
"nodeType": "MemberAccess",
|
|
21426
|
-
"referencedDeclaration":
|
|
21426
|
+
"referencedDeclaration": 10838,
|
|
21427
21427
|
"src": "14136:19:17",
|
|
21428
21428
|
"typeDescriptions": {
|
|
21429
21429
|
"typeIdentifier": "t_bytes32",
|
|
@@ -21793,7 +21793,7 @@
|
|
|
21793
21793
|
"referencedDeclaration": 7597,
|
|
21794
21794
|
"src": "14413:6:17",
|
|
21795
21795
|
"typeDescriptions": {
|
|
21796
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
21796
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
21797
21797
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
21798
21798
|
}
|
|
21799
21799
|
},
|
|
@@ -21818,7 +21818,7 @@
|
|
|
21818
21818
|
"nodeType": "IndexAccess",
|
|
21819
21819
|
"src": "14413:9:17",
|
|
21820
21820
|
"typeDescriptions": {
|
|
21821
|
-
"typeIdentifier": "t_struct$_token_$
|
|
21821
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
21822
21822
|
"typeString": "struct ICash.token storage ref"
|
|
21823
21823
|
}
|
|
21824
21824
|
},
|
|
@@ -21829,7 +21829,7 @@
|
|
|
21829
21829
|
"lValueRequested": false,
|
|
21830
21830
|
"memberName": "tokenName",
|
|
21831
21831
|
"nodeType": "MemberAccess",
|
|
21832
|
-
"referencedDeclaration":
|
|
21832
|
+
"referencedDeclaration": 10838,
|
|
21833
21833
|
"src": "14413:19:17",
|
|
21834
21834
|
"typeDescriptions": {
|
|
21835
21835
|
"typeIdentifier": "t_bytes32",
|
|
@@ -21924,7 +21924,7 @@
|
|
|
21924
21924
|
"referencedDeclaration": 7597,
|
|
21925
21925
|
"src": "14488:6:17",
|
|
21926
21926
|
"typeDescriptions": {
|
|
21927
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
21927
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
21928
21928
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
21929
21929
|
}
|
|
21930
21930
|
},
|
|
@@ -21949,7 +21949,7 @@
|
|
|
21949
21949
|
"nodeType": "IndexAccess",
|
|
21950
21950
|
"src": "14488:9:17",
|
|
21951
21951
|
"typeDescriptions": {
|
|
21952
|
-
"typeIdentifier": "t_struct$_token_$
|
|
21952
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
21953
21953
|
"typeString": "struct ICash.token storage ref"
|
|
21954
21954
|
}
|
|
21955
21955
|
},
|
|
@@ -21960,7 +21960,7 @@
|
|
|
21960
21960
|
"lValueRequested": false,
|
|
21961
21961
|
"memberName": "tokenName",
|
|
21962
21962
|
"nodeType": "MemberAccess",
|
|
21963
|
-
"referencedDeclaration":
|
|
21963
|
+
"referencedDeclaration": 10838,
|
|
21964
21964
|
"src": "14488:19:17",
|
|
21965
21965
|
"typeDescriptions": {
|
|
21966
21966
|
"typeIdentifier": "t_bytes32",
|
|
@@ -22134,7 +22134,7 @@
|
|
|
22134
22134
|
"referencedDeclaration": 7597,
|
|
22135
22135
|
"src": "14621:6:17",
|
|
22136
22136
|
"typeDescriptions": {
|
|
22137
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
22137
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
22138
22138
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
22139
22139
|
}
|
|
22140
22140
|
},
|
|
@@ -22159,7 +22159,7 @@
|
|
|
22159
22159
|
"nodeType": "IndexAccess",
|
|
22160
22160
|
"src": "14621:9:17",
|
|
22161
22161
|
"typeDescriptions": {
|
|
22162
|
-
"typeIdentifier": "t_struct$_token_$
|
|
22162
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
22163
22163
|
"typeString": "struct ICash.token storage ref"
|
|
22164
22164
|
}
|
|
22165
22165
|
},
|
|
@@ -22170,7 +22170,7 @@
|
|
|
22170
22170
|
"lValueRequested": false,
|
|
22171
22171
|
"memberName": "tokenName",
|
|
22172
22172
|
"nodeType": "MemberAccess",
|
|
22173
|
-
"referencedDeclaration":
|
|
22173
|
+
"referencedDeclaration": 10838,
|
|
22174
22174
|
"src": "14621:19:17",
|
|
22175
22175
|
"typeDescriptions": {
|
|
22176
22176
|
"typeIdentifier": "t_bytes32",
|
|
@@ -22265,7 +22265,7 @@
|
|
|
22265
22265
|
"referencedDeclaration": 7597,
|
|
22266
22266
|
"src": "14695:6:17",
|
|
22267
22267
|
"typeDescriptions": {
|
|
22268
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
22268
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
22269
22269
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
22270
22270
|
}
|
|
22271
22271
|
},
|
|
@@ -22290,7 +22290,7 @@
|
|
|
22290
22290
|
"nodeType": "IndexAccess",
|
|
22291
22291
|
"src": "14695:9:17",
|
|
22292
22292
|
"typeDescriptions": {
|
|
22293
|
-
"typeIdentifier": "t_struct$_token_$
|
|
22293
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
22294
22294
|
"typeString": "struct ICash.token storage ref"
|
|
22295
22295
|
}
|
|
22296
22296
|
},
|
|
@@ -22301,7 +22301,7 @@
|
|
|
22301
22301
|
"lValueRequested": false,
|
|
22302
22302
|
"memberName": "tokenName",
|
|
22303
22303
|
"nodeType": "MemberAccess",
|
|
22304
|
-
"referencedDeclaration":
|
|
22304
|
+
"referencedDeclaration": 10838,
|
|
22305
22305
|
"src": "14695:19:17",
|
|
22306
22306
|
"typeDescriptions": {
|
|
22307
22307
|
"typeIdentifier": "t_bytes32",
|
|
@@ -22452,7 +22452,7 @@
|
|
|
22452
22452
|
"referencedDeclaration": 7597,
|
|
22453
22453
|
"src": "14815:6:17",
|
|
22454
22454
|
"typeDescriptions": {
|
|
22455
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
22455
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
22456
22456
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
22457
22457
|
}
|
|
22458
22458
|
},
|
|
@@ -22477,7 +22477,7 @@
|
|
|
22477
22477
|
"nodeType": "IndexAccess",
|
|
22478
22478
|
"src": "14815:9:17",
|
|
22479
22479
|
"typeDescriptions": {
|
|
22480
|
-
"typeIdentifier": "t_struct$_token_$
|
|
22480
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
22481
22481
|
"typeString": "struct ICash.token storage ref"
|
|
22482
22482
|
}
|
|
22483
22483
|
},
|
|
@@ -22488,7 +22488,7 @@
|
|
|
22488
22488
|
"lValueRequested": false,
|
|
22489
22489
|
"memberName": "tokenName",
|
|
22490
22490
|
"nodeType": "MemberAccess",
|
|
22491
|
-
"referencedDeclaration":
|
|
22491
|
+
"referencedDeclaration": 10838,
|
|
22492
22492
|
"src": "14815:19:17",
|
|
22493
22493
|
"typeDescriptions": {
|
|
22494
22494
|
"typeIdentifier": "t_bytes32",
|
|
@@ -22768,7 +22768,7 @@
|
|
|
22768
22768
|
"referencedDeclaration": 7597,
|
|
22769
22769
|
"src": "13463:6:17",
|
|
22770
22770
|
"typeDescriptions": {
|
|
22771
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
22771
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
22772
22772
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
22773
22773
|
}
|
|
22774
22774
|
},
|
|
@@ -22793,7 +22793,7 @@
|
|
|
22793
22793
|
"nodeType": "IndexAccess",
|
|
22794
22794
|
"src": "13463:9:17",
|
|
22795
22795
|
"typeDescriptions": {
|
|
22796
|
-
"typeIdentifier": "t_struct$_token_$
|
|
22796
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
22797
22797
|
"typeString": "struct ICash.token storage ref"
|
|
22798
22798
|
}
|
|
22799
22799
|
},
|
|
@@ -22804,7 +22804,7 @@
|
|
|
22804
22804
|
"lValueRequested": false,
|
|
22805
22805
|
"memberName": "tokenName",
|
|
22806
22806
|
"nodeType": "MemberAccess",
|
|
22807
|
-
"referencedDeclaration":
|
|
22807
|
+
"referencedDeclaration": 10838,
|
|
22808
22808
|
"src": "13463:19:17",
|
|
22809
22809
|
"typeDescriptions": {
|
|
22810
22810
|
"typeIdentifier": "t_bytes32",
|
|
@@ -22952,7 +22952,7 @@
|
|
|
22952
22952
|
"referencedDeclaration": 7597,
|
|
22953
22953
|
"src": "13662:6:17",
|
|
22954
22954
|
"typeDescriptions": {
|
|
22955
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
22955
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
22956
22956
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
22957
22957
|
}
|
|
22958
22958
|
},
|
|
@@ -22977,7 +22977,7 @@
|
|
|
22977
22977
|
"nodeType": "IndexAccess",
|
|
22978
22978
|
"src": "13662:9:17",
|
|
22979
22979
|
"typeDescriptions": {
|
|
22980
|
-
"typeIdentifier": "t_struct$_token_$
|
|
22980
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
22981
22981
|
"typeString": "struct ICash.token storage ref"
|
|
22982
22982
|
}
|
|
22983
22983
|
},
|
|
@@ -22988,7 +22988,7 @@
|
|
|
22988
22988
|
"lValueRequested": false,
|
|
22989
22989
|
"memberName": "tokenAddress",
|
|
22990
22990
|
"nodeType": "MemberAccess",
|
|
22991
|
-
"referencedDeclaration":
|
|
22991
|
+
"referencedDeclaration": 10840,
|
|
22992
22992
|
"src": "13662:22:17",
|
|
22993
22993
|
"typeDescriptions": {
|
|
22994
22994
|
"typeIdentifier": "t_address",
|
|
@@ -23301,7 +23301,7 @@
|
|
|
23301
23301
|
"referencedDeclaration": 7597,
|
|
23302
23302
|
"src": "13838:6:17",
|
|
23303
23303
|
"typeDescriptions": {
|
|
23304
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
23304
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
23305
23305
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
23306
23306
|
}
|
|
23307
23307
|
},
|
|
@@ -23326,7 +23326,7 @@
|
|
|
23326
23326
|
"nodeType": "IndexAccess",
|
|
23327
23327
|
"src": "13838:9:17",
|
|
23328
23328
|
"typeDescriptions": {
|
|
23329
|
-
"typeIdentifier": "t_struct$_token_$
|
|
23329
|
+
"typeIdentifier": "t_struct$_token_$10841_storage",
|
|
23330
23330
|
"typeString": "struct ICash.token storage ref"
|
|
23331
23331
|
}
|
|
23332
23332
|
},
|
|
@@ -23337,7 +23337,7 @@
|
|
|
23337
23337
|
"lValueRequested": false,
|
|
23338
23338
|
"memberName": "tokenName",
|
|
23339
23339
|
"nodeType": "MemberAccess",
|
|
23340
|
-
"referencedDeclaration":
|
|
23340
|
+
"referencedDeclaration": 10838,
|
|
23341
23341
|
"src": "13838:19:17",
|
|
23342
23342
|
"typeDescriptions": {
|
|
23343
23343
|
"typeIdentifier": "t_bytes32",
|
|
@@ -23663,7 +23663,7 @@
|
|
|
23663
23663
|
"referencedDeclaration": 7597,
|
|
23664
23664
|
"src": "12411:6:17",
|
|
23665
23665
|
"typeDescriptions": {
|
|
23666
|
-
"typeIdentifier": "t_array$_t_struct$_token_$
|
|
23666
|
+
"typeIdentifier": "t_array$_t_struct$_token_$10841_storage_$dyn_storage",
|
|
23667
23667
|
"typeString": "struct ICash.token storage ref[] storage ref"
|
|
23668
23668
|
}
|
|
23669
23669
|
},
|
|
@@ -24149,7 +24149,7 @@
|
|
|
24149
24149
|
"referencedDeclaration": 7577,
|
|
24150
24150
|
"src": "17890:5:17",
|
|
24151
24151
|
"typeDescriptions": {
|
|
24152
|
-
"typeIdentifier": "t_contract$_IRates_$
|
|
24152
|
+
"typeIdentifier": "t_contract$_IRates_$11153",
|
|
24153
24153
|
"typeString": "contract IRates"
|
|
24154
24154
|
}
|
|
24155
24155
|
},
|
|
@@ -24160,7 +24160,7 @@
|
|
|
24160
24160
|
"lValueRequested": false,
|
|
24161
24161
|
"memberName": "getFee",
|
|
24162
24162
|
"nodeType": "MemberAccess",
|
|
24163
|
-
"referencedDeclaration":
|
|
24163
|
+
"referencedDeclaration": 11134,
|
|
24164
24164
|
"src": "17890:12:17",
|
|
24165
24165
|
"typeDescriptions": {
|
|
24166
24166
|
"typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_uint256_$",
|
|
@@ -24415,7 +24415,7 @@
|
|
|
24415
24415
|
"referencedDeclaration": 7577,
|
|
24416
24416
|
"src": "17990:5:17",
|
|
24417
24417
|
"typeDescriptions": {
|
|
24418
|
-
"typeIdentifier": "t_contract$_IRates_$
|
|
24418
|
+
"typeIdentifier": "t_contract$_IRates_$11153",
|
|
24419
24419
|
"typeString": "contract IRates"
|
|
24420
24420
|
}
|
|
24421
24421
|
},
|
|
@@ -24426,7 +24426,7 @@
|
|
|
24426
24426
|
"lValueRequested": false,
|
|
24427
24427
|
"memberName": "getFeeToSetter",
|
|
24428
24428
|
"nodeType": "MemberAccess",
|
|
24429
|
-
"referencedDeclaration":
|
|
24429
|
+
"referencedDeclaration": 11122,
|
|
24430
24430
|
"src": "17990:20:17",
|
|
24431
24431
|
"typeDescriptions": {
|
|
24432
24432
|
"typeIdentifier": "t_function_external_view$__$returns$_t_address_$",
|
|
@@ -25662,7 +25662,7 @@
|
|
|
25662
25662
|
"name": "_pause",
|
|
25663
25663
|
"nodeType": "Identifier",
|
|
25664
25664
|
"overloadedDeclarations": [],
|
|
25665
|
-
"referencedDeclaration":
|
|
25665
|
+
"referencedDeclaration": 11208,
|
|
25666
25666
|
"src": "18580:6:17",
|
|
25667
25667
|
"typeDescriptions": {
|
|
25668
25668
|
"typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
|
|
@@ -25750,7 +25750,7 @@
|
|
|
25750
25750
|
"name": "_unpause",
|
|
25751
25751
|
"nodeType": "Identifier",
|
|
25752
25752
|
"overloadedDeclarations": [],
|
|
25753
|
-
"referencedDeclaration":
|
|
25753
|
+
"referencedDeclaration": 11219,
|
|
25754
25754
|
"src": "18649:8:17",
|
|
25755
25755
|
"typeDescriptions": {
|
|
25756
25756
|
"typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
|
|
@@ -25864,7 +25864,7 @@
|
|
|
25864
25864
|
},
|
|
25865
25865
|
{
|
|
25866
25866
|
"attributes": {
|
|
25867
|
-
"SourceUnit":
|
|
25867
|
+
"SourceUnit": 10956,
|
|
25868
25868
|
"absolutePath": "project:/contracts/interfaces/ICash.sol",
|
|
25869
25869
|
"file": "./interfaces/ICash.sol",
|
|
25870
25870
|
"scope": 9305,
|
|
@@ -25879,7 +25879,7 @@
|
|
|
25879
25879
|
},
|
|
25880
25880
|
{
|
|
25881
25881
|
"attributes": {
|
|
25882
|
-
"SourceUnit":
|
|
25882
|
+
"SourceUnit": 10834,
|
|
25883
25883
|
"absolutePath": "project:/contracts/interfaces/IBond.sol",
|
|
25884
25884
|
"file": "./interfaces/IBond.sol",
|
|
25885
25885
|
"scope": 9305,
|
|
@@ -25894,7 +25894,7 @@
|
|
|
25894
25894
|
},
|
|
25895
25895
|
{
|
|
25896
25896
|
"attributes": {
|
|
25897
|
-
"SourceUnit":
|
|
25897
|
+
"SourceUnit": 11087,
|
|
25898
25898
|
"absolutePath": "project:/contracts/interfaces/IFactory.sol",
|
|
25899
25899
|
"file": "./interfaces/IFactory.sol",
|
|
25900
25900
|
"scope": 9305,
|
|
@@ -25909,7 +25909,7 @@
|
|
|
25909
25909
|
},
|
|
25910
25910
|
{
|
|
25911
25911
|
"attributes": {
|
|
25912
|
-
"SourceUnit":
|
|
25912
|
+
"SourceUnit": 11154,
|
|
25913
25913
|
"absolutePath": "project:/contracts/interfaces/IRates.sol",
|
|
25914
25914
|
"file": "./interfaces/IRates.sol",
|
|
25915
25915
|
"scope": 9305,
|
|
@@ -25924,7 +25924,7 @@
|
|
|
25924
25924
|
},
|
|
25925
25925
|
{
|
|
25926
25926
|
"attributes": {
|
|
25927
|
-
"SourceUnit":
|
|
25927
|
+
"SourceUnit": 11229,
|
|
25928
25928
|
"absolutePath": "project:/contracts/utilities/Pausable.sol",
|
|
25929
25929
|
"file": "./utilities/Pausable.sol",
|
|
25930
25930
|
"scope": 9305,
|
|
@@ -25939,7 +25939,7 @@
|
|
|
25939
25939
|
},
|
|
25940
25940
|
{
|
|
25941
25941
|
"attributes": {
|
|
25942
|
-
"SourceUnit":
|
|
25942
|
+
"SourceUnit": 11525,
|
|
25943
25943
|
"absolutePath": "project:/contracts/utilities/StringUtils.sol",
|
|
25944
25944
|
"file": "./utilities/StringUtils.sol",
|
|
25945
25945
|
"scope": 9305,
|
|
@@ -26035,21 +26035,21 @@
|
|
|
26035
26035
|
752,
|
|
26036
26036
|
821,
|
|
26037
26037
|
890,
|
|
26038
|
-
|
|
26039
|
-
|
|
26038
|
+
10955,
|
|
26039
|
+
11228
|
|
26040
26040
|
],
|
|
26041
26041
|
"contractKind": "contract",
|
|
26042
26042
|
"documentation": null,
|
|
26043
26043
|
"fullyImplemented": true,
|
|
26044
26044
|
"linearizedBaseContracts": [
|
|
26045
26045
|
9304,
|
|
26046
|
-
|
|
26046
|
+
11228,
|
|
26047
26047
|
340,
|
|
26048
26048
|
752,
|
|
26049
26049
|
821,
|
|
26050
26050
|
29,
|
|
26051
26051
|
890,
|
|
26052
|
-
|
|
26052
|
+
10955
|
|
26053
26053
|
],
|
|
26054
26054
|
"name": "Cash",
|
|
26055
26055
|
"scope": 9305
|
|
@@ -26064,7 +26064,7 @@
|
|
|
26064
26064
|
"attributes": {
|
|
26065
26065
|
"contractScope": null,
|
|
26066
26066
|
"name": "ICash",
|
|
26067
|
-
"referencedDeclaration":
|
|
26067
|
+
"referencedDeclaration": 10955,
|
|
26068
26068
|
"type": "contract ICash"
|
|
26069
26069
|
},
|
|
26070
26070
|
"id": 7545,
|
|
@@ -26127,7 +26127,7 @@
|
|
|
26127
26127
|
"attributes": {
|
|
26128
26128
|
"contractScope": null,
|
|
26129
26129
|
"name": "Pausable",
|
|
26130
|
-
"referencedDeclaration":
|
|
26130
|
+
"referencedDeclaration": 11228,
|
|
26131
26131
|
"type": "contract Pausable"
|
|
26132
26132
|
},
|
|
26133
26133
|
"id": 7551,
|
|
@@ -26148,7 +26148,7 @@
|
|
|
26148
26148
|
"attributes": {
|
|
26149
26149
|
"contractScope": null,
|
|
26150
26150
|
"name": "stringutils",
|
|
26151
|
-
"referencedDeclaration":
|
|
26151
|
+
"referencedDeclaration": 11524,
|
|
26152
26152
|
"type": "library stringutils"
|
|
26153
26153
|
},
|
|
26154
26154
|
"id": 7553,
|
|
@@ -26388,7 +26388,7 @@
|
|
|
26388
26388
|
"attributes": {
|
|
26389
26389
|
"contractScope": null,
|
|
26390
26390
|
"name": "IFactory",
|
|
26391
|
-
"referencedDeclaration":
|
|
26391
|
+
"referencedDeclaration": 11086,
|
|
26392
26392
|
"type": "contract IFactory"
|
|
26393
26393
|
},
|
|
26394
26394
|
"id": 7574,
|
|
@@ -26416,7 +26416,7 @@
|
|
|
26416
26416
|
"attributes": {
|
|
26417
26417
|
"contractScope": null,
|
|
26418
26418
|
"name": "IRates",
|
|
26419
|
-
"referencedDeclaration":
|
|
26419
|
+
"referencedDeclaration": 11153,
|
|
26420
26420
|
"type": "contract IRates"
|
|
26421
26421
|
},
|
|
26422
26422
|
"id": 7576,
|
|
@@ -26647,7 +26647,7 @@
|
|
|
26647
26647
|
"attributes": {
|
|
26648
26648
|
"contractScope": null,
|
|
26649
26649
|
"name": "ICash.token",
|
|
26650
|
-
"referencedDeclaration":
|
|
26650
|
+
"referencedDeclaration": 10841,
|
|
26651
26651
|
"type": "struct ICash.token"
|
|
26652
26652
|
},
|
|
26653
26653
|
"id": 7595,
|
|
@@ -27691,7 +27691,7 @@
|
|
|
27691
27691
|
"overloadedDeclarations": [
|
|
27692
27692
|
null
|
|
27693
27693
|
],
|
|
27694
|
-
"referencedDeclaration":
|
|
27694
|
+
"referencedDeclaration": 11086,
|
|
27695
27695
|
"type": "type(contract IFactory)",
|
|
27696
27696
|
"value": "IFactory"
|
|
27697
27697
|
},
|
|
@@ -27717,7 +27717,7 @@
|
|
|
27717
27717
|
"overloadedDeclarations": [
|
|
27718
27718
|
null
|
|
27719
27719
|
],
|
|
27720
|
-
"referencedDeclaration":
|
|
27720
|
+
"referencedDeclaration": 11539,
|
|
27721
27721
|
"type": "msg",
|
|
27722
27722
|
"value": "msg"
|
|
27723
27723
|
},
|
|
@@ -27844,7 +27844,7 @@
|
|
|
27844
27844
|
"overloadedDeclarations": [
|
|
27845
27845
|
null
|
|
27846
27846
|
],
|
|
27847
|
-
"referencedDeclaration":
|
|
27847
|
+
"referencedDeclaration": 11526,
|
|
27848
27848
|
"type": "abi",
|
|
27849
27849
|
"value": "abi"
|
|
27850
27850
|
},
|
|
@@ -27950,7 +27950,7 @@
|
|
|
27950
27950
|
"isPure": false,
|
|
27951
27951
|
"lValueRequested": false,
|
|
27952
27952
|
"member_name": "substring",
|
|
27953
|
-
"referencedDeclaration":
|
|
27953
|
+
"referencedDeclaration": 11375,
|
|
27954
27954
|
"type": "function (bytes32,uint256,uint256) pure returns (string memory)"
|
|
27955
27955
|
},
|
|
27956
27956
|
"children": [
|
|
@@ -28126,7 +28126,7 @@
|
|
|
28126
28126
|
"overloadedDeclarations": [
|
|
28127
28127
|
null
|
|
28128
28128
|
],
|
|
28129
|
-
"referencedDeclaration":
|
|
28129
|
+
"referencedDeclaration": 11153,
|
|
28130
28130
|
"type": "type(contract IRates)",
|
|
28131
28131
|
"value": "IRates"
|
|
28132
28132
|
},
|
|
@@ -28287,7 +28287,7 @@
|
|
|
28287
28287
|
"name": "setSigner",
|
|
28288
28288
|
"scope": 9304,
|
|
28289
28289
|
"stateMutability": "nonpayable",
|
|
28290
|
-
"superFunction":
|
|
28290
|
+
"superFunction": 10954,
|
|
28291
28291
|
"visibility": "external"
|
|
28292
28292
|
},
|
|
28293
28293
|
"children": [
|
|
@@ -28489,10 +28489,10 @@
|
|
|
28489
28489
|
}
|
|
28490
28490
|
],
|
|
28491
28491
|
"overloadedDeclarations": [
|
|
28492
|
-
|
|
28493
|
-
|
|
28492
|
+
11542,
|
|
28493
|
+
11543
|
|
28494
28494
|
],
|
|
28495
|
-
"referencedDeclaration":
|
|
28495
|
+
"referencedDeclaration": 11542,
|
|
28496
28496
|
"type": "function (bool) pure",
|
|
28497
28497
|
"value": "require"
|
|
28498
28498
|
},
|
|
@@ -28533,7 +28533,7 @@
|
|
|
28533
28533
|
"overloadedDeclarations": [
|
|
28534
28534
|
null
|
|
28535
28535
|
],
|
|
28536
|
-
"referencedDeclaration":
|
|
28536
|
+
"referencedDeclaration": 11539,
|
|
28537
28537
|
"type": "msg",
|
|
28538
28538
|
"value": "msg"
|
|
28539
28539
|
},
|
|
@@ -28604,10 +28604,10 @@
|
|
|
28604
28604
|
}
|
|
28605
28605
|
],
|
|
28606
28606
|
"overloadedDeclarations": [
|
|
28607
|
-
|
|
28608
|
-
|
|
28607
|
+
11542,
|
|
28608
|
+
11543
|
|
28609
28609
|
],
|
|
28610
|
-
"referencedDeclaration":
|
|
28610
|
+
"referencedDeclaration": 11542,
|
|
28611
28611
|
"type": "function (bool) pure",
|
|
28612
28612
|
"value": "require"
|
|
28613
28613
|
},
|
|
@@ -28660,7 +28660,7 @@
|
|
|
28660
28660
|
"overloadedDeclarations": [
|
|
28661
28661
|
null
|
|
28662
28662
|
],
|
|
28663
|
-
"referencedDeclaration":
|
|
28663
|
+
"referencedDeclaration": 11539,
|
|
28664
28664
|
"type": "msg",
|
|
28665
28665
|
"value": "msg"
|
|
28666
28666
|
},
|
|
@@ -28736,10 +28736,10 @@
|
|
|
28736
28736
|
}
|
|
28737
28737
|
],
|
|
28738
28738
|
"overloadedDeclarations": [
|
|
28739
|
-
|
|
28740
|
-
|
|
28739
|
+
11542,
|
|
28740
|
+
11543
|
|
28741
28741
|
],
|
|
28742
|
-
"referencedDeclaration":
|
|
28742
|
+
"referencedDeclaration": 11542,
|
|
28743
28743
|
"type": "function (bool) pure",
|
|
28744
28744
|
"value": "require"
|
|
28745
28745
|
},
|
|
@@ -28768,7 +28768,7 @@
|
|
|
28768
28768
|
"overloadedDeclarations": [
|
|
28769
28769
|
null
|
|
28770
28770
|
],
|
|
28771
|
-
"referencedDeclaration":
|
|
28771
|
+
"referencedDeclaration": 11193,
|
|
28772
28772
|
"type": "bool",
|
|
28773
28773
|
"value": "paused"
|
|
28774
28774
|
},
|
|
@@ -28885,7 +28885,7 @@
|
|
|
28885
28885
|
"overloadedDeclarations": [
|
|
28886
28886
|
null
|
|
28887
28887
|
],
|
|
28888
|
-
"referencedDeclaration":
|
|
28888
|
+
"referencedDeclaration": 11539,
|
|
28889
28889
|
"type": "msg",
|
|
28890
28890
|
"value": "msg"
|
|
28891
28891
|
},
|
|
@@ -29049,7 +29049,7 @@
|
|
|
29049
29049
|
"overloadedDeclarations": [
|
|
29050
29050
|
null
|
|
29051
29051
|
],
|
|
29052
|
-
"referencedDeclaration":
|
|
29052
|
+
"referencedDeclaration": 11539,
|
|
29053
29053
|
"type": "msg",
|
|
29054
29054
|
"value": "msg"
|
|
29055
29055
|
},
|
|
@@ -29163,7 +29163,7 @@
|
|
|
29163
29163
|
"overloadedDeclarations": [
|
|
29164
29164
|
null
|
|
29165
29165
|
],
|
|
29166
|
-
"referencedDeclaration":
|
|
29166
|
+
"referencedDeclaration": 11539,
|
|
29167
29167
|
"type": "msg",
|
|
29168
29168
|
"value": "msg"
|
|
29169
29169
|
},
|
|
@@ -29215,7 +29215,7 @@
|
|
|
29215
29215
|
"name": "supportTokens",
|
|
29216
29216
|
"scope": 9304,
|
|
29217
29217
|
"stateMutability": "nonpayable",
|
|
29218
|
-
"superFunction":
|
|
29218
|
+
"superFunction": 10853,
|
|
29219
29219
|
"visibility": "external"
|
|
29220
29220
|
},
|
|
29221
29221
|
"children": [
|
|
@@ -29426,7 +29426,7 @@
|
|
|
29426
29426
|
"attributes": {
|
|
29427
29427
|
"contractScope": null,
|
|
29428
29428
|
"name": "ICash.token",
|
|
29429
|
-
"referencedDeclaration":
|
|
29429
|
+
"referencedDeclaration": 10841,
|
|
29430
29430
|
"type": "struct ICash.token"
|
|
29431
29431
|
},
|
|
29432
29432
|
"id": 7794,
|
|
@@ -29471,7 +29471,7 @@
|
|
|
29471
29471
|
"isPure": false,
|
|
29472
29472
|
"lValueRequested": false,
|
|
29473
29473
|
"member_name": "token",
|
|
29474
|
-
"referencedDeclaration":
|
|
29474
|
+
"referencedDeclaration": 10841,
|
|
29475
29475
|
"type": "type(struct ICash.token storage pointer)"
|
|
29476
29476
|
},
|
|
29477
29477
|
"children": [
|
|
@@ -29481,7 +29481,7 @@
|
|
|
29481
29481
|
"overloadedDeclarations": [
|
|
29482
29482
|
null
|
|
29483
29483
|
],
|
|
29484
|
-
"referencedDeclaration":
|
|
29484
|
+
"referencedDeclaration": 10955,
|
|
29485
29485
|
"type": "type(contract ICash)",
|
|
29486
29486
|
"value": "ICash"
|
|
29487
29487
|
},
|
|
@@ -29553,7 +29553,7 @@
|
|
|
29553
29553
|
"attributes": {
|
|
29554
29554
|
"argumentTypes": [
|
|
29555
29555
|
{
|
|
29556
|
-
"typeIdentifier": "t_struct$_token_$
|
|
29556
|
+
"typeIdentifier": "t_struct$_token_$10841_memory_ptr",
|
|
29557
29557
|
"typeString": "struct ICash.token memory"
|
|
29558
29558
|
}
|
|
29559
29559
|
],
|
|
@@ -29738,7 +29738,7 @@
|
|
|
29738
29738
|
"name": "checkSupportForToken",
|
|
29739
29739
|
"scope": 9304,
|
|
29740
29740
|
"stateMutability": "view",
|
|
29741
|
-
"superFunction":
|
|
29741
|
+
"superFunction": 10860,
|
|
29742
29742
|
"visibility": "external"
|
|
29743
29743
|
},
|
|
29744
29744
|
"children": [
|
|
@@ -29974,7 +29974,7 @@
|
|
|
29974
29974
|
"name": "getSupportedTokens",
|
|
29975
29975
|
"scope": 9304,
|
|
29976
29976
|
"stateMutability": "view",
|
|
29977
|
-
"superFunction":
|
|
29977
|
+
"superFunction": 10866,
|
|
29978
29978
|
"visibility": "external"
|
|
29979
29979
|
},
|
|
29980
29980
|
"children": [
|
|
@@ -30013,7 +30013,7 @@
|
|
|
30013
30013
|
"attributes": {
|
|
30014
30014
|
"contractScope": null,
|
|
30015
30015
|
"name": "ICash.token",
|
|
30016
|
-
"referencedDeclaration":
|
|
30016
|
+
"referencedDeclaration": 10841,
|
|
30017
30017
|
"type": "struct ICash.token"
|
|
30018
30018
|
},
|
|
30019
30019
|
"id": 7838,
|
|
@@ -30083,7 +30083,7 @@
|
|
|
30083
30083
|
"name": "requestIssue",
|
|
30084
30084
|
"scope": 9304,
|
|
30085
30085
|
"stateMutability": "nonpayable",
|
|
30086
|
-
"superFunction":
|
|
30086
|
+
"superFunction": 10875,
|
|
30087
30087
|
"visibility": "external"
|
|
30088
30088
|
},
|
|
30089
30089
|
"children": [
|
|
@@ -30217,10 +30217,10 @@
|
|
|
30217
30217
|
}
|
|
30218
30218
|
],
|
|
30219
30219
|
"overloadedDeclarations": [
|
|
30220
|
-
|
|
30221
|
-
|
|
30220
|
+
11542,
|
|
30221
|
+
11543
|
|
30222
30222
|
],
|
|
30223
|
-
"referencedDeclaration":
|
|
30223
|
+
"referencedDeclaration": 11543,
|
|
30224
30224
|
"type": "function (bool,string memory) pure",
|
|
30225
30225
|
"value": "require"
|
|
30226
30226
|
},
|
|
@@ -30249,7 +30249,7 @@
|
|
|
30249
30249
|
"overloadedDeclarations": [
|
|
30250
30250
|
null
|
|
30251
30251
|
],
|
|
30252
|
-
"referencedDeclaration":
|
|
30252
|
+
"referencedDeclaration": 11193,
|
|
30253
30253
|
"type": "bool",
|
|
30254
30254
|
"value": "paused"
|
|
30255
30255
|
},
|
|
@@ -30585,7 +30585,7 @@
|
|
|
30585
30585
|
"overloadedDeclarations": [
|
|
30586
30586
|
null
|
|
30587
30587
|
],
|
|
30588
|
-
"referencedDeclaration":
|
|
30588
|
+
"referencedDeclaration": 11539,
|
|
30589
30589
|
"type": "msg",
|
|
30590
30590
|
"value": "msg"
|
|
30591
30591
|
},
|
|
@@ -30638,7 +30638,7 @@
|
|
|
30638
30638
|
"overloadedDeclarations": [
|
|
30639
30639
|
null
|
|
30640
30640
|
],
|
|
30641
|
-
"referencedDeclaration":
|
|
30641
|
+
"referencedDeclaration": 11599,
|
|
30642
30642
|
"type": "contract Cash",
|
|
30643
30643
|
"value": "this"
|
|
30644
30644
|
},
|
|
@@ -30716,7 +30716,7 @@
|
|
|
30716
30716
|
"isPure": false,
|
|
30717
30717
|
"lValueRequested": false,
|
|
30718
30718
|
"member_name": "tokenName",
|
|
30719
|
-
"referencedDeclaration":
|
|
30719
|
+
"referencedDeclaration": 10838,
|
|
30720
30720
|
"type": "bytes32"
|
|
30721
30721
|
},
|
|
30722
30722
|
"children": [
|
|
@@ -30960,7 +30960,7 @@
|
|
|
30960
30960
|
"overloadedDeclarations": [
|
|
30961
30961
|
null
|
|
30962
30962
|
],
|
|
30963
|
-
"referencedDeclaration":
|
|
30963
|
+
"referencedDeclaration": 11539,
|
|
30964
30964
|
"type": "msg",
|
|
30965
30965
|
"value": "msg"
|
|
30966
30966
|
},
|
|
@@ -31013,7 +31013,7 @@
|
|
|
31013
31013
|
"overloadedDeclarations": [
|
|
31014
31014
|
null
|
|
31015
31015
|
],
|
|
31016
|
-
"referencedDeclaration":
|
|
31016
|
+
"referencedDeclaration": 11599,
|
|
31017
31017
|
"type": "contract Cash",
|
|
31018
31018
|
"value": "this"
|
|
31019
31019
|
},
|
|
@@ -31628,7 +31628,7 @@
|
|
|
31628
31628
|
"overloadedDeclarations": [
|
|
31629
31629
|
null
|
|
31630
31630
|
],
|
|
31631
|
-
"referencedDeclaration":
|
|
31631
|
+
"referencedDeclaration": 11539,
|
|
31632
31632
|
"type": "msg",
|
|
31633
31633
|
"value": "msg"
|
|
31634
31634
|
},
|
|
@@ -31849,7 +31849,7 @@
|
|
|
31849
31849
|
"overloadedDeclarations": [
|
|
31850
31850
|
null
|
|
31851
31851
|
],
|
|
31852
|
-
"referencedDeclaration":
|
|
31852
|
+
"referencedDeclaration": 11539,
|
|
31853
31853
|
"type": "msg",
|
|
31854
31854
|
"value": "msg"
|
|
31855
31855
|
},
|
|
@@ -32013,7 +32013,7 @@
|
|
|
32013
32013
|
"overloadedDeclarations": [
|
|
32014
32014
|
null
|
|
32015
32015
|
],
|
|
32016
|
-
"referencedDeclaration":
|
|
32016
|
+
"referencedDeclaration": 11539,
|
|
32017
32017
|
"type": "msg",
|
|
32018
32018
|
"value": "msg"
|
|
32019
32019
|
},
|
|
@@ -32616,7 +32616,7 @@
|
|
|
32616
32616
|
"name": "addIssuedBalance",
|
|
32617
32617
|
"scope": 9304,
|
|
32618
32618
|
"stateMutability": "nonpayable",
|
|
32619
|
-
"superFunction":
|
|
32619
|
+
"superFunction": 10911,
|
|
32620
32620
|
"visibility": "external"
|
|
32621
32621
|
},
|
|
32622
32622
|
"children": [
|
|
@@ -32882,7 +32882,7 @@
|
|
|
32882
32882
|
"overloadedDeclarations": [
|
|
32883
32883
|
null
|
|
32884
32884
|
],
|
|
32885
|
-
"referencedDeclaration":
|
|
32885
|
+
"referencedDeclaration": 11533,
|
|
32886
32886
|
"type": "function (bytes memory) pure returns (bytes32)",
|
|
32887
32887
|
"value": "keccak256"
|
|
32888
32888
|
},
|
|
@@ -32932,7 +32932,7 @@
|
|
|
32932
32932
|
"overloadedDeclarations": [
|
|
32933
32933
|
null
|
|
32934
32934
|
],
|
|
32935
|
-
"referencedDeclaration":
|
|
32935
|
+
"referencedDeclaration": 11526,
|
|
32936
32936
|
"type": "abi",
|
|
32937
32937
|
"value": "abi"
|
|
32938
32938
|
},
|
|
@@ -33050,7 +33050,7 @@
|
|
|
33050
33050
|
"overloadedDeclarations": [
|
|
33051
33051
|
null
|
|
33052
33052
|
],
|
|
33053
|
-
"referencedDeclaration":
|
|
33053
|
+
"referencedDeclaration": 11533,
|
|
33054
33054
|
"type": "function (bytes memory) pure returns (bytes32)",
|
|
33055
33055
|
"value": "keccak256"
|
|
33056
33056
|
},
|
|
@@ -33100,7 +33100,7 @@
|
|
|
33100
33100
|
"overloadedDeclarations": [
|
|
33101
33101
|
null
|
|
33102
33102
|
],
|
|
33103
|
-
"referencedDeclaration":
|
|
33103
|
+
"referencedDeclaration": 11526,
|
|
33104
33104
|
"type": "abi",
|
|
33105
33105
|
"value": "abi"
|
|
33106
33106
|
},
|
|
@@ -33185,10 +33185,10 @@
|
|
|
33185
33185
|
}
|
|
33186
33186
|
],
|
|
33187
33187
|
"overloadedDeclarations": [
|
|
33188
|
-
|
|
33189
|
-
|
|
33188
|
+
11542,
|
|
33189
|
+
11543
|
|
33190
33190
|
],
|
|
33191
|
-
"referencedDeclaration":
|
|
33191
|
+
"referencedDeclaration": 11542,
|
|
33192
33192
|
"type": "function (bool) pure",
|
|
33193
33193
|
"value": "require"
|
|
33194
33194
|
},
|
|
@@ -33249,7 +33249,7 @@
|
|
|
33249
33249
|
"overloadedDeclarations": [
|
|
33250
33250
|
null
|
|
33251
33251
|
],
|
|
33252
|
-
"referencedDeclaration":
|
|
33252
|
+
"referencedDeclaration": 11531,
|
|
33253
33253
|
"type": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)",
|
|
33254
33254
|
"value": "ecrecover"
|
|
33255
33255
|
},
|
|
@@ -33399,7 +33399,7 @@
|
|
|
33399
33399
|
"isPure": false,
|
|
33400
33400
|
"lValueRequested": false,
|
|
33401
33401
|
"member_name": "getIssuer",
|
|
33402
|
-
"referencedDeclaration":
|
|
33402
|
+
"referencedDeclaration": 11010,
|
|
33403
33403
|
"type": "function (bytes32,bytes32) view external returns (address)"
|
|
33404
33404
|
},
|
|
33405
33405
|
"children": [
|
|
@@ -33498,7 +33498,7 @@
|
|
|
33498
33498
|
"overloadedDeclarations": [
|
|
33499
33499
|
null
|
|
33500
33500
|
],
|
|
33501
|
-
"referencedDeclaration":
|
|
33501
|
+
"referencedDeclaration": 11599,
|
|
33502
33502
|
"type": "contract Cash",
|
|
33503
33503
|
"value": "this"
|
|
33504
33504
|
},
|
|
@@ -34033,7 +34033,7 @@
|
|
|
34033
34033
|
"name": "transferDeposit",
|
|
34034
34034
|
"scope": 9304,
|
|
34035
34035
|
"stateMutability": "nonpayable",
|
|
34036
|
-
"superFunction":
|
|
34036
|
+
"superFunction": 10949,
|
|
34037
34037
|
"visibility": "external"
|
|
34038
34038
|
},
|
|
34039
34039
|
"children": [
|
|
@@ -34326,7 +34326,7 @@
|
|
|
34326
34326
|
"overloadedDeclarations": [
|
|
34327
34327
|
null
|
|
34328
34328
|
],
|
|
34329
|
-
"referencedDeclaration":
|
|
34329
|
+
"referencedDeclaration": 11533,
|
|
34330
34330
|
"type": "function (bytes memory) pure returns (bytes32)",
|
|
34331
34331
|
"value": "keccak256"
|
|
34332
34332
|
},
|
|
@@ -34376,7 +34376,7 @@
|
|
|
34376
34376
|
"overloadedDeclarations": [
|
|
34377
34377
|
null
|
|
34378
34378
|
],
|
|
34379
|
-
"referencedDeclaration":
|
|
34379
|
+
"referencedDeclaration": 11526,
|
|
34380
34380
|
"type": "abi",
|
|
34381
34381
|
"value": "abi"
|
|
34382
34382
|
},
|
|
@@ -34494,7 +34494,7 @@
|
|
|
34494
34494
|
"overloadedDeclarations": [
|
|
34495
34495
|
null
|
|
34496
34496
|
],
|
|
34497
|
-
"referencedDeclaration":
|
|
34497
|
+
"referencedDeclaration": 11533,
|
|
34498
34498
|
"type": "function (bytes memory) pure returns (bytes32)",
|
|
34499
34499
|
"value": "keccak256"
|
|
34500
34500
|
},
|
|
@@ -34544,7 +34544,7 @@
|
|
|
34544
34544
|
"overloadedDeclarations": [
|
|
34545
34545
|
null
|
|
34546
34546
|
],
|
|
34547
|
-
"referencedDeclaration":
|
|
34547
|
+
"referencedDeclaration": 11526,
|
|
34548
34548
|
"type": "abi",
|
|
34549
34549
|
"value": "abi"
|
|
34550
34550
|
},
|
|
@@ -34629,10 +34629,10 @@
|
|
|
34629
34629
|
}
|
|
34630
34630
|
],
|
|
34631
34631
|
"overloadedDeclarations": [
|
|
34632
|
-
|
|
34633
|
-
|
|
34632
|
+
11542,
|
|
34633
|
+
11543
|
|
34634
34634
|
],
|
|
34635
|
-
"referencedDeclaration":
|
|
34635
|
+
"referencedDeclaration": 11542,
|
|
34636
34636
|
"type": "function (bool) pure",
|
|
34637
34637
|
"value": "require"
|
|
34638
34638
|
},
|
|
@@ -34693,7 +34693,7 @@
|
|
|
34693
34693
|
"overloadedDeclarations": [
|
|
34694
34694
|
null
|
|
34695
34695
|
],
|
|
34696
|
-
"referencedDeclaration":
|
|
34696
|
+
"referencedDeclaration": 11531,
|
|
34697
34697
|
"type": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)",
|
|
34698
34698
|
"value": "ecrecover"
|
|
34699
34699
|
},
|
|
@@ -35729,7 +35729,7 @@
|
|
|
35729
35729
|
"name": "redeemDeposits",
|
|
35730
35730
|
"scope": 9304,
|
|
35731
35731
|
"stateMutability": "nonpayable",
|
|
35732
|
-
"superFunction":
|
|
35732
|
+
"superFunction": 10894,
|
|
35733
35733
|
"visibility": "external"
|
|
35734
35734
|
},
|
|
35735
35735
|
"children": [
|
|
@@ -36021,7 +36021,7 @@
|
|
|
36021
36021
|
"overloadedDeclarations": [
|
|
36022
36022
|
null
|
|
36023
36023
|
],
|
|
36024
|
-
"referencedDeclaration":
|
|
36024
|
+
"referencedDeclaration": 11533,
|
|
36025
36025
|
"type": "function (bytes memory) pure returns (bytes32)",
|
|
36026
36026
|
"value": "keccak256"
|
|
36027
36027
|
},
|
|
@@ -36071,7 +36071,7 @@
|
|
|
36071
36071
|
"overloadedDeclarations": [
|
|
36072
36072
|
null
|
|
36073
36073
|
],
|
|
36074
|
-
"referencedDeclaration":
|
|
36074
|
+
"referencedDeclaration": 11526,
|
|
36075
36075
|
"type": "abi",
|
|
36076
36076
|
"value": "abi"
|
|
36077
36077
|
},
|
|
@@ -36189,7 +36189,7 @@
|
|
|
36189
36189
|
"overloadedDeclarations": [
|
|
36190
36190
|
null
|
|
36191
36191
|
],
|
|
36192
|
-
"referencedDeclaration":
|
|
36192
|
+
"referencedDeclaration": 11533,
|
|
36193
36193
|
"type": "function (bytes memory) pure returns (bytes32)",
|
|
36194
36194
|
"value": "keccak256"
|
|
36195
36195
|
},
|
|
@@ -36239,7 +36239,7 @@
|
|
|
36239
36239
|
"overloadedDeclarations": [
|
|
36240
36240
|
null
|
|
36241
36241
|
],
|
|
36242
|
-
"referencedDeclaration":
|
|
36242
|
+
"referencedDeclaration": 11526,
|
|
36243
36243
|
"type": "abi",
|
|
36244
36244
|
"value": "abi"
|
|
36245
36245
|
},
|
|
@@ -36324,10 +36324,10 @@
|
|
|
36324
36324
|
}
|
|
36325
36325
|
],
|
|
36326
36326
|
"overloadedDeclarations": [
|
|
36327
|
-
|
|
36328
|
-
|
|
36327
|
+
11542,
|
|
36328
|
+
11543
|
|
36329
36329
|
],
|
|
36330
|
-
"referencedDeclaration":
|
|
36330
|
+
"referencedDeclaration": 11542,
|
|
36331
36331
|
"type": "function (bool) pure",
|
|
36332
36332
|
"value": "require"
|
|
36333
36333
|
},
|
|
@@ -36388,7 +36388,7 @@
|
|
|
36388
36388
|
"overloadedDeclarations": [
|
|
36389
36389
|
null
|
|
36390
36390
|
],
|
|
36391
|
-
"referencedDeclaration":
|
|
36391
|
+
"referencedDeclaration": 11531,
|
|
36392
36392
|
"type": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)",
|
|
36393
36393
|
"value": "ecrecover"
|
|
36394
36394
|
},
|
|
@@ -37406,7 +37406,7 @@
|
|
|
37406
37406
|
"isPure": false,
|
|
37407
37407
|
"lValueRequested": false,
|
|
37408
37408
|
"member_name": "tokenName",
|
|
37409
|
-
"referencedDeclaration":
|
|
37409
|
+
"referencedDeclaration": 10838,
|
|
37410
37410
|
"type": "bytes32"
|
|
37411
37411
|
},
|
|
37412
37412
|
"children": [
|
|
@@ -37559,7 +37559,7 @@
|
|
|
37559
37559
|
"isPure": false,
|
|
37560
37560
|
"lValueRequested": false,
|
|
37561
37561
|
"member_name": "tokenAddress",
|
|
37562
|
-
"referencedDeclaration":
|
|
37562
|
+
"referencedDeclaration": 10840,
|
|
37563
37563
|
"type": "address"
|
|
37564
37564
|
},
|
|
37565
37565
|
"children": [
|
|
@@ -38138,7 +38138,7 @@
|
|
|
38138
38138
|
"name": "transferIssuedBalance",
|
|
38139
38139
|
"scope": 9304,
|
|
38140
38140
|
"stateMutability": "nonpayable",
|
|
38141
|
-
"superFunction":
|
|
38141
|
+
"superFunction": 10930,
|
|
38142
38142
|
"visibility": "external"
|
|
38143
38143
|
},
|
|
38144
38144
|
"children": [
|
|
@@ -38430,7 +38430,7 @@
|
|
|
38430
38430
|
"overloadedDeclarations": [
|
|
38431
38431
|
null
|
|
38432
38432
|
],
|
|
38433
|
-
"referencedDeclaration":
|
|
38433
|
+
"referencedDeclaration": 11533,
|
|
38434
38434
|
"type": "function (bytes memory) pure returns (bytes32)",
|
|
38435
38435
|
"value": "keccak256"
|
|
38436
38436
|
},
|
|
@@ -38480,7 +38480,7 @@
|
|
|
38480
38480
|
"overloadedDeclarations": [
|
|
38481
38481
|
null
|
|
38482
38482
|
],
|
|
38483
|
-
"referencedDeclaration":
|
|
38483
|
+
"referencedDeclaration": 11526,
|
|
38484
38484
|
"type": "abi",
|
|
38485
38485
|
"value": "abi"
|
|
38486
38486
|
},
|
|
@@ -38598,7 +38598,7 @@
|
|
|
38598
38598
|
"overloadedDeclarations": [
|
|
38599
38599
|
null
|
|
38600
38600
|
],
|
|
38601
|
-
"referencedDeclaration":
|
|
38601
|
+
"referencedDeclaration": 11533,
|
|
38602
38602
|
"type": "function (bytes memory) pure returns (bytes32)",
|
|
38603
38603
|
"value": "keccak256"
|
|
38604
38604
|
},
|
|
@@ -38648,7 +38648,7 @@
|
|
|
38648
38648
|
"overloadedDeclarations": [
|
|
38649
38649
|
null
|
|
38650
38650
|
],
|
|
38651
|
-
"referencedDeclaration":
|
|
38651
|
+
"referencedDeclaration": 11526,
|
|
38652
38652
|
"type": "abi",
|
|
38653
38653
|
"value": "abi"
|
|
38654
38654
|
},
|
|
@@ -38733,10 +38733,10 @@
|
|
|
38733
38733
|
}
|
|
38734
38734
|
],
|
|
38735
38735
|
"overloadedDeclarations": [
|
|
38736
|
-
|
|
38737
|
-
|
|
38736
|
+
11542,
|
|
38737
|
+
11543
|
|
38738
38738
|
],
|
|
38739
|
-
"referencedDeclaration":
|
|
38739
|
+
"referencedDeclaration": 11542,
|
|
38740
38740
|
"type": "function (bool) pure",
|
|
38741
38741
|
"value": "require"
|
|
38742
38742
|
},
|
|
@@ -38797,7 +38797,7 @@
|
|
|
38797
38797
|
"overloadedDeclarations": [
|
|
38798
38798
|
null
|
|
38799
38799
|
],
|
|
38800
|
-
"referencedDeclaration":
|
|
38800
|
+
"referencedDeclaration": 11531,
|
|
38801
38801
|
"type": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)",
|
|
38802
38802
|
"value": "ecrecover"
|
|
38803
38803
|
},
|
|
@@ -39637,7 +39637,7 @@
|
|
|
39637
39637
|
"overloadedDeclarations": [
|
|
39638
39638
|
null
|
|
39639
39639
|
],
|
|
39640
|
-
"referencedDeclaration":
|
|
39640
|
+
"referencedDeclaration": 11599,
|
|
39641
39641
|
"type": "contract Cash",
|
|
39642
39642
|
"value": "this"
|
|
39643
39643
|
},
|
|
@@ -39758,7 +39758,7 @@
|
|
|
39758
39758
|
"overloadedDeclarations": [
|
|
39759
39759
|
null
|
|
39760
39760
|
],
|
|
39761
|
-
"referencedDeclaration":
|
|
39761
|
+
"referencedDeclaration": 11599,
|
|
39762
39762
|
"type": "contract Cash",
|
|
39763
39763
|
"value": "this"
|
|
39764
39764
|
},
|
|
@@ -40741,10 +40741,10 @@
|
|
|
40741
40741
|
}
|
|
40742
40742
|
],
|
|
40743
40743
|
"overloadedDeclarations": [
|
|
40744
|
-
|
|
40745
|
-
|
|
40744
|
+
11542,
|
|
40745
|
+
11543
|
|
40746
40746
|
],
|
|
40747
|
-
"referencedDeclaration":
|
|
40747
|
+
"referencedDeclaration": 11542,
|
|
40748
40748
|
"type": "function (bool) pure",
|
|
40749
40749
|
"value": "require"
|
|
40750
40750
|
},
|
|
@@ -40773,7 +40773,7 @@
|
|
|
40773
40773
|
"overloadedDeclarations": [
|
|
40774
40774
|
null
|
|
40775
40775
|
],
|
|
40776
|
-
"referencedDeclaration":
|
|
40776
|
+
"referencedDeclaration": 11193,
|
|
40777
40777
|
"type": "bool",
|
|
40778
40778
|
"value": "paused"
|
|
40779
40779
|
},
|
|
@@ -40839,10 +40839,10 @@
|
|
|
40839
40839
|
}
|
|
40840
40840
|
],
|
|
40841
40841
|
"overloadedDeclarations": [
|
|
40842
|
-
|
|
40843
|
-
|
|
40842
|
+
11542,
|
|
40843
|
+
11543
|
|
40844
40844
|
],
|
|
40845
|
-
"referencedDeclaration":
|
|
40845
|
+
"referencedDeclaration": 11542,
|
|
40846
40846
|
"type": "function (bool) pure",
|
|
40847
40847
|
"value": "require"
|
|
40848
40848
|
},
|
|
@@ -41207,7 +41207,7 @@
|
|
|
41207
41207
|
"overloadedDeclarations": [
|
|
41208
41208
|
null
|
|
41209
41209
|
],
|
|
41210
|
-
"referencedDeclaration":
|
|
41210
|
+
"referencedDeclaration": 11599,
|
|
41211
41211
|
"type": "contract Cash",
|
|
41212
41212
|
"value": "this"
|
|
41213
41213
|
},
|
|
@@ -41416,7 +41416,7 @@
|
|
|
41416
41416
|
"overloadedDeclarations": [
|
|
41417
41417
|
null
|
|
41418
41418
|
],
|
|
41419
|
-
"referencedDeclaration":
|
|
41419
|
+
"referencedDeclaration": 11599,
|
|
41420
41420
|
"type": "contract Cash",
|
|
41421
41421
|
"value": "this"
|
|
41422
41422
|
},
|
|
@@ -41558,7 +41558,7 @@
|
|
|
41558
41558
|
"isPure": false,
|
|
41559
41559
|
"lValueRequested": false,
|
|
41560
41560
|
"member_name": "getType",
|
|
41561
|
-
"referencedDeclaration":
|
|
41561
|
+
"referencedDeclaration": 10983,
|
|
41562
41562
|
"type": "function (address) view external returns (bytes32)"
|
|
41563
41563
|
},
|
|
41564
41564
|
"children": [
|
|
@@ -41665,7 +41665,7 @@
|
|
|
41665
41665
|
"isPure": false,
|
|
41666
41666
|
"lValueRequested": false,
|
|
41667
41667
|
"member_name": "getType",
|
|
41668
|
-
"referencedDeclaration":
|
|
41668
|
+
"referencedDeclaration": 10983,
|
|
41669
41669
|
"type": "function (address) view external returns (bytes32)"
|
|
41670
41670
|
},
|
|
41671
41671
|
"children": [
|
|
@@ -42771,7 +42771,7 @@
|
|
|
42771
42771
|
"isPure": false,
|
|
42772
42772
|
"lValueRequested": false,
|
|
42773
42773
|
"member_name": "tokenName",
|
|
42774
|
-
"referencedDeclaration":
|
|
42774
|
+
"referencedDeclaration": 10838,
|
|
42775
42775
|
"type": "bytes32"
|
|
42776
42776
|
},
|
|
42777
42777
|
"children": [
|
|
@@ -43106,7 +43106,7 @@
|
|
|
43106
43106
|
"isPure": false,
|
|
43107
43107
|
"lValueRequested": false,
|
|
43108
43108
|
"member_name": "tokenName",
|
|
43109
|
-
"referencedDeclaration":
|
|
43109
|
+
"referencedDeclaration": 10838,
|
|
43110
43110
|
"type": "bytes32"
|
|
43111
43111
|
},
|
|
43112
43112
|
"children": [
|
|
@@ -43246,7 +43246,7 @@
|
|
|
43246
43246
|
"isPure": false,
|
|
43247
43247
|
"lValueRequested": false,
|
|
43248
43248
|
"member_name": "tokenName",
|
|
43249
|
-
"referencedDeclaration":
|
|
43249
|
+
"referencedDeclaration": 10838,
|
|
43250
43250
|
"type": "bytes32"
|
|
43251
43251
|
},
|
|
43252
43252
|
"children": [
|
|
@@ -43404,7 +43404,7 @@
|
|
|
43404
43404
|
"isPure": false,
|
|
43405
43405
|
"lValueRequested": false,
|
|
43406
43406
|
"member_name": "tokenName",
|
|
43407
|
-
"referencedDeclaration":
|
|
43407
|
+
"referencedDeclaration": 10838,
|
|
43408
43408
|
"type": "bytes32"
|
|
43409
43409
|
},
|
|
43410
43410
|
"children": [
|
|
@@ -43594,7 +43594,7 @@
|
|
|
43594
43594
|
"isPure": false,
|
|
43595
43595
|
"lValueRequested": false,
|
|
43596
43596
|
"member_name": "tokenName",
|
|
43597
|
-
"referencedDeclaration":
|
|
43597
|
+
"referencedDeclaration": 10838,
|
|
43598
43598
|
"type": "bytes32"
|
|
43599
43599
|
},
|
|
43600
43600
|
"children": [
|
|
@@ -43771,7 +43771,7 @@
|
|
|
43771
43771
|
"isPure": false,
|
|
43772
43772
|
"lValueRequested": false,
|
|
43773
43773
|
"member_name": "tokenName",
|
|
43774
|
-
"referencedDeclaration":
|
|
43774
|
+
"referencedDeclaration": 10838,
|
|
43775
43775
|
"type": "bytes32"
|
|
43776
43776
|
},
|
|
43777
43777
|
"children": [
|
|
@@ -43961,7 +43961,7 @@
|
|
|
43961
43961
|
"isPure": false,
|
|
43962
43962
|
"lValueRequested": false,
|
|
43963
43963
|
"member_name": "tokenName",
|
|
43964
|
-
"referencedDeclaration":
|
|
43964
|
+
"referencedDeclaration": 10838,
|
|
43965
43965
|
"type": "bytes32"
|
|
43966
43966
|
},
|
|
43967
43967
|
"children": [
|
|
@@ -44078,10 +44078,10 @@
|
|
|
44078
44078
|
}
|
|
44079
44079
|
],
|
|
44080
44080
|
"overloadedDeclarations": [
|
|
44081
|
-
|
|
44082
|
-
|
|
44081
|
+
11542,
|
|
44082
|
+
11543
|
|
44083
44083
|
],
|
|
44084
|
-
"referencedDeclaration":
|
|
44084
|
+
"referencedDeclaration": 11542,
|
|
44085
44085
|
"type": "function (bool) pure",
|
|
44086
44086
|
"value": "require"
|
|
44087
44087
|
},
|
|
@@ -44398,7 +44398,7 @@
|
|
|
44398
44398
|
"isPure": false,
|
|
44399
44399
|
"lValueRequested": false,
|
|
44400
44400
|
"member_name": "tokenName",
|
|
44401
|
-
"referencedDeclaration":
|
|
44401
|
+
"referencedDeclaration": 10838,
|
|
44402
44402
|
"type": "bytes32"
|
|
44403
44403
|
},
|
|
44404
44404
|
"children": [
|
|
@@ -44772,7 +44772,7 @@
|
|
|
44772
44772
|
"isPure": false,
|
|
44773
44773
|
"lValueRequested": false,
|
|
44774
44774
|
"member_name": "tokenAddress",
|
|
44775
|
-
"referencedDeclaration":
|
|
44775
|
+
"referencedDeclaration": 10840,
|
|
44776
44776
|
"type": "address"
|
|
44777
44777
|
},
|
|
44778
44778
|
"children": [
|
|
@@ -45004,7 +45004,7 @@
|
|
|
45004
45004
|
"isPure": false,
|
|
45005
45005
|
"lValueRequested": false,
|
|
45006
45006
|
"member_name": "tokenName",
|
|
45007
|
-
"referencedDeclaration":
|
|
45007
|
+
"referencedDeclaration": 10838,
|
|
45008
45008
|
"type": "bytes32"
|
|
45009
45009
|
},
|
|
45010
45010
|
"children": [
|
|
@@ -45334,7 +45334,7 @@
|
|
|
45334
45334
|
"isPure": false,
|
|
45335
45335
|
"lValueRequested": false,
|
|
45336
45336
|
"member_name": "tokenName",
|
|
45337
|
-
"referencedDeclaration":
|
|
45337
|
+
"referencedDeclaration": 10838,
|
|
45338
45338
|
"type": "bytes32"
|
|
45339
45339
|
},
|
|
45340
45340
|
"children": [
|
|
@@ -45755,7 +45755,7 @@
|
|
|
45755
45755
|
"isPure": false,
|
|
45756
45756
|
"lValueRequested": false,
|
|
45757
45757
|
"member_name": "tokenName",
|
|
45758
|
-
"referencedDeclaration":
|
|
45758
|
+
"referencedDeclaration": 10838,
|
|
45759
45759
|
"type": "bytes32"
|
|
45760
45760
|
},
|
|
45761
45761
|
"children": [
|
|
@@ -45945,7 +45945,7 @@
|
|
|
45945
45945
|
"isPure": false,
|
|
45946
45946
|
"lValueRequested": false,
|
|
45947
45947
|
"member_name": "tokenName",
|
|
45948
|
-
"referencedDeclaration":
|
|
45948
|
+
"referencedDeclaration": 10838,
|
|
45949
45949
|
"type": "bytes32"
|
|
45950
45950
|
},
|
|
45951
45951
|
"children": [
|
|
@@ -46122,7 +46122,7 @@
|
|
|
46122
46122
|
"isPure": false,
|
|
46123
46123
|
"lValueRequested": false,
|
|
46124
46124
|
"member_name": "tokenName",
|
|
46125
|
-
"referencedDeclaration":
|
|
46125
|
+
"referencedDeclaration": 10838,
|
|
46126
46126
|
"type": "bytes32"
|
|
46127
46127
|
},
|
|
46128
46128
|
"children": [
|
|
@@ -46312,7 +46312,7 @@
|
|
|
46312
46312
|
"isPure": false,
|
|
46313
46313
|
"lValueRequested": false,
|
|
46314
46314
|
"member_name": "tokenName",
|
|
46315
|
-
"referencedDeclaration":
|
|
46315
|
+
"referencedDeclaration": 10838,
|
|
46316
46316
|
"type": "bytes32"
|
|
46317
46317
|
},
|
|
46318
46318
|
"children": [
|
|
@@ -46487,7 +46487,7 @@
|
|
|
46487
46487
|
"isPure": false,
|
|
46488
46488
|
"lValueRequested": false,
|
|
46489
46489
|
"member_name": "tokenName",
|
|
46490
|
-
"referencedDeclaration":
|
|
46490
|
+
"referencedDeclaration": 10838,
|
|
46491
46491
|
"type": "bytes32"
|
|
46492
46492
|
},
|
|
46493
46493
|
"children": [
|
|
@@ -46949,7 +46949,7 @@
|
|
|
46949
46949
|
"isPure": false,
|
|
46950
46950
|
"lValueRequested": false,
|
|
46951
46951
|
"member_name": "tokenName",
|
|
46952
|
-
"referencedDeclaration":
|
|
46952
|
+
"referencedDeclaration": 10838,
|
|
46953
46953
|
"type": "bytes32"
|
|
46954
46954
|
},
|
|
46955
46955
|
"children": [
|
|
@@ -47083,10 +47083,10 @@
|
|
|
47083
47083
|
}
|
|
47084
47084
|
],
|
|
47085
47085
|
"overloadedDeclarations": [
|
|
47086
|
-
|
|
47087
|
-
|
|
47086
|
+
11542,
|
|
47087
|
+
11543
|
|
47088
47088
|
],
|
|
47089
|
-
"referencedDeclaration":
|
|
47089
|
+
"referencedDeclaration": 11542,
|
|
47090
47090
|
"type": "function (bool) pure",
|
|
47091
47091
|
"value": "require"
|
|
47092
47092
|
},
|
|
@@ -47422,7 +47422,7 @@
|
|
|
47422
47422
|
"isPure": false,
|
|
47423
47423
|
"lValueRequested": false,
|
|
47424
47424
|
"member_name": "tokenName",
|
|
47425
|
-
"referencedDeclaration":
|
|
47425
|
+
"referencedDeclaration": 10838,
|
|
47426
47426
|
"type": "bytes32"
|
|
47427
47427
|
},
|
|
47428
47428
|
"children": [
|
|
@@ -47605,7 +47605,7 @@
|
|
|
47605
47605
|
"isPure": false,
|
|
47606
47606
|
"lValueRequested": false,
|
|
47607
47607
|
"member_name": "tokenName",
|
|
47608
|
-
"referencedDeclaration":
|
|
47608
|
+
"referencedDeclaration": 10838,
|
|
47609
47609
|
"type": "bytes32"
|
|
47610
47610
|
},
|
|
47611
47611
|
"children": [
|
|
@@ -47697,7 +47697,7 @@
|
|
|
47697
47697
|
"isPure": false,
|
|
47698
47698
|
"lValueRequested": false,
|
|
47699
47699
|
"member_name": "tokenName",
|
|
47700
|
-
"referencedDeclaration":
|
|
47700
|
+
"referencedDeclaration": 10838,
|
|
47701
47701
|
"type": "bytes32"
|
|
47702
47702
|
},
|
|
47703
47703
|
"children": [
|
|
@@ -48071,7 +48071,7 @@
|
|
|
48071
48071
|
"isPure": false,
|
|
48072
48072
|
"lValueRequested": false,
|
|
48073
48073
|
"member_name": "tokenAddress",
|
|
48074
|
-
"referencedDeclaration":
|
|
48074
|
+
"referencedDeclaration": 10840,
|
|
48075
48075
|
"type": "address"
|
|
48076
48076
|
},
|
|
48077
48077
|
"children": [
|
|
@@ -48303,7 +48303,7 @@
|
|
|
48303
48303
|
"isPure": false,
|
|
48304
48304
|
"lValueRequested": false,
|
|
48305
48305
|
"member_name": "tokenName",
|
|
48306
|
-
"referencedDeclaration":
|
|
48306
|
+
"referencedDeclaration": 10838,
|
|
48307
48307
|
"type": "bytes32"
|
|
48308
48308
|
},
|
|
48309
48309
|
"children": [
|
|
@@ -48673,7 +48673,7 @@
|
|
|
48673
48673
|
"isPure": false,
|
|
48674
48674
|
"lValueRequested": false,
|
|
48675
48675
|
"member_name": "tokenName",
|
|
48676
|
-
"referencedDeclaration":
|
|
48676
|
+
"referencedDeclaration": 10838,
|
|
48677
48677
|
"type": "bytes32"
|
|
48678
48678
|
},
|
|
48679
48679
|
"children": [
|
|
@@ -48808,7 +48808,7 @@
|
|
|
48808
48808
|
"isPure": false,
|
|
48809
48809
|
"lValueRequested": false,
|
|
48810
48810
|
"member_name": "tokenName",
|
|
48811
|
-
"referencedDeclaration":
|
|
48811
|
+
"referencedDeclaration": 10838,
|
|
48812
48812
|
"type": "bytes32"
|
|
48813
48813
|
},
|
|
48814
48814
|
"children": [
|
|
@@ -48878,7 +48878,7 @@
|
|
|
48878
48878
|
"isPure": false,
|
|
48879
48879
|
"lValueRequested": false,
|
|
48880
48880
|
"member_name": "tokenName",
|
|
48881
|
-
"referencedDeclaration":
|
|
48881
|
+
"referencedDeclaration": 10838,
|
|
48882
48882
|
"type": "bytes32"
|
|
48883
48883
|
},
|
|
48884
48884
|
"children": [
|
|
@@ -49294,7 +49294,7 @@
|
|
|
49294
49294
|
"isPure": false,
|
|
49295
49295
|
"lValueRequested": false,
|
|
49296
49296
|
"member_name": "tokenName",
|
|
49297
|
-
"referencedDeclaration":
|
|
49297
|
+
"referencedDeclaration": 10838,
|
|
49298
49298
|
"type": "bytes32"
|
|
49299
49299
|
},
|
|
49300
49300
|
"children": [
|
|
@@ -49484,7 +49484,7 @@
|
|
|
49484
49484
|
"isPure": false,
|
|
49485
49485
|
"lValueRequested": false,
|
|
49486
49486
|
"member_name": "tokenName",
|
|
49487
|
-
"referencedDeclaration":
|
|
49487
|
+
"referencedDeclaration": 10838,
|
|
49488
49488
|
"type": "bytes32"
|
|
49489
49489
|
},
|
|
49490
49490
|
"children": [
|
|
@@ -49661,7 +49661,7 @@
|
|
|
49661
49661
|
"isPure": false,
|
|
49662
49662
|
"lValueRequested": false,
|
|
49663
49663
|
"member_name": "tokenName",
|
|
49664
|
-
"referencedDeclaration":
|
|
49664
|
+
"referencedDeclaration": 10838,
|
|
49665
49665
|
"type": "bytes32"
|
|
49666
49666
|
},
|
|
49667
49667
|
"children": [
|
|
@@ -49851,7 +49851,7 @@
|
|
|
49851
49851
|
"isPure": false,
|
|
49852
49852
|
"lValueRequested": false,
|
|
49853
49853
|
"member_name": "tokenName",
|
|
49854
|
-
"referencedDeclaration":
|
|
49854
|
+
"referencedDeclaration": 10838,
|
|
49855
49855
|
"type": "bytes32"
|
|
49856
49856
|
},
|
|
49857
49857
|
"children": [
|
|
@@ -50026,7 +50026,7 @@
|
|
|
50026
50026
|
"isPure": false,
|
|
50027
50027
|
"lValueRequested": false,
|
|
50028
50028
|
"member_name": "tokenName",
|
|
50029
|
-
"referencedDeclaration":
|
|
50029
|
+
"referencedDeclaration": 10838,
|
|
50030
50030
|
"type": "bytes32"
|
|
50031
50031
|
},
|
|
50032
50032
|
"children": [
|
|
@@ -50342,7 +50342,7 @@
|
|
|
50342
50342
|
"isPure": false,
|
|
50343
50343
|
"lValueRequested": false,
|
|
50344
50344
|
"member_name": "tokenName",
|
|
50345
|
-
"referencedDeclaration":
|
|
50345
|
+
"referencedDeclaration": 10838,
|
|
50346
50346
|
"type": "bytes32"
|
|
50347
50347
|
},
|
|
50348
50348
|
"children": [
|
|
@@ -50494,7 +50494,7 @@
|
|
|
50494
50494
|
"isPure": false,
|
|
50495
50495
|
"lValueRequested": false,
|
|
50496
50496
|
"member_name": "tokenName",
|
|
50497
|
-
"referencedDeclaration":
|
|
50497
|
+
"referencedDeclaration": 10838,
|
|
50498
50498
|
"type": "bytes32"
|
|
50499
50499
|
},
|
|
50500
50500
|
"children": [
|
|
@@ -51002,7 +51002,7 @@
|
|
|
51002
51002
|
"isPure": false,
|
|
51003
51003
|
"lValueRequested": false,
|
|
51004
51004
|
"member_name": "getFee",
|
|
51005
|
-
"referencedDeclaration":
|
|
51005
|
+
"referencedDeclaration": 11134,
|
|
51006
51006
|
"type": "function (bytes32) view external returns (uint256)"
|
|
51007
51007
|
},
|
|
51008
51008
|
"children": [
|
|
@@ -51254,7 +51254,7 @@
|
|
|
51254
51254
|
"isPure": false,
|
|
51255
51255
|
"lValueRequested": false,
|
|
51256
51256
|
"member_name": "getFeeToSetter",
|
|
51257
|
-
"referencedDeclaration":
|
|
51257
|
+
"referencedDeclaration": 11122,
|
|
51258
51258
|
"type": "function () view external returns (address)"
|
|
51259
51259
|
},
|
|
51260
51260
|
"children": [
|
|
@@ -52512,7 +52512,7 @@
|
|
|
52512
52512
|
"overloadedDeclarations": [
|
|
52513
52513
|
null
|
|
52514
52514
|
],
|
|
52515
|
-
"referencedDeclaration":
|
|
52515
|
+
"referencedDeclaration": 11208,
|
|
52516
52516
|
"type": "function ()",
|
|
52517
52517
|
"value": "_pause"
|
|
52518
52518
|
},
|
|
@@ -52629,7 +52629,7 @@
|
|
|
52629
52629
|
"overloadedDeclarations": [
|
|
52630
52630
|
null
|
|
52631
52631
|
],
|
|
52632
|
-
"referencedDeclaration":
|
|
52632
|
+
"referencedDeclaration": 11219,
|
|
52633
52633
|
"type": "function ()",
|
|
52634
52634
|
"value": "_unpause"
|
|
52635
52635
|
},
|
|
@@ -52672,17 +52672,17 @@
|
|
|
52672
52672
|
"version": "0.5.7+commit.6da8b019.Emscripten.clang"
|
|
52673
52673
|
},
|
|
52674
52674
|
"networks": {
|
|
52675
|
-
"
|
|
52675
|
+
"3": {
|
|
52676
52676
|
"events": {},
|
|
52677
52677
|
"links": {
|
|
52678
|
-
"stringutils": "
|
|
52678
|
+
"stringutils": "0x1CFE362e28B67992c81413d6443061c8CE500600"
|
|
52679
52679
|
},
|
|
52680
|
-
"address": "
|
|
52681
|
-
"transactionHash": "
|
|
52680
|
+
"address": "0xB4b7F053D8c26BAa683747218F09fac77A0950cd",
|
|
52681
|
+
"transactionHash": "0x754a2943a6f6c86000be196832235d9de67f9e010a1c779871d7007a980de61c"
|
|
52682
52682
|
}
|
|
52683
52683
|
},
|
|
52684
52684
|
"schemaVersion": "3.4.3",
|
|
52685
|
-
"updatedAt": "2022-
|
|
52685
|
+
"updatedAt": "2022-09-20T19:19:25.462Z",
|
|
52686
52686
|
"networkType": "ethereum",
|
|
52687
52687
|
"devdoc": {
|
|
52688
52688
|
"methods": {
|