Contract 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb 4

Contract Overview

Balance:
96.‍547895469629282611 AVAX

AVAX Value:
$2,239.91 (@ $23.20/AVAX)
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x8b2f4e059e6fe33c6ad16fbd842fb06f0ab4015090eba1a9bc2a422f69465dc7Batch Send Nativ...188257902022-08-19 1:46:5917 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00243640838
0xb2e66a6692c6b8ac8dce7bd8e21f1e5ec92cb35373cf870a937f33c067c80025Batch Send Nativ...188208172022-08-18 22:58:393 hrs 6 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00243595238
0xba4aedb9ca1ad970833e94f1fc2e28e2aa966d44bb6d598f401c22185e451bdcBatch Send Nativ...188207702022-08-18 22:57:003 hrs 7 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00338595238
0xaee5d69415b4673475f0d9f12d320809e77d47ec974562675ed6c6a9db03757fBatch Send Nativ...188192522022-08-18 22:05:193 hrs 59 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00243640838
0x290dcb896b561ef6f926437fb4c8eabda86ce0d00cc9113b1ebb997255a35b9dBatch Send Nativ...188189572022-08-18 21:55:194 hrs 9 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00243595238
0x97f4e37145db3e8ae1dfa59ff2a7aa5589d0b7ae1cc20e6bb87939a5550b11a5Batch Send Nativ...188188612022-08-18 21:52:044 hrs 12 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00338595238
0xd7df77ffc3c43241f124436e8486177f982b1f6df40862ce5efe158c5fe1b79aBatch Send Nativ...188176442022-08-18 21:10:194 hrs 54 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00243549638
0x92a7ae9d9db177da31bdf6e69785309d5163bd60be3c2b78c6a7b8f21dc73b29Deposit Native T...188166632022-08-18 20:36:545 hrs 28 mins ago0xafc29c2ae80c368a7350766b882b9c891e0c5a06 IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0.‍30173538512036 AVAX0.‍000771346369 26.‍8818
0xb31215a173e996e64eea871d7d89dccd22a8b46268fc8f1908fac1291bebb6e0Batch Send Nativ...188153382022-08-18 19:52:006 hrs 12 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00243549638
0xa92807c66c4bedd0090a6f19548e8ebdd5ae027e923646003963b2780c886280Batch Send Nativ...188147092022-08-18 19:30:206 hrs 34 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00338640838
0x56846c0d70ff8bf035566a1c8d53b82917195eed6c10a59869cbb478cbe3b68dBatch Send Nativ...188146092022-08-18 19:27:006 hrs 37 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00243549638
0xeaa899c8048fd54716c4ed6a423ce5cc8ba4ab81df75c723483ef85d9ed6c0d8Batch Send Nativ...188144632022-08-18 19:21:586 hrs 43 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00243595238
0x2ee6d70346d6b30e70d3b1edc9cdb583248c750c285fa5a15eb755ce5ec894d9Batch Send Nativ...188135352022-08-18 18:50:197 hrs 14 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍0024350438
0xc4d2367ad24126c95611dd7a67aa460cc617ee0e443cb8ca57ae2f3cd8117179Batch Send Nativ...188131952022-08-18 18:38:447 hrs 26 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00243595238
0xdd7d26f27df4cd35e71fc180d263945ed5acd7d8524bcfd68206cb11532edf13Batch Send Nativ...188125562022-08-18 18:16:597 hrs 47 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00243595238
0xb1edb597ce70156ceb89eafa82b2437374167e590ae8d33ec515de76184c18deBatch Send Nativ...188121732022-08-18 18:03:408 hrs 1 min ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00469056838
0x3b5683f1d5bbec8dad9a71e8d8d60250439fd7ab97205d836427513fcc98b329Batch Send Nativ...188117342022-08-18 17:48:388 hrs 16 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00383739238
0x6549be0dd0f41aa3c46c47e62f2145a148e48af3b24f9259bad16755802e6eedDeposit Native T...188115102022-08-18 17:40:518 hrs 24 mins ago0xf16d205fb2ad682e9c844357194358ee3505706c IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0.‍1 AVAX0.‍000760391 26.‍5
0xd33f24bb5c0f56130840646fdb06a6f9ab931d3b659063e0eeb80ea60400a1aaBatch Send Nativ...188109612022-08-18 17:21:598 hrs 42 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00478739238
0x10b918f00d8ffe0f6d4a0c71ddfb8b07f4b40ed6425759bec3cdb376a6936157Batch Send Nativ...188102082022-08-18 16:55:249 hrs 9 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00338595238
0xf18424d6dde7cfa9870e1dfaeb1d86bd54ad316ee6b09f975ab964bbc309b24fBatch Send Nativ...188097202022-08-18 16:38:389 hrs 26 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00243595238
0xc5f84f2aec34b11951ae8010261293aa1a5dfac2f0c36039090459294435308eDeposit Native T...188089402022-08-18 16:11:549 hrs 53 mins ago0x1cbd1cd53dd1a91b15ade97f5d78bb54db598538 IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0.‍44 AVAX0.‍000760391 26.‍5
0x2db5b008d918899c2eeea642cd91cb87cfa7a2f1c198da5e95d07af7f2b1ed38Batch Send Nativ...188078722022-08-18 15:35:1910 hrs 29 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00243595238
0xd543e73ae75214181c5969a7781af3f72e74868b25789522adbb88ac5123ae50Batch Send Nativ...188078232022-08-18 15:33:4110 hrs 31 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00243640838
0x5b1679bd5b0f0699ad06c34280a9034f69e8d4d2b508851a1d19b091a5147910Batch Send Nativ...188077722022-08-18 15:31:5910 hrs 32 mins ago0x21f87cfb3218176557273eeaed15f33ac5b4b68d IN  0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0 AVAX0.‍00243640838
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x8b2f4e059e6fe33c6ad16fbd842fb06f0ab4015090eba1a9bc2a422f69465dc7188257902022-08-19 1:46:5917 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0xfdfe62ab38122be697c455f9d1926d4a56e902fb0.‍258753139554241012 AVAX
0x6e4eb81ae2a8f4b3e5a98e435536243d57ed22a9d0d237c73fad2296e6e5d74c188247142022-08-19 1:10:0454 mins ago 0xdc23842d47b80d88a549777eb1f33c2f47f253d0 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0.‍212547173109101232 AVAX
0xcbb16f0a7a54c739b39b335630b54dcdd366979617d4e5f8d48d67301ce5c0be188245842022-08-19 1:05:4359 mins ago 0xdc23842d47b80d88a549777eb1f33c2f47f253d0 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0.‍421246126013380051 AVAX
0x20575aa18677a3c612e7c0578e84b1e9c846877728c03e0c84a8e905f7e732cf188210722022-08-18 23:07:232 hrs 57 mins ago 0xdc23842d47b80d88a549777eb1f33c2f47f253d0 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0.‍37 AVAX
0xb2e66a6692c6b8ac8dce7bd8e21f1e5ec92cb35373cf870a937f33c067c80025188208172022-08-18 22:58:393 hrs 6 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0xad63566b00a1864716f12f5e8424e0142121c9970.‍405566802635 AVAX
0xba4aedb9ca1ad970833e94f1fc2e28e2aa966d44bb6d598f401c22185e451bdc188207702022-08-18 22:57:003 hrs 7 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0xad63566b00a1864716f12f5e8424e0142121c9970.‍404349782695 AVAX
0xaee5d69415b4673475f0d9f12d320809e77d47ec974562675ed6c6a9db03757f188192522022-08-18 22:05:193 hrs 59 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0x82efc24e55f9bf1cfc044dd06838c8f5be3fffb90.‍388699064213882842 AVAX
0x290dcb896b561ef6f926437fb4c8eabda86ce0d00cc9113b1ebb997255a35b9d188189572022-08-18 21:55:194 hrs 9 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0xd1b434e2ee21f4b90e3147da292270d2ac0b06cc0.‍193584484434333889 AVAX
0x97f4e37145db3e8ae1dfa59ff2a7aa5589d0b7ae1cc20e6bb87939a5550b11a5188188612022-08-18 21:52:044 hrs 12 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0xd1b434e2ee21f4b90e3147da292270d2ac0b06cc0.‍3649200325 AVAX
0xd7df77ffc3c43241f124436e8486177f982b1f6df40862ce5efe158c5fe1b79a188176442022-08-18 21:10:194 hrs 54 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0x582ab56093777f7a8ea908b87ae16ebd80106a7d0.‍06817056376 AVAX
0x9ca1c0701bfa6f6cc3f55d63fbb3af43dd71d84c9907ad8fcf19ab7b377ad7a4188172122022-08-18 20:55:375 hrs 9 mins ago 0xdc23842d47b80d88a549777eb1f33c2f47f253d0 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0.‍314530910918530161 AVAX
0x279d5342e878f587890b7ac6a619926e041716991e903edb1a541f1ddfb1b073188153882022-08-18 19:53:396 hrs 11 mins ago 0xdc23842d47b80d88a549777eb1f33c2f47f253d0 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0.‍197239068066316696 AVAX
0xb31215a173e996e64eea871d7d89dccd22a8b46268fc8f1908fac1291bebb6e0188153382022-08-18 19:52:006 hrs 12 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0xcc118264e9182f49e0cf0e00e1c35c273d53c88a0.‍29733487054 AVAX
0xa92807c66c4bedd0090a6f19548e8ebdd5ae027e923646003963b2780c886280188147092022-08-18 19:30:206 hrs 34 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0x5c5503ac4fadb7557dfea2dd3c3f109e15ca779c0.‍08033356583 AVAX
0x56846c0d70ff8bf035566a1c8d53b82917195eed6c10a59869cbb478cbe3b68d188146092022-08-18 19:27:006 hrs 37 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0x34339500cee10020084156de8632c6f610710b4c0.‍17362099155 AVAX
0xeaa899c8048fd54716c4ed6a423ce5cc8ba4ab81df75c723483ef85d9ed6c0d8188144632022-08-18 19:21:586 hrs 43 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0x2e30c63cba9baf8b0897c6b16614cc0f7b75fcaf0.‍15614250148 AVAX
0x2ee6d70346d6b30e70d3b1edc9cdb583248c750c285fa5a15eb755ce5ec894d9188135352022-08-18 18:50:197 hrs 14 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0xfc2df5c3af14fcf1b11760cb1a2277c7a5817dec0.‍06793187228 AVAX
0xc4d2367ad24126c95611dd7a67aa460cc617ee0e443cb8ca57ae2f3cd8117179188131952022-08-18 18:38:447 hrs 26 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0xe2894fd6ca974d7d248010ac0fa98eaa27ed790a0.‍050434628575 AVAX
0xdd7d26f27df4cd35e71fc180d263945ed5acd7d8524bcfd68206cb11532edf13188125562022-08-18 18:16:597 hrs 47 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0xef228c1955efa79fb8f940196263427cc6ab62850.‍1735931724 AVAX
0xb1edb597ce70156ceb89eafa82b2437374167e590ae8d33ec515de76184c18de188121732022-08-18 18:03:408 hrs 1 min ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0x694e8d2a533d9fb323cb8136843ce60d664e7cc80.‍05059440334 AVAX
0xb1edb597ce70156ceb89eafa82b2437374167e590ae8d33ec515de76184c18de188121732022-08-18 18:03:408 hrs 1 min ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0x694e8d2a533d9fb323cb8136843ce60d664e7cc80.‍05059440334 AVAX
0x3b5683f1d5bbec8dad9a71e8d8d60250439fd7ab97205d836427513fcc98b329188117342022-08-18 17:48:388 hrs 16 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0x08ec767ef764aa451783ad494f56d91c557cf2330.‍1625202205382 AVAX
0x3b5683f1d5bbec8dad9a71e8d8d60250439fd7ab97205d836427513fcc98b329188117342022-08-18 17:48:388 hrs 16 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0xe47d1f38fa1d891be3dbba8579785b1b106f54610.‍050986414405 AVAX
0xd33f24bb5c0f56130840646fdb06a6f9ab931d3b659063e0eeb80ea60400a1aa188109612022-08-18 17:21:598 hrs 42 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0x8943b6c8c565a4a50cdf14fd1ba48d633acd15430.‍07123940102 AVAX
0xd33f24bb5c0f56130840646fdb06a6f9ab931d3b659063e0eeb80ea60400a1aa188109612022-08-18 17:21:598 hrs 42 mins ago 0x040993fbf458b95871cd2d73ee2e09f4af6d56bb0x1d09a41c658f38ce12e0d9143e2de71839b11f350.‍1891110820644 AVAX
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
GasMovr

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity Standard Json-Input format)

