GLMR Price: $0.020842 (-2.40%)

Contract

0x70790550d5F01EDd5B2Ed1dFf05eDC52cD4F1Eda

Overview

GLMR Balance

Moonbeam Chain LogoMoonbeam Chain LogoMoonbeam Chain Logo0 GLMR

GLMR Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Block
From
To
Remove Shares Fo...17238382022-08-25 0:58:361252 days ago1661389116IN
0x70790550...2cD4F1Eda
0 GLMR0.00423028101
Remove Shares Fo...17238342022-08-25 0:57:421252 days ago1661389062IN
0x70790550...2cD4F1Eda
0 GLMR0.00423028101
Remove Shares Fo...17238222022-08-25 0:55:121252 days ago1661388912IN
0x70790550...2cD4F1Eda
0 GLMR0.00423028101
Remove Shares Fo...17238192022-08-25 0:54:361252 days ago1661388876IN
0x70790550...2cD4F1Eda
0 GLMR0.00423028101
Remove Shares Fo...17237952022-08-25 0:49:361252 days ago1661388576IN
0x70790550...2cD4F1Eda
0 GLMR0.00423028101
Remove Shares Fo...17237612022-08-25 0:42:241252 days ago1661388144IN
0x70790550...2cD4F1Eda
0 GLMR0.00423028101
Add Shares For9237352022-04-29 18:51:001369 days ago1651258260IN
0x70790550...2cD4F1Eda
0 GLMR0.00838409102.5
Remove Shares Fo...9237142022-04-29 18:46:241369 days ago1651257984IN
0x70790550...2cD4F1Eda
0 GLMR0.00343549102.5
Add Shares For7992212022-04-11 21:10:181387 days ago1649711418IN
0x70790550...2cD4F1Eda
0 GLMR0.00838409102.5
Remove Shares Fo...7991632022-04-11 20:57:361387 days ago1649710656IN
0x70790550...2cD4F1Eda
0 GLMR0.00343354102.5
Mint7991612022-04-11 20:57:121387 days ago1649710632IN
0x70790550...2cD4F1Eda
0 GLMR0.00546847102.5
Add Shares For3204182022-02-01 19:16:181456 days ago1643742978IN
0x70790550...2cD4F1Eda
0 GLMR0.0080372100
Add Shares For2671772022-01-25 4:36:541464 days ago1643085414IN
0x70790550...2cD4F1Eda
0 GLMR0.0080372100
Add Shares For2671752022-01-25 4:36:301464 days ago1643085390IN
0x70790550...2cD4F1Eda
0 GLMR0.0080372100
Add Shares For2670652022-01-25 4:14:241464 days ago1643084064IN
0x70790550...2cD4F1Eda
0 GLMR0.0080372100
Add Shares For1950872022-01-14 20:34:421474 days ago1642192482IN
0x70790550...2cD4F1Eda
0 GLMR0.0080372100
Add Shares For1950862022-01-14 20:34:301474 days ago1642192470IN
0x70790550...2cD4F1Eda
0 GLMR0.0080372100
Add Shares For1950852022-01-14 20:34:181474 days ago1642192458IN
0x70790550...2cD4F1Eda
0 GLMR0.0080372100
Add Shares For1950652022-01-14 20:30:181474 days ago1642192218IN
0x70790550...2cD4F1Eda
0 GLMR0.008036100
Mint1879822022-01-13 20:02:361475 days ago1642104156IN
0x70790550...2cD4F1Eda
0 GLMR0.0049551100
Add Shares For1838172022-01-13 5:35:121476 days ago1642052112IN
0x70790550...2cD4F1Eda
0 GLMR0.0080372100
Add Shares For1836192022-01-13 4:54:301476 days ago1642049670IN
0x70790550...2cD4F1Eda
0 GLMR0.0080372100
Mint1834712022-01-13 4:24:481476 days ago1642047888IN
0x70790550...2cD4F1Eda
0 GLMR0.006859100
Add Shares For1834712022-01-13 4:24:481476 days ago1642047888IN
0x70790550...2cD4F1Eda
0 GLMR0.0080372100
Add Shares For1834282022-01-13 4:16:061476 days ago1642047366IN
0x70790550...2cD4F1Eda
0 GLMR0.0080372100
View all transactions

Latest 25 internal transactions (View All)

