Contract 0x67855b3B5bcE00Fc88d7aaD9Ad878557FeAaF8e5

Contract Overview

Balance:
0 Ether

Token:
Txn Hash
Method
Block
From
To
Value
0xd914b4fc3a0a8bc6de54a1c13d45aea0d8dcdf9a28c7632209e0959d6fed50180x6080604094185432021-01-08 2:19:20580 days 15 hrs ago0x2289bc372bc6a46dd3ebc070fc5b7b7a49597a4e IN  Create: tokenSales0 Ether0.‍00151311
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
tokenSales

Compiler Version
v0.5.17+commit.d19bba13

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2021-01-08
*/

// SPDX-License-Identifier: MIT
/**
 *Submitted for verification at Etherscan.io on 2021-01-03
*/
interface IERC20 {
    function decimals() external view returns (uint8);
    function totalSupply() external view returns (uint);
    function balanceOf(address owner) external view returns (uint);
    function allowance(address owner, address spender) external view returns (uint);

    function approve(address spender, uint value) external returns (bool);
    function transfer(address to, uint value) external returns (bool);
    function transferFrom(address from, address to, uint value) external returns (bool);
}

interface V2 {
    function decimals() external view returns (uint8);
    function totalSupply() external view returns (uint);
    function balanceOf(address owner) external view returns (uint);
    function allowance(address owner, address spender) external view returns (uint);

    function approve(address spender, uint value) external returns (bool);
    function transfer(address to, uint value) external returns (bool);
    function transferFrom(address from, address to, uint value) external returns (bool);
}

pragma solidity ^0.5.17;
contract tokenSales {
    //string public name = "EthSwap Instant Exchange";
    
    // IERC20 public token;
    // V2 public rgp;
    address token = 0x87e9D87f85e80D79A77067A090F0748241892F74;
    address rgp = 0x153Eef8365e8F4ae62aC99b6C84520f81F572827;
    address owner;
    uint public price;
    uint112 private reserve0;           // uses single storage slot, accessible via getReserves
    uint112 private reserve1;           // uses single storage slot, accessible via getReserves
    
    //uint256 decimals = token.decimals();
    
    uint256 public tokensSold;
    uint256 public decimals;
    
    event sold(address account, uint price, address token);
    
    modifier onlyOwner() {
        require(
            msg.sender == owner,
            "RGP Token: Caller is not the Owner"
        );
        _;
    }

    constructor(uint _price) public payable{
        owner ==  msg.sender;
        price = _price;
 
        // SMC: 0xDA0bab807633f07f013f94DD0E6A4F96F8742B53
    }
    
    function() external payable{
        buyTokens();
        msg.value;
    }

    // Guards against integer overflows
    function mul(uint x, uint y) public pure returns (uint z) {
        require(y == 0 || (z = x * y) / y == x, 'ds-math-mul-overflow');
    }
        
        //uint tokens = contribution.mul(multiplier).div(TOKEN_PRICE);
        //tokenAllocations[investor] = tokenAllocations[investor].add(tokens);
        //tokensSold = tokensSold.add(tokens);
    
    function setBUSDCPrice(uint _price) public onlyOwner {
        price = _price;
    }
    
    function sendCollectedBUSDC (address payable _recipient)
        external
        onlyOwner
    {
        if (address(this).balance > 0) {
            _recipient.transfer(address(this).balance);
        }
    }

    function buyTokens() public payable {
        //CHECK FOR INPUT BALLANCE
        require(msg.value > 0, "RGP: INSUFFICIENT INPUT BALLANCE, YOU NEED TO SEND SOME BUSDT");
        
        //CALCULATE THE AMOUNT OF TOKEN TO PURCHASE
        uint256 tokensToBuy = mul(msg.value, uint256(10) ** IERC20(token).decimals()) / mul(price, uint256(10) ** V2(rgp).decimals());
        
        //ALLOWANCE FOR BOTH ADDRESS(THIS) AND MSG.SENDER
        V2(rgp).allowance(msg.sender, address(this));
        IERC20(token).allowance(address(this), msg.sender);
        
        //REQUIREMENT FOR ALLOWANCE
        tokensToBuy <= V2(rgp).allowance(address(this), msg.sender); // "RGP: CHECK THE TOKEN ALLOWANCE OF ADMIN";
        msg.value <= IERC20(token).allowance(msg.sender, address(this)); // "RGP: CHECK THE TOKEN BALANCE OF BUYER";
        
        //APPROVE FOR BOTH MSG.SENDER AND ADDRESS(THIS)
        V2(rgp).approve(msg.sender, tokensToBuy);
        IERC20(token).approve(address(this), msg.value);
        
        //TRANSFER FROM MSG.SENDER TO ADDRESS(THIS)
        IERC20(token).transferFrom(msg.sender, address(this), msg.value);
        
        //CHECK FOR BALANCE OF ADMIN
        uint256 rgpBalance = V2(rgp).balanceOf(address(this));
        
        //REQUIRE THAT THE BALANCE APPROVED IS GREATER THAN THE TOKENS TO BUY.
        require(rgpBalance >= tokensToBuy, "RGP: NOT ENOUGH TOKEN IN THE RESERVE");
        
        //TRANSFER FROM RGP TO MSG.SENDER
        V2(rgp).transferFrom(address(this), msg.sender, tokensToBuy);
        
        //REDUCE THE ALLOWANCE OF BOTH PARTIES
        IERC20(token).allowance(msg.sender, address(this)) + msg.value;
        V2(rgp).allowance(address(this), msg.sender) + tokensToBuy;
        
        //INCREASE THE ALLOWANCE OF BOTH PARTIES.
        IERC20(token).allowance(msg.sender, address(this)) + msg.value;
        V2(rgp).allowance(address(this), msg.sender) + tokensToBuy;
       
        // 
        tokensSold += msg.value; 
        emit sold(msg.sender, msg.value * price, address(token));
        
    }

    function endSale() public onlyOwner{
            // Send unsold tokens to the owner.
        require(V2(rgp).transfer(owner, address(this).balance), "RGP: Sales ended.");
        require(IERC20(token).transfer(owner, address(this).balance), "RGP: Sales ended.");
    
        msg.sender.transfer(address(this).balance);
    }
}

