ETH Price: $3,257.59 (+3.28%)
Gas: 4 Gwei

Contract

0xA7b1748F35eCF77e92d4AE403781781eE0bDb22B
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Mint Colonist174336352023-06-08 5:52:47414 days ago1686203567IN
0xA7b1748F...eE0bDb22B
0.16 ETH0.001197735.19646982
Transfer156862372022-10-06 2:59:59659 days ago1665025199IN
0xA7b1748F...eE0bDb22B
0.00942948 ETH0.000191939.13956074
Mint Colonist152102092022-07-25 7:03:00732 days ago1658732580IN
0xA7b1748F...eE0bDb22B
0 ETH0.000252247.41263026
Mint Colonist146452742022-04-24 4:14:37824 days ago1650773677IN
0xA7b1748F...eE0bDb22B
0.24 ETH0.0006058117.80292422
Mint Colonist146362572022-04-22 18:22:57825 days ago1650651777IN
0xA7b1748F...eE0bDb22B
0 ETH0.0022249265.38334218
Mint Colonist145924532022-04-15 21:47:51832 days ago1650059271IN
0xA7b1748F...eE0bDb22B
0 ETH0.0020003858.78475914
Mint Colonist145924102022-04-15 21:35:06832 days ago1650058506IN
0xA7b1748F...eE0bDb22B
0.4 ETH0.0015241944.79099878
Mint Colonist145919592022-04-15 19:55:11832 days ago1650052511IN
0xA7b1748F...eE0bDb22B
0.08 ETH0.0020645660.67068761
Mint Colonist145763452022-04-13 9:29:39835 days ago1649842179IN
0xA7b1748F...eE0bDb22B
0 ETH0.0010810631.76897377
Mint Colonist145665282022-04-11 20:30:05836 days ago1649709005IN
0xA7b1748F...eE0bDb22B
0 ETH0.0023050167.73677735
Mint Colonist145639702022-04-11 10:50:45837 days ago1649674245IN
0xA7b1748F...eE0bDb22B
0 ETH0.0016984349.91127048
Mint Colonist145568052022-04-10 8:12:38838 days ago1649578358IN
0xA7b1748F...eE0bDb22B
0.32 ETH0.0010291630.24385374
Mint Colonist145488482022-04-09 2:33:29839 days ago1649471609IN
0xA7b1748F...eE0bDb22B
0.08 ETH0.0009081626.68806355
Mint Colonist145487602022-04-09 2:15:52839 days ago1649470552IN
0xA7b1748F...eE0bDb22B
0.08 ETH0.0011789134.64445794
Mint Colonist145487602022-04-09 2:15:52839 days ago1649470552IN
0xA7b1748F...eE0bDb22B
0.08 ETH0.0010660631.32804766
Mint Colonist145487212022-04-09 2:08:32839 days ago1649470112IN
0xA7b1748F...eE0bDb22B
0.08 ETH0.0012456436.60541159
Mint Colonist145484372022-04-09 1:00:09839 days ago1649466009IN
0xA7b1748F...eE0bDb22B
0.24 ETH0.0013310339.11483979
Mint Colonist145482452022-04-09 0:15:22839 days ago1649463322IN
0xA7b1748F...eE0bDb22B
0.08 ETH0.0019714457.93425036
Mint Colonist145480622022-04-08 23:32:13839 days ago1649460733IN
0xA7b1748F...eE0bDb22B
0.08 ETH0.0015980546.96158012
Mint Colonist145480462022-04-08 23:29:31839 days ago1649460571IN
0xA7b1748F...eE0bDb22B
0.08 ETH0.0019163356.31477092
Mint Colonist145480102022-04-08 23:19:14839 days ago1649459954IN
0xA7b1748F...eE0bDb22B
0.08 ETH0.001637148.10909916
Mint Colonist145480082022-04-08 23:19:01839 days ago1649459941IN
0xA7b1748F...eE0bDb22B
0.08 ETH0.0018077453.12374652
Mint Colonist145479792022-04-08 23:12:53839 days ago1649459573IN
0xA7b1748F...eE0bDb22B
0.08 ETH0.0026536977.98336268
Mint Colonist145479602022-04-08 23:07:26839 days ago1649459246IN
0xA7b1748F...eE0bDb22B
0.08 ETH0.0023891470.20908978
Mint Colonist145479512022-04-08 23:06:13839 days ago1649459173IN
0xA7b1748F...eE0bDb22B
0.08 ETH0.0033786599.28737568
View all transactions

Latest 4 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
145461472022-04-08 16:12:00839 days ago1649434320
0xA7b1748F...eE0bDb22B
543.6 ETH
145201182022-04-04 14:44:43844 days ago1649083483
0xA7b1748F...eE0bDb22B
210.16 ETH
144886552022-03-30 16:37:55848 days ago1648658275
0xA7b1748F...eE0bDb22B
11.84 ETH
144811092022-03-29 12:31:09850 days ago1648557069
0xA7b1748F...eE0bDb22B
0.16 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ShatteredWL

Compiler Version
v0.8.11+commit.d7f03943

Optimization Enabled:
No with 2000 runs

Other Settings:
default evmVersion, MIT license
File 1 of 12 : ShatteredWL.sol
// SPDX-License-Identifier: MIT LICENSE

pragma solidity ^0.8.0;

import "@openzeppelin/contracts/security/Pausable.sol";
import "@openzeppelin/contracts/utils/cryptography/MerkleProof.sol";
import "./interfaces/IShatteredWL.sol";
import "./interfaces/IPytheas.sol";
import "./interfaces/IOrbitalBlockade.sol";
import "./interfaces/IColonist.sol";
import "./interfaces/ITColonist.sol";
import "./interfaces/IEON.sol";
import "./interfaces/IRAW.sol";
import "./interfaces/IImperialGuild.sol";