Parent Transaction Hash Block From To
96466312025-02-16 14:33:00346 days ago1739716380
0x70790550...2cD4F1Eda
0 GLMR
96466312025-02-16 14:33:00346 days ago1739716380
0x70790550...2cD4F1Eda
0 GLMR
96466292025-02-16 14:32:48346 days ago1739716368
0x70790550...2cD4F1Eda
0 GLMR
96466292025-02-16 14:32:48346 days ago1739716368
0x70790550...2cD4F1Eda
0 GLMR
96466272025-02-16 14:32:36346 days ago1739716356
0x70790550...2cD4F1Eda
0 GLMR
96466272025-02-16 14:32:36346 days ago1739716356
0x70790550...2cD4F1Eda
0 GLMR
96466242025-02-16 14:32:18346 days ago1739716338
0x70790550...2cD4F1Eda
0 GLMR
96466242025-02-16 14:32:18346 days ago1739716338
0x70790550...2cD4F1Eda
0 GLMR
91259522025-01-10 20:45:36382 days ago1736541936
0x70790550...2cD4F1Eda
0 GLMR
91259522025-01-10 20:45:36382 days ago1736541936
0x70790550...2cD4F1Eda
0 GLMR
91259492025-01-10 20:45:18382 days ago1736541918
0x70790550...2cD4F1Eda
0 GLMR
91259492025-01-10 20:45:18382 days ago1736541918
0x70790550...2cD4F1Eda
0 GLMR
91259422025-01-10 20:44:36382 days ago1736541876
0x70790550...2cD4F1Eda
0 GLMR
91259422025-01-10 20:44:36382 days ago1736541876
0x70790550...2cD4F1Eda
0 GLMR
90551132025-01-05 20:27:06387 days ago1736108826
0x70790550...2cD4F1Eda
0 GLMR
90551132025-01-05 20:27:06387 days ago1736108826
0x70790550...2cD4F1Eda
0 GLMR
90550512025-01-05 20:20:54387 days ago1736108454
0x70790550...2cD4F1Eda
0 GLMR
90550512025-01-05 20:20:54387 days ago1736108454
0x70790550...2cD4F1Eda
0 GLMR
89977522025-01-01 19:20:06391 days ago1735759206
0x70790550...2cD4F1Eda
0 GLMR
89977522025-01-01 19:20:06391 days ago1735759206
0x70790550...2cD4F1Eda
0 GLMR
89522022024-12-29 14:10:12395 days ago1735481412
0x70790550...2cD4F1Eda
0 GLMR
89522022024-12-29 14:10:12395 days ago1735481412
0x70790550...2cD4F1Eda
0 GLMR
89521762024-12-29 14:07:36395 days ago1735481256
0x70790550...2cD4F1Eda
0 GLMR
89521762024-12-29 14:07:36395 days ago1735481256
0x70790550...2cD4F1Eda
0 GLMR
87725642024-12-16 19:34:42407 days ago1734377682
0x70790550...2cD4F1Eda
0 GLMR
View All Internal Transactions
Cross-Chain Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Minter

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at moonbeam.moonscan.io on 2022-02-01
*/

// File: Context.sol


// OpenZeppelin Contracts v4.3.2 (utils/Context.sol)

pragma solidity ^0.8.0;

/**
 * @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;
    }
}
// File: Minter.sol

pragma solidity ^0.8.0;


library SafeMath {
    function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
      if (a == 0) {
        return 0;
      }
      c = a * b;
      assert(c / a == b);
      return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
      return a / b;
    }

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

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

interface TOKEN {
    function mint(address to, uint256 amount) external;
}

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor() {
        _transferOwnership(_msgSender());
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view virtual returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Internal function without access restriction.
     */
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

contract Minter is Ownable {
    using SafeMath for uint256;

    bool private initialized = false; //syncs minter and vault

    modifier hasUpdated {
        if (remainingSupply > 0 && sharesSupply > 0) {
          uint256 secondsPassed = SafeMath.sub(block.timestamp, lastMintTime);
          uint256 mintAmount = secondsPassed.mul(remainingSupply).div(dailyRate);

          if (mintAmount > remainingSupply) {
            mintAmount = remainingSupply;
          }

          profitPerShare = SafeMath.add(profitPerShare, (mintAmount * mintMagnitude) / sharesSupply);
          remainingSupply = remainingSupply.sub(mintAmount);
          lastMintTime = block.timestamp;
        }
        _;
    }

    modifier onlyPositiveBal {
        require(myMintShare() > 0);
        _;
    }

    event onAddShares(
        address indexed farmAddress,
        uint256 shares,
        uint256 timestamp
    );

    event onRemoveShares(
        address indexed farmAddress,
        uint256 shares,
        uint256 timestamp
    );

    event onMint(
        address indexed farmAddress,
        uint256 tokensMinted
    );

    uint256 constant private mintMagnitude = 2 ** 64;

    uint32 constant private dailyRate = 96000000; //0.09% of the remainingSupply a day

    mapping(address => uint256) public sharesBalanceLedger;
    mapping(address => int256) private mintedBy;

    uint256 public remainingSupply = 180*1e9*1e18; //200 bil max supply - 20 bil pre-minted (5% (10 bil) airdrop, 5% (10 bil) initial liquidity)
    uint256 public lastMintTime =  block.timestamp;

    uint256 private sharesSupply = 0;
    uint256 private profitPerShare = 0;

    TOKEN bep20;


    fallback() external payable {
        revert();
    }

    receive() external payable {
        revert();
    }

    function mint() hasUpdated onlyPositiveBal external returns(uint256){
        address _contractAddress = msg.sender;
        uint256 _mintAmount = myMintShare();
        mintedBy[_contractAddress] += (int256) (_mintAmount * mintMagnitude);
        bep20.mint(_contractAddress, _mintAmount);
        emit onMint(_contractAddress, _mintAmount);
        return _mintAmount;
    }

    function addSharesFor(address _contractAddress, uint256 _shares) hasUpdated onlyOwner public returns (uint256) {
        return _addShares(_contractAddress, _shares);
    }

    function _addShares(address _contractAddress, uint256 _amountOfShares) private returns(uint256) {
        require(_amountOfShares > 0 && _amountOfShares.add(sharesSupply) > sharesSupply);

        sharesSupply = sharesSupply.add(_amountOfShares);
        sharesBalanceLedger[_contractAddress] = sharesBalanceLedger[_contractAddress].add(_amountOfShares);

        int256 _updatedMintedBy = (int256) (profitPerShare * _amountOfShares);
        mintedBy[_contractAddress] += _updatedMintedBy;

        emit onAddShares(_contractAddress, _amountOfShares, block.timestamp);

        return _amountOfShares;
    }

    function removeSharesFor(address _contractAddress, uint256 _shares) hasUpdated onlyOwner public {
        require(_shares > 0 && _shares <= sharesBalanceLedger[_contractAddress]);

        sharesSupply = sharesSupply.sub(_shares);
        sharesBalanceLedger[_contractAddress] = sharesBalanceLedger[_contractAddress].sub(_shares);

        int256 _updatedPayouts = (int256) (profitPerShare * _shares);
        mintedBy[_contractAddress] -= _updatedPayouts;

        emit onRemoveShares(_contractAddress, _shares, block.timestamp);
    }

    function totalSupply() public view returns(uint256) {
        return sharesSupply;
    }

    function myShares() public view returns (uint256) {
        address _contractAddress = msg.sender;
        return sharesOf(_contractAddress);
    }

    function myEstimatedMintShare() public view returns (uint256) {
        address _contractAddress = msg.sender;
        return estimateMintShareOf(_contractAddress);
    }

    function estimateMintShareOf(address _contractAddress) public view returns (uint256) {
        uint256 _profitPerShare = profitPerShare;

        if (remainingSupply > 0) {
            uint256 secondsPassed = SafeMath.sub(block.timestamp, lastMintTime);

            uint256 mintAmount = secondsPassed.mul(remainingSupply).div(dailyRate);

            if (mintAmount > remainingSupply) {
                mintAmount = remainingSupply;
            }

          _profitPerShare = SafeMath.add(_profitPerShare, (mintAmount * mintMagnitude) / sharesSupply);
        }

        return (uint256) ((int256) (_profitPerShare * sharesBalanceLedger[_contractAddress]) - mintedBy[_contractAddress]) / mintMagnitude;
    }

    function myMintShare() public view returns (uint256) {
        address _contractAddress = msg.sender;
        return mintShareOf(_contractAddress) ;
    }

    function mintShareOf(address _contractAddress) public view returns (uint256) {
        return (uint256) ((int256) (profitPerShare * sharesBalanceLedger[_contractAddress]) - mintedBy[_contractAddress]) / mintMagnitude;
    }

    function sharesOf(address _contractAddress) public view returns (uint256) {
        return sharesBalanceLedger[_contractAddress];
    }

    function setTokenAfterDeploy(address _tokenAddress) onlyOwner public returns (address){
        require(initialized == false, 'A token has already been set for this contract.');
        bep20 = TOKEN(address(_tokenAddress)); //pad
        initialized = true;
        return _tokenAddress;
    }
}

