ETH Price: $3,712.76 (+3.37%)

Contract

0xdBd4F99027F1b2845069Fd14959F3b5be7Efe2BD
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Purchase With ET...153824562022-08-21 6:44:18832 days ago1661064258IN
0xdBd4F990...be7Efe2BD
0.0002 ETH0.000224882
Purchase With ET...148643192022-05-29 3:56:11916 days ago1653796571IN
0xdBd4F990...be7Efe2BD
0.01 ETH0.000675928
Purchase With ET...142795802022-02-26 4:33:271008 days ago1645850007IN
0xdBd4F990...be7Efe2BD
0.004 ETH0.0017530420.74832636
Purchase With ET...138355642021-12-19 12:20:171077 days ago1639916417IN
0xdBd4F990...be7Efe2BD
0.02 ETH0.0021122725
Purchase With ET...136035332021-11-12 20:47:401114 days ago1636750060IN
0xdBd4F990...be7Efe2BD
0.022 ETH0.01685518149.89981679
Purchase With ET...136034972021-11-12 20:39:291114 days ago1636749569IN
0xdBd4F990...be7Efe2BD
0.003 ETH0.01494475132.90959994
Purchase With ET...136034782021-11-12 20:37:061114 days ago1636749426IN
0xdBd4F990...be7Efe2BD
0.042 ETH0.01783324187.04301372
Purchase With BU...136034622021-11-12 20:33:461114 days ago1636749226IN
0xdBd4F990...be7Efe2BD
0 ETH0.01912183202.42669723
Purchase With ET...136034172021-11-12 20:20:481114 days ago1636748448IN
0xdBd4F990...be7Efe2BD
0.5 ETH0.01470928154.2775129
Purchase With ET...136033792021-11-12 20:13:221114 days ago1636748002IN
0xdBd4F990...be7Efe2BD
0.2 ETH0.01668357174.98480437
Purchase With ET...136033412021-11-12 20:04:001114 days ago1636747440IN
0xdBd4F990...be7Efe2BD
0.05369 ETH0.01714731152.49788398
Purchase With ET...136033372021-11-12 20:03:291114 days ago1636747409IN
0xdBd4F990...be7Efe2BD
0.05 ETH0.01830801162.82040845
Purchase With ET...136032692021-11-12 19:46:581114 days ago1636746418IN
0xdBd4F990...be7Efe2BD
0.42 ETH0.01662163147.82276904
Purchase With ET...136032452021-11-12 19:40:561114 days ago1636746056IN
0xdBd4F990...be7Efe2BD
0.0755 ETH0.01751262155.74665071
Purchase With ET...136032162021-11-12 19:35:181114 days ago1636745718IN
0xdBd4F990...be7Efe2BD
0.64 ETH0.01714673152.49272004
Purchase With ET...136032152021-11-12 19:35:151114 days ago1636745715IN
0xdBd4F990...be7Efe2BD
0.05 ETH0.01380325144.77470438
Purchase With ET...136031872021-11-12 19:28:491114 days ago1636745329IN
0xdBd4F990...be7Efe2BD
0.05 ETH0.01496281133.070178
Purchase With ET...136030662021-11-12 19:03:261114 days ago1636743806IN
0xdBd4F990...be7Efe2BD
0.179 ETH0.0136056121
Purchase With ET...136030622021-11-12 19:02:501114 days ago1636743770IN
0xdBd4F990...be7Efe2BD
0.32 ETH0.00974939102.25599994
Purchase With ET...136005772021-11-12 9:40:281114 days ago1636710028IN
0xdBd4F990...be7Efe2BD
0.0009 ETH0.01481616131.76596285
Purchase With ET...136001102021-11-12 7:51:131114 days ago1636703473IN
0xdBd4F990...be7Efe2BD
0.024 ETH0.01260733112.12204231
Purchase With ET...136000782021-11-12 7:45:311114 days ago1636703131IN
0xdBd4F990...be7Efe2BD
0.025 ETH0.01346525119.75181565
Purchase With ET...136000312021-11-12 7:37:491114 days ago1636702669IN
0xdBd4F990...be7Efe2BD
0.0085 ETH0.01311031116.59517647
Purchase With ET...136000172021-11-12 7:34:371114 days ago1636702477IN
0xdBd4F990...be7Efe2BD
0.012 ETH0.01272314113.15196284
Purchase With ET...135999742021-11-12 7:25:061114 days ago1636701906IN
0xdBd4F990...be7Efe2BD
0.61 ETH0.01598258142.13946592
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
153824562022-08-21 6:44:18832 days ago1661064258
0xdBd4F990...be7Efe2BD
0.0002 ETH
148643192022-05-29 3:56:11916 days ago1653796571
0xdBd4F990...be7Efe2BD
0.01 ETH
142795802022-02-26 4:33:271008 days ago1645850007
0xdBd4F990...be7Efe2BD
0.004 ETH
138355642021-12-19 12:20:171077 days ago1639916417
0xdBd4F990...be7Efe2BD
0.02 ETH
136035332021-11-12 20:47:401114 days ago1636750060
0xdBd4F990...be7Efe2BD
0.022 ETH
136034972021-11-12 20:39:291114 days ago1636749569
0xdBd4F990...be7Efe2BD
0.003 ETH
136034782021-11-12 20:37:061114 days ago1636749426
0xdBd4F990...be7Efe2BD
0.042 ETH
136034172021-11-12 20:20:481114 days ago1636748448
0xdBd4F990...be7Efe2BD
0.5 ETH
136033792021-11-12 20:13:221114 days ago1636748002
0xdBd4F990...be7Efe2BD
0.2 ETH
136033412021-11-12 20:04:001114 days ago1636747440
0xdBd4F990...be7Efe2BD
0.05369 ETH
136033372021-11-12 20:03:291114 days ago1636747409
0xdBd4F990...be7Efe2BD
0.05 ETH
136032692021-11-12 19:46:581114 days ago1636746418
0xdBd4F990...be7Efe2BD
0.42 ETH
136032452021-11-12 19:40:561114 days ago1636746056
0xdBd4F990...be7Efe2BD
0.0755 ETH
136032162021-11-12 19:35:181114 days ago1636745718
0xdBd4F990...be7Efe2BD
0.64 ETH
136032152021-11-12 19:35:151114 days ago1636745715
0xdBd4F990...be7Efe2BD
0.05 ETH
136031872021-11-12 19:28:491114 days ago1636745329
0xdBd4F990...be7Efe2BD
0.05 ETH
136030662021-11-12 19:03:261114 days ago1636743806
0xdBd4F990...be7Efe2BD
0.179 ETH
136030622021-11-12 19:02:501114 days ago1636743770
0xdBd4F990...be7Efe2BD
0.32 ETH
136005772021-11-12 9:40:281114 days ago1636710028
0xdBd4F990...be7Efe2BD
0.0009 ETH
136001102021-11-12 7:51:131114 days ago1636703473
0xdBd4F990...be7Efe2BD
0.024 ETH
136000782021-11-12 7:45:311114 days ago1636703131
0xdBd4F990...be7Efe2BD
0.025 ETH
136000312021-11-12 7:37:491114 days ago1636702669
0xdBd4F990...be7Efe2BD
0.0085 ETH
136000172021-11-12 7:34:371114 days ago1636702477
0xdBd4F990...be7Efe2BD
0.012 ETH
135999742021-11-12 7:25:061114 days ago1636701906
0xdBd4F990...be7Efe2BD
0.61 ETH
135998612021-11-12 7:02:161114 days ago1636700536
0xdBd4F990...be7Efe2BD
0.173 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
BollycoinPresaleV2

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 5 : BollycoinPresaleV2.sol
// SPDX-License-Identifier: ISC

