Contract 0x08BED6851CADc4EFc91147E3Ca63C39406B31a2D

 
Txn Hash
Block
From
To
Value [Txn Fee]
0xbc525530dc1d5d6c10b4801925b31b409a60028c28d97d761c1528131275face75731042021-05-20 12:37:0025 days 15 hrs ago0x1a1fae6633165e6a79dfa6801b607ac3df7462b1 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.013792135
0x7b122b857d47aab6a49c43cf20f36c9e6d2e9417c39b65e6a24aa894cffb06dd68119422021-04-23 9:45:3852 days 18 hrs ago0x5a63602c6a4c67984ef4acf5a0bcc41197d4b534 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.01396435
0xf3544695618760db7196ba2ea88edc8eaaa72bbd2339165aab32abcb16a6ec3f67274612021-04-20 9:45:2055 days 18 hrs ago0x5a63602c6a4c67984ef4acf5a0bcc41197d4b534 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.01337315
0xf9636a3bba8cd22f5654b5f3b55a46ce514931414a980413a3bec4f40c77b58366924762021-04-19 4:25:1956 days 23 hrs ago0x5a63602c6a4c67984ef4acf5a0bcc41197d4b534 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.01337315
0x19e303e6c7b101ffafc23a4d7e66aaafe06f6cb23641848f82d958cb222308ae66923462021-04-19 4:18:4956 days 23 hrs ago0x1a1fae6633165e6a79dfa6801b607ac3df7462b1 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.000181605
0x320d94269fc537493201ba59a942b1b8813e6ff94a37b33684d08dfcac510a9d66922542021-04-19 4:14:1356 days 23 hrs ago0x1a1fae6633165e6a79dfa6801b607ac3df7462b1 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.000181605
0x06bb15e7162c925b915117bf82cd7df26a5c18089ab814df8794eaffc27efbfd66922302021-04-19 4:13:0156 days 23 hrs ago0x1a1fae6633165e6a79dfa6801b607ac3df7462b1 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.00719622
0x69989fac9bc7a56fe83802a938e9ab704d537bad275794b9a8e1dc7f894c823a66922092021-04-19 4:11:5856 days 23 hrs ago0x1a1fae6633165e6a79dfa6801b607ac3df7462b1 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.000106785
0x9407edbe5a9c1cf13dbb55cdb82d4074e9cc1d20b2dc26130ce0e056a878f3fd66920482021-04-19 4:03:5556 days 23 hrs ago0x1a1fae6633165e6a79dfa6801b607ac3df7462b1 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.00719622
0xd2b1296bfa327b2d3a3dc42ef73df7b8682936fde57a67c98352d6f27134afa766072322021-04-16 5:13:0759 days 22 hrs ago0x5a63602c6a4c67984ef4acf5a0bcc41197d4b534 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.011940715
0x59d09f4150b9cf463374f1ff3f5be1698452b0fa9259deae16e4c31d5fa2381f65810952021-04-15 7:24:4660 days 20 hrs ago0x5a63602c6a4c67984ef4acf5a0bcc41197d4b534 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.0116087
0x8883c6ecd5a8123f9c1db89fa21bbf4628e449e5bd01ab95ecdbf60f28d0d22665196002021-04-13 4:07:3062 days 23 hrs ago0x5a63602c6a4c67984ef4acf5a0bcc41197d4b534 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.013389495
0x54ac9021123ed7d854a441bd7f84fce0dd8cf7f621eef455f2ca81fee3a30c4464942482021-04-12 6:57:2163 days 20 hrs ago0x5a63602c6a4c67984ef4acf5a0bcc41197d4b534 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.013389435
0x48bbd7be589ae392d9ea60ed34770ab70e80bf08e36c46050e16c92435b548dd64624562021-04-11 4:25:1064 days 23 hrs ago0x5a63602c6a4c67984ef4acf5a0bcc41197d4b534 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.013389495
0xbefabab9d0167edd46050335c6580d3abd5575d4078dadaced6649768c07fb6564360282021-04-10 6:22:0765 days 21 hrs ago0x5a63602c6a4c67984ef4acf5a0bcc41197d4b534 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.0116087
0x728af7d0db603237de3fae92ee3a73610a0fa1f7be6c1274df483bac4012e9dc64065642021-04-09 5:41:2166 days 22 hrs ago0x5a63602c6a4c67984ef4acf5a0bcc41197d4b534 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.013389495
0x354c485a3cd44b67ab2ab1067bf55de737aa23190ed48809a5bb55252dcef7c063781012021-04-08 4:54:4767 days 22 hrs ago0x5a63602c6a4c67984ef4acf5a0bcc41197d4b534 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.013389435
0x54cd910967a05a226b7b451d4be1767c4a8eb87c8a7d5376ce6fc3e84f616dd063492342021-04-07 4:19:4168 days 23 hrs ago0x5a63602c6a4c67984ef4acf5a0bcc41197d4b534 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.013389435
0xaa0770a2267f5882587e0157100c96dc2d29648fb8ac96bdd7714d584db15d4763226302021-04-06 5:34:0469 days 22 hrs ago0x5a63602c6a4c67984ef4acf5a0bcc41197d4b534 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.01160864
0xa855f3845450f618c82121cbfb9351ef94caf9e441d7e4f55dd5db97fe80ad5462955272021-04-05 6:29:0670 days 21 hrs ago0x5a09cc3dc95ebb230cc8869102a949149f1cc142 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.00036333
0xf6f3c50dea74e371bbefbc3c43e91b5e18cda67e742ea4e695addf529fbcf27262954652021-04-05 6:26:0070 days 21 hrs ago0x44ca3de71de5f0550c289fd8a89119a9880274ab IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.00044624
0xaaa507face851b10e3b4abd3e70e11b178014cdd7465023fbe9ef860aa153f5362954102021-04-05 6:23:1570 days 21 hrs ago0x6b4630f16a10c433fbfdb0da1ef6763b555e13a2 IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.00036333
0x3efb6e98b362fe3dba6103bc2c8638c4a939dd55074fc5ef1ec6e3153df9de3f62953472021-04-05 6:20:0670 days 21 hrs ago0x2f9736ffff454b192ced44d9a30906e1df3b8f4f IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.00044624
0xbb50581aaf353ec283d746e3587b6d4895f7f2e5e726e04dbb7a9185c4599ce562952922021-04-05 6:17:2170 days 21 hrs ago0x12943e48a579d2695558d2c208c370c2f8e59f5a IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.00036333
0x1ec4bb4ddd9674592a2759ee34f1f59efc0a3ba1f1928f3aa675aec6383c9e8362952302021-04-05 6:14:1570 days 21 hrs ago0x205c45dd17f7c382148e08ed5d65ec9d2dd2440a IN  0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB0.00044624
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x8dab54646dd77a20cc187fdd52447acfa223726c0e488f914fca0a24e59d4fc854711852021-03-07 11:52:1299 days 15 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d 0xed77ce44fefe9d90b61e23c36250e9a7ad440a070 BNB
0x8dab54646dd77a20cc187fdd52447acfa223726c0e488f914fca0a24e59d4fc854711852021-03-07 11:52:1299 days 15 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d USD Coin: USDC Token0 BNB
0x8dab54646dd77a20cc187fdd52447acfa223726c0e488f914fca0a24e59d4fc854711852021-03-07 11:52:1299 days 15 hrs ago Belt Finance: StableSwap Contract 0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB
0x1d7573ffbf105df31474cdda89e4d39f4defd8f361a4efb295d6d9af3c4f69d854710262021-03-07 11:44:1599 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d 0xed77ce44fefe9d90b61e23c36250e9a7ad440a070 BNB
0x1d7573ffbf105df31474cdda89e4d39f4defd8f361a4efb295d6d9af3c4f69d854710262021-03-07 11:44:1599 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d USD Coin: USDC Token0 BNB
0x1d7573ffbf105df31474cdda89e4d39f4defd8f361a4efb295d6d9af3c4f69d854710262021-03-07 11:44:1599 days 16 hrs ago Belt Finance: StableSwap Contract 0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB
0xdb42b1195fbf52ebd81b24b2614ed551735fe7ca94a56faaccfd8eb05f5f1afa54708672021-03-07 11:36:1899 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d 0xed77ce44fefe9d90b61e23c36250e9a7ad440a070 BNB
0xdb42b1195fbf52ebd81b24b2614ed551735fe7ca94a56faaccfd8eb05f5f1afa54708672021-03-07 11:36:1899 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d USD Coin: USDC Token0 BNB
0xdb42b1195fbf52ebd81b24b2614ed551735fe7ca94a56faaccfd8eb05f5f1afa54708672021-03-07 11:36:1899 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d USD Coin: USDC Token0 BNB
0xdb42b1195fbf52ebd81b24b2614ed551735fe7ca94a56faaccfd8eb05f5f1afa54708672021-03-07 11:36:1899 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d 0xed77ce44fefe9d90b61e23c36250e9a7ad440a070 BNB
0xdb42b1195fbf52ebd81b24b2614ed551735fe7ca94a56faaccfd8eb05f5f1afa54708672021-03-07 11:36:1899 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d USD Coin: USDC Token0 BNB
0xdb42b1195fbf52ebd81b24b2614ed551735fe7ca94a56faaccfd8eb05f5f1afa54708672021-03-07 11:36:1899 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d USD Coin: USDC Token0 BNB
0xdb42b1195fbf52ebd81b24b2614ed551735fe7ca94a56faaccfd8eb05f5f1afa54708672021-03-07 11:36:1899 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d 0xed77ce44fefe9d90b61e23c36250e9a7ad440a070 BNB
0xdb42b1195fbf52ebd81b24b2614ed551735fe7ca94a56faaccfd8eb05f5f1afa54708672021-03-07 11:36:1899 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d USD Coin: USDC Token0 BNB
0xdb42b1195fbf52ebd81b24b2614ed551735fe7ca94a56faaccfd8eb05f5f1afa54708672021-03-07 11:36:1899 days 16 hrs ago Belt Finance: StableSwap Contract 0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB
0xdb42b1195fbf52ebd81b24b2614ed551735fe7ca94a56faaccfd8eb05f5f1afa54708672021-03-07 11:36:1899 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d 0xed77ce44fefe9d90b61e23c36250e9a7ad440a070 BNB
0xdb42b1195fbf52ebd81b24b2614ed551735fe7ca94a56faaccfd8eb05f5f1afa54708672021-03-07 11:36:1899 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d USD Coin: USDC Token0 BNB
0xdb42b1195fbf52ebd81b24b2614ed551735fe7ca94a56faaccfd8eb05f5f1afa54708672021-03-07 11:36:1899 days 16 hrs ago Belt Finance: StableSwap Contract 0x08bed6851cadc4efc91147e3ca63c39406b31a2d0 BNB
0x26dbe618692a1d50096156653dd1fc57e9fcb3e37e4a82192a9ed2acbfb361f554707082021-03-07 11:28:2199 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d 0xed77ce44fefe9d90b61e23c36250e9a7ad440a070 BNB
0x26dbe618692a1d50096156653dd1fc57e9fcb3e37e4a82192a9ed2acbfb361f554707082021-03-07 11:28:2199 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d USD Coin: USDC Token0 BNB
0x26dbe618692a1d50096156653dd1fc57e9fcb3e37e4a82192a9ed2acbfb361f554707082021-03-07 11:28:2199 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d USD Coin: USDC Token0 BNB
0x26dbe618692a1d50096156653dd1fc57e9fcb3e37e4a82192a9ed2acbfb361f554707082021-03-07 11:28:2199 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d 0xed77ce44fefe9d90b61e23c36250e9a7ad440a070 BNB
0x26dbe618692a1d50096156653dd1fc57e9fcb3e37e4a82192a9ed2acbfb361f554707082021-03-07 11:28:2199 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d 0xed77ce44fefe9d90b61e23c36250e9a7ad440a070 BNB
0x26dbe618692a1d50096156653dd1fc57e9fcb3e37e4a82192a9ed2acbfb361f554707082021-03-07 11:28:2199 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d USD Coin: USDC Token0 BNB
0x26dbe618692a1d50096156653dd1fc57e9fcb3e37e4a82192a9ed2acbfb361f554707082021-03-07 11:28:2199 days 16 hrs ago 0x08bed6851cadc4efc91147e3ca63c39406b31a2d 0xed77ce44fefe9d90b61e23c36250e9a7ad440a070 BNB
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
bUSDC

