Address io1hl5ymympjzhqg88esg88qlgudw40td5w6zdkrf

Contract Overview

Balance:
0 IOTX

IOTX Value:
$ 0

Token:
Txn Hash
Block
From
To
Value [Txn Fee]
21a86a0bd67cfe4378eb52a7fdd6c95b8b95a31efe7cb6ed204b1f08d9e32e4b 25021749 2023-07-31 13:56:10 +0000 UTC 9 months ago io1y8mgwh40kfme0fsu2us709d64fhjnlq6xlzd3t  IN    Contract: CrosschainTokenCashierRouter2 400500 IOTX 0.171765
dcd0257e5d5c73a412ba741afd8aa297ab49275e8cefd1c7ce3ce8cb1e559090 25019411 2023-07-31 10:41:20 +0000 UTC 9 months ago io1jytltm6p2ecfpyhhjaq2j7ck8r9rnxsqy0syfq  IN    Contract: CrosschainTokenCashierRouter2 1000 IOTX 0.171765
d0273a843dbcfe672e17cc36624f811ac8d52d8e9a86057054234cd1a6788f96 25010152 2023-07-30 21:49:45 +0000 UTC 9 months ago io1jrcuhyedh72rs4p5csx48hehylcqu5934mg7ty  IN    Contract: CrosschainTokenCashierRouter2 199074 IOTX 0.171765
c75b3820f468a00723ed495fd14135f163fd981789d9dae8e441d2cd133a83f0 24999023 2023-07-30 06:22:05 +0000 UTC 9 months ago io1emrec4ges35tcprn24m5llphpz8pjqn40gj83m  IN    Contract: CrosschainTokenCashierRouter2 25 IOTX 0.171765
d4070b18bb8739be42389503fdd36870e238be8b75392a27abc6e2763093598b 24945082 2023-07-27 03:25:55 +0000 UTC 10 months ago io1grwkvpha820gy70tt385twwwmf0ccqzguhwsfl  IN    Contract: CrosschainTokenCashierRouter2 16 IOTX 0.171765
482d3afc19550270ad1747cbcb63dfac8bdebd197c12fecd47bd277ebe5c13e9 24932871 2023-07-26 10:28:05 +0000 UTC 10 months ago io1h4st2acwte30fwhegt2tmw08xurenn7taghgnw  IN    Contract: CrosschainTokenCashierRouter2 2015 IOTX 0.171936
bdc1813c8e001c110de7f1f242f6d8e3f96cf246fa4f1c4d0a3c087e06f020ad 24926949 2023-07-26 02:14:35 +0000 UTC 10 months ago io1jrcuhyedh72rs4p5csx48hehylcqu5934mg7ty  IN    Contract: CrosschainTokenCashierRouter2 200297 IOTX 0.171765
21ae091bc8174bdc56787b83665c1e0db603dcee9a21f978583acdb5b043a18c 24924608 2023-07-25 22:59:30 +0000 UTC 10 months ago io1jrcuhyedh72rs4p5csx48hehylcqu5934mg7ty  IN    Contract: CrosschainTokenCashierRouter2 197318 IOTX 0.171765
070186a88ee488fa80d850fb751297769546c9f06e862e81c3822c947a66e33c 24923624 2023-07-25 21:37:25 +0000 UTC 10 months ago io1jrcuhyedh72rs4p5csx48hehylcqu5934mg7ty  IN    Contract: CrosschainTokenCashierRouter2 197693 IOTX 0.171765
ce1236453293b1ae3dc71da4b289ea92223d5a266cf17d9d9c6c77c9ae4948cc 24921300 2023-07-25 18:23:45 +0000 UTC 10 months ago io1ksau3ex8ck78m2jrnw0ktyfg487ysmjmcjc52v  IN    Contract: CrosschainTokenCashierRouter2 272 IOTX 0.171765
d93e4b04c4cd9931b005efd0656b8135f8ec15177644d67666ffb04f354f1bec 24918794 2023-07-25 14:54:55 +0000 UTC 10 months ago io1y8mgwh40kfme0fsu2us709d64fhjnlq6xlzd3t  IN    Contract: CrosschainTokenCashierRouter2 400500 IOTX 0.171765
1b997aca85b91336bba49a4c6109a1b0b93a58e9df64b48dd43a08f660c3b538 24916229 2023-07-25 11:20:55 +0000 UTC 10 months ago io1jrcuhyedh72rs4p5csx48hehylcqu5934mg7ty  IN    Contract: CrosschainTokenCashierRouter2 195724 IOTX 0.171765
65b5f974d8ea314f94cd849a0fcb71709aa7291e5ec29c59a727917904a9aff0 24913174 2023-07-25 07:06:15 +0000 UTC 10 months ago io1jrcuhyedh72rs4p5csx48hehylcqu5934mg7ty  IN    Contract: CrosschainTokenCashierRouter2 195095 IOTX 0.171765
339a57f7cdeb5c98fe712377eac6a84fb35582071237e0d9d143d138580056ab 24911819 2023-07-25 05:13:20 +0000 UTC 10 months ago io1jrcuhyedh72rs4p5csx48hehylcqu5934mg7ty  IN    Contract: CrosschainTokenCashierRouter2 193996 IOTX 0.171765
7309766e76a3d1dcfeb420d01310e9d9456b41ab2ae8d6149baa557144365dda 24911314 2023-07-25 04:31:15 +0000 UTC 10 months ago io1jrcuhyedh72rs4p5csx48hehylcqu5934mg7ty  IN    Contract: CrosschainTokenCashierRouter2 193711.82 IOTX 0.171765
7de8d3a6d18834a2e020cc1dd3d00f316639f7ec6806dca59a83875af1fc3bfa 24907291 2023-07-24 22:56:00 +0000 UTC 10 months ago io1lhac5hsvxq88czp90df37v5q79messn65qj2js  IN    Contract: CrosschainTokenCashierRouter2 9900 IOTX 0.171765
8c3cc2cc66bad87c3b9c51964d2b303a4369e9c5c03a6ab73e38d7a55f5844e6 24906577 2023-07-24 21:56:30 +0000 UTC 10 months ago io1jrcuhyedh72rs4p5csx48hehylcqu5934mg7ty  IN    Contract: CrosschainTokenCashierRouter2 192897 IOTX 0.171765
64a835cbefd6f16b5011c5eb5d017b4b3ee4230adf9be66e4b97f410108a5192 24847075 2023-07-21 11:17:00 +0000 UTC 10 months ago io1r7kv2vp7ph9tw8u8svyuy89vd7x6hgzq6lsxld  IN    Contract: CrosschainTokenCashierRouter2 86450 IOTX 0.171765
f4231bb6e87f81ae13cfe8b9cf308bd0b1902734c2c8bcc679800249fee27876 24830233 2023-07-20 11:53:15 +0000 UTC 10 months ago io1mjzc5xh0m2e2q78l9edzjrurfdh4gm22v4hmzr  IN    Contract: CrosschainTokenCashierRouter2 1457 IOTX 0.171765
3e928e00beada497ce00586c775fbaa07f965fda60f123b8f312d82169390c0d 24828938 2023-07-20 10:05:20 +0000 UTC 10 months ago io1572jrtg9eem8q3cy3mdg5d7ulnfx52sc5np63c  IN    Contract: CrosschainTokenCashierRouter2 1070 IOTX 0.171765
672051293f6d4ed899f8ef97379820410c96207bb160a6f81cf5e9d1ca5ed9df 24827448 2023-07-20 08:01:10 +0000 UTC 10 months ago io1572jrtg9eem8q3cy3mdg5d7ulnfx52sc5np63c  IN    Contract: CrosschainTokenCashierRouter2 510 IOTX 0.365410
f4c4ed8dac0d5e9789214962e348435a49a69f4820b334cf5b817da59bd93030 24817327 2023-07-19 17:57:45 +0000 UTC 10 months ago io1zzj2eufz5e693xqmx837qpad9xtpwqf4gwqeke  IN    Contract: CrosschainTokenCashierRouter2 1685 IOTX 0.171765
03ae3a4bdebc8e70f06ef101db5caaded0757a846a52edb7ef490670ae1939aa 24817265 2023-07-19 17:52:35 +0000 UTC 10 months ago io1zzj2eufz5e693xqmx837qpad9xtpwqf4gwqeke  IN    Contract: CrosschainTokenCashierRouter2 64 IOTX 0.171765
dc60e506a8622a311f21c79fc62f704a3f3f895152eff1b7504dc8c6083791d6 24807226 2023-07-19 03:56:00 +0000 UTC 10 months ago io19msajm9hv4u793jvnwcy23plkwzffywjh257sz  IN    Contract: CrosschainTokenCashierRouter2 0 IOTX 0.027729
c20cdffa441862c3fd82b30e3b0606fdf6502503e0b78ce4a283c99dcfa0c197 24807174 2023-07-19 03:51:40 +0000 UTC 10 months ago io19msajm9hv4u793jvnwcy23plkwzffywjh257sz  IN    Contract: CrosschainTokenCashierRouter2 0 IOTX 0.047629
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CrosschainTokenCashierRouter2

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