pragma solidity ^0.8.4;

import "../interfaces/IERC20.sol";
import "../utils/Context.sol";
import "../interfaces/IBollycoinPriceFeed.sol";
import "../utils/ReentrancyGuard.sol";

/**
 * @title - Bollycoin Presale Contract V2
 * @author - Nodeberry Pvt Ltd
 */

contract BollycoinPresaleV2 is Context, ReentrancyGuard {
    /**
     * @dev `_usdt` represents the USDT smart contract address.
     * @dev `_usdc` represents the USDC smart contract address.
     * @dev `_busd` represents the BUSD smart contract address.
     * @dev `_bollycoin` represents Bollycoin token contract address.
     * @dev `_settlementWallet` represents the wallet address to which tokens are sent during purchase.
     * @dev `_admin` is the account that controls the sale.
     */
    address private _usdt;
    address private _usdc;
    address private _busd;
    address private _wbtc;
    address private _bollycoin;
    address private _admin;
    address private _oracle;
    address private _settlementWallet;
    
    uint256 public bollycoinPrice = 0.1 * 10**18; // 0.1 USD
    
    /**
     * @dev checks if `caller` is `_admin`
     * reverts if the `caller` is not the `_admin` account.
     */
    modifier onlyAdmin() {
        require(_admin == msgSender(), "Error: caller not admin");
        _;
    }

    /**
     * @dev - Purchase event is emitted whenever a successful purchase is made.
     */
    event Purchase(
        address indexed buyer,
        string uid,
        uint256 amount,
        uint256 valueInPurchaseCurrency,
        bytes32 currency
    );

    constructor(
        address _usdtAddress,
        address _usdcAddress,
        address _busdAddress,
        address _wbtcAddress,
        address _bollyAddress,
        address _oracleAddress,
        address _settlementAddress
        
    ) {
        _usdt = _usdtAddress;
        _usdc = _usdcAddress;
        _busd = _busdAddress;
        _bollycoin = _bollyAddress;
        _oracle = _oracleAddress;
         _wbtc = _wbtcAddress;
        _admin = _settlementAddress;
        _settlementWallet = _settlementAddress;
    }

    /**
     * @dev used to purchase bollycoin using USDT. Tokens are sent to the buyer.
     * @param _amount - The number of bollycoin tokens to purchase
     */
    function purchaseWithUSDT(uint256 _amount, string memory uid)
        public
        nonReentrant
        virtual
        returns (bool)
    {
        uint256 balance = IERC20(_usdt).balanceOf(msgSender());
        uint256 allowance = IERC20(_usdt).allowance(msgSender(), address(this));

        uint256 usdValue = (bollycoinPrice) * _amount;

        uint256 totalCostInUSDT = usdValue / 10**12;
         
        
        require(balance >= totalCostInUSDT, "Error: insufficient USDT Balance");
        require(
            allowance >= totalCostInUSDT,
            "Error: allowance less than spending"
        );

        IERC20(_usdt).transferFrom(
            msgSender(),
            _settlementWallet,
            totalCostInUSDT
        );
        
        IERC20(_bollycoin).transfer(msgSender(), _amount * 10**18);
        
        emit Purchase(
            msgSender(),
            uid,
            _amount,
            usdValue,
            bytes32("USDT")
        );
        
        return true;
    }

    /**
     * @dev used to purchase bollycoin using USDC. Tokens are sent to the buyer.
     * @param _amount - The number of bollycoin tokens to purchase
     */
    function purchaseWithUSDC(uint256 _amount, string memory uid)
        public
        nonReentrant
        virtual
        returns (bool)
    {
        uint256 balance = IERC20(_usdc).balanceOf(msgSender());
        uint256 allowance = IERC20(_usdc).allowance(msgSender(), address(this));

        uint256 usdValue = (bollycoinPrice) * _amount;

        uint256 totalCostInUSDC = usdValue / 10**12;
         
        require(balance >= totalCostInUSDC, "Error: insufficient USDC Balance");
        
        require(
            allowance >= totalCostInUSDC,
            "Error: allowance less than spending"
        );

        IERC20(_usdc).transferFrom(
            msgSender(),
            _settlementWallet,
            totalCostInUSDC
        );
        IERC20(_bollycoin).transfer(msgSender(), _amount * 10**18);
        
        emit Purchase(msgSender(), uid, _amount, usdValue, bytes32("USDC"));
        
        return true;
    }

    /**
     * @dev used to purchase bollycoin using BUSD. Tokens are sent to the buyer.
     * @param _amount - The number of bollycoin tokens to purchase
     */
    function purchaseWithBUSD(uint256 _amount, string memory uid)
        public
        nonReentrant
        virtual
        returns (bool)
    {
        uint256 balance = IERC20(_busd).balanceOf(msgSender());
        uint256 allowance = IERC20(_busd).allowance(msgSender(), address(this));

        uint256 totalCostInBUSD = (bollycoinPrice) * _amount;
        require(balance >= totalCostInBUSD, "Error: insufficient BUSD Balance");
        require(
            allowance >= totalCostInBUSD,
            "Error: allowance less than spending"
        );

        IERC20(_busd).transferFrom(
            msgSender(),
            _settlementWallet,
            totalCostInBUSD
        );
        IERC20(_bollycoin).transfer(msgSender(), _amount * 10**18);
        emit Purchase(
            msgSender(),
            uid,
            _amount,
            totalCostInBUSD,
            bytes32("BUSD")
        );
        return true;
    }


    /**
     * @dev used to purchase bollycoin using wBTC. Tokens are sent to the buyer.
     * @param _amount - The number of bollycoin tokens to purchase
     */
    function purchaseWithWBTC(uint256 _amount, string memory uid)
        public
        nonReentrant
        virtual
        returns (bool)
    {
        uint256 balance = IERC20(_wbtc).balanceOf(msgSender());
        uint256 allowance = IERC20(_wbtc).allowance(msgSender(), address(this));
        
        uint256 wbtcCmp = IBollycoinPriceFeed(_oracle).getLatestBTCPrice();
       
        uint256 totalCostInWBTC = (bollycoinPrice) * _amount *10**18 / wbtcCmp / 10**10;
        
        require(balance >= totalCostInWBTC, "Error: insufficient WBTC Balance");
        require(
            allowance >= totalCostInWBTC,
            "Error: allowance less than spending"
        );

        IERC20(_wbtc).transferFrom(
            msgSender(),
            _settlementWallet,
            totalCostInWBTC
        );
        
        IERC20(_bollycoin).transfer(msgSender(), _amount * 10**18);
        
        emit Purchase(
            msgSender(),
            uid,
            _amount,
            totalCostInWBTC,
            bytes32("wBTC")
        );
        return true;
    }
 
   
    
    /**
     * @dev used to purchase bollycoin using ETH. ETH is sent to the buyer.
      */
    function purchaseWithETH(string memory uid)
        public
        payable
        nonReentrant
        virtual
        returns (bool)
    {
        uint256 ethCmp = IBollycoinPriceFeed(_oracle).getLatestETHPrice();
         uint256 bollyToTransfer = _msgValue() * ethCmp / bollycoinPrice;
        
        (bool sent, bytes memory data) = _settlementWallet.call{value: _msgValue()}("");
        require(sent, "Failed to send ETH"); 		
        IERC20(_bollycoin).transfer(msgSender(), bollyToTransfer);
        emit Purchase(
            msgSender(),
            uid,
            bollyToTransfer,
            _msgValue(),
            bytes32("ETH")
        );
        return true;
    }
    /**
     * @dev returns the USDT token address used for purchase.
     */
    function usdt() public view returns (address) {
        return _usdt;
    }

    /**
     * @dev returns the USDC token address used for purchase.
     */
    function usdc() public view returns (address) {
        return _usdc;
    }
    
    /**
     * @dev returns the Oracle address.
     */
    function oracle() public view returns (address) {
        return _oracle;
    }

    /**
     * @dev returns the busd smart contract used for purchase.
     */
    function busd() public view returns (address) {
        return _busd;
    }

    /**
     * @dev returns the bollycoin smart contract used for purchase.
     */
    function bolly() public view returns (address) {
        return _bollycoin;
    }

    /**
     * @dev returns the wBTC token address used for purchase.
     */
     
    function wBTC() public view returns (address) {
        return _wbtc;
    }

    /**
     * @dev returns the admin account used for purchase.
     */
    function admin() public view returns (address) {
        return _admin;
    }

    /**
     * @dev returns the settlement address used for purchase.
     */
    function settlementAddress() public view returns (address) {
        return _settlementWallet;
    }

    /**
     * @dev transfers ownership to a different account.
     *
     * Requirements:
     * `newAdmin` cannot be a zero address.
     * `caller` should be current admin.
     */
    function transferControl(address newAdmin) public virtual onlyAdmin {
        require(newAdmin != address(0), "Error: owner cannot be zero");
        _admin = newAdmin;
    }
    
    
     /**
     * @dev updates the oracle address.
     *
     * Requirements:
     * `newAddress` cannot be a zero address.
     * `caller` should be current admin.
     */
    function updateOracle(address newAddress) public virtual onlyAdmin {
        require(newAddress != address(0), "Error: address cannot be zero");
        _oracle = newAddress;
    }

    /**
     * @dev updates the usdt sc address.
     *
     * Requirements:
     * `newAddress` cannot be a zero address.
     * `caller` should be current admin.
     */
    function updateUsdt(address newAddress) public virtual onlyAdmin {
        require(newAddress != address(0), "Error: address cannot be zero");
        _usdt = newAddress;
    }

    /**
     * @dev updates the usdc sc address.
     *
     * Requirements:
     * `newAddress` cannot be a zero address.
     * `caller` should be current admin.
     */
    function updateUsdc(address newAddress) public virtual onlyAdmin {
        require(newAddress != address(0), "Error: address cannot be zero");
        _usdc = newAddress;
    }

    /**
     * @dev updates the bollycoin token address.
     *
     * Requirements:
     * `newAddress` cannot be a zero address.
     * `caller` should be current admin.
     */
    function updateBolly(address newAddress) public virtual onlyAdmin {
        require(newAddress != address(0), "Error: address cannot be zero");
        _bollycoin = newAddress;
    }
    
     /**
     * @dev updates the wBTC token address.
     *
     * Requirements:
     * `newAddress` cannot be a zero address.
     * `caller` should be current admin.
     */
    function updateWBTC(address newAddress) public virtual onlyAdmin {
        require(newAddress != address(0), "Error: address cannot be zero");
        _wbtc = newAddress;
    }

    /**
     * @dev updates the busd sc address.
     *
     * Requirements:
     * `newAddress` cannot be a zero address.
     * `caller` should be current admin.
     */
    function updateBusd(address newAddress) public virtual onlyAdmin {
        require(newAddress != address(0), "Error: address cannot be zero");
        _busd = newAddress;
    }

    /**
     * @dev updates the bollycoin token price.
     *
     * Requirements:
     * `newPrice` cannot be zero.
     * `caller` should be current admin.
     */
    function updateBollycoinPrice(uint256 newPrice) public virtual onlyAdmin {
        require(newPrice > 0, "Error: price cannot be zero");
        bollycoinPrice = newPrice;
    }

    /**
     * @dev updates the settlement wallet address
     *
     * Requirements:
     * `settlementWallet` cannot be a zero address.
     * `caller` should be current admin.
     */
    function updateSettlementWallet(address newAddress)
        public
        virtual
        onlyAdmin
    {
        require(newAddress != address(0), "Error: not a valid address");
        _settlementWallet = newAddress;
    }

    /**
     * @dev withdraw bollycoin from SC to any EOA.
     *
     * `caller` should be admin account.
     * `to` cannot be zero address.
     */
    function withdrawBolly(address to, uint256 amount)
        public
        virtual
        onlyAdmin
        returns (bool)
    {
        require(to != address(0), "Error: cannot send to zero address");
        IERC20(_bollycoin).transfer(to, amount);
        return true;
    }
}