Compiler Version
v0.6.12+commit.27d51765

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2021-02-28
*/

pragma solidity 0.6.12;
pragma experimental ABIEncoderV2;

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

contract Context {
    constructor () internal { }
    function _msgSender() internal view returns (address payable) {
        return msg.sender;
    }

    function _msgData() internal view returns (bytes memory) {
        this; 
        return msg.data;
    }
}

contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    constructor () internal {
        _owner = _msgSender();
        emit OwnershipTransferred(address(0), _owner);
    }
    function owner() public view returns (address) {
        return _owner;
    }
    modifier onlyOwner() {
        require(isOwner(), "Ownable: caller is not the owner");
        _;
    }
    function isOwner() public view returns (bool) {
        return _msgSender() == _owner;
    }
    function renounceOwnership() public onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }
    function transferOwnership(address newOwner) public onlyOwner {
        _transferOwnership(newOwner);
    }
    function _transferOwnership(address newOwner) internal {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

contract ERC20 is Context, IERC20 {
    using SafeMath for uint256;

    mapping (address => uint256) private _balances;

    mapping (address => mapping (address => uint256)) private _allowances;

    uint256 private _totalSupply;

    function totalSupply() override public view returns (uint256) {
        return _totalSupply;
    }
    function balanceOf(address account) override public view returns (uint256) {
        return _balances[account];
    }
    function transfer(address recipient, uint256 amount) override public returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }
    function allowance(address owner, address spender) override public view returns (uint256) {
        return _allowances[owner][spender];
    }
    function approve(address spender, uint256 amount) override public returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }
    function transferFrom(address sender, address recipient, uint256 amount) override public returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }
    function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
        return true;
    }
    function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
        return true;
    }
    function _transfer(address sender, address recipient, uint256 amount) internal {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }
    function _mint(address account, uint256 amount) internal {
        require(account != address(0), "ERC20: mint to the zero address");

        _totalSupply = _totalSupply.add(amount);
        _balances[account] = _balances[account].add(amount);
        emit Transfer(address(0), account, amount);
    }
    function _burn(address account, uint256 amount) internal {
        require(account != address(0), "ERC20: burn from the zero address");

        _balances[account] = _balances[account].sub(amount, "ERC20: burn amount exceeds balance");
        _totalSupply = _totalSupply.sub(amount);
        emit Transfer(account, address(0), amount);
    }
    function _approve(address owner, address spender, uint256 amount) internal {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
    function _burnFrom(address account, uint256 amount) internal {
        _burn(account, amount);
        _approve(account, _msgSender(), _allowances[account][_msgSender()].sub(amount, "ERC20: burn amount exceeds allowance"));
    }
}

abstract contract ERC20Detailed is IERC20 {
    string private _name;
    string private _symbol;
    uint8 private _decimals;

    constructor (string memory name, string memory symbol, uint8 decimals) public {
        _name = name;
        _symbol = symbol;
        _decimals = decimals;
    }
    function name() public view returns (string memory) {
        return _name;
    }
    function symbol() public view returns (string memory) {
        return _symbol;
    }
    function decimals() public view returns (uint8) {
        return _decimals;
    }
}

