ETH Price: $2,689.71 (-1.65%)

Contract

0xfB6247AA6B655491Fe77417cb4c9d653CF59F768
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To

There are no matching entries

Please try again later

Advanced mode:
Parent Transaction Hash Block
From
To
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SendBonus

Compiler Version
v0.5.9+commit.e560f70d

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2019-07-02
*/

pragma solidity ^0.5.9;

contract Owned {
    address public owner;

    constructor() public {
        owner = msg.sender;
    }

    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }

    function transferOwnership(address newOwner) public onlyOwner {
        owner = newOwner;
    }
}


contract SafeMath {
    function mul(uint a, uint b) internal pure returns (uint) {
        uint c = a * b;
        assert(a == 0 || c / a == b);
        return c;
    }

    function div(uint a, uint b) internal pure returns (uint) {
        assert(b > 0);
        uint c = a / b;
        assert(a == b * c + a % b);
        return c;
    }

    function sub(uint a, uint b) internal pure returns (uint) {
        assert(b <= a);
        return a - b;
    }

    function add(uint a, uint b) internal pure returns (uint) {
        uint c = a + b;
        assert(c >= a);
        return c;
    }
}

interface Qobit {
    function transfer(address _to, uint256 _value) external returns (bool success);
    function balanceOf(address _owner) external view returns (uint256 balance);
}

// THIS IS the Smart Contract for QOBIT FAMILY PLAN (QFP), QOB and Erc20-USDT Pool transfer for buyers.
contract SendBonus is SafeMath, Owned {
    Qobit public token;
    event BonusSent(address user, uint256 amount);

    constructor(address _addressOfToken) public {
        token = Qobit(_addressOfToken);
    }

    function sendQOB(address[] memory dests, uint256[] memory values) onlyOwner public returns(bool success) {
        require(dests.length > 0);
        require(dests.length == values.length);

        // calculate total amount
        uint256 totalAmount = 0;
        for (uint i = 0; i < values.length; i++) {
            totalAmount = add(totalAmount, values[i]);
        }

        require(totalAmount > 0, "total amount must > 0");
        require(totalAmount < token.balanceOf(address(this)), "total amount must < this address token balance ");

        for (uint j = 0; j < dests.length; j++) {
            token.transfer(dests[j], values[j]); // mul decimal
            emit BonusSent(dests[j], values[j]);
        }

        return true;
    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"dests","type":"address[]"},{"name":"values","type":"uint256[]"}],"name":"sendQOB","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_addressOfToken","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"user","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"BonusSent","type":"event"}]