File 2 of 5 : ReentrancyGuard.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

/**
 * @dev Contract module that helps prevent reentrant calls to a function.
 *
 * Inheriting from `ReentrancyGuard` will make the {nonReentrant} modifier
 * available, which can be applied to functions to make sure there are no nested
 * (reentrant) calls to them.
 *
 * Note that because there is a single `nonReentrant` guard, functions marked as
 * `nonReentrant` may not call one another. This can be worked around by making
 * those functions `private`, and then adding `external` `nonReentrant` entry
 * points to them.
 *
 * TIP: If you would like to learn more about reentrancy and alternative ways
 * to protect against it, check out our blog post
 * https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul].
 */
abstract contract ReentrancyGuard {
    // Booleans are more expensive than uint256 or any type that takes up a full
    // word because each write operation emits an extra SLOAD to first read the
    // slot's contents, replace the bits taken up by the boolean, and then write
    // back. This is the compiler's defense against contract upgrades and
    // pointer aliasing, and it cannot be disabled.

    // The values being non-zero value makes deployment a bit more expensive,
    // but in exchange the refund on every call to nonReentrant will be lower in
    // amount. Since refunds are capped to a percentage of the total
    // transaction's gas, it is best to keep them low in cases like this one, to
    // increase the likelihood of the full refund coming into effect.
    uint256 private constant _NOT_ENTERED = 1;
    uint256 private constant _ENTERED = 2;

    uint256 private _status;

    constructor() {
        _status = _NOT_ENTERED;
    }

    /**
     * @dev Prevents a contract from calling itself, directly or indirectly.
     * Calling a `nonReentrant` function from another `nonReentrant`
     * function is not supported. It is possible to prevent this from happening
     * by making the `nonReentrant` function external, and making it call a
     * `private` function that does the actual work.
     */
    modifier nonReentrant() {
        // On the first call to nonReentrant, _notEntered will be true
        require(_status != _ENTERED, "ReentrancyGuard: reentrant call");

        // Any calls to nonReentrant after this point will fail
        _status = _ENTERED;

        _;

        // By storing the original value once again, a refund is triggered (see
        // https://eips.ethereum.org/EIPS/eip-2200)
        _status = _NOT_ENTERED;
    }
}