contract ReentrancyGuard {
    uint256 private _guardCounter;

    constructor () internal {
        _guardCounter = 1;
    }

    modifier nonReentrant() {
        _guardCounter += 1;
        uint256 localCounter = _guardCounter;
        _;
        require(localCounter == _guardCounter, "ReentrancyGuard: reentrant call");
    }
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;

        return c;
    }
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

library Address {
    function isContract(address account) internal view returns (bool) {
        bytes32 codehash;
        bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;
        assembly { codehash := extcodehash(account) }
        return (codehash != 0x0 && codehash != accountHash);
    }
    function toPayable(address account) internal pure returns (address payable) {
        return address(uint160(account));
    }
    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        (bool success, ) = recipient.call{value: amount}("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }
}

library SafeERC20 {
    using SafeMath for uint256;
    using Address for address;

    function safeTransfer(IERC20 token, address to, uint256 value) internal {
        callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value));
    }

    function safeTransferFrom(IERC20 token, address from, address to, uint256 value) internal {
        callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value));
    }

    function safeApprove(IERC20 token, address spender, uint256 value) internal {
        require((value == 0) || (token.allowance(address(this), spender) == 0),
            "SafeERC20: approve from non-zero to non-zero allowance"
        );
        callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value));
    }

    function safeIncreaseAllowance(IERC20 token, address spender, uint256 value) internal {
        uint256 newAllowance = token.allowance(address(this), spender).add(value);
        callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance));
    }

    function safeDecreaseAllowance(IERC20 token, address spender, uint256 value) internal {
        uint256 newAllowance = token.allowance(address(this), spender).sub(value, "SafeERC20: decreased allowance below zero");
        callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance));
    }
    function callOptionalReturn(IERC20 token, bytes memory data) private {
        require(address(token).isContract(), "SafeERC20: call to non-contract");

        (bool success, bytes memory returndata) = address(token).call(data);
        require(success, "SafeERC20: low-level call failed");

        if (returndata.length > 0) {
            require(abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed");
        }
    }
}

interface Venus {
    function deposit(address _userAddress, uint256 _wantAmt) external returns (uint256);
    function withdraw(address _userAddress, uint256 _wantAmt) external returns (uint256);

    function sharesTotal() external view returns (uint);
    function wantLockedTotal() external view returns (uint);
}

contract bUSDC is ERC20, ERC20Detailed, ReentrancyGuard, Ownable {
    using SafeERC20 for IERC20;
    using Address for address;
    using SafeMath for uint256;

    uint256 public pool;
    address public token;
    address public venus;

    enum Lender {
        NONE,
        VENUS
    }

    Lender public provider = Lender.NONE;

    constructor (string memory name_, string memory symbol_, address _token, address _venus) public ERC20Detailed(name_, symbol_, 18) {
        token = _token;
        venus = _venus;
        approveToken();
    }

    function deposit(uint256 _amount)
    external
    nonReentrant
    {
        require(_amount > 0, "deposit must be greater than 0");
        pool = calcPoolValueInToken();

        IERC20(token).safeTransferFrom(msg.sender, address(this), _amount);

        uint256 shares = 0;
        if (pool == 0) {
            shares = _amount;
            pool = _amount;
        } else {
            //0.1%(999/1000) enterance fee 
            shares = (_amount.mul(totalSupply())).div(pool).mul(999).div(1000);
        }
        pool = calcPoolValueInToken();
        _mint(msg.sender, shares);
        rebalance();
    }

    function withdraw(uint256 _shares)
    external
    nonReentrant
    {
        require(_shares > 0, "withdraw must be greater than 0");

        uint256 ibalance = balanceOf(msg.sender);
        require(_shares <= ibalance, "insufficient balance");

        pool = calcPoolValueInToken();

        uint256 r = (pool.mul(_shares)).div(totalSupply());
        _burn(msg.sender, _shares);

        uint256 b = IERC20(token).balanceOf(address(this));
        if (b < r) {
            _withdrawSome(r.sub(b));
        }

        IERC20(token).safeTransfer(msg.sender, r);
        pool = calcPoolValueInToken();
    }

    function recommend() public view returns (Lender) {
        return Lender.VENUS;
    }

    function approveToken() public {
        IERC20(token).safeApprove(venus, uint(-1));
    }

    function balance() public view returns (uint256) {
        return IERC20(token).balanceOf(address(this));
    }

    function balanceVenus() public view returns (uint256) {
        return Venus(venus).wantLockedTotal();
    }

    function rebalance() public {
        Lender newProvider = recommend();

        if (newProvider != provider) {
            _withdrawAll();
        }

        if (balance() > 0) {
            if (newProvider == Lender.VENUS) {
                _supplyVenus(balance());
            }
        }

        provider = newProvider;
    }

    function _withdrawAll() internal {
        uint256 amount = balanceVenus();

        if (amount > 0) {
            _withdrawVenus(amount.sub(1));
        }
    }

    function _withdrawSome(uint256 _amount) internal returns (bool) {
        uint256 amount = balanceVenus();

        if (amount > 0) {
            _withdrawVenus(_amount);
        }

        return true;
    }

    function _supplyVenus(uint amount) internal {
        require(Venus(venus).deposit(msg.sender, amount) > 0, "VENUS: supply failed");
    }

    function _withdrawVenus(uint amount) internal {
        require(Venus(venus).withdraw(msg.sender, amount) > 0, "VENUS: withdraw failed");
    }

    function calcPoolValueInToken() public view returns (uint) {
        return balanceVenus()
        .add(balance());
    }

    function getPricePerFullShare() public view returns (uint) {
        uint _pool = calcPoolValueInToken();
        return _pool.mul(1e18).div(totalSupply());
    }
}

Contract ABI