Contract ABI

[{"inputs":[{"internalType":"uint256","name":"_price","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"uint256","name":"price","type":"uint256"},{"indexed":false,"internalType":"address","name":"token","type":"address"}],"name":"sold","type":"event"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"constant":false,"inputs":[],"name":"buyTokens","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"endSale","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"x","type":"uint256"},{"internalType":"uint256","name":"y","type":"uint256"}],"name":"mul","outputs":[{"internalType":"uint256","name":"z","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"price","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address payable","name":"_recipient","type":"address"}],"name":"sendCollectedBUSDC","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_price","type":"uint256"}],"name":"setBUSDCPrice","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tokensSold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}]

60806040527387e9d87f85e80d79a77067a090f0748241892f746000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073153eef8365e8f4ae62ac99b6c84520f81f572827600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550604051611a5f380380611a5f833981810160405260208110156100cf57600080fd5b81019080805190602001909291905050503373ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a9050505080600381905550506119428061011d6000396000f3fe60806040526004361061007b5760003560e01c8063518ab2a81161004e578063518ab2a814610153578063a035b1fe1461017e578063c8a4ac9c146101a9578063d0febe4c146102025761007b565b8063313ce567146100855780633479d341146100b057806335845e1c146100eb578063380d831b1461013c575b61008361020c565b005b34801561009157600080fd5b5061009a61125b565b6040518082815260200191505060405180910390f35b3480156100bc57600080fd5b506100e9600480360360208110156100d357600080fd5b8101908080359060200190929190505050611261565b005b3480156100f757600080fd5b5061013a6004803603602081101561010e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611311565b005b34801561014857600080fd5b5061015161140b565b005b34801561015f57600080fd5b506101686117e9565b6040518082815260200191505060405180910390f35b34801561018a57600080fd5b506101936117ef565b6040518082815260200191505060405180910390f35b3480156101b557600080fd5b506101ec600480360360408110156101cc57600080fd5b8101908080359060200190929190803590602001909291905050506117f5565b6040518082815260200191505060405180910390f35b61020a61020c565b005b60003411610265576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603d8152602001806118d1603d913960400191505060405180910390fd5b600061031b600354600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b1580156102d557600080fd5b505afa1580156102e9573d6000803e3d6000fd5b505050506040513d60208110156102ff57600080fd5b810190808051906020019092919050505060ff16600a0a6117f5565b6103cc346000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561038657600080fd5b505afa15801561039a573d6000803e3d6000fd5b505050506040513d60208110156103b057600080fd5b810190808051906020019092919050505060ff16600a0a6117f5565b816103d357fe5b049050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e33306040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b1580156104a957600080fd5b505afa1580156104bd573d6000803e3d6000fd5b505050506040513d60208110156104d357600080fd5b8101908080519060200190929190505050506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e30336040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b1580156105b757600080fd5b505afa1580156105cb573d6000803e3d6000fd5b505050506040513d60208110156105e157600080fd5b810190808051906020019092919050505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e30336040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b1580156106c657600080fd5b505afa1580156106da573d6000803e3d6000fd5b505050506040513d60208110156106f057600080fd5b8101908080519060200190929190505050506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e33306040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b1580156107d457600080fd5b505afa1580156107e8573d6000803e3d6000fd5b505050506040513d60208110156107fe57600080fd5b810190808051906020019092919050505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b333836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156108b957600080fd5b505af11580156108cd573d6000803e3d6000fd5b505050506040513d60208110156108e357600080fd5b8101908080519060200190929190505050506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b330346040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561099d57600080fd5b505af11580156109b1573d6000803e3d6000fd5b505050506040513d60208110156109c757600080fd5b8101908080519060200190929190505050506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330346040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610ab557600080fd5b505af1158015610ac9573d6000803e3d6000fd5b505050506040513d6020811015610adf57600080fd5b8101908080519060200190929190505050506000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610b9257600080fd5b505afa158015610ba6573d6000803e3d6000fd5b505050506040513d6020811015610bbc57600080fd5b8101908080519060200190929190505050905081811015610c28576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602481526020018061188b6024913960400191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3033856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610d0557600080fd5b505af1158015610d19573d6000803e3d6000fd5b505050506040513d6020811015610d2f57600080fd5b810190808051906020019092919050505050346000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e33306040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b158015610e1457600080fd5b505afa158015610e28573d6000803e3d6000fd5b505050506040513d6020811015610e3e57600080fd5b8101908080519060200190929190505050505081600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e30336040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b158015610f2557600080fd5b505afa158015610f39573d6000803e3d6000fd5b505050506040513d6020811015610f4f57600080fd5b81019080805190602001909291905050505050346000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e33306040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b8101908080519060200190929190505050505081600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e30336040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b15801561114657600080fd5b505afa15801561115a573d6000803e3d6000fd5b505050506040513d602081101561117057600080fd5b81019080805190602001909291905050505050346005600082825401925050819055507fd8e3fe97d667b5208bdc3a260066030d84f9d556b27827f4dfe54e36d0cebf803360035434026000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001935050505060405180910390a15050565b60065481565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611307576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806118af6022913960400191505060405180910390fd5b8060038190555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146113b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806118af6022913960400191505060405180910390fd5b6000471115611408578073ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015611406573d6000803e3d6000fd5b505b50565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146114b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806118af6022913960400191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16476040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561157c57600080fd5b505af1158015611590573d6000803e3d6000fd5b505050506040513d60208110156115a657600080fd5b8101908080519060200190929190505050611629576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f5247503a2053616c657320656e6465642e00000000000000000000000000000081525060200191505060405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16476040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156116f357600080fd5b505af1158015611707573d6000803e3d6000fd5b505050506040513d602081101561171d57600080fd5b81019080805190602001909291905050506117a0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f5247503a2053616c657320656e6465642e00000000000000000000000000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156117e6573d6000803e3d6000fd5b50565b60055481565b60035481565b600080821480611812575082828385029250828161180f57fe5b04145b611884576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d6d6174682d6d756c2d6f766572666c6f7700000000000000000000000081525060200191505060405180910390fd5b9291505056fe5247503a204e4f5420454e4f55474820544f4b454e20494e20544845205245534552564552475020546f6b656e3a2043616c6c6572206973206e6f7420746865204f776e65725247503a20494e53554646494349454e5420494e5055542042414c4c414e43452c20594f55204e45454420544f2053454e4420534f4d45204255534454a265627a7a7231582095667b548fece17e4e94f988e8ae7383e6fe7c7c39938236746e0221fe95fcf064736f6c634300051100320000000000000000000000000000000000000000000000000000000000000002

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