pragma solidity >=0.8.0;

interface ICashier {
    function depositTo(address _token, address _to, uint256 _amount) external payable;
}

interface ICrosschainToken {
    function deposit(uint256 _amount) external;
    function coToken() external view returns (address);
}

interface WToken {
    function deposit() external payable;
}

contract CrosschainTokenCashierRouter2 {

    address public ciotx;
    WToken public wiotx;

    constructor(ICrosschainToken _ciotx) public {
        wiotx = WToken(address(_ciotx.coToken()));
        ciotx = address(_ciotx);
        _approve(ciotx, address(wiotx));
    }

    function _approve(address _ctoken, address _coToken) private {
        require(safeApprove(_coToken, _ctoken, type(uint256).max), "failed to approve allowance to crosschain token");
    }

    function approveCrosschainToken(address _crosschainToken) public {
        _approve(_crosschainToken, ICrosschainToken(_crosschainToken).coToken());
    }

    function _depositToCashier(address _token, address _cashier, address _to, uint256 _amount, uint256 _value) private {
        ICrosschainToken(_token).deposit(_amount);
        require(safeApprove(_token, _cashier, _amount), "failed to approve allowance to cashier");
        ICashier(_cashier).depositTo{value: _value}(_token, _to, _amount);
    }

    function depositCoinTo(address _cashier, address _to, uint256 _amount) public payable {
        require(_amount <= msg.value, "invalid amount");
        wiotx.deposit{value: _amount}();
        _depositToCashier(ciotx, _cashier, _to, _amount, msg.value - _amount);
    }

    function depositTo(address _cashier, address _crosschainToken, address _to, uint256 _amount) public payable {
        require(_crosschainToken != address(0), "invalid token");
        require(safeTransferFrom(ICrosschainToken(_crosschainToken).coToken(), msg.sender, address(this), _amount), "failed to transfer token");
        _depositToCashier(_crosschainToken, _cashier, _to, _amount, msg.value);
    }

    function safeTransferFrom(address _token, address _from, address _to, uint256 _amount) internal returns (bool) {
        // selector = bytes4(keccak256(bytes('transferFrom(address,address,uint256)')))
        (bool success, bytes memory data) = _token.call(abi.encodeWithSelector(0x23b872dd, _from, _to, _amount));
        return success && (data.length == 0 || abi.decode(data, (bool)));
    }

    function safeApprove(address _token, address _spender, uint256 _amount) internal returns (bool) {
        // selector = bytes4(keccak256(bytes('approve(address,uint256)')))
        (bool success, bytes memory data) = _token.call(abi.encodeWithSelector(0x095ea7b3, _spender, _amount));
        return success && (data.length == 0 || abi.decode(data, (bool)));
    }
}