[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"address","name":"_venus","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","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":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"approveToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"balance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"balanceVenus","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"calcPoolValueInToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"deposit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getPricePerFullShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pool","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"provider","outputs":[{"internalType":"enum bUSDC.Lender","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rebalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"recommend","outputs":[{"internalType":"enum bUSDC.Lender","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"token","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","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":[],"name":"venus","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_shares","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]

6080604052600a805460ff60a01b191690553480156200001e57600080fd5b50604051620023883803806200238883398101604081905262000041916200051c565b8383601282600390805190602001906200005d929190620003b8565b50815162000073906004906020850190620003b8565b506005805460ff191660ff92909216919091179055505060016006556200009962000129565b600780546001600160a01b0319166001600160a01b0392831617908190556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3600980546001600160a01b038085166001600160a01b031992831617909255600a8054928416929091169190911790556200011f6200012d565b5050505062000756565b3390565b600a546009546200015a916001600160a01b0391821691166000196200015c602090811b62000b5617901c565b565b801580620001eb5750604051636eb1769f60e11b81526001600160a01b0384169063dd62ed3e90620001959030908690600401620005e1565b60206040518083038186803b158015620001ae57600080fd5b505afa158015620001c3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001e99190620005aa565b155b620002135760405162461bcd60e51b81526004016200020a9062000693565b60405180910390fd5b6200026e8363095ea7b360e01b848460405160240162000235929190620005fb565b60408051808303601f190181529190526020810180516001600160e01b0319939093166001600160e01b03938416179052906200027316565b505050565b62000292826001600160a01b03166200037b60201b62000c551760201c565b620002b15760405162461bcd60e51b81526004016200020a90620006f0565b60006060836001600160a01b031683604051620002cf9190620005c3565b6000604051808303816000865af19150503d80600081146200030e576040519150601f19603f3d011682016040523d82523d6000602084013e62000313565b606091505b509150915081620003385760405162461bcd60e51b81526004016200020a9062000614565b805115620003755780806020019051810190620003569190620004f3565b620003755760405162461bcd60e51b81526004016200020a9062000649565b50505050565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708115801590620003b05750808214155b949350505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620003fb57805160ff19168380011785556200042b565b828001600101855582156200042b579182015b828111156200042b5782518255916020019190600101906200040e565b50620004399291506200043d565b5090565b5b808211156200043957600081556001016200043e565b80516001600160a01b03811681146200046c57600080fd5b92915050565b600082601f83011262000483578081fd5b81516001600160401b03808211156200049a578283fd5b604051601f8301601f191681016020018281118282101715620004bb578485fd5b604052828152925082848301602001861015620004d757600080fd5b620004ea83602083016020880162000727565b50505092915050565b60006020828403121562000505578081fd5b8151801515811462000515578182fd5b9392505050565b6000806000806080858703121562000532578283fd5b84516001600160401b038082111562000549578485fd5b620005578883890162000472565b955060208701519150808211156200056d578485fd5b506200057c8782880162000472565b9350506200058e866040870162000454565b91506200059f866060870162000454565b905092959194509250565b600060208284031215620005bc578081fd5b5051919050565b60008251620005d781846020870162000727565b9190910192915050565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03929092168252602082015260400190565b6020808252818101527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604082015260600190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b60208082526036908201527f5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f60408201527f20746f206e6f6e2d7a65726f20616c6c6f77616e636500000000000000000000606082015260800190565b6020808252601f908201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604082015260600190565b60005b83811015620007445781810151838201526020016200072a565b83811115620003755750506000910152565b611c2280620007666000396000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c806377c7b8fc116100f9578063a457c2d711610097578063b6b55f2511610071578063b6b55f251461032f578063dd62ed3e14610342578063f2fde38b14610355578063fc0c546a14610368576101c4565b8063a457c2d714610301578063a9059cbb14610314578063b69ef8a814610327576101c4565b80638f32d59b116100d35780638f32d59b146102e157806395d89b41146102e957806399b71d5c146102f1578063a160176d146102f9576101c4565b806377c7b8fc146102c95780637d7c2a1c146102d15780638da5cb5b146102d9576101c4565b80632e1a7d4d116101665780634fdac0ef116101405780634fdac0ef1461029e57806370a08231146102a65780637137ef99146102b9578063715018a6146102c1576101c4565b80632e1a7d4d14610261578063313ce56714610276578063395093511461028b576101c4565b806316f0115b116101a257806316f0115b1461021c57806318160ddd146102315780631df294fb1461023957806323b872dd1461024e576101c4565b806306fdde03146101c9578063085d4883146101e7578063095ea7b3146101fc575b600080fd5b6101d1610370565b6040516101de9190611616565b60405180910390f35b6101ef610406565b6040516101de9190611602565b61020f61020a3660046114f6565b610416565b6040516101de91906115f7565b610224610434565b6040516101de9190611aff565b61022461043a565b610241610440565b6040516101de919061158c565b61020f61025c3660046114b6565b61044f565b61027461026f366004611540565b6104d6565b005b61027e610655565b6040516101de9190611b08565b61020f6102993660046114f6565b61065e565b6102246106ac565b6102246102b4366004611467565b61072e565b610224610749565b610274610764565b6102246107d2565b610274610802565b61024161089b565b61020f6108aa565b6101d16108d0565b610274610931565b6101ef610952565b61020f61030f3660046114f6565b610957565b61020f6103223660046114f6565b6109bf565b6102246109d3565b61027461033d366004611540565b610a1c565b610224610350366004611482565b610aec565b610274610363366004611467565b610b17565b610241610b47565b60038054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156103fc5780601f106103d1576101008083540402835291602001916103fc565b820191906000526020600020905b8154815290600101906020018083116103df57829003601f168201915b5050505050905090565b600a54600160a01b900460ff1681565b600061042a610423610c91565b8484610c95565b5060015b92915050565b60085481565b60025490565b600a546001600160a01b031681565b600061045c848484610d49565b6104cc84610468610c91565b6104c785604051806060016040528060288152602001611ba0602891396001600160a01b038a166000908152600160205260408120906104a6610c91565b6001600160a01b031681526020810191909152604001600020549190610e53565b610c95565b5060019392505050565b6006805460010190819055816105075760405162461bcd60e51b81526004016104fe90611882565b60405180910390fd5b60006105123361072e565b9050808311156105345760405162461bcd60e51b81526004016104fe90611854565b61053c610749565b600855600061055f61054c61043a565b6008546105599087610e7f565b90610ec0565b905061056b3385610f02565b6009546040516370a0823160e01b81526000916001600160a01b0316906370a082319061059c90309060040161158c565b60206040518083038186803b1580156105b457600080fd5b505afa1580156105c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ec9190611558565b90508181101561060a576106086106038383610fd8565b61101a565b505b600954610621906001600160a01b03163384611036565b610629610749565b6008555050600654821490506106515760405162461bcd60e51b81526004016104fe90611a04565b5050565b60055460ff1690565b600061042a61066b610c91565b846104c7856001600061067c610c91565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611055565b600a54604080516342da4eb360e01b815290516000926001600160a01b0316916342da4eb3916004808301926020929190829003018186803b1580156106f157600080fd5b505afa158015610705573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107299190611558565b905090565b6001600160a01b031660009081526020819052604090205490565b60006107296107566109d3565b61075e6106ac565b90611055565b61076c6108aa565b6107885760405162461bcd60e51b81526004016104fe9061181f565b6007546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600780546001600160a01b0319169055565b6000806107dd610749565b90506107fc6107ea61043a565b61055983670de0b6b3a7640000610e7f565b91505090565b600061080c610952565b600a54909150600160a01b900460ff16600181111561082757fe5b81600181111561083357fe5b146108405761084061107a565b600061084a6109d3565b111561087457600181600181111561085e57fe5b14156108745761087461086f6109d3565b61109f565b600a805482919060ff60a01b1916600160a01b83600181111561089357fe5b021790555050565b6007546001600160a01b031690565b6007546000906001600160a01b03166108c1610c91565b6001600160a01b031614905090565b60048054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156103fc5780601f106103d1576101008083540402835291602001916103fc565b600a54600954610950916001600160a01b039182169116600019610b56565b565b600190565b600061042a610964610c91565b846104c785604051806060016040528060258152602001611bc8602591396001600061098e610c91565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610e53565b600061042a6109cc610c91565b8484610d49565b6009546040516370a0823160e01b81526000916001600160a01b0316906370a0823190610a0490309060040161158c565b60206040518083038186803b1580156106f157600080fd5b600680546001019081905581610a445760405162461bcd60e51b81526004016104fe90611983565b610a4c610749565b600855600954610a67906001600160a01b0316333085611141565b600060085460001415610a805750600882905581610aad565b610aaa6103e86105596103e7610aa4600854610559610a9d61043a565b8a90610e7f565b90610e7f565b90505b610ab5610749565b600855610ac23382611168565b610aca610802565b5060065481146106515760405162461bcd60e51b81526004016104fe90611a04565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b610b1f6108aa565b610b3b5760405162461bcd60e51b81526004016104fe9061181f565b610b4481611210565b50565b6009546001600160a01b031681565b801580610bde5750604051636eb1769f60e11b81526001600160a01b0384169063dd62ed3e90610b8c90309086906004016115b9565b60206040518083038186803b158015610ba457600080fd5b505afa158015610bb8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bdc9190611558565b155b610bfa5760405162461bcd60e51b81526004016104fe90611a3b565b610c508363095ea7b360e01b8484604051602401610c199291906115a0565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611292565b505050565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708115801590610c895750808214155b949350505050565b3390565b6001600160a01b038316610cbb5760405162461bcd60e51b81526004016104fe9061193f565b6001600160a01b038216610ce15760405162461bcd60e51b81526004016104fe906116d2565b6001600160a01b0380841660008181526001602090815260408083209487168084529490915290819020849055517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590610d3c908590611aff565b60405180910390a3505050565b6001600160a01b038316610d6f5760405162461bcd60e51b81526004016104fe906118fa565b6001600160a01b038216610d955760405162461bcd60e51b81526004016104fe90611649565b610dd281604051806060016040528060268152602001611b7a602691396001600160a01b0386166000908152602081905260409020549190610e53565b6001600160a01b038085166000908152602081905260408082209390935590841681522054610e019082611055565b6001600160a01b0380841660008181526020819052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d3c908590611aff565b60008184841115610e775760405162461bcd60e51b81526004016104fe9190611616565b505050900390565b600082610e8e5750600061042e565b82820282848281610e9b57fe5b0414610eb95760405162461bcd60e51b81526004016104fe906117de565b9392505050565b6000610eb983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611377565b6001600160a01b038216610f285760405162461bcd60e51b81526004016104fe906118b9565b610f6581604051806060016040528060228152602001611b58602291396001600160a01b0385166000908152602081905260409020549190610e53565b6001600160a01b038316600090815260208190526040902055600254610f8b9082610fd8565b6002556040516000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610fcc908590611aff565b60405180910390a35050565b6000610eb983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e53565b6000806110256106ac565b9050801561042a5761042a836113ae565b610c508363a9059cbb60e01b8484604051602401610c199291906115a0565b600082820183811015610eb95760405162461bcd60e51b81526004016104fe90611714565b60006110846106ac565b90508015610b4457610b4461109a826001610fd8565b6113ae565b600a546040516311f9fbc960e21b81526000916001600160a01b0316906347e7ef24906110d290339086906004016115a0565b602060405180830381600087803b1580156110ec57600080fd5b505af1158015611100573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111249190611558565b11610b445760405162461bcd60e51b81526004016104fe906117b0565b611162846323b872dd60e01b858585604051602401610c19939291906115d3565b50505050565b6001600160a01b03821661118e5760405162461bcd60e51b81526004016104fe90611ac8565b60025461119b9082611055565b6002556001600160a01b0382166000908152602081905260409020546111c19082611055565b6001600160a01b0383166000818152602081905260408082209390935591519091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610fcc908590611aff565b6001600160a01b0381166112365760405162461bcd60e51b81526004016104fe9061168c565b6007546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600780546001600160a01b0319166001600160a01b0392909216919091179055565b6112a4826001600160a01b0316610c55565b6112c05760405162461bcd60e51b81526004016104fe90611a91565b60006060836001600160a01b0316836040516112dc9190611570565b6000604051808303816000865af19150503d8060008114611319576040519150601f19603f3d011682016040523d82523d6000602084013e61131e565b606091505b5091509150816113405760405162461bcd60e51b81526004016104fe9061177b565b805115611162578080602001905181019061135b9190611520565b6111625760405162461bcd60e51b81526004016104fe906119ba565b600081836113985760405162461bcd60e51b81526004016104fe9190611616565b5060008385816113a457fe5b0495945050505050565b600a5460405163f3fef3a360e01b81526000916001600160a01b03169063f3fef3a3906113e190339086906004016115a0565b602060405180830381600087803b1580156113fb57600080fd5b505af115801561140f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114339190611558565b11610b445760405162461bcd60e51b81526004016104fe9061174b565b80356001600160a01b038116811461042e57600080fd5b600060208284031215611478578081fd5b610eb98383611450565b60008060408385031215611494578081fd5b61149e8484611450565b91506114ad8460208501611450565b90509250929050565b6000806000606084860312156114ca578081fd5b83356114d581611b42565b925060208401356114e581611b42565b929592945050506040919091013590565b60008060408385031215611508578182fd5b6115128484611450565b946020939093013593505050565b600060208284031215611531578081fd5b81518015158114610eb9578182fd5b600060208284031215611551578081fd5b5035919050565b600060208284031215611569578081fd5b5051919050565b60008251611582818460208701611b16565b9190910192915050565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b901515815260200190565b602081016002831061161057fe5b91905290565b6000602082528251806020840152611635816040850160208701611b16565b601f01601f19169190910160400192915050565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526026908201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160408201526564647265737360d01b606082015260800190565b60208082526022908201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604082015261737360f01b606082015260800190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b6020808252601690820152751591539554ce881dda5d1a191c985dc819985a5b195960521b604082015260600190565b6020808252818101527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604082015260600190565b6020808252601490820152731591539554ce881cdd5c1c1b1e4819985a5b195960621b604082015260600190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b602080825260149082015273696e73756666696369656e742062616c616e636560601b604082015260600190565b6020808252601f908201527f7769746864726177206d7573742062652067726561746572207468616e203000604082015260600190565b60208082526021908201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526024908201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646040820152637265737360e01b606082015260800190565b6020808252601e908201527f6465706f736974206d7573742062652067726561746572207468616e20300000604082015260600190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b60208082526036908201527f5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f60408201527520746f206e6f6e2d7a65726f20616c6c6f77616e636560501b606082015260800190565b6020808252601f908201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604082015260600190565b6020808252601f908201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604082015260600190565b90815260200190565b60ff91909116815260200190565b60005b83811015611b31578181015183820152602001611b19565b838111156111625750506000910152565b6001600160a01b0381168114610b4457600080fdfe45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ff54cd70b06c50014ba51977f7a7164e5c4e8fa8467ddbda18d4aa5023cdf9c964736f6c634300060c0033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d000000000000000000000000ed77ce44fefe9d90b61e23c36250e9a7ad440a07000000000000000000000000000000000000000000000000000000000000000962656c742055534443000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000056255534443000000000000000000000000000000000000000000000000000000

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

000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d000000000000000000000000ed77ce44fefe9d90b61e23c36250e9a7ad440a07000000000000000000000000000000000000000000000000000000000000000962656c742055534443000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000056255534443000000000000000000000000000000000000000000000000000000

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [2] : 0000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d
Arg [3] : 000000000000000000000000ed77ce44fefe9d90b61e23c36250e9a7ad440a07
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000009
Arg [5] : 62656c7420555344430000000000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [7] : 6255534443000000000000000000000000000000000000000000000000000000


Deployed ByteCode Sourcemap

11032:3646:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5898:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11344:36;;;:::i;:::-;;;;;;;:::i;2891:161::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;11204:19::-;;;:::i;:::-;;;;;;;:::i;2338:100::-;;;:::i;11257:20::-;;;:::i;:::-;;;;;;;:::i;3058:313::-;;;;;;:::i;:::-;;:::i;12251:632::-;;;;;;:::i;:::-;;:::i;:::-;;6080:83;;;:::i;:::-;;;;;;;:::i;3377:210::-;;;;;;:::i;:::-;;:::i;13208:110::-;;;:::i;2444:119::-;;;;;;:::i;:::-;;:::i;14378:124::-;;;:::i;1595:140::-;;;:::i;14510:165::-;;;:::i;13326:344::-;;;:::i;1298:79::-;;;:::i;1495:94::-;;;:::i;5987:87::-;;;:::i;12987:92::-;;;:::i;12891:88::-;;;:::i;3593:261::-;;;;;;:::i;:::-;;:::i;2569:167::-;;;;;;:::i;:::-;;:::i;13087:113::-;;;:::i;11610:633::-;;;;;;:::i;:::-;;:::i;2742:143::-;;;;;;:::i;:::-;;:::i;1741:109::-;;;;;;:::i;:::-;;:::i;11230:20::-;;;:::i;5898:83::-;5968:5;5961:12;;;;;;;;-1:-1:-1;;5961:12:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5935:13;;5961:12;;5968:5;;5961:12;;5968:5;5961:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5898:83;:::o;11344:36::-;;;-1:-1:-1;;;11344:36:0;;;;;:::o;2891:161::-;2966:4;2983:39;2992:12;:10;:12::i;:::-;3006:7;3015:6;2983:8;:39::i;:::-;-1:-1:-1;3040:4:0;2891:161;;;;;:::o;11204:19::-;;;;:::o;2338:100::-;2418:12;;2338:100;:::o;11257:20::-;;;-1:-1:-1;;;;;11257:20:0;;:::o;3058:313::-;3156:4;3173:36;3183:6;3191:9;3202:6;3173:9;:36::i;:::-;3220:121;3229:6;3237:12;:10;:12::i;:::-;3251:89;3289:6;3251:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3251:19:0;;;;;;:11;:19;;;;;;3271:12;:10;:12::i;:::-;-1:-1:-1;;;;;3251:33:0;;;;;;;;;;;;-1:-1:-1;3251:33:0;;;:89;:37;:89::i;:::-;3220:8;:121::i;:::-;-1:-1:-1;3359:4:0;3058:313;;;;;:::o;12251:632::-;6343:13;:18;;6360:1;6343:18;;;;;12342:11;12334:55:::1;;;;-1:-1:-1::0;;;12334:55:0::1;;;;;;;:::i;:::-;;;;;;;;;12402:16;12421:21;12431:10;12421:9;:21::i;:::-;12402:40;;12472:8;12461:7;:19;;12453:52;;;;-1:-1:-1::0;;;12453:52:0::1;;;;;;;:::i;:::-;12525:22;:20;:22::i;:::-;12518:4;:29:::0;12560:9:::1;12572:38;12596:13;:11;:13::i;:::-;12573:4;::::0;:17:::1;::::0;12582:7;12573:8:::1;:17::i;:::-;12572:23:::0;::::1;:38::i;:::-;12560:50;;12621:26;12627:10;12639:7;12621:5;:26::i;:::-;12679:5;::::0;12672:38:::1;::::0;-1:-1:-1;;;12672:38:0;;12660:9:::1;::::0;-1:-1:-1;;;;;12679:5:0::1;::::0;12672:23:::1;::::0;:38:::1;::::0;12704:4:::1;::::0;12672:38:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12660:50;;12729:1;12725;:5;12721:61;;;12747:23;12761:8;:1:::0;12767;12761:5:::1;:8::i;:::-;12747:13;:23::i;:::-;;12721:61;12801:5;::::0;12794:41:::1;::::0;-1:-1:-1;;;;;12801:5:0::1;12821:10;12833:1:::0;12794:26:::1;:41::i;:::-;12853:22;:20;:22::i;:::-;12846:4;:29:::0;-1:-1:-1;;6455:13:0;;6439:29;;;-1:-1:-1;6431:73:0;;;;-1:-1:-1;;;6431:73:0;;;;;;;:::i;:::-;12251:632;;:::o;6080:83::-;6146:9;;;;6080:83;:::o;3377:210::-;3457:4;3474:83;3483:12;:10;:12::i;:::-;3497:7;3506:50;3545:10;3506:11;:25;3518:12;:10;:12::i;:::-;-1:-1:-1;;;;;3506:25:0;;;;;;;;;;;;;;;;;-1:-1:-1;3506:25:0;;;:34;;;;;;;;;;;:38;:50::i;13208:110::-;13286:5;;13280:30;;;-1:-1:-1;;;13280:30:0;;;;13253:7;;-1:-1:-1;;;;;13286:5:0;;13280:28;;:30;;;;;;;;;;;;;;13286:5;13280:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13273:37;;13208:110;:::o;2444:119::-;-1:-1:-1;;;;;2537:18:0;2510:7;2537:18;;;;;;;;;;;;2444:119::o;14378:124::-;14431:4;14455:39;14484:9;:7;:9::i;:::-;14455:14;:12;:14::i;:::-;:28;;:39::i;1595:140::-;1423:9;:7;:9::i;:::-;1415:54;;;;-1:-1:-1;;;1415:54:0;;;;;;;:::i;:::-;1678:6:::1;::::0;1657:40:::1;::::0;1694:1:::1;::::0;-1:-1:-1;;;;;1678:6:0::1;::::0;1657:40:::1;::::0;1694:1;;1657:40:::1;1708:6;:19:::0;;-1:-1:-1;;;;;;1708:19:0::1;::::0;;1595:140::o;14510:165::-;14563:4;14580:10;14593:22;:20;:22::i;:::-;14580:35;;14633:34;14653:13;:11;:13::i;:::-;14633:15;:5;14643:4;14633:9;:15::i;:34::-;14626:41;;;14510:165;:::o;13326:344::-;13365:18;13386:11;:9;:11::i;:::-;13429:8;;13365:32;;-1:-1:-1;;;;13429:8:0;;;;13414:23;;;;;;;;:11;:23;;;;;;;;;13410:70;;13454:14;:12;:14::i;:::-;13508:1;13496:9;:7;:9::i;:::-;:13;13492:136;;;13545:12;13530:11;:27;;;;;;;;;13526:91;;;13578:23;13591:9;:7;:9::i;:::-;13578:12;:23::i;:::-;13640:8;:22;;13651:11;;13640:8;-1:-1:-1;;;;13640:22:0;-1:-1:-1;;;13651:11:0;13640:22;;;;;;;;;;;;;13326:344;:::o;1298:79::-;1363:6;;-1:-1:-1;;;;;1363:6:0;1298:79;:::o;1495:94::-;1575:6;;1535:4;;-1:-1:-1;;;;;1575:6:0;1559:12;:10;:12::i;:::-;-1:-1:-1;;;;;1559:22:0;;1552:29;;1495:94;:::o;5987:87::-;6059:7;6052:14;;;;;;;;-1:-1:-1;;6052:14:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6026:13;;6052:14;;6059:7;;6052:14;;6059:7;6052:14;;;;;;;;;;;;;;;;;;;;;;;;12987:92;13055:5;;13036;;13029:42;;-1:-1:-1;;;;;13036:5:0;;;;13055;-1:-1:-1;;13029:25:0;:42::i;:::-;12987:92::o;12891:88::-;12959:12;12891:88;:::o;3593:261::-;3678:4;3695:129;3704:12;:10;:12::i;:::-;3718:7;3727:96;3766:15;3727:96;;;;;;;;;;;;;;;;;:11;:25;3739:12;:10;:12::i;:::-;-1:-1:-1;;;;;3727:25:0;;;;;;;;;;;;;;;;;-1:-1:-1;3727:25:0;;;:34;;;;;;;;;;;:96;:38;:96::i;2569:167::-;2647:4;2664:42;2674:12;:10;:12::i;:::-;2688:9;2699:6;2664:9;:42::i;13087:113::-;13161:5;;13154:38;;-1:-1:-1;;;13154:38:0;;13127:7;;-1:-1:-1;;;;;13161:5:0;;13154:23;;:38;;13186:4;;13154:38;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11610:633;6343:13;:18;;6360:1;6343:18;;;;;11700:11;11692:54:::1;;;;-1:-1:-1::0;;;11692:54:0::1;;;;;;;:::i;:::-;11764:22;:20;:22::i;:::-;11757:4;:29:::0;11806:5:::1;::::0;11799:66:::1;::::0;-1:-1:-1;;;;;11806:5:0::1;11830:10;11850:4;11857:7:::0;11799:30:::1;:66::i;:::-;11878:14;11911:4;;11919:1;11911:9;11907:231;;;-1:-1:-1::0;11968:4:0::1;:14:::0;;;11946:7;11907:231:::1;;;12069:57;12121:4;12069:47;12112:3;12069:38;12102:4;;12070:26;12082:13;:11;:13::i;:::-;12070:7:::0;;:11:::1;:26::i;12069:38::-;:42:::0;::::1;:47::i;:57::-;12060:66;;11907:231;12155:22;:20;:22::i;:::-;12148:4;:29:::0;12188:25:::1;12194:10;12206:6:::0;12188:5:::1;:25::i;:::-;12224:11;:9;:11::i;:::-;6419:1;6455:13:::0;;6439:12;:29;6431:73;;;;-1:-1:-1;;;6431:73:0;;;;;;;:::i;2742:143::-;-1:-1:-1;;;;;2850:18:0;;;2823:7;2850:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;2742:143::o;1741:109::-;1423:9;:7;:9::i;:::-;1415:54;;;;-1:-1:-1;;;1415:54:0;;;;;;;:::i;:::-;1814:28:::1;1833:8;1814:18;:28::i;:::-;1741:109:::0;:::o;11230:20::-;;;-1:-1:-1;;;;;11230:20:0;;:::o;9261:347::-;9357:10;;;9356:62;;-1:-1:-1;9373:39:0;;-1:-1:-1;;;9373:39:0;;-1:-1:-1;;;;;9373:15:0;;;;;:39;;9397:4;;9404:7;;9373:39;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:44;9356:62;9348:152;;;;-1:-1:-1;;;9348:152:0;;;;;;;:::i;:::-;9511:89;9530:5;9560:22;;;9584:7;9593:5;9537:62;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;9537:62:0;;;;;;;;;;;;;;-1:-1:-1;;;;;9537:62:0;-1:-1:-1;;;;;;9537:62:0;;;;;;;;;;9511:18;:89::i;:::-;9261:347;;;:::o;7993:317::-;8053:4;8219:20;;8119:66;8259:15;;;;;:42;;;8290:11;8278:8;:23;;8259:42;8251:51;7993:317;-1:-1:-1;;;;7993:317:0:o;796:98::-;876:10;796:98;:::o;5005:338::-;-1:-1:-1;;;;;5099:19:0;;5091:68;;;;-1:-1:-1;;;5091:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;5178:21:0;;5170:68;;;;-1:-1:-1;;;5170:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;5251:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;;:36;;;5303:32;;;;;5281:6;;5303:32;:::i;:::-;;;;;;;;5005:338;;;:::o;3860:471::-;-1:-1:-1;;;;;3958:20:0;;3950:70;;;;-1:-1:-1;;;3950:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;4039:23:0;;4031:71;;;;-1:-1:-1;;;4031:71:0;;;;;;;:::i;:::-;4135;4157:6;4135:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4135:17:0;;:9;:17;;;;;;;;;;;;:71;:21;:71::i;:::-;-1:-1:-1;;;;;4115:17:0;;;:9;:17;;;;;;;;;;;:91;;;;4240:20;;;;;;;:32;;4265:6;4240:24;:32::i;:::-;-1:-1:-1;;;;;4217:20:0;;;:9;:20;;;;;;;;;;;;:55;;;;4288:35;;;;;;;;;;4316:6;;4288:35;:::i;6872:192::-;6958:7;6994:12;6986:6;;;;6978:29;;;;-1:-1:-1;;;6978:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;7030:5:0;;;6872:192::o;7070:250::-;7128:7;7152:6;7148:47;;-1:-1:-1;7182:1:0;7175:8;;7148:47;7219:5;;;7223:1;7219;:5;:1;7243:5;;;;;:10;7235:56;;;;-1:-1:-1;;;7235:56:0;;;;;;;:::i;:::-;7311:1;7070:250;-1:-1:-1;;;7070:250:0:o;7326:132::-;7384:7;7411:39;7415:1;7418;7411:39;;;;;;;;;;;;;;;;;:3;:39::i;4651:348::-;-1:-1:-1;;;;;4727:21:0;;4719:67;;;;-1:-1:-1;;;4719:67:0;;;;;;;:::i;:::-;4820:68;4843:6;4820:68;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4820:18:0;;:9;:18;;;;;;;;;;;;:68;:22;:68::i;:::-;-1:-1:-1;;;;;4799:18:0;;:9;:18;;;;;;;;;;:89;4914:12;;:24;;4931:6;4914:16;:24::i;:::-;4899:12;:39;4954:37;;4980:1;;-1:-1:-1;;;;;4954:37:0;;;;;;;4984:6;;4954:37;:::i;:::-;;;;;;;;4651:348;;:::o;6730:136::-;6788:7;6815:43;6819:1;6822;6815:43;;;;;;;;;;;;;;;;;:3;:43::i;13853:216::-;13911:4;13928:14;13945;:12;:14::i;:::-;13928:31;-1:-1:-1;13976:10:0;;13972:66;;14003:23;14018:7;14003:14;:23::i;8865:176::-;8948:85;8967:5;8997:23;;;9022:2;9026:5;8974:58;;;;;;;;;:::i;6543:181::-;6601:7;6633:5;;;6657:6;;;;6649:46;;;;-1:-1:-1;;;6649:46:0;;;;;;;:::i;13678:167::-;13722:14;13739;:12;:14::i;:::-;13722:31;-1:-1:-1;13770:10:0;;13766:72;;13797:29;13812:13;:6;13823:1;13812:10;:13::i;:::-;13797:14;:29::i;14077:140::-;14146:5;;14140:40;;-1:-1:-1;;;14140:40:0;;14183:1;;-1:-1:-1;;;;;14146:5:0;;14140:20;;:40;;14161:10;;14173:6;;14140:40;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:44;14132:77;;;;-1:-1:-1;;;14132:77:0;;;;;;;:::i;9049:204::-;9150:95;9169:5;9199:27;;;9228:4;9234:2;9238:5;9176:68;;;;;;;;;;:::i;9150:95::-;9049:204;;;;:::o;4337:308::-;-1:-1:-1;;;;;4413:21:0;;4405:65;;;;-1:-1:-1;;;4405:65:0;;;;;;;:::i;:::-;4498:12;;:24;;4515:6;4498:16;:24::i;:::-;4483:12;:39;-1:-1:-1;;;;;4554:18:0;;:9;:18;;;;;;;;;;;:30;;4577:6;4554:22;:30::i;:::-;-1:-1:-1;;;;;4533:18:0;;:9;:18;;;;;;;;;;;:51;;;;4600:37;;4533:18;;:9;4600:37;;;;4630:6;;4600:37;:::i;1856:229::-;-1:-1:-1;;;;;1930:22:0;;1922:73;;;;-1:-1:-1;;;1922:73:0;;;;;;;:::i;:::-;2032:6;;2011:38;;-1:-1:-1;;;;;2011:38:0;;;;2032:6;;2011:38;;2032:6;;2011:38;2060:6;:17;;-1:-1:-1;;;;;;2060:17:0;-1:-1:-1;;;;;2060:17:0;;;;;;;;;;1856:229::o;10245:453::-;10333:27;10341:5;-1:-1:-1;;;;;10333:25:0;;:27::i;:::-;10325:71;;;;-1:-1:-1;;;10325:71:0;;;;;;;:::i;:::-;10410:12;10424:23;10459:5;-1:-1:-1;;;;;10451:19:0;10471:4;10451:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10409:67;;;;10495:7;10487:52;;;;-1:-1:-1;;;10487:52:0;;;;;;;:::i;:::-;10556:17;;:21;10552:139;;10613:10;10602:30;;;;;;;;;;;;:::i;:::-;10594:85;;;;-1:-1:-1;;;10594:85:0;;;;;;;:::i;7464:191::-;7550:7;7585:12;7578:5;7570:28;;;;-1:-1:-1;;;7570:28:0;;;;;;;;:::i;:::-;;7609:9;7625:1;7621;:5;;;;;;;7464:191;-1:-1:-1;;;;;7464:191:0:o;14225:145::-;14296:5;;14290:41;;-1:-1:-1;;;14290:41:0;;14334:1;;-1:-1:-1;;;;;14296:5:0;;14290:21;;:41;;14312:10;;14324:6;;14290:41;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:45;14282:80;;;;-1:-1:-1;;;14282:80:0;;;;;;;:::i;5:130:-1:-;72:20;;-1:-1;;;;;24127:54;;25424:35;;25414:2;;25473:1;;25463:12;555:241;;659:2;647:9;638:7;634:23;630:32;627:2;;;-1:-1;;665:12;627:2;727:53;772:7;748:22;727:53;:::i;803:366::-;;;924:2;912:9;903:7;899:23;895:32;892:2;;;-1:-1;;930:12;892:2;992:53;1037:7;1013:22;992:53;:::i;:::-;982:63;;1100:53;1145:7;1082:2;1125:9;1121:22;1100:53;:::i;:::-;1090:63;;886:283;;;;;:::o;1176:491::-;;;;1314:2;1302:9;1293:7;1289:23;1285:32;1282:2;;;-1:-1;;1320:12;1282:2;85:6;72:20;97:33;124:5;97:33;:::i;:::-;1372:63;-1:-1;1472:2;1511:22;;72:20;97:33;72:20;97:33;:::i;:::-;1276:391;;1480:63;;-1:-1;;;1580:2;1619:22;;;;344:20;;1276:391::o;1674:366::-;;;1795:2;1783:9;1774:7;1770:23;1766:32;1763:2;;;-1:-1;;1801:12;1763:2;1863:53;1908:7;1884:22;1863:53;:::i;:::-;1853:63;1953:2;1992:22;;;;344:20;;-1:-1;;;1757:283::o;2047:257::-;;2159:2;2147:9;2138:7;2134:23;2130:32;2127:2;;;-1:-1;;2165:12;2127:2;223:6;217:13;25570:5;23904:13;23897:21;25548:5;25545:32;25535:2;;-1:-1;;25581:12;2311:241;;2415:2;2403:9;2394:7;2390:23;2386:32;2383:2;;;-1:-1;;2421:12;2383:2;-1:-1;344:20;;2377:175;-1:-1;2377:175::o;2559:263::-;;2674:2;2662:9;2653:7;2649:23;2645:32;2642:2;;;-1:-1;;2680:12;2642:2;-1:-1;492:13;;2636:186;-1:-1;2636:186::o;11473:271::-;;3369:5;23245:12;3480:52;3525:6;3520:3;3513:4;3506:5;3502:16;3480:52;:::i;:::-;3544:16;;;;;11607:137;-1:-1;;11607:137::o;11751:222::-;-1:-1;;;;;24127:54;;;;3049:37;;11878:2;11863:18;;11849:124::o;11980:349::-;-1:-1;;;;;24127:54;;;;2908:58;;12315:2;12300:18;;11310:37;12143:2;12128:18;;12114:215::o;12336:333::-;-1:-1;;;;;24127:54;;;3049:37;;24127:54;;12655:2;12640:18;;3049:37;12491:2;12476:18;;12462:207::o;12676:444::-;-1:-1;;;;;24127:54;;;3049:37;;24127:54;;;;13023:2;13008:18;;3049:37;13106:2;13091:18;;11310:37;;;;12859:2;12844:18;;12830:290::o;13467:210::-;23904:13;;23897:21;3163:34;;13588:2;13573:18;;13559:118::o;13684:240::-;13820:2;13805:18;;25336:1;25326:12;;25316:2;;25342:9;25316:2;3652:59;;;13791:133;:::o;13931:310::-;;14078:2;14099:17;14092:47;3868:5;23245:12;23684:6;14078:2;14067:9;14063:18;23672:19;3962:52;4007:6;23712:14;14067:9;23712:14;14078:2;3988:5;3984:16;3962:52;:::i;:::-;25235:7;25219:14;-1:-1;;25215:28;4026:39;;;;23712:14;4026:39;;14049:192;-1:-1;;14049:192::o;14248:416::-;14448:2;14462:47;;;4302:2;14433:18;;;23672:19;4338:34;23712:14;;;4318:55;-1:-1;;;4393:12;;;4386:27;4432:12;;;14419:245::o;14671:416::-;14871:2;14885:47;;;4683:2;14856:18;;;23672:19;4719:34;23712:14;;;4699:55;-1:-1;;;4774:12;;;4767:30;4816:12;;;14842:245::o;15094:416::-;15294:2;15308:47;;;5067:2;15279:18;;;23672:19;5103:34;23712:14;;;5083:55;-1:-1;;;5158:12;;;5151:26;5196:12;;;15265:245::o;15517:416::-;15717:2;15731:47;;;5447:2;15702:18;;;23672:19;5483:29;23712:14;;;5463:50;5532:12;;;15688:245::o;15940:416::-;16140:2;16154:47;;;5783:2;16125:18;;;23672:19;-1:-1;;;23712:14;;;5799:45;5863:12;;;16111:245::o;16363:416::-;16563:2;16577:47;;;16548:18;;;23672:19;6150:34;23712:14;;;6130:55;6204:12;;;16534:245::o;16786:416::-;16986:2;17000:47;;;6455:2;16971:18;;;23672:19;-1:-1;;;23712:14;;;6471:43;6533:12;;;16957:245::o;17209:416::-;17409:2;17423:47;;;6784:2;17394:18;;;23672:19;6820:34;23712:14;;;6800:55;-1:-1;;;6875:12;;;6868:25;6912:12;;;17380:245::o;17632:416::-;17832:2;17846:47;;;17817:18;;;23672:19;7199:34;23712:14;;;7179:55;7253:12;;;17803:245::o;18055:416::-;18255:2;18269:47;;;7504:2;18240:18;;;23672:19;-1:-1;;;23712:14;;;7520:43;7582:12;;;18226:245::o;18478:416::-;18678:2;18692:47;;;7833:2;18663:18;;;23672:19;7869:33;23712:14;;;7849:54;7922:12;;;18649:245::o;18901:416::-;19101:2;19115:47;;;8173:2;19086:18;;;23672:19;8209:34;23712:14;;;8189:55;-1:-1;;;8264:12;;;8257:25;8301:12;;;19072:245::o;19324:416::-;19524:2;19538:47;;;8552:2;19509:18;;;23672:19;8588:34;23712:14;;;8568:55;-1:-1;;;8643:12;;;8636:29;8684:12;;;19495:245::o;19747:416::-;19947:2;19961:47;;;8935:2;19932:18;;;23672:19;8971:34;23712:14;;;8951:55;-1:-1;;;9026:12;;;9019:28;9066:12;;;19918:245::o;20170:416::-;20370:2;20384:47;;;9317:2;20355:18;;;23672:19;9353:32;23712:14;;;9333:53;9405:12;;;20341:245::o;20593:416::-;20793:2;20807:47;;;9656:2;20778:18;;;23672:19;9692:34;23712:14;;;9672:55;-1:-1;;;9747:12;;;9740:34;9793:12;;;20764:245::o;21016:416::-;21216:2;21230:47;;;10044:2;21201:18;;;23672:19;10080:33;23712:14;;;10060:54;10133:12;;;21187:245::o;21439:416::-;21639:2;21653:47;;;10384:2;21624:18;;;23672:19;10420:34;23712:14;;;10400:55;-1:-1;;;10475:12;;;10468:46;10533:12;;;21610:245::o;21862:416::-;22062:2;22076:47;;;10784:2;22047:18;;;23672:19;10820:33;23712:14;;;10800:54;10873:12;;;22033:245::o;22285:416::-;22485:2;22499:47;;;11124:2;22470:18;;;23672:19;11160:33;23712:14;;;11140:54;11213:12;;;22456:245::o;22708:222::-;11310:37;;;22835:2;22820:18;;22806:124::o;22937:214::-;24343:4;24332:16;;;;11426:35;;23060:2;23045:18;;23031:120::o;24875:268::-;24940:1;24947:101;24961:6;24958:1;24955:13;24947:101;;;25028:11;;;25022:18;25009:11;;;25002:39;24983:2;24976:10;24947:101;;;25063:6;25060:1;25057:13;25054:2;;;-1:-1;;24940:1;25110:16;;25103:27;24924:219::o;25365:117::-;-1:-1;;;;;24127:54;;25424:35;;25414:2;;25473:1;;25463:12

Swarm Source

ipfs://ff54cd70b06c50014ba51977f7a7164e5c4e8fa8467ddbda18d4aa5023cdf9c9
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.