ETH Price: $3,238.54 (+2.70%)
Gas: 5 Gwei

Contract

0x607a5C47978e2Eb6d59C6C6f51bc0bF411f4b85a
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Set Gas Price107740872020-09-01 8:07:441424 days ago1598947664IN
Bancor: Gas Price Limit
0 ETH0.01166564427
Accept Ownership107740842020-09-01 8:06:581424 days ago1598947618IN
Bancor: Gas Price Limit
0 ETH0.00933123427
Transfer Ownersh...96639432020-03-13 15:31:581595 days ago1584113518IN
Bancor: Gas Price Limit
0 ETH0.0015471735
Set Gas Price96639352020-03-13 15:29:421595 days ago1584113382IN
Bancor: Gas Price Limit
0 ETH0.0009557835
Set Gas Price96569992020-03-12 13:37:161597 days ago1584020236IN
Bancor: Gas Price Limit
0 ETH0.00265742115
Set Gas Price96569992020-03-12 13:37:161597 days ago1584020236IN
Bancor: Gas Price Limit
0 ETH0.00314042115
Set Gas Price90939132019-12-12 10:33:311688 days ago1576146811IN
Bancor: Gas Price Limit
0 ETH0.0016384860
Set Gas Price90603862019-12-06 12:11:201694 days ago1575634280IN
Bancor: Gas Price Limit
0 ETH0.0006583324.214
Set Gas Price90602812019-12-06 11:40:421694 days ago1575632442IN
Bancor: Gas Price Limit
0 ETH0.0008900232.73599938
Set Gas Price90602492019-12-06 11:31:321694 days ago1575631892IN
Bancor: Gas Price Limit
0 ETH0.0006509724
Set Gas Price90601042019-12-06 10:51:071694 days ago1575629467IN
Bancor: Gas Price Limit
0 ETH0.0008950933
Set Gas Price90588732019-12-06 5:31:121694 days ago1575610272IN
Bancor: Gas Price Limit
0 ETH0.0006672524.6
Set Gas Price90584602019-12-06 3:51:081694 days ago1575604268IN
Bancor: Gas Price Limit
0 ETH0.0008896632.8
Set Gas Price90492762019-12-04 12:30:581696 days ago1575462658IN
Bancor: Gas Price Limit
0 ETH0.0006509724
Set Gas Price90492322019-12-04 12:20:561696 days ago1575462056IN
Bancor: Gas Price Limit
0 ETH0.0008950933
Set Gas Price90491582019-12-04 12:01:081696 days ago1575460868IN
Bancor: Gas Price Limit
0 ETH0.0006509724
Set Gas Price90489852019-12-04 11:10:331696 days ago1575457833IN
Bancor: Gas Price Limit
0 ETH0.0009222134
Set Gas Price90487682019-12-04 10:10:361696 days ago1575454236IN
Bancor: Gas Price Limit
0 ETH0.0006509724
Set Gas Price90481492019-12-04 7:30:581696 days ago1575444658IN
Bancor: Gas Price Limit
0 ETH0.0009222134
Set Gas Price90477072019-12-04 5:41:001696 days ago1575438060IN
Bancor: Gas Price Limit
0 ETH0.000547920.2
Set Gas Price90476292019-12-04 5:20:441696 days ago1575436844IN
Bancor: Gas Price Limit
0 ETH0.0008137230
Set Gas Price90475952019-12-04 5:11:181696 days ago1575436278IN
Bancor: Gas Price Limit
0 ETH0.000569621
Set Gas Price90475102019-12-04 4:51:131696 days ago1575435073IN
Bancor: Gas Price Limit
0 ETH0.0009222134
Set Gas Price90474802019-12-04 4:41:331696 days ago1575434493IN
Bancor: Gas Price Limit
0 ETH0.0006238523
Set Gas Price90474452019-12-04 4:31:041696 days ago1575433864IN
Bancor: Gas Price Limit
0 ETH0.0009222134
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:
BancorGasPriceLimit