File 3 of 5 : IBollycoinPriceFeed.sol
pragma solidity >=0.6.0;

interface IBollycoinPriceFeed {
     
    function getLatestETHPrice() external view returns(uint256);
    function getLatestBTCPrice() external view returns(uint256);

 
}

File 4 of 5 : Context.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.4;

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

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

File 5 of 5 : IERC20.sol
// SPDX-License-Identifier: ISC

pragma solidity ^0.8.4;

interface IERC20 {
    
     /**
     * @dev returns the tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

     /**
     * @dev returns the decimal places of a token
     */
    function decimals() external view returns (uint8);

    /**
     * @dev returns the remaining number of tokens the `spender' can spend
     * on behalf of the owner.
     *
     * This value changes when {approve} or {transferFrom} is executed.
     */
    function allowance(address owner, address spender)
        external
        view
        returns (uint256);
    /**
     * @dev transfers the `amount` of tokens from caller's account
     * to the `recipient` account.
     *
     * returns boolean value indicating the operation status.
     *
     * Emits a {Transfer} event
     */
    function transfer(address recipient, uint256 amount)
        external;
   /**
     * @dev transfers the `amount` on behalf of `spender` to the `recipient` account.
     *
     * returns a boolean indicating the operation status.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(
        address spender,
        address recipient,
        uint256 amount
    ) external;
 }

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_usdtAddress","type":"address"},{"internalType":"address","name":"_usdcAddress","type":"address"},{"internalType":"address","name":"_busdAddress","type":"address"},{"internalType":"address","name":"_wbtcAddress","type":"address"},{"internalType":"address","name":"_bollyAddress","type":"address"},{"internalType":"address","name":"_oracleAddress","type":"address"},{"internalType":"address","name":"_settlementAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"buyer","type":"address"},{"indexed":false,"internalType":"string","name":"uid","type":"string"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"valueInPurchaseCurrency","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"currency","type":"bytes32"}],"name":"Purchase","type":"event"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"bolly","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"bollycoinPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"busd","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"oracle","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"string","name":"uid","type":"string"}],"name":"purchaseWithBUSD","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"uid","type":"string"}],"name":"purchaseWithETH","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"string","name":"uid","type":"string"}],"name":"purchaseWithUSDC","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"string","name":"uid","type":"string"}],"name":"purchaseWithUSDT","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"string","name":"uid","type":"string"}],"name":"purchaseWithWBTC","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"settlementAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"transferControl","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateBolly","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newPrice","type":"uint256"}],"name":"updateBollycoinPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateBusd","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateOracle","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateSettlementWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateUsdc","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateUsdt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateWBTC","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"usdc","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"usdt","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"wBTC","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdrawBolly","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

608060405267016345785d8a00006009553480156200001d57600080fd5b5060405162001e7c38038062001e7c8339810160408190526200004091620000f1565b6001600081905580546001600160a01b03199081166001600160a01b03998a16179091556002805482169789169790971790965560038054871695881695909517909455600580548616928716929092179091556007805485169186169190911790556004805484169185169190911790556006805483169190931690811790925560088054909116909117905562000186565b80516001600160a01b0381168114620000ec57600080fd5b919050565b600080600080600080600060e0888a0312156200010d57600080fd5b6200011888620000d4565b96506200012860208901620000d4565b95506200013860408901620000d4565b94506200014860608901620000d4565b93506200015860808901620000d4565b92506200016860a08901620000d4565b91506200017860c08901620000d4565b905092959891949750929550565b611ce680620001966000396000f3fe60806040526004361061014b5760003560e01c80636d16fa41116100b65780639b4529311161006f5780639b452931146103a4578063ce71e5df146103c2578063defde9fc146103e6578063e2f7c75714610406578063f738c4a714610426578063f851a4401461044457600080fd5b80636d16fa41146102f357806372d82bc6146103135780637429c946146103265780637925fd19146103465780637dc0d1d0146103665780639184c3d91461038457600080fd5b80633ca5b234116101085780633ca5b234146102275780633e413bee146102455780634ae5630d14610263578063520b5aa81461028357806355f0d8b6146102b35780636b51488a146102d357600080fd5b806301a38eb91461015057806306b5c1c9146101725780630dad7ee6146101925780631cb44dfc146101c95780632f48ab7d146101e957806339d7142414610207575b600080fd5b34801561015c57600080fd5b5061017061016b3660046119b4565b610462565b005b34801561017e57600080fd5b5061017061018d3660046119b4565b6104dd565b34801561019e57600080fd5b506005546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b3480156101d557600080fd5b506101706101e43660046119b4565b61054f565b3480156101f557600080fd5b506001546001600160a01b03166101ac565b34801561021357600080fd5b506101706102223660046119b4565b6105c1565b34801561023357600080fd5b506003546001600160a01b03166101ac565b34801561025157600080fd5b506002546001600160a01b03166101ac565b34801561026f57600080fd5b5061017061027e3660046119b4565b610633565b34801561028f57600080fd5b506102a361029e366004611a6f565b6106a5565b60405190151581526020016101c0565b3480156102bf57600080fd5b506101706102ce366004611a3d565b6109d2565b3480156102df57600080fd5b506102a36102ee366004611a6f565b610a51565b3480156102ff57600080fd5b5061017061030e3660046119b4565b610d64565b6102a3610321366004611a00565b610e06565b34801561033257600080fd5b506101706103413660046119b4565b611034565b34801561035257600080fd5b506102a3610361366004611a6f565b6110a6565b34801561037257600080fd5b506007546001600160a01b03166101ac565b34801561039057600080fd5b5061017061039f3660046119b4565b611452565b3480156103b057600080fd5b506004546001600160a01b03166101ac565b3480156103ce57600080fd5b506103d860095481565b6040519081526020016101c0565b3480156103f257600080fd5b506102a36104013660046119d6565b6114f4565b34801561041257600080fd5b506102a3610421366004611a6f565b6115f1565b34801561043257600080fd5b506008546001600160a01b03166101ac565b34801561045057600080fd5b506006546001600160a01b03166101ac565b6006546001600160a01b031633146104955760405162461bcd60e51b815260040161048c90611bbd565b60405180910390fd5b6001600160a01b0381166104bb5760405162461bcd60e51b815260040161048c90611b43565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b6006546001600160a01b031633146105075760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b03811661052d5760405162461bcd60e51b815260040161048c90611b43565b600380546001600160a01b0319166001600160a01b0392909216919091179055565b6006546001600160a01b031633146105795760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b03811661059f5760405162461bcd60e51b815260040161048c90611b43565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b6006546001600160a01b031633146105eb5760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b0381166106115760405162461bcd60e51b815260040161048c90611b43565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b6006546001600160a01b0316331461065d5760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b0381166106835760405162461bcd60e51b815260040161048c90611b43565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6000600260005414156106ca5760405162461bcd60e51b815260040161048c90611bf4565b6002600081815590546001600160a01b03166370a08231336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260240160206040518083038186803b15801561072157600080fd5b505afa158015610735573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107599190611a56565b6002549091506000906001600160a01b031663dd62ed3e336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015230602482015260440160206040518083038186803b1580156107b657600080fd5b505afa1580156107ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ee9190611a56565b90506000856009546108009190611c4d565b9050600061081364e8d4a5100083611c2b565b9050808410156108655760405162461bcd60e51b815260206004820181905260248201527f4572726f723a20696e73756666696369656e7420555344432042616c616e6365604482015260640161048c565b808310156108855760405162461bcd60e51b815260040161048c90611b7a565b6002546001600160a01b03166323b872dd336008546040516001600160e01b031960e085901b1681526108c792916001600160a01b0316908690600401611ab6565b600060405180830381600087803b1580156108e157600080fd5b505af11580156108f5573d6000803e3d6000fd5b50506005546001600160a01b0316915063a9059cbb90503361091f8a670de0b6b3a7640000611c4d565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b15801561096557600080fd5b505af1158015610979573d6000803e3d6000fd5b505050506109843390565b6001600160a01b0316600080516020611c91833981519152878985635553444360e01b6040516109b79493929190611ada565b60405180910390a26001945050505050600160005592915050565b6006546001600160a01b031633146109fc5760405162461bcd60e51b815260040161048c90611bbd565b60008111610a4c5760405162461bcd60e51b815260206004820152601b60248201527f4572726f723a2070726963652063616e6e6f74206265207a65726f0000000000604482015260640161048c565b600955565b600060026000541415610a765760405162461bcd60e51b815260040161048c90611bf4565b600260009081556001546001600160a01b03166370a08231336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260240160206040518083038186803b158015610ace57600080fd5b505afa158015610ae2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b069190611a56565b6001549091506000906001600160a01b031663dd62ed3e336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015230602482015260440160206040518083038186803b158015610b6357600080fd5b505afa158015610b77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b9b9190611a56565b9050600085600954610bad9190611c4d565b90506000610bc064e8d4a5100083611c2b565b905080841015610c125760405162461bcd60e51b815260206004820181905260248201527f4572726f723a20696e73756666696369656e7420555344542042616c616e6365604482015260640161048c565b80831015610c325760405162461bcd60e51b815260040161048c90611b7a565b6001546001600160a01b03166323b872dd336008546040516001600160e01b031960e085901b168152610c7492916001600160a01b0316908690600401611ab6565b600060405180830381600087803b158015610c8e57600080fd5b505af1158015610ca2573d6000803e3d6000fd5b50506005546001600160a01b0316915063a9059cbb905033610ccc8a670de0b6b3a7640000611c4d565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b158015610d1257600080fd5b505af1158015610d26573d6000803e3d6000fd5b50505050610d313390565b6001600160a01b0316600080516020611c91833981519152878985631554d11560e21b6040516109b79493929190611ada565b6006546001600160a01b03163314610d8e5760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b038116610de45760405162461bcd60e51b815260206004820152601b60248201527f4572726f723a206f776e65722063616e6e6f74206265207a65726f0000000000604482015260640161048c565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b600060026000541415610e2b5760405162461bcd60e51b815260040161048c90611bf4565b6002600090815560075460408051633bbf06c360e11b815290516001600160a01b039092169163777e0d8691600480820192602092909190829003018186803b158015610e7757600080fd5b505afa158015610e8b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eaf9190611a56565b9050600060095482610ebe3490565b610ec89190611c4d565b610ed29190611c2b565b60085490915060009081906001600160a01b031634604051600081818185875af1925050503d8060008114610f23576040519150601f19603f3d011682016040523d82523d6000602084013e610f28565b606091505b509150915081610f6f5760405162461bcd60e51b815260206004820152601260248201527108cc2d2d8cac840e8de40e6cadcc8408aa8960731b604482015260640161048c565b6005546001600160a01b031663a9059cbb336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101869052604401600060405180830381600087803b158015610fc957600080fd5b505af1158015610fdd573d6000803e3d6000fd5b50505050610fe83390565b6001600160a01b0316600080516020611c918339815191528785346208aa8960eb1b60405161101a9493929190611ada565b60405180910390a260019450505050506001600055919050565b6006546001600160a01b0316331461105e5760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b0381166110845760405162461bcd60e51b815260040161048c90611b43565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6000600260005414156110cb5760405162461bcd60e51b815260040161048c90611bf4565b600260009081556004546001600160a01b03166370a08231336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260240160206040518083038186803b15801561112357600080fd5b505afa158015611137573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115b9190611a56565b6004549091506000906001600160a01b031663dd62ed3e336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015230602482015260440160206040518083038186803b1580156111b857600080fd5b505afa1580156111cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f09190611a56565b90506000600760009054906101000a90046001600160a01b03166001600160a01b0316631b7127396040518163ffffffff1660e01b815260040160206040518083038186803b15801561124257600080fd5b505afa158015611256573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061127a9190611a56565b905060006402540be40082886009546112939190611c4d565b6112a590670de0b6b3a7640000611c4d565b6112af9190611c2b565b6112b99190611c2b565b90508084101561130b5760405162461bcd60e51b815260206004820181905260248201527f4572726f723a20696e73756666696369656e7420574254432042616c616e6365604482015260640161048c565b8083101561132b5760405162461bcd60e51b815260040161048c90611b7a565b600480546008546040516323b872dd60e01b81526001600160a01b03928316936323b872dd93611362933393911691879101611ab6565b600060405180830381600087803b15801561137c57600080fd5b505af1158015611390573d6000803e3d6000fd5b50506005546001600160a01b0316915063a9059cbb9050336113ba8a670de0b6b3a7640000611c4d565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b15801561140057600080fd5b505af1158015611414573d6000803e3d6000fd5b5050505061141f3390565b6001600160a01b0316600080516020611c91833981519152878984637742544360e01b6040516109b79493929190611ada565b6006546001600160a01b0316331461147c5760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b0381166114d25760405162461bcd60e51b815260206004820152601a60248201527f4572726f723a206e6f7420612076616c69642061646472657373000000000000604482015260640161048c565b600880546001600160a01b0319166001600160a01b0392909216919091179055565b6006546000906001600160a01b031633146115215760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b0383166115825760405162461bcd60e51b815260206004820152602260248201527f4572726f723a2063616e6e6f742073656e6420746f207a65726f206164647265604482015261737360f01b606482015260840161048c565b60055460405163a9059cbb60e01b81526001600160a01b038581166004830152602482018590529091169063a9059cbb90604401600060405180830381600087803b1580156115d057600080fd5b505af11580156115e4573d6000803e3d6000fd5b5060019695505050505050565b6000600260005414156116165760405162461bcd60e51b815260040161048c90611bf4565b600260009081556003546001600160a01b03166370a08231336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260240160206040518083038186803b15801561166e57600080fd5b505afa158015611682573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116a69190611a56565b6003549091506000906001600160a01b031663dd62ed3e336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015230602482015260440160206040518083038186803b15801561170357600080fd5b505afa158015611717573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061173b9190611a56565b905060008560095461174d9190611c4d565b90508083101561179f5760405162461bcd60e51b815260206004820181905260248201527f4572726f723a20696e73756666696369656e7420425553442042616c616e6365604482015260640161048c565b808210156117bf5760405162461bcd60e51b815260040161048c90611b7a565b6003546001600160a01b03166323b872dd336008546040516001600160e01b031960e085901b16815261180192916001600160a01b0316908690600401611ab6565b600060405180830381600087803b15801561181b57600080fd5b505af115801561182f573d6000803e3d6000fd5b50506005546001600160a01b0316915063a9059cbb90503361185989670de0b6b3a7640000611c4d565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b15801561189f57600080fd5b505af11580156118b3573d6000803e3d6000fd5b505050506118be3390565b6001600160a01b0316600080516020611c9183398151915286888463109554d160e21b6040516118f19493929190611ada565b60405180910390a260019350505050600160005592915050565b80356001600160a01b038116811461192257600080fd5b919050565b600082601f83011261193857600080fd5b813567ffffffffffffffff8082111561195357611953611c7a565b604051601f8301601f19908116603f0116810190828211818310171561197b5761197b611c7a565b8160405283815286602085880101111561199457600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000602082840312156119c657600080fd5b6119cf8261190b565b9392505050565b600080604083850312156119e957600080fd5b6119f28361190b565b946020939093013593505050565b600060208284031215611a1257600080fd5b813567ffffffffffffffff811115611a2957600080fd5b611a3584828501611927565b949350505050565b600060208284031215611a4f57600080fd5b5035919050565b600060208284031215611a6857600080fd5b5051919050565b60008060408385031215611a8257600080fd5b82359150602083013567ffffffffffffffff811115611aa057600080fd5b611aac85828601611927565b9150509250929050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b608081526000855180608084015260005b81811015611b0857602081890181015160a0868401015201611aeb565b81811115611b1a57600060a083860101525b506020830195909552506040810192909252606082015260a0601f909201601f19160101919050565b6020808252601d908201527f4572726f723a20616464726573732063616e6e6f74206265207a65726f000000604082015260600190565b60208082526023908201527f4572726f723a20616c6c6f77616e6365206c657373207468616e207370656e64604082015262696e6760e81b606082015260800190565b60208082526017908201527f4572726f723a2063616c6c6572206e6f742061646d696e000000000000000000604082015260600190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b600082611c4857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611c7557634e487b7160e01b600052601160045260246000fd5b500290565b634e487b7160e01b600052604160045260246000fdfeb33de7ddffc723976f7b6005a9c32423d21ff111efa8fd10b3a8f08e25a9a4fea264697066735822122048c66041d40ad1e9fc992337219a9900e03622449eaf26e792da25e891d808d064736f6c63430008070033000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb480000000000000000000000004fabb145d64652a948d72533023f6e7a623c7c530000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c5990000000000000000000000006bd361e10c1afed0d95259e7c0115f3a60e4ea990000000000000000000000000b127304ea53e43e95399c38a0b542d2f5cdda8b000000000000000000000000098cbfb267e3d74c17ab17f94a1da0e79b913239

Deployed Bytecode

0x60806040526004361061014b5760003560e01c80636d16fa41116100b65780639b4529311161006f5780639b452931146103a4578063ce71e5df146103c2578063defde9fc146103e6578063e2f7c75714610406578063f738c4a714610426578063f851a4401461044457600080fd5b80636d16fa41146102f357806372d82bc6146103135780637429c946146103265780637925fd19146103465780637dc0d1d0146103665780639184c3d91461038457600080fd5b80633ca5b234116101085780633ca5b234146102275780633e413bee146102455780634ae5630d14610263578063520b5aa81461028357806355f0d8b6146102b35780636b51488a146102d357600080fd5b806301a38eb91461015057806306b5c1c9146101725780630dad7ee6146101925780631cb44dfc146101c95780632f48ab7d146101e957806339d7142414610207575b600080fd5b34801561015c57600080fd5b5061017061016b3660046119b4565b610462565b005b34801561017e57600080fd5b5061017061018d3660046119b4565b6104dd565b34801561019e57600080fd5b506005546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b3480156101d557600080fd5b506101706101e43660046119b4565b61054f565b3480156101f557600080fd5b506001546001600160a01b03166101ac565b34801561021357600080fd5b506101706102223660046119b4565b6105c1565b34801561023357600080fd5b506003546001600160a01b03166101ac565b34801561025157600080fd5b506002546001600160a01b03166101ac565b34801561026f57600080fd5b5061017061027e3660046119b4565b610633565b34801561028f57600080fd5b506102a361029e366004611a6f565b6106a5565b60405190151581526020016101c0565b3480156102bf57600080fd5b506101706102ce366004611a3d565b6109d2565b3480156102df57600080fd5b506102a36102ee366004611a6f565b610a51565b3480156102ff57600080fd5b5061017061030e3660046119b4565b610d64565b6102a3610321366004611a00565b610e06565b34801561033257600080fd5b506101706103413660046119b4565b611034565b34801561035257600080fd5b506102a3610361366004611a6f565b6110a6565b34801561037257600080fd5b506007546001600160a01b03166101ac565b34801561039057600080fd5b5061017061039f3660046119b4565b611452565b3480156103b057600080fd5b506004546001600160a01b03166101ac565b3480156103ce57600080fd5b506103d860095481565b6040519081526020016101c0565b3480156103f257600080fd5b506102a36104013660046119d6565b6114f4565b34801561041257600080fd5b506102a3610421366004611a6f565b6115f1565b34801561043257600080fd5b506008546001600160a01b03166101ac565b34801561045057600080fd5b506006546001600160a01b03166101ac565b6006546001600160a01b031633146104955760405162461bcd60e51b815260040161048c90611bbd565b60405180910390fd5b6001600160a01b0381166104bb5760405162461bcd60e51b815260040161048c90611b43565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b6006546001600160a01b031633146105075760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b03811661052d5760405162461bcd60e51b815260040161048c90611b43565b600380546001600160a01b0319166001600160a01b0392909216919091179055565b6006546001600160a01b031633146105795760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b03811661059f5760405162461bcd60e51b815260040161048c90611b43565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b6006546001600160a01b031633146105eb5760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b0381166106115760405162461bcd60e51b815260040161048c90611b43565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b6006546001600160a01b0316331461065d5760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b0381166106835760405162461bcd60e51b815260040161048c90611b43565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6000600260005414156106ca5760405162461bcd60e51b815260040161048c90611bf4565b6002600081815590546001600160a01b03166370a08231336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260240160206040518083038186803b15801561072157600080fd5b505afa158015610735573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107599190611a56565b6002549091506000906001600160a01b031663dd62ed3e336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015230602482015260440160206040518083038186803b1580156107b657600080fd5b505afa1580156107ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ee9190611a56565b90506000856009546108009190611c4d565b9050600061081364e8d4a5100083611c2b565b9050808410156108655760405162461bcd60e51b815260206004820181905260248201527f4572726f723a20696e73756666696369656e7420555344432042616c616e6365604482015260640161048c565b808310156108855760405162461bcd60e51b815260040161048c90611b7a565b6002546001600160a01b03166323b872dd336008546040516001600160e01b031960e085901b1681526108c792916001600160a01b0316908690600401611ab6565b600060405180830381600087803b1580156108e157600080fd5b505af11580156108f5573d6000803e3d6000fd5b50506005546001600160a01b0316915063a9059cbb90503361091f8a670de0b6b3a7640000611c4d565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b15801561096557600080fd5b505af1158015610979573d6000803e3d6000fd5b505050506109843390565b6001600160a01b0316600080516020611c91833981519152878985635553444360e01b6040516109b79493929190611ada565b60405180910390a26001945050505050600160005592915050565b6006546001600160a01b031633146109fc5760405162461bcd60e51b815260040161048c90611bbd565b60008111610a4c5760405162461bcd60e51b815260206004820152601b60248201527f4572726f723a2070726963652063616e6e6f74206265207a65726f0000000000604482015260640161048c565b600955565b600060026000541415610a765760405162461bcd60e51b815260040161048c90611bf4565b600260009081556001546001600160a01b03166370a08231336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260240160206040518083038186803b158015610ace57600080fd5b505afa158015610ae2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b069190611a56565b6001549091506000906001600160a01b031663dd62ed3e336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015230602482015260440160206040518083038186803b158015610b6357600080fd5b505afa158015610b77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b9b9190611a56565b9050600085600954610bad9190611c4d565b90506000610bc064e8d4a5100083611c2b565b905080841015610c125760405162461bcd60e51b815260206004820181905260248201527f4572726f723a20696e73756666696369656e7420555344542042616c616e6365604482015260640161048c565b80831015610c325760405162461bcd60e51b815260040161048c90611b7a565b6001546001600160a01b03166323b872dd336008546040516001600160e01b031960e085901b168152610c7492916001600160a01b0316908690600401611ab6565b600060405180830381600087803b158015610c8e57600080fd5b505af1158015610ca2573d6000803e3d6000fd5b50506005546001600160a01b0316915063a9059cbb905033610ccc8a670de0b6b3a7640000611c4d565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b158015610d1257600080fd5b505af1158015610d26573d6000803e3d6000fd5b50505050610d313390565b6001600160a01b0316600080516020611c91833981519152878985631554d11560e21b6040516109b79493929190611ada565b6006546001600160a01b03163314610d8e5760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b038116610de45760405162461bcd60e51b815260206004820152601b60248201527f4572726f723a206f776e65722063616e6e6f74206265207a65726f0000000000604482015260640161048c565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b600060026000541415610e2b5760405162461bcd60e51b815260040161048c90611bf4565b6002600090815560075460408051633bbf06c360e11b815290516001600160a01b039092169163777e0d8691600480820192602092909190829003018186803b158015610e7757600080fd5b505afa158015610e8b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eaf9190611a56565b9050600060095482610ebe3490565b610ec89190611c4d565b610ed29190611c2b565b60085490915060009081906001600160a01b031634604051600081818185875af1925050503d8060008114610f23576040519150601f19603f3d011682016040523d82523d6000602084013e610f28565b606091505b509150915081610f6f5760405162461bcd60e51b815260206004820152601260248201527108cc2d2d8cac840e8de40e6cadcc8408aa8960731b604482015260640161048c565b6005546001600160a01b031663a9059cbb336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101869052604401600060405180830381600087803b158015610fc957600080fd5b505af1158015610fdd573d6000803e3d6000fd5b50505050610fe83390565b6001600160a01b0316600080516020611c918339815191528785346208aa8960eb1b60405161101a9493929190611ada565b60405180910390a260019450505050506001600055919050565b6006546001600160a01b0316331461105e5760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b0381166110845760405162461bcd60e51b815260040161048c90611b43565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6000600260005414156110cb5760405162461bcd60e51b815260040161048c90611bf4565b600260009081556004546001600160a01b03166370a08231336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260240160206040518083038186803b15801561112357600080fd5b505afa158015611137573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115b9190611a56565b6004549091506000906001600160a01b031663dd62ed3e336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015230602482015260440160206040518083038186803b1580156111b857600080fd5b505afa1580156111cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f09190611a56565b90506000600760009054906101000a90046001600160a01b03166001600160a01b0316631b7127396040518163ffffffff1660e01b815260040160206040518083038186803b15801561124257600080fd5b505afa158015611256573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061127a9190611a56565b905060006402540be40082886009546112939190611c4d565b6112a590670de0b6b3a7640000611c4d565b6112af9190611c2b565b6112b99190611c2b565b90508084101561130b5760405162461bcd60e51b815260206004820181905260248201527f4572726f723a20696e73756666696369656e7420574254432042616c616e6365604482015260640161048c565b8083101561132b5760405162461bcd60e51b815260040161048c90611b7a565b600480546008546040516323b872dd60e01b81526001600160a01b03928316936323b872dd93611362933393911691879101611ab6565b600060405180830381600087803b15801561137c57600080fd5b505af1158015611390573d6000803e3d6000fd5b50506005546001600160a01b0316915063a9059cbb9050336113ba8a670de0b6b3a7640000611c4d565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b15801561140057600080fd5b505af1158015611414573d6000803e3d6000fd5b5050505061141f3390565b6001600160a01b0316600080516020611c91833981519152878984637742544360e01b6040516109b79493929190611ada565b6006546001600160a01b0316331461147c5760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b0381166114d25760405162461bcd60e51b815260206004820152601a60248201527f4572726f723a206e6f7420612076616c69642061646472657373000000000000604482015260640161048c565b600880546001600160a01b0319166001600160a01b0392909216919091179055565b6006546000906001600160a01b031633146115215760405162461bcd60e51b815260040161048c90611bbd565b6001600160a01b0383166115825760405162461bcd60e51b815260206004820152602260248201527f4572726f723a2063616e6e6f742073656e6420746f207a65726f206164647265604482015261737360f01b606482015260840161048c565b60055460405163a9059cbb60e01b81526001600160a01b038581166004830152602482018590529091169063a9059cbb90604401600060405180830381600087803b1580156115d057600080fd5b505af11580156115e4573d6000803e3d6000fd5b5060019695505050505050565b6000600260005414156116165760405162461bcd60e51b815260040161048c90611bf4565b600260009081556003546001600160a01b03166370a08231336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260240160206040518083038186803b15801561166e57600080fd5b505afa158015611682573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116a69190611a56565b6003549091506000906001600160a01b031663dd62ed3e336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015230602482015260440160206040518083038186803b15801561170357600080fd5b505afa158015611717573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061173b9190611a56565b905060008560095461174d9190611c4d565b90508083101561179f5760405162461bcd60e51b815260206004820181905260248201527f4572726f723a20696e73756666696369656e7420425553442042616c616e6365604482015260640161048c565b808210156117bf5760405162461bcd60e51b815260040161048c90611b7a565b6003546001600160a01b03166323b872dd336008546040516001600160e01b031960e085901b16815261180192916001600160a01b0316908690600401611ab6565b600060405180830381600087803b15801561181b57600080fd5b505af115801561182f573d6000803e3d6000fd5b50506005546001600160a01b0316915063a9059cbb90503361185989670de0b6b3a7640000611c4d565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b15801561189f57600080fd5b505af11580156118b3573d6000803e3d6000fd5b505050506118be3390565b6001600160a01b0316600080516020611c9183398151915286888463109554d160e21b6040516118f19493929190611ada565b60405180910390a260019350505050600160005592915050565b80356001600160a01b038116811461192257600080fd5b919050565b600082601f83011261193857600080fd5b813567ffffffffffffffff8082111561195357611953611c7a565b604051601f8301601f19908116603f0116810190828211818310171561197b5761197b611c7a565b8160405283815286602085880101111561199457600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000602082840312156119c657600080fd5b6119cf8261190b565b9392505050565b600080604083850312156119e957600080fd5b6119f28361190b565b946020939093013593505050565b600060208284031215611a1257600080fd5b813567ffffffffffffffff811115611a2957600080fd5b611a3584828501611927565b949350505050565b600060208284031215611a4f57600080fd5b5035919050565b600060208284031215611a6857600080fd5b5051919050565b60008060408385031215611a8257600080fd5b82359150602083013567ffffffffffffffff811115611aa057600080fd5b611aac85828601611927565b9150509250929050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b608081526000855180608084015260005b81811015611b0857602081890181015160a0868401015201611aeb565b81811115611b1a57600060a083860101525b506020830195909552506040810192909252606082015260a0601f909201601f19160101919050565b6020808252601d908201527f4572726f723a20616464726573732063616e6e6f74206265207a65726f000000604082015260600190565b60208082526023908201527f4572726f723a20616c6c6f77616e6365206c657373207468616e207370656e64604082015262696e6760e81b606082015260800190565b60208082526017908201527f4572726f723a2063616c6c6572206e6f742061646d696e000000000000000000604082015260600190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b600082611c4857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611c7557634e487b7160e01b600052601160045260246000fd5b500290565b634e487b7160e01b600052604160045260246000fdfeb33de7ddffc723976f7b6005a9c32423d21ff111efa8fd10b3a8f08e25a9a4fea264697066735822122048c66041d40ad1e9fc992337219a9900e03622449eaf26e792da25e891d808d064736f6c63430008070033

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

000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb480000000000000000000000004fabb145d64652a948d72533023f6e7a623c7c530000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c5990000000000000000000000006bd361e10c1afed0d95259e7c0115f3a60e4ea990000000000000000000000000b127304ea53e43e95399c38a0b542d2f5cdda8b000000000000000000000000098cbfb267e3d74c17ab17f94a1da0e79b913239

-----Decoded View---------------
Arg [0] : _usdtAddress (address): 0xdAC17F958D2ee523a2206206994597C13D831ec7
Arg [1] : _usdcAddress (address): 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48
Arg [2] : _busdAddress (address): 0x4Fabb145d64652a948d72533023f6E7A623C7C53
Arg [3] : _wbtcAddress (address): 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599
Arg [4] : _bollyAddress (address): 0x6bd361e10c1afed0d95259e7C0115f3A60e4ea99
Arg [5] : _oracleAddress (address): 0x0b127304EA53e43e95399C38a0B542D2f5cdDa8b
Arg [6] : _settlementAddress (address): 0x098CbfB267e3D74c17ab17f94a1da0E79B913239

-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7
Arg [1] : 000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
Arg [2] : 0000000000000000000000004fabb145d64652a948d72533023f6e7a623c7c53
Arg [3] : 0000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599
Arg [4] : 0000000000000000000000006bd361e10c1afed0d95259e7c0115f3a60e4ea99
Arg [5] : 0000000000000000000000000b127304ea53e43e95399c38a0b542d2f5cdda8b
Arg [6] : 000000000000000000000000098cbfb267e3d74c17ab17f94a1da0e79b913239


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.