Contract ABI

[{"inputs":[{"internalType":"contract ICrosschainToken","name":"_ciotx","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"_crosschainToken","type":"address"}],"name":"approveCrosschainToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"ciotx","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_cashier","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"depositCoinTo","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_cashier","type":"address"},{"internalType":"address","name":"_crosschainToken","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"depositTo","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"wiotx","outputs":[{"internalType":"contract WToken","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

Contract Creation Code

60806040526004361061004a5760003560e01c80630d71f7ca1461004f57806372eb521e1461007157806388052d2514610084578063c479256b146100af578063cfb83718146100c2575b600080fd5b34801561005b57600080fd5b5061006f61006a3660046105ca565b6100d7565b005b61006f61007f366004610609565b610154565b34801561009057600080fd5b5061009961022e565b6040516100a691906106f2565b60405180910390f35b61006f6100bd366004610659565b61023d565b3480156100ce57600080fd5b506100996102ef565b61015181826001600160a01b0316637f9864f76040518163ffffffff1660e01b815260040160206040518083038186803b15801561011457600080fd5b505afa158015610128573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014c91906105ed565b6102fe565b50565b6001600160a01b0383166101835760405162461bcd60e51b815260040161017a906107ba565b60405180910390fd5b6101ff836001600160a01b0316637f9864f76040518163ffffffff1660e01b815260040160206040518083038186803b1580156101bf57600080fd5b505afa1580156101d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101f791906105ed565b33308461032b565b61021b5760405162461bcd60e51b815260040161017a90610827565b6102288385848434610404565b50505050565b6000546001600160a01b031681565b3481111561025d5760405162461bcd60e51b815260040161017a90610792565b600160009054906101000a90046001600160a01b03166001600160a01b031663d0e30db0826040518263ffffffff1660e01b81526004016000604051808303818588803b1580156102ad57600080fd5b505af11580156102c1573d6000803e3d6000fd5b50506000546102ea93506001600160a01b0316915085905084846102e58134610867565b610404565b505050565b6001546001600160a01b031681565b61030b81836000196104f4565b6103275760405162461bcd60e51b815260040161017a90610743565b5050565b6000806000866001600160a01b03166323b872dd87878760405160240161035493929190610706565b6040516020818303038152906040529060e01b6020820180516001600160e01b03838183161783525050505060405161038d91906106b9565b6000604051808303816000865af19150503d80600081146103ca576040519150601f19603f3d011682016040523d82523d6000602084013e6103cf565b606091505b50915091508180156103f95750805115806103f95750808060200190518101906103f99190610699565b979650505050505050565b60405163b6b55f2560e01b81526001600160a01b0386169063b6b55f259061043090859060040161085e565b600060405180830381600087803b15801561044a57600080fd5b505af115801561045e573d6000803e3d6000fd5b5050505061046d8585846104f4565b6104895760405162461bcd60e51b815260040161017a906107e1565b604051633c84c56760e21b81526001600160a01b0385169063f213159c9083906104bb90899088908890600401610706565b6000604051808303818588803b1580156104d457600080fd5b505af11580156104e8573d6000803e3d6000fd5b50505050505050505050565b6000806000856001600160a01b031663095ea7b3868660405160240161051b92919061072a565b6040516020818303038152906040529060e01b6020820180516001600160e01b03838183161783525050505060405161055491906106b9565b6000604051808303816000865af19150503d8060008114610591576040519150601f19603f3d011682016040523d82523d6000602084013e610596565b606091505b50915091508180156105c05750805115806105c05750808060200190518101906105c09190610699565b9695505050505050565b6000602082840312156105db578081fd5b81356105e68161088a565b9392505050565b6000602082840312156105fe578081fd5b81516105e68161088a565b6000806000806080858703121561061e578283fd5b84356106298161088a565b935060208501356106398161088a565b925060408501356106498161088a565b9396929550929360600135925050565b60008060006060848603121561066d578283fd5b83356106788161088a565b925060208401356106888161088a565b929592945050506040919091013590565b6000602082840312156106aa578081fd5b815180151581146105e6578182fd5b60008251815b818110156106d957602081860181015185830152016106bf565b818111156106e75782828501525b509190910192915050565b6001600160a01b0391909116815260200190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b03929092168252602082015260400190565b6020808252602f908201527f6661696c656420746f20617070726f766520616c6c6f77616e636520746f206360408201526e3937b9b9b1b430b4b7103a37b5b2b760891b606082015260800190565b6020808252600e908201526d1a5b9d985b1a5908185b5bdd5b9d60921b604082015260600190565b6020808252600d908201526c34b73b30b634b2103a37b5b2b760991b604082015260600190565b60208082526026908201527f6661696c656420746f20617070726f766520616c6c6f77616e636520746f206360408201526530b9b434b2b960d11b606082015260800190565b60208082526018908201527f6661696c656420746f207472616e7366657220746f6b656e0000000000000000604082015260600190565b90815260200190565b60008282101561088557634e487b7160e01b81526011600452602481fd5b500390565b6001600160a01b038116811461015157600080fdfea26469706673582212204466174f890189bb52ba0642ea1155f416d8cbc7f86119d13e3b5fc5f84c7f3064736f6c63430008000033

Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.