contract ShatteredWL is IShatteredWL, Pausable {
    // address => can call
    mapping(address => bool) private admins;

    struct HonorsList {
        bool isHonorsMember;
        bool hasClaimed;
        uint8 honorsId;
    }

    address public auth;

    address payable ImperialGuildTreasury;

    bool public hasPublicSaleStarted;
    bool public isWLactive;
    bool public isHonorsActive;

    uint256 public constant paidTokens = 10000;
    uint256 public constant whitelistPrice = 0.08 ether;
    uint256 public constant publicPrice = 0.08 ether;

    mapping(address => uint8) private _WLmints;

    mapping(address => HonorsList) private _honorsAddresses;

    event newUser(address newUser);

    bytes32 internal merkleRoot =
        0xd60676eb70cb99e173a40e78e3c1d139722ab50092a4afb575ee44c5c3e78e7f;

    bytes32 internal entropySauce;

    // reference to the colonist NFT collection
    IColonist public colonistNFT;

    constructor() {
        _pause();
        auth = msg.sender;
        admins[msg.sender] = true;
    }

    /** CRITICAL TO SETUP */
    modifier requireContractsSet() {
        require(
            address(colonistNFT) != address(0),
            "Contracts not set"
        );
        _;
    }

    modifier noCheaters() {
        uint256 size = 0;
        address acc = msg.sender;
        assembly {
            size := extcodesize(acc)
        }

        require(
            admins[msg.sender] || (msg.sender == tx.origin && size == 0),
            "you're trying to cheat!"
        );
        _;

        entropySauce = keccak256(abi.encodePacked(acc, block.coinbase));
    }
    modifier onlyOwner() {
        require(msg.sender == auth);
        _;
    }

    function setContracts(address _colonistNFT) external onlyOwner {
        colonistNFT = IColonist(_colonistNFT);
    }

    /** EXTERNAL */

    function WlMintColonist(uint256 amount, bytes32[] calldata _merkleProof)
        external
        payable
        noCheaters
        whenNotPaused
    {
        bytes32 leaf = keccak256(abi.encodePacked(msg.sender));
        uint16 minted = colonistNFT.minted();
        require(isWLactive == true, "whitelist mints not yeat active");
        require(amount > 0 && amount <= 5, "5 max mints per tx");
        require(minted + amount <= paidTokens, "All sale tokens minted");
        require(amount * whitelistPrice == msg.value, "Invalid payment amount");
        require(
            MerkleProof.verify(_merkleProof, merkleRoot, leaf),
            "Not on the list"
        );
        require(_WLmints[msg.sender] + amount <= 5, "limit 5 per whitelist");
        _WLmints[msg.sender] += uint8(amount);

        uint256 seed;
        address origin = tx.origin;
        bytes32 blockies = blockhash(block.number - 1);
        bytes32 sauce = entropySauce;
        uint256 blockTime = block.timestamp;
        uint16[] memory tokenIds = new uint16[](amount);
        for (uint256 i = 0; i < amount; i++) {
            minted++;
            seed = random(origin, blockies, sauce, minted, blockTime);
            tokenIds[i] = minted;
            colonistNFT._mintColonist(msg.sender, seed);
        }
        emit newUser(msg.sender);
    }

    /** Mint colonist.
     */
    function mintColonist(uint256 amount)
        external
        payable
        noCheaters
        whenNotPaused
    {
        uint16 minted = colonistNFT.minted();
        require(amount > 0 && amount <= 5, "5 max mints per tx");
        require(minted + amount <= paidTokens, "All sale tokens minted");
        require(hasPublicSaleStarted == true, "Public sale not open");
        require(msg.value >= amount * publicPrice, "Invalid Payment amount");
        uint256 seed;
        address origin = tx.origin;
        bytes32 blockies = blockhash(block.number - 1);
        bytes32 sauce = entropySauce;
        uint256 blockTime = block.timestamp;
        uint16[] memory tokenIds = new uint16[](amount);
        for (uint256 i = 0; i < amount; i++) {
            minted++;
            seed = random(origin, blockies, sauce, minted, blockTime);
            tokenIds[i] = minted;
            colonistNFT._mintColonist(msg.sender, seed);
        }
        emit newUser(msg.sender);
    }

    /**Mint to honors */
    function mintToHonors(uint256 amount, address recipient)
        external
        onlyOwner
    {
        uint16 minted = colonistNFT.minted();
        require(minted + amount <= 1000, "Honor tokens have been sent");
        uint16[] memory tokenIds = new uint16[](amount);
        uint256 seed;
        address origin = tx.origin;
        bytes32 blockies = blockhash(block.number - 1);
        bytes32 sauce = entropySauce;
        uint256 blockTime = block.timestamp;
        for (uint256 i = 0; i < amount; i++) {
            minted++;
            seed = random(origin, blockies, sauce, minted, blockTime);
            tokenIds[i] = minted;
            colonistNFT._mintToHonors(address(recipient), seed);
        }
        emit newUser(recipient);
    }

    function revealHonors() external noCheaters {
        require(isHonorsActive == true, "Honor mints have not been activated");
        require(
            _honorsAddresses[msg.sender].isHonorsMember,
            "Not an honors student"
        );
        require(
            _honorsAddresses[msg.sender].hasClaimed == false,
            "Already claimed"
        );

        uint8 id = _honorsAddresses[msg.sender].honorsId;
        _honorsAddresses[msg.sender].hasClaimed = true;
        colonistNFT._mintHonors(msg.sender, id);

        emit newUser(msg.sender);
    }

    function addToHonorslist(address honorsAddress, uint8 honorsId)
        external
        onlyOwner
    {
        _honorsAddresses[honorsAddress] = HonorsList({
            isHonorsMember: true,
            hasClaimed: false,
            honorsId: honorsId
        });
    }

    function togglePublicSale(bool startPublicSale) external onlyOwner {
        hasPublicSaleStarted = startPublicSale;
    }

    function toggleHonorsActive(bool _honorsActive) external onlyOwner {
        isHonorsActive = _honorsActive;
    }

    function toggleWLactive(bool _isWLactive) external onlyOwner {
        isWLactive = _isWLactive;
    }

    /**
     * enables owner to pause / unpause contract
     */
    function setPaused(bool _paused) external requireContractsSet onlyOwner {
        if (_paused) _pause();
        else _unpause();
    }

    /**
     * enables an address to mint / burn
     * @param addr the address to enable
     */
    function addAdmin(address addr) external onlyOwner {
        admins[addr] = true;
    }

    /**
     * disables an address from minting / burning
     * @param addr the address to disbale
     */
    function removeAdmin(address addr) external onlyOwner {
        admins[addr] = false;
    }

    function random(
        address origin,
        bytes32 blockies,
        bytes32 sauce,
        uint16 seed,
        uint256 blockTime
    ) internal pure returns (uint256) {
        return
            uint256(
                keccak256(
                    abi.encodePacked(origin, blockies, blockTime, sauce, seed)
                )
            );
    }

    function setImperialGuildTreasury(address payable _ImperialGuildTreasury)
        external
        onlyOwner
    {
        ImperialGuildTreasury = _ImperialGuildTreasury;
    }

    /**
     * allows owner to withdraw funds from minting
     */
    function withdraw() external onlyOwner {
        payable(ImperialGuildTreasury).transfer(address(this).balance);
    }
}

File 2 of 12 : Pausable.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

import "../utils/Context.sol";

/**
 * @dev Contract module which allows children to implement an emergency stop
 * mechanism that can be triggered by an authorized account.
 *
 * This module is used through inheritance. It will make available the
 * modifiers `whenNotPaused` and `whenPaused`, which can be applied to
 * the functions of your contract. Note that they will not be pausable by
 * simply including this module, only once the modifiers are put in place.
 */