Contract Security Audit

Contract ABI

API
[{"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":"farmAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"onAddShares","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"farmAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokensMinted","type":"uint256"}],"name":"onMint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"farmAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"onRemoveShares","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"},{"internalType":"uint256","name":"_shares","type":"uint256"}],"name":"addSharesFor","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"}],"name":"estimateMintShareOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastMintTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"mint","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"}],"name":"mintShareOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"myEstimatedMintShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"myMintShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"myShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"remainingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"},{"internalType":"uint256","name":"_shares","type":"uint256"}],"name":"removeSharesFor","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"}],"name":"setTokenAfterDeploy","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"sharesBalanceLedger","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"}],"name":"sharesOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526000805460ff60a01b191681556c02459c82a05e9a2ad32000000060035542600455600581905560065534801561003a57600080fd5b5061004433610049565b610099565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b610dbf806100a86000396000f3fe6080604052600436106100f75760003560e01c8063b937a5b31161008a578063e7a965f211610059578063e7a965f214610271578063f2fde38b14610291578063f5eb42dc146102b3578063f8aefefc146102e957600080fd5b8063b937a5b314610204578063cf29ea1f14610219578063d0d216041461022e578063da0239a61461025b57600080fd5b8063594d9302116100c6578063594d9302146101835780638da5cb5b146101bb5780639d463520146101d95780639e7a4757146101ef57600080fd5b80631249c58b1461010657806318160ddd1461012e57806323d1cd1d146101435780635454dc501461016357600080fd5b3661010157600080fd5b600080fd5b34801561011257600080fd5b5061011b610309565b6040519081526020015b60405180910390f35b34801561013a57600080fd5b5060055461011b565b34801561014f57600080fd5b5061011b61015e366004610c0d565b6104bc565b34801561016f57600080fd5b5061011b61017e366004610c0d565b61050d565b34801561018f57600080fd5b506101a361019e366004610c0d565b6105cf565b6040516001600160a01b039091168152602001610125565b3480156101c757600080fd5b506000546001600160a01b03166101a3565b3480156101e557600080fd5b5061011b60045481565b3480156101fb57600080fd5b5061011b6106ad565b34801561021057600080fd5b5061011b6106c7565b34801561022557600080fd5b5061011b6106d3565b34801561023a57600080fd5b5061011b610249366004610c0d565b60016020526000908152604090205481565b34801561026757600080fd5b5061011b60035481565b34801561027d57600080fd5b5061011b61028c366004610c27565b6106df565b34801561029d57600080fd5b506102b16102ac366004610c0d565b6107a6565b005b3480156102bf57600080fd5b5061011b6102ce366004610c0d565b6001600160a01b031660009081526001602052604090205490565b3480156102f557600080fd5b506102b1610304366004610c27565b610841565b60008060035411801561031e57506000600554115b156103b157600061033142600454610a05565b9050600061035e6305b8d80063ffffffff1661035860035485610a2f90919063ffffffff16565b90610a70565b905060035481111561036f57506003545b610397600654600554600160401b846103889190610cfe565b6103929190610cde565b610a7c565b6006556003546103a79082610a05565b6003555050426004555b60006103bb6106c7565b116103c557600080fd5b3360006103d06106c7565b90506103e0600160401b82610cfe565b6001600160a01b03831660009081526002602052604081208054909190610408908490610c85565b90915550506007546040516340c10f1960e01b81526001600160a01b03848116600483015260248201849052909116906340c10f1990604401600060405180830381600087803b15801561045b57600080fd5b505af115801561046f573d6000803e3d6000fd5b50505050816001600160a01b03167f0f632fd389970cd3b065f85dce83c297194646c14c7ef2e302cb3307b04c7720826040516104ae91815260200190565b60405180910390a291505090565b6001600160a01b0381166000908152600260209081526040808320546001909252822054600654600160401b92916104f391610cfe565b6104fd9190610d1d565b6105079190610cde565b92915050565b600654600354600091901561057e57600061052a42600454610a05565b905060006105516305b8d80063ffffffff1661035860035485610a2f90919063ffffffff16565b905060035481111561056257506003545b61057983600554600160401b846103889190610cfe565b925050505b6001600160a01b038316600090815260026020908152604080832054600190925290912054600160401b91906105b49084610cfe565b6105be9190610d1d565b6105c89190610cde565b9392505050565b600080546001600160a01b031633146106035760405162461bcd60e51b81526004016105fa90610c50565b60405180910390fd5b600054600160a01b900460ff16156106755760405162461bcd60e51b815260206004820152602f60248201527f4120746f6b656e2068617320616c7265616479206265656e2073657420666f7260448201526e103a3434b99031b7b73a3930b1ba1760891b60648201526084016105fa565b50600780546001600160a01b0383166001600160a01b03199091161790556000805460ff60a01b1916600160a01b179055805b919050565b336000818152600160205260408120549091905b91505090565b6000336106c1816104bc565b6000336106c18161050d565b6000806003541180156106f457506000600554115b1561077257600061070742600454610a05565b9050600061072e6305b8d80063ffffffff1661035860035485610a2f90919063ffffffff16565b905060035481111561073f57506003545b610758600654600554600160401b846103889190610cfe565b6006556003546107689082610a05565b6003555050426004555b6000546001600160a01b0316331461079c5760405162461bcd60e51b81526004016105fa90610c50565b6105c88383610aa8565b6000546001600160a01b031633146107d05760405162461bcd60e51b81526004016105fa90610c50565b6001600160a01b0381166108355760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105fa565b61083e81610ba6565b50565b600060035411801561085557506000600554115b156108d357600061086842600454610a05565b9050600061088f6305b8d80063ffffffff1661035860035485610a2f90919063ffffffff16565b90506003548111156108a057506003545b6108b9600654600554600160401b846103889190610cfe565b6006556003546108c99082610a05565b6003555050426004555b6000546001600160a01b031633146108fd5760405162461bcd60e51b81526004016105fa90610c50565b60008111801561092557506001600160a01b0382166000908152600160205260409020548111155b61092e57600080fd5b60055461093b9082610a05565b6005556001600160a01b0382166000908152600160205260409020546109619082610a05565b6001600160a01b03831660009081526001602052604081209190915560065461098b908390610cfe565b6001600160a01b0384166000908152600260205260408120805492935083929091906109b8908490610d1d565b9091555050604080518381524260208201526001600160a01b038516917f86b79d04ba4ba4313a5f432df60c0caf9ee3ceeb353e83437e421e66fdaa9cf4910160405180910390a2505050565b600082821115610a2557634e487b7160e01b600052600160045260246000fd5b6105c88284610d5c565b600082610a3e57506000610507565b610a488284610cfe565b905081610a558483610cde565b1461050757634e487b7160e01b600052600160045260246000fd5b60006105c88284610cde565b6000610a888284610cc6565b90508281101561050757634e487b7160e01b600052600160045260246000fd5b60008082118015610ac35750600554610ac18382610a7c565b115b610acc57600080fd5b600554610ad99083610a7c565b6005556001600160a01b038316600090815260016020526040902054610aff9083610a7c565b6001600160a01b038416600090815260016020526040812091909155600654610b29908490610cfe565b6001600160a01b038516600090815260026020526040812080549293508392909190610b56908490610c85565b9091555050604080518481524260208201526001600160a01b038616917f47c76810fd0974f74ad4cf16225531ab0d4b715d03f69f5e0c3854908ef88dbf910160405180910390a2509092915050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b03811681146106a857600080fd5b600060208284031215610c1e578081fd5b6105c882610bf6565b60008060408385031215610c39578081fd5b610c4283610bf6565b946020939093013593505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600080821280156001600160ff1b0384900385131615610ca757610ca7610d73565b600160ff1b8390038412811615610cc057610cc0610d73565b50500190565b60008219821115610cd957610cd9610d73565b500190565b600082610cf957634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615610d1857610d18610d73565b500290565b60008083128015600160ff1b850184121615610d3b57610d3b610d73565b6001600160ff1b0384018313811615610d5657610d56610d73565b50500390565b600082821015610d6e57610d6e610d73565b500390565b634e487b7160e01b600052601160045260246000fdfea26469706673582212207689869e7a246185d6b43bd11d1ca8e5ddaac2b2d03a440bc551c66a53e2aff664736f6c63430008040033