File 1 of 4 : GasMovr.sol
// SPDX-License-Identifier: MIT

pragma solidity >0.8.0;

import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/security/Pausable.sol";

contract GasMovr is Ownable, Pausable {
    /* 
        Variables
    */
    mapping(uint256 => ChainData) public chainConfig;
    mapping(bytes32 => bool) public processedHashes;
    mapping(address => bool) public senders;

    struct ChainData {
        uint256 chainId;
        bool isEnabled;
    }

    /* 
        Events
    */
    event Deposit(
        address indexed destinationReceiver,
        uint256 amount,
        uint256 indexed destinationChainId
    );

    event Withdrawal(address indexed receiver, uint256 amount);

    event Donation(address sender, uint256 amount);

    event Send(address receiver, uint256 amount, bytes32 srcChainTxHash);

    event GrantSender(address sender);
    event RevokeSender(address sender);

    modifier onlySender() {
        require(senders[msg.sender], "Sender role required");
        _;
    }

    constructor() {
        _grantSenderRole(msg.sender);
    }

    receive() external payable {
        emit Donation(msg.sender, msg.value);
    }

    function depositNativeToken(uint256 destinationChainId, address _to)
        public
        payable
        whenNotPaused
    {
        require(
            chainConfig[destinationChainId].isEnabled,
            "Chain is currently disabled"
        );

        emit Deposit(_to, msg.value, destinationChainId);
    }

    function withdrawBalance(address _to, uint256 _amount) public onlyOwner {
        _withdrawBalance(_to, _amount);
    }

    function withdrawFullBalance(address _to) public onlyOwner {
        _withdrawBalance(_to, address(this).balance);
    }

    function _withdrawBalance(address _to, uint256 _amount) private {
        (bool success, ) = _to.call{value: _amount}("");
        require(success, "Failed to send Ether");

        emit Withdrawal(_to, _amount);
    }

    function setIsEnabled(uint256 chainId, bool _isEnabled)
        public
        onlyOwner
        returns (bool)
    {
        chainConfig[chainId].isEnabled = _isEnabled;
        return chainConfig[chainId].isEnabled;
    }

    function setPause() public onlyOwner returns (bool) {
        _pause();
        return paused();
    }

    function setUnPause() public onlyOwner returns (bool) {
        _unpause();
        return paused();
    }

    function addRoutes(ChainData[] calldata _routes) external onlyOwner {
        for (uint256 i = 0; i < _routes.length; i++) {
            chainConfig[_routes[i].chainId] = _routes[i];
        }
    }

    function getChainData(uint256 chainId)
        public
        view
        returns (ChainData memory)
    {
        return (chainConfig[chainId]);
    }

    function batchSendNativeToken(
        address payable[] memory receivers,
        uint256[] memory amounts,
        bytes32[] memory srcChainTxHashes,
        uint256 perUserGasAmount,
        uint256 maxLimit
    ) public onlySender {
        require(
            receivers.length == amounts.length &&
                receivers.length == srcChainTxHashes.length,
            "Input length mismatch"
        );
        uint256 gasPrice;
        assembly {
            gasPrice := gasprice()
        }

        for (uint256 i = 0; i < receivers.length; i++) {
            uint256 _gasFees = amounts[i] > maxLimit
                ? (amounts[i] - maxLimit + (gasPrice * perUserGasAmount))
                : gasPrice * perUserGasAmount;
            _sendNativeToken(
                receivers[i],
                amounts[i],
                srcChainTxHashes[i],
                _gasFees
            );
        }
    }

    function sendNativeToken(
        address payable receiver,
        uint256 amount,
        bytes32 srcChainTxHash,
        uint256 perUserGasAmount,
        uint256 maxLimit
    ) public onlySender {
        uint256 gasPrice;
        assembly {
            gasPrice := gasprice()
        }
        uint256 _gasFees = amount > maxLimit
            ? (amount - maxLimit + (gasPrice * perUserGasAmount))
            : gasPrice * perUserGasAmount;

        _sendNativeToken(receiver, amount, srcChainTxHash, _gasFees);
    }

    function _sendNativeToken(
        address payable receiver,
        uint256 amount,
        bytes32 srcChainTxHash,
        uint256 gasFees
    ) private {
        if (processedHashes[srcChainTxHash]) return;
        processedHashes[srcChainTxHash] = true;

        uint256 sendAmount = amount - gasFees;

        emit Send(receiver, sendAmount, srcChainTxHash);

        (bool success, ) = receiver.call{value: sendAmount, gas: 5000}("");
        require(success, "Failed to send Ether");
    }

    function grantSenderRole(address sender) public onlyOwner {
        _grantSenderRole(sender);
    }

    function revokeSenderRole(address sender) public onlyOwner {
        _revokeSenderRole(sender);
    }

    function _grantSenderRole(address sender) private {
        senders[sender] = true;
        emit GrantSender(sender);
    }

    function _revokeSenderRole(address sender) private {
        senders[sender] = false;
        emit RevokeSender(sender);
    }
}