Compiler Version
v0.4.18+commit.9cf6e910

Optimization Enabled:
Yes with 500 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2018-04-16
*/

pragma solidity ^0.4.18;


contract Utils {
    /**
        constructor
    */
    function Utils() public {
    }

    // verifies that an amount is greater than zero
    modifier greaterThanZero(uint256 _amount) {
        require(_amount > 0);
        _;
    }

    // validates an address - currently only checks that it isn't null
    modifier validAddress(address _address) {
        require(_address != address(0));
        _;
    }

    // verifies that the address is different than this contract address
    modifier notThis(address _address) {
        require(_address != address(this));
        _;
    }

    // Overflow protected math functions

    /**
        @dev returns the sum of _x and _y, asserts if the calculation overflows

        @param _x   value 1
        @param _y   value 2

        @return sum
    */
    function safeAdd(uint256 _x, uint256 _y) internal pure returns (uint256) {
        uint256 z = _x + _y;
        assert(z >= _x);
        return z;
    }

    /**
        @dev returns the difference of _x minus _y, asserts if the subtraction results in a negative number

        @param _x   minuend
        @param _y   subtrahend

        @return difference
    */
    function safeSub(uint256 _x, uint256 _y) internal pure returns (uint256) {
        assert(_x >= _y);
        return _x - _y;
    }

    /**
        @dev returns the product of multiplying _x by _y, asserts if the calculation overflows

        @param _x   factor 1
        @param _y   factor 2

        @return product
    */
    function safeMul(uint256 _x, uint256 _y) internal pure returns (uint256) {
        uint256 z = _x * _y;
        assert(_x == 0 || z / _x == _y);
        return z;
    }
}

contract IOwned {
    // this function isn't abstract since the compiler emits automatically generated getter functions as external
    function owner() public view returns (address) {}

    function transferOwnership(address _newOwner) public;
    function acceptOwnership() public;
}

contract Owned is IOwned {
    address public owner;
    address public newOwner;

    event OwnerUpdate(address indexed _prevOwner, address indexed _newOwner);

    /**
        @dev constructor
    */
    function Owned() public {
        owner = msg.sender;
    }

    // allows execution by the owner only
    modifier ownerOnly {
        assert(msg.sender == owner);
        _;
    }

    /**
        @dev allows transferring the contract ownership
        the new owner still needs to accept the transfer
        can only be called by the contract owner

        @param _newOwner    new contract owner
    */
    function transferOwnership(address _newOwner) public ownerOnly {
        require(_newOwner != owner);
        newOwner = _newOwner;
    }

    /**
        @dev used by a new owner to accept an ownership transfer
    */
    function acceptOwnership() public {
        require(msg.sender == newOwner);
        OwnerUpdate(owner, newOwner);
        owner = newOwner;
        newOwner = address(0);
    }
}



contract IBancorGasPriceLimit {
    function gasPrice() public view returns (uint256) {}
    function validateGasPrice(uint256) public view;
}