Deployed Bytecode

0x6080604052600436106100f75760003560e01c8063b937a5b31161008a578063e7a965f211610059578063e7a965f214610271578063f2fde38b14610291578063f5eb42dc146102b3578063f8aefefc146102e957600080fd5b8063b937a5b314610204578063cf29ea1f14610219578063d0d216041461022e578063da0239a61461025b57600080fd5b8063594d9302116100c6578063594d9302146101835780638da5cb5b146101bb5780639d463520146101d95780639e7a4757146101ef57600080fd5b80631249c58b1461010657806318160ddd1461012e57806323d1cd1d146101435780635454dc501461016357600080fd5b3661010157600080fd5b600080fd5b34801561011257600080fd5b5061011b610309565b6040519081526020015b60405180910390f35b34801561013a57600080fd5b5060055461011b565b34801561014f57600080fd5b5061011b61015e366004610c0d565b6104bc565b34801561016f57600080fd5b5061011b61017e366004610c0d565b61050d565b34801561018f57600080fd5b506101a361019e366004610c0d565b6105cf565b6040516001600160a01b039091168152602001610125565b3480156101c757600080fd5b506000546001600160a01b03166101a3565b3480156101e557600080fd5b5061011b60045481565b3480156101fb57600080fd5b5061011b6106ad565b34801561021057600080fd5b5061011b6106c7565b34801561022557600080fd5b5061011b6106d3565b34801561023a57600080fd5b5061011b610249366004610c0d565b60016020526000908152604090205481565b34801561026757600080fd5b5061011b60035481565b34801561027d57600080fd5b5061011b61028c366004610c27565b6106df565b34801561029d57600080fd5b506102b16102ac366004610c0d565b6107a6565b005b3480156102bf57600080fd5b5061011b6102ce366004610c0d565b6001600160a01b031660009081526001602052604090205490565b3480156102f557600080fd5b506102b1610304366004610c27565b610841565b60008060035411801561031e57506000600554115b156103b157600061033142600454610a05565b9050600061035e6305b8d80063ffffffff1661035860035485610a2f90919063ffffffff16565b90610a70565b905060035481111561036f57506003545b610397600654600554600160401b846103889190610cfe565b6103929190610cde565b610a7c565b6006556003546103a79082610a05565b6003555050426004555b60006103bb6106c7565b116103c557600080fd5b3360006103d06106c7565b90506103e0600160401b82610cfe565b6001600160a01b03831660009081526002602052604081208054909190610408908490610c85565b90915550506007546040516340c10f1960e01b81526001600160a01b03848116600483015260248201849052909116906340c10f1990604401600060405180830381600087803b15801561045b57600080fd5b505af115801561046f573d6000803e3d6000fd5b50505050816001600160a01b03167f0f632fd389970cd3b065f85dce83c297194646c14c7ef2e302cb3307b04c7720826040516104ae91815260200190565b60405180910390a291505090565b6001600160a01b0381166000908152600260209081526040808320546001909252822054600654600160401b92916104f391610cfe565b6104fd9190610d1d565b6105079190610cde565b92915050565b600654600354600091901561057e57600061052a42600454610a05565b905060006105516305b8d80063ffffffff1661035860035485610a2f90919063ffffffff16565b905060035481111561056257506003545b61057983600554600160401b846103889190610cfe565b925050505b6001600160a01b038316600090815260026020908152604080832054600190925290912054600160401b91906105b49084610cfe565b6105be9190610d1d565b6105c89190610cde565b9392505050565b600080546001600160a01b031633146106035760405162461bcd60e51b81526004016105fa90610c50565b60405180910390fd5b600054600160a01b900460ff16156106755760405162461bcd60e51b815260206004820152602f60248201527f4120746f6b656e2068617320616c7265616479206265656e2073657420666f7260448201526e103a3434b99031b7b73a3930b1ba1760891b60648201526084016105fa565b50600780546001600160a01b0383166001600160a01b03199091161790556000805460ff60a01b1916600160a01b179055805b919050565b336000818152600160205260408120549091905b91505090565b6000336106c1816104bc565b6000336106c18161050d565b6000806003541180156106f457506000600554115b1561077257600061070742600454610a05565b9050600061072e6305b8d80063ffffffff1661035860035485610a2f90919063ffffffff16565b905060035481111561073f57506003545b610758600654600554600160401b846103889190610cfe565b6006556003546107689082610a05565b6003555050426004555b6000546001600160a01b0316331461079c5760405162461bcd60e51b81526004016105fa90610c50565b6105c88383610aa8565b6000546001600160a01b031633146107d05760405162461bcd60e51b81526004016105fa90610c50565b6001600160a01b0381166108355760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105fa565b61083e81610ba6565b50565b600060035411801561085557506000600554115b156108d357600061086842600454610a05565b9050600061088f6305b8d80063ffffffff1661035860035485610a2f90919063ffffffff16565b90506003548111156108a057506003545b6108b9600654600554600160401b846103889190610cfe565b6006556003546108c99082610a05565b6003555050426004555b6000546001600160a01b031633146108fd5760405162461bcd60e51b81526004016105fa90610c50565b60008111801561092557506001600160a01b0382166000908152600160205260409020548111155b61092e57600080fd5b60055461093b9082610a05565b6005556001600160a01b0382166000908152600160205260409020546109619082610a05565b6001600160a01b03831660009081526001602052604081209190915560065461098b908390610cfe565b6001600160a01b0384166000908152600260205260408120805492935083929091906109b8908490610d1d565b9091555050604080518381524260208201526001600160a01b038516917f86b79d04ba4ba4313a5f432df60c0caf9ee3ceeb353e83437e421e66fdaa9cf4910160405180910390a2505050565b600082821115610a2557634e487b7160e01b600052600160045260246000fd5b6105c88284610d5c565b600082610a3e57506000610507565b610a488284610cfe565b905081610a558483610cde565b1461050757634e487b7160e01b600052600160045260246000fd5b60006105c88284610cde565b6000610a888284610cc6565b90508281101561050757634e487b7160e01b600052600160045260246000fd5b60008082118015610ac35750600554610ac18382610a7c565b115b610acc57600080fd5b600554610ad99083610a7c565b6005556001600160a01b038316600090815260016020526040902054610aff9083610a7c565b6001600160a01b038416600090815260016020526040812091909155600654610b29908490610cfe565b6001600160a01b038516600090815260026020526040812080549293508392909190610b56908490610c85565b9091555050604080518481524260208201526001600160a01b038616917f47c76810fd0974f74ad4cf16225531ab0d4b715d03f69f5e0c3854908ef88dbf910160405180910390a2509092915050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b03811681146106a857600080fd5b600060208284031215610c1e578081fd5b6105c882610bf6565b60008060408385031215610c39578081fd5b610c4283610bf6565b946020939093013593505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600080821280156001600160ff1b0384900385131615610ca757610ca7610d73565b600160ff1b8390038412811615610cc057610cc0610d73565b50500190565b60008219821115610cd957610cd9610d73565b500190565b600082610cf957634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615610d1857610d18610d73565b500290565b60008083128015600160ff1b850184121615610d3b57610d3b610d73565b6001600160ff1b0384018313811615610d5657610d56610d73565b50500390565b600082821015610d6e57610d6e610d73565b500390565b634e487b7160e01b600052601160045260246000fdfea26469706673582212207689869e7a246185d6b43bd11d1ca8e5ddaac2b2d03a440bc551c66a53e2aff664736f6c63430008040033