608060405234801561001057600080fd5b506040516105d43803806105d48339818101604052602081101561003357600080fd5b5051600080546001600160a01b03199081163317909155600180546001600160a01b0390931692909116919091179055610562806100726000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80638da5cb5b14610051578063e3fb33bc14610075578063f2fde38b146101b0578063fc0c546a146101d8575b600080fd5b6100596101e0565b604080516001600160a01b039092168252519081900360200190f35b61019c6004803603604081101561008b57600080fd5b8101906020810181356401000000008111156100a657600080fd5b8201836020820111156100b857600080fd5b803590602001918460208302840111640100000000831117156100da57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929594936020810193503591505064010000000081111561012a57600080fd5b82018360208201111561013c57600080fd5b8035906020019184602083028401116401000000008311171561015e57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506101ef945050505050565b604080519115158252519081900360200190f35b6101d6600480360360208110156101c657600080fd5b50356001600160a01b03166104a0565b005b6100596104d9565b6000546001600160a01b031681565b600080546001600160a01b0316331461020757600080fd5b600083511161021557600080fd5b815183511461022357600080fd5b6000805b83518110156102575761024d8285838151811061024057fe5b60200260200101516104e8565b9150600101610227565b50600081116102a5576040805162461bcd60e51b81526020600482015260156024820152740746f74616c20616d6f756e74206d757374203e203605c1b604482015290519081900360640190fd5b600154604080516370a0823160e01b815230600482015290516001600160a01b03909216916370a0823191602480820192602092909190829003018186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d602081101561031a57600080fd5b505181106103595760405162461bcd60e51b815260040180806020018281038252602f8152602001806104ff602f913960400191505060405180910390fd5b60005b84518110156104955760015485516001600160a01b039091169063a9059cbb9087908490811061038857fe5b602002602001015186848151811061039c57fe5b60200260200101516040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b1580156103f357600080fd5b505af1158015610407573d6000803e3d6000fd5b505050506040513d602081101561041d57600080fd5b505084517f585aea9023b3d6418c7ef40da9891519064bb45db146787918f4a3c3103d55b69086908390811061044f57fe5b602002602001015185838151811061046357fe5b602090810291909101810151604080516001600160a01b039094168452918301528051918290030190a160010161035c565b506001949350505050565b6000546001600160a01b031633146104b757600080fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b031681565b6000828201838110156104f757fe5b939250505056fe746f74616c20616d6f756e74206d757374203c2074686973206164647265737320746f6b656e2062616c616e636520a265627a7a72305820cecdbd0618cb871bb024754b6143dfa2b65b5c0c50ce1be0de8280788809f61f64736f6c63430005090032000000000000000000000000bd1e7f594600dcaf7f483af55deacec0159a064e

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061004c5760003560e01c80638da5cb5b14610051578063e3fb33bc14610075578063f2fde38b146101b0578063fc0c546a146101d8575b600080fd5b6100596101e0565b604080516001600160a01b039092168252519081900360200190f35b61019c6004803603604081101561008b57600080fd5b8101906020810181356401000000008111156100a657600080fd5b8201836020820111156100b857600080fd5b803590602001918460208302840111640100000000831117156100da57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929594936020810193503591505064010000000081111561012a57600080fd5b82018360208201111561013c57600080fd5b8035906020019184602083028401116401000000008311171561015e57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506101ef945050505050565b604080519115158252519081900360200190f35b6101d6600480360360208110156101c657600080fd5b50356001600160a01b03166104a0565b005b6100596104d9565b6000546001600160a01b031681565b600080546001600160a01b0316331461020757600080fd5b600083511161021557600080fd5b815183511461022357600080fd5b6000805b83518110156102575761024d8285838151811061024057fe5b60200260200101516104e8565b9150600101610227565b50600081116102a5576040805162461bcd60e51b81526020600482015260156024820152740746f74616c20616d6f756e74206d757374203e203605c1b604482015290519081900360640190fd5b600154604080516370a0823160e01b815230600482015290516001600160a01b03909216916370a0823191602480820192602092909190829003018186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d602081101561031a57600080fd5b505181106103595760405162461bcd60e51b815260040180806020018281038252602f8152602001806104ff602f913960400191505060405180910390fd5b60005b84518110156104955760015485516001600160a01b039091169063a9059cbb9087908490811061038857fe5b602002602001015186848151811061039c57fe5b60200260200101516040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b1580156103f357600080fd5b505af1158015610407573d6000803e3d6000fd5b505050506040513d602081101561041d57600080fd5b505084517f585aea9023b3d6418c7ef40da9891519064bb45db146787918f4a3c3103d55b69086908390811061044f57fe5b602002602001015185838151811061046357fe5b602090810291909101810151604080516001600160a01b039094168452918301528051918290030190a160010161035c565b506001949350505050565b6000546001600160a01b031633146104b757600080fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b031681565b6000828201838110156104f757fe5b939250505056fe746f74616c20616d6f756e74206d757374203c2074686973206164647265737320746f6b656e2062616c616e636520a265627a7a72305820cecdbd0618cb871bb024754b6143dfa2b65b5c0c50ce1be0de8280788809f61f64736f6c63430005090032

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

