More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 657 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Swap | 21280405 | 53 days ago | IN | 0 ETH | 0.00259672 | ||||
Swap | 19450351 | 309 days ago | IN | 0 ETH | 0.0025866 | ||||
Swap | 19450299 | 309 days ago | IN | 0 ETH | 0.00246489 | ||||
Swap | 19450241 | 309 days ago | IN | 0 ETH | 0.00250118 | ||||
Swap | 19264735 | 335 days ago | IN | 0 ETH | 0.00331134 | ||||
Swap | 19264721 | 335 days ago | IN | 0 ETH | 0.00463049 | ||||
Swap | 18982980 | 374 days ago | IN | 0 ETH | 0.00186405 | ||||
Swap | 18554379 | 435 days ago | IN | 0 ETH | 0.00115947 | ||||
Swap | 18515230 | 440 days ago | IN | 0 ETH | 0.0024105 | ||||
Swap | 18485956 | 444 days ago | IN | 0 ETH | 0.00238198 | ||||
Swap | 18272961 | 474 days ago | IN | 0 ETH | 0.00056463 | ||||
Swap | 18272953 | 474 days ago | IN | 0 ETH | 0.00085569 | ||||
Swap | 18177501 | 487 days ago | IN | 0 ETH | 0.00108382 | ||||
Swap | 18177057 | 487 days ago | IN | 0 ETH | 0.00094172 | ||||
Swap | 18177041 | 487 days ago | IN | 0 ETH | 0.00092752 | ||||
Swap | 18113306 | 496 days ago | IN | 0 ETH | 0.00151844 | ||||
Swap | 18077120 | 501 days ago | IN | 0 ETH | 0.00199861 | ||||
Swap | 18048862 | 505 days ago | IN | 0 ETH | 0.00107393 | ||||
Swap | 17639940 | 563 days ago | IN | 0 ETH | 0.00191177 | ||||
Swap | 17638139 | 563 days ago | IN | 0 ETH | 0.00200125 | ||||
Swap | 17516158 | 580 days ago | IN | 0 ETH | 0.00135105 | ||||
Swap | 17432541 | 592 days ago | IN | 0 ETH | 0.00142092 | ||||
Swap | 17432216 | 592 days ago | IN | 0 ETH | 0.00150442 | ||||
Swap | 17329493 | 606 days ago | IN | 0 ETH | 0.00569813 | ||||
Swap | 17328902 | 606 days ago | IN | 0 ETH | 0.00232979 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
SwapTokens
Compiler Version
v0.8.10+commit.fc410830
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-12-15 */ // SPDX-License-Identifier: GPL-3.0-or-later pragma solidity ^0.8.6; // helper methods for interacting with ERC20 tokens library TransferHelper { function safeTransfer(address token, address to, uint value) internal { // bytes4(keccak256(bytes('transfer(address,uint256)'))); (bool success, bytes memory data) = token.call(abi.encodeWithSelector(0xa9059cbb, to, value)); require(success && (data.length == 0 || abi.decode(data, (bool))), 'TransferHelper: TRANSFER_FAILED'); } function safeTransferFrom(address token, address from, address to, uint value) internal { // bytes4(keccak256(bytes('transferFrom(address,address,uint256)'))); (bool success, bytes memory data) = token.call(abi.encodeWithSelector(0x23b872dd, from, to, value)); require(success && (data.length == 0 || abi.decode(data, (bool))), 'TransferHelper: TRANSFER_FROM_FAILED'); } } contract SwapTokens { address public immutable srcToken; address public immutable dstToken; // eg. if swap rate 1:100 (src:dst), then numeratorOfRate=100, denominatorOfRate=1 // eg. if swap rate 2:3 (src:dst), then numeratorOfRate=3, denominatorOfRate=2 uint256 public immutable numeratorOfRate; uint256 public immutable denominatorOfRate; uint256 public latestWithdrawRequestTime; uint256 public latestWithdrawRequestAmount; uint256 public constant minWithdrawApprovalInterval = 2 days; address public owner; modifier onlyOwner() { require(msg.sender == owner, "only owner"); _; } event Swapped(address indexed sender, uint256 indexed srcAmount, uint256 indexed dstAmount); constructor(address _srcToken, address _dstToken, uint256 _numeratorOfRate, uint256 _denominatorOfRate) { srcToken = _srcToken; dstToken = _dstToken; numeratorOfRate = _numeratorOfRate; denominatorOfRate = _denominatorOfRate; owner = msg.sender; } function transferOwnership(address newOwner) external onlyOwner { require(newOwner != address(0), "the new owner is the zero address"); owner = newOwner; } /// @dev swap with `srcAmount` of `srcToken` to get `dstToken`. /// Returns swap result of `dstAmount` of `dstToken`. /// Requirements: /// - `msg.sender` must have approved at least `srcAmount` `srcToken` to `address(this)`. /// - `address(this)` must have at least `dstAmount` `dstToken`. function swap(uint256 srcAmount) external returns (uint256 dstAmount) { dstAmount = srcAmount * numeratorOfRate / denominatorOfRate; TransferHelper.safeTransferFrom(srcToken, msg.sender, address(this), srcAmount); TransferHelper.safeTransfer(dstToken, msg.sender, dstAmount); emit Swapped(msg.sender, srcAmount, dstAmount); return dstAmount; } function withdrawRequest(uint256 amount) external onlyOwner { if (amount > 0) { latestWithdrawRequestTime = block.timestamp; latestWithdrawRequestAmount = amount; } else { latestWithdrawRequestTime = 0; latestWithdrawRequestAmount = 0; } } function withdraw() external onlyOwner { require( latestWithdrawRequestTime > 0 && latestWithdrawRequestAmount > 0, "please do withdraw request firstly" ); require( latestWithdrawRequestTime + minWithdrawApprovalInterval < block.timestamp, "the minimum withdraw approval interval is not satisfied" ); uint256 amount = latestWithdrawRequestAmount; latestWithdrawRequestTime = 0; latestWithdrawRequestAmount = 0; TransferHelper.safeTransfer(dstToken, msg.sender, amount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_srcToken","type":"address"},{"internalType":"address","name":"_dstToken","type":"address"},{"internalType":"uint256","name":"_numeratorOfRate","type":"uint256"},{"internalType":"uint256","name":"_denominatorOfRate","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":true,"internalType":"uint256","name":"srcAmount","type":"uint256"},{"indexed":true,"internalType":"uint256","name":"dstAmount","type":"uint256"}],"name":"Swapped","type":"event"},{"inputs":[],"name":"denominatorOfRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dstToken","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestWithdrawRequestAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestWithdrawRequestTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minWithdrawApprovalInterval","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"numeratorOfRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"srcToken","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"srcAmount","type":"uint256"}],"name":"swap","outputs":[{"internalType":"uint256","name":"dstAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdrawRequest","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
61010060405234801561001157600080fd5b506040516109fb3803806109fb83398101604081905261003091610081565b6001600160a01b039384166080529190921660a05260c09190915260e052600280546001600160a01b031916331790556100c4565b80516001600160a01b038116811461007c57600080fd5b919050565b6000806000806080858703121561009757600080fd5b6100a085610065565b93506100ae60208601610065565b6040860151606090960151949790965092505050565b60805160a05160c05160e0516108dc61011f6000396000818160da015261039601526000818161018d01526103ba0152600081816101b401528181610325015261041c01526000818161011e01526103f001526108dc6000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806394b918de1161007157806394b918de1461016b578063b95f11c81461017e578063bcd2d6b014610188578063d08648fd146101af578063e38052ec146101d6578063f2fde38b146101df57600080fd5b80631ac68b66146100b95780632e4f7f29146100d55780633ccfd60b146100fc57806374899a7e146101065780637cf8ed0d146101195780638da5cb5b14610158575b600080fd5b6100c260005481565b6040519081526020015b60405180910390f35b6100c27f000000000000000000000000000000000000000000000000000000000000000081565b6101046101f2565b005b61010461011436600461076d565b61034e565b6101407f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100cc565b600254610140906001600160a01b031681565b6100c261017936600461076d565b610392565b6100c26202a30081565b6100c27f000000000000000000000000000000000000000000000000000000000000000081565b6101407f000000000000000000000000000000000000000000000000000000000000000081565b6100c260015481565b6101046101ed366004610786565b610476565b6002546001600160a01b031633146102255760405162461bcd60e51b815260040161021c906107b6565b60405180910390fd5b6000805411801561023857506000600154115b61028f5760405162461bcd60e51b815260206004820152602260248201527f706c6561736520646f20776974686472617720726571756573742066697273746044820152616c7960f01b606482015260840161021c565b426202a3006000546102a191906107f0565b106103145760405162461bcd60e51b815260206004820152603760248201527f746865206d696e696d756d20776974686472617720617070726f76616c20696e60448201527f74657276616c206973206e6f7420736174697366696564000000000000000000606482015260840161021c565b60018054600080805590915561034b7f00000000000000000000000000000000000000000000000000000000000000003383610522565b50565b6002546001600160a01b031633146103785760405162461bcd60e51b815260040161021c906107b6565b80156103875742600055600155565b600080805560015550565b60007f00000000000000000000000000000000000000000000000000000000000000006103df7f000000000000000000000000000000000000000000000000000000000000000084610808565b6103e99190610827565b90506104177f000000000000000000000000000000000000000000000000000000000000000033308561063d565b6104427f00000000000000000000000000000000000000000000000000000000000000003383610522565b6040518190839033907f3a9a9f34f5831e9c8ecb66ab3aa308b2ff31eaca434615f6c9cadc656a9af71c90600090a4919050565b6002546001600160a01b031633146104a05760405162461bcd60e51b815260040161021c906107b6565b6001600160a01b0381166105005760405162461bcd60e51b815260206004820152602160248201527f746865206e6577206f776e657220697320746865207a65726f206164647265736044820152607360f81b606482015260840161021c565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b179052915160009283929087169161057e9190610849565b6000604051808303816000865af19150503d80600081146105bb576040519150601f19603f3d011682016040523d82523d6000602084013e6105c0565b606091505b50915091508180156105ea5750805115806105ea5750808060200190518101906105ea9190610884565b6106365760405162461bcd60e51b815260206004820152601f60248201527f5472616e7366657248656c7065723a205452414e534645525f4641494c454400604482015260640161021c565b5050505050565b604080516001600160a01b0385811660248301528481166044830152606480830185905283518084039091018152608490920183526020820180516001600160e01b03166323b872dd60e01b17905291516000928392908816916106a19190610849565b6000604051808303816000865af19150503d80600081146106de576040519150601f19603f3d011682016040523d82523d6000602084013e6106e3565b606091505b509150915081801561070d57508051158061070d57508080602001905181019061070d9190610884565b6107655760405162461bcd60e51b8152602060048201526024808201527f5472616e7366657248656c7065723a205452414e534645525f46524f4d5f46416044820152631253115160e21b606482015260840161021c565b505050505050565b60006020828403121561077f57600080fd5b5035919050565b60006020828403121561079857600080fd5b81356001600160a01b03811681146107af57600080fd5b9392505050565b6020808252600a908201526937b7363c9037bbb732b960b11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008219821115610803576108036107da565b500190565b6000816000190483118215151615610822576108226107da565b500290565b60008261084457634e487b7160e01b600052601260045260246000fd5b500490565b6000825160005b8181101561086a5760208186018101518583015201610850565b81811115610879576000828501525b509190910192915050565b60006020828403121561089657600080fd5b815180151581146107af57600080fdfea2646970667358221220e225746ce5f62f7790b98b9f0752e2c0745178698785eca8194fec76a9370a2264736f6c634300080a0033000000000000000000000000f99d58e463a2e07e5692127302c20a191861b4d600000000000000000000000065ef703f5594d2573eb71aaf55bc0cb548492df400000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100b45760003560e01c806394b918de1161007157806394b918de1461016b578063b95f11c81461017e578063bcd2d6b014610188578063d08648fd146101af578063e38052ec146101d6578063f2fde38b146101df57600080fd5b80631ac68b66146100b95780632e4f7f29146100d55780633ccfd60b146100fc57806374899a7e146101065780637cf8ed0d146101195780638da5cb5b14610158575b600080fd5b6100c260005481565b6040519081526020015b60405180910390f35b6100c27f000000000000000000000000000000000000000000000000000000000000000181565b6101046101f2565b005b61010461011436600461076d565b61034e565b6101407f000000000000000000000000f99d58e463a2e07e5692127302c20a191861b4d681565b6040516001600160a01b0390911681526020016100cc565b600254610140906001600160a01b031681565b6100c261017936600461076d565b610392565b6100c26202a30081565b6100c27f000000000000000000000000000000000000000000000000000000000000000181565b6101407f00000000000000000000000065ef703f5594d2573eb71aaf55bc0cb548492df481565b6100c260015481565b6101046101ed366004610786565b610476565b6002546001600160a01b031633146102255760405162461bcd60e51b815260040161021c906107b6565b60405180910390fd5b6000805411801561023857506000600154115b61028f5760405162461bcd60e51b815260206004820152602260248201527f706c6561736520646f20776974686472617720726571756573742066697273746044820152616c7960f01b606482015260840161021c565b426202a3006000546102a191906107f0565b106103145760405162461bcd60e51b815260206004820152603760248201527f746865206d696e696d756d20776974686472617720617070726f76616c20696e60448201527f74657276616c206973206e6f7420736174697366696564000000000000000000606482015260840161021c565b60018054600080805590915561034b7f00000000000000000000000065ef703f5594d2573eb71aaf55bc0cb548492df43383610522565b50565b6002546001600160a01b031633146103785760405162461bcd60e51b815260040161021c906107b6565b80156103875742600055600155565b600080805560015550565b60007f00000000000000000000000000000000000000000000000000000000000000016103df7f000000000000000000000000000000000000000000000000000000000000000184610808565b6103e99190610827565b90506104177f000000000000000000000000f99d58e463a2e07e5692127302c20a191861b4d633308561063d565b6104427f00000000000000000000000065ef703f5594d2573eb71aaf55bc0cb548492df43383610522565b6040518190839033907f3a9a9f34f5831e9c8ecb66ab3aa308b2ff31eaca434615f6c9cadc656a9af71c90600090a4919050565b6002546001600160a01b031633146104a05760405162461bcd60e51b815260040161021c906107b6565b6001600160a01b0381166105005760405162461bcd60e51b815260206004820152602160248201527f746865206e6577206f776e657220697320746865207a65726f206164647265736044820152607360f81b606482015260840161021c565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b179052915160009283929087169161057e9190610849565b6000604051808303816000865af19150503d80600081146105bb576040519150601f19603f3d011682016040523d82523d6000602084013e6105c0565b606091505b50915091508180156105ea5750805115806105ea5750808060200190518101906105ea9190610884565b6106365760405162461bcd60e51b815260206004820152601f60248201527f5472616e7366657248656c7065723a205452414e534645525f4641494c454400604482015260640161021c565b5050505050565b604080516001600160a01b0385811660248301528481166044830152606480830185905283518084039091018152608490920183526020820180516001600160e01b03166323b872dd60e01b17905291516000928392908816916106a19190610849565b6000604051808303816000865af19150503d80600081146106de576040519150601f19603f3d011682016040523d82523d6000602084013e6106e3565b606091505b509150915081801561070d57508051158061070d57508080602001905181019061070d9190610884565b6107655760405162461bcd60e51b8152602060048201526024808201527f5472616e7366657248656c7065723a205452414e534645525f46524f4d5f46416044820152631253115160e21b606482015260840161021c565b505050505050565b60006020828403121561077f57600080fd5b5035919050565b60006020828403121561079857600080fd5b81356001600160a01b03811681146107af57600080fd5b9392505050565b6020808252600a908201526937b7363c9037bbb732b960b11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008219821115610803576108036107da565b500190565b6000816000190483118215151615610822576108226107da565b500290565b60008261084457634e487b7160e01b600052601260045260246000fd5b500490565b6000825160005b8181101561086a5760208186018101518583015201610850565b81811115610879576000828501525b509190910192915050565b60006020828403121561089657600080fd5b815180151581146107af57600080fdfea2646970667358221220e225746ce5f62f7790b98b9f0752e2c0745178698785eca8194fec76a9370a2264736f6c634300080a0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000f99d58e463a2e07e5692127302c20a191861b4d600000000000000000000000065ef703f5594d2573eb71aaf55bc0cb548492df400000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001
-----Decoded View---------------
Arg [0] : _srcToken (address): 0xf99d58e463A2E07e5692127302C20A191861b4D6
Arg [1] : _dstToken (address): 0x65Ef703f5594D2573eb71Aaf55BC0CB548492df4
Arg [2] : _numeratorOfRate (uint256): 1
Arg [3] : _denominatorOfRate (uint256): 1
-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 000000000000000000000000f99d58e463a2e07e5692127302c20a191861b4d6
Arg [1] : 00000000000000000000000065ef703f5594d2573eb71aaf55bc0cb548492df4
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000001
Deployed Bytecode Sourcemap
936:2919:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1315:40;;;;;;;;;160:25:1;;;148:2;133:18;1315:40:0;;;;;;;;1264:42;;;;;3252:600;;;:::i;:::-;;2921:323;;;;;;:::i;:::-;;:::i;963:33::-;;;;;;;;-1:-1:-1;;;;;545:32:1;;;527:51;;515:2;500:18;963:33:0;381:203:1;1480:20:0;;;;;-1:-1:-1;;;;;1480:20:0;;;2520:393;;;;;;:::i;:::-;;:::i;1411:60::-;;1465:6;1411:60;;1217:40;;;;;1003:33;;;;;1362:42;;;;;;2014:178;;;;;;:::i;:::-;;:::i;3252:600::-;1561:5;;-1:-1:-1;;;;;1561:5:0;1547:10;:19;1539:42;;;;-1:-1:-1;;;1539:42:0;;;;;;;:::i;:::-;;;;;;;;;3352:1:::1;3324:25:::0;::::1;:29;:64;;;;;3387:1;3357:27;;:31;3324:64;3302:148;;;::::0;-1:-1:-1;;;3302:148:0;;1421:2:1;3302:148:0::1;::::0;::::1;1403:21:1::0;1460:2;1440:18;;;1433:30;1499:34;1479:18;;;1472:62;-1:-1:-1;;;1550:18:1;;;1543:32;1592:19;;3302:148:0::1;1219:398:1::0;3302:148:0::1;3541:15;1465:6;3483:25;;:55;;;;:::i;:::-;:73;3461:178;;;::::0;-1:-1:-1;;;3461:178:0;;2089:2:1;3461:178:0::1;::::0;::::1;2071:21:1::0;2128:2;2108:18;;;2101:30;2167:34;2147:18;;;2140:62;2238:25;2218:18;;;2211:53;2281:19;;3461:178:0::1;1887:419:1::0;3461:178:0::1;3667:27;::::0;;3650:14:::1;3705:29:::0;;;3745:31;;;3787:57:::1;3815:8;3825:10;3667:27:::0;3787::::1;:57::i;:::-;3291:561;3252:600::o:0;2921:323::-;1561:5;;-1:-1:-1;;;;;1561:5:0;1547:10;:19;1539:42;;;;-1:-1:-1;;;1539:42:0;;;;;;;:::i;:::-;2996:10;;2992:245:::1;;3051:15;3023:25;:43:::0;3081:27:::1;:36:::0;3252:600::o;2992:245::-:1;3178:1;3150:29:::0;;;3194:27:::1;:31:::0;2921:323;:::o;2520:393::-;2571:17;2643;2613:27;2625:15;2613:9;:27;:::i;:::-;:47;;;;:::i;:::-;2601:59;;2671:79;2703:8;2713:10;2733:4;2740:9;2671:31;:79::i;:::-;2761:60;2789:8;2799:10;2811:9;2761:27;:60::i;:::-;2837:41;;2868:9;;2857;;2845:10;;2837:41;;;;;2520:393;;;:::o;2014:178::-;1561:5;;-1:-1:-1;;;;;1561:5:0;1547:10;:19;1539:42;;;;-1:-1:-1;;;1539:42:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2097:22:0;::::1;2089:68;;;::::0;-1:-1:-1;;;2089:68:0;;2908:2:1;2089:68:0::1;::::0;::::1;2890:21:1::0;2947:2;2927:18;;;2920:30;2986:34;2966:18;;;2959:62;-1:-1:-1;;;3037:18:1;;;3030:31;3078:19;;2089:68:0::1;2706:397:1::0;2089:68:0::1;2168:5;:16:::0;;-1:-1:-1;;;;;;2168:16:0::1;-1:-1:-1::0;;;;;2168:16:0;;;::::1;::::0;;;::::1;::::0;;2014:178::o;158:361::-;353:45;;;-1:-1:-1;;;;;3300:32:1;;;353:45:0;;;3282:51:1;3349:18;;;;3342:34;;;353:45:0;;;;;;;;;;3255:18:1;;;;353:45:0;;;;;;;-1:-1:-1;;;;;353:45:0;-1:-1:-1;;;353:45:0;;;342:57;;-1:-1:-1;;;;342:10:0;;;;:57;;353:45;342:57;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;306:93;;;;418:7;:57;;;;-1:-1:-1;430:11:0;;:16;;:44;;;461:4;450:24;;;;;;;;;;;;:::i;:::-;410:101;;;;-1:-1:-1;;;410:101:0;;4302:2:1;410:101:0;;;4284:21:1;4341:2;4321:18;;;4314:30;4380:33;4360:18;;;4353:61;4431:18;;410:101:0;4100:355:1;410:101:0;228:291;;158:361;;;:::o;527:402::-;752:51;;;-1:-1:-1;;;;;4718:15:1;;;752:51:0;;;4700:34:1;4770:15;;;4750:18;;;4743:43;4802:18;;;;4795:34;;;752:51:0;;;;;;;;;;4635:18:1;;;;752:51:0;;;;;;;-1:-1:-1;;;;;752:51:0;-1:-1:-1;;;752:51:0;;;741:63;;-1:-1:-1;;;;741:10:0;;;;:63;;752:51;741:63;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;705:99;;;;823:7;:57;;;;-1:-1:-1;835:11:0;;:16;;:44;;;866:4;855:24;;;;;;;;;;;;:::i;:::-;815:106;;;;-1:-1:-1;;;815:106:0;;5042:2:1;815:106:0;;;5024:21:1;5081:2;5061:18;;;5054:30;5120:34;5100:18;;;5093:62;-1:-1:-1;;;5171:18:1;;;5164:34;5215:19;;815:106:0;4840:400:1;815:106:0;615:314;;527:402;;;;:::o;196:180:1:-;255:6;308:2;296:9;287:7;283:23;279:32;276:52;;;324:1;321;314:12;276:52;-1:-1:-1;347:23:1;;196:180;-1:-1:-1;196:180:1:o;589:286::-;648:6;701:2;689:9;680:7;676:23;672:32;669:52;;;717:1;714;707:12;669:52;743:23;;-1:-1:-1;;;;;795:31:1;;785:42;;775:70;;841:1;838;831:12;775:70;864:5;589:286;-1:-1:-1;;;589:286:1:o;880:334::-;1082:2;1064:21;;;1121:2;1101:18;;;1094:30;-1:-1:-1;;;1155:2:1;1140:18;;1133:40;1205:2;1190:18;;880:334::o;1622:127::-;1683:10;1678:3;1674:20;1671:1;1664:31;1714:4;1711:1;1704:15;1738:4;1735:1;1728:15;1754:128;1794:3;1825:1;1821:6;1818:1;1815:13;1812:39;;;1831:18;;:::i;:::-;-1:-1:-1;1867:9:1;;1754:128::o;2311:168::-;2351:7;2417:1;2413;2409:6;2405:14;2402:1;2399:21;2394:1;2387:9;2380:17;2376:45;2373:71;;;2424:18;;:::i;:::-;-1:-1:-1;2464:9:1;;2311:168::o;2484:217::-;2524:1;2550;2540:132;;2594:10;2589:3;2585:20;2582:1;2575:31;2629:4;2626:1;2619:15;2657:4;2654:1;2647:15;2540:132;-1:-1:-1;2686:9:1;;2484:217::o;3387:426::-;3516:3;3554:6;3548:13;3579:1;3589:129;3603:6;3600:1;3597:13;3589:129;;;3701:4;3685:14;;;3681:25;;3675:32;3662:11;;;3655:53;3618:12;3589:129;;;3736:6;3733:1;3730:13;3727:48;;;3771:1;3762:6;3757:3;3753:16;3746:27;3727:48;-1:-1:-1;3791:16:1;;;;;3387:426;-1:-1:-1;;3387:426:1:o;3818:277::-;3885:6;3938:2;3926:9;3917:7;3913:23;3909:32;3906:52;;;3954:1;3951;3944:12;3906:52;3986:9;3980:16;4039:5;4032:13;4025:21;4018:5;4015:32;4005:60;;4061:1;4058;4051:12
Swarm Source
ipfs://e225746ce5f62f7790b98b9f0752e2c0745178698785eca8194fec76a9370a22
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.