Deployed Bytecode Sourcemap

3013:5626:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4783:8;;;3013:5626;;;;;;;;;;;;;;;;;;;;;4783:8;;;3013:5626;;;;;;;;;;;;;;;;;;;;;;;;;;4783:8;;;3013:5626;;;;;;;;;;;;;;;;;;;;;4783:8;;;3013:5626;;;;4845:8;;;3013:5626;4783:8;;;4869:383;;;;;;;;;;;;;:::i;:::-;;;2479:25:1;;;2467:2;2452:18;4869:383:0;;;;;;;;6624:90;;;;;;;;;;-1:-1:-1;6694:12:0;;6624:90;;7959:225;;;;;;;;;;-1:-1:-1;7959:225:0;;;;;:::i;:::-;;:::i;7061:725::-;;;;;;;;;;-1:-1:-1;7061:725:0;;;;;:::i;:::-;;:::i;8337:299::-;;;;;;;;;;-1:-1:-1;8337:299:0;;;;;:::i;:::-;;:::i;:::-;;;-1:-1:-1;;;;;826:32:1;;;808:51;;796:2;781:18;8337:299:0;763:102:1;1999:87:0;;;;;;;;;;-1:-1:-1;2045:7:0;2072:6;-1:-1:-1;;;;;2072:6:0;1999:87;;4585:46;;;;;;;;;;;;;;;;6722:150;;;;;;;;;;;;;:::i;7794:157::-;;;;;;;;;;;;;:::i;6880:173::-;;;;;;;;;;;;;:::i;4326:54::-;;;;;;;;;;-1:-1:-1;4326:54:0;;;;;:::i;:::-;;;;;;;;;;;;;;4439:45;;;;;;;;;;;;;;;;5260:174;;;;;;;;;;-1:-1:-1;5260:174:0;;;;;:::i;:::-;;:::i;2454:201::-;;;;;;;;;;-1:-1:-1;2454:201:0;;;;;:::i;:::-;;:::i;:::-;;8192:137;;;;;;;;;;-1:-1:-1;8192:137:0;;;;;:::i;:::-;-1:-1:-1;;;;;8284:37:0;8257:7;8284:37;;;:19;:37;;;;;;;8192:137;6070:546;;;;;;;;;;-1:-1:-1;6070:546:0;;;;;:::i;:::-;;:::i;4869:383::-;4929:7;3201:1;3183:15;;:19;:39;;;;;3221:1;3206:12;;:16;3183:39;3179:535;;;3237:21;3261:43;3274:15;3291:12;;3261;:43::i;:::-;3237:67;;3317:18;3338:49;4272:8;3338:49;;:34;3356:15;;3338:13;:17;;:34;;;;:::i;:::-;:38;;:49::i;:::-;3317:70;;3419:15;;3406:10;:28;3402:91;;;-1:-1:-1;3464:15:0;;3402:91;3524:73;3537:14;;3584:12;;-1:-1:-1;;;3554:10:0;:26;;;;:::i;:::-;3553:43;;;;:::i;:::-;3524:12;:73::i;:::-;3507:14;:90;3628:15;;:31;;3648:10;3628:19;:31::i;:::-;3610:15;:49;-1:-1:-1;;3687:15:0;3672:12;:30;3179:535;3801:1:::1;3785:13;:11;:13::i;:::-;:17;3777:26;;;::::0;::::1;;4975:10:::2;4948:24;5018:13;:11;:13::i;:::-;4996:35:::0;-1:-1:-1;5082:27:0::2;-1:-1:-1::0;;;4996:35:0;5082:27:::2;:::i;:::-;-1:-1:-1::0;;;;;5042:26:0;::::2;;::::0;;;:8:::2;:26;::::0;;;;:68;;:26;;;:68:::2;::::0;;;::::2;:::i;:::-;::::0;;;-1:-1:-1;;5121:5:0::2;::::0;:41:::2;::::0;-1:-1:-1;;;5121:41:0;;-1:-1:-1;;;;;1062:32:1;;;5121:41:0::2;::::0;::::2;1044:51:1::0;1111:18;;;1104:34;;;5121:5:0;;::::2;::::0;:10:::2;::::0;1017:18:1;;5121:41:0::2;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;::::0;::::2;;;;;;;;;5185:16;-1:-1:-1::0;;;;;5178:37:0::2;;5203:11;5178:37;;;;2479:25:1::0;;2467:2;2452:18;;2434:76;5178:37:0::2;;;;;;;;5233:11:::0;-1:-1:-1;;4869:383:0;:::o;7959:225::-;-1:-1:-1;;;;;8133:26:0;;8027:7;8133:26;;;:8;:26;;;;;;;;;8092:19;:37;;;;;;8075:14;;-1:-1:-1;;;4220:7:0;8133:26;8075:54;;;:::i;:::-;8065:94;;;;:::i;:::-;8054:122;;;;:::i;:::-;8047:129;7959:225;-1:-1:-1;;7959:225:0:o;7061:725::-;7183:14;;7214:15;;7137:7;;7183:14;7214:19;7210:426;;7250:21;7274:43;7287:15;7304:12;;7274;:43::i;:::-;7250:67;;7334:18;7355:49;4272:8;7355:49;;:34;7373:15;;7355:13;:17;;:34;;;;:::i;:49::-;7334:70;;7438:15;;7425:10;:28;7421:97;;;-1:-1:-1;7487:15:0;;7421:97;7550:74;7563:15;7611:12;;-1:-1:-1;;;7581:10:0;:26;;;;:::i;7550:74::-;7532:92;;7210:426;;;-1:-1:-1;;;;;7735:26:0;;;;;;:8;:26;;;;;;;;;7694:19;:37;;;;;;;-1:-1:-1;;;4220:7:0;7735:26;7676:55;;:15;:55;:::i;:::-;7666:95;;;;:::i;:::-;7655:123;;;;:::i;:::-;7648:130;7061:725;-1:-1:-1;;;7061:725:0:o;8337:299::-;8415:7;2072:6;;-1:-1:-1;;;;;2072:6:0;729:10;2219:23;2211:68;;;;-1:-1:-1;;;2211:68:0;;;;;;;:::i;:::-;;;;;;;;;8442:11:::1;::::0;-1:-1:-1;;;8442:11:0;::::1;;;:20;8434:80;;;::::0;-1:-1:-1;;;8434:80:0;;1758:2:1;8434:80:0::1;::::0;::::1;1740:21:1::0;1797:2;1777:18;;;1770:30;1836:34;1816:18;;;1809:62;-1:-1:-1;;;1887:18:1;;;1880:45;1942:19;;8434:80:0::1;1730:237:1::0;8434:80:0::1;-1:-1:-1::0;8525:5:0::1;:37:::0;;-1:-1:-1;;;;;8525:37:0;::::1;-1:-1:-1::0;;;;;;8525:37:0;;::::1;;::::0;;:5:::1;8579:18:::0;;-1:-1:-1;;;;8579:18:0::1;-1:-1:-1::0;;;8579:18:0::1;::::0;;8547:13;2290:1:::1;8337:299:::0;;;:::o;6722:150::-;6810:10;6763:7;8284:37;;;:19;:37;;;;;;6763:7;;6810:10;6838:26;6831:33;;;6722:150;:::o;7794:157::-;7838:7;7885:10;7913:29;7885:10;7913:11;:29::i;6880:173::-;6933:7;6980:10;7008:37;6980:10;7008:19;:37::i;5260:174::-;5362:7;3201:1;3183:15;;:19;:39;;;;;3221:1;3206:12;;:16;3183:39;3179:535;;;3237:21;3261:43;3274:15;3291:12;;3261;:43::i;:::-;3237:67;;3317:18;3338:49;4272:8;3338:49;;:34;3356:15;;3338:13;:17;;:34;;;;:::i;:49::-;3317:70;;3419:15;;3406:10;:28;3402:91;;;-1:-1:-1;3464:15:0;;3402:91;3524:73;3537:14;;3584:12;;-1:-1:-1;;;3554:10:0;:26;;;;:::i;3524:73::-;3507:14;:90;3628:15;;:31;;3648:10;3628:19;:31::i;:::-;3610:15;:49;-1:-1:-1;;3687:15:0;3672:12;:30;3179:535;2045:7;2072:6;-1:-1:-1;;;;;2072:6:0;729:10;2219:23:::1;2211:68;;;;-1:-1:-1::0;;;2211:68:0::1;;;;;;;:::i;:::-;5389:37:::2;5400:16;5418:7;5389:10;:37::i;2454:201::-:0;2045:7;2072:6;-1:-1:-1;;;;;2072:6:0;729:10;2219:23;2211:68;;;;-1:-1:-1;;;2211:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2543:22:0;::::1;2535:73;;;::::0;-1:-1:-1;;;2535:73:0;;1351:2:1;2535:73:0::1;::::0;::::1;1333:21:1::0;1390:2;1370:18;;;1363:30;1429:34;1409:18;;;1402:62;-1:-1:-1;;;1480:18:1;;;1473:36;1526:19;;2535:73:0::1;1323:228:1::0;2535:73:0::1;2619:28;2638:8;2619:18;:28::i;:::-;2454:201:::0;:::o;6070:546::-;3201:1;3183:15;;:19;:39;;;;;3221:1;3206:12;;:16;3183:39;3179:535;;;3237:21;3261:43;3274:15;3291:12;;3261;:43::i;:::-;3237:67;;3317:18;3338:49;4272:8;3338:49;;:34;3356:15;;3338:13;:17;;:34;;;;:::i;:49::-;3317:70;;3419:15;;3406:10;:28;3402:91;;;-1:-1:-1;3464:15:0;;3402:91;3524:73;3537:14;;3584:12;;-1:-1:-1;;;3554:10:0;:26;;;;:::i;3524:73::-;3507:14;:90;3628:15;;:31;;3648:10;3628:19;:31::i;:::-;3610:15;:49;-1:-1:-1;;3687:15:0;3672:12;:30;3179:535;2045:7;2072:6;-1:-1:-1;;;;;2072:6:0;729:10;2219:23:::1;2211:68;;;;-1:-1:-1::0;;;2211:68:0::1;;;;;;;:::i;:::-;6195:1:::2;6185:7;:11;:63;;;;-1:-1:-1::0;;;;;;6211:37:0;::::2;;::::0;;;:19:::2;:37;::::0;;;;;6200:48;::::2;;6185:63;6177:72;;;::::0;::::2;;6277:12;::::0;:25:::2;::::0;6294:7;6277:16:::2;:25::i;:::-;6262:12;:40:::0;-1:-1:-1;;;;;6353:37:0;::::2;;::::0;;;:19:::2;:37;::::0;;;;;:50:::2;::::0;6395:7;6353:41:::2;:50::i;:::-;-1:-1:-1::0;;;;;6313:37:0;::::2;;::::0;;;:19:::2;:37;::::0;;;;:90;;;;6451:14:::2;::::0;:24:::2;::::0;6468:7;;6451:24:::2;:::i;:::-;-1:-1:-1::0;;;;;6487:26:0;::::2;;::::0;;;:8:::2;:26;::::0;;;;:45;;6416:60;;-1:-1:-1;6416:60:0;;6487:26;;;:45:::2;::::0;6416:60;;6487:45:::2;:::i;:::-;::::0;;;-1:-1:-1;;6550:58:0::2;::::0;;2689:25:1;;;6592:15:0::2;2745:2:1::0;2730:18;;2723:34;-1:-1:-1;;;;;6550:58:0;::::2;::::0;::::2;::::0;2662:18:1;6550:58:0::2;;;;;;;2290:1;6070:546:::0;;:::o;1237:119::-;1295:7;1325:1;1320;:6;;1313:14;;-1:-1:-1;;;1313:14:0;;;;;;;;;1343:5;1347:1;1343;:5;:::i;937:188::-;995:9;1019:6;1015:41;;-1:-1:-1;1045:1:0;1038:8;;1015:41;1068:5;1072:1;1068;:5;:::i;:::-;1064:9;-1:-1:-1;1098:1:0;1089:5;1093:1;1064:9;1089:5;:::i;:::-;:10;1082:18;;-1:-1:-1;;;1082:18:0;;;;;;;;1133:96;1191:7;1216:5;1220:1;1216;:5;:::i;1364:135::-;1422:9;1446:5;1450:1;1446;:5;:::i;:::-;1442:9;;1472:1;1467;:6;;1460:14;;-1:-1:-1;;;1460:14:0;;;;;;;;5442:620;5529:7;5575:1;5557:15;:19;:71;;;;-1:-1:-1;5616:12:0;;5580:33;:15;5616:12;5580:19;:33::i;:::-;:48;5557:71;5549:80;;;;;;5657:12;;:33;;5674:15;5657:16;:33::i;:::-;5642:12;:48;-1:-1:-1;;;;;5741:37:0;;;;;;:19;:37;;;;;;:58;;5783:15;5741:41;:58::i;:::-;-1:-1:-1;;;;;5701:37:0;;;;;;:19;:37;;;;;:98;;;;5848:14;;:32;;5865:15;;5848:32;:::i;:::-;-1:-1:-1;;;;;5892:26:0;;;;;;:8;:26;;;;;:46;;5812:69;;-1:-1:-1;5812:69:0;;5892:26;;;:46;;5812:69;;5892:46;:::i;:::-;;;;-1:-1:-1;;5956:63:0;;;2689:25:1;;;6003:15:0;2745:2:1;2730:18;;2723:34;-1:-1:-1;;;;;5956:63:0;;;;;2662:18:1;5956:63:0;;;;;;;-1:-1:-1;6039:15:0;;5442:620;-1:-1:-1;;5442:620:0:o;2815:191::-;2889:16;2908:6;;-1:-1:-1;;;;;2925:17:0;;;-1:-1:-1;;;;;;2925:17:0;;;;;;2958:40;;2908:6;;;;;;;2958:40;;2889:16;2958:40;2815:191;;:::o;14:173:1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:2;;177:1;174;167:12;192:196;251:6;304:2;292:9;283:7;279:23;275:32;272:2;;;325:6;317;310:22;272:2;353:29;372:9;353:29;:::i;393:264::-;461:6;469;522:2;510:9;501:7;497:23;493:32;490:2;;;543:6;535;528:22;490:2;571:29;590:9;571:29;:::i;:::-;561:39;647:2;632:18;;;;619:32;;-1:-1:-1;;;480:177:1:o;1972:356::-;2174:2;2156:21;;;2193:18;;;2186:30;2252:34;2247:2;2232:18;;2225:62;2319:2;2304:18;;2146:182::o;2768:267::-;2807:3;2835:11;;;2862:10;;-1:-1:-1;;;;;2881:27:1;;;2874:35;;2858:52;2855:2;;;2913:18;;:::i;:::-;-1:-1:-1;;;2960:19:1;;;2953:27;;2945:36;;2942:2;;;2984:18;;:::i;:::-;-1:-1:-1;;3020:9:1;;2815:220::o;3040:128::-;3080:3;3111:1;3107:6;3104:1;3101:13;3098:2;;;3117:18;;:::i;:::-;-1:-1:-1;3153:9:1;;3088:80::o;3173:217::-;3213:1;3239;3229:2;;-1:-1:-1;;;3264:31:1;;3318:4;3315:1;3308:15;3346:4;3271:1;3336:15;3229:2;-1:-1:-1;3375:9:1;;3219:171::o;3395:168::-;3435:7;3501:1;3497;3493:6;3489:14;3486:1;3483:21;3478:1;3471:9;3464:17;3460:45;3457:2;;;3508:18;;:::i;:::-;-1:-1:-1;3548:9:1;;3447:116::o;3568:270::-;3607:4;3636:12;;;3664:10;;-1:-1:-1;;;3683:19:1;;3676:27;;3660:44;3657:2;;;3707:18;;:::i;:::-;-1:-1:-1;;;;;3754:27:1;;3747:35;;3739:44;;3736:2;;;3786:18;;:::i;:::-;-1:-1:-1;;3823:9:1;;3616:222::o;3843:125::-;3883:4;3911:1;3908;3905:8;3902:2;;;3916:18;;:::i;:::-;-1:-1:-1;3953:9:1;;3892:76::o;3973:127::-;4034:10;4029:3;4025:20;4022:1;4015:31;4065:4;4062:1;4055:15;4089:4;4086:1;4079:15

Swarm Source

ipfs://7689869e7a246185d6b43bd11d1ca8e5ddaac2b2d03a440bc551c66a53e2aff6

Block Transaction Gas Used Reward
view all blocks collator

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

Validator Index Block Amount
View All Withdrawals

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

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