ETH Price: $3,390.15 (+5.24%)

Contract

0xaed0472b498548B1354925d222B832b99Bb2EC60
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Swap212804052024-11-27 16:53:3553 days ago1732726415IN
Multichain: ANY Conversion
0 ETH0.0025967233.69002222
Swap194503512024-03-16 22:14:35309 days ago1710627275IN
Multichain: ANY Conversion
0 ETH0.002586633.5587664
Swap194502992024-03-16 22:04:11309 days ago1710626651IN
Multichain: ANY Conversion
0 ETH0.0024648931.98959113
Swap194502412024-03-16 21:52:23309 days ago1710625943IN
Multichain: ANY Conversion
0 ETH0.0025011832.46563761
Swap192647352024-02-19 22:26:23335 days ago1708381583IN
Multichain: ANY Conversion
0 ETH0.0033113451.13814509
Swap192647212024-02-19 22:23:35335 days ago1708381415IN
Multichain: ANY Conversion
0 ETH0.0046304956.57916613
Swap189829802024-01-11 10:05:59374 days ago1704967559IN
Multichain: ANY Conversion
0 ETH0.0018640524.18804867
Swap185543792023-11-12 7:35:23435 days ago1699774523IN
Multichain: ANY Conversion
0 ETH0.0011594719.33980285
Swap185152302023-11-06 20:10:23440 days ago1699301423IN
Multichain: ANY Conversion
0 ETH0.002410531.27890411
Swap184859562023-11-02 17:43:59444 days ago1698947039IN
Multichain: ANY Conversion
0 ETH0.0023819832.96177216
Swap182729612023-10-03 22:24:47474 days ago1696371887IN
Multichain: ANY Conversion
0 ETH0.000564639.41791512
Swap182729532023-10-03 22:23:11474 days ago1696371791IN
Multichain: ANY Conversion
0 ETH0.0008556911.1069901
Swap181775012023-09-20 13:48:59487 days ago1695217739IN
Multichain: ANY Conversion
0 ETH0.0010838214.06375808
Swap181770572023-09-20 12:19:35487 days ago1695212375IN
Multichain: ANY Conversion
0 ETH0.0009417212.21992453
Swap181770412023-09-20 12:16:23487 days ago1695212183IN
Multichain: ANY Conversion
0 ETH0.0009275212.03565541
Swap181133062023-09-11 13:07:35496 days ago1694437655IN
Multichain: ANY Conversion
0 ETH0.0015184418.55364374
Swap180771202023-09-06 11:30:47501 days ago1693999847IN
Multichain: ANY Conversion
0 ETH0.0019986125.934153
Swap180488622023-09-02 12:34:47505 days ago1693658087IN
Multichain: ANY Conversion
0 ETH0.0010739313.93540751
Swap176399402023-07-07 5:45:47563 days ago1688708747IN
Multichain: ANY Conversion
0 ETH0.0019117723.35963271
Swap176381392023-07-06 23:42:47563 days ago1688686967IN
Multichain: ANY Conversion
0 ETH0.0020012527.6886539
Swap175161582023-06-19 20:27:35580 days ago1687206455IN
Multichain: ANY Conversion
0 ETH0.0013510518.6958603
Swap174325412023-06-08 2:09:59592 days ago1686190199IN
Multichain: ANY Conversion
0 ETH0.0014209219.66274748
Swap174322162023-06-08 1:03:23592 days ago1686186203IN
Multichain: ANY Conversion
0 ETH0.0015044218.38226513
Swap173294932023-05-24 13:59:11606 days ago1684936751IN
Multichain: ANY Conversion
0 ETH0.0056981378.85054282
Swap173289022023-05-24 11:59:35606 days ago1684929575IN
Multichain: ANY Conversion
0 ETH0.0023297932.23430006
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SwapTokens

Compiler Version
v0.8.10+commit.fc410830

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, GNU GPLv2 license
/**
 *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

Contract ABI

[{"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"}]

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

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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.