000000000000000000000000bd1e7f594600dcaf7f483af55deacec0159a064e

-----Decoded View---------------
Arg [0] : _addressOfToken (address): 0xBd1E7f594600DCAF7f483af55deaCEc0159A064E

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000bd1e7f594600dcaf7f483af55deacec0159a064e


Deployed Bytecode Sourcemap

1256:996:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1256:996:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;49:20;;;:::i;:::-;;;;-1:-1:-1;;;;;49:20:0;;;;;;;;;;;;;;1481:768;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1481:768:0;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;1481:768:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;1481:768:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;1481:768:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;1481:768:0;;;;;;;;-1:-1:-1;1481:768:0;;-1:-1:-1;;21:11;5:28;;2:2;;;46:1;43;36:12;2:2;1481:768:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;1481:768:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;1481:768:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;1481:768:0;;-1:-1:-1;1481:768:0;;-1:-1:-1;;;;;1481:768:0:i;:::-;;;;;;;;;;;;;;;;;;230:97;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;230:97:0;-1:-1:-1;;;;;230:97:0;;:::i;:::-;;1301:18;;;:::i;49:20::-;;;-1:-1:-1;;;;;49:20:0;;:::o;1481:768::-;1572:12;196:5;;-1:-1:-1;;;;;196:5:0;182:10;:19;174:28;;;;;;1620:1;1605:5;:12;:16;1597:25;;;;;;1657:6;:13;1641:5;:12;:29;1633:38;;;;;;1719:19;;1753:109;1774:6;:13;1770:1;:17;1753:109;;;1823:27;1827:11;1840:6;1847:1;1840:9;;;;;;;;;;;;;;1823:3;:27::i;:::-;1809:41;-1:-1:-1;1789:3:0;;1753:109;;;;1896:1;1882:11;:15;1874:49;;;;;-1:-1:-1;;;1874:49:0;;;;;;;;;;;;-1:-1:-1;;;1874:49:0;;;;;;;;;;;;;;;1956:5;;:30;;;-1:-1:-1;;;1956:30:0;;1980:4;1956:30;;;;;;-1:-1:-1;;;;;1956:5:0;;;;:15;;:30;;;;;;;;;;;;;;;:5;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;1956:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1956:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1956:30:0;1942:44;;1934:104;;;;-1:-1:-1;;;1934:104:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2056:6;2051:167;2072:5;:12;2068:1;:16;2051:167;;;2106:5;;2121:8;;-1:-1:-1;;;;;2106:5:0;;;;:14;;2121:5;;2127:1;;2121:8;;;;;;;;;;;;2131:6;2138:1;2131:9;;;;;;;;;;;;;;2106:35;;;;;;;;;;;;;-1:-1:-1;;;;;2106:35:0;-1:-1:-1;;;;;2106:35:0;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2106:35:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2106:35:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;2186:8:0;;2176:30;;2186:5;;2192:1;;2186:8;;;;;;;;;;;;2196:6;2203:1;2196:9;;;;;;;;;;;;;;;;;;;2176:30;;;-1:-1:-1;;;;;2176:30:0;;;;;;;;;;;;;;;;;;2086:3;;2051:167;;;-1:-1:-1;2237:4:0;;1481:768;-1:-1:-1;;;;1481:768:0:o;230:97::-;196:5;;-1:-1:-1;;;;;196:5:0;182:10;:19;174:28;;;;;;303:5;:16;;-1:-1:-1;;;;;;303:16:0;-1:-1:-1;;;;;303:16:0;;;;;;;;;;230:97::o;1301:18::-;;;-1:-1:-1;;;;;1301:18:0;;:::o;819:135::-;871:4;897:5;;;920:6;;;;913:14;;;;945:1;819:135;-1:-1:-1;;;819:135:0:o

Swarm Source

bzzr://cecdbd0618cb871bb024754b6143dfa2b65b5c0c50ce1be0de8280788809f61f

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

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.