abstract contract Pausable is Context {
    /**
     * @dev Emitted when the pause is triggered by `account`.
     */
    event Paused(address account);

    /**
     * @dev Emitted when the pause is lifted by `account`.
     */
    event Unpaused(address account);

    bool private _paused;

    /**
     * @dev Initializes the contract in unpaused state.
     */
    constructor() {
        _paused = false;
    }

    /**
     * @dev Returns true if the contract is paused, and false otherwise.
     */
    function paused() public view virtual returns (bool) {
        return _paused;
    }

    /**
     * @dev Modifier to make a function callable only when the contract is not paused.
     *
     * Requirements:
     *
     * - The contract must not be paused.
     */
    modifier whenNotPaused() {
        require(!paused(), "Pausable: paused");
        _;
    }

    /**
     * @dev Modifier to make a function callable only when the contract is paused.
     *
     * Requirements:
     *
     * - The contract must be paused.
     */
    modifier whenPaused() {
        require(paused(), "Pausable: not paused");
        _;
    }

    /**
     * @dev Triggers stopped state.
     *
     * Requirements:
     *
     * - The contract must not be paused.
     */
    function _pause() internal virtual whenNotPaused {
        _paused = true;
        emit Paused(_msgSender());
    }

    /**
     * @dev Returns to normal state.
     *
     * Requirements:
     *
     * - The contract must be paused.
     */
    function _unpause() internal virtual whenPaused {
        _paused = false;
        emit Unpaused(_msgSender());
    }
}

File 3 of 12 : Context.sol
// SPDX-License-Identifier: MIT

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 4 of 12 : MerkleProof.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

/**
 * @dev These functions deal with verification of Merkle Trees proofs.
 *
 * The proofs can be generated using the JavaScript library
 * https://github.com/miguelmota/merkletreejs[merkletreejs].
 * Note: the hashing algorithm should be keccak256 and pair sorting should be enabled.
 *
 * See `test/utils/cryptography/MerkleProof.test.js` for some examples.
 */
library MerkleProof {
    /**
     * @dev Returns true if a `leaf` can be proved to be a part of a Merkle tree
     * defined by `root`. For this, a `proof` must be provided, containing
     * sibling hashes on the branch from the leaf to the root of the tree. Each
     * pair of leaves and each pair of pre-images are assumed to be sorted.
     */
    function verify(
        bytes32[] memory proof,
        bytes32 root,
        bytes32 leaf
    ) internal pure returns (bool) {
        bytes32 computedHash = leaf;

        for (uint256 i = 0; i < proof.length; i++) {
            bytes32 proofElement = proof[i];

            if (computedHash <= proofElement) {
                // Hash(current computed hash + current element of the proof)
                computedHash = keccak256(abi.encodePacked(computedHash, proofElement));
            } else {
                // Hash(current element of the proof + current computed hash)
                computedHash = keccak256(abi.encodePacked(proofElement, computedHash));
            }
        }

        // Check if the computed hash (root) is equal to the provided root
        return computedHash == root;
    }
}

File 5 of 12 : IColonist.sol
// SPDX-License-Identifier: MIT LICENSE
pragma solidity ^0.8.0;

interface IColonist {
    // struct to store each Colonist's traits
    struct Colonist {
        bool isColonist;
        uint8 background;
        uint8 body;
        uint8 shirt;
        uint8 jacket;
        uint8 jaw;
        uint8 eyes;
        uint8 hair;
        uint8 held;
        uint8 gen;
    }

    struct HColonist {
        uint8 Legendary;
    }

    function transferFrom(
        address from,
        address to,
        uint256 tokenId
    ) external;

    function safeTransferFrom(
        address from,
        address to,
        uint256 tokenId,
        bytes memory _data
    ) external;

    function safeTransferFrom(
        address from,
        address to,
        uint256 tokenId
    ) external;

    function isOwner(uint256 tokenId)
        external
        view
        returns (address);

    function minted() external returns (uint16);

    function totalCir() external returns (uint256);

    function _mintColonist(address recipient, uint256 seed) external;

    function _mintToHonors(address recipient, uint256 seed) external;

    function _mintHonors(address recipient, uint8 id) external;

    function burn(uint256 tokenId) external;

    function getMaxTokens() external view returns (uint256);

    function getPaidTokens() external view returns (uint256);

    function getTokenTraitsColonist(uint256 tokenId)
        external
        view
        returns (Colonist memory);

    function getTokenTraitsHonors(uint256 tokenId)
        external
        view
        returns (HColonist memory);

    function tokenNameByIndex(uint256 index)
        external
        view
        returns (string memory);

    function hasBeenNamed(uint256 tokenId) external view returns (bool);

    function nameColonist(uint256 tokenId, string memory newName) external;
}

File 6 of 12 : IEON.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

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

    function burn(address from, uint256 amount) external;

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);
}

File 7 of 12 : IImperialGuild.sol
// SPDX-License-Identifier: MIT LICENSE
pragma solidity ^0.8.0;

interface IImperialGuild {

    function getBalance(
        address account,
        uint256 id
    ) external returns(uint256);

    function mint(
        uint256 typeId,
        uint256 paymentId,
        uint16 qty,
        address recipient
    ) external;

    function burn(
        uint256 typeId,
        uint16 qty,
        address burnFrom
    ) external;

    function handlePayment(uint256 amount) external;

    function safeTransferFrom(
        address from,
        address to,
        uint256 id,
        uint256 amount,
        bytes memory data
    ) external;

    function safeBatchTransferFrom(
        address from,
        address to,
        uint256[] memory ids,
        uint256[] memory amounts,
        bytes memory data
    ) external;
}

File 8 of 12 : IOrbitalBlockade.sol
// SPDX-License-Identifier: MIT LICENSE

pragma solidity ^0.8.0;

interface IOrbitalBlockade {
    function addPiratesToCrew(address account, uint16[] calldata tokenIds)
        external;
    
    function claimPiratesFromCrew(address account, uint16[] calldata tokenIds, bool unstake)
        external;

    function payPirateTax(uint256 amount) external;

    function randomPirateOwner(uint256 seed) external view returns (address);
}

File 9 of 12 : IPytheas.sol
// SPDX-License-Identifier: MIT LICENSE

pragma solidity ^0.8.0;

interface IPytheas {
    function addColonistToPytheas(address account, uint16[] calldata tokenIds)
        external;

    function claimColonistFromPytheas(address account, uint16[] calldata tokenIds, bool unstake)
        external;

    function getColonistMined(address account, uint16 tokenId)
        external
        returns (uint256);

    function handleJoinPirates(address addr, uint16 tokenId) external;

    function payUp(
        uint16 tokenId,
        uint256 amtMined,
        address addr
    ) external;
}

File 10 of 12 : IRAW.sol
// SPDX-License-Identifier: MIT LICENSE
pragma solidity ^0.8.0;

interface IRAW {

    function getBalance(
        address account,
        uint256 id
    ) external returns(uint256);

    function mint(
        uint256 typeId,
        uint256 qty,
        address recipient
    ) external;

    function burn(
        uint256 typeId,
        uint256 qty,
        address burnFrom
    ) external;

    function updateMintBurns(
        uint256 typeId,
        uint256 mintQty,
        uint256 burnQty
    ) external;

    function safeTransferFrom(
        address from,
        address to,
        uint256 id,
        uint256 amount,
        bytes memory data
    ) external;