contract BancorGasPriceLimit is IBancorGasPriceLimit, Owned, Utils {
    uint256 public gasPrice = 0 wei;    // maximum gas price for bancor transactions
    
    /**
        @dev constructor

        @param _gasPrice    gas price limit
    */
    function BancorGasPriceLimit(uint256 _gasPrice)
        public
        greaterThanZero(_gasPrice)
    {
        gasPrice = _gasPrice;
    }

    /*
        @dev gas price getter

        @return the current gas price
    */
    function gasPrice() public view returns (uint256) {
        return gasPrice;
    }

    /*
        @dev allows the owner to update the gas price limit

        @param _gasPrice    new gas price limit
    */
    function setGasPrice(uint256 _gasPrice)
        public
        ownerOnly
        greaterThanZero(_gasPrice)
    {
        gasPrice = _gasPrice;
    }

    /*
        @dev validate that the given gas price is equal to the current network gas price

        @param _gasPrice    tested gas price
    */
    function validateGasPrice(uint256 _gasPrice)
        public
        view
        greaterThanZero(_gasPrice)
    {
        require(_gasPrice <= gasPrice);
    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[{"name":"_gasPrice","type":"uint256"}],"name":"validateGasPrice","outputs":[],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_gasPrice","type":"uint256"}],"name":"setGasPrice","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"gasPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_gasPrice","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_prevOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}]

60606040526000600255341561001457600080fd5b6040516020806103d08339810160405280805160008054600160a060020a03191633600160a060020a0316178155909250829150811161005357600080fd5b5060025561036a806100666000396000f3006060604052600436106100825763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636b4dff1f811461008757806379ba50971461009f5780638da5cb5b146100b2578063bf1fe420146100ee578063d4ee1d9014610104578063f2fde38b14610117578063fe173b9714610143575b600080fd5b341561009257600080fd5b61009d600435610168565b005b34156100aa57600080fd5b61009d610189565b34156100bd57600080fd5b6100c561023e565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b34156100f957600080fd5b61009d60043561025a565b341561010f57600080fd5b6100c5610293565b341561012257600080fd5b61009d73ffffffffffffffffffffffffffffffffffffffff600435166102af565b341561014e57600080fd5b610156610338565b60405190815260200160405180910390f35b806000811161017657600080fd5b60025482111561018557600080fd5b5050565b6001543373ffffffffffffffffffffffffffffffffffffffff9081169116146101b157600080fd5b60015460005473ffffffffffffffffffffffffffffffffffffffff91821691167f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a60405160405180910390a3600180546000805473ffffffffffffffffffffffffffffffffffffffff1990811673ffffffffffffffffffffffffffffffffffffffff841617909155169055565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461027f57fe5b806000811161028d57600080fd5b50600255565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b6000543373ffffffffffffffffffffffffffffffffffffffff9081169116146102d457fe5b60005473ffffffffffffffffffffffffffffffffffffffff828116911614156102fc57600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff191673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b600254905600a165627a7a723058207c3717a0fab0538f138a38c18e85d8e97df2543bba184b60099d279062fd92fa0029000000000000000000000000000000000000000000000000000000012a05f200

Deployed Bytecode

0x6060604052600436106100825763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636b4dff1f811461008757806379ba50971461009f5780638da5cb5b146100b2578063bf1fe420146100ee578063d4ee1d9014610104578063f2fde38b14610117578063fe173b9714610143575b600080fd5b341561009257600080fd5b61009d600435610168565b005b34156100aa57600080fd5b61009d610189565b34156100bd57600080fd5b6100c561023e565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b34156100f957600080fd5b61009d60043561025a565b341561010f57600080fd5b6100c5610293565b341561012257600080fd5b61009d73ffffffffffffffffffffffffffffffffffffffff600435166102af565b341561014e57600080fd5b610156610338565b60405190815260200160405180910390f35b806000811161017657600080fd5b60025482111561018557600080fd5b5050565b6001543373ffffffffffffffffffffffffffffffffffffffff9081169116146101b157600080fd5b60015460005473ffffffffffffffffffffffffffffffffffffffff91821691167f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a60405160405180910390a3600180546000805473ffffffffffffffffffffffffffffffffffffffff1990811673ffffffffffffffffffffffffffffffffffffffff841617909155169055565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b6000543373ffffffffffffffffffffffffffffffffffffffff90811691161461027f57fe5b806000811161028d57600080fd5b50600255565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b6000543373ffffffffffffffffffffffffffffffffffffffff9081169116146102d457fe5b60005473ffffffffffffffffffffffffffffffffffffffff828116911614156102fc57600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff191673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b600254905600a165627a7a723058207c3717a0fab0538f138a38c18e85d8e97df2543bba184b60099d279062fd92fa0029

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000000000000000000000000000000000012a05f200

-----Decoded View---------------
Arg [0] : _gasPrice (uint256): 5000000000

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000000000000000000000000000000000012a05f200


Swarm Source

bzzr://7c3717a0fab0538f138a38c18e85d8e97df2543bba184b60099d279062fd92fa

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.