@verified-network/verified-sdk 0.7.2 → 0.7.3
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/accounts/Account.json +47 -47
- package/dist/abi/accounts/Client.json +97 -97
- package/dist/abi/accounts/Holder.json +59 -59
- package/dist/abi/accounts/Kyc.json +2353 -2547
- package/dist/abi/accounts/Ledger.json +25 -25
- package/dist/abi/accounts/System.json +125 -125
- package/dist/abi/assetmanager/BalancerManager.json +3 -3
- package/dist/abi/liquidity/Distribution.json +3 -3
- package/dist/abi/liquidity/Liquidity.json +3 -3
- package/dist/abi/payments/Bond.json +373 -373
- package/dist/abi/payments/Cash.json +261 -261
- package/dist/abi/payments/Factory.json +72 -72
- package/dist/abi/payments/Oracle.json +69 -69
- package/dist/abi/payments/Rates.json +71 -71
- package/dist/abi/payments/Token.json +550 -550
- package/dist/abi/securities/Bonds.json +10 -2
- package/dist/abi/securities/Products.json +10 -2
- package/dist/abi/securities/Stocks.json +10 -2
- package/dist/abi/trades/OrderPool.json +4 -4
- package/dist/abi/trades/PoolFactory.json +3 -3
- package/dist/abi/trades/PostTrade.json +3 -3
- package/dist/abi/trades/PreTrade.json +4 -4
- package/dist/abi/trades/SecuritiesRegistry.json +4 -4
- package/dist/abi/trades/Security.json +3 -3
- package/dist/abi/trades/Trade.json +4 -4
- package/dist/contractAddress/index.js +32 -32
- package/package.json +1 -1
|
@@ -732,9 +732,9 @@
|
|
|
732
732
|
"type": "function"
|
|
733
733
|
}
|
|
734
734
|
],
|
|
735
|
-
"metadata": "{\"compiler\":{\"version\":\"0.5.7+commit.6da8b019\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"name\":\"_salt\",\"type\":\"uint256\"},{\"name\":\"_logic\",\"type\":\"address\"},{\"name\":\"_admin\",\"type\":\"address\"},{\"name\":\"_data\",\"type\":\"bytes\"},{\"name\":\"_signature\",\"type\":\"bytes\"}],\"name\":\"getSigner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenType\",\"type\":\"bytes32\"},{\"name\":\"tokenName\",\"type\":\"bytes32\"}],\"name\":\"getIssuer\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_salt\",\"type\":\"uint256\"},{\"name\":\"_logic\",\"type\":\"address\"},{\"name\":\"_admin\",\"type\":\"address\"},{\"name\":\"_data\",\"type\":\"bytes\"},{\"name\":\"_signature\",\"type\":\"bytes\"}],\"name\":\"deploySigned\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getViaOracleUrl\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getOracles\",\"outputs\":[{\"name\":\"\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"tokens\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getClient\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"viaAddress\",\"type\":\"address\"}],\"name\":\"getName\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_salt\",\"type\":\"uint256\"},{\"name\":\"_logic\",\"type\":\"address\"},{\"name\":\"_admin\",\"type\":\"address\"},{\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"deploy\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"viaAddress\",\"type\":\"address\"}],\"name\":\"getNameAndType\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\"},{\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"token\",\"outputs\":[{\"name\":\"tokenType\",\"type\":\"bytes32\"},{\"name\":\"name\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getTokenCount\",\"outputs\":[{\"name\":\"tokenCount\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_client\",\"type\":\"address\"}],\"name\":\"setClientAddress\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"initialize\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_salt\",\"type\":\"uint256\"},{\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"getDeploymentAddress\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_target\",\"type\":\"address\"},{\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"name\":\"tokenType\",\"type\":\"bytes32\"},{\"name\":\"tokenCurrency\",\"type\":\"bytes32\"},{\"name\":\"_oracle\",\"type\":\"address\"},{\"name\":\"_token\",\"type\":\"address\"},{\"name\":\"_fee\",\"type\":\"address\"}],\"name\":\"createIssuer\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_target\",\"type\":\"address\"},{\"name\":\"issuer\",\"type\":\"address\"},{\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"name\":\"tokenSymbol\",\"type\":\"bytes32\"}],\"name\":\"createToken\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"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\":\"getFiatPayoutUrl\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_oracles\",\"type\":\"address[]\"}],\"name\":\"setOracles\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getCryptoDataUrl\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_logic\",\"type\":\"address\"},{\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"deployMinimal\",\"outputs\":[{\"name\":\"proxy\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenName\",\"type\":\"bytes32\"}],\"name\":\"getAddressAndType\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"},{\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_url\",\"type\":\"string\"}],\"name\":\"setFiatPayoutUrl\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"n\",\"type\":\"uint256\"}],\"name\":\"getToken\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_url\",\"type\":\"string\"}],\"name\":\"setViaOracleUrl\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_url\",\"type\":\"string\"}],\"name\":\"setCryptoDataURL\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"name\":\"tokenType\",\"type\":\"bytes32\"}],\"name\":\"getTokenByNameType\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"viaAddress\",\"type\":\"address\"}],\"name\":\"getType\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"issuer\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"bytes32\"}],\"name\":\"CashIssuerCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"issuer\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"bytes32\"}],\"name\":\"BondIssuerCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"bytes32\"}],\"name\":\"TokenCreated\",\"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\":false,\"name\":\"proxy\",\"type\":\"address\"}],\"name\":\"ProxyCreated\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{\"initialize(address)\":{\"details\":\"Initializes the contract setting the deployer as the initial owner.\"},\"isOwner()\":{\"details\":\"Returns true if the caller is the current owner.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. * > Note: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Factory.sol\":\"Factory\"},\"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/ownership/Ownable.sol\":{\"keccak256\":\"0xd7e8ab76fa35c4d8d35a06a6ed538cadab8b75a1aa00594ced1568b2c0cadde3\",\"urls\":[\"bzzr://b4c855b32d75f2a4969bfbd530b6934b69f12f28584b3746967e1ca64e024bd9\"]},\"@openzeppelin/upgrades/contracts/Initializable.sol\":{\"keccak256\":\"0x9bfec92e36234ecc99b5d37230acb6cd1f99560233753162204104a4897e8721\",\"urls\":[\"bzzr://f75d88b16fe25a9e19b3512691c496e2bb6d8451bc9a636196c4e17ca9b40201\"]},\"@openzeppelin/upgrades/contracts/cryptography/ECDSA.sol\":{\"keccak256\":\"0x0ca3de3dc8aac4114ff0b123fcabef91901de1a30938f3e954846ad99909b972\",\"urls\":[\"bzzr://7905b8ce67a4d4b0744f0f08abb7c4ec1762b18ee39ee7d64fc73beb0da0db19\"]},\"@openzeppelin/upgrades/contracts/upgradeability/BaseAdminUpgradeabilityProxy.sol\":{\"keccak256\":\"0xbf8ee1cf63a430a3eb8b39a9145d0d133400b8db06fa9fd33056597f7d8ceb25\",\"urls\":[\"bzzr://f9563fda28096fae1396dce1f6eb5f5afc664677887071076b7e4b0e6d06bd56\"]},\"@openzeppelin/upgrades/contracts/upgradeability/BaseUpgradeabilityProxy.sol\":{\"keccak256\":\"0x1b37f808dc0a45976ad23aa53908c485a74a4d9fbd03066a5ab399c46436e570\",\"urls\":[\"bzzr://c309686ae393a7474d0af3a7237b5ef3c452d9f78756d40caeeaad4caf2c2efb\"]},\"@openzeppelin/upgrades/contracts/upgradeability/InitializableAdminUpgradeabilityProxy.sol\":{\"keccak256\":\"0x91f2b663c89b940dce6dbd00f5e7bf326cdf02d1da4ddbcb7e64b313e60d9afc\",\"urls\":[\"bzzr://572ab82efb4e71dbb88e992eedc363f72290eb2fdc1081023e66680d2a69ef07\"]},\"@openzeppelin/upgrades/contracts/upgradeability/InitializableUpgradeabilityProxy.sol\":{\"keccak256\":\"0x6b84a0236a899ba5aa673ea34d5efa1f93dba461e13d8799f51a9f7b64b59f4f\",\"urls\":[\"bzzr://bc421cdd1f5c8313a0eaf237c9110d187674955d3eacbc187bddeda82a664053\"]},\"@openzeppelin/upgrades/contracts/upgradeability/Proxy.sol\":{\"keccak256\":\"0xd8074ae5fa7ee6384ca8196a896612fb044bbf4ff4b7336d03cd97845000ac21\",\"urls\":[\"bzzr://a94275c7d409e80fa5cf6f31c8a6b97cf85c231de40585d42ae98bab426562c6\"]},\"@openzeppelin/upgrades/contracts/upgradeability/ProxyFactory.sol\":{\"keccak256\":\"0xf4932759c88b26dd0b37a7ba960c44f7a4e817127846befb4b4fb72ee8f2c573\",\"urls\":[\"bzzr://6b7fb7e0bdbbbcbf9cbd110fc19a23bfa4eeb583c767b66614124f34f2135b42\"]},\"@openzeppelin/upgrades/contracts/upgradeability/UpgradeabilityProxy.sol\":{\"keccak256\":\"0xb02c6349ba01df9902857b6058f92b37f13187775cce9da74f6f28410205445b\",\"urls\":[\"bzzr://2a95f00787c16351caad43b25048cc40eff9f140c4b1284fbf502dfd9b708489\"]},\"@openzeppelin/upgrades/contracts/utils/Address.sol\":{\"keccak256\":\"0x7be7f8e4c08bc70ff9815e3f11c569f42aa3c447b5bc61fd75fb5cec97f63a9f\",\"urls\":[\"bzzr://b6a2c355fa7aadb6c25e8691e98abc26d3429afa58eb761af4ab5377eee30709\"]},\"abdk-libraries-solidity/ABDKMathQuad.sol\":{\"keccak256\":\"0xf75c2b34d9924cc413521db48a168b00ed321e678e70f5048a50c1140994dcf2\",\"urls\":[\"bzzr://0bdb29f3216c419e91defe1801f146cb40bb9551c8cd708ffb59f1e298e205ce\"]},\"project:/contracts/Factory.sol\":{\"keccak256\":\"0x8d6a0bd7cc9d410ec444cc9595802870fbbba8b133467356f44d290c7d4c5921\",\"urls\":[\"bzzr://644307414e5563652a6141f8df2206f57e2fd711d716d73bdb043dbef96cd875\"]},\"project:/contracts/interfaces/VerifiedClient.sol\":{\"keccak256\":\"0xbdfb6846d7679a8a1b8984a5262f5d5ae072c319bb951692c0ba19943164fd0a\",\"urls\":[\"bzzr://c86aa25338531c43af3f9fc04d171b6ee721b6522346d42c7b593366e512f482\"]},\"project:/contracts/interfaces/ViaFactory.sol\":{\"keccak256\":\"0x61364e0e62edba9e4db776f09b320ed7147e2049f91bdf0ade6666818aa82e59\",\"urls\":[\"bzzr://c4e228128c76aa00ea50de421dc1f0b9660ae843c6d88f8bfdf6cddd237608d1\"]},\"project:/contracts/interfaces/ViaToken.sol\":{\"keccak256\":\"0x6727f15ebe785583bd6f8392d5ca86f12864fac88d263ee4a3c4edd41a4a525a\",\"urls\":[\"bzzr://8e1a4c2207d0c54dea87ae28dbfb9f41a1ebf50db6d083c8d369098159149048\"]}},\"version\":1}",
|
|
736
|
-
"bytecode": "0x6080604081905261001060a0610034565b601f1982820381018352601f90910116604052805160209190910120600055610041565b6109a680612d5583390190565b612d05806100506000396000f3fe608060405234801561001057600080fd5b50600436106101fb5760003560e01c806388a365f41161011a578063b96b2004116100ad578063edf6a8ac1161007c578063edf6a8ac14610a6d578063eed3b40c14610adb578063f2fde38b14610b49578063f3458f1414610b6f578063f429f19b14610b92576101fb565b8063b96b20041461097c578063baa796bd146109bc578063c4d66de814610a2a578063e4b50cb814610a50576101fb565b8063968eb4b2116100e9578063968eb4b21461084a578063ae9b71af14610852578063b1689d82146108c0578063b3eeb5e2146108c8576101fb565b806388a365f4146107985780638d5040cc146107ea5780638da5cb5b146108265780638f32d59b1461082e576101fb565b80636150864c1161019257806378a895671161016157806378a8956714610736578063805ef8121461073e5780638129fc1c1461076457806381ae1f5b1461076c576101fb565b80636150864c14610603578063668151a7146106c75780636d46a1db14610706578063715018a61461072c576101fb565b806340884c52116101ce57806340884c521461054e5780634f64b2be146105a657806359dc735c146105c35780635fd4b08a146105cb576101fb565b8063290f8f56146102005780632ea7791714610365578063332d6626146103885780633e18b01b146104d1575b600080fd5b610349600480360360a081101561021657600080fd5b8135916001600160a01b03602082013581169260408301359091169190810190608081016060820135600160201b81111561025057600080fd5b82018360208201111561026257600080fd5b803590602001918460018302840111600160201b8311171561028357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b8111156102d557600080fd5b8201836020820111156102e757600080fd5b803590602001918460018302840111600160201b8311171561030857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bb8945050505050565b604080516001600160a01b039092168252519081900360200190f35b6103496004803603604081101561037b57600080fd5b5080359060200135610ca7565b610349600480360360a081101561039e57600080fd5b8135916001600160a01b03602082013581169260408301359091169190810190608081016060820135600160201b8111156103d857600080fd5b8201836020820111156103ea57600080fd5b803590602001918460018302840111600160201b8311171561040b57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561045d57600080fd5b82018360208201111561046f57600080fd5b803590602001918460018302840111600160201b8311171561049057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610cd1945050505050565b6104d9610d4e565b6040805160208082528351818301528351919283929083019185019080838360005b838110156105135781810151838201526020016104fb565b50505050905090810190601f1680156105405780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610556610df9565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561059257818101518382015260200161057a565b505050509050019250505060405180910390f35b610349600480360360208110156105bc57600080fd5b5035610e72565b610349610e99565b6105f1600480360360208110156105e157600080fd5b50356001600160a01b0316610f42565b60408051918252519081900360200190f35b6103496004803603608081101561061957600080fd5b8135916001600160a01b03602082013581169260408301359091169190810190608081016060820135600160201b81111561065357600080fd5b82018360208201111561066557600080fd5b803590602001918460018302840111600160201b8311171561068657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610f60945050505050565b6106ed600480360360208110156106dd57600080fd5b50356001600160a01b0316610f78565b6040805192835260208301919091528051918290030190f35b6106ed6004803603602081101561071c57600080fd5b50356001600160a01b0316610f9d565b610734610fb6565b005b6105f161104a565b6107346004803603602081101561075457600080fd5b50356001600160a01b0316611050565b6107346110fd565b6103496004803603604081101561078257600080fd5b50803590602001356001600160a01b03166111aa565b610734600480360360e08110156107ae57600080fd5b506001600160a01b038135811691602081013591604082013591606081013591608082013581169160a081013582169160c0909101351661120f565b6103496004803603608081101561080057600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611558565b6103496116bc565b6108366116cb565b604080519115158252519081900360200190f35b6104d96116f1565b6107346004803603602081101561086857600080fd5b810190602081018135600160201b81111561088257600080fd5b82018360208201111561089457600080fd5b803590602001918460208302840111600160201b831117156108b557600080fd5b509092509050611766565b6104d96117c1565b610349600480360360408110156108de57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561090857600080fd5b82018360208201111561091a57600080fd5b803590602001918460018302840111600160201b8311171561093b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611836945050505050565b6109996004803603602081101561099257600080fd5b5035611997565b604080516001600160a01b03909316835260208301919091528051918290030190f35b610734600480360360208110156109d257600080fd5b810190602081018135600160201b8111156109ec57600080fd5b8201836020820111156109fe57600080fd5b803590602001918460018302840111600160201b83111715610a1f57600080fd5b509092509050611a74565b61073460048036036020811015610a4057600080fd5b50356001600160a01b0316611aca565b61034960048036036020811015610a6657600080fd5b5035611bbe565b61073460048036036020811015610a8357600080fd5b810190602081018135600160201b811115610a9d57600080fd5b820183602082011115610aaf57600080fd5b803590602001918460018302840111600160201b83111715610ad057600080fd5b509092509050611be8565b61073460048036036020811015610af157600080fd5b810190602081018135600160201b811115610b0b57600080fd5b820183602082011115610b1d57600080fd5b803590602001918460018302840111600160201b83111715610b3e57600080fd5b509092509050611c3e565b61073460048036036020811015610b5f57600080fd5b50356001600160a01b0316611c94565b61034960048036036040811015610b8557600080fd5b5080359060200135611ce7565b6105f160048036036020811015610ba857600080fd5b50356001600160a01b0316611dc9565b600080610c90878787873060405160200180868152602001856001600160a01b03166001600160a01b031660601b8152601401846001600160a01b03166001600160a01b031660601b815260140183805190602001908083835b60208310610c315780518252601f199092019160209182019101610c12565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b81526014019550505050505060405160208183030381529060405280519060200120611de4565b9050610c9c8184611e35565b979650505050505050565b60008281526070602090815260408083208484529091529020546001600160a01b03165b92915050565b600080610ce18787878787610bb8565b90506001600160a01b038116610d415760408051600160e51b62461bcd02815260206004820152601160248201527f496e76616c6964207369676e6174757265000000000000000000000000000000604482015290519081900360640190fd5b610c9c8787878785611f23565b6067546060906001600160a01b03163314610d6857600080fd5b6068805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610dee5780601f10610dc357610100808354040283529160200191610dee565b820191906000526020600020905b815481529060010190602001808311610dd157829003601f168201915b505050505090505b90565b6067546060906001600160a01b03163314610e1357600080fd5b606b805480602002602001604051908101604052809291908181526020018280548015610dee57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610e4b575050505050905090565b606e8181548110610e7f57fe5b6000918252602090912001546001600160a01b0316905081565b336000908152606d6020526040812054600160cb1b660acd2c286c2e6d021480610ede5750336000908152606d6020526040902054600160ca1b66159a58509bdb9902145b610f325760408051600160e51b62461bcd02815260206004820152601660248201527f47657420636c69656e74203a20464f5242494444454e00000000000000000000604482015290519081900360640190fd5b50606c546001600160a01b031690565b6001600160a01b03166000908152606d602052604090206001015490565b6000610f6f8585858533611f23565b95945050505050565b6001600160a01b0381166000908152606d60205260409020600181015490545b915091565b606d602052600090815260409020805460019091015482565b610fbe6116cb565b6110005760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6034546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603480546001600160a01b0319169055565b606e5490565b806110596116bc565b6001600160a01b0316816001600160a01b031663dbc4789a6040518163ffffffff1660e01b815260040160206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b50516001600160a01b0316146110da57600080fd5b50606c80546001600160a01b0319166001600160a01b0392909216919091179055565b600154610100900460ff16806111165750611116612057565b80611124575060015460ff16155b61116257604051600160e51b62461bcd02815260040180806020018281038252602e815260200180612cac602e913960400191505060405180910390fd5b600154610100900460ff1615801561118c576001805460ff1961ff00199091166101001716811790555b61119533611aca565b80156111a7576001805461ff00191690555b50565b6000806111b7848461205d565b600054604080516001600160f81b031960208083019190915230606090811b602184015260358301959095526055808301949094528251808303909401845260759091019091528151910120811b901c949350505050565b6112176116cb565b6112595760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b606780546001600160a01b0319166001600160a01b038516179055606086856112806116bc565b60408051602481019490945260448401929092526001600160a01b039081166064840152808716608484015280861660a4840152841660c4808401919091528151808403909101815260e490920190526020810180516001600160e01b0316600160e21b632274a71302179052905060006112fb8983611836565b905086600160e31b63086c2e6d02141561135757604080518981526020810189905281516001600160a01b038416927f49c2bdad6020b81dabafa7be5ba1d6b64dccc883841d724393e4a0242819bc34928290030190a26113ad565b86600160e21b63109bdb990214156113ad57604080518981526020810189905281516001600160a01b038416927fdaec82b39e03602f1e7b1c03805276c348a0b9c50d3e83d4ae136f2bbb74137f928290030190a25b86600160e31b63086c2e6d02141561148457604080518082018252600160cb1b660acd2c286c2e6d02815260208082018981526001600160a01b0385166000818152606d8452858120945185559151600194850155606e80548c8452606f855286842081905594850190557f9930d9ff0dee0ef5ca2f7710ea66b8f84dd0f5f5351ecffe72b952cd9db7142a90930180546001600160a01b031990811685179091557f725b1f02019c28ac763ea79e1ff934efc707f63e9b319f205fa7fd7c1ddb05d390925292909220805490921617905561154d565b86600160e21b63109bdb9902141561154d57604080518082018252600160ca1b66159a58509bdb9902815260208082018981526001600160a01b0385166000818152606d8452858120945185559151600194850155606e805494850190557f9930d9ff0dee0ef5ca2f7710ea66b8f84dd0f5f5351ecffe72b952cd9db7142a90930180546001600160a01b031990811685179091558a82527ff296d0245ee9f13beb062c173c79f5bf555e94b2a5108722d840fc530e4861819092529290922080549092161790555b505050505050505050565b336000908152606d6020526040812054600160ca1b66159a58509bdb99021461158057600080fd5b60408051602481018590526001600160a01b038616604482015233606482015260848082018590528251808303909101815260a49091019091526020810180516001600160e01b0316600160e01b63ef2397210217905260006115e38783611836565b60408051868152600160ca1b66159a58509bdb9902602082015281519293506001600160a01b038416927f59bcd02033e203f8af464062ce742d11a3358b7b8fd7e996b91d74bee929d7e5929181900390910190a26001600160a01b0381166000818152606d602052604081207f566961426f6e64546f6b656e00000000000000000000000000000000000000009055606e805460018101825591527f9930d9ff0dee0ef5ca2f7710ea66b8f84dd0f5f5351ecffe72b952cd9db7142a0180546001600160a01b03191690911790559695505050505050565b6034546001600160a01b031690565b6034546000906001600160a01b03166116e2612096565b6001600160a01b031614905090565b6067546060906001600160a01b0316331461170b57600080fd5b6069805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610dee5780601f10610dc357610100808354040283529160200191610dee565b61176e6116cb565b6117b05760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606b8383612197565b505050565b6067546060906001600160a01b031633146117db57600080fd5b606a805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610dee5780601f10610dc357610100808354040283529160200191610dee565b6000808360601b90506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f0604080516001600160a01b038316815290519194507efffc2da0b561cae30d9826d37709e9421c4725faebc226cbbb7ef5fc5e7349925081900360200190a1825115611990576000826001600160a01b0316846040518082805190602001908083835b602083106119195780518252601f1990920191602091820191016118fa565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461197b576040519150601f19603f3d011682016040523d82523d6000602084013e611980565b606091505b505090508061198e57600080fd5b505b5092915050565b6000818152606f6020526040812054606e8054839283928692606d9285929181106119be57fe5b600091825260209182902001546001600160a01b031682520152508015611a67576000848152606f6020526040902054606e805490919081106119fd57fe5b6000918252602080832090910154868352606f9091526040822054606e80546001600160a01b0390931693606d939092908110611a3657fe5b60009182526020808320909101546001600160a01b031683528201929092526040019020549093509150610f989050565b5060009150819050610f98565b611a7c6116cb565b611abe5760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606983836121fa565b600154610100900460ff1680611ae35750611ae3612057565b80611af1575060015460ff16155b611b2f57604051600160e51b62461bcd02815260040180806020018281038252602e815260200180612cac602e913960400191505060405180910390fd5b600154610100900460ff16158015611b59576001805460ff1961ff00199091166101001716811790555b603480546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015611bba576001805461ff00191690555b5050565b6000606e8281548110611bcd57fe5b6000918252602090912001546001600160a01b031692915050565b611bf06116cb565b611c325760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606883836121fa565b611c466116cb565b611c885760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606a83836121fa565b611c9c6116cb565b611cde5760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6111a78161209a565b600082606d6000606e606f60008881526020019081526020016000205481548110611d0e57fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902060010154148015611d8a575081606d6000606e606f60008881526020019081526020016000205481548110611d6357fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902054145b15610ccb576000838152606f6020526040902054606e80549091908110611dad57fe5b6000918252602090912001546001600160a01b03169050610ccb565b6001600160a01b03166000908152606d602052604090205490565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611e4857506000610ccb565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611e8e5760009350505050610ccb565b8060ff16601b14158015611ea657508060ff16601c14155b15611eb75760009350505050610ccb565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611f0e573d6000803e3d6000fd5b5050604051601f190151979650505050505050565b600080611f30878461213e565b604080516001600160a01b038316815290519192507efffc2da0b561cae30d9826d37709e9421c4725faebc226cbbb7ef5fc5e7349919081900360200190a1604051600160e01b63cf7a1d770281526001600160a01b038781166004830190815287821660248401526060604484019081528751606485015287519285169363cf7a1d77938b938b938b939192909160840190602085019080838360005b83811015611fe6578181015183820152602001611fce565b50505050905090810190601f1680156120135780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561203457600080fd5b505af1158015612048573d6000803e3d6000fd5b50929998505050505050505050565b303b1590565b604080516020808201949094526001600160a01b039290921660601b828201528051808303603401815260549092019052805191012090565b3390565b6001600160a01b0381166120e257604051600160e51b62461bcd028152600401808060200182810382526026815260200180612c666026913960400191505060405180910390fd5b6034546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603480546001600160a01b0319166001600160a01b0392909216919091179055565b60008060606040518060200161215390612274565b601f1982820381018352601f9091011660405290506000612174868661205d565b9050808251602084016000f59250823b61218d57600080fd5b5090949350505050565b8280548282559060005260206000209081019282156121ea579160200282015b828111156121ea5781546001600160a01b0319166001600160a01b038435161782556020909201916001909101906121b7565b506121f6929150612281565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061223b5782800160ff19823516178555612268565b82800160010185558215612268579182015b8281111561226857823582559160200191906001019061224d565b506121f69291506122a5565b6109a6806122c083390190565b610df691905b808211156121f65780546001600160a01b0319168155600101612287565b610df691905b808211156121f657600081556001016122ab56fe608060405234801561001057600080fd5b50610986806100206000396000f3fe6080604052600436106100705760003560e01c80638f2839701161004e5780638f2839701461015e578063cf7a1d7714610191578063d1f5789414610250578063f851a4401461030657610070565b80633659cfe61461007a5780634f1ef286146100ad5780635c60da1b1461012d575b61007861031b565b005b34801561008657600080fd5b506100786004803603602081101561009d57600080fd5b50356001600160a01b0316610335565b610078600480360360408110156100c357600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100ee57600080fd5b82018360208201111561010057600080fd5b8035906020019184600183028401116401000000008311171561012257600080fd5b50909250905061036f565b34801561013957600080fd5b5061014261041c565b604080516001600160a01b039092168252519081900360200190f35b34801561016a57600080fd5b506100786004803603602081101561018157600080fd5b50356001600160a01b0316610459565b610078600480360360608110156101a757600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156101db57600080fd5b8201836020820111156101ed57600080fd5b8035906020019184600183028401116401000000008311171561020f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610516945050505050565b6100786004803603604081101561026657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561029157600080fd5b8201836020820111156102a357600080fd5b803590602001918460018302840111640100000000831117156102c557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105a6945050505050565b34801561031257600080fd5b506101426106e6565b610323610711565b61033361032e610774565b610799565b565b61033d6107bd565b6001600160a01b0316336001600160a01b031614156103645761035f816107e2565b61036c565b61036c61031b565b50565b6103776107bd565b6001600160a01b0316336001600160a01b0316141561040f57610399836107e2565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b505090508061040957600080fd5b50610417565b61041761031b565b505050565b60006104266107bd565b6001600160a01b0316336001600160a01b0316141561044e57610447610774565b9050610456565b61045661031b565b90565b6104616107bd565b6001600160a01b0316336001600160a01b03161415610364576001600160a01b0381166104c257604051600160e51b62461bcd0281526004018080602001828103825260368152602001806108ea6036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104eb6107bd565b604080516001600160a01b03928316815291841660208301528051918290030190a161035f81610822565b6000610520610774565b6001600160a01b03161461053357600080fd5b61053d83826105a6565b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130190207fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61036000199091011461059d57fe5b61041782610822565b60006105b0610774565b6001600160a01b0316146105c357600080fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6000199091011461062357fe5b61062c82610846565b8051156106e2576000826001600160a01b0316826040518082805190602001908083835b6020831061066f5780518252601f199092019160209182019101610650565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146106cf576040519150601f19603f3d011682016040523d82523d6000602084013e6106d4565b606091505b505090508061041757600080fd5b5050565b60006106f06107bd565b6001600160a01b0316336001600160a01b0316141561044e576104476107bd565b6107196107bd565b6001600160a01b0316336001600160a01b0316141561076c57604051600160e51b62461bcd0281526004018080602001828103825260328152602001806108b86032913960400191505060405180910390fd5b610333610333565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e8080156107b8573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b6107eb81610846565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b61084f816108b1565b61088d57604051600160e51b62461bcd02815260040180806020018281038252603b815260200180610920603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b3b15159056fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a165627a7a72305820acd86240912c703ba88ccefef3db77e88d3507353c7c194b0b27eed571ae96c900294f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a165627a7a72305820b8573a0ea49b9fa15ff0b71cee26f7cc96d4f32ac441fbc3ad9022d45419af930029608060405234801561001057600080fd5b50610986806100206000396000f3fe6080604052600436106100705760003560e01c80638f2839701161004e5780638f2839701461015e578063cf7a1d7714610191578063d1f5789414610250578063f851a4401461030657610070565b80633659cfe61461007a5780634f1ef286146100ad5780635c60da1b1461012d575b61007861031b565b005b34801561008657600080fd5b506100786004803603602081101561009d57600080fd5b50356001600160a01b0316610335565b610078600480360360408110156100c357600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100ee57600080fd5b82018360208201111561010057600080fd5b8035906020019184600183028401116401000000008311171561012257600080fd5b50909250905061036f565b34801561013957600080fd5b5061014261041c565b604080516001600160a01b039092168252519081900360200190f35b34801561016a57600080fd5b506100786004803603602081101561018157600080fd5b50356001600160a01b0316610459565b610078600480360360608110156101a757600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156101db57600080fd5b8201836020820111156101ed57600080fd5b8035906020019184600183028401116401000000008311171561020f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610516945050505050565b6100786004803603604081101561026657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561029157600080fd5b8201836020820111156102a357600080fd5b803590602001918460018302840111640100000000831117156102c557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105a6945050505050565b34801561031257600080fd5b506101426106e6565b610323610711565b61033361032e610774565b610799565b565b61033d6107bd565b6001600160a01b0316336001600160a01b031614156103645761035f816107e2565b61036c565b61036c61031b565b50565b6103776107bd565b6001600160a01b0316336001600160a01b0316141561040f57610399836107e2565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b505090508061040957600080fd5b50610417565b61041761031b565b505050565b60006104266107bd565b6001600160a01b0316336001600160a01b0316141561044e57610447610774565b9050610456565b61045661031b565b90565b6104616107bd565b6001600160a01b0316336001600160a01b03161415610364576001600160a01b0381166104c257604051600160e51b62461bcd0281526004018080602001828103825260368152602001806108ea6036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104eb6107bd565b604080516001600160a01b03928316815291841660208301528051918290030190a161035f81610822565b6000610520610774565b6001600160a01b03161461053357600080fd5b61053d83826105a6565b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130190207fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61036000199091011461059d57fe5b61041782610822565b60006105b0610774565b6001600160a01b0316146105c357600080fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6000199091011461062357fe5b61062c82610846565b8051156106e2576000826001600160a01b0316826040518082805190602001908083835b6020831061066f5780518252601f199092019160209182019101610650565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146106cf576040519150601f19603f3d011682016040523d82523d6000602084013e6106d4565b606091505b505090508061041757600080fd5b5050565b60006106f06107bd565b6001600160a01b0316336001600160a01b0316141561044e576104476107bd565b6107196107bd565b6001600160a01b0316336001600160a01b0316141561076c57604051600160e51b62461bcd0281526004018080602001828103825260328152602001806108b86032913960400191505060405180910390fd5b610333610333565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e8080156107b8573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b6107eb81610846565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b61084f816108b1565b61088d57604051600160e51b62461bcd02815260040180806020018281038252603b815260200180610920603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b3b15159056fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a165627a7a72305820acd86240912c703ba88ccefef3db77e88d3507353c7c194b0b27eed571ae96c90029",
|
|
737
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101fb5760003560e01c806388a365f41161011a578063b96b2004116100ad578063edf6a8ac1161007c578063edf6a8ac14610a6d578063eed3b40c14610adb578063f2fde38b14610b49578063f3458f1414610b6f578063f429f19b14610b92576101fb565b8063b96b20041461097c578063baa796bd146109bc578063c4d66de814610a2a578063e4b50cb814610a50576101fb565b8063968eb4b2116100e9578063968eb4b21461084a578063ae9b71af14610852578063b1689d82146108c0578063b3eeb5e2146108c8576101fb565b806388a365f4146107985780638d5040cc146107ea5780638da5cb5b146108265780638f32d59b1461082e576101fb565b80636150864c1161019257806378a895671161016157806378a8956714610736578063805ef8121461073e5780638129fc1c1461076457806381ae1f5b1461076c576101fb565b80636150864c14610603578063668151a7146106c75780636d46a1db14610706578063715018a61461072c576101fb565b806340884c52116101ce57806340884c521461054e5780634f64b2be146105a657806359dc735c146105c35780635fd4b08a146105cb576101fb565b8063290f8f56146102005780632ea7791714610365578063332d6626146103885780633e18b01b146104d1575b600080fd5b610349600480360360a081101561021657600080fd5b8135916001600160a01b03602082013581169260408301359091169190810190608081016060820135600160201b81111561025057600080fd5b82018360208201111561026257600080fd5b803590602001918460018302840111600160201b8311171561028357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b8111156102d557600080fd5b8201836020820111156102e757600080fd5b803590602001918460018302840111600160201b8311171561030857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bb8945050505050565b604080516001600160a01b039092168252519081900360200190f35b6103496004803603604081101561037b57600080fd5b5080359060200135610ca7565b610349600480360360a081101561039e57600080fd5b8135916001600160a01b03602082013581169260408301359091169190810190608081016060820135600160201b8111156103d857600080fd5b8201836020820111156103ea57600080fd5b803590602001918460018302840111600160201b8311171561040b57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561045d57600080fd5b82018360208201111561046f57600080fd5b803590602001918460018302840111600160201b8311171561049057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610cd1945050505050565b6104d9610d4e565b6040805160208082528351818301528351919283929083019185019080838360005b838110156105135781810151838201526020016104fb565b50505050905090810190601f1680156105405780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610556610df9565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561059257818101518382015260200161057a565b505050509050019250505060405180910390f35b610349600480360360208110156105bc57600080fd5b5035610e72565b610349610e99565b6105f1600480360360208110156105e157600080fd5b50356001600160a01b0316610f42565b60408051918252519081900360200190f35b6103496004803603608081101561061957600080fd5b8135916001600160a01b03602082013581169260408301359091169190810190608081016060820135600160201b81111561065357600080fd5b82018360208201111561066557600080fd5b803590602001918460018302840111600160201b8311171561068657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610f60945050505050565b6106ed600480360360208110156106dd57600080fd5b50356001600160a01b0316610f78565b6040805192835260208301919091528051918290030190f35b6106ed6004803603602081101561071c57600080fd5b50356001600160a01b0316610f9d565b610734610fb6565b005b6105f161104a565b6107346004803603602081101561075457600080fd5b50356001600160a01b0316611050565b6107346110fd565b6103496004803603604081101561078257600080fd5b50803590602001356001600160a01b03166111aa565b610734600480360360e08110156107ae57600080fd5b506001600160a01b038135811691602081013591604082013591606081013591608082013581169160a081013582169160c0909101351661120f565b6103496004803603608081101561080057600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611558565b6103496116bc565b6108366116cb565b604080519115158252519081900360200190f35b6104d96116f1565b6107346004803603602081101561086857600080fd5b810190602081018135600160201b81111561088257600080fd5b82018360208201111561089457600080fd5b803590602001918460208302840111600160201b831117156108b557600080fd5b509092509050611766565b6104d96117c1565b610349600480360360408110156108de57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561090857600080fd5b82018360208201111561091a57600080fd5b803590602001918460018302840111600160201b8311171561093b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611836945050505050565b6109996004803603602081101561099257600080fd5b5035611997565b604080516001600160a01b03909316835260208301919091528051918290030190f35b610734600480360360208110156109d257600080fd5b810190602081018135600160201b8111156109ec57600080fd5b8201836020820111156109fe57600080fd5b803590602001918460018302840111600160201b83111715610a1f57600080fd5b509092509050611a74565b61073460048036036020811015610a4057600080fd5b50356001600160a01b0316611aca565b61034960048036036020811015610a6657600080fd5b5035611bbe565b61073460048036036020811015610a8357600080fd5b810190602081018135600160201b811115610a9d57600080fd5b820183602082011115610aaf57600080fd5b803590602001918460018302840111600160201b83111715610ad057600080fd5b509092509050611be8565b61073460048036036020811015610af157600080fd5b810190602081018135600160201b811115610b0b57600080fd5b820183602082011115610b1d57600080fd5b803590602001918460018302840111600160201b83111715610b3e57600080fd5b509092509050611c3e565b61073460048036036020811015610b5f57600080fd5b50356001600160a01b0316611c94565b61034960048036036040811015610b8557600080fd5b5080359060200135611ce7565b6105f160048036036020811015610ba857600080fd5b50356001600160a01b0316611dc9565b600080610c90878787873060405160200180868152602001856001600160a01b03166001600160a01b031660601b8152601401846001600160a01b03166001600160a01b031660601b815260140183805190602001908083835b60208310610c315780518252601f199092019160209182019101610c12565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b81526014019550505050505060405160208183030381529060405280519060200120611de4565b9050610c9c8184611e35565b979650505050505050565b60008281526070602090815260408083208484529091529020546001600160a01b03165b92915050565b600080610ce18787878787610bb8565b90506001600160a01b038116610d415760408051600160e51b62461bcd02815260206004820152601160248201527f496e76616c6964207369676e6174757265000000000000000000000000000000604482015290519081900360640190fd5b610c9c8787878785611f23565b6067546060906001600160a01b03163314610d6857600080fd5b6068805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610dee5780601f10610dc357610100808354040283529160200191610dee565b820191906000526020600020905b815481529060010190602001808311610dd157829003601f168201915b505050505090505b90565b6067546060906001600160a01b03163314610e1357600080fd5b606b805480602002602001604051908101604052809291908181526020018280548015610dee57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610e4b575050505050905090565b606e8181548110610e7f57fe5b6000918252602090912001546001600160a01b0316905081565b336000908152606d6020526040812054600160cb1b660acd2c286c2e6d021480610ede5750336000908152606d6020526040902054600160ca1b66159a58509bdb9902145b610f325760408051600160e51b62461bcd02815260206004820152601660248201527f47657420636c69656e74203a20464f5242494444454e00000000000000000000604482015290519081900360640190fd5b50606c546001600160a01b031690565b6001600160a01b03166000908152606d602052604090206001015490565b6000610f6f8585858533611f23565b95945050505050565b6001600160a01b0381166000908152606d60205260409020600181015490545b915091565b606d602052600090815260409020805460019091015482565b610fbe6116cb565b6110005760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6034546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603480546001600160a01b0319169055565b606e5490565b806110596116bc565b6001600160a01b0316816001600160a01b031663dbc4789a6040518163ffffffff1660e01b815260040160206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b50516001600160a01b0316146110da57600080fd5b50606c80546001600160a01b0319166001600160a01b0392909216919091179055565b600154610100900460ff16806111165750611116612057565b80611124575060015460ff16155b61116257604051600160e51b62461bcd02815260040180806020018281038252602e815260200180612cac602e913960400191505060405180910390fd5b600154610100900460ff1615801561118c576001805460ff1961ff00199091166101001716811790555b61119533611aca565b80156111a7576001805461ff00191690555b50565b6000806111b7848461205d565b600054604080516001600160f81b031960208083019190915230606090811b602184015260358301959095526055808301949094528251808303909401845260759091019091528151910120811b901c949350505050565b6112176116cb565b6112595760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b606780546001600160a01b0319166001600160a01b038516179055606086856112806116bc565b60408051602481019490945260448401929092526001600160a01b039081166064840152808716608484015280861660a4840152841660c4808401919091528151808403909101815260e490920190526020810180516001600160e01b0316600160e21b632274a71302179052905060006112fb8983611836565b905086600160e31b63086c2e6d02141561135757604080518981526020810189905281516001600160a01b038416927f49c2bdad6020b81dabafa7be5ba1d6b64dccc883841d724393e4a0242819bc34928290030190a26113ad565b86600160e21b63109bdb990214156113ad57604080518981526020810189905281516001600160a01b038416927fdaec82b39e03602f1e7b1c03805276c348a0b9c50d3e83d4ae136f2bbb74137f928290030190a25b86600160e31b63086c2e6d02141561148457604080518082018252600160cb1b660acd2c286c2e6d02815260208082018981526001600160a01b0385166000818152606d8452858120945185559151600194850155606e80548c8452606f855286842081905594850190557f9930d9ff0dee0ef5ca2f7710ea66b8f84dd0f5f5351ecffe72b952cd9db7142a90930180546001600160a01b031990811685179091557f725b1f02019c28ac763ea79e1ff934efc707f63e9b319f205fa7fd7c1ddb05d390925292909220805490921617905561154d565b86600160e21b63109bdb9902141561154d57604080518082018252600160ca1b66159a58509bdb9902815260208082018981526001600160a01b0385166000818152606d8452858120945185559151600194850155606e805494850190557f9930d9ff0dee0ef5ca2f7710ea66b8f84dd0f5f5351ecffe72b952cd9db7142a90930180546001600160a01b031990811685179091558a82527ff296d0245ee9f13beb062c173c79f5bf555e94b2a5108722d840fc530e4861819092529290922080549092161790555b505050505050505050565b336000908152606d6020526040812054600160ca1b66159a58509bdb99021461158057600080fd5b60408051602481018590526001600160a01b038616604482015233606482015260848082018590528251808303909101815260a49091019091526020810180516001600160e01b0316600160e01b63ef2397210217905260006115e38783611836565b60408051868152600160ca1b66159a58509bdb9902602082015281519293506001600160a01b038416927f59bcd02033e203f8af464062ce742d11a3358b7b8fd7e996b91d74bee929d7e5929181900390910190a26001600160a01b0381166000818152606d602052604081207f566961426f6e64546f6b656e00000000000000000000000000000000000000009055606e805460018101825591527f9930d9ff0dee0ef5ca2f7710ea66b8f84dd0f5f5351ecffe72b952cd9db7142a0180546001600160a01b03191690911790559695505050505050565b6034546001600160a01b031690565b6034546000906001600160a01b03166116e2612096565b6001600160a01b031614905090565b6067546060906001600160a01b0316331461170b57600080fd5b6069805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610dee5780601f10610dc357610100808354040283529160200191610dee565b61176e6116cb565b6117b05760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606b8383612197565b505050565b6067546060906001600160a01b031633146117db57600080fd5b606a805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610dee5780601f10610dc357610100808354040283529160200191610dee565b6000808360601b90506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f0604080516001600160a01b038316815290519194507efffc2da0b561cae30d9826d37709e9421c4725faebc226cbbb7ef5fc5e7349925081900360200190a1825115611990576000826001600160a01b0316846040518082805190602001908083835b602083106119195780518252601f1990920191602091820191016118fa565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461197b576040519150601f19603f3d011682016040523d82523d6000602084013e611980565b606091505b505090508061198e57600080fd5b505b5092915050565b6000818152606f6020526040812054606e8054839283928692606d9285929181106119be57fe5b600091825260209182902001546001600160a01b031682520152508015611a67576000848152606f6020526040902054606e805490919081106119fd57fe5b6000918252602080832090910154868352606f9091526040822054606e80546001600160a01b0390931693606d939092908110611a3657fe5b60009182526020808320909101546001600160a01b031683528201929092526040019020549093509150610f989050565b5060009150819050610f98565b611a7c6116cb565b611abe5760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606983836121fa565b600154610100900460ff1680611ae35750611ae3612057565b80611af1575060015460ff16155b611b2f57604051600160e51b62461bcd02815260040180806020018281038252602e815260200180612cac602e913960400191505060405180910390fd5b600154610100900460ff16158015611b59576001805460ff1961ff00199091166101001716811790555b603480546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015611bba576001805461ff00191690555b5050565b6000606e8281548110611bcd57fe5b6000918252602090912001546001600160a01b031692915050565b611bf06116cb565b611c325760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606883836121fa565b611c466116cb565b611c885760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606a83836121fa565b611c9c6116cb565b611cde5760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6111a78161209a565b600082606d6000606e606f60008881526020019081526020016000205481548110611d0e57fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902060010154148015611d8a575081606d6000606e606f60008881526020019081526020016000205481548110611d6357fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902054145b15610ccb576000838152606f6020526040902054606e80549091908110611dad57fe5b6000918252602090912001546001600160a01b03169050610ccb565b6001600160a01b03166000908152606d602052604090205490565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611e4857506000610ccb565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611e8e5760009350505050610ccb565b8060ff16601b14158015611ea657508060ff16601c14155b15611eb75760009350505050610ccb565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611f0e573d6000803e3d6000fd5b5050604051601f190151979650505050505050565b600080611f30878461213e565b604080516001600160a01b038316815290519192507efffc2da0b561cae30d9826d37709e9421c4725faebc226cbbb7ef5fc5e7349919081900360200190a1604051600160e01b63cf7a1d770281526001600160a01b038781166004830190815287821660248401526060604484019081528751606485015287519285169363cf7a1d77938b938b938b939192909160840190602085019080838360005b83811015611fe6578181015183820152602001611fce565b50505050905090810190601f1680156120135780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561203457600080fd5b505af1158015612048573d6000803e3d6000fd5b50929998505050505050505050565b303b1590565b604080516020808201949094526001600160a01b039290921660601b828201528051808303603401815260549092019052805191012090565b3390565b6001600160a01b0381166120e257604051600160e51b62461bcd028152600401808060200182810382526026815260200180612c666026913960400191505060405180910390fd5b6034546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603480546001600160a01b0319166001600160a01b0392909216919091179055565b60008060606040518060200161215390612274565b601f1982820381018352601f9091011660405290506000612174868661205d565b9050808251602084016000f59250823b61218d57600080fd5b5090949350505050565b8280548282559060005260206000209081019282156121ea579160200282015b828111156121ea5781546001600160a01b0319166001600160a01b038435161782556020909201916001909101906121b7565b506121f6929150612281565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061223b5782800160ff19823516178555612268565b82800160010185558215612268579182015b8281111561226857823582559160200191906001019061224d565b506121f69291506122a5565b6109a6806122c083390190565b610df691905b808211156121f65780546001600160a01b0319168155600101612287565b610df691905b808211156121f657600081556001016122ab56fe608060405234801561001057600080fd5b50610986806100206000396000f3fe6080604052600436106100705760003560e01c80638f2839701161004e5780638f2839701461015e578063cf7a1d7714610191578063d1f5789414610250578063f851a4401461030657610070565b80633659cfe61461007a5780634f1ef286146100ad5780635c60da1b1461012d575b61007861031b565b005b34801561008657600080fd5b506100786004803603602081101561009d57600080fd5b50356001600160a01b0316610335565b610078600480360360408110156100c357600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100ee57600080fd5b82018360208201111561010057600080fd5b8035906020019184600183028401116401000000008311171561012257600080fd5b50909250905061036f565b34801561013957600080fd5b5061014261041c565b604080516001600160a01b039092168252519081900360200190f35b34801561016a57600080fd5b506100786004803603602081101561018157600080fd5b50356001600160a01b0316610459565b610078600480360360608110156101a757600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156101db57600080fd5b8201836020820111156101ed57600080fd5b8035906020019184600183028401116401000000008311171561020f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610516945050505050565b6100786004803603604081101561026657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561029157600080fd5b8201836020820111156102a357600080fd5b803590602001918460018302840111640100000000831117156102c557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105a6945050505050565b34801561031257600080fd5b506101426106e6565b610323610711565b61033361032e610774565b610799565b565b61033d6107bd565b6001600160a01b0316336001600160a01b031614156103645761035f816107e2565b61036c565b61036c61031b565b50565b6103776107bd565b6001600160a01b0316336001600160a01b0316141561040f57610399836107e2565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b505090508061040957600080fd5b50610417565b61041761031b565b505050565b60006104266107bd565b6001600160a01b0316336001600160a01b0316141561044e57610447610774565b9050610456565b61045661031b565b90565b6104616107bd565b6001600160a01b0316336001600160a01b03161415610364576001600160a01b0381166104c257604051600160e51b62461bcd0281526004018080602001828103825260368152602001806108ea6036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104eb6107bd565b604080516001600160a01b03928316815291841660208301528051918290030190a161035f81610822565b6000610520610774565b6001600160a01b03161461053357600080fd5b61053d83826105a6565b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130190207fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61036000199091011461059d57fe5b61041782610822565b60006105b0610774565b6001600160a01b0316146105c357600080fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6000199091011461062357fe5b61062c82610846565b8051156106e2576000826001600160a01b0316826040518082805190602001908083835b6020831061066f5780518252601f199092019160209182019101610650565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146106cf576040519150601f19603f3d011682016040523d82523d6000602084013e6106d4565b606091505b505090508061041757600080fd5b5050565b60006106f06107bd565b6001600160a01b0316336001600160a01b0316141561044e576104476107bd565b6107196107bd565b6001600160a01b0316336001600160a01b0316141561076c57604051600160e51b62461bcd0281526004018080602001828103825260328152602001806108b86032913960400191505060405180910390fd5b610333610333565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e8080156107b8573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b6107eb81610846565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b61084f816108b1565b61088d57604051600160e51b62461bcd02815260040180806020018281038252603b815260200180610920603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b3b15159056fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a165627a7a72305820acd86240912c703ba88ccefef3db77e88d3507353c7c194b0b27eed571ae96c900294f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a165627a7a72305820b8573a0ea49b9fa15ff0b71cee26f7cc96d4f32ac441fbc3ad9022d45419af930029",
|
|
735
|
+
"metadata": "{\"compiler\":{\"version\":\"0.5.7+commit.6da8b019\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"name\":\"_salt\",\"type\":\"uint256\"},{\"name\":\"_logic\",\"type\":\"address\"},{\"name\":\"_admin\",\"type\":\"address\"},{\"name\":\"_data\",\"type\":\"bytes\"},{\"name\":\"_signature\",\"type\":\"bytes\"}],\"name\":\"getSigner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenType\",\"type\":\"bytes32\"},{\"name\":\"tokenName\",\"type\":\"bytes32\"}],\"name\":\"getIssuer\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_salt\",\"type\":\"uint256\"},{\"name\":\"_logic\",\"type\":\"address\"},{\"name\":\"_admin\",\"type\":\"address\"},{\"name\":\"_data\",\"type\":\"bytes\"},{\"name\":\"_signature\",\"type\":\"bytes\"}],\"name\":\"deploySigned\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getViaOracleUrl\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getOracles\",\"outputs\":[{\"name\":\"\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"tokens\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getClient\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"viaAddress\",\"type\":\"address\"}],\"name\":\"getName\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_salt\",\"type\":\"uint256\"},{\"name\":\"_logic\",\"type\":\"address\"},{\"name\":\"_admin\",\"type\":\"address\"},{\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"deploy\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"viaAddress\",\"type\":\"address\"}],\"name\":\"getNameAndType\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\"},{\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"token\",\"outputs\":[{\"name\":\"tokenType\",\"type\":\"bytes32\"},{\"name\":\"name\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getTokenCount\",\"outputs\":[{\"name\":\"tokenCount\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_client\",\"type\":\"address\"}],\"name\":\"setClientAddress\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"initialize\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_salt\",\"type\":\"uint256\"},{\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"getDeploymentAddress\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_target\",\"type\":\"address\"},{\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"name\":\"tokenType\",\"type\":\"bytes32\"},{\"name\":\"tokenCurrency\",\"type\":\"bytes32\"},{\"name\":\"_oracle\",\"type\":\"address\"},{\"name\":\"_token\",\"type\":\"address\"},{\"name\":\"_fee\",\"type\":\"address\"}],\"name\":\"createIssuer\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_target\",\"type\":\"address\"},{\"name\":\"issuer\",\"type\":\"address\"},{\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"name\":\"tokenSymbol\",\"type\":\"bytes32\"}],\"name\":\"createToken\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"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\":\"getFiatPayoutUrl\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_oracles\",\"type\":\"address[]\"}],\"name\":\"setOracles\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getCryptoDataUrl\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_logic\",\"type\":\"address\"},{\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"deployMinimal\",\"outputs\":[{\"name\":\"proxy\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenName\",\"type\":\"bytes32\"}],\"name\":\"getAddressAndType\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"},{\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_url\",\"type\":\"string\"}],\"name\":\"setFiatPayoutUrl\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"n\",\"type\":\"uint256\"}],\"name\":\"getToken\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_url\",\"type\":\"string\"}],\"name\":\"setViaOracleUrl\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_url\",\"type\":\"string\"}],\"name\":\"setCryptoDataURL\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"name\":\"tokenType\",\"type\":\"bytes32\"}],\"name\":\"getTokenByNameType\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"viaAddress\",\"type\":\"address\"}],\"name\":\"getType\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"issuer\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"bytes32\"}],\"name\":\"CashIssuerCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"issuer\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"bytes32\"}],\"name\":\"BondIssuerCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"tokenName\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"bytes32\"}],\"name\":\"TokenCreated\",\"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\":false,\"name\":\"proxy\",\"type\":\"address\"}],\"name\":\"ProxyCreated\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{\"initialize(address)\":{\"details\":\"Initializes the contract setting the deployer as the initial owner.\"},\"isOwner()\":{\"details\":\"Returns true if the caller is the current owner.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. * > Note: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Factory.sol\":\"Factory\"},\"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/ownership/Ownable.sol\":{\"keccak256\":\"0xd7e8ab76fa35c4d8d35a06a6ed538cadab8b75a1aa00594ced1568b2c0cadde3\",\"urls\":[\"bzzr://b4c855b32d75f2a4969bfbd530b6934b69f12f28584b3746967e1ca64e024bd9\"]},\"@openzeppelin/upgrades/contracts/Initializable.sol\":{\"keccak256\":\"0x9bfec92e36234ecc99b5d37230acb6cd1f99560233753162204104a4897e8721\",\"urls\":[\"bzzr://f75d88b16fe25a9e19b3512691c496e2bb6d8451bc9a636196c4e17ca9b40201\"]},\"@openzeppelin/upgrades/contracts/cryptography/ECDSA.sol\":{\"keccak256\":\"0x0ca3de3dc8aac4114ff0b123fcabef91901de1a30938f3e954846ad99909b972\",\"urls\":[\"bzzr://7905b8ce67a4d4b0744f0f08abb7c4ec1762b18ee39ee7d64fc73beb0da0db19\"]},\"@openzeppelin/upgrades/contracts/upgradeability/BaseAdminUpgradeabilityProxy.sol\":{\"keccak256\":\"0xbf8ee1cf63a430a3eb8b39a9145d0d133400b8db06fa9fd33056597f7d8ceb25\",\"urls\":[\"bzzr://f9563fda28096fae1396dce1f6eb5f5afc664677887071076b7e4b0e6d06bd56\"]},\"@openzeppelin/upgrades/contracts/upgradeability/BaseUpgradeabilityProxy.sol\":{\"keccak256\":\"0x1b37f808dc0a45976ad23aa53908c485a74a4d9fbd03066a5ab399c46436e570\",\"urls\":[\"bzzr://c309686ae393a7474d0af3a7237b5ef3c452d9f78756d40caeeaad4caf2c2efb\"]},\"@openzeppelin/upgrades/contracts/upgradeability/InitializableAdminUpgradeabilityProxy.sol\":{\"keccak256\":\"0x91f2b663c89b940dce6dbd00f5e7bf326cdf02d1da4ddbcb7e64b313e60d9afc\",\"urls\":[\"bzzr://572ab82efb4e71dbb88e992eedc363f72290eb2fdc1081023e66680d2a69ef07\"]},\"@openzeppelin/upgrades/contracts/upgradeability/InitializableUpgradeabilityProxy.sol\":{\"keccak256\":\"0x6b84a0236a899ba5aa673ea34d5efa1f93dba461e13d8799f51a9f7b64b59f4f\",\"urls\":[\"bzzr://bc421cdd1f5c8313a0eaf237c9110d187674955d3eacbc187bddeda82a664053\"]},\"@openzeppelin/upgrades/contracts/upgradeability/Proxy.sol\":{\"keccak256\":\"0xd8074ae5fa7ee6384ca8196a896612fb044bbf4ff4b7336d03cd97845000ac21\",\"urls\":[\"bzzr://a94275c7d409e80fa5cf6f31c8a6b97cf85c231de40585d42ae98bab426562c6\"]},\"@openzeppelin/upgrades/contracts/upgradeability/ProxyFactory.sol\":{\"keccak256\":\"0xf4932759c88b26dd0b37a7ba960c44f7a4e817127846befb4b4fb72ee8f2c573\",\"urls\":[\"bzzr://6b7fb7e0bdbbbcbf9cbd110fc19a23bfa4eeb583c767b66614124f34f2135b42\"]},\"@openzeppelin/upgrades/contracts/upgradeability/UpgradeabilityProxy.sol\":{\"keccak256\":\"0xb02c6349ba01df9902857b6058f92b37f13187775cce9da74f6f28410205445b\",\"urls\":[\"bzzr://2a95f00787c16351caad43b25048cc40eff9f140c4b1284fbf502dfd9b708489\"]},\"@openzeppelin/upgrades/contracts/utils/Address.sol\":{\"keccak256\":\"0x7be7f8e4c08bc70ff9815e3f11c569f42aa3c447b5bc61fd75fb5cec97f63a9f\",\"urls\":[\"bzzr://b6a2c355fa7aadb6c25e8691e98abc26d3429afa58eb761af4ab5377eee30709\"]},\"abdk-libraries-solidity/ABDKMathQuad.sol\":{\"keccak256\":\"0xf75c2b34d9924cc413521db48a168b00ed321e678e70f5048a50c1140994dcf2\",\"urls\":[\"bzzr://0bdb29f3216c419e91defe1801f146cb40bb9551c8cd708ffb59f1e298e205ce\"]},\"project:/contracts/Factory.sol\":{\"keccak256\":\"0x8d6a0bd7cc9d410ec444cc9595802870fbbba8b133467356f44d290c7d4c5921\",\"urls\":[\"bzzr://644307414e5563652a6141f8df2206f57e2fd711d716d73bdb043dbef96cd875\"]},\"project:/contracts/interfaces/VerifiedClient.sol\":{\"keccak256\":\"0xbdfb6846d7679a8a1b8984a5262f5d5ae072c319bb951692c0ba19943164fd0a\",\"urls\":[\"bzzr://c86aa25338531c43af3f9fc04d171b6ee721b6522346d42c7b593366e512f482\"]},\"project:/contracts/interfaces/ViaFactory.sol\":{\"keccak256\":\"0x61364e0e62edba9e4db776f09b320ed7147e2049f91bdf0ade6666818aa82e59\",\"urls\":[\"bzzr://c4e228128c76aa00ea50de421dc1f0b9660ae843c6d88f8bfdf6cddd237608d1\"]},\"project:/contracts/interfaces/ViaToken.sol\":{\"keccak256\":\"0x198aefe12635d1b1cb74c29009ac4224bf4d9730aa1bc2a4c046adb17a56df05\",\"urls\":[\"bzzr://01983fbb85404dd25534b379278927611ca57d4b1862d902fb15c3388d10d4ae\"]}},\"version\":1}",
|
|
736
|
+
"bytecode": "0x6080604081905261001060a0610034565b601f1982820381018352601f90910116604052805160209190910120600055610041565b6109a680612d5583390190565b612d05806100506000396000f3fe608060405234801561001057600080fd5b50600436106101fb5760003560e01c806388a365f41161011a578063b96b2004116100ad578063edf6a8ac1161007c578063edf6a8ac14610a6d578063eed3b40c14610adb578063f2fde38b14610b49578063f3458f1414610b6f578063f429f19b14610b92576101fb565b8063b96b20041461097c578063baa796bd146109bc578063c4d66de814610a2a578063e4b50cb814610a50576101fb565b8063968eb4b2116100e9578063968eb4b21461084a578063ae9b71af14610852578063b1689d82146108c0578063b3eeb5e2146108c8576101fb565b806388a365f4146107985780638d5040cc146107ea5780638da5cb5b146108265780638f32d59b1461082e576101fb565b80636150864c1161019257806378a895671161016157806378a8956714610736578063805ef8121461073e5780638129fc1c1461076457806381ae1f5b1461076c576101fb565b80636150864c14610603578063668151a7146106c75780636d46a1db14610706578063715018a61461072c576101fb565b806340884c52116101ce57806340884c521461054e5780634f64b2be146105a657806359dc735c146105c35780635fd4b08a146105cb576101fb565b8063290f8f56146102005780632ea7791714610365578063332d6626146103885780633e18b01b146104d1575b600080fd5b610349600480360360a081101561021657600080fd5b8135916001600160a01b03602082013581169260408301359091169190810190608081016060820135600160201b81111561025057600080fd5b82018360208201111561026257600080fd5b803590602001918460018302840111600160201b8311171561028357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b8111156102d557600080fd5b8201836020820111156102e757600080fd5b803590602001918460018302840111600160201b8311171561030857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bb8945050505050565b604080516001600160a01b039092168252519081900360200190f35b6103496004803603604081101561037b57600080fd5b5080359060200135610ca7565b610349600480360360a081101561039e57600080fd5b8135916001600160a01b03602082013581169260408301359091169190810190608081016060820135600160201b8111156103d857600080fd5b8201836020820111156103ea57600080fd5b803590602001918460018302840111600160201b8311171561040b57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561045d57600080fd5b82018360208201111561046f57600080fd5b803590602001918460018302840111600160201b8311171561049057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610cd1945050505050565b6104d9610d4e565b6040805160208082528351818301528351919283929083019185019080838360005b838110156105135781810151838201526020016104fb565b50505050905090810190601f1680156105405780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610556610df9565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561059257818101518382015260200161057a565b505050509050019250505060405180910390f35b610349600480360360208110156105bc57600080fd5b5035610e72565b610349610e99565b6105f1600480360360208110156105e157600080fd5b50356001600160a01b0316610f42565b60408051918252519081900360200190f35b6103496004803603608081101561061957600080fd5b8135916001600160a01b03602082013581169260408301359091169190810190608081016060820135600160201b81111561065357600080fd5b82018360208201111561066557600080fd5b803590602001918460018302840111600160201b8311171561068657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610f60945050505050565b6106ed600480360360208110156106dd57600080fd5b50356001600160a01b0316610f78565b6040805192835260208301919091528051918290030190f35b6106ed6004803603602081101561071c57600080fd5b50356001600160a01b0316610f9d565b610734610fb6565b005b6105f161104a565b6107346004803603602081101561075457600080fd5b50356001600160a01b0316611050565b6107346110fd565b6103496004803603604081101561078257600080fd5b50803590602001356001600160a01b03166111aa565b610734600480360360e08110156107ae57600080fd5b506001600160a01b038135811691602081013591604082013591606081013591608082013581169160a081013582169160c0909101351661120f565b6103496004803603608081101561080057600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611558565b6103496116bc565b6108366116cb565b604080519115158252519081900360200190f35b6104d96116f1565b6107346004803603602081101561086857600080fd5b810190602081018135600160201b81111561088257600080fd5b82018360208201111561089457600080fd5b803590602001918460208302840111600160201b831117156108b557600080fd5b509092509050611766565b6104d96117c1565b610349600480360360408110156108de57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561090857600080fd5b82018360208201111561091a57600080fd5b803590602001918460018302840111600160201b8311171561093b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611836945050505050565b6109996004803603602081101561099257600080fd5b5035611997565b604080516001600160a01b03909316835260208301919091528051918290030190f35b610734600480360360208110156109d257600080fd5b810190602081018135600160201b8111156109ec57600080fd5b8201836020820111156109fe57600080fd5b803590602001918460018302840111600160201b83111715610a1f57600080fd5b509092509050611a74565b61073460048036036020811015610a4057600080fd5b50356001600160a01b0316611aca565b61034960048036036020811015610a6657600080fd5b5035611bbe565b61073460048036036020811015610a8357600080fd5b810190602081018135600160201b811115610a9d57600080fd5b820183602082011115610aaf57600080fd5b803590602001918460018302840111600160201b83111715610ad057600080fd5b509092509050611be8565b61073460048036036020811015610af157600080fd5b810190602081018135600160201b811115610b0b57600080fd5b820183602082011115610b1d57600080fd5b803590602001918460018302840111600160201b83111715610b3e57600080fd5b509092509050611c3e565b61073460048036036020811015610b5f57600080fd5b50356001600160a01b0316611c94565b61034960048036036040811015610b8557600080fd5b5080359060200135611ce7565b6105f160048036036020811015610ba857600080fd5b50356001600160a01b0316611dc9565b600080610c90878787873060405160200180868152602001856001600160a01b03166001600160a01b031660601b8152601401846001600160a01b03166001600160a01b031660601b815260140183805190602001908083835b60208310610c315780518252601f199092019160209182019101610c12565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b81526014019550505050505060405160208183030381529060405280519060200120611de4565b9050610c9c8184611e35565b979650505050505050565b60008281526070602090815260408083208484529091529020546001600160a01b03165b92915050565b600080610ce18787878787610bb8565b90506001600160a01b038116610d415760408051600160e51b62461bcd02815260206004820152601160248201527f496e76616c6964207369676e6174757265000000000000000000000000000000604482015290519081900360640190fd5b610c9c8787878785611f23565b6067546060906001600160a01b03163314610d6857600080fd5b6068805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610dee5780601f10610dc357610100808354040283529160200191610dee565b820191906000526020600020905b815481529060010190602001808311610dd157829003601f168201915b505050505090505b90565b6067546060906001600160a01b03163314610e1357600080fd5b606b805480602002602001604051908101604052809291908181526020018280548015610dee57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610e4b575050505050905090565b606e8181548110610e7f57fe5b6000918252602090912001546001600160a01b0316905081565b336000908152606d6020526040812054600160cb1b660acd2c286c2e6d021480610ede5750336000908152606d6020526040902054600160ca1b66159a58509bdb9902145b610f325760408051600160e51b62461bcd02815260206004820152601660248201527f47657420636c69656e74203a20464f5242494444454e00000000000000000000604482015290519081900360640190fd5b50606c546001600160a01b031690565b6001600160a01b03166000908152606d602052604090206001015490565b6000610f6f8585858533611f23565b95945050505050565b6001600160a01b0381166000908152606d60205260409020600181015490545b915091565b606d602052600090815260409020805460019091015482565b610fbe6116cb565b6110005760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6034546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603480546001600160a01b0319169055565b606e5490565b806110596116bc565b6001600160a01b0316816001600160a01b031663dbc4789a6040518163ffffffff1660e01b815260040160206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b50516001600160a01b0316146110da57600080fd5b50606c80546001600160a01b0319166001600160a01b0392909216919091179055565b600154610100900460ff16806111165750611116612057565b80611124575060015460ff16155b61116257604051600160e51b62461bcd02815260040180806020018281038252602e815260200180612cac602e913960400191505060405180910390fd5b600154610100900460ff1615801561118c576001805460ff1961ff00199091166101001716811790555b61119533611aca565b80156111a7576001805461ff00191690555b50565b6000806111b7848461205d565b600054604080516001600160f81b031960208083019190915230606090811b602184015260358301959095526055808301949094528251808303909401845260759091019091528151910120811b901c949350505050565b6112176116cb565b6112595760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b606780546001600160a01b0319166001600160a01b038516179055606086856112806116bc565b60408051602481019490945260448401929092526001600160a01b039081166064840152808716608484015280861660a4840152841660c4808401919091528151808403909101815260e490920190526020810180516001600160e01b0316600160e21b632274a71302179052905060006112fb8983611836565b905086600160e31b63086c2e6d02141561135757604080518981526020810189905281516001600160a01b038416927f49c2bdad6020b81dabafa7be5ba1d6b64dccc883841d724393e4a0242819bc34928290030190a26113ad565b86600160e21b63109bdb990214156113ad57604080518981526020810189905281516001600160a01b038416927fdaec82b39e03602f1e7b1c03805276c348a0b9c50d3e83d4ae136f2bbb74137f928290030190a25b86600160e31b63086c2e6d02141561148457604080518082018252600160cb1b660acd2c286c2e6d02815260208082018981526001600160a01b0385166000818152606d8452858120945185559151600194850155606e80548c8452606f855286842081905594850190557f9930d9ff0dee0ef5ca2f7710ea66b8f84dd0f5f5351ecffe72b952cd9db7142a90930180546001600160a01b031990811685179091557f725b1f02019c28ac763ea79e1ff934efc707f63e9b319f205fa7fd7c1ddb05d390925292909220805490921617905561154d565b86600160e21b63109bdb9902141561154d57604080518082018252600160ca1b66159a58509bdb9902815260208082018981526001600160a01b0385166000818152606d8452858120945185559151600194850155606e805494850190557f9930d9ff0dee0ef5ca2f7710ea66b8f84dd0f5f5351ecffe72b952cd9db7142a90930180546001600160a01b031990811685179091558a82527ff296d0245ee9f13beb062c173c79f5bf555e94b2a5108722d840fc530e4861819092529290922080549092161790555b505050505050505050565b336000908152606d6020526040812054600160ca1b66159a58509bdb99021461158057600080fd5b60408051602481018590526001600160a01b038616604482015233606482015260848082018590528251808303909101815260a49091019091526020810180516001600160e01b0316600160e01b63ef2397210217905260006115e38783611836565b60408051868152600160ca1b66159a58509bdb9902602082015281519293506001600160a01b038416927f59bcd02033e203f8af464062ce742d11a3358b7b8fd7e996b91d74bee929d7e5929181900390910190a26001600160a01b0381166000818152606d602052604081207f566961426f6e64546f6b656e00000000000000000000000000000000000000009055606e805460018101825591527f9930d9ff0dee0ef5ca2f7710ea66b8f84dd0f5f5351ecffe72b952cd9db7142a0180546001600160a01b03191690911790559695505050505050565b6034546001600160a01b031690565b6034546000906001600160a01b03166116e2612096565b6001600160a01b031614905090565b6067546060906001600160a01b0316331461170b57600080fd5b6069805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610dee5780601f10610dc357610100808354040283529160200191610dee565b61176e6116cb565b6117b05760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606b8383612197565b505050565b6067546060906001600160a01b031633146117db57600080fd5b606a805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610dee5780601f10610dc357610100808354040283529160200191610dee565b6000808360601b90506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f0604080516001600160a01b038316815290519194507efffc2da0b561cae30d9826d37709e9421c4725faebc226cbbb7ef5fc5e7349925081900360200190a1825115611990576000826001600160a01b0316846040518082805190602001908083835b602083106119195780518252601f1990920191602091820191016118fa565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461197b576040519150601f19603f3d011682016040523d82523d6000602084013e611980565b606091505b505090508061198e57600080fd5b505b5092915050565b6000818152606f6020526040812054606e8054839283928692606d9285929181106119be57fe5b600091825260209182902001546001600160a01b031682520152508015611a67576000848152606f6020526040902054606e805490919081106119fd57fe5b6000918252602080832090910154868352606f9091526040822054606e80546001600160a01b0390931693606d939092908110611a3657fe5b60009182526020808320909101546001600160a01b031683528201929092526040019020549093509150610f989050565b5060009150819050610f98565b611a7c6116cb565b611abe5760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606983836121fa565b600154610100900460ff1680611ae35750611ae3612057565b80611af1575060015460ff16155b611b2f57604051600160e51b62461bcd02815260040180806020018281038252602e815260200180612cac602e913960400191505060405180910390fd5b600154610100900460ff16158015611b59576001805460ff1961ff00199091166101001716811790555b603480546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015611bba576001805461ff00191690555b5050565b6000606e8281548110611bcd57fe5b6000918252602090912001546001600160a01b031692915050565b611bf06116cb565b611c325760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606883836121fa565b611c466116cb565b611c885760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606a83836121fa565b611c9c6116cb565b611cde5760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6111a78161209a565b600082606d6000606e606f60008881526020019081526020016000205481548110611d0e57fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902060010154148015611d8a575081606d6000606e606f60008881526020019081526020016000205481548110611d6357fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902054145b15610ccb576000838152606f6020526040902054606e80549091908110611dad57fe5b6000918252602090912001546001600160a01b03169050610ccb565b6001600160a01b03166000908152606d602052604090205490565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611e4857506000610ccb565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611e8e5760009350505050610ccb565b8060ff16601b14158015611ea657508060ff16601c14155b15611eb75760009350505050610ccb565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611f0e573d6000803e3d6000fd5b5050604051601f190151979650505050505050565b600080611f30878461213e565b604080516001600160a01b038316815290519192507efffc2da0b561cae30d9826d37709e9421c4725faebc226cbbb7ef5fc5e7349919081900360200190a1604051600160e01b63cf7a1d770281526001600160a01b038781166004830190815287821660248401526060604484019081528751606485015287519285169363cf7a1d77938b938b938b939192909160840190602085019080838360005b83811015611fe6578181015183820152602001611fce565b50505050905090810190601f1680156120135780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561203457600080fd5b505af1158015612048573d6000803e3d6000fd5b50929998505050505050505050565b303b1590565b604080516020808201949094526001600160a01b039290921660601b828201528051808303603401815260549092019052805191012090565b3390565b6001600160a01b0381166120e257604051600160e51b62461bcd028152600401808060200182810382526026815260200180612c666026913960400191505060405180910390fd5b6034546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603480546001600160a01b0319166001600160a01b0392909216919091179055565b60008060606040518060200161215390612274565b601f1982820381018352601f9091011660405290506000612174868661205d565b9050808251602084016000f59250823b61218d57600080fd5b5090949350505050565b8280548282559060005260206000209081019282156121ea579160200282015b828111156121ea5781546001600160a01b0319166001600160a01b038435161782556020909201916001909101906121b7565b506121f6929150612281565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061223b5782800160ff19823516178555612268565b82800160010185558215612268579182015b8281111561226857823582559160200191906001019061224d565b506121f69291506122a5565b6109a6806122c083390190565b610df691905b808211156121f65780546001600160a01b0319168155600101612287565b610df691905b808211156121f657600081556001016122ab56fe608060405234801561001057600080fd5b50610986806100206000396000f3fe6080604052600436106100705760003560e01c80638f2839701161004e5780638f2839701461015e578063cf7a1d7714610191578063d1f5789414610250578063f851a4401461030657610070565b80633659cfe61461007a5780634f1ef286146100ad5780635c60da1b1461012d575b61007861031b565b005b34801561008657600080fd5b506100786004803603602081101561009d57600080fd5b50356001600160a01b0316610335565b610078600480360360408110156100c357600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100ee57600080fd5b82018360208201111561010057600080fd5b8035906020019184600183028401116401000000008311171561012257600080fd5b50909250905061036f565b34801561013957600080fd5b5061014261041c565b604080516001600160a01b039092168252519081900360200190f35b34801561016a57600080fd5b506100786004803603602081101561018157600080fd5b50356001600160a01b0316610459565b610078600480360360608110156101a757600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156101db57600080fd5b8201836020820111156101ed57600080fd5b8035906020019184600183028401116401000000008311171561020f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610516945050505050565b6100786004803603604081101561026657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561029157600080fd5b8201836020820111156102a357600080fd5b803590602001918460018302840111640100000000831117156102c557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105a6945050505050565b34801561031257600080fd5b506101426106e6565b610323610711565b61033361032e610774565b610799565b565b61033d6107bd565b6001600160a01b0316336001600160a01b031614156103645761035f816107e2565b61036c565b61036c61031b565b50565b6103776107bd565b6001600160a01b0316336001600160a01b0316141561040f57610399836107e2565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b505090508061040957600080fd5b50610417565b61041761031b565b505050565b60006104266107bd565b6001600160a01b0316336001600160a01b0316141561044e57610447610774565b9050610456565b61045661031b565b90565b6104616107bd565b6001600160a01b0316336001600160a01b03161415610364576001600160a01b0381166104c257604051600160e51b62461bcd0281526004018080602001828103825260368152602001806108ea6036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104eb6107bd565b604080516001600160a01b03928316815291841660208301528051918290030190a161035f81610822565b6000610520610774565b6001600160a01b03161461053357600080fd5b61053d83826105a6565b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130190207fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61036000199091011461059d57fe5b61041782610822565b60006105b0610774565b6001600160a01b0316146105c357600080fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6000199091011461062357fe5b61062c82610846565b8051156106e2576000826001600160a01b0316826040518082805190602001908083835b6020831061066f5780518252601f199092019160209182019101610650565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146106cf576040519150601f19603f3d011682016040523d82523d6000602084013e6106d4565b606091505b505090508061041757600080fd5b5050565b60006106f06107bd565b6001600160a01b0316336001600160a01b0316141561044e576104476107bd565b6107196107bd565b6001600160a01b0316336001600160a01b0316141561076c57604051600160e51b62461bcd0281526004018080602001828103825260328152602001806108b86032913960400191505060405180910390fd5b610333610333565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e8080156107b8573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b6107eb81610846565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b61084f816108b1565b61088d57604051600160e51b62461bcd02815260040180806020018281038252603b815260200180610920603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b3b15159056fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a165627a7a72305820acd86240912c703ba88ccefef3db77e88d3507353c7c194b0b27eed571ae96c900294f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a165627a7a72305820ae157202957e3b3210054291b68b62d177212e108b275e00073ebd9c11c825450029608060405234801561001057600080fd5b50610986806100206000396000f3fe6080604052600436106100705760003560e01c80638f2839701161004e5780638f2839701461015e578063cf7a1d7714610191578063d1f5789414610250578063f851a4401461030657610070565b80633659cfe61461007a5780634f1ef286146100ad5780635c60da1b1461012d575b61007861031b565b005b34801561008657600080fd5b506100786004803603602081101561009d57600080fd5b50356001600160a01b0316610335565b610078600480360360408110156100c357600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100ee57600080fd5b82018360208201111561010057600080fd5b8035906020019184600183028401116401000000008311171561012257600080fd5b50909250905061036f565b34801561013957600080fd5b5061014261041c565b604080516001600160a01b039092168252519081900360200190f35b34801561016a57600080fd5b506100786004803603602081101561018157600080fd5b50356001600160a01b0316610459565b610078600480360360608110156101a757600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156101db57600080fd5b8201836020820111156101ed57600080fd5b8035906020019184600183028401116401000000008311171561020f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610516945050505050565b6100786004803603604081101561026657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561029157600080fd5b8201836020820111156102a357600080fd5b803590602001918460018302840111640100000000831117156102c557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105a6945050505050565b34801561031257600080fd5b506101426106e6565b610323610711565b61033361032e610774565b610799565b565b61033d6107bd565b6001600160a01b0316336001600160a01b031614156103645761035f816107e2565b61036c565b61036c61031b565b50565b6103776107bd565b6001600160a01b0316336001600160a01b0316141561040f57610399836107e2565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b505090508061040957600080fd5b50610417565b61041761031b565b505050565b60006104266107bd565b6001600160a01b0316336001600160a01b0316141561044e57610447610774565b9050610456565b61045661031b565b90565b6104616107bd565b6001600160a01b0316336001600160a01b03161415610364576001600160a01b0381166104c257604051600160e51b62461bcd0281526004018080602001828103825260368152602001806108ea6036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104eb6107bd565b604080516001600160a01b03928316815291841660208301528051918290030190a161035f81610822565b6000610520610774565b6001600160a01b03161461053357600080fd5b61053d83826105a6565b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130190207fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61036000199091011461059d57fe5b61041782610822565b60006105b0610774565b6001600160a01b0316146105c357600080fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6000199091011461062357fe5b61062c82610846565b8051156106e2576000826001600160a01b0316826040518082805190602001908083835b6020831061066f5780518252601f199092019160209182019101610650565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146106cf576040519150601f19603f3d011682016040523d82523d6000602084013e6106d4565b606091505b505090508061041757600080fd5b5050565b60006106f06107bd565b6001600160a01b0316336001600160a01b0316141561044e576104476107bd565b6107196107bd565b6001600160a01b0316336001600160a01b0316141561076c57604051600160e51b62461bcd0281526004018080602001828103825260328152602001806108b86032913960400191505060405180910390fd5b610333610333565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e8080156107b8573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b6107eb81610846565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b61084f816108b1565b61088d57604051600160e51b62461bcd02815260040180806020018281038252603b815260200180610920603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b3b15159056fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a165627a7a72305820acd86240912c703ba88ccefef3db77e88d3507353c7c194b0b27eed571ae96c90029",
|
|
737
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101fb5760003560e01c806388a365f41161011a578063b96b2004116100ad578063edf6a8ac1161007c578063edf6a8ac14610a6d578063eed3b40c14610adb578063f2fde38b14610b49578063f3458f1414610b6f578063f429f19b14610b92576101fb565b8063b96b20041461097c578063baa796bd146109bc578063c4d66de814610a2a578063e4b50cb814610a50576101fb565b8063968eb4b2116100e9578063968eb4b21461084a578063ae9b71af14610852578063b1689d82146108c0578063b3eeb5e2146108c8576101fb565b806388a365f4146107985780638d5040cc146107ea5780638da5cb5b146108265780638f32d59b1461082e576101fb565b80636150864c1161019257806378a895671161016157806378a8956714610736578063805ef8121461073e5780638129fc1c1461076457806381ae1f5b1461076c576101fb565b80636150864c14610603578063668151a7146106c75780636d46a1db14610706578063715018a61461072c576101fb565b806340884c52116101ce57806340884c521461054e5780634f64b2be146105a657806359dc735c146105c35780635fd4b08a146105cb576101fb565b8063290f8f56146102005780632ea7791714610365578063332d6626146103885780633e18b01b146104d1575b600080fd5b610349600480360360a081101561021657600080fd5b8135916001600160a01b03602082013581169260408301359091169190810190608081016060820135600160201b81111561025057600080fd5b82018360208201111561026257600080fd5b803590602001918460018302840111600160201b8311171561028357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b8111156102d557600080fd5b8201836020820111156102e757600080fd5b803590602001918460018302840111600160201b8311171561030857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bb8945050505050565b604080516001600160a01b039092168252519081900360200190f35b6103496004803603604081101561037b57600080fd5b5080359060200135610ca7565b610349600480360360a081101561039e57600080fd5b8135916001600160a01b03602082013581169260408301359091169190810190608081016060820135600160201b8111156103d857600080fd5b8201836020820111156103ea57600080fd5b803590602001918460018302840111600160201b8311171561040b57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561045d57600080fd5b82018360208201111561046f57600080fd5b803590602001918460018302840111600160201b8311171561049057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610cd1945050505050565b6104d9610d4e565b6040805160208082528351818301528351919283929083019185019080838360005b838110156105135781810151838201526020016104fb565b50505050905090810190601f1680156105405780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610556610df9565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561059257818101518382015260200161057a565b505050509050019250505060405180910390f35b610349600480360360208110156105bc57600080fd5b5035610e72565b610349610e99565b6105f1600480360360208110156105e157600080fd5b50356001600160a01b0316610f42565b60408051918252519081900360200190f35b6103496004803603608081101561061957600080fd5b8135916001600160a01b03602082013581169260408301359091169190810190608081016060820135600160201b81111561065357600080fd5b82018360208201111561066557600080fd5b803590602001918460018302840111600160201b8311171561068657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610f60945050505050565b6106ed600480360360208110156106dd57600080fd5b50356001600160a01b0316610f78565b6040805192835260208301919091528051918290030190f35b6106ed6004803603602081101561071c57600080fd5b50356001600160a01b0316610f9d565b610734610fb6565b005b6105f161104a565b6107346004803603602081101561075457600080fd5b50356001600160a01b0316611050565b6107346110fd565b6103496004803603604081101561078257600080fd5b50803590602001356001600160a01b03166111aa565b610734600480360360e08110156107ae57600080fd5b506001600160a01b038135811691602081013591604082013591606081013591608082013581169160a081013582169160c0909101351661120f565b6103496004803603608081101561080057600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611558565b6103496116bc565b6108366116cb565b604080519115158252519081900360200190f35b6104d96116f1565b6107346004803603602081101561086857600080fd5b810190602081018135600160201b81111561088257600080fd5b82018360208201111561089457600080fd5b803590602001918460208302840111600160201b831117156108b557600080fd5b509092509050611766565b6104d96117c1565b610349600480360360408110156108de57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561090857600080fd5b82018360208201111561091a57600080fd5b803590602001918460018302840111600160201b8311171561093b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611836945050505050565b6109996004803603602081101561099257600080fd5b5035611997565b604080516001600160a01b03909316835260208301919091528051918290030190f35b610734600480360360208110156109d257600080fd5b810190602081018135600160201b8111156109ec57600080fd5b8201836020820111156109fe57600080fd5b803590602001918460018302840111600160201b83111715610a1f57600080fd5b509092509050611a74565b61073460048036036020811015610a4057600080fd5b50356001600160a01b0316611aca565b61034960048036036020811015610a6657600080fd5b5035611bbe565b61073460048036036020811015610a8357600080fd5b810190602081018135600160201b811115610a9d57600080fd5b820183602082011115610aaf57600080fd5b803590602001918460018302840111600160201b83111715610ad057600080fd5b509092509050611be8565b61073460048036036020811015610af157600080fd5b810190602081018135600160201b811115610b0b57600080fd5b820183602082011115610b1d57600080fd5b803590602001918460018302840111600160201b83111715610b3e57600080fd5b509092509050611c3e565b61073460048036036020811015610b5f57600080fd5b50356001600160a01b0316611c94565b61034960048036036040811015610b8557600080fd5b5080359060200135611ce7565b6105f160048036036020811015610ba857600080fd5b50356001600160a01b0316611dc9565b600080610c90878787873060405160200180868152602001856001600160a01b03166001600160a01b031660601b8152601401846001600160a01b03166001600160a01b031660601b815260140183805190602001908083835b60208310610c315780518252601f199092019160209182019101610c12565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b81526014019550505050505060405160208183030381529060405280519060200120611de4565b9050610c9c8184611e35565b979650505050505050565b60008281526070602090815260408083208484529091529020546001600160a01b03165b92915050565b600080610ce18787878787610bb8565b90506001600160a01b038116610d415760408051600160e51b62461bcd02815260206004820152601160248201527f496e76616c6964207369676e6174757265000000000000000000000000000000604482015290519081900360640190fd5b610c9c8787878785611f23565b6067546060906001600160a01b03163314610d6857600080fd5b6068805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610dee5780601f10610dc357610100808354040283529160200191610dee565b820191906000526020600020905b815481529060010190602001808311610dd157829003601f168201915b505050505090505b90565b6067546060906001600160a01b03163314610e1357600080fd5b606b805480602002602001604051908101604052809291908181526020018280548015610dee57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610e4b575050505050905090565b606e8181548110610e7f57fe5b6000918252602090912001546001600160a01b0316905081565b336000908152606d6020526040812054600160cb1b660acd2c286c2e6d021480610ede5750336000908152606d6020526040902054600160ca1b66159a58509bdb9902145b610f325760408051600160e51b62461bcd02815260206004820152601660248201527f47657420636c69656e74203a20464f5242494444454e00000000000000000000604482015290519081900360640190fd5b50606c546001600160a01b031690565b6001600160a01b03166000908152606d602052604090206001015490565b6000610f6f8585858533611f23565b95945050505050565b6001600160a01b0381166000908152606d60205260409020600181015490545b915091565b606d602052600090815260409020805460019091015482565b610fbe6116cb565b6110005760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6034546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603480546001600160a01b0319169055565b606e5490565b806110596116bc565b6001600160a01b0316816001600160a01b031663dbc4789a6040518163ffffffff1660e01b815260040160206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b50516001600160a01b0316146110da57600080fd5b50606c80546001600160a01b0319166001600160a01b0392909216919091179055565b600154610100900460ff16806111165750611116612057565b80611124575060015460ff16155b61116257604051600160e51b62461bcd02815260040180806020018281038252602e815260200180612cac602e913960400191505060405180910390fd5b600154610100900460ff1615801561118c576001805460ff1961ff00199091166101001716811790555b61119533611aca565b80156111a7576001805461ff00191690555b50565b6000806111b7848461205d565b600054604080516001600160f81b031960208083019190915230606090811b602184015260358301959095526055808301949094528251808303909401845260759091019091528151910120811b901c949350505050565b6112176116cb565b6112595760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b606780546001600160a01b0319166001600160a01b038516179055606086856112806116bc565b60408051602481019490945260448401929092526001600160a01b039081166064840152808716608484015280861660a4840152841660c4808401919091528151808403909101815260e490920190526020810180516001600160e01b0316600160e21b632274a71302179052905060006112fb8983611836565b905086600160e31b63086c2e6d02141561135757604080518981526020810189905281516001600160a01b038416927f49c2bdad6020b81dabafa7be5ba1d6b64dccc883841d724393e4a0242819bc34928290030190a26113ad565b86600160e21b63109bdb990214156113ad57604080518981526020810189905281516001600160a01b038416927fdaec82b39e03602f1e7b1c03805276c348a0b9c50d3e83d4ae136f2bbb74137f928290030190a25b86600160e31b63086c2e6d02141561148457604080518082018252600160cb1b660acd2c286c2e6d02815260208082018981526001600160a01b0385166000818152606d8452858120945185559151600194850155606e80548c8452606f855286842081905594850190557f9930d9ff0dee0ef5ca2f7710ea66b8f84dd0f5f5351ecffe72b952cd9db7142a90930180546001600160a01b031990811685179091557f725b1f02019c28ac763ea79e1ff934efc707f63e9b319f205fa7fd7c1ddb05d390925292909220805490921617905561154d565b86600160e21b63109bdb9902141561154d57604080518082018252600160ca1b66159a58509bdb9902815260208082018981526001600160a01b0385166000818152606d8452858120945185559151600194850155606e805494850190557f9930d9ff0dee0ef5ca2f7710ea66b8f84dd0f5f5351ecffe72b952cd9db7142a90930180546001600160a01b031990811685179091558a82527ff296d0245ee9f13beb062c173c79f5bf555e94b2a5108722d840fc530e4861819092529290922080549092161790555b505050505050505050565b336000908152606d6020526040812054600160ca1b66159a58509bdb99021461158057600080fd5b60408051602481018590526001600160a01b038616604482015233606482015260848082018590528251808303909101815260a49091019091526020810180516001600160e01b0316600160e01b63ef2397210217905260006115e38783611836565b60408051868152600160ca1b66159a58509bdb9902602082015281519293506001600160a01b038416927f59bcd02033e203f8af464062ce742d11a3358b7b8fd7e996b91d74bee929d7e5929181900390910190a26001600160a01b0381166000818152606d602052604081207f566961426f6e64546f6b656e00000000000000000000000000000000000000009055606e805460018101825591527f9930d9ff0dee0ef5ca2f7710ea66b8f84dd0f5f5351ecffe72b952cd9db7142a0180546001600160a01b03191690911790559695505050505050565b6034546001600160a01b031690565b6034546000906001600160a01b03166116e2612096565b6001600160a01b031614905090565b6067546060906001600160a01b0316331461170b57600080fd5b6069805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610dee5780601f10610dc357610100808354040283529160200191610dee565b61176e6116cb565b6117b05760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606b8383612197565b505050565b6067546060906001600160a01b031633146117db57600080fd5b606a805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610dee5780601f10610dc357610100808354040283529160200191610dee565b6000808360601b90506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f0604080516001600160a01b038316815290519194507efffc2da0b561cae30d9826d37709e9421c4725faebc226cbbb7ef5fc5e7349925081900360200190a1825115611990576000826001600160a01b0316846040518082805190602001908083835b602083106119195780518252601f1990920191602091820191016118fa565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461197b576040519150601f19603f3d011682016040523d82523d6000602084013e611980565b606091505b505090508061198e57600080fd5b505b5092915050565b6000818152606f6020526040812054606e8054839283928692606d9285929181106119be57fe5b600091825260209182902001546001600160a01b031682520152508015611a67576000848152606f6020526040902054606e805490919081106119fd57fe5b6000918252602080832090910154868352606f9091526040822054606e80546001600160a01b0390931693606d939092908110611a3657fe5b60009182526020808320909101546001600160a01b031683528201929092526040019020549093509150610f989050565b5060009150819050610f98565b611a7c6116cb565b611abe5760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606983836121fa565b600154610100900460ff1680611ae35750611ae3612057565b80611af1575060015460ff16155b611b2f57604051600160e51b62461bcd02815260040180806020018281038252602e815260200180612cac602e913960400191505060405180910390fd5b600154610100900460ff16158015611b59576001805460ff1961ff00199091166101001716811790555b603480546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015611bba576001805461ff00191690555b5050565b6000606e8281548110611bcd57fe5b6000918252602090912001546001600160a01b031692915050565b611bf06116cb565b611c325760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606883836121fa565b611c466116cb565b611c885760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6117bc606a83836121fa565b611c9c6116cb565b611cde5760408051600160e51b62461bcd0281526020600482018190526024820152600080516020612c8c833981519152604482015290519081900360640190fd5b6111a78161209a565b600082606d6000606e606f60008881526020019081526020016000205481548110611d0e57fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902060010154148015611d8a575081606d6000606e606f60008881526020019081526020016000205481548110611d6357fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902054145b15610ccb576000838152606f6020526040902054606e80549091908110611dad57fe5b6000918252602090912001546001600160a01b03169050610ccb565b6001600160a01b03166000908152606d602052604090205490565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611e4857506000610ccb565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611e8e5760009350505050610ccb565b8060ff16601b14158015611ea657508060ff16601c14155b15611eb75760009350505050610ccb565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611f0e573d6000803e3d6000fd5b5050604051601f190151979650505050505050565b600080611f30878461213e565b604080516001600160a01b038316815290519192507efffc2da0b561cae30d9826d37709e9421c4725faebc226cbbb7ef5fc5e7349919081900360200190a1604051600160e01b63cf7a1d770281526001600160a01b038781166004830190815287821660248401526060604484019081528751606485015287519285169363cf7a1d77938b938b938b939192909160840190602085019080838360005b83811015611fe6578181015183820152602001611fce565b50505050905090810190601f1680156120135780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561203457600080fd5b505af1158015612048573d6000803e3d6000fd5b50929998505050505050505050565b303b1590565b604080516020808201949094526001600160a01b039290921660601b828201528051808303603401815260549092019052805191012090565b3390565b6001600160a01b0381166120e257604051600160e51b62461bcd028152600401808060200182810382526026815260200180612c666026913960400191505060405180910390fd5b6034546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603480546001600160a01b0319166001600160a01b0392909216919091179055565b60008060606040518060200161215390612274565b601f1982820381018352601f9091011660405290506000612174868661205d565b9050808251602084016000f59250823b61218d57600080fd5b5090949350505050565b8280548282559060005260206000209081019282156121ea579160200282015b828111156121ea5781546001600160a01b0319166001600160a01b038435161782556020909201916001909101906121b7565b506121f6929150612281565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061223b5782800160ff19823516178555612268565b82800160010185558215612268579182015b8281111561226857823582559160200191906001019061224d565b506121f69291506122a5565b6109a6806122c083390190565b610df691905b808211156121f65780546001600160a01b0319168155600101612287565b610df691905b808211156121f657600081556001016122ab56fe608060405234801561001057600080fd5b50610986806100206000396000f3fe6080604052600436106100705760003560e01c80638f2839701161004e5780638f2839701461015e578063cf7a1d7714610191578063d1f5789414610250578063f851a4401461030657610070565b80633659cfe61461007a5780634f1ef286146100ad5780635c60da1b1461012d575b61007861031b565b005b34801561008657600080fd5b506100786004803603602081101561009d57600080fd5b50356001600160a01b0316610335565b610078600480360360408110156100c357600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100ee57600080fd5b82018360208201111561010057600080fd5b8035906020019184600183028401116401000000008311171561012257600080fd5b50909250905061036f565b34801561013957600080fd5b5061014261041c565b604080516001600160a01b039092168252519081900360200190f35b34801561016a57600080fd5b506100786004803603602081101561018157600080fd5b50356001600160a01b0316610459565b610078600480360360608110156101a757600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156101db57600080fd5b8201836020820111156101ed57600080fd5b8035906020019184600183028401116401000000008311171561020f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610516945050505050565b6100786004803603604081101561026657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561029157600080fd5b8201836020820111156102a357600080fd5b803590602001918460018302840111640100000000831117156102c557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105a6945050505050565b34801561031257600080fd5b506101426106e6565b610323610711565b61033361032e610774565b610799565b565b61033d6107bd565b6001600160a01b0316336001600160a01b031614156103645761035f816107e2565b61036c565b61036c61031b565b50565b6103776107bd565b6001600160a01b0316336001600160a01b0316141561040f57610399836107e2565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b505090508061040957600080fd5b50610417565b61041761031b565b505050565b60006104266107bd565b6001600160a01b0316336001600160a01b0316141561044e57610447610774565b9050610456565b61045661031b565b90565b6104616107bd565b6001600160a01b0316336001600160a01b03161415610364576001600160a01b0381166104c257604051600160e51b62461bcd0281526004018080602001828103825260368152602001806108ea6036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104eb6107bd565b604080516001600160a01b03928316815291841660208301528051918290030190a161035f81610822565b6000610520610774565b6001600160a01b03161461053357600080fd5b61053d83826105a6565b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130190207fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61036000199091011461059d57fe5b61041782610822565b60006105b0610774565b6001600160a01b0316146105c357600080fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6000199091011461062357fe5b61062c82610846565b8051156106e2576000826001600160a01b0316826040518082805190602001908083835b6020831061066f5780518252601f199092019160209182019101610650565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146106cf576040519150601f19603f3d011682016040523d82523d6000602084013e6106d4565b606091505b505090508061041757600080fd5b5050565b60006106f06107bd565b6001600160a01b0316336001600160a01b0316141561044e576104476107bd565b6107196107bd565b6001600160a01b0316336001600160a01b0316141561076c57604051600160e51b62461bcd0281526004018080602001828103825260328152602001806108b86032913960400191505060405180910390fd5b610333610333565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e8080156107b8573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b6107eb81610846565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b61084f816108b1565b61088d57604051600160e51b62461bcd02815260040180806020018281038252603b815260200180610920603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b3b15159056fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a165627a7a72305820acd86240912c703ba88ccefef3db77e88d3507353c7c194b0b27eed571ae96c900294f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a165627a7a72305820ae157202957e3b3210054291b68b62d177212e108b275e00073ebd9c11c825450029",
|
|
738
738
|
"sourceMap": "535:6431:15:-;;;;;283:56:9;;;:::i;:::-;-1:-1:-1;;21:26;;;;;7:41;;87:2;69:12;;;65:26;61:2;54:38;266:79:9;;41:4:-1;30:16;;;;266:79:9;247:16;:98;535:6431:15;;;;;;;;;;:::o;:::-;;;;;;;",
|
|
739
739
|
"deployedSourceMap": "535:6431:15:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;535:6431:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2132:408:9;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;2132:408:9;;;-1:-1:-1;;;;;2132:408:9;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;2132:408:9;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;2132:408:9;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;2132:408:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;2132:408:9;;;;;;;;-1:-1:-1;2132:408:9;;-1:-1:-1;;;;;5:28;;2:2;;;46:1;43;36:12;2:2;2132:408:9;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;2132:408:9;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;2132:408:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;2132:408:9;;-1:-1:-1;2132:408:9;;-1:-1:-1;;;;;2132:408:9:i;:::-;;;;-1:-1:-1;;;;;2132:408:9;;;;;;;;;;;;;;2876:142:15;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2876:142:15;;;;;;;:::i;1288:337:9:-;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;1288:337:9;;;-1:-1:-1;;;;;1288:337:9;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;1288:337:9;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;1288:337:9;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;1288:337:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;1288:337:9;;;;;;;;-1:-1:-1;1288:337:9;;-1:-1:-1;;;;;5:28;;2:2;;;46:1;43;36:12;2:2;1288:337:9;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;1288:337:9;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;1288:337:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;1288:337:9;;-1:-1:-1;1288:337:9;;-1:-1:-1;;;;;1288:337:9:i;3487:144:15:-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;3487:144:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4217:137;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;4217:137:15;;;;;;;;;;;;;;;;;1254:23;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1254:23:15;;:::i;3996:213::-;;;:::i;2080:116::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2080:116:15;-1:-1:-1;;;;;2080:116:15;;:::i;:::-;;;;;;;;;;;;;;;;1104:180:9;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;1104:180:9;;;-1:-1:-1;;;;;1104:180:9;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;1104:180:9;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;1104:180:9;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;1104:180:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;1104:180:9;;-1:-1:-1;1104:180:9;;-1:-1:-1;;;;;1104:180:9:i;2333:162:15:-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2333:162:15;-1:-1:-1;;;;;2333:162:15;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1168:36;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1168:36:15;-1:-1:-1;;;;;1168:36:15;;:::i;1746:137:1:-;;;:::i;:::-;;1867:103:15;;;:::i;6720:108::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6720:108:15;-1:-1:-1;;;;;6720:108:15;;:::i;1770:89::-;;;:::i;1629:499:9:-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1629:499:9;;;;;;-1:-1:-1;;;;;1629:499:9;;:::i;4391:1194:15:-;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;;;;;;4391:1194:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;5618:638::-;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;;;;;;5618:638:15;;;;;;;;;;;;;;;;;;;;;;:::i;959:77:1:-;;;:::i;1310:92::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;3639:146:15;;;:::i;6607:105::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6607:105:15;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;6607:105:15;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;6607:105:15;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;-1:-1;;;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;-1:-1;6607:105:15;;-1:-1:-1;6607:105:15;-1:-1:-1;6607:105:15;:::i;3793:146::-;;;:::i;354:746:9:-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;354:746:9;;;;;;;;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;354:746:9;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;354:746:9;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;354:746:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;354:746:9;;-1:-1:-1;354:746:9;;-1:-1:-1;;;;;354:746:9:i;3088:391:15:-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3088:391:15;;:::i;:::-;;;;-1:-1:-1;;;;;3088:391:15;;;;;;;;;;;;;;;;;;;;;6379:106;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6379:106:15;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;6379:106:15;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;6379:106:15;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;-1:-1;6379:106:15;;-1:-1:-1;6379:106:15;-1:-1:-1;6379:106:15;:::i;741:142:1:-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;741:142:1;-1:-1:-1;;;;;741:142:1;;:::i;1978:94:15:-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1978:94:15;;:::i;6264:104::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6264:104:15;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;6264:104:15;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;6264:104:15;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;-1:-1;6264:104:15;;-1:-1:-1;6264:104:15;-1:-1:-1;6264:104:15;:::i;6493:106::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6493:106:15;;;;;;;;-1:-1:-1;;;5:28;;2:2;;;46:1;43;36:12;2:2;6493:106:15;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;6493:106:15;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;-1:-1;;;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;-1:-1;6493:106:15;;-1:-1:-1;6493:106:15;-1:-1:-1;6493:106:15;:::i;2032:107:1:-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2032:107:1;-1:-1:-1;;;;;2032:107:1;;:::i;2503:290:15:-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2503:290:15;;;;;;;:::i;2204:121::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2204:121:15;-1:-1:-1;;;;;2204:121:15;;:::i;2132:408:9:-;2264:7;2279:15;2297:170;2400:5;2407:6;2415;2423:5;2438:4;2372:81;;;;;;;;;;;-1:-1:-1;;;;;2372:81:9;-1:-1:-1;;;;;2372:81:9;;;;;;;;-1:-1:-1;;;;;2372:81:9;-1:-1:-1;;;;;2372:81:9;;;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2372:81:9;;;;;;;-1:-1:-1;;;;;2372:81:9;-1:-1:-1;;;;;2372:81:9;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2372:81:9;;;2353:108;;;;;;2297:48;:170::i;:::-;2279:188;;2481:54;2515:7;2524:10;2481:33;:54::i;:::-;2474:61;2132:408;-1:-1:-1;;;;;;;2132:408:9:o;2876:142:15:-;2955:7;2981:18;;;:7;:18;;;;;;;;:29;;;;;;;;;-1:-1:-1;;;;;2981:29:15;2876:142;;;;;:::o;1288:337:9:-;1418:7;1433:14;1450:51;1460:5;1467:6;1475;1483:5;1490:10;1450:9;:51::i;:::-;1433:68;-1:-1:-1;;;;;;1515:20:9;;1507:50;;;;;-1:-1:-1;;;;;1507:50:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;1570;1583:5;1590:6;1598;1606:5;1613:6;1570:12;:50::i;3487:144:15:-;3583:9;;3536:13;;-1:-1:-1;;;;;3583:9:15;3569:10;:23;3561:32;;;;;;3611:12;3604:19;;;;;;;;;;;;;-1:-1:-1;;3604:19:15;;;;;;;;;;;;;;;;;;;;;;;;;;;3611:12;3604:19;;3611:12;3604:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3487:144;;:::o;4217:137::-;4311:9;;4261:16;;-1:-1:-1;;;;;4311:9:15;4297:10;:23;4289:32;;;;;;4339:7;4332:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4332:14:15;;;;;;;;;;;;;;;;;;;;;;4217:137;:::o;1254:23::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1254:23:15;;-1:-1:-1;1254:23:15;:::o;3996:213::-;4072:10;4039:7;4066:17;;;:5;:17;;;;;:27;-1:-1:-1;;;;;4066:40:15;;:84;;-1:-1:-1;4116:10:15;4110:17;;;;:5;:17;;;;;:27;-1:-1:-1;;;;;4110:40:15;4066:84;4058:119;;;;;-1:-1:-1;;;;;4058:119:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4195:6:15;;-1:-1:-1;;;;;4195:6:15;3996:213;:::o;2080:116::-;-1:-1:-1;;;;;2166:17:15;2139:7;2166:17;;;:5;:17;;;;;:22;;;;2080:116::o;1104:180:9:-;1203:7;1225:54;1238:5;1245:6;1253;1261:5;1268:10;1225:12;:54::i;:::-;1218:61;1104:180;-1:-1:-1;;;;;1104:180:9:o;2333:162:15:-;-1:-1:-1;;;;;2435:17:15;;2399:7;2435:17;;;:5;:17;;;;;:22;;;;2459:27;;2333:162;;;;:::o;1168:36::-;;;;;;;;;;;;;;;;;;;:::o;1746:137:1:-;1163:9;:7;:9::i;:::-;1155:54;;;;;-1:-1:-1;;;;;1155:54:1;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1155:54:1;;;;;;;;;;;;;;;1828:6;;1807:40;;1844:1;;-1:-1:-1;;;;;1828:6:1;;1807:40;;1844:1;;1807:40;1857:6;:19;;-1:-1:-1;;;;;;1857:19:1;;;1746:137::o;1867:103:15:-;1949:6;:13;1867:103;:::o;6720:108::-;6775:7;6933;:5;:7::i;:::-;-1:-1:-1;;;;;6892:48:15;6907:7;-1:-1:-1;;;;;6892:37:15;;:39;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6892:39:15;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6892:39:15;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6892:39:15;-1:-1:-1;;;;;6892:48:15;;6884:57;;;;;;-1:-1:-1;6804:6:15;:16;;-1:-1:-1;;;;;;6804:16:15;-1:-1:-1;;;;;6804:16:15;;;;;;;;;;6720:108::o;1770:89::-;1024:12:2;;;;;;;;:31;;;1040:15;:13;:15::i;:::-;1024:47;;;-1:-1:-1;1060:11:2;;;;1059:12;1024:47;1016:106;;;;-1:-1:-1;;;;;1016:106:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1152:12;;;;;;;1151:13;1170:80;;;;1213:4;1198:19;;-1:-1:-1;;;;1198:19:2;;;;;1225:18;;;;;1170:80;1821:30:15;1840:10;1821:18;:30::i;:::-;1268:14:2;1264:55;;;1292:12;:20;;-1:-1:-1;;1292:20:2;;;1264:55;1770:89:15;:::o;1629:499:9:-;1712:7;1877:12;1892:24;1901:5;1908:7;1892:8;:24::i;:::-;1922:18;2045:16;1960:109;;;-1:-1:-1;;;;;;1960:109:9;;;;;;;;2016:4;1960:109;;;;;;;;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;1960:109:9;;;;;;;1943:132;;;;;2105:16;;2089:34;;;1629:499;-1:-1:-1;;;;1629:499:9:o;4391:1194:15:-;1163:9:1;:7;:9::i;:::-;1155:54;;;;;-1:-1:-1;;;;;1155:54:1;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1155:54:1;;;;;;;;;;;;;;;4567:9:15;:19;;-1:-1:-1;;;;;;4567:19:15;-1:-1:-1;;;;;4567:19:15;;;;;4597:21;4708:9;4719:13;4734:7;:5;:7::i;:::-;4621:144;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4621:144:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;4621:144:15;;;;;;;25:18:-1;;61:17;;-1:-1;;;;;182:15;-1:-1;;;;;179:29;160:49;;4621:144:15;-1:-1:-1;;4821:32:15;4835:7;4621:144;4821:13;:32::i;:::-;4803:50;;4867:9;-1:-1:-1;;;;;4867:17:15;4864:194;;;4904:48;;;;;;;;;;;;;;-1:-1:-1;;;;;4904:48:15;;;;;;;;;;;4864:194;;;4971:9;-1:-1:-1;;;;;4971:19:15;4968:90;;;5010:48;;;;;;;;;;;;;;-1:-1:-1;;;;;5010:48:15;;;;;;;;;;;4968:90;5074:9;-1:-1:-1;;;;;5074:19:15;5071:507;;;5130:29;;;;;;;;-1:-1:-1;;;;;5130:29:15;;;;;;;;;-1:-1:-1;;;;;5113:14:15;;-1:-1:-1;5113:14:15;;;:5;:14;;;;;:46;;;;;;;;;;;5204:6;:13;;5178:25;;;:10;:25;;;;;:39;;;23:18:-1;;;45:23;;5236:20:15;;;;;;-1:-1:-1;;;;;;5236:20:15;;;;;;;;5291:18;:33;;;;;;;:43;;;;;;;;5071:507;;;5364:9;-1:-1:-1;;;;;5364:19:15;5361:217;;;5420:29;;;;;;;;-1:-1:-1;;;;;5420:29:15;;;;;;;;;-1:-1:-1;;;;;5403:14:15;;-1:-1:-1;5403:14:15;;;:5;:14;;;;;:46;;;;;;;;;;;5468:6;27:10:-1;;23:18;;;45:23;;5468:20:15;;;;;;-1:-1:-1;;;;;;5468:20:15;;;;;;;;5523:33;;;:18;:33;;;;;;;:43;;;;;;;;5361:217;1219:1:1;;4391:1194:15;;;;;;;:::o;5618:638::-;5762:10;5729:7;5756:17;;;:5;:17;;;;;:27;-1:-1:-1;;;;;5756:40:15;5748:49;;;;;;5834:114;;;;;;;;;-1:-1:-1;;;;;5834:114:15;;;;;;5924:10;5834:114;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;5834:114:15;;;;;;;;25:18:-1;;61:17;;-1:-1;;;;;182:15;-1:-1;;;;;179:29;160:49;;-1:-1;6003:32:15;6017:7;5834:114;6003:13;:32::i;:::-;6051:44;;;;;;-1:-1:-1;;;;;6051:44:15;;;;;;5986:49;;-1:-1:-1;;;;;;6051:44:15;;;;;;;;;;;;;;-1:-1:-1;;;;;6132:13:15;;6116;6132;;;:5;:13;;;;;6156:28;;;6195:6;27:10:-1;;39:1;23:18;;45:23;;6195:19:15;;;;;;-1:-1:-1;;;;;;6195:19:15;;;;;;6132:13;5618:638;-1:-1:-1;;;;;;5618:638:15:o;959:77:1:-;1023:6;;-1:-1:-1;;;;;1023:6:1;959:77;:::o;1310:92::-;1389:6;;1350:4;;-1:-1:-1;;;;;1389:6:1;1373:12;:10;:12::i;:::-;-1:-1:-1;;;;;1373:22:1;;1366:29;;1310:92;:::o;3639:146:15:-;3736:9;;3689:13;;-1:-1:-1;;;;;3736:9:15;3722:10;:23;3714:32;;;;;;3764:13;3757:20;;;;;;;;;;;;;-1:-1:-1;;3757:20:15;;;;;;;;;;;;;;;;;;;;;;;;;;;3764:13;3757:20;;3764:13;3757:20;;;;;;;;;;;;;;;;;;;;;;;;6607:105;1163:9:1;:7;:9::i;:::-;1155:54;;;;;-1:-1:-1;;;;;1155:54:1;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1155:54:1;;;;;;;;;;;;;;;6686:18:15;:7;6696:8;;6686:18;:::i;:::-;;6607:105;;:::o;3793:146::-;3890:9;;3843:13;;-1:-1:-1;;;;;3890:9:15;3876:10;:23;3868:32;;;;;;3918:13;3911:20;;;;;;;;;;;;;-1:-1:-1;;3911:20:15;;;;;;;;;;;;;;;;;;;;;;;;;;;3918:13;3911:20;;3918:13;3911:20;;;;;;;;;;;;;;;;;;;;;;;;354:746:9;429:13;588:19;618:6;610:15;;588:37;;667:4;661:11;693:66;686:5;679:81;792:11;785:4;778:5;774:16;767:37;836:66;829:4;822:5;818:16;811:92;936:4;929:5;926:1;919:22;962:28;;;-1:-1:-1;;;;;962:28:9;;;;;;910:31;;-1:-1:-1;962:28:9;;-1:-1:-1;962:28:9;;;;;;;1000:12;;:16;997:95;;1027:12;1044:5;-1:-1:-1;;;;;1044:10:9;1055:5;1044:17;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1044:17:9;;;;;;;;;;;;;;;;;;;;;;;;14:1:-1;21;16:31;;;;75:4;69:11;64:16;;144:4;140:9;133:4;115:16;111:27;107:43;104:1;100:51;94:4;87:65;169:16;166:1;159:27;225:16;222:1;215:4;212:1;208:12;193:49;7:242;;16:31;36:4;31:9;;7:242;;1026:35:9;;;1077:7;1069:16;;;;;;997:95;;354:746;;;;;:::o;3088:391:15:-;3157:7;3230:21;;;:10;:21;;;;;;3223:6;:29;;3157:7;;;;3260:9;;3217:5;;3157:7;;3223:6;:29;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3223:29:15;3217:36;;;;-1:-1:-1;3311:5:15;3308:163;;;3346:21;;;;:10;:21;;;;;;3339:6;:29;;:6;;3346:21;3339:29;;;;;;;;;;;;;;;;;;3383:21;;;:10;:21;;;;;;;3376:6;:29;;-1:-1:-1;;;;;3339:29:15;;;;3370:5;;3339:29;;3383:21;3376:29;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3376:29:15;3370:36;;;;;;;;;;;;:46;3331:86;;-1:-1:-1;3370:46:15;-1:-1:-1;3331:86:15;;-1:-1:-1;3331:86:15;3308:163;-1:-1:-1;3462:3:15;;-1:-1:-1;3462:3:15;;-1:-1:-1;3446:25:15;;6379:106;1163:9:1;:7;:9::i;:::-;1155:54;;;;;-1:-1:-1;;;;;1155:54:1;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1155:54:1;;;;;;;;;;;;;;;6457:20:15;:13;6473:4;;6457:20;:::i;741:142:1:-;1024:12:2;;;;;;;;:31;;;1040:15;:13;:15::i;:::-;1024:47;;;-1:-1:-1;1060:11:2;;;;1059:12;1024:47;1016:106;;;;-1:-1:-1;;;;;1016:106:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1152:12;;;;;;;1151:13;1170:80;;;;1213:4;1198:19;;-1:-1:-1;;;;1198:19:2;;;;;1225:18;;;;;1170:80;806:6:1;:15;;-1:-1:-1;;;;;;806:15:1;-1:-1:-1;;;;;806:15:1;;;;;;;;;;;836:40;;869:6;;;-1:-1:-1;;836:40:1;;-1:-1:-1;;836:40:1;1268:14:2;1264:55;;;1292:12;:20;;-1:-1:-1;;1292:20:2;;;1264:55;741:142:1;;:::o;1978:94:15:-;2029:7;2055:6;2062:1;2055:9;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2055:9:15;;1978:94;-1:-1:-1;;1978:94:15:o;6264:104::-;1163:9:1;:7;:9::i;:::-;1155:54;;;;;-1:-1:-1;;;;;1155:54:1;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1155:54:1;;;;;;;;;;;;;;;6341:19:15;:12;6356:4;;6341:19;:::i;6493:106::-;1163:9:1;:7;:9::i;:::-;1155:54;;;;;-1:-1:-1;;;;;1155:54:1;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1155:54:1;;;;;;;;;;;;;;;6571:20:15;:13;6587:4;;6571:20;:::i;2032:107:1:-;1163:9;:7;:9::i;:::-;1155:54;;;;;-1:-1:-1;;;;;1155:54:1;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1155:54:1;;;;;;;;;;;;;;;2104:28;2123:8;2104:18;:28::i;2503:290:15:-;2591:7;2658:9;2613:5;:36;2619:6;2626:10;:21;2637:9;2626:21;;;;;;;;;;;;2619:29;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2619:29:15;2613:36;;;;;;;;;;;;2619:29;2613:41;;:54;:117;;;;;2721:9;2671:5;:36;2677:6;2684:10;:21;2695:9;2684:21;;;;;;;;;;;;2677:29;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2677:29:15;2671:36;;;;;;;;;;;;:46;:59;2613:117;2610:175;;;2763:21;;;;:10;:21;;;;;;2756:6;:29;;:6;;2763:21;2756:29;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2756:29:15;;-1:-1:-1;2749:36:15;;2204:121;-1:-1:-1;;;;;2290:17:15;2263:7;2290:17;;;:5;:17;;;;;:27;;2204:121::o;3142:265:3:-;3341:58;;;;;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;3341:58:3;;;;;;;3331:69;;;;;;3142:265::o;1101:1891::-;1179:7;1240:9;:16;1260:2;1240:22;1236:72;;-1:-1:-1;1294:1:3;1278:19;;1236:72;1658:4;1643:20;;1637:27;1703:4;1688:20;;1682:27;1756:4;1741:20;;1735:27;1374:9;1727:36;2674:66;2661:79;;2657:127;;;2771:1;2756:17;;;;;;;2657:127;2798:1;:7;;2803:2;2798:7;;:18;;;;;2809:1;:7;;2814:2;2809:7;;2798:18;2794:66;;;2847:1;2832:17;;;;;;;2794:66;2961:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2961:24:3;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;2961:24:3;;-1:-1:-1;;2961:24:3;;;1101:1891;-1:-1:-1;;;;;;;1101:1891:3:o;2544:329:9:-;2668:7;2683:43;2729:28;2742:5;2749:7;2729:12;:28::i;:::-;2768;;;-1:-1:-1;;;;;2768:28:9;;;;;;2683:74;;-1:-1:-1;2768:28:9;;;;;;;;;;2802:39;;-1:-1:-1;;;;;2802:39:9;;-1:-1:-1;;;;;2802:39:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:16;;;;;;2819:6;;2827;;2835:5;;2802:39;;;;;;;;;;;;;;-1:-1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;2802:39:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2802:39:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;2862:5:9;;2544:329;-1:-1:-1;;;;;;;;;2544:329:9:o;1409:498:2:-;1820:4;1864:17;1895:7;1409:498;:::o;3356:144:9:-;3461:32;;;;;;;;;;;-1:-1:-1;;;;;3461:32:9;;;;;;;;;;;;26:21:-1;;;22:32;;6:49;;3461:32:9;;;;;;3451:43;;;;;;3356:144::o;867:96:0:-;946:10;867:96;:::o;2240:225:1:-;-1:-1:-1;;;;;2313:22:1;;2305:73;;;;-1:-1:-1;;;;;2305:73:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2414:6;;2393:38;;-1:-1:-1;;;;;2393:38:1;;;;2414:6;;2393:38;;2414:6;;2393:38;2441:6;:17;;-1:-1:-1;;;;;;2441:17:1;-1:-1:-1;;;;;2441:17:1;;;;;;;;;;2240:225::o;2877:475:9:-;2949:37;2994:20;3020:17;3040:56;;;;;;;;:::i;:::-;-1:-1:-1;;21:26;;;;;7:41;;87:2;69:12;;;65:26;61:2;54:38;34:5;-1:-1;3102:12:9;3117:24;3126:5;3133:7;3117:8;:24::i;:::-;3102:39;;3214:4;3207;3201:11;3194:4;3188;3184:15;3181:1;3173:46;3165:54;;3248:4;3236:17;3226:2;;3275:1;3272;3265:12;3226:2;-1:-1:-1;3342:4:9;;2877:475;-1:-1:-1;;;;2877:475:9:o;535:6431:15:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;535:6431:15;-1:-1:-1;;;;;535:6431:15;;;;;;;;;;;;;;;;;;;-1:-1:-1;535:6431:15;;;-1:-1:-1;535:6431:15;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;535:6431:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;535:6431:15;;;-1:-1:-1;535:6431:15;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;;535:6431:15;;;;;;;;;;;;;;;;;;;;;;;;",
|
|
740
740
|
"source": "// (c) Kallol Borah, 2020\r\n// Implementation of the Via cash and bond factory\r\n// SPDX-License-Identifier: MIT\r\n\r\npragma solidity 0.5.7;\r\n\r\nimport \"./interfaces/ViaFactory.sol\";\r\nimport \"./interfaces/ViaToken.sol\";\r\nimport \"./interfaces/VerifiedClient.sol\";\r\nimport \"abdk-libraries-solidity/ABDKMathQuad.sol\";\r\nimport \"@openzeppelin/upgrades/contracts/Initializable.sol\";\r\nimport \"@openzeppelin/upgrades/contracts/upgradeability/ProxyFactory.sol\";\r\nimport \"@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol\";\r\n\r\ncontract Factory is ViaFactory, ProxyFactory, Initializable, Ownable {\r\n\r\n using ABDKMathQuad for uint256;\r\n using ABDKMathQuad for int256;\r\n using ABDKMathQuad for bytes16;\r\n\r\n //data structure for token proxies\r\n struct via{\r\n bytes32 tokenType;\r\n bytes32 name; \r\n }\r\n //Via oracle url address\r\n address ViaOracle;\r\n string ViaOracleUrl;\r\n\r\n //Payout url\r\n string FiatPayoutUrl;\r\n\r\n //Crypto data url\r\n string CryptoDataUrl;\r\n\r\n //Oracle address\r\n address[] oracles;\r\n\r\n //Verified accounts client\r\n address client;\r\n\r\n //addresses of all Via proxies\r\n mapping(address => via) public token;\r\n\r\n //token index and position in index\r\n address[] public tokens;\r\n\r\n //mapping token name (currency) to index position \r\n mapping(bytes32 => uint256) private tokenIndex;\r\n\r\n //list of token product issuers\r\n mapping(bytes32 => mapping(bytes32 => address)) issuers;\r\n\r\n event CashIssuerCreated(address indexed issuer, bytes32 tokenName, bytes32 tokenType);\r\n event BondIssuerCreated(address indexed issuer, bytes32 tokenName, bytes32 tokenType);\r\n event TokenCreated(address indexed token, bytes32 tokenName, bytes32 tokenType);\r\n\r\n function initialize() public initializer{\r\n Ownable.initialize(msg.sender);\r\n }\r\n\r\n function getTokenCount() external view returns(uint tokenCount) {\r\n return tokens.length;\r\n }\r\n\r\n function getToken(uint256 n) external view returns(address){\r\n return tokens[n];\r\n }\r\n\r\n function getName(address viaAddress) external view returns(bytes32) {\r\n return token[viaAddress].name;\r\n }\r\n\r\n function getType(address viaAddress) external view returns(bytes32) {\r\n return token[viaAddress].tokenType;\r\n }\r\n\r\n function getNameAndType(address viaAddress) external view returns(bytes32, bytes32){\r\n return (token[viaAddress].name, token[viaAddress].tokenType);\r\n }\r\n\r\n function getTokenByNameType(bytes32 tokenName, bytes32 tokenType) external view returns(address){\r\n if(token[tokens[tokenIndex[tokenName]]].name == tokenName && token[tokens[tokenIndex[tokenName]]].tokenType == tokenType)\r\n return tokens[tokenIndex[tokenName]];\r\n }\r\n\r\n //retrieve token product issuer address for given token name and type\r\n function getIssuer(bytes32 tokenType, bytes32 tokenName) external view returns(address){\r\n return issuers[tokenType][tokenName];\r\n }\r\n\r\n //retrieves address and type of token for name specified\r\n function getAddressAndType(bytes32 tokenName) external view returns (address, bytes32){\r\n bool found = false;\r\n if(token[tokens[tokenIndex[tokenName]]].name==tokenName)\r\n found == true;\r\n if(found)\r\n return (tokens[tokenIndex[tokenName]], token[tokens[tokenIndex[tokenName]]].tokenType);\r\n else\r\n return (address(0x0), \"\");\r\n }\r\n\r\n function getViaOracleUrl() external view returns(string memory){\r\n require(msg.sender == ViaOracle);\r\n return ViaOracleUrl;\r\n }\r\n\r\n function getFiatPayoutUrl() external view returns(string memory){\r\n require(msg.sender == ViaOracle);\r\n return FiatPayoutUrl;\r\n }\r\n\r\n function getCryptoDataUrl() external view returns(string memory){\r\n require(msg.sender == ViaOracle);\r\n return CryptoDataUrl;\r\n }\r\n\r\n //get Verified client address for AML check\r\n function getClient() external view returns(address){\r\n require(token[msg.sender].tokenType == \"ViaCash\" || token[msg.sender].tokenType == \"ViaBond\", 'Get client : FORBIDDEN');\r\n return client;\r\n }\r\n\r\n function getOracles() external view returns(address[] memory){\r\n require(msg.sender == ViaOracle);\r\n return oracles;\r\n }\r\n\r\n //token issuer factory \r\n function createIssuer(address _target, bytes32 tokenName, bytes32 tokenType, bytes32 tokenCurrency, address _oracle, address _token, address _fee) onlyOwner external{\r\n ViaOracle = _oracle;\r\n bytes memory _payload = abi.encodeWithSignature(\"initialize(bytes32,bytes32,address,address,address,address)\", tokenName, tokenCurrency, owner(), _oracle, _token, _fee);\r\n\r\n // Deploy proxy\r\n address _issuer = deployMinimal(_target, _payload);\r\n if(tokenType==\"Cash\")\r\n emit CashIssuerCreated(_issuer, tokenName, tokenType);\r\n else if(tokenType == \"Bond\")\r\n emit BondIssuerCreated(_issuer, tokenName, tokenType);\r\n\r\n if(tokenType == \"Cash\"){\r\n token[_issuer] = via(\"ViaCash\", tokenCurrency);\r\n tokenIndex[tokenCurrency]=tokens.length;\r\n tokens.push(_issuer); \r\n issuers[\"ViaCash\"][tokenCurrency] = _issuer;\r\n }\r\n else if(tokenType == \"Bond\"){\r\n token[_issuer] = via(\"ViaBond\", tokenCurrency);\r\n tokens.push(_issuer); \r\n issuers[\"ViaBond\"][tokenCurrency] = _issuer;\r\n }\r\n }\r\n \r\n //token factory\r\n function createToken(address _target, address issuer, bytes32 tokenName, bytes32 tokenSymbol) external returns(address){\r\n require(token[msg.sender].tokenType == \"ViaBond\");\r\n\r\n bytes memory _payload = abi.encodeWithSignature(\"initialize(bytes32,address,address,bytes32)\", tokenName, issuer, msg.sender, tokenSymbol);\r\n\r\n // Deploy proxy\r\n address _token = deployMinimal(_target, _payload);\r\n emit TokenCreated(_token, tokenSymbol, \"ViaBond\");\r\n \r\n via storage t = token[_token];\r\n t.tokenType = \"ViaBondToken\";\r\n tokens.push(_token);\r\n \r\n return _token;\r\n }\r\n\r\n function setViaOracleUrl(string calldata _url) onlyOwner external {\r\n ViaOracleUrl = _url;\r\n } \r\n\r\n function setFiatPayoutUrl(string calldata _url) onlyOwner external {\r\n FiatPayoutUrl = _url;\r\n }\r\n\r\n function setCryptoDataURL(string calldata _url) onlyOwner external {\r\n CryptoDataUrl = _url;\r\n }\r\n\r\n function setOracles(address[] calldata _oracles) onlyOwner external {\r\n oracles = _oracles;\r\n }\r\n\r\n function setClientAddress(address _client) onlyManager(_client) external {\r\n client = _client;\r\n }\r\n\r\n modifier onlyManager(address _client){\r\n require(VerifiedClient(_client).getAMLManager()==owner());\r\n _;\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
|
|
@@ -776,7 +776,7 @@
|
|
|
776
776
|
"id": 11245,
|
|
777
777
|
"nodeType": "ImportDirective",
|
|
778
778
|
"scope": 11878,
|
|
779
|
-
"sourceUnit":
|
|
779
|
+
"sourceUnit": 14280,
|
|
780
780
|
"src": "179:35:15",
|
|
781
781
|
"symbolAliases": [],
|
|
782
782
|
"unitAlias": ""
|
|
@@ -1749,7 +1749,7 @@
|
|
|
1749
1749
|
"name": "msg",
|
|
1750
1750
|
"nodeType": "Identifier",
|
|
1751
1751
|
"overloadedDeclarations": [],
|
|
1752
|
-
"referencedDeclaration":
|
|
1752
|
+
"referencedDeclaration": 16439,
|
|
1753
1753
|
"src": "1840:3:15",
|
|
1754
1754
|
"typeDescriptions": {
|
|
1755
1755
|
"typeIdentifier": "t_magic_message",
|
|
@@ -4046,7 +4046,7 @@
|
|
|
4046
4046
|
"name": "msg",
|
|
4047
4047
|
"nodeType": "Identifier",
|
|
4048
4048
|
"overloadedDeclarations": [],
|
|
4049
|
-
"referencedDeclaration":
|
|
4049
|
+
"referencedDeclaration": 16439,
|
|
4050
4050
|
"src": "3569:3:15",
|
|
4051
4051
|
"typeDescriptions": {
|
|
4052
4052
|
"typeIdentifier": "t_magic_message",
|
|
@@ -4100,10 +4100,10 @@
|
|
|
4100
4100
|
"name": "require",
|
|
4101
4101
|
"nodeType": "Identifier",
|
|
4102
4102
|
"overloadedDeclarations": [
|
|
4103
|
-
|
|
4104
|
-
|
|
4103
|
+
16442,
|
|
4104
|
+
16443
|
|
4105
4105
|
],
|
|
4106
|
-
"referencedDeclaration":
|
|
4106
|
+
"referencedDeclaration": 16442,
|
|
4107
4107
|
"src": "3561:7:15",
|
|
4108
4108
|
"typeDescriptions": {
|
|
4109
4109
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -4230,7 +4230,7 @@
|
|
|
4230
4230
|
"name": "msg",
|
|
4231
4231
|
"nodeType": "Identifier",
|
|
4232
4232
|
"overloadedDeclarations": [],
|
|
4233
|
-
"referencedDeclaration":
|
|
4233
|
+
"referencedDeclaration": 16439,
|
|
4234
4234
|
"src": "3722:3:15",
|
|
4235
4235
|
"typeDescriptions": {
|
|
4236
4236
|
"typeIdentifier": "t_magic_message",
|
|
@@ -4284,10 +4284,10 @@
|
|
|
4284
4284
|
"name": "require",
|
|
4285
4285
|
"nodeType": "Identifier",
|
|
4286
4286
|
"overloadedDeclarations": [
|
|
4287
|
-
|
|
4288
|
-
|
|
4287
|
+
16442,
|
|
4288
|
+
16443
|
|
4289
4289
|
],
|
|
4290
|
-
"referencedDeclaration":
|
|
4290
|
+
"referencedDeclaration": 16442,
|
|
4291
4291
|
"src": "3714:7:15",
|
|
4292
4292
|
"typeDescriptions": {
|
|
4293
4293
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -4414,7 +4414,7 @@
|
|
|
4414
4414
|
"name": "msg",
|
|
4415
4415
|
"nodeType": "Identifier",
|
|
4416
4416
|
"overloadedDeclarations": [],
|
|
4417
|
-
"referencedDeclaration":
|
|
4417
|
+
"referencedDeclaration": 16439,
|
|
4418
4418
|
"src": "3876:3:15",
|
|
4419
4419
|
"typeDescriptions": {
|
|
4420
4420
|
"typeIdentifier": "t_magic_message",
|
|
@@ -4468,10 +4468,10 @@
|
|
|
4468
4468
|
"name": "require",
|
|
4469
4469
|
"nodeType": "Identifier",
|
|
4470
4470
|
"overloadedDeclarations": [
|
|
4471
|
-
|
|
4472
|
-
|
|
4471
|
+
16442,
|
|
4472
|
+
16443
|
|
4473
4473
|
],
|
|
4474
|
-
"referencedDeclaration":
|
|
4474
|
+
"referencedDeclaration": 16442,
|
|
4475
4475
|
"src": "3868:7:15",
|
|
4476
4476
|
"typeDescriptions": {
|
|
4477
4477
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -4627,7 +4627,7 @@
|
|
|
4627
4627
|
"name": "msg",
|
|
4628
4628
|
"nodeType": "Identifier",
|
|
4629
4629
|
"overloadedDeclarations": [],
|
|
4630
|
-
"referencedDeclaration":
|
|
4630
|
+
"referencedDeclaration": 16439,
|
|
4631
4631
|
"src": "4072:3:15",
|
|
4632
4632
|
"typeDescriptions": {
|
|
4633
4633
|
"typeIdentifier": "t_magic_message",
|
|
@@ -4738,7 +4738,7 @@
|
|
|
4738
4738
|
"name": "msg",
|
|
4739
4739
|
"nodeType": "Identifier",
|
|
4740
4740
|
"overloadedDeclarations": [],
|
|
4741
|
-
"referencedDeclaration":
|
|
4741
|
+
"referencedDeclaration": 16439,
|
|
4742
4742
|
"src": "4116:3:15",
|
|
4743
4743
|
"typeDescriptions": {
|
|
4744
4744
|
"typeIdentifier": "t_magic_message",
|
|
@@ -4850,10 +4850,10 @@
|
|
|
4850
4850
|
"name": "require",
|
|
4851
4851
|
"nodeType": "Identifier",
|
|
4852
4852
|
"overloadedDeclarations": [
|
|
4853
|
-
|
|
4854
|
-
|
|
4853
|
+
16442,
|
|
4854
|
+
16443
|
|
4855
4855
|
],
|
|
4856
|
-
"referencedDeclaration":
|
|
4856
|
+
"referencedDeclaration": 16443,
|
|
4857
4857
|
"src": "4058:7:15",
|
|
4858
4858
|
"typeDescriptions": {
|
|
4859
4859
|
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
|
|
@@ -4981,7 +4981,7 @@
|
|
|
4981
4981
|
"name": "msg",
|
|
4982
4982
|
"nodeType": "Identifier",
|
|
4983
4983
|
"overloadedDeclarations": [],
|
|
4984
|
-
"referencedDeclaration":
|
|
4984
|
+
"referencedDeclaration": 16439,
|
|
4985
4985
|
"src": "4297:3:15",
|
|
4986
4986
|
"typeDescriptions": {
|
|
4987
4987
|
"typeIdentifier": "t_magic_message",
|
|
@@ -5035,10 +5035,10 @@
|
|
|
5035
5035
|
"name": "require",
|
|
5036
5036
|
"nodeType": "Identifier",
|
|
5037
5037
|
"overloadedDeclarations": [
|
|
5038
|
-
|
|
5039
|
-
|
|
5038
|
+
16442,
|
|
5039
|
+
16443
|
|
5040
5040
|
],
|
|
5041
|
-
"referencedDeclaration":
|
|
5041
|
+
"referencedDeclaration": 16442,
|
|
5042
5042
|
"src": "4289:7:15",
|
|
5043
5043
|
"typeDescriptions": {
|
|
5044
5044
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -5386,7 +5386,7 @@
|
|
|
5386
5386
|
"name": "abi",
|
|
5387
5387
|
"nodeType": "Identifier",
|
|
5388
5388
|
"overloadedDeclarations": [],
|
|
5389
|
-
"referencedDeclaration":
|
|
5389
|
+
"referencedDeclaration": 16426,
|
|
5390
5390
|
"src": "4621:3:15",
|
|
5391
5391
|
"typeDescriptions": {
|
|
5392
5392
|
"typeIdentifier": "t_magic_abi",
|
|
@@ -6921,7 +6921,7 @@
|
|
|
6921
6921
|
"name": "msg",
|
|
6922
6922
|
"nodeType": "Identifier",
|
|
6923
6923
|
"overloadedDeclarations": [],
|
|
6924
|
-
"referencedDeclaration":
|
|
6924
|
+
"referencedDeclaration": 16439,
|
|
6925
6925
|
"src": "5762:3:15",
|
|
6926
6926
|
"typeDescriptions": {
|
|
6927
6927
|
"typeIdentifier": "t_magic_message",
|
|
@@ -7005,10 +7005,10 @@
|
|
|
7005
7005
|
"name": "require",
|
|
7006
7006
|
"nodeType": "Identifier",
|
|
7007
7007
|
"overloadedDeclarations": [
|
|
7008
|
-
|
|
7009
|
-
|
|
7008
|
+
16442,
|
|
7009
|
+
16443
|
|
7010
7010
|
],
|
|
7011
|
-
"referencedDeclaration":
|
|
7011
|
+
"referencedDeclaration": 16442,
|
|
7012
7012
|
"src": "5748:7:15",
|
|
7013
7013
|
"typeDescriptions": {
|
|
7014
7014
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -7121,7 +7121,7 @@
|
|
|
7121
7121
|
"name": "msg",
|
|
7122
7122
|
"nodeType": "Identifier",
|
|
7123
7123
|
"overloadedDeclarations": [],
|
|
7124
|
-
"referencedDeclaration":
|
|
7124
|
+
"referencedDeclaration": 16439,
|
|
7125
7125
|
"src": "5924:3:15",
|
|
7126
7126
|
"typeDescriptions": {
|
|
7127
7127
|
"typeIdentifier": "t_magic_message",
|
|
@@ -7185,7 +7185,7 @@
|
|
|
7185
7185
|
"name": "abi",
|
|
7186
7186
|
"nodeType": "Identifier",
|
|
7187
7187
|
"overloadedDeclarations": [],
|
|
7188
|
-
"referencedDeclaration":
|
|
7188
|
+
"referencedDeclaration": 16426,
|
|
7189
7189
|
"src": "5834:3:15",
|
|
7190
7190
|
"typeDescriptions": {
|
|
7191
7191
|
"typeIdentifier": "t_magic_abi",
|
|
@@ -8624,10 +8624,10 @@
|
|
|
8624
8624
|
"name": "require",
|
|
8625
8625
|
"nodeType": "Identifier",
|
|
8626
8626
|
"overloadedDeclarations": [
|
|
8627
|
-
|
|
8628
|
-
|
|
8627
|
+
16442,
|
|
8628
|
+
16443
|
|
8629
8629
|
],
|
|
8630
|
-
"referencedDeclaration":
|
|
8630
|
+
"referencedDeclaration": 16442,
|
|
8631
8631
|
"src": "6884:7:15",
|
|
8632
8632
|
"typeDescriptions": {
|
|
8633
8633
|
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
|
|
@@ -8746,7 +8746,7 @@
|
|
|
8746
8746
|
},
|
|
8747
8747
|
{
|
|
8748
8748
|
"attributes": {
|
|
8749
|
-
"SourceUnit":
|
|
8749
|
+
"SourceUnit": 14280,
|
|
8750
8750
|
"absolutePath": "project:/contracts/interfaces/ViaToken.sol",
|
|
8751
8751
|
"file": "./interfaces/ViaToken.sol",
|
|
8752
8752
|
"scope": 11878,
|
|
@@ -9888,7 +9888,7 @@
|
|
|
9888
9888
|
"overloadedDeclarations": [
|
|
9889
9889
|
null
|
|
9890
9890
|
],
|
|
9891
|
-
"referencedDeclaration":
|
|
9891
|
+
"referencedDeclaration": 16439,
|
|
9892
9892
|
"type": "msg",
|
|
9893
9893
|
"value": "msg"
|
|
9894
9894
|
},
|
|
@@ -12339,10 +12339,10 @@
|
|
|
12339
12339
|
}
|
|
12340
12340
|
],
|
|
12341
12341
|
"overloadedDeclarations": [
|
|
12342
|
-
|
|
12343
|
-
|
|
12342
|
+
16442,
|
|
12343
|
+
16443
|
|
12344
12344
|
],
|
|
12345
|
-
"referencedDeclaration":
|
|
12345
|
+
"referencedDeclaration": 16442,
|
|
12346
12346
|
"type": "function (bool) pure",
|
|
12347
12347
|
"value": "require"
|
|
12348
12348
|
},
|
|
@@ -12383,7 +12383,7 @@
|
|
|
12383
12383
|
"overloadedDeclarations": [
|
|
12384
12384
|
null
|
|
12385
12385
|
],
|
|
12386
|
-
"referencedDeclaration":
|
|
12386
|
+
"referencedDeclaration": 16439,
|
|
12387
12387
|
"type": "msg",
|
|
12388
12388
|
"value": "msg"
|
|
12389
12389
|
},
|
|
@@ -12547,10 +12547,10 @@
|
|
|
12547
12547
|
}
|
|
12548
12548
|
],
|
|
12549
12549
|
"overloadedDeclarations": [
|
|
12550
|
-
|
|
12551
|
-
|
|
12550
|
+
16442,
|
|
12551
|
+
16443
|
|
12552
12552
|
],
|
|
12553
|
-
"referencedDeclaration":
|
|
12553
|
+
"referencedDeclaration": 16442,
|
|
12554
12554
|
"type": "function (bool) pure",
|
|
12555
12555
|
"value": "require"
|
|
12556
12556
|
},
|
|
@@ -12591,7 +12591,7 @@
|
|
|
12591
12591
|
"overloadedDeclarations": [
|
|
12592
12592
|
null
|
|
12593
12593
|
],
|
|
12594
|
-
"referencedDeclaration":
|
|
12594
|
+
"referencedDeclaration": 16439,
|
|
12595
12595
|
"type": "msg",
|
|
12596
12596
|
"value": "msg"
|
|
12597
12597
|
},
|
|
@@ -12755,10 +12755,10 @@
|
|
|
12755
12755
|
}
|
|
12756
12756
|
],
|
|
12757
12757
|
"overloadedDeclarations": [
|
|
12758
|
-
|
|
12759
|
-
|
|
12758
|
+
16442,
|
|
12759
|
+
16443
|
|
12760
12760
|
],
|
|
12761
|
-
"referencedDeclaration":
|
|
12761
|
+
"referencedDeclaration": 16442,
|
|
12762
12762
|
"type": "function (bool) pure",
|
|
12763
12763
|
"value": "require"
|
|
12764
12764
|
},
|
|
@@ -12799,7 +12799,7 @@
|
|
|
12799
12799
|
"overloadedDeclarations": [
|
|
12800
12800
|
null
|
|
12801
12801
|
],
|
|
12802
|
-
"referencedDeclaration":
|
|
12802
|
+
"referencedDeclaration": 16439,
|
|
12803
12803
|
"type": "msg",
|
|
12804
12804
|
"value": "msg"
|
|
12805
12805
|
},
|
|
@@ -12968,10 +12968,10 @@
|
|
|
12968
12968
|
}
|
|
12969
12969
|
],
|
|
12970
12970
|
"overloadedDeclarations": [
|
|
12971
|
-
|
|
12972
|
-
|
|
12971
|
+
16442,
|
|
12972
|
+
16443
|
|
12973
12973
|
],
|
|
12974
|
-
"referencedDeclaration":
|
|
12974
|
+
"referencedDeclaration": 16443,
|
|
12975
12975
|
"type": "function (bool,string memory) pure",
|
|
12976
12976
|
"value": "require"
|
|
12977
12977
|
},
|
|
@@ -13063,7 +13063,7 @@
|
|
|
13063
13063
|
"overloadedDeclarations": [
|
|
13064
13064
|
null
|
|
13065
13065
|
],
|
|
13066
|
-
"referencedDeclaration":
|
|
13066
|
+
"referencedDeclaration": 16439,
|
|
13067
13067
|
"type": "msg",
|
|
13068
13068
|
"value": "msg"
|
|
13069
13069
|
},
|
|
@@ -13177,7 +13177,7 @@
|
|
|
13177
13177
|
"overloadedDeclarations": [
|
|
13178
13178
|
null
|
|
13179
13179
|
],
|
|
13180
|
-
"referencedDeclaration":
|
|
13180
|
+
"referencedDeclaration": 16439,
|
|
13181
13181
|
"type": "msg",
|
|
13182
13182
|
"value": "msg"
|
|
13183
13183
|
},
|
|
@@ -13388,10 +13388,10 @@
|
|
|
13388
13388
|
}
|
|
13389
13389
|
],
|
|
13390
13390
|
"overloadedDeclarations": [
|
|
13391
|
-
|
|
13392
|
-
|
|
13391
|
+
16442,
|
|
13392
|
+
16443
|
|
13393
13393
|
],
|
|
13394
|
-
"referencedDeclaration":
|
|
13394
|
+
"referencedDeclaration": 16442,
|
|
13395
13395
|
"type": "function (bool) pure",
|
|
13396
13396
|
"value": "require"
|
|
13397
13397
|
},
|
|
@@ -13432,7 +13432,7 @@
|
|
|
13432
13432
|
"overloadedDeclarations": [
|
|
13433
13433
|
null
|
|
13434
13434
|
],
|
|
13435
|
-
"referencedDeclaration":
|
|
13435
|
+
"referencedDeclaration": 16439,
|
|
13436
13436
|
"type": "msg",
|
|
13437
13437
|
"value": "msg"
|
|
13438
13438
|
},
|
|
@@ -13897,7 +13897,7 @@
|
|
|
13897
13897
|
"overloadedDeclarations": [
|
|
13898
13898
|
null
|
|
13899
13899
|
],
|
|
13900
|
-
"referencedDeclaration":
|
|
13900
|
+
"referencedDeclaration": 16426,
|
|
13901
13901
|
"type": "abi",
|
|
13902
13902
|
"value": "abi"
|
|
13903
13903
|
},
|
|
@@ -15556,10 +15556,10 @@
|
|
|
15556
15556
|
}
|
|
15557
15557
|
],
|
|
15558
15558
|
"overloadedDeclarations": [
|
|
15559
|
-
|
|
15560
|
-
|
|
15559
|
+
16442,
|
|
15560
|
+
16443
|
|
15561
15561
|
],
|
|
15562
|
-
"referencedDeclaration":
|
|
15562
|
+
"referencedDeclaration": 16442,
|
|
15563
15563
|
"type": "function (bool) pure",
|
|
15564
15564
|
"value": "require"
|
|
15565
15565
|
},
|
|
@@ -15636,7 +15636,7 @@
|
|
|
15636
15636
|
"overloadedDeclarations": [
|
|
15637
15637
|
null
|
|
15638
15638
|
],
|
|
15639
|
-
"referencedDeclaration":
|
|
15639
|
+
"referencedDeclaration": 16439,
|
|
15640
15640
|
"type": "msg",
|
|
15641
15641
|
"value": "msg"
|
|
15642
15642
|
},
|
|
@@ -15778,7 +15778,7 @@
|
|
|
15778
15778
|
"overloadedDeclarations": [
|
|
15779
15779
|
null
|
|
15780
15780
|
],
|
|
15781
|
-
"referencedDeclaration":
|
|
15781
|
+
"referencedDeclaration": 16426,
|
|
15782
15782
|
"type": "abi",
|
|
15783
15783
|
"value": "abi"
|
|
15784
15784
|
},
|
|
@@ -15854,7 +15854,7 @@
|
|
|
15854
15854
|
"overloadedDeclarations": [
|
|
15855
15855
|
null
|
|
15856
15856
|
],
|
|
15857
|
-
"referencedDeclaration":
|
|
15857
|
+
"referencedDeclaration": 16439,
|
|
15858
15858
|
"type": "msg",
|
|
15859
15859
|
"value": "msg"
|
|
15860
15860
|
},
|
|
@@ -17178,10 +17178,10 @@
|
|
|
17178
17178
|
}
|
|
17179
17179
|
],
|
|
17180
17180
|
"overloadedDeclarations": [
|
|
17181
|
-
|
|
17182
|
-
|
|
17181
|
+
16442,
|
|
17182
|
+
16443
|
|
17183
17183
|
],
|
|
17184
|
-
"referencedDeclaration":
|
|
17184
|
+
"referencedDeclaration": 16442,
|
|
17185
17185
|
"type": "function (bool) pure",
|
|
17186
17186
|
"value": "require"
|
|
17187
17187
|
},
|
|
@@ -17482,12 +17482,12 @@
|
|
|
17482
17482
|
}
|
|
17483
17483
|
},
|
|
17484
17484
|
"links": {},
|
|
17485
|
-
"address": "
|
|
17486
|
-
"transactionHash": "
|
|
17485
|
+
"address": "0x2E2808D3bC534b371366Fad287421541DCFe8003",
|
|
17486
|
+
"transactionHash": "0xadc5cb7c1a2badd727c93f1492b961e2aab57e4ae978cfe90751347d04b66380"
|
|
17487
17487
|
}
|
|
17488
17488
|
},
|
|
17489
17489
|
"schemaVersion": "3.4.3",
|
|
17490
|
-
"updatedAt": "2022-04-
|
|
17490
|
+
"updatedAt": "2022-04-24T04:06:38.337Z",
|
|
17491
17491
|
"networkType": "ethereum",
|
|
17492
17492
|
"devdoc": {
|
|
17493
17493
|
"methods": {
|