Contract 0x14AC8851f509b75bf596D7ea5418D7DAAF637d99 1

 
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x02e90a8f19c9b65745dc394fa2fb87e6d32a3cbf76bddb777fdd735a7f42492cBuild116854332021-10-11 17:06:0899 days 12 hrs ago0x038985259b4fb017e2f2d68eea06aed885ed104e IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0xd0519d02622248cd9a5d23e60b28634786fd2911fee256242c5cee326b72ce11Build116854332021-10-11 17:06:0899 days 12 hrs ago0x038985259b4fb017e2f2d68eea06aed885ed104e IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0xc4e2508cc57c15aed57dc361a6a642b042f895f840c738cb3b5794b33dbcd710Build116854332021-10-11 17:06:0899 days 12 hrs ago0x038985259b4fb017e2f2d68eea06aed885ed104e IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0x7cafa8303534e4a112f0dd17789b8d73d0512ca22fc5996642957dcb28116194Build116854332021-10-11 17:06:0899 days 12 hrs ago0x038985259b4fb017e2f2d68eea06aed885ed104e IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0x90109d2448f61281b7d09d98f9954a3b65bd1332e71eea2aed37cc3925b0f594Build103237342021-08-25 1:24:52147 days 4 hrs ago0x94a6a15e6693f5bab746f5700c64014ad06ded43 IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0x20ad9145df6081816cb7662c66aace2907a8e4d2495b094fb81c10343d1bac2cBuild92033742021-07-16 9:34:42186 days 19 hrs ago0x41ad12c62cf8f17230fc17b81c1f1ac8042ee5f8 IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0x60637a26c6080d9dfe48a83ffffd750d4f82c39f45df24bf41a3f0956684a2b1Build81492062021-06-09 14:31:01223 days 14 hrs ago0x1af779931d0abf62b9264e363f3e9ef2ffc73a48 IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0x0b3140ebcf4998a5d81537ce0bed6d00c3ffc439951edc6bc052eee550a3f5b5Build81492062021-06-09 14:31:01223 days 14 hrs ago0x1af779931d0abf62b9264e363f3e9ef2ffc73a48 IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0xfebb738b33633c2f418c958247a517d549d268d667c711a41c92236ec85ec5d2Build81492062021-06-09 14:31:01223 days 14 hrs ago0x1af779931d0abf62b9264e363f3e9ef2ffc73a48 IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0x5cc3739066d78344e6dd49c66e11310cf20d80b25379c6efeee1cacdb573de96Build80359802021-06-05 15:58:06227 days 13 hrs ago0x79b1f258ad83f1b2f391046b3d8adcc65037399d IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0x6dfd4df925a41ab98e23695e2ccb04c048a854c50ce536ef69b92f7e4ec17178Build80065052021-06-04 15:21:20228 days 14 hrs ago0x0c1c7ebcbb99db83abb56381cc98be62bb4ee17e IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0xec27415b2793182d1338a85132217435347b5ae62a4cbd8fb7c087f55cfb30a2Build79877762021-06-03 23:41:17229 days 5 hrs ago0xfa5509b6cf3fe18f611ec4a594fd9dab2ed9e820 IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0xb90e3f245575806ca932c916ff659a40c0e6b3f810d0603e581a4d8f99af4a1dBuild79738132021-06-03 12:01:44229 days 17 hrs ago0x47a5309a0de89930a68daa959f490c6345982f6d IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0xdcd291f7d8b15b2342ea299d1789a610923514ce0ab9e1a3af514eb9fa616dd4Build79737962021-06-03 12:00:37229 days 17 hrs ago0x47a5309a0de89930a68daa959f490c6345982f6d IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0x3cd93e79faffd4a5102051d6c64e85ec35d0617beccd6f05b2dbb3eb9b1074f4Build79360042021-06-02 4:24:04231 days 1 hr ago0x9478dac2faa45ba05975d8ceda462d08095f8b45 IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0xe054abd9b585bf0d35f0595bb47cd67671d60efcfcaa31f216a10f32da5fad84Build79345882021-06-02 3:13:16231 days 2 hrs ago0x0d45f61ee019b8f7896ecd5a80afd230c7adcb90 IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0x6ac2cb1cb7220dd6870fdfed1b2f0f17be8989c0a9ba917d11285cc3060ea1edBuild78816442021-05-31 6:55:35232 days 22 hrs ago0x0b9fc2c12789b43b413a2f3992365a2992d35631 IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0xb40864b1767035dd9b9b9dcaa1db3db1c00fdde6e064f9a3f1c982b102ed960dBuild78798692021-05-31 5:26:36233 days 3 mins ago0x7ae37a3deef1c5fd00ff7bb907d7e977e4deeb16 IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0x90381912185f61508e9c65041f87d59a3eda8f3d0e11938975f2412a87f6a55bBuild78796072021-05-31 5:13:28233 days 17 mins ago0x11eab22a47fd9181df3e1ee12ab01a9d15ffa768 IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0x1c27d0eff481c36665b606d83a47730433addccf1118bffda2525a040dc0706bBuild78674732021-05-30 19:03:46233 days 10 hrs ago0x4899a43124ba19e20f95837a530535e16da9c96e IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0x5dc930b63faa01113a0915942b8809d2d5a5c09642696d218d6bac5d4e365a73Build78647972021-05-30 16:49:58233 days 12 hrs ago0x820eaa44b190a924d655490f750c73396ab3b1cc IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0x4ea0253916d233bbd3f0087f4fccd0d80ca32f1f288299dbb018d8ca388bff23Build78644752021-05-30 16:33:52233 days 12 hrs ago0xa4c0541f022e7c8542a3037a7c7081ca79f4bdec IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0x3cace70d77247f33f3101623b4eb653970395fc4687e2567dab0a0219e4727bbBuild78642382021-05-30 16:21:57233 days 13 hrs ago0x6cf5ad0c074b31082c3ea9a61e666ee5dfac8a73 IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0xcb8ca156b756f984f7958842a9b32969d0c597272ce2e6b290156a38e4af9e4dBuild78624652021-05-30 14:52:29233 days 14 hrs ago0xf91638ffcb2a4cdc519954ac91d2e44db70e88ee IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990 BNB0.000119865
0xadcedeb833855fb7b017be5ee98d1a80cd02cf27c7377c6b7a5ab677c075c2d2Transfer78616492021-05-30 14:11:41233 days 15 hrs ago0x8c3d3641a28217e5b2e704a15fe01e4204cf4f5c IN  0x14ac8851f509b75bf596d7ea5418d7daaf637d990.001305095 BNB0.000105
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
XWGAirDrop