File 2 of 4 : Ownable.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.0 (access/Ownable.sol)

pragma solidity ^0.8.0;

import "../utils/Context.sol";

/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor() {
        _transferOwnership(_msgSender());
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view virtual returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    /**
     * @dev 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.
     */
    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Internal function without access restriction.
     */
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

File 3 of 4 : Pausable.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.0 (security/Pausable.sol)

pragma solidity ^0.8.0;

import "../utils/Context.sol";

/**
 * @dev Contract module which allows children to implement an emergency stop
 * mechanism that can be triggered by an authorized account.
 *
 * This module is used through inheritance. It will make available the
 * modifiers `whenNotPaused` and `whenPaused`, which can be applied to
 * the functions of your contract. Note that they will not be pausable by
 * simply including this module, only once the modifiers are put in place.
 */
abstract contract Pausable is Context {
    /**
     * @dev Emitted when the pause is triggered by `account`.
     */
    event Paused(address account);

    /**
     * @dev Emitted when the pause is lifted by `account`.
     */
    event Unpaused(address account);

    bool private _paused;

    /**
     * @dev Initializes the contract in unpaused state.
     */
    constructor() {
        _paused = false;
    }

    /**
     * @dev Returns true if the contract is paused, and false otherwise.
     */
    function paused() public view virtual returns (bool) {
        return _paused;
    }

    /**
     * @dev Modifier to make a function callable only when the contract is not paused.
     *
     * Requirements:
     *
     * - The contract must not be paused.
     */
    modifier whenNotPaused() {
        require(!paused(), "Pausable: paused");
        _;
    }

    /**
     * @dev Modifier to make a function callable only when the contract is paused.
     *
     * Requirements:
     *
     * - The contract must be paused.
     */
    modifier whenPaused() {
        require(paused(), "Pausable: not paused");
        _;
    }

    /**
     * @dev Triggers stopped state.
     *
     * Requirements:
     *
     * - The contract must not be paused.
     */
    function _pause() internal virtual whenNotPaused {
        _paused = true;
        emit Paused(_msgSender());
    }

    /**
     * @dev Returns to normal state.
     *
     * Requirements:
     *
     * - The contract must be paused.
     */
    function _unpause() internal virtual whenPaused {
        _paused = false;
        emit Unpaused(_msgSender());
    }
}

File 4 of 4 : Context.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.0 (utils/Context.sol)

pragma solidity ^0.8.0;

/**
 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.
 */
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

Settings
{
  "optimizer": {
    "enabled": false,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "libraries": {}
}

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"destinationReceiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":true,"internalType":"uint256","name":"destinationChainId","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Donation","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"}],"name":"GrantSender","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"}],"name":"RevokeSender","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"srcChainTxHash","type":"bytes32"}],"name":"Send","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Withdrawal","type":"event"},{"inputs":[{"components":[{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"bool","name":"isEnabled","type":"bool"}],"internalType":"struct GasMovr.ChainData[]","name":"_routes","type":"tuple[]"}],"name":"addRoutes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable[]","name":"receivers","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"},{"internalType":"bytes32[]","name":"srcChainTxHashes","type":"bytes32[]"},{"internalType":"uint256","name":"perUserGasAmount","type":"uint256"},{"internalType":"uint256","name":"maxLimit","type":"uint256"}],"name":"batchSendNativeToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"chainConfig","outputs":[{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"bool","name":"isEnabled","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"destinationChainId","type":"uint256"},{"internalType":"address","name":"_to","type":"address"}],"name":"depositNativeToken","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"chainId","type":"uint256"}],"name":"getChainData","outputs":[{"components":[{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"bool","name":"isEnabled","type":"bool"}],"internalType":"struct GasMovr.ChainData","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"grantSenderRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"processedHashes","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"revokeSenderRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"receiver","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes32","name":"srcChainTxHash","type":"bytes32"},{"internalType":"uint256","name":"perUserGasAmount","type":"uint256"},{"internalType":"uint256","name":"maxLimit","type":"uint256"}],"name":"sendNativeToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"senders","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"bool","name":"_isEnabled","type":"bool"}],"name":"setIsEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setPause","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setUnPause","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"withdrawBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"}],"name":"withdrawFullBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040523480156200001157600080fd5b5062000032620000266200006360201b60201c565b6200006b60201b60201c565b60008060146101000a81548160ff0219169083151502179055506200005d336200012f60201b60201c565b62000225565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f81cdda5c32462d3b8852fb6c30821f5d90c45230475e9b29e517afa5fef7eb9a81604051620001b89190620001d4565b60405180910390a150565b620001ce81620001f1565b82525050565b6000602082019050620001eb6000830184620001c3565b92915050565b6000620001fe8262000205565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b61267480620002356000396000f3fe6080604052600436106101185760003560e01c80638da5cb5b116100a0578063c537a1b111610064578063c537a1b1146103f2578063d1c85e8c1461041d578063d431b1ac14610446578063e56461ad14610471578063f2fde38b1461048d57610158565b80638da5cb5b146102fb578063982fb9d8146103265780639a21c64c14610363578063aeb45f011461038c578063b659e774146103c957610158565b80633a8ee97d116100e75780633a8ee97d1461022a5780634c9ef2f8146102535780635c975abb14610290578063715018a6146102bb57806385d9ef5a146102d257610158565b806307d9c5341461015d5780630a70b0561461019a5780630cf20cc9146101d85780630ddedd841461020157610158565b36610158577f5d8bc849764969eb1bcc6d0a2f55999d0167c1ccec240a4f39cf664ca9c4148e333460405161014e929190611e1b565b60405180910390a1005b600080fd5b34801561016957600080fd5b50610184600480360381019061017f9190611b17565b6104b6565b6040516101919190611e44565b60405180910390f35b3480156101a657600080fd5b506101c160048036038101906101bc9190611b40565b6104d6565b6040516101cf929190611f95565b60405180910390f35b3480156101e457600080fd5b506101ff60048036038101906101fa91906119d7565b610507565b005b34801561020d57600080fd5b5061022860048036038101906102239190611a13565b610591565b005b34801561023657600080fd5b50610251600480360381019061024c9190611937565b610827565b005b34801561025f57600080fd5b5061027a60048036038101906102759190611ba5565b6108af565b6040516102879190611e44565b60405180910390f35b34801561029c57600080fd5b506102a5610987565b6040516102b29190611e44565b60405180910390f35b3480156102c757600080fd5b506102d061099d565b005b3480156102de57600080fd5b506102f960048036038101906102f49190611937565b610a25565b005b34801561030757600080fd5b50610310610aad565b60405161031d9190611dc9565b60405180910390f35b34801561033257600080fd5b5061034d60048036038101906103489190611937565b610ad6565b60405161035a9190611e44565b60405180910390f35b34801561036f57600080fd5b5061038a60048036038101906103859190611937565b610af6565b005b34801561039857600080fd5b506103b360048036038101906103ae9190611b40565b610b7f565b6040516103c09190611f5f565b60405180910390f35b3480156103d557600080fd5b506103f060048036038101906103eb9190611ad2565b610bd1565b005b3480156103fe57600080fd5b50610407610d16565b6040516104149190611e44565b60405180910390f35b34801561042957600080fd5b50610444600480360381019061043f9190611960565b610da9565b005b34801561045257600080fd5b5061045b610e8e565b6040516104689190611e44565b60405180910390f35b61048b60048036038101906104869190611b69565b610f21565b005b34801561049957600080fd5b506104b460048036038101906104af9190611937565b61101f565b005b60026020528060005260406000206000915054906101000a900460ff1681565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900460ff16905082565b61050f611117565b73ffffffffffffffffffffffffffffffffffffffff1661052d610aad565b73ffffffffffffffffffffffffffffffffffffffff1614610583576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161057a90611f1f565b60405180910390fd5b61058d828261111f565b5050565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661061d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161061490611e5f565b60405180910390fd5b8351855114801561062f575082518551145b61066e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161066590611f3f565b60405180910390fd5b60003a905060005b865181101561081e576000838783815181106106bb577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151116106d95784836106d491906120d9565b61073c565b84836106e591906120d9565b8488848151811061071f577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101516107319190612133565b61073b9190612083565b5b905061080a88838151811061077a577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101518884815181106107bb577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101518885815181106107fc577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101518461121e565b5080806108169061229c565b915050610676565b50505050505050565b61082f611117565b73ffffffffffffffffffffffffffffffffffffffff1661084d610aad565b73ffffffffffffffffffffffffffffffffffffffff16146108a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161089a90611f1f565b60405180910390fd5b6108ac8161137a565b50565b60006108b9611117565b73ffffffffffffffffffffffffffffffffffffffff166108d7610aad565b73ffffffffffffffffffffffffffffffffffffffff161461092d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161092490611f1f565b60405180910390fd5b816001600085815260200190815260200160002060010160006101000a81548160ff0219169083151502179055506001600084815260200190815260200160002060010160009054906101000a900460ff16905092915050565b60008060149054906101000a900460ff16905090565b6109a5611117565b73ffffffffffffffffffffffffffffffffffffffff166109c3610aad565b73ffffffffffffffffffffffffffffffffffffffff1614610a19576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1090611f1f565b60405180910390fd5b610a23600061140c565b565b610a2d611117565b73ffffffffffffffffffffffffffffffffffffffff16610a4b610aad565b73ffffffffffffffffffffffffffffffffffffffff1614610aa1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a9890611f1f565b60405180910390fd5b610aaa816114d0565b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60036020528060005260406000206000915054906101000a900460ff1681565b610afe611117565b73ffffffffffffffffffffffffffffffffffffffff16610b1c610aad565b73ffffffffffffffffffffffffffffffffffffffff1614610b72576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b6990611f1f565b60405180910390fd5b610b7c814761111f565b50565b610b876116a6565b60016000838152602001908152602001600020604051806040016040529081600082015481526020016001820160009054906101000a900460ff1615151515815250509050919050565b610bd9611117565b73ffffffffffffffffffffffffffffffffffffffff16610bf7610aad565b73ffffffffffffffffffffffffffffffffffffffff1614610c4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c4490611f1f565b60405180910390fd5b60005b82829050811015610d1157828282818110610c94577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90506040020160016000858585818110610cd7577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050604002016000013581526020019081526020016000208181610cfb919061259a565b9050508080610d099061229c565b915050610c50565b505050565b6000610d20611117565b73ffffffffffffffffffffffffffffffffffffffff16610d3e610aad565b73ffffffffffffffffffffffffffffffffffffffff1614610d94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8b90611f1f565b60405180910390fd5b610d9c611562565b610da4610987565b905090565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610e35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e2c90611e5f565b60405180910390fd5b60003a90506000828611610e54578382610e4f91906120d9565b610e77565b8382610e6091906120d9565b8387610e6c9190612133565b610e769190612083565b5b9050610e858787878461121e565b50505050505050565b6000610e98611117565b73ffffffffffffffffffffffffffffffffffffffff16610eb6610aad565b73ffffffffffffffffffffffffffffffffffffffff1614610f0c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f0390611f1f565b60405180910390fd5b610f14611603565b610f1c610987565b905090565b610f29610987565b15610f69576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f6090611eff565b60405180910390fd5b6001600083815260200190815260200160002060010160009054906101000a900460ff16610fcc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fc390611e9f565b60405180910390fd5b818173ffffffffffffffffffffffffffffffffffffffff167f90890809c654f11d6e72a28fa60149770a0d11ec6c92319d6ceb2bb0a4ea1a15346040516110139190611f7a565b60405180910390a35050565b611027611117565b73ffffffffffffffffffffffffffffffffffffffff16611045610aad565b73ffffffffffffffffffffffffffffffffffffffff161461109b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109290611f1f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561110b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110290611ebf565b60405180910390fd5b6111148161140c565b50565b600033905090565b60008273ffffffffffffffffffffffffffffffffffffffff168260405161114590611db4565b60006040518083038185875af1925050503d8060008114611182576040519150601f19603f3d011682016040523d82523d6000602084013e611187565b606091505b50509050806111cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111c290611edf565b60405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff167f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b65836040516112119190611f7a565b60405180910390a2505050565b6002600083815260200190815260200160002060009054906101000a900460ff161561124957611374565b60016002600084815260200190815260200160002060006101000a81548160ff021916908315150217905550600081846112839190612133565b90507f2f824f69f211e444df15d741157e83cdf23c50f39399b9523853a84b91379ca68582856040516112b893929190611de4565b60405180910390a160008573ffffffffffffffffffffffffffffffffffffffff1682611388906040516112ea90611db4565b600060405180830381858888f193505050503d8060008114611328576040519150601f19603f3d011682016040523d82523d6000602084013e61132d565b606091505b5050905080611371576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136890611edf565b60405180910390fd5b50505b50505050565b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f81cdda5c32462d3b8852fb6c30821f5d90c45230475e9b29e517afa5fef7eb9a816040516114019190611dc9565b60405180910390a150565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f6d976a532ca2d9b73b2090e0fb183da92b74bfd91ca6f4562b82a86c0a4b0194816040516115579190611dc9565b60405180910390a150565b61156a610987565b6115a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115a090611e7f565b60405180910390fd5b60008060146101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115ec611117565b6040516115f99190611dc9565b60405180910390a1565b61160b610987565b1561164b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161164290611eff565b60405180910390fd5b6001600060146101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861168f611117565b60405161169c9190611dc9565b60405180910390a1565b6040518060400160405280600081526020016000151581525090565b60006116d56116d084611fe3565b611fbe565b905080838252602082019050828560208602820111156116f457600080fd5b60005b85811015611724578161170a888261181b565b8452602084019350602083019250506001810190506116f7565b5050509392505050565b600061174161173c8461200f565b611fbe565b9050808382526020820190508285602086028201111561176057600080fd5b60005b858110156117905781611776888261190d565b845260208401935060208301925050600181019050611763565b5050509392505050565b60006117ad6117a88461203b565b611fbe565b905080838252602082019050828560208602820111156117cc57600080fd5b60005b858110156117fc57816117e28882611922565b8452602084019350602083019250506001810190506117cf565b5050509392505050565b600081359050611815816125cb565b92915050565b60008135905061182a816125e2565b92915050565b600082601f83011261184157600080fd5b81356118518482602086016116c2565b91505092915050565b600082601f83011261186b57600080fd5b813561187b84826020860161172e565b91505092915050565b60008083601f84011261189657600080fd5b8235905067ffffffffffffffff8111156118af57600080fd5b6020830191508360408202830111156118c757600080fd5b9250929050565b600082601f8301126118df57600080fd5b81356118ef84826020860161179a565b91505092915050565b600081359050611907816125f9565b92915050565b60008135905061191c81612610565b92915050565b60008135905061193181612627565b92915050565b60006020828403121561194957600080fd5b600061195784828501611806565b91505092915050565b600080600080600060a0868803121561197857600080fd5b60006119868882890161181b565b955050602061199788828901611922565b94505060406119a88882890161190d565b93505060606119b988828901611922565b92505060806119ca88828901611922565b9150509295509295909350565b600080604083850312156119ea57600080fd5b60006119f885828601611806565b9250506020611a0985828601611922565b9150509250929050565b600080600080600060a08688031215611a2b57600080fd5b600086013567ffffffffffffffff811115611a4557600080fd5b611a5188828901611830565b955050602086013567ffffffffffffffff811115611a6e57600080fd5b611a7a888289016118ce565b945050604086013567ffffffffffffffff811115611a9757600080fd5b611aa38882890161185a565b9350506060611ab488828901611922565b9250506080611ac588828901611922565b9150509295509295909350565b60008060208385031215611ae557600080fd5b600083013567ffffffffffffffff811115611aff57600080fd5b611b0b85828601611884565b92509250509250929050565b600060208284031215611b2957600080fd5b6000611b378482850161190d565b91505092915050565b600060208284031215611b5257600080fd5b6000611b6084828501611922565b91505092915050565b60008060408385031215611b7c57600080fd5b6000611b8a85828601611922565b9250506020611b9b85828601611806565b9150509250929050565b60008060408385031215611bb857600080fd5b6000611bc685828601611922565b9250506020611bd7858286016118f8565b9150509250929050565b611bea816121cb565b82525050565b611bf981612167565b82525050565b611c088161218b565b82525050565b611c178161218b565b82525050565b611c2681612197565b82525050565b6000611c39601483612072565b9150611c44826123a1565b602082019050919050565b6000611c5c601483612072565b9150611c67826123ca565b602082019050919050565b6000611c7f601b83612072565b9150611c8a826123f3565b602082019050919050565b6000611ca2602683612072565b9150611cad8261241c565b604082019050919050565b6000611cc5601483612072565b9150611cd08261246b565b602082019050919050565b6000611ce8601083612072565b9150611cf382612494565b602082019050919050565b6000611d0b602083612072565b9150611d16826124bd565b602082019050919050565b6000611d2e600083612067565b9150611d39826124e6565b600082019050919050565b6000611d51601583612072565b9150611d5c826124e9565b602082019050919050565b604082016000820151611d7d6000850182611d96565b506020820151611d906020850182611bff565b50505050565b611d9f816121c1565b82525050565b611dae816121c1565b82525050565b6000611dbf82611d21565b9150819050919050565b6000602082019050611dde6000830184611bf0565b92915050565b6000606082019050611df96000830186611be1565b611e066020830185611da5565b611e136040830184611c1d565b949350505050565b6000604082019050611e306000830185611bf0565b611e3d6020830184611da5565b9392505050565b6000602082019050611e596000830184611c0e565b92915050565b60006020820190508181036000830152611e7881611c2c565b9050919050565b60006020820190508181036000830152611e9881611c4f565b9050919050565b60006020820190508181036000830152611eb881611c72565b9050919050565b60006020820190508181036000830152611ed881611c95565b9050919050565b60006020820190508181036000830152611ef881611cb8565b9050919050565b60006020820190508181036000830152611f1881611cdb565b9050919050565b60006020820190508181036000830152611f3881611cfe565b9050919050565b60006020820190508181036000830152611f5881611d44565b9050919050565b6000604082019050611f746000830184611d67565b92915050565b6000602082019050611f8f6000830184611da5565b92915050565b6000604082019050611faa6000830185611da5565b611fb76020830184611c0e565b9392505050565b6000611fc8611fd9565b9050611fd4828261226b565b919050565b6000604051905090565b600067ffffffffffffffff821115611ffe57611ffd612314565b5b602082029050602081019050919050565b600067ffffffffffffffff82111561202a57612029612314565b5b602082029050602081019050919050565b600067ffffffffffffffff82111561205657612055612314565b5b602082029050602081019050919050565b600081905092915050565b600082825260208201905092915050565b600061208e826121c1565b9150612099836121c1565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156120ce576120cd6122e5565b5b828201905092915050565b60006120e4826121c1565b91506120ef836121c1565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612128576121276122e5565b5b828202905092915050565b600061213e826121c1565b9150612149836121c1565b92508282101561215c5761215b6122e5565b5b828203905092915050565b6000612172826121a1565b9050919050565b6000612184826121a1565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60006121d6826121ef565b9050919050565b60006121e88261218b565b9050919050565b60006121fa82612201565b9050919050565b600061220c826121a1565b9050919050565b600061221e826121c1565b9050919050565b6000810160008301806122378161236d565b905061224381846125a8565b50505060018101602083018061225881612357565b90506122648184612577565b5050505050565b61227482612383565b810181811067ffffffffffffffff8211171561229357612292612314565b5b80604052505050565b60006122a7826121c1565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156122da576122d96122e5565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000819050919050565b6000819050919050565b60008135612364816125f9565b80915050919050565b6000813561237a81612627565b80915050919050565b6000601f19601f8301169050919050565b60008160001b9050919050565b7f53656e64657220726f6c65207265717569726564000000000000000000000000600082015250565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b7f436861696e2069732063757272656e746c792064697361626c65640000000000600082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f4661696c656420746f2073656e64204574686572000000000000000000000000600082015250565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b50565b7f496e707574206c656e677468206d69736d617463680000000000000000000000600082015250565b600060ff61251f84612394565b9350801983169250808416831791505092915050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61256184612394565b9350801983169250808416831791505092915050565b612580826121dd565b61259361258c82612343565b8354612512565b8255505050565b6125a48282612225565b5050565b6125b182612213565b6125c46125bd8261234d565b8354612535565b8255505050565b6125d481612167565b81146125df57600080fd5b50565b6125eb81612179565b81146125f657600080fd5b50565b6126028161218b565b811461260d57600080fd5b50565b61261981612197565b811461262457600080fd5b50565b612630816121c1565b811461263b57600080fd5b5056fea2646970667358221220a20584266cfb1330ad52a32361fdcad1a8b049c48d067aac467033d13ddd4a8d64736f6c63430008040033

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