    function safeBatchTransferFrom(
        address from,
        address to,
        uint256[] memory ids,
        uint256[] memory amounts,
        bytes memory data
    ) external;

}

File 11 of 12 : IShatteredWL.sol
// SPDX-License-Identifier: MIT LICENSE
pragma solidity ^0.8.0;

interface IShatteredWL {}

File 12 of 12 : ITColonist.sol
// SPDX-License-Identifier: MIT LICENSE
pragma solidity ^0.8.0;

interface ITColonist {
    function tokenURI(uint256 tokenId) external view returns (string memory);
}

Settings
{
  "evmVersion": "london",
  "libraries": {},
  "metadata": {
    "bytecodeHash": "ipfs",
    "useLiteralContent": true
  },
  "optimizer": {
    "details": {
      "constantOptimizer": true,
      "cse": true,
      "deduplicate": true,
      "inliner": true,
      "jumpdestRemover": true,
      "orderLiterals": true,
      "peephole": true,
      "yul": true,
      "yulDetails": {
        "optimizerSteps": "dhfoDgvulfnTUtnIf",
        "stackAllocation": true
      }
    },
    "runs": 2000
  },
  "remappings": [],
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newUser","type":"address"}],"name":"newUser","type":"event"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes32[]","name":"_merkleProof","type":"bytes32[]"}],"name":"WlMintColonist","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"addAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"honorsAddress","type":"address"},{"internalType":"uint8","name":"honorsId","type":"uint8"}],"name":"addToHonorslist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"auth","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"colonistNFT","outputs":[{"internalType":"contract IColonist","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"hasPublicSaleStarted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isHonorsActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isWLactive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mintColonist","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address","name":"recipient","type":"address"}],"name":"mintToHonors","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paidTokens","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"publicPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"removeAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"revealHonors","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_colonistNFT","type":"address"}],"name":"setContracts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_ImperialGuildTreasury","type":"address"}],"name":"setImperialGuildTreasury","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_paused","type":"bool"}],"name":"setPaused","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_honorsActive","type":"bool"}],"name":"toggleHonorsActive","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"startPublicSale","type":"bool"}],"name":"togglePublicSale","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_isWLactive","type":"bool"}],"name":"toggleWLactive","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"whitelistPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040527fd60676eb70cb99e173a40e78e3c1d139722ab50092a4afb575ee44c5c3e78e7f6006553480156200003557600080fd5b506000805460ff191690556200004a62000081565b600280546001600160a01b031916339081179091556000908152600160208190526040909120805460ff1916909117905562000167565b60005460ff1615620000b05760405162461bcd60e51b8152600401620000a790620000ff565b60405180910390fd5b6000805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258620000e63390565b604051620000f5919062000157565b60405180910390a1565b602080825281016200012e81601081526f14185d5cd8589b194e881c185d5cd95960821b602082015260400190565b92915050565b60006001600160a01b0382166200012e565b620001518162000134565b82525050565b602081016200012e828462000146565b611eda80620001776000396000f3fe6080604052600436106101805760003560e01c806370480275116100d6578063c192ba541161007f578063de9375f211610059578063de9375f214610414578063fc1a1c3614610380578063fdd4b0f01461044157600080fd5b8063c192ba54146103be578063cd138d1a146103de578063d63f6f3f146103f457600080fd5b806393cb577a116100b057806393cb577a1461034d578063a945bf8014610380578063b7f71551146103a957600080fd5b806370480275146102fa5780638c3cefa31461031a57806392d9614e1461033a57600080fd5b80633b892765116101385780635a2e2f47116101125780635a2e2f47146102855780635c975abb146102a55780635cd86c1d146102c657600080fd5b80633b8927651461023d5780633ccfd60b1461025d5780634c2a9e6a1461027257600080fd5b80631785f53c116101695780631785f53c146101c757806322ba0432146101e75780632afb52991461021d57600080fd5b80631509f2941461018557806316c38b3c146101a7575b600080fd5b34801561019157600080fd5b506101a56101a03660046115e4565b610473565b005b3480156101b357600080fd5b506101a56101c2366004611620565b6104c4565b3480156101d357600080fd5b506101a56101e23660046115e4565b610525565b3480156101f357600080fd5b50600854610207906001600160a01b031681565b6040516102149190611677565b60405180910390f35b34801561022957600080fd5b506101a5610238366004611699565b61055d565b34801561024957600080fd5b506101a5610258366004611620565b610620565b34801561026957600080fd5b506101a5610683565b6101a56102803660046116e7565b6106d3565b34801561029157600080fd5b506101a56102a03660046115e4565b610a26565b3480156102b157600080fd5b5060005460ff165b6040516102149190611710565b3480156102d257600080fd5b506003546102b990760100000000000000000000000000000000000000000000900460ff1681565b34801561030657600080fd5b506101a56103153660046115e4565b610a77565b34801561032657600080fd5b506101a5610335366004611620565b610ab5565b6101a5610348366004611770565b610b16565b34801561035957600080fd5b506003546102b9907501000000000000000000000000000000000000000000900460ff1681565b34801561038c57600080fd5b5061039c67011c37937e08000081565b60405161021491906117d2565b3480156103b557600080fd5b506101a5610f72565b3480156103ca57600080fd5b506101a56103d9366004611620565b61116d565b3480156103ea57600080fd5b5061039c61271081565b34801561040057600080fd5b506101a561040f3660046117e0565b6111cf565b34801561042057600080fd5b50600254610434906001600160a01b031681565b604051610214919061181c565b34801561044d57600080fd5b506003546102b99074010000000000000000000000000000000000000000900460ff1681565b6002546001600160a01b0316331461048a57600080fd5b600380547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b6008546001600160a01b03166104f55760405162461bcd60e51b81526004016104ec9061185e565b60405180910390fd5b6002546001600160a01b0316331461050c57600080fd5b801561051d5761051a611404565b50565b61051a611473565b6002546001600160a01b0316331461053c57600080fd5b6001600160a01b03166000908152600160205260409020805460ff19169055565b6002546001600160a01b0316331461057457600080fd5b60408051606081018252600181526000602080830182815260ff9586168486019081526001600160a01b03979097168352600590915292902090518154925194517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000090931690151561ff0019161761010094151594909402939093177fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff16620100009190921602179055565b6002546001600160a01b0316331461063757600080fd5b60038054911515760100000000000000000000000000000000000000000000027fffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff909216919091179055565b6002546001600160a01b0316331461069a57600080fd5b6003546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561051a573d6000803e3d6000fd5b33600081815260016020526040902054813b919060ff16806106fd575033321480156106fd575081155b6107195760405162461bcd60e51b81526004016104ec906118a0565b60005460ff161561073c5760405162461bcd60e51b81526004016104ec906118e2565b60085460408051630278162160e51b815290516000926001600160a01b031691634f02c420916004808301926020929190829003018187875af1158015610787573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ab9190611907565b90506000841180156107be575060058411155b6107da5760405162461bcd60e51b81526004016104ec9061195a565b6127106107eb8561ffff8416611980565b11156108095760405162461bcd60e51b81526004016104ec906119ca565b60035474010000000000000000000000000000000000000000900460ff1615156001146108485760405162461bcd60e51b81526004016104ec90611a0c565b61085a67011c37937e08000085611a1c565b3410156108795760405162461bcd60e51b81526004016104ec90611a6d565b60003281610888600143611a7d565b600754904091504260008967ffffffffffffffff8111156108ab576108ab611a94565b6040519080825280602002602001820160405280156108d4578160200160208202803683370190505b50905060005b8a8110156109b457876108ec81611aaa565b9850506108fc8686868b876114c6565b96508782828151811061091157610911611acc565b61ffff909216602092830291909101909101526008546040517fb656f09d0000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063b656f09d9061096f9033908b90600401611ae2565b600060405180830381600087803b15801561098957600080fd5b505af115801561099d573d6000803e3d6000fd5b5050505080806109ac90611afd565b9150506108da565b507f0cb5f653b48cf88bb5778a790a892d142dcf0a6b835d866760a0316a3895c1e9336040516109e4919061181c565b60405180910390a1505050505050508041604051602001610a06929190611b39565b60408051601f198184030181529190528051602090910120600755505050565b6002546001600160a01b03163314610a3d57600080fd5b600880547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b6002546001600160a01b03163314610a8e57600080fd5b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b6002546001600160a01b03163314610acc57600080fd5b6003805491151574010000000000000000000000000000000000000000027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909216919091179055565b33600081815260016020526040902054813b919060ff1680610b4057503332148015610b40575081155b610b5c5760405162461bcd60e51b81526004016104ec906118a0565b60005460ff1615610b7f5760405162461bcd60e51b81526004016104ec906118e2565b600033604051602001610b929190611b59565b60408051601f198184030181528282528051602091820120600854630278162160e51b855292519094506000936001600160a01b0390931692634f02c420926004808301939192829003018187875af1158015610bf3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c179190611907565b6003549091507501000000000000000000000000000000000000000000900460ff161515600114610c5a5760405162461bcd60e51b81526004016104ec90611b9d565b600087118015610c6b575060058711155b610c875760405162461bcd60e51b81526004016104ec9061195a565b612710610c988861ffff8416611980565b1115610cb65760405162461bcd60e51b81526004016104ec906119ca565b34610cc967011c37937e08000089611a1c565b14610ce65760405162461bcd60e51b81526004016104ec90611bdf565b610d27868680806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250506006549150859050611503565b610d435760405162461bcd60e51b81526004016104ec90611c21565b33600090815260046020526040902054600590610d6490899060ff16611980565b1115610d825760405162461bcd60e51b81526004016104ec90611c63565b3360009081526004602052604081208054899290610da490849060ff16611c73565b92506101000a81548160ff021916908360ff1602179055506000803290506000600143610dd19190611a7d565b600754904091504260008c67ffffffffffffffff811115610df457610df4611a94565b604051908082528060200260200182016040528015610e1d578160200160208202803683370190505b50905060005b8d811015610efd5787610e3581611aaa565b985050610e458686868b876114c6565b965087828281518110610e5a57610e5a611acc565b61ffff909216602092830291909101909101526008546040517fb656f09d0000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063b656f09d90610eb89033908b90600401611ae2565b600060405180830381600087803b158015610ed257600080fd5b505af1158015610ee6573d6000803e3d6000fd5b505050508080610ef590611afd565b915050610e23565b507f0cb5f653b48cf88bb5778a790a892d142dcf0a6b835d866760a0316a3895c1e933604051610f2d919061181c565b60405180910390a150505050505050508041604051602001610f50929190611b39565b60408051601f1981840301815291905280516020909101206007555050505050565b33600081815260016020526040902054813b919060ff1680610f9c57503332148015610f9c575081155b610fb85760405162461bcd60e51b81526004016104ec906118a0565b600354760100000000000000000000000000000000000000000000900460ff161515600114610ff95760405162461bcd60e51b81526004016104ec90611c94565b3360009081526005602052604090205460ff166110285760405162461bcd60e51b81526004016104ec90611d27565b33600090815260056020526040902054610100900460ff161561105d5760405162461bcd60e51b81526004016104ec90611d69565b3360008181526005602052604090819020805461010061ff001982161790915560085491517fb6a719530000000000000000000000000000000000000000000000000000000081526201000090910460ff16926001600160a01b039092169163b6a71953916110d191908590600401611d82565b600060405180830381600087803b1580156110eb57600080fd5b505af11580156110ff573d6000803e3d6000fd5b505050507f0cb5f653b48cf88bb5778a790a892d142dcf0a6b835d866760a0316a3895c1e933604051611132919061181c565b60405180910390a150804160405160200161114e929190611b39565b60408051601f1981840301815291905280516020909101206007555050565b6002546001600160a01b0316331461118457600080fd5b600380549115157501000000000000000000000000000000000000000000027fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff909216919091179055565b6002546001600160a01b031633146111e657600080fd5b60085460408051630278162160e51b815290516000926001600160a01b031691634f02c420916004808301926020929190829003018187875af1158015611231573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112559190611907565b90506103e86112688461ffff8416611980565b11156112865760405162461bcd60e51b81526004016104ec90611dcf565b60008367ffffffffffffffff8111156112a1576112a1611a94565b6040519080825280602002602001820160405280156112ca578160200160208202803683370190505b509050600032816112dc600143611a7d565b600754904091504260005b898110156113c157876112f981611aaa565b9850506113098585858b866114c6565b95508787828151811061131e5761131e611acc565b61ffff909216602092830291909101909101526008546040517f693fe4db0000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063693fe4db9061137c908c908a90600401611ae2565b600060405180830381600087803b15801561139657600080fd5b505af11580156113aa573d6000803e3d6000fd5b5050505080806113b990611afd565b9150506112e7565b507f0cb5f653b48cf88bb5778a790a892d142dcf0a6b835d866760a0316a3895c1e9886040516113f1919061181c565b60405180910390a1505050505050505050565b60005460ff16156114275760405162461bcd60e51b81526004016104ec906118e2565b6000805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861145c3390565b604051611469919061181c565b60405180910390a1565b60005460ff166114955760405162461bcd60e51b81526004016104ec90611e11565b6000805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa3361145c565b600085858386866040516020016114e1959493929190611e3a565b60408051601f1981840301815291905280516020909101209695505050505050565b600081815b85518110156115a557600086828151811061152557611525611acc565b60200260200101519050808311611566578281604051602001611549929190611e84565b604051602081830303815290604052805190602001209250611592565b8083604051602001611579929190611e84565b6040516020818303038152906040528051906020012092505b508061159d81611afd565b915050611508565b50831490505b9392505050565b60006001600160a01b0382165b92915050565b6115ce816115b2565b811461051a57600080fd5b80356115bf816115c5565b6000602082840312156115f9576115f9600080fd5b600061160584846115d9565b949350505050565b8015156115ce565b80356115bf8161160d565b60006020828403121561163557611635600080fd5b60006116058484611615565b60006001600160a01b0382166115bf565b60006115bf82611641565b60006115bf82611652565b6116718161165d565b82525050565b602081016115bf8284611668565b60ff81166115ce565b80356115bf81611685565b600080604083850312156116af576116af600080fd5b60006116bb85856115d9565b92505060206116cc8582860161168e565b9150509250929050565b806115ce565b80356115bf816116d6565b6000602082840312156116fc576116fc600080fd5b600061160584846116dc565b801515611671565b602081016115bf8284611708565b60008083601f84011261173357611733600080fd5b50813567ffffffffffffffff81111561174e5761174e600080fd5b60208301915083602082028301111561176957611769600080fd5b9250929050565b60008060006040848603121561178857611788600080fd5b600061179486866116dc565b935050602084013567ffffffffffffffff8111156117b4576117b4600080fd5b6117c08682870161171e565b92509250509250925092565b80611671565b602081016115bf82846117cc565b600080604083850312156117f6576117f6600080fd5b600061180285856116dc565b92505060206116cc858286016115d9565b611671816115b2565b602081016115bf8284611813565b60118152602081017f436f6e747261637473206e6f7420736574000000000000000000000000000000815290505b60200190565b602080825281016115bf8161182a565b60178152602081017f796f7527726520747279696e6720746f2063686561742100000000000000000081529050611858565b602080825281016115bf8161186e565b60108152602081017f5061757361626c653a207061757365640000000000000000000000000000000081529050611858565b602080825281016115bf816118b0565b61ffff81166115ce565b80516115bf816118f2565b60006020828403121561191c5761191c600080fd5b600061160584846118fc565b60128152602081017f35206d6178206d696e747320706572207478000000000000000000000000000081529050611858565b602080825281016115bf81611928565b634e487b7160e01b600052601160045260246000fd5b600082198211156119935761199361196a565b500190565b60168152602081017f416c6c2073616c6520746f6b656e73206d696e7465640000000000000000000081529050611858565b602080825281016115bf81611998565b60148152602081017f5075626c69632073616c65206e6f74206f70656e00000000000000000000000081529050611858565b602080825281016115bf816119da565b6000816000190483118215151615611a3657611a3661196a565b500290565b60168152602081017f496e76616c6964205061796d656e7420616d6f756e740000000000000000000081529050611858565b602080825281016115bf81611a3b565b600082821015611a8f57611a8f61196a565b500390565b634e487b7160e01b600052604160045260246000fd5b61ffff81169050600061ffff821415611ac557611ac561196a565b5060010190565b634e487b7160e01b600052603260045260246000fd5b60408101611af08285611813565b6115ab60208301846117cc565b6000600019821415611ac557611ac561196a565b60006115bf8260601b90565b60006115bf82611b11565b611671611b34826115b2565b611b1d565b611b438184611b28565b601401611b508183611b28565b60140192915050565b611b638183611b28565b601401919050565b601f8152602081017f77686974656c697374206d696e7473206e6f742079656174206163746976650081529050611858565b602080825281016115bf81611b6b565b60168152602081017f496e76616c6964207061796d656e7420616d6f756e740000000000000000000081529050611858565b602080825281016115bf81611bad565b600f8152602081017f4e6f74206f6e20746865206c697374000000000000000000000000000000000081529050611858565b602080825281016115bf81611bef565b60158152602081017f6c696d69742035207065722077686974656c697374000000000000000000000081529050611858565b602080825281016115bf81611c31565b60ff8116905060ff8216915060008260ff038211156119935761199361196a565b602080825281016115bf81602381527f486f6e6f72206d696e74732068617665206e6f74206265656e2061637469766160208201527f7465640000000000000000000000000000000000000000000000000000000000604082015260600190565b60158152602081017f4e6f7420616e20686f6e6f72732073747564656e74000000000000000000000081529050611858565b602080825281016115bf81611cf5565b600f8152602081017f416c726561647920636c61696d6564000000000000000000000000000000000081529050611858565b602080825281016115bf81611d37565b60ff8116611671565b60408101611d908285611813565b6115ab6020830184611d79565b601b8152602081017f486f6e6f7220746f6b656e732068617665206265656e2073656e74000000000081529050611858565b602080825281016115bf81611d9d565b60148152602081017f5061757361626c653a206e6f742070617573656400000000000000000000000081529050611858565b602080825281016115bf81611ddf565b60006115bf8260f01b90565b61167161ffff8216611e21565b611e448187611b28565b601401611e5181866117cc565b602001611e5e81856117cc565b602001611e6b81846117cc565b602001611e788183611e2d565b60020195945050505050565b611e8e81846117cc565b602001611e9b81836117cc565b6020019291505056fea2646970667358221220d0805be6197684e7da8e44896c605f20550f08ddecbbc060a076209105f0875b64736f6c634300080b0033