Compiler Version
v0.6.12+commit.27d51765

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2021-04-25
*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.6.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 GSN 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 payable) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes memory) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

pragma solidity ^0.6.0;

/**
 * @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.
 */
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 () internal {
        _paused = false;
    }

    /**
     * @dev Returns true if the contract is paused, and false otherwise.
     */
    function paused() public view 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());
    }
}

pragma solidity ^0.6.0;

/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
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 () internal {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view 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 Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

    /**
     * @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");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

pragma solidity ^0.6.0;

/**
 * @dev Wrappers over Solidity's arithmetic operations with added overflow
 * checks.
 *
 * Arithmetic operations in Solidity wrap on overflow. This can easily result
 * in bugs, because programmers usually assume that an overflow raises an
 * error, which is the standard behavior in high level programming languages.
 * `SafeMath` restores this intuition by reverting the transaction when an
 * operation overflows.
 *
 * Using this library instead of the unchecked operations eliminates an entire
 * class of bugs, so it's recommended to use it always.
 */
library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `+` operator.
     *
     * Requirements:
     *
     * - Addition cannot overflow.
     */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `*` operator.
     *
     * Requirements:
     *
     * - Multiplication cannot overflow.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
        if (a == 0) {
            return 0;
        }

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

        return c;
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts with custom message on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts with custom message when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

pragma solidity 0.6.12;

interface IRandomNumber {

    function random(address msgSender, uint256 id) external view returns (uint256);

}

pragma solidity 0.6.12;

interface INFT {

    function mint(address player) external returns (uint256);

}

pragma solidity 0.6.12;

interface INFTRepository {

    function add(uint256 id, uint32[] calldata role, uint grade, uint[] calldata skills, uint fiveElements) external;

    function remove(uint256 id) external;

    function get(uint256 id) external view returns(uint32[] memory role, uint grade, uint[] memory skills, uint fiveElement);

}

pragma solidity 0.6.12;

interface IXWGRole {

    function randomRole(uint32 randomNumber) external returns(uint32[] memory role);

}

pragma solidity 0.6.12;

interface IXWGGrade {

    function getBloodAndAttack(uint32 randomNumber, uint grade) external view returns(uint32 blood, uint32 attack);

}

pragma solidity 0.6.12;

interface IXWGSkill {

    function randomSkill(uint32 randomNumber, address msgSender, uint32 nameUint, uint skillNumer) external view returns(uint[] memory);

}

pragma solidity 0.6.12;

interface IXWGFiveElements {

    function randomFiveElements(uint32 randomNumber) external view returns(uint);

}

pragma solidity ^0.6.0;

/**
 * @title Counters
 * @author Matt Condon (@shrugs)
 * @dev Provides counters that can only be incremented or decremented by one. This can be used e.g. to track the number
 * of elements in a mapping, issuing ERC721 ids, or counting request ids.
 *
 * Include with `using Counters for Counters.Counter;`
 * Since it is not possible to overflow a 256 bit integer with increments of one, `increment` can skip the {SafeMath}
 * overflow check, thereby saving gas. This does assume however correct usage, in that the underlying `_value` is never
 * directly accessed.
 */
library Counters {
    using SafeMath for uint256;

    struct Counter {
        // This variable should never be directly accessed by users of the library: interactions must be restricted to
        // the library's function. As of Solidity v0.5.2, this cannot be enforced, though there is a proposal to add
        // this feature: see https://github.com/ethereum/solidity/issues/4637
        uint256 _value; // default: 0
    }

    function current(Counter storage counter) internal view returns (uint256) {
        return counter._value;
    }

    function increment(Counter storage counter) internal {
        // The {SafeMath} overflow check can be skipped here, see the comment at the top
        counter._value += 1;
    }

    function decrement(Counter storage counter) internal {
        counter._value = counter._value.sub(1);
    }
}

pragma solidity 0.6.12;

contract XWGAirDrop is Pausable, Ownable {
    
    using Counters for Counters.Counter;

    Counters.Counter private _tokenIds;
    
    IRandomNumber public randomNumber;
    INFT public nft;
    INFTRepository public nftRepository;
    address payable public devFeeAddress;
    
    IXWGRole public xwgRole;
    IXWGGrade public xwgGrade;
    IXWGSkill public xwgSkill;
    IXWGFiveElements public xwgFiveElements;
    
    mapping(address => bool) public userNFTMapping;
    uint256 public _maxTotalSupply;
    
    constructor() public {
        _maxTotalSupply = 10000;
    }

    /**
     * @dev Triggers stopped state.
     *
     * Requirements:
     *
     * - The contract must not be paused.
     */
    function pause() external virtual onlyOwner whenNotPaused {
        _pause();
    }

    /**
     * @dev Returns to normal state.
     *
     * Requirements:
     *
     * - The contract must be paused.
     */
    function unpause() external virtual onlyOwner whenPaused {
        _unpause();
    }
    
    function setMaxTotalSupply(uint256 number) external onlyOwner {
        _maxTotalSupply = number;
    }
    
    function getCurrentNFTNumber() external view returns(uint256) {
        return _tokenIds.current();
    }

    function initialize(
                        address randomNumberAddr,
                        address nftAddr,
                        address nftRepositoryAddr,
                        address payable devFeeAddr,
                        address xwgRoleAddr,
                        address xwgGradeAddr,
                        address xwgSkillAddr,
                        address xwgFiveElementsAddr
                        ) external onlyOwner {
        randomNumber = IRandomNumber(randomNumberAddr);
        nft = INFT(nftAddr);
        nftRepository = INFTRepository(nftRepositoryAddr);
        devFeeAddress = devFeeAddr;
        xwgRole = IXWGRole(xwgRoleAddr);
        xwgGrade = IXWGGrade(xwgGradeAddr);
        xwgSkill = IXWGSkill(xwgSkillAddr);
        xwgFiveElements = IXWGFiveElements(xwgFiveElementsAddr);
    }

    function innerBuild() private returns(uint256) {
        uint256 id = nft.mint(_msgSender());
        uint32 number = uint32(randomNumber.random(_msgSender(), id) % 100000);

        uint32[] memory role = xwgRole.randomRole(number);
        uint grade = 1;
        (uint32 blood, uint32 attack) = xwgGrade.getBloodAndAttack(number, grade);
        role[4] = role[4]+blood;
        role[5] = role[5]+attack;
        uint[] memory skills = new uint[](0);
        uint fiveElement = xwgFiveElements.randomFiveElements(number);

        nftRepository.add(id, role, grade, skills, fiveElement);
        
        _tokenIds.increment();

        return id;
    }

    function build() external whenNotPaused returns(uint256) {
        require(_tokenIds.current() < _maxTotalSupply, "XWGAirDrop: total supply is error");
        
        bool userNFT = userNFTMapping[_msgSender()];
        require(!userNFT, "Purchase up to 1 cards per address");
        
        uint256 id = innerBuild();
        
        userNFTMapping[_msgSender()] = true;

        return id;
    }
    
    function destroy(address payable addr) external onlyOwner {
        selfdestruct(addr);
    }

}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"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":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"},{"inputs":[],"name":"_maxTotalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"build","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"addr","type":"address"}],"name":"destroy","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"devFeeAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentNFTNumber","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"randomNumberAddr","type":"address"},{"internalType":"address","name":"nftAddr","type":"address"},{"internalType":"address","name":"nftRepositoryAddr","type":"address"},{"internalType":"address payable","name":"devFeeAddr","type":"address"},{"internalType":"address","name":"xwgRoleAddr","type":"address"},{"internalType":"address","name":"xwgGradeAddr","type":"address"},{"internalType":"address","name":"xwgSkillAddr","type":"address"},{"internalType":"address","name":"xwgFiveElementsAddr","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"nft","outputs":[{"internalType":"contract INFT","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nftRepository","outputs":[{"internalType":"contract INFTRepository","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"randomNumber","outputs":[{"internalType":"contract IRandomNumber","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"number","type":"uint256"}],"name":"setMaxTotalSupply","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"userNFTMapping","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"xwgFiveElements","outputs":[{"internalType":"contract IXWGFiveElements","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"xwgGrade","outputs":[{"internalType":"contract IXWGGrade","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"xwgRole","outputs":[{"internalType":"contract IXWGRole","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"xwgSkill","outputs":[{"internalType":"contract IXWGSkill","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

608060405234801561001057600080fd5b5060008060006101000a81548160ff021916908315150217905550600061003b6100e860201b60201c565b905080600060016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350612710600b819055506100f0565b600033905090565b611daf806100ff6000396000f3fe608060405234801561001057600080fd5b50600436106101365760003560e01c80638456cb59116100b8578063a84695d71161007c578063a84695d71461046e578063ba896bb3146104a2578063c0907099146104fc578063cbb8e17814610530578063ccbac9f514610564578063f2fde38b1461059857610136565b80638456cb59146102b95780638a29e2de146102c35780638da5cb5b146103e85780638dffa8cd1461041c5780638e1a55fc1461045057610136565b806347ccca02116100ff57806347ccca02146101f35780635c975abb14610227578063683925ba146102475780636d92e7561461027b578063715018a6146102af57610136565b8062f55d9d1461013b57806304c939291461017f5780633730837c1461019d5780633f3e4c11146101bb5780633f4ba83a146101e9575b600080fd5b61017d6004803603602081101561015157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105dc565b005b6101876106bf565b6040518082815260200191505060405180910390f35b6101a56106d0565b6040518082815260200191505060405180910390f35b6101e7600480360360208110156101d157600080fd5b81019080803590602001909291905050506106d6565b005b6101f16107aa565b005b6101fb6108fe565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61022f610924565b60405180821515815260200191505060405180910390f35b61024f61093a565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610283610960565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102b7610986565b005b6102c1610b10565b005b6103e660048036036101008110156102da57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c65565b005b6103f0610f41565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610424610f6a565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610458610f90565b6040518082815260200191505060405180910390f35b610476611199565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104e4600480360360208110156104b857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506111bf565b60405180821515815260200191505060405180910390f35b6105046111df565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610538611205565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61056c61122b565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6105da600480360360208110156105ae57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611251565b005b6105e4611461565b73ffffffffffffffffffffffffffffffffffffffff16600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106a6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16ff5b60006106cb6001611469565b905090565b600b5481565b6106de611461565b73ffffffffffffffffffffffffffffffffffffffff16600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107a0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600b8190555050565b6107b2611461565b73ffffffffffffffffffffffffffffffffffffffff16600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610874576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b60008054906101000a900460ff166108f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f5061757361626c653a206e6f742070617573656400000000000000000000000081525060200191505060405180910390fd5b6108fc611477565b565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900460ff16905090565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61098e611461565b73ffffffffffffffffffffffffffffffffffffffff16600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a50576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610b18611461565b73ffffffffffffffffffffffffffffffffffffffff16600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bda576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b60008054906101000a900460ff1615610c5b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b610c63611567565b565b610c6d611461565b73ffffffffffffffffffffffffffffffffffffffff16600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d2f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b87600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555086600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555085600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555084600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505050505050565b60008060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900460ff1615611014576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b600b546110216001611469565b10611077576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180611d596021913960400191505060405180910390fd5b6000600a6000611085611461565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1690508015611126576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180611d376022913960400191505060405180910390fd5b6000611130611658565b90506001600a6000611140611461565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550809250505090565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a6020528060005260406000206000915054906101000a900460ff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611259611461565b73ffffffffffffffffffffffffffffffffffffffff16600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461131b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156113a1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180611d116026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600060016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600081600001549050919050565b60008054906101000a900460ff166114f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f5061757361626c653a206e6f742070617573656400000000000000000000000081525060200191505060405180910390fd5b60008060006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa61153a611461565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b60008054906101000a900460ff16156115e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b60016000806101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861162b611461565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b600080600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636a6278426116a1611461565b6040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1580156116ed57600080fd5b505af1158015611701573d6000803e3d6000fd5b505050506040513d602081101561171757600080fd5b810190808051906020019092919050505090506000620186a0600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a35bfd21611776611461565b856040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060206040518083038186803b1580156117c857600080fd5b505afa1580156117dc573d6000803e3d6000fd5b505050506040513d60208110156117f257600080fd5b81019080805190602001909291905050508161180a57fe5b0690506060600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635361055d836040518263ffffffff1660e01b8152600401808263ffffffff168152602001915050600060405180830381600087803b15801561188a57600080fd5b505af115801561189e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525060208110156118c857600080fd5b81019080805160405193929190846401000000008211156118e857600080fd5b838201915060208201858111156118fe57600080fd5b825186602082028301116401000000008211171561191b57600080fd5b8083526020830192505050908051906020019060200280838360005b83811015611952578082015181840152602081019050611937565b505050509050016040525050509050600060019050600080600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631998610186856040518363ffffffff1660e01b8152600401808363ffffffff16815260200182815260200192505050604080518083038186803b1580156119ea57600080fd5b505afa1580156119fe573d6000803e3d6000fd5b505050506040513d6040811015611a1457600080fd5b810190808051906020019092919080519060200190929190505050915091508184600481518110611a4157fe5b60200260200101510184600481518110611a5757fe5b602002602001019063ffffffff16908163ffffffff16815250508084600581518110611a7f57fe5b60200260200101510184600581518110611a9557fe5b602002602001019063ffffffff16908163ffffffff16815250506060600067ffffffffffffffff81118015611ac957600080fd5b50604051908082528060200260200182016040528015611af85781602001602082028036833780820191505090505b5090506000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663118b3d8b886040518263ffffffff1660e01b8152600401808263ffffffff16815260200191505060206040518083038186803b158015611b7657600080fd5b505afa158015611b8a573d6000803e3d6000fd5b505050506040513d6020811015611ba057600080fd5b81019080805190602001909291905050509050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d3db4e1389888886866040518663ffffffff1660e01b8152600401808681526020018060200185815260200180602001848152602001838103835287818151815260200191508051906020019060200280838360005b83811015611c5e578082015181840152602081019050611c43565b50505050905001838103825285818151815260200191508051906020019060200280838360005b83811015611ca0578082015181840152602081019050611c85565b50505050905001975050505050505050600060405180830381600087803b158015611cca57600080fd5b505af1158015611cde573d6000803e3d6000fd5b50505050611cec6001611cfa565b879850505050505050505090565b600181600001600082825401925050819055505056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373507572636861736520757020746f203120636172647320706572206164647265737358574741697244726f703a20746f74616c20737570706c79206973206572726f72a2646970667358221220505b17dc7801c09fa3c87ce9cc4a2b6092ec18b0693942e8cc434b26bd43370b64736f6c634300060c0033

Deployed ByteCode Sourcemap

13503:3365:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16768:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;14691:107;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14000:30;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14574:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;14476:86;;;:::i;:::-;;13688:15;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;1970:78;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;13801:23;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;13710:35;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;4823:148;;;:::i;:::-;;14250:85;;;:::i;:::-;;14806:848;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4181:79;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;13863:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;16343:413;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13831:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;13947:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;13752:36;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;13895:39;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;13648:33;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;5126:244;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;16768:95;4403:12;:10;:12::i;:::-;4393:22;;:6;;;;;;;;;;;:22;;;4385:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16850:4:::1;16837:18;;;14691:107:::0;14744:7;14771:19;:9;:17;:19::i;:::-;14764:26;;14691:107;:::o;14000:30::-;;;;:::o;14574:105::-;4403:12;:10;:12::i;:::-;4393:22;;:6;;;;;;;;;;;:22;;;4385:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14665:6:::1;14647:15;:24;;;;14574:105:::0;:::o;14476:86::-;4403:12;:10;:12::i;:::-;4393:22;;:6;;;;;;;;;;;:22;;;4385:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2564:7:::1;::::0;::::1;;;;;;;;2556:40;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;14544:10:::2;:8;:10::i;:::-;14476:86::o:0;13688:15::-;;;;;;;;;;;;;:::o;1970:78::-;2009:4;2033:7;;;;;;;;;;;2026:14;;1970:78;:::o;13801:23::-;;;;;;;;;;;;;:::o;13710:35::-;;;;;;;;;;;;;:::o;4823:148::-;4403:12;:10;:12::i;:::-;4393:22;;:6;;;;;;;;;;;:22;;;4385:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4930:1:::1;4893:40;;4914:6;;;;;;;;;;;4893:40;;;;;;;;;;;;4961:1;4944:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;4823:148::o:0;14250:85::-;4403:12;:10;:12::i;:::-;4393:22;;:6;;;;;;;;;;;:22;;;4385:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2288:7:::1;::::0;::::1;;;;;;;;2287:8;2279:37;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;14319:8:::2;:6;:8::i;:::-;14250:85::o:0;14806:848::-;4403:12;:10;:12::i;:::-;4393:22;;:6;;;;;;;;;;;:22;;;4385:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15304:16:::1;15275:12;;:46;;;;;;;;;;;;;;;;;;15343:7;15332:3;;:19;;;;;;;;;;;;;;;;;;15393:17;15362:13;;:49;;;;;;;;;;;;;;;;;;15438:10;15422:13;;:26;;;;;;;;;;;;;;;;;;15478:11;15459:7;;:31;;;;;;;;;;;;;;;;;;15522:12;15501:8;;:34;;;;;;;;;;;;;;;;;;15567:12;15546:8;;:34;;;;;;;;;;;;;;;;;;15626:19;15591:15;;:55;;;;;;;;;;;;;;;;;;14806:848:::0;;;;;;;;:::o;4181:79::-;4219:7;4246:6;;;;;;;;;;;4239:13;;4181:79;:::o;13863:25::-;;;;;;;;;;;;;:::o;16343:413::-;16391:7;2288;;;;;;;;;;;2287:8;2279:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16441:15:::1;;16419:19;:9;:17;:19::i;:::-;:37;16411:83;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16515:12;16530:14;:28;16545:12;:10;:12::i;:::-;16530:28;;;;;;;;;;;;;;;;;;;;;;;;;16515:43;;16578:7;16577:8;16569:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16645:10;16658:12;:10;:12::i;:::-;16645:25;;16722:4;16691:14;:28;16706:12;:10;:12::i;:::-;16691:28;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;16746:2;16739:9;;;;16343:413:::0;:::o;13831:25::-;;;;;;;;;;;;;:::o;13947:46::-;;;;;;;;;;;;;;;;;;;;;;:::o;13752:36::-;;;;;;;;;;;;;:::o;13895:39::-;;;;;;;;;;;;;:::o;13648:33::-;;;;;;;;;;;;;:::o;5126:244::-;4403:12;:10;:12::i;:::-;4393:22;;:6;;;;;;;;;;;:22;;;4385:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5235:1:::1;5215:22;;:8;:22;;;;5207:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5325:8;5296:38;;5317:6;;;;;;;;;;;5296:38;;;;;;;;;;;;5354:8;5345:6;;:17;;;;;;;;;;;;;;;;;;5126:244:::0;:::o;605:106::-;658:15;693:10;686:17;;605:106;:::o;13048:114::-;13113:7;13140;:14;;;13133:21;;13048:114;;;:::o;3019:120::-;2564:7;;;;;;;;;;2556:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3088:5:::1;3078:7:::0;::::1;:15;;;;;;;;;;;;;;;;;;3109:22;3118:12;:10;:12::i;:::-;3109:22;;;;;;;;;;;;;;;;;;;;3019:120::o:0;2760:118::-;2288:7;;;;;;;;;;2287:8;2279:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2830:4:::1;2820:7;::::0;:14:::1;;;;;;;;;;;;;;;;;;2850:20;2857:12;:10;:12::i;:::-;2850:20;;;;;;;;;;;;;;;;;;;;2760:118::o:0;15662:673::-;15700:7;15720:10;15733:3;;;;;;;;;;;:8;;;15742:12;:10;:12::i;:::-;15733:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15720:35;;15766:13;15829:6;15789:12;;;;;;;;;;;:19;;;15809:12;:10;:12::i;:::-;15823:2;15789:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:46;;;;;;15766:70;;15849:20;15872:7;;;;;;;;;;;:18;;;15891:6;15872:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15849:49;;15909:10;15922:1;15909:14;;15935:12;15949:13;15966:8;;;;;;;;;;;:26;;;15993:6;16001:5;15966:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15934:73;;;;16036:5;16028:4;16033:1;16028:7;;;;;;;;;;;;;;:13;16018:4;16023:1;16018:7;;;;;;;;;;;;;:23;;;;;;;;;;;16070:6;16062:4;16067:1;16062:7;;;;;;;;;;;;;;:14;16052:4;16057:1;16052:7;;;;;;;;;;;;;:24;;;;;;;;;;;16087:20;16121:1;16110:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16087:36;;16134:16;16153:15;;;;;;;;;;;:34;;;16188:6;16153:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16134:61;;16208:13;;;;;;;;;;;:17;;;16226:2;16230:4;16236:5;16243:6;16251:11;16208:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16284:21;:9;:19;:21::i;:::-;16325:2;16318:9;;;;;;;;;;15662:673;:::o;13170:181::-;13342:1;13324:7;:14;;;:19;;;;;;;;;;;13170:181;:::o

Swarm Source

ipfs://505b17dc7801c09fa3c87ce9cc4a2b6092ec18b0693942e8cc434b26bd43370b
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.