0000000000000000000000000000000000000000000000000000000000000002

-----Decoded View---------------
Arg [0] : _price (uint256): 2

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


Deployed ByteCode Sourcemap

1192:4297:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2269:11;:9;:11::i;:::-;1192:4297;1787:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1787:23:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2719:86;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2719:86:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2719:86:0;;;;;;;;;;;;;;;;;:::i;:::-;;2817:217;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2817:217:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2817:217:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;5155:331;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5155:331:0;;;:::i;:::-;;1755:25;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1755:25:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1481:17;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1481:17:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2357:140;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2357:140:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2357:140:0;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3042:2105;;;:::i;:::-;;;3145:1;3133:9;:13;3125:87;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3286:19;3366:45;3370:5;;3395:3;;;;;;;;;;;3392:16;;;:18;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3392:18:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3392:18:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3392:18:0;;;;;;;;;;;;;;;;3377:33;;3385:2;3377:33;3366:3;:45::i;:::-;3308:55;3312:9;3345:5;;;;;;;;;;;3338:22;;;:24;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3338:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3338:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3338:24:0;;;;;;;;;;;;;;;;3323:39;;3331:2;3323:39;3308:3;:55::i;:::-;:103;;;;;;3286:125;;3494:3;;;;;;;;;;;3491:17;;;3509:10;3529:4;3491:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3491:44:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3491:44:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3491:44:0;;;;;;;;;;;;;;;;;3553:5;;;;;;;;;;;3546:23;;;3578:4;3585:10;3546:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3546:50:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3546:50:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3546:50:0;;;;;;;;;;;;;;;;;3672:3;;;;;;;;;;;3669:17;;;3695:4;3702:10;3669:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3669:44:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3669:44:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3669:44:0;;;;;;;;;;;;;;;;3654:59;3790:5;;;;;;;;;;;3783:23;;;3807:10;3827:4;3783:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3783:50:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3783:50:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3783:50:0;;;;;;;;;;;;;;;;3770:63;3958:3;;;;;;;;;;;3955:15;;;3971:10;3983:11;3955:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3955:40:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3955:40:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3955:40:0;;;;;;;;;;;;;;;;;4013:5;;;;;;;;;;;4006:21;;;4036:4;4043:9;4006:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4006:47:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4006:47:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4006:47:0;;;;;;;;;;;;;;;;;4134:5;;;;;;;;;;;4127:26;;;4154:10;4174:4;4181:9;4127:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4127:64:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4127:64:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4127:64:0;;;;;;;;;;;;;;;;;4250:18;4274:3;;;;;;;;;;;4271:17;;;4297:4;4271:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4271:32:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4271:32:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4271:32:0;;;;;;;;;;;;;;;;4250:53;;4426:11;4412:10;:25;;4404:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4545:3;;;;;;;;;;;4542:20;;;4571:4;4578:10;4590:11;4542:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4542:60:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4542:60:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4542:60:0;;;;;;;;;;;;;;;;;4724:9;4678:5;;;;;;;;;;;4671:23;;;4695:10;4715:4;4671:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4671:50:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4671:50:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4671:50:0;;;;;;;;;;;;;;;;:62;;4791:11;4747:3;;;;;;;;;;;4744:17;;;4770:4;4777:10;4744:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4744:44:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4744:44:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4744:44:0;;;;;;;;;;;;;;;;:58;;4927:9;4881:5;;;;;;;;;;;4874:23;;;4898:10;4918:4;4874:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4874:50:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4874:50:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4874:50:0;;;;;;;;;;;;;;;;:62;;4994:11;4950:3;;;;;;;;;;;4947:17;;;4973:4;4980:10;4947:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4947:44:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4947:44:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4947:44:0;;;;;;;;;;;;;;;;:58;;5052:9;5038:10;;:23;;;;;;;;;;;5078:51;5083:10;5107:5;;5095:9;:17;5122:5;;;;;;;;;;;5078:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3042:2105;;:::o;1787:23::-;;;;:::o;2719:86::-;1958:5;;;;;;;;;;;1944:19;;:10;:19;;;1922:103;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2791:6;2783:5;:14;;;;2719:86;:::o;2817:217::-;1958:5;;;;;;;;;;;1944:19;;:10;:19;;;1922:103;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2955:1;2931:21;:25;2927:100;;;2973:10;:19;;:42;2993:21;2973:42;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2973:42:0;2927:100;2817:217;:::o;5155:331::-;1958:5;;;;;;;;;;;1944:19;;:10;:19;;;1922:103;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5261:3;;;;;;;;;;;5258:16;;;5275:5;;;;;;;;;;;5282:21;5258:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5258:46:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5258:46:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5258:46:0;;;;;;;;;;;;;;;;5250:76;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5352:5;;;;;;;;;;;5345:22;;;5368:5;;;;;;;;;;;5375:21;5345:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5345:52:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5345:52:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5345:52:0;;;;;;;;;;;;;;;;5337:82;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5436:10;:19;;:42;5456:21;5436:42;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5436:42:0;5155:331::o;1755:25::-;;;;:::o;1481:17::-;;;;:::o;2357:140::-;2407:6;2439:1;2434;:6;:30;;;;2463:1;2458;2453;2449;:5;2445:9;;;2444:15;;;;;;:20;2434:30;2426:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2357:140;;;;:::o

Swarm Source

bzzr://95667b548fece17e4e94f988e8ae7383e6fe7c7c39938236746e0221fe95fcf0
Block Transaction Difficulty Gas Used Reward
Block Uncle Number Difficulty Gas Used Reward
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.