Deployed Bytecode

0x6080604052600436106101805760003560e01c806370480275116100d6578063c192ba541161007f578063de9375f211610059578063de9375f214610414578063fc1a1c3614610380578063fdd4b0f01461044157600080fd5b8063c192ba54146103be578063cd138d1a146103de578063d63f6f3f146103f457600080fd5b806393cb577a116100b057806393cb577a1461034d578063a945bf8014610380578063b7f71551146103a957600080fd5b806370480275146102fa5780638c3cefa31461031a57806392d9614e1461033a57600080fd5b80633b892765116101385780635a2e2f47116101125780635a2e2f47146102855780635c975abb146102a55780635cd86c1d146102c657600080fd5b80633b8927651461023d5780633ccfd60b1461025d5780634c2a9e6a1461027257600080fd5b80631785f53c116101695780631785f53c146101c757806322ba0432146101e75780632afb52991461021d57600080fd5b80631509f2941461018557806316c38b3c146101a7575b600080fd5b34801561019157600080fd5b506101a56101a03660046115e4565b610473565b005b3480156101b357600080fd5b506101a56101c2366004611620565b6104c4565b3480156101d357600080fd5b506101a56101e23660046115e4565b610525565b3480156101f357600080fd5b50600854610207906001600160a01b031681565b6040516102149190611677565b60405180910390f35b34801561022957600080fd5b506101a5610238366004611699565b61055d565b34801561024957600080fd5b506101a5610258366004611620565b610620565b34801561026957600080fd5b506101a5610683565b6101a56102803660046116e7565b6106d3565b34801561029157600080fd5b506101a56102a03660046115e4565b610a26565b3480156102b157600080fd5b5060005460ff165b6040516102149190611710565b3480156102d257600080fd5b506003546102b990760100000000000000000000000000000000000000000000900460ff1681565b34801561030657600080fd5b506101a56103153660046115e4565b610a77565b34801561032657600080fd5b506101a5610335366004611620565b610ab5565b6101a5610348366004611770565b610b16565b34801561035957600080fd5b506003546102b9907501000000000000000000000000000000000000000000900460ff1681565b34801561038c57600080fd5b5061039c67011c37937e08000081565b60405161021491906117d2565b3480156103b557600080fd5b506101a5610f72565b3480156103ca57600080fd5b506101a56103d9366004611620565b61116d565b3480156103ea57600080fd5b5061039c61271081565b34801561040057600080fd5b506101a561040f3660046117e0565b6111cf565b34801561042057600080fd5b50600254610434906001600160a01b031681565b604051610214919061181c565b34801561044d57600080fd5b506003546102b99074010000000000000000000000000000000000000000900460ff1681565b6002546001600160a01b0316331461048a57600080fd5b600380547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b6008546001600160a01b03166104f55760405162461bcd60e51b81526004016104ec9061185e565b60405180910390fd5b6002546001600160a01b0316331461050c57600080fd5b801561051d5761051a611404565b50565b61051a611473565b6002546001600160a01b0316331461053c57600080fd5b6001600160a01b03166000908152600160205260409020805460ff19169055565b6002546001600160a01b0316331461057457600080fd5b60408051606081018252600181526000602080830182815260ff9586168486019081526001600160a01b03979097168352600590915292902090518154925194517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000090931690151561ff0019161761010094151594909402939093177fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff16620100009190921602179055565b6002546001600160a01b0316331461063757600080fd5b60038054911515760100000000000000000000000000000000000000000000027fffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff909216919091179055565b6002546001600160a01b0316331461069a57600080fd5b6003546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561051a573d6000803e3d6000fd5b33600081815260016020526040902054813b919060ff16806106fd575033321480156106fd575081155b6107195760405162461bcd60e51b81526004016104ec906118a0565b60005460ff161561073c5760405162461bcd60e51b81526004016104ec906118e2565b60085460408051630278162160e51b815290516000926001600160a01b031691634f02c420916004808301926020929190829003018187875af1158015610787573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ab9190611907565b90506000841180156107be575060058411155b6107da5760405162461bcd60e51b81526004016104ec9061195a565b6127106107eb8561ffff8416611980565b11156108095760405162461bcd60e51b81526004016104ec906119ca565b60035474010000000000000000000000000000000000000000900460ff1615156001146108485760405162461bcd60e51b81526004016104ec90611a0c565b61085a67011c37937e08000085611a1c565b3410156108795760405162461bcd60e51b81526004016104ec90611a6d565b60003281610888600143611a7d565b600754904091504260008967ffffffffffffffff8111156108ab576108ab611a94565b6040519080825280602002602001820160405280156108d4578160200160208202803683370190505b50905060005b8a8110156109b457876108ec81611aaa565b9850506108fc8686868b876114c6565b96508782828151811061091157610911611acc565b61ffff909216602092830291909101909101526008546040517fb656f09d0000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063b656f09d9061096f9033908b90600401611ae2565b600060405180830381600087803b15801561098957600080fd5b505af115801561099d573d6000803e3d6000fd5b5050505080806109ac90611afd565b9150506108da565b507f0cb5f653b48cf88bb5778a790a892d142dcf0a6b835d866760a0316a3895c1e9336040516109e4919061181c565b60405180910390a1505050505050508041604051602001610a06929190611b39565b60408051601f198184030181529190528051602090910120600755505050565b6002546001600160a01b03163314610a3d57600080fd5b600880547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b6002546001600160a01b03163314610a8e57600080fd5b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b6002546001600160a01b03163314610acc57600080fd5b6003805491151574010000000000000000000000000000000000000000027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909216919091179055565b33600081815260016020526040902054813b919060ff1680610b4057503332148015610b40575081155b610b5c5760405162461bcd60e51b81526004016104ec906118a0565b60005460ff1615610b7f5760405162461bcd60e51b81526004016104ec906118e2565b600033604051602001610b929190611b59565b60408051601f198184030181528282528051602091820120600854630278162160e51b855292519094506000936001600160a01b0390931692634f02c420926004808301939192829003018187875af1158015610bf3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c179190611907565b6003549091507501000000000000000000000000000000000000000000900460ff161515600114610c5a5760405162461bcd60e51b81526004016104ec90611b9d565b600087118015610c6b575060058711155b610c875760405162461bcd60e51b81526004016104ec9061195a565b612710610c988861ffff8416611980565b1115610cb65760405162461bcd60e51b81526004016104ec906119ca565b34610cc967011c37937e08000089611a1c565b14610ce65760405162461bcd60e51b81526004016104ec90611bdf565b610d27868680806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250506006549150859050611503565b610d435760405162461bcd60e51b81526004016104ec90611c21565b33600090815260046020526040902054600590610d6490899060ff16611980565b1115610d825760405162461bcd60e51b81526004016104ec90611c63565b3360009081526004602052604081208054899290610da490849060ff16611c73565b92506101000a81548160ff021916908360ff1602179055506000803290506000600143610dd19190611a7d565b600754904091504260008c67ffffffffffffffff811115610df457610df4611a94565b604051908082528060200260200182016040528015610e1d578160200160208202803683370190505b50905060005b8d811015610efd5787610e3581611aaa565b985050610e458686868b876114c6565b965087828281518110610e5a57610e5a611acc565b61ffff909216602092830291909101909101526008546040517fb656f09d0000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063b656f09d90610eb89033908b90600401611ae2565b600060405180830381600087803b158015610ed257600080fd5b505af1158015610ee6573d6000803e3d6000fd5b505050508080610ef590611afd565b915050610e23565b507f0cb5f653b48cf88bb5778a790a892d142dcf0a6b835d866760a0316a3895c1e933604051610f2d919061181c565b60405180910390a150505050505050508041604051602001610f50929190611b39565b60408051601f1981840301815291905280516020909101206007555050505050565b33600081815260016020526040902054813b919060ff1680610f9c57503332148015610f9c575081155b610fb85760405162461bcd60e51b81526004016104ec906118a0565b600354760100000000000000000000000000000000000000000000900460ff161515600114610ff95760405162461bcd60e51b81526004016104ec90611c94565b3360009081526005602052604090205460ff166110285760405162461bcd60e51b81526004016104ec90611d27565b33600090815260056020526040902054610100900460ff161561105d5760405162461bcd60e51b81526004016104ec90611d69565b3360008181526005602052604090819020805461010061ff001982161790915560085491517fb6a719530000000000000000000000000000000000000000000000000000000081526201000090910460ff16926001600160a01b039092169163b6a71953916110d191908590600401611d82565b600060405180830381600087803b1580156110eb57600080fd5b505af11580156110ff573d6000803e3d6000fd5b505050507f0cb5f653b48cf88bb5778a790a892d142dcf0a6b835d866760a0316a3895c1e933604051611132919061181c565b60405180910390a150804160405160200161114e929190611b39565b60408051601f1981840301815291905280516020909101206007555050565b6002546001600160a01b0316331461118457600080fd5b600380549115157501000000000000000000000000000000000000000000027fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff909216919091179055565b6002546001600160a01b031633146111e657600080fd5b60085460408051630278162160e51b815290516000926001600160a01b031691634f02c420916004808301926020929190829003018187875af1158015611231573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112559190611907565b90506103e86112688461ffff8416611980565b11156112865760405162461bcd60e51b81526004016104ec90611dcf565b60008367ffffffffffffffff8111156112a1576112a1611a94565b6040519080825280602002602001820160405280156112ca578160200160208202803683370190505b509050600032816112dc600143611a7d565b600754904091504260005b898110156113c157876112f981611aaa565b9850506113098585858b866114c6565b95508787828151811061131e5761131e611acc565b61ffff909216602092830291909101909101526008546040517f693fe4db0000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063693fe4db9061137c908c908a90600401611ae2565b600060405180830381600087803b15801561139657600080fd5b505af11580156113aa573d6000803e3d6000fd5b5050505080806113b990611afd565b9150506112e7565b507f0cb5f653b48cf88bb5778a790a892d142dcf0a6b835d866760a0316a3895c1e9886040516113f1919061181c565b60405180910390a1505050505050505050565b60005460ff16156114275760405162461bcd60e51b81526004016104ec906118e2565b6000805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861145c3390565b604051611469919061181c565b60405180910390a1565b60005460ff166114955760405162461bcd60e51b81526004016104ec90611e11565b6000805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa3361145c565b600085858386866040516020016114e1959493929190611e3a565b60408051601f1981840301815291905280516020909101209695505050505050565b600081815b85518110156115a557600086828151811061152557611525611acc565b60200260200101519050808311611566578281604051602001611549929190611e84565b604051602081830303815290604052805190602001209250611592565b8083604051602001611579929190611e84565b6040516020818303038152906040528051906020012092505b508061159d81611afd565b915050611508565b50831490505b9392505050565b60006001600160a01b0382165b92915050565b6115ce816115b2565b811461051a57600080fd5b80356115bf816115c5565b6000602082840312156115f9576115f9600080fd5b600061160584846115d9565b949350505050565b8015156115ce565b80356115bf8161160d565b60006020828403121561163557611635600080fd5b60006116058484611615565b60006001600160a01b0382166115bf565b60006115bf82611641565b60006115bf82611652565b6116718161165d565b82525050565b602081016115bf8284611668565b60ff81166115ce565b80356115bf81611685565b600080604083850312156116af576116af600080fd5b60006116bb85856115d9565b92505060206116cc8582860161168e565b9150509250929050565b806115ce565b80356115bf816116d6565b6000602082840312156116fc576116fc600080fd5b600061160584846116dc565b801515611671565b602081016115bf8284611708565b60008083601f84011261173357611733600080fd5b50813567ffffffffffffffff81111561174e5761174e600080fd5b60208301915083602082028301111561176957611769600080fd5b9250929050565b60008060006040848603121561178857611788600080fd5b600061179486866116dc565b935050602084013567ffffffffffffffff8111156117b4576117b4600080fd5b6117c08682870161171e565b92509250509250925092565b80611671565b602081016115bf82846117cc565b600080604083850312156117f6576117f6600080fd5b600061180285856116dc565b92505060206116cc858286016115d9565b611671816115b2565b602081016115bf8284611813565b60118152602081017f436f6e747261637473206e6f7420736574000000000000000000000000000000815290505b60200190565b602080825281016115bf8161182a565b60178152602081017f796f7527726520747279696e6720746f2063686561742100000000000000000081529050611858565b602080825281016115bf8161186e565b60108152602081017f5061757361626c653a207061757365640000000000000000000000000000000081529050611858565b602080825281016115bf816118b0565b61ffff81166115ce565b80516115bf816118f2565b60006020828403121561191c5761191c600080fd5b600061160584846118fc565b60128152602081017f35206d6178206d696e747320706572207478000000000000000000000000000081529050611858565b602080825281016115bf81611928565b634e487b7160e01b600052601160045260246000fd5b600082198211156119935761199361196a565b500190565b60168152602081017f416c6c2073616c6520746f6b656e73206d696e7465640000000000000000000081529050611858565b602080825281016115bf81611998565b60148152602081017f5075626c69632073616c65206e6f74206f70656e00000000000000000000000081529050611858565b602080825281016115bf816119da565b6000816000190483118215151615611a3657611a3661196a565b500290565b60168152602081017f496e76616c6964205061796d656e7420616d6f756e740000000000000000000081529050611858565b602080825281016115bf81611a3b565b600082821015611a8f57611a8f61196a565b500390565b634e487b7160e01b600052604160045260246000fd5b61ffff81169050600061ffff821415611ac557611ac561196a565b5060010190565b634e487b7160e01b600052603260045260246000fd5b60408101611af08285611813565b6115ab60208301846117cc565b6000600019821415611ac557611ac561196a565b60006115bf8260601b90565b60006115bf82611b11565b611671611b34826115b2565b611b1d565b611b438184611b28565b601401611b508183611b28565b60140192915050565b611b638183611b28565b601401919050565b601f8152602081017f77686974656c697374206d696e7473206e6f742079656174206163746976650081529050611858565b602080825281016115bf81611b6b565b60168152602081017f496e76616c6964207061796d656e7420616d6f756e740000000000000000000081529050611858565b602080825281016115bf81611bad565b600f8152602081017f4e6f74206f6e20746865206c697374000000000000000000000000000000000081529050611858565b602080825281016115bf81611bef565b60158152602081017f6c696d69742035207065722077686974656c697374000000000000000000000081529050611858565b602080825281016115bf81611c31565b60ff8116905060ff8216915060008260ff038211156119935761199361196a565b602080825281016115bf81602381527f486f6e6f72206d696e74732068617665206e6f74206265656e2061637469766160208201527f7465640000000000000000000000000000000000000000000000000000000000604082015260600190565b60158152602081017f4e6f7420616e20686f6e6f72732073747564656e74000000000000000000000081529050611858565b602080825281016115bf81611cf5565b600f8152602081017f416c726561647920636c61696d6564000000000000000000000000000000000081529050611858565b602080825281016115bf81611d37565b60ff8116611671565b60408101611d908285611813565b6115ab6020830184611d79565b601b8152602081017f486f6e6f7220746f6b656e732068617665206265656e2073656e74000000000081529050611858565b602080825281016115bf81611d9d565b60148152602081017f5061757361626c653a206e6f742070617573656400000000000000000000000081529050611858565b602080825281016115bf81611ddf565b60006115bf8260f01b90565b61167161ffff8216611e21565b611e448187611b28565b601401611e5181866117cc565b602001611e5e81856117cc565b602001611e6b81846117cc565b602001611e788183611e2d565b60020195945050505050565b611e8e81846117cc565b602001611e9b81836117cc565b6020019291505056fea2646970667358221220d0805be6197684e7da8e44896c605f20550f08ddecbbc060a076209105f0875b64736f6c634300080b0033

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.