ETH Price: $3,389.62 (+1.15%)

Contract

0x7b123f53421b1bF8533339BFBdc7C98aA94163db
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00
Transaction Hash
Method
Block
From
To
Approve214639802024-12-23 8:26:114 days ago1734942371IN
0x7b123f53...aA94163db
0 ETH0.000276475.94820675
Approve214635322024-12-23 6:54:594 days ago1734936899IN
0x7b123f53...aA94163db
0 ETH0.000249545.37579797
Approve214630992024-12-23 5:28:114 days ago1734931691IN
0x7b123f53...aA94163db
0 ETH0.000236435.08691813
Approve214610242024-12-22 22:29:474 days ago1734906587IN
0x7b123f53...aA94163db
0 ETH0.000342397.37599263
Transfer214586002024-12-22 14:21:354 days ago1734877295IN
0x7b123f53...aA94163db
0 ETH0.000236377.93352544
Approve214566982024-12-22 7:58:595 days ago1734854339IN
0x7b123f53...aA94163db
0 ETH0.00030686.64884474
Transfer214523232024-12-21 17:17:235 days ago1734801443IN
0x7b123f53...aA94163db
0 ETH0.000493439.54533916
Approve214498662024-12-21 9:04:116 days ago1734771851IN
0x7b123f53...aA94163db
0 ETH0.0002546710.52543071
Approve214470632024-12-20 23:37:356 days ago1734737855IN
0x7b123f53...aA94163db
0 ETH0.0005257411.32574741
Approve214418932024-12-20 6:18:237 days ago1734675503IN
0x7b123f53...aA94163db
0 ETH0.000423049.15601403
Approve214368942024-12-19 13:34:237 days ago1734615263IN
0x7b123f53...aA94163db
0 ETH0.0006283713.6
Approve214064622024-12-15 7:34:5912 days ago1734248099IN
0x7b123f53...aA94163db
0 ETH0.000178967.39643595
Approve213959512024-12-13 20:22:3513 days ago1734121355IN
0x7b123f53...aA94163db
0 ETH0.0006214913.45114437
Transfer213530552024-12-07 20:40:1119 days ago1733604011IN
0x7b123f53...aA94163db
0 ETH0.0007499415.99229467
Approve212924152024-11-29 9:19:5928 days ago1732871999IN
0x7b123f53...aA94163db
0 ETH0.000187257.73897372
Approve212819742024-11-27 22:09:5929 days ago1732745399IN
0x7b123f53...aA94163db
0 ETH0.0008366318.02787725
Approve212710972024-11-26 9:42:2331 days ago1732614143IN
0x7b123f53...aA94163db
0 ETH0.000362277.79414625
Approve212710712024-11-26 9:37:1131 days ago1732613831IN
0x7b123f53...aA94163db
0 ETH0.000393228.51060677
Approve212416312024-11-22 6:58:3535 days ago1732258715IN
0x7b123f53...aA94163db
0 ETH0.000360127.80643465
Approve212238732024-11-19 19:28:3537 days ago1732044515IN
0x7b123f53...aA94163db
0 ETH0.0011289424.32015728
Approve212151132024-11-18 14:10:2338 days ago1731939023IN
0x7b123f53...aA94163db
0 ETH0.0003972216.41677016
Approve212119802024-11-18 3:41:5939 days ago1731901319IN
0x7b123f53...aA94163db
0 ETH0.000423549.16692592
Transfer212076062024-11-17 13:04:2340 days ago1731848663IN
0x7b123f53...aA94163db
0 ETH0.0005880712.54051652
Approve212012392024-11-16 15:45:3540 days ago1731771935IN
0x7b123f53...aA94163db
0 ETH0.0007437616.09746234
Approve211759672024-11-13 3:05:3544 days ago1731467135IN
0x7b123f53...aA94163db
0 ETH0.0007422230.67537572
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
VotingToken

Compiler Version
v0.6.10+commit.00c0fcaf

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity Multiple files format)

File 1 of 13: VotingToken.sol
pragma solidity ^0.6.0;

import "./IMVDProxy.sol";
import "./IERC20.sol";
import "./IVotingToken.sol";
import "./IMVDFunctionalityProposalManager.sol";
import "./IMVDFunctionalitiesManager.sol";

contract VotingToken is IERC20, IVotingToken {

    mapping (address => uint256) private _balances;

    mapping (address => mapping (address => uint256)) private _allowances;

    uint256 private _totalSupply;
    uint256 private _decimals;
    address private _proxy;
    string private _name;
    string private _symbol;

    constructor(string memory name, string memory symbol, uint256 decimals, uint256 totalSupply) public {
        if(totalSupply == 0) {
            return;
        }
        init(name, symbol, decimals, totalSupply);
    }

    function init(string memory name, string memory symbol, uint256 decimals, uint256 totalSupply) public override {
        require(_totalSupply == 0, "Init already called!");

        _name = name;
        _symbol = symbol;
        _decimals = decimals;
        _totalSupply = totalSupply * (10 ** decimals);
        _balances[msg.sender] = _totalSupply;
        emit Transfer(address(this), msg.sender, _totalSupply);
    }

    receive() external payable {
        revert("ETH not accepted");
    }

    function getProxy() public override view returns(address) {
        return _proxy;
    }

    function name() public override view returns(string memory) {
        return _name;
    }

    function symbol() public override view returns(string memory) {
        return _symbol;
    }

    function decimals() public override view returns(uint256) {
        return _decimals;
    }

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

    function balanceOf(address account) public override view returns (uint256) {
        return _balances[account];
    }

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(msg.sender, recipient, amount);
        return true;
    }

    function allowance(address owner, address spender) public override view returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(msg.sender, spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        address txSender = msg.sender;
        if(_proxy == address(0) || !(IMVDFunctionalityProposalManager(IMVDProxy(_proxy).getMVDFunctionalityProposalManagerAddress()).isValidProposal(txSender) && recipient == txSender)) {
            _approve(sender, txSender, _allowances[sender][txSender] = sub(_allowances[sender][txSender], amount, "ERC20: transfer amount exceeds allowance"));
        }
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public override returns (bool) {
        _approve(msg.sender, spender, add(_allowances[msg.sender][spender], addedValue));
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public override returns (bool) {
        _approve(msg.sender, spender, sub(_allowances[msg.sender][spender], subtractedValue, "ERC20: decreased allowance below zero"));
        return true;
    }

    function _transfer(address sender, address recipient, uint256 amount) internal {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        _balances[sender] = sub(_balances[sender], amount, "ERC20: transfer amount exceeds balance");
        _balances[recipient] = add(_balances[recipient], amount);
        emit Transfer(sender, recipient, amount);
    }

    function _approve(address owner, address spender, uint256 amount) internal {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function add(uint256 a, uint256 b) internal pure returns (uint256 c) {
        c = a + b;
        require(c >= a, "SafeMath: addition overflow");
    }

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256 c) {
        require(b <= a, errorMessage);
        c = a - b;
    }

    function setProxy() public override {
        require(_totalSupply != 0, "Init not called!");
        require(_proxy == address(0) || _proxy == msg.sender, _proxy != address(0) ? "Proxy already set!" : "Only Proxy can toggle itself!");
        _proxy = _proxy == address(0) ?  msg.sender : address(0);
    }

    function mint(uint256 amount) public override {
        require(IMVDFunctionalitiesManager(IMVDProxy(_proxy).getMVDFunctionalitiesManagerAddress()).isAuthorizedFunctionality(msg.sender), "Unauthorized access!");

        _totalSupply = add(_totalSupply, amount);
        _balances[_proxy] = add(_balances[_proxy], amount);
        emit Transfer(address(0), _proxy, amount);
    }

    function burn(uint256 amount) public override {
        _balances[msg.sender] = sub(_balances[msg.sender], amount, "VotingToken: burn amount exceeds balance");
        _totalSupply = sub(_totalSupply, amount, "VotingToken: burn amount exceeds total supply");
        emit Transfer(msg.sender, address(0), amount);
    }
}

File 2 of 13: ICommonUtilities.sol
pragma solidity ^0.6.0;

interface ICommonUtilities {
    function toString(address _addr) external pure returns(string memory);
    function toString(uint _i) external pure returns(string memory);
    function toUint256(bytes calldata bs) external pure returns(uint256 x);
    function toAddress(bytes calldata b) external pure returns (address addr);
    function compareStrings(string calldata a, string calldata b) external pure returns(bool);
    function getFirstJSONPart(address sourceLocation, uint256 sourceLocationId, address location) external pure returns(bytes memory);
    function formatReturnAbiParametersArray(string calldata m) external pure returns(string memory);
    function toLowerCase(string calldata str) external pure returns(string memory);
}

File 3 of 13: IERC20.sol
pragma solidity ^0.6.0;

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

File 4 of 13: IERC721.sol
pragma solidity ^0.6.0;

interface IERC721 {
    function ownerOf(uint256 _tokenId) external view returns (address);
    function transferFrom(address _from, address _to, uint256 _tokenId) external payable;
    function safeTransferFrom(address from, address to, uint256 tokenId, bytes calldata data) external;
}

File 5 of 13: IERC721Receiver.sol
pragma solidity ^0.6.0;

interface IERC721Receiver {
    function onERC721Received(address operator, address from, uint256 tokenId, bytes calldata data) external returns (bytes4);
}

File 6 of 13: IMVDFunctionalitiesManager.sol
pragma solidity ^0.6.0;

interface IMVDFunctionalitiesManager {

    function getProxy() external view returns (address);
    function setProxy() external;

    function init(address sourceLocation,
        uint256 getMinimumBlockNumberSourceLocationId, address getMinimumBlockNumberFunctionalityAddress,
        uint256 getEmergencyMinimumBlockNumberSourceLocationId, address getEmergencyMinimumBlockNumberFunctionalityAddress,
        uint256 getEmergencySurveyStakingSourceLocationId, address getEmergencySurveyStakingFunctionalityAddress,
        uint256 checkVoteResultSourceLocationId, address checkVoteResultFunctionalityAddress) external;

    function addFunctionality(string calldata codeName, address sourceLocation, uint256 sourceLocationId, address location, bool submitable, string calldata methodSignature, string calldata returnAbiParametersArray, bool isInternal, bool needsSender) external;
    function addFunctionality(string calldata codeName, address sourceLocation, uint256 sourceLocationId, address location, bool submitable, string calldata methodSignature, string calldata returnAbiParametersArray, bool isInternal, bool needsSender, uint256 position) external;
    function removeFunctionality(string calldata codeName) external returns(bool removed, uint256 position);
    function isValidFunctionality(address functionality) external view returns(bool);
    function isAuthorizedFunctionality(address functionality) external view returns(bool);
    function setCallingContext(address location) external returns(bool);
    function clearCallingContext() external;
    function getFunctionalityData(string calldata codeName) external view returns(address, uint256, string memory, address, uint256);
    function hasFunctionality(string calldata codeName) external view returns(bool);
    function getFunctionalitiesAmount() external view returns(uint256);
    function functionalitiesToJSON() external view returns(string memory);
    function functionalitiesToJSON(uint256 start, uint256 l) external view returns(string memory functionsJSONArray);
    function functionalityNames() external view returns(string memory);
    function functionalityNames(uint256 start, uint256 l) external view returns(string memory functionsJSONArray);
    function functionalityToJSON(string calldata codeName) external view returns(string memory);

    function preConditionCheck(string calldata codeName, bytes calldata data, uint8 submitable, address sender, uint256 value) external view returns(address location, bytes memory payload);

    function setupFunctionality(address proposalAddress) external returns (bool);
}

File 7 of 13: IMVDFunctionalityModelsManager.sol
pragma solidity ^0.6.0;

interface IMVDFunctionalityModelsManager {
    function init() external;
    function checkWellKnownFunctionalities(string calldata codeName, bool submitable, string calldata methodSignature, string calldata returnAbiParametersArray, bool isInternal, bool needsSender, string calldata replaces) external view;
}

File 8 of 13: IMVDFunctionalityProposal.sol
pragma solidity ^0.6.0;

interface IMVDFunctionalityProposal {

    function init(string calldata codeName, address location, string calldata methodSignature, string calldata returnAbiParametersArray, string calldata replaces, address proxy) external;
    function setCollateralData(bool emergency, address sourceLocation, uint256 sourceLocationId, bool submitable, bool isInternal, bool needsSender, address proposer, uint256 votesHardCap) external;

    function getProxy() external view returns(address);
    function getCodeName() external view returns(string memory);
    function isEmergency() external view returns(bool);
    function getSourceLocation() external view returns(address);
    function getSourceLocationId() external view returns(uint256);
    function getLocation() external view returns(address);
    function isSubmitable() external view returns(bool);
    function getMethodSignature() external view returns(string memory);
    function getReturnAbiParametersArray() external view returns(string memory);
    function isInternal() external view returns(bool);
    function needsSender() external view returns(bool);
    function getReplaces() external view returns(string memory);
    function getProposer() external view returns(address);
    function getSurveyEndBlock() external view returns(uint256);
    function getSurveyDuration() external view returns(uint256);
    function isVotesHardCapReached() external view returns(bool);
    function getVotesHardCapToReach() external view returns(uint256);
    function toJSON() external view returns(string memory);
    function getVote(address addr) external view returns(uint256 accept, uint256 refuse);
    function getVotes() external view returns(uint256, uint256);
    function start() external;
    function disable() external;
    function isDisabled() external view returns(bool);
    function isTerminated() external view returns(bool);
    function accept(uint256 amount) external;
    function retireAccept(uint256 amount) external;
    function moveToAccept(uint256 amount) external;
    function refuse(uint256 amount) external;
    function retireRefuse(uint256 amount) external;
    function moveToRefuse(uint256 amount) external;
    function retireAll() external;
    function withdraw() external;
    function terminate() external;
    function set() external;

    event Accept(address indexed voter, uint256 amount);
    event RetireAccept(address indexed voter, uint256 amount);
    event MoveToAccept(address indexed voter, uint256 amount);
    event Refuse(address indexed voter, uint256 amount);
    event RetireRefuse(address indexed voter, uint256 amount);
    event MoveToRefuse(address indexed voter, uint256 amount);
    event RetireAll(address indexed voter, uint256 amount);
}

File 9 of 13: IMVDFunctionalityProposalManager.sol
pragma solidity ^0.6.0;

interface IMVDFunctionalityProposalManager {
    function newProposal(string calldata codeName, address location, string calldata methodSignature, string calldata returnAbiParametersArray, string calldata replaces) external returns(address);
    function checkProposal(address proposalAddress) external;
    function getProxy() external view returns (address);
    function setProxy() external;
    function isValidProposal(address proposal) external view returns (bool);
}

File 10 of 13: IMVDProxy.sol
pragma solidity ^0.6.0;

interface IMVDProxy {

    function init(address votingTokenAddress, address functionalityProposalManagerAddress, address stateHolderAddress, address functionalityModelsManagerAddress, address functionalitiesManagerAddress, address walletAddress) external;

    function getDelegates() external view returns(address,address,address,address,address,address);
    function getToken() external view returns(address);
    function getMVDFunctionalityProposalManagerAddress() external view returns(address);
    function getStateHolderAddress() external view returns(address);
    function getMVDFunctionalityModelsManagerAddress() external view returns(address);
    function getMVDFunctionalitiesManagerAddress() external view returns(address);
    function getMVDWalletAddress() external view returns(address);
    function setDelegate(uint256 position, address newAddress) external returns(address oldAddress);
    function changeProxy(address newAddress, bytes calldata initPayload) external;
    function isValidProposal(address proposal) external view returns (bool);
    function isAuthorizedFunctionality(address functionality) external view returns(bool);
    function newProposal(string calldata codeName, bool emergency, address sourceLocation, uint256 sourceLocationId, address location, bool submitable, string calldata methodSignature, string calldata returnParametersJSONArray, bool isInternal, bool needsSender, string calldata replaces) external returns(address proposalAddress);
    function startProposal(address proposalAddress) external;
    function disableProposal(address proposalAddress) external;
    function transfer(address receiver, uint256 value, address token) external;
    function transfer721(address receiver, uint256 tokenId, bytes calldata data, bool safe, address token) external;
    function flushToWallet(address tokenAddress, bool is721, uint256 tokenId) external;
    function setProposal() external;
    function read(string calldata codeName, bytes calldata data) external view returns(bytes memory returnData);
    function submit(string calldata codeName, bytes calldata data) external payable returns(bytes memory returnData);
    function callFromManager(address location, bytes calldata payload) external returns(bool, bytes memory);
    function emitFromManager(string calldata codeName, address proposal, string calldata replaced, address replacedSourceLocation, uint256 replacedSourceLocationId, address location, bool submitable, string calldata methodSignature, bool isInternal, bool needsSender, address proposalAddress) external;

    function emitEvent(string calldata eventSignature, bytes calldata firstIndex, bytes calldata secondIndex, bytes calldata data) external;

    event ProxyChanged(address indexed newAddress);
    event DelegateChanged(uint256 position, address indexed oldAddress, address indexed newAddress);

    event Proposal(address proposal);
    event ProposalCheck(address indexed proposal);
    event ProposalSet(address indexed proposal, bool success);
    event FunctionalitySet(string codeName, address indexed proposal, string replaced, address replacedSourceLocation, uint256 replacedSourceLocationId, address indexed replacedLocation, bool replacedWasSubmitable, string replacedMethodSignature, bool replacedWasInternal, bool replacedNeededSender, address indexed replacedProposal);

    event Event(string indexed key, bytes32 indexed firstIndex, bytes32 indexed secondIndex, bytes data);
}

File 11 of 13: IMVDWallet.sol
pragma solidity ^0.6.0;

interface IMVDWallet {

    function getProxy() external view returns (address);

    function setProxy() external;

    function setNewWallet(address payable newWallet, address tokenAddress) external;

    function transfer(address receiver, uint256 value, address tokenAddress) external;
    
    function transfer(address receiver, uint256 tokenId, bytes calldata data, bool safe, address token) external;

    function flushToNewWallet(address token) external;

    function flush721ToNewWallet(uint256 tokenId, bytes calldata data, bool safe, address tokenAddress) external;
}

File 12 of 13: IStateHolder.sol
pragma solidity ^0.6.0;

interface IStateHolder {

    function init() external;

    function getProxy() external view returns (address);
    function setProxy() external;
    function toJSON() external view returns(string memory);
    function toJSON(uint256 start, uint256 l) external view returns(string memory);
    function getStateSize() external view returns (uint256);
    function exists(string calldata varName) external view returns(bool);
    function getDataType(string calldata varName) external view returns(string memory dataType);
    function clear(string calldata varName) external returns(string memory oldDataType, bytes memory oldVal);
    function setBytes(string calldata varName, bytes calldata val) external returns(bytes memory);
    function getBytes(string calldata varName) external view returns(bytes memory);
    function setString(string calldata varName, string calldata val) external returns(string memory);
    function getString(string calldata varName) external view returns (string memory);
    function setBool(string calldata varName, bool val) external returns(bool);
    function getBool(string calldata varName) external view returns (bool);
    function getUint256(string calldata varName) external view returns (uint256);
    function setUint256(string calldata varName, uint256 val) external returns(uint256);
    function getAddress(string calldata varName) external view returns (address);
    function setAddress(string calldata varName, address val) external returns (address);
}

File 13 of 13: IVotingToken.sol
pragma solidity ^0.6.0;

interface IVotingToken {
    function init(string calldata name, string calldata symbol, uint256 decimals, uint256 totalSupply) external;

    function getProxy() external view returns (address);
    function setProxy() external;

    function name() external view returns(string memory);
    function symbol() external view returns(string memory);
    function decimals() external view returns(uint256);

    function mint(uint256 amount) external;
    function burn(uint256 amount) external;

    function increaseAllowance(address spender, uint256 addedValue) external returns (bool);
    function decreaseAllowance(address spender, uint256 subtractedValue) external returns (bool);
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"uint256","name":"decimals","type":"uint256"},{"internalType":"uint256","name":"totalSupply","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getProxy","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"uint256","name":"decimals","type":"uint256"},{"internalType":"uint256","name":"totalSupply","type":"uint256"}],"name":"init","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"setProxy","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040523480156200001157600080fd5b50604051620016e4380380620016e4833981810160405260808110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b9083019060208201858111156200006e57600080fd5b82516401000000008111828201881017156200008957600080fd5b82525081516020918201929091019080838360005b83811015620000b85781810151838201526020016200009e565b50505050905090810190601f168015620000e65780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200010a57600080fd5b9083019060208201858111156200012057600080fd5b82516401000000008111828201881017156200013b57600080fd5b82525081516020918201929091019080838360005b838110156200016a57818101518382015260200162000150565b50505050905090810190601f168015620001985780820380516001836020036101000a031916815260200191505b5060409081526020820151910151909250905080620001b757620001ce565b620001ce848484846001600160e01b03620001d816565b5050505062000360565b600254156200022e576040805162461bcd60e51b815260206004820152601460248201527f496e697420616c72656164792063616c6c656421000000000000000000000000604482015290519081900360640190fd5b835162000243906005906020870190620002bb565b50825162000259906006906020860190620002bb565b506003829055600a82900a81026002819055336000818152602081815260409182902084905581519384529051919230927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a350505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002fe57805160ff19168380011785556200032e565b828001600101855582156200032e579182015b828111156200032e57825182559160200191906001019062000311565b506200033c92915062000340565b5090565b6200035d91905b808211156200033c576000815560010162000347565b90565b61137480620003706000396000f3fe6080604052600436106100f75760003560e01c806370a082311161008a578063a0712d6811610059578063a0712d68146104c9578063a457c2d7146104f3578063a9059cbb1461052c578063dd62ed3e146105655761013c565b806370a082311461031157806387c8046414610344578063933a9ce81461048357806395d89b41146104b45761013c565b8063313ce567116100c6578063313ce567146102825780633914a04f1461029757806339509351146102ae57806342966c68146102e75761013c565b806306fdde0314610141578063095ea7b3146101cb57806318160ddd1461021857806323b872dd1461023f5761013c565b3661013c576040805162461bcd60e51b815260206004820152601060248201526f115512081b9bdd081858d8d95c1d195960821b604482015290519081900360640190fd5b600080fd5b34801561014d57600080fd5b506101566105a0565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610190578181015183820152602001610178565b50505050905090810190601f1680156101bd5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101d757600080fd5b50610204600480360360408110156101ee57600080fd5b506001600160a01b038135169060200135610637565b604080519115158252519081900360200190f35b34801561022457600080fd5b5061022d61064e565b60408051918252519081900360200190f35b34801561024b57600080fd5b506102046004803603606081101561026257600080fd5b506001600160a01b03813581169160208101359091169060400135610654565b34801561028e57600080fd5b5061022d610826565b3480156102a357600080fd5b506102ac61082c565b005b3480156102ba57600080fd5b50610204600480360360408110156102d157600080fd5b506001600160a01b0381351690602001356109d2565b3480156102f357600080fd5b506102ac6004803603602081101561030a57600080fd5b5035610a0d565b34801561031d57600080fd5b5061022d6004803603602081101561033457600080fd5b50356001600160a01b0316610acd565b34801561035057600080fd5b506102ac6004803603608081101561036757600080fd5b81019060208101813564010000000081111561038257600080fd5b82018360208201111561039457600080fd5b803590602001918460018302840111640100000000831117156103b657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929594936020810193503591505064010000000081111561040957600080fd5b82018360208201111561041b57600080fd5b8035906020019184600183028401116401000000008311171561043d57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505082359350505060200135610ae8565b34801561048f57600080fd5b50610498610bab565b604080516001600160a01b039092168252519081900360200190f35b3480156104c057600080fd5b50610156610bba565b3480156104d557600080fd5b506102ac600480360360208110156104ec57600080fd5b5035610c1b565b3480156104ff57600080fd5b506102046004803603604081101561051657600080fd5b506001600160a01b038135169060200135610dc3565b34801561053857600080fd5b506102046004803603604081101561054f57600080fd5b506001600160a01b038135169060200135610e12565b34801561057157600080fd5b5061022d6004803603604081101561058857600080fd5b506001600160a01b0381358116916020013516610e1f565b60058054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561062c5780601f106106015761010080835404028352916020019161062c565b820191906000526020600020905b81548152906001019060200180831161060f57829003601f168201915b505050505090505b90565b6000610644338484610e4a565b5060015b92915050565b60025490565b6000610661848484610f36565b60045433906001600160a01b031615806107795750600480546040805163c5c2fb6b60e01b815290516001600160a01b039092169263c5c2fb6b928282019260209290829003018186803b1580156106b857600080fd5b505afa1580156106cc573d6000803e3d6000fd5b505050506040513d60208110156106e257600080fd5b50516040805163a9771afd60e01b81526001600160a01b0384811660048301529151919092169163a9771afd916024808301926020929190829003018186803b15801561072e57600080fd5b505afa158015610742573d6000803e3d6000fd5b505050506040513d602081101561075857600080fd5b505180156107775750806001600160a01b0316846001600160a01b0316145b155b1561081b5761081b85826107ee600160008a6001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002054876040518060600160405280602881526020016112896028913961107e565b6001600160a01b03808a166000908152600160209081526040808320938916835292905220819055610e4a565b506001949350505050565b60035490565b600254610873576040805162461bcd60e51b815260206004820152601060248201526f496e6974206e6f742063616c6c65642160801b604482015290519081900360640190fd5b6004546001600160a01b0316158061089557506004546001600160a01b031633145b6004546001600160a01b03166108e0576040518060400160405280601d81526020017f4f6e6c792050726f78792063616e20746f67676c6520697473656c662100000081525061090c565b6040518060400160405280601281526020017150726f787920616c7265616479207365742160701b8152505b906109955760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561095a578181015183820152602001610942565b50505050905090810190601f1680156109875780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506004546001600160a01b0316156109ae5760006109b0565b335b600480546001600160a01b0319166001600160a01b0392909216919091179055565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610644918590610a0890866110d8565b610e4a565b610a54600080336001600160a01b03166001600160a01b0316815260200190815260200160002054826040518060600160405280602881526020016112196028913961107e565b600080336001600160a01b03166001600160a01b0316815260200190815260200160002081905550610aa1600254826040518060600160405280602d81526020016111ec602d913961107e565b60025560408051828152905160009133916000805160206112b18339815191529181900360200190a350565b6001600160a01b031660009081526020819052604090205490565b60025415610b34576040805162461bcd60e51b8152602060048201526014602482015273496e697420616c72656164792063616c6c65642160601b604482015290519081900360640190fd5b8351610b47906005906020870190611130565b508251610b5b906006906020860190611130565b506003829055600a82900a81026002819055336000818152602081815260409182902084905581519384529051919230926000805160206112b1833981519152929181900390910190a350505050565b6004546001600160a01b031690565b60068054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561062c5780601f106106015761010080835404028352916020019161062c565b6004805460408051633380ac3560e11b815290516001600160a01b0390921692636701586a928282019260209290829003018186803b158015610c5d57600080fd5b505afa158015610c71573d6000803e3d6000fd5b505050506040513d6020811015610c8757600080fd5b5051604080516318c8e99960e11b815233600482015290516001600160a01b0390921691633191d33291602480820192602092909190829003018186803b158015610cd157600080fd5b505afa158015610ce5573d6000803e3d6000fd5b505050506040513d6020811015610cfb57600080fd5b5051610d45576040805162461bcd60e51b8152602060048201526014602482015273556e617574686f72697a6564206163636573732160601b604482015290519081900360640190fd5b610d51600254826110d8565b6002556004546001600160a01b0316600090815260208190526040902054610d7990826110d8565b600480546001600160a01b039081166000908152602081815260408083209590955592548451868152945192169390926000805160206112b183398151915292918290030190a350565b3360008181526001602090815260408083206001600160a01b0387168452825280832054815160608101909252602580835293946106449490938893610a089392899261131a9083013961107e565b6000610644338484610f36565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b038316610e8f5760405162461bcd60e51b81526004018080602001828103825260248152602001806112f66024913960400191505060405180910390fd5b6001600160a01b038216610ed45760405162461bcd60e51b81526004018080602001828103825260228152602001806112416022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610f7b5760405162461bcd60e51b81526004018080602001828103825260258152602001806112d16025913960400191505060405180910390fd5b6001600160a01b038216610fc05760405162461bcd60e51b81526004018080602001828103825260238152602001806111c96023913960400191505060405180910390fd5b611007600080856001600160a01b03166001600160a01b0316815260200190815260200160002054826040518060600160405280602681526020016112636026913961107e565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461103690826110d8565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716926000805160206112b183398151915292918290030190a3505050565b600081848411156110d05760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561095a578181015183820152602001610942565b505050900390565b81810182811015610648576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061117157805160ff191683800117855561119e565b8280016001018555821561119e579182015b8281111561119e578251825591602001919060010190611183565b506111aa9291506111ae565b5090565b61063491905b808211156111aa57600081556001016111b456fe45524332303a207472616e7366657220746f20746865207a65726f2061646472657373566f74696e67546f6b656e3a206275726e20616d6f756e74206578636565647320746f74616c20737570706c79566f74696e67546f6b656e3a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212201cd1d726efd29883483d0d732966c74cd84d917c364530256c3171106fca533664736f6c634300060a0033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000025e1663000000000000000000000000000000000000000000000000000000000000000664666f68756200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005627569646c000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106100f75760003560e01c806370a082311161008a578063a0712d6811610059578063a0712d68146104c9578063a457c2d7146104f3578063a9059cbb1461052c578063dd62ed3e146105655761013c565b806370a082311461031157806387c8046414610344578063933a9ce81461048357806395d89b41146104b45761013c565b8063313ce567116100c6578063313ce567146102825780633914a04f1461029757806339509351146102ae57806342966c68146102e75761013c565b806306fdde0314610141578063095ea7b3146101cb57806318160ddd1461021857806323b872dd1461023f5761013c565b3661013c576040805162461bcd60e51b815260206004820152601060248201526f115512081b9bdd081858d8d95c1d195960821b604482015290519081900360640190fd5b600080fd5b34801561014d57600080fd5b506101566105a0565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610190578181015183820152602001610178565b50505050905090810190601f1680156101bd5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101d757600080fd5b50610204600480360360408110156101ee57600080fd5b506001600160a01b038135169060200135610637565b604080519115158252519081900360200190f35b34801561022457600080fd5b5061022d61064e565b60408051918252519081900360200190f35b34801561024b57600080fd5b506102046004803603606081101561026257600080fd5b506001600160a01b03813581169160208101359091169060400135610654565b34801561028e57600080fd5b5061022d610826565b3480156102a357600080fd5b506102ac61082c565b005b3480156102ba57600080fd5b50610204600480360360408110156102d157600080fd5b506001600160a01b0381351690602001356109d2565b3480156102f357600080fd5b506102ac6004803603602081101561030a57600080fd5b5035610a0d565b34801561031d57600080fd5b5061022d6004803603602081101561033457600080fd5b50356001600160a01b0316610acd565b34801561035057600080fd5b506102ac6004803603608081101561036757600080fd5b81019060208101813564010000000081111561038257600080fd5b82018360208201111561039457600080fd5b803590602001918460018302840111640100000000831117156103b657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929594936020810193503591505064010000000081111561040957600080fd5b82018360208201111561041b57600080fd5b8035906020019184600183028401116401000000008311171561043d57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505082359350505060200135610ae8565b34801561048f57600080fd5b50610498610bab565b604080516001600160a01b039092168252519081900360200190f35b3480156104c057600080fd5b50610156610bba565b3480156104d557600080fd5b506102ac600480360360208110156104ec57600080fd5b5035610c1b565b3480156104ff57600080fd5b506102046004803603604081101561051657600080fd5b506001600160a01b038135169060200135610dc3565b34801561053857600080fd5b506102046004803603604081101561054f57600080fd5b506001600160a01b038135169060200135610e12565b34801561057157600080fd5b5061022d6004803603604081101561058857600080fd5b506001600160a01b0381358116916020013516610e1f565b60058054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561062c5780601f106106015761010080835404028352916020019161062c565b820191906000526020600020905b81548152906001019060200180831161060f57829003601f168201915b505050505090505b90565b6000610644338484610e4a565b5060015b92915050565b60025490565b6000610661848484610f36565b60045433906001600160a01b031615806107795750600480546040805163c5c2fb6b60e01b815290516001600160a01b039092169263c5c2fb6b928282019260209290829003018186803b1580156106b857600080fd5b505afa1580156106cc573d6000803e3d6000fd5b505050506040513d60208110156106e257600080fd5b50516040805163a9771afd60e01b81526001600160a01b0384811660048301529151919092169163a9771afd916024808301926020929190829003018186803b15801561072e57600080fd5b505afa158015610742573d6000803e3d6000fd5b505050506040513d602081101561075857600080fd5b505180156107775750806001600160a01b0316846001600160a01b0316145b155b1561081b5761081b85826107ee600160008a6001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002054876040518060600160405280602881526020016112896028913961107e565b6001600160a01b03808a166000908152600160209081526040808320938916835292905220819055610e4a565b506001949350505050565b60035490565b600254610873576040805162461bcd60e51b815260206004820152601060248201526f496e6974206e6f742063616c6c65642160801b604482015290519081900360640190fd5b6004546001600160a01b0316158061089557506004546001600160a01b031633145b6004546001600160a01b03166108e0576040518060400160405280601d81526020017f4f6e6c792050726f78792063616e20746f67676c6520697473656c662100000081525061090c565b6040518060400160405280601281526020017150726f787920616c7265616479207365742160701b8152505b906109955760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561095a578181015183820152602001610942565b50505050905090810190601f1680156109875780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506004546001600160a01b0316156109ae5760006109b0565b335b600480546001600160a01b0319166001600160a01b0392909216919091179055565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610644918590610a0890866110d8565b610e4a565b610a54600080336001600160a01b03166001600160a01b0316815260200190815260200160002054826040518060600160405280602881526020016112196028913961107e565b600080336001600160a01b03166001600160a01b0316815260200190815260200160002081905550610aa1600254826040518060600160405280602d81526020016111ec602d913961107e565b60025560408051828152905160009133916000805160206112b18339815191529181900360200190a350565b6001600160a01b031660009081526020819052604090205490565b60025415610b34576040805162461bcd60e51b8152602060048201526014602482015273496e697420616c72656164792063616c6c65642160601b604482015290519081900360640190fd5b8351610b47906005906020870190611130565b508251610b5b906006906020860190611130565b506003829055600a82900a81026002819055336000818152602081815260409182902084905581519384529051919230926000805160206112b1833981519152929181900390910190a350505050565b6004546001600160a01b031690565b60068054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561062c5780601f106106015761010080835404028352916020019161062c565b6004805460408051633380ac3560e11b815290516001600160a01b0390921692636701586a928282019260209290829003018186803b158015610c5d57600080fd5b505afa158015610c71573d6000803e3d6000fd5b505050506040513d6020811015610c8757600080fd5b5051604080516318c8e99960e11b815233600482015290516001600160a01b0390921691633191d33291602480820192602092909190829003018186803b158015610cd157600080fd5b505afa158015610ce5573d6000803e3d6000fd5b505050506040513d6020811015610cfb57600080fd5b5051610d45576040805162461bcd60e51b8152602060048201526014602482015273556e617574686f72697a6564206163636573732160601b604482015290519081900360640190fd5b610d51600254826110d8565b6002556004546001600160a01b0316600090815260208190526040902054610d7990826110d8565b600480546001600160a01b039081166000908152602081815260408083209590955592548451868152945192169390926000805160206112b183398151915292918290030190a350565b3360008181526001602090815260408083206001600160a01b0387168452825280832054815160608101909252602580835293946106449490938893610a089392899261131a9083013961107e565b6000610644338484610f36565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b038316610e8f5760405162461bcd60e51b81526004018080602001828103825260248152602001806112f66024913960400191505060405180910390fd5b6001600160a01b038216610ed45760405162461bcd60e51b81526004018080602001828103825260228152602001806112416022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610f7b5760405162461bcd60e51b81526004018080602001828103825260258152602001806112d16025913960400191505060405180910390fd5b6001600160a01b038216610fc05760405162461bcd60e51b81526004018080602001828103825260238152602001806111c96023913960400191505060405180910390fd5b611007600080856001600160a01b03166001600160a01b0316815260200190815260200160002054826040518060600160405280602681526020016112636026913961107e565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461103690826110d8565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716926000805160206112b183398151915292918290030190a3505050565b600081848411156110d05760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561095a578181015183820152602001610942565b505050900390565b81810182811015610648576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061117157805160ff191683800117855561119e565b8280016001018555821561119e579182015b8281111561119e578251825591602001919060010190611183565b506111aa9291506111ae565b5090565b61063491905b808211156111aa57600081556001016111b456fe45524332303a207472616e7366657220746f20746865207a65726f2061646472657373566f74696e67546f6b656e3a206275726e20616d6f756e74206578636565647320746f74616c20737570706c79566f74696e67546f6b656e3a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212201cd1d726efd29883483d0d732966c74cd84d917c364530256c3171106fca533664736f6c634300060a0033

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

000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000025e1663000000000000000000000000000000000000000000000000000000000000000664666f68756200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005627569646c000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : name (string): dfohub
Arg [1] : symbol (string): buidl
Arg [2] : decimals (uint256): 18
Arg [3] : totalSupply (uint256): 39720547

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [3] : 00000000000000000000000000000000000000000000000000000000025e1663
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [5] : 64666f6875620000000000000000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [7] : 627569646c000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

196:5371:12:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1215:26;;;-1:-1:-1;;;1215:26:12;;;;;;;;;;;;-1:-1:-1;;;1215:26:12;;;;;;;;;;;;;;196:5371;;;;1348:89;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2181:156;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;2181:156:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;1639:98;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;2343:575;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;2343:575:12;;;;;;;;;;;;;;;;;:::i;1542:91::-;;;;;;;;;;;;;:::i;4548:307::-;;;;;;;;;;;;;:::i;:::-;;2924:213;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;2924:213:12;;;;;;;;:::i;5246:319::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5246:319:12;;:::i;1743:117::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1743:117:12;-1:-1:-1;;;;;1743:117:12;;:::i;750:422::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;750:422:12;;;;;;;;-1:-1:-1;750:422:12;;-1:-1:-1;;750:422:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;750:422:12;;-1:-1:-1;;750:422:12;;;-1:-1:-1;;;750:422:12;;;;:::i;1254:88::-;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;1254:88:12;;;;;;;;;;;;;;1443:93;;;;;;;;;;;;;:::i;4861:379::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4861:379:12;;:::i;3143:264::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;3143:264:12;;;;;;;;:::i;1866:162::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;1866:162:12;;;;;;;;:::i;2034:141::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;2034:141:12;;;;;;;;;;:::i;1348:89::-;1425:5;1418:12;;;;;;;;-1:-1:-1;;1418:12:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1393:13;;1418:12;;1425:5;;1418:12;;1425:5;1418:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1348:89;;:::o;2181:156::-;2256:4;2272:37;2281:10;2293:7;2302:6;2272:8;:37::i;:::-;-1:-1:-1;2326:4:12;2181:156;;;;;:::o;1639:98::-;1718:12;;1639:98;:::o;2343:575::-;2441:4;2457:36;2467:6;2475:9;2486:6;2457:9;:36::i;:::-;2545:6;;2522:10;;-1:-1:-1;;;;;2545:6:12;:20;;:173;;-1:-1:-1;2614:6:12;;;2604:61;;;-1:-1:-1;;;2604:61:12;;;;-1:-1:-1;;;;;2614:6:12;;;;2604:59;;:61;;;;;;;;;;;;2614:6;2604:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2604:61:12;2571:121;;;-1:-1:-1;;;2571:121:12;;-1:-1:-1;;;;;2571:121:12;;;;;;;;;:111;;;;;;;:121;;;;;2604:61;;2571:121;;;;;;;:111;:121;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2571:121:12;:146;;;;;2709:8;-1:-1:-1;;;;;2696:21:12;:9;-1:-1:-1;;;;;2696:21:12;;2571:146;2569:149;2545:173;2542:349;;;2734:146;2743:6;2751:8;2793:86;2797:11;:19;2809:6;-1:-1:-1;;;;;2797:19:12;-1:-1:-1;;;;;2797:19:12;;;;;;;;;;;;:29;2817:8;-1:-1:-1;;;;;2797:29:12;-1:-1:-1;;;;;2797:29:12;;;;;;;;;;;;;2828:6;2793:86;;;;;;;;;;;;;;;;;:3;:86::i;:::-;-1:-1:-1;;;;;2761:19:12;;;;;;;:11;:19;;;;;;;;:29;;;;;;;;;:118;;;2734:8;:146::i;:::-;-1:-1:-1;2907:4:12;;2343:575;-1:-1:-1;;;;2343:575:12:o;1542:91::-;1617:9;;1542:91;:::o;4548:307::-;4602:12;;4594:46;;;;;-1:-1:-1;;;4594:46:12;;;;;;;;;;;;-1:-1:-1;;;4594:46:12;;;;;;;;;;;;;;;4658:6;;-1:-1:-1;;;;;4658:6:12;:20;;:44;;-1:-1:-1;4682:6:12;;-1:-1:-1;;;;;4682:6:12;4692:10;4682:20;4658:44;4704:6;;-1:-1:-1;;;;;4704:6:12;:77;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;4704:77:12;;;;4650:132;;;;;-1:-1:-1;;;4650:132:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4801:6:12;;-1:-1:-1;;;;;4801:6:12;:20;:47;;4846:1;4801:47;;;4825:10;4801:47;4792:6;:56;;-1:-1:-1;;;;;;4792:56:12;-1:-1:-1;;;;;4792:56:12;;;;;;;;;;4548:307::o;2924:213::-;3038:10;3013:4;3063:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;3063:32:12;;;;;;;;;;3013:4;;3029:80;;3050:7;;3059:49;;3097:10;3059:3;:49::i;:::-;3029:8;:80::i;5246:319::-;5326:78;5330:9;:21;5340:10;-1:-1:-1;;;;;5330:21:12;-1:-1:-1;;;;;5330:21:12;;;;;;;;;;;;;5353:6;5326:78;;;;;;;;;;;;;;;;;:3;:78::i;:::-;5302:9;:21;5312:10;-1:-1:-1;;;;;5302:21:12;-1:-1:-1;;;;;5302:21:12;;;;;;;;;;;;:102;;;;5429:74;5433:12;;5447:6;5429:74;;;;;;;;;;;;;;;;;:3;:74::i;:::-;5414:12;:89;5518:40;;;;;;;;5547:1;;5527:10;;-1:-1:-1;;;;;;;;;;;5518:40:12;;;;;;;;5246:319;:::o;1743:117::-;-1:-1:-1;;;;;1835:18:12;1809:7;1835:18;;;;;;;;;;;;1743:117::o;750:422::-;879:12;;:17;871:50;;;;;-1:-1:-1;;;871:50:12;;;;;;;;;;;;-1:-1:-1;;;871:50:12;;;;;;;;;;;;;;;932:12;;;;:5;;:12;;;;;:::i;:::-;-1:-1:-1;954:16:12;;;;:7;;:16;;;;;:::i;:::-;-1:-1:-1;980:9:12;:20;;;1040:2;:14;;;1025:30;;1010:12;:45;;;1075:10;-1:-1:-1;1065:21:12;;;;;;;;;;;;:36;;;1116:49;;;;;;;1075:10;;1133:4;;-1:-1:-1;;;;;;;;;;;1116:49:12;;;;;;;;;;750:422;;;;:::o;1254:88::-;1329:6;;-1:-1:-1;;;;;1329:6:12;1254:88;:::o;1443:93::-;1522:7;1515:14;;;;;;;;-1:-1:-1;;1515:14:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1490:13;;1515:14;;1522:7;;1515:14;;1522:7;1515:14;;;;;;;;;;;;;;;;;;;;;;;;4861:379;4962:6;;;4952:55;;;-1:-1:-1;;;4952:55:12;;;;-1:-1:-1;;;;;4962:6:12;;;;4952:53;;:55;;;;;;;;;;;;4962:6;4952:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4952:55:12;4925:121;;;-1:-1:-1;;;4925:121:12;;5035:10;4925:121;;;;;;-1:-1:-1;;;;;4925:109:12;;;;;;:121;;;;;4952:55;;4925:121;;;;;;;;:109;:121;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4925:121:12;4917:154;;;;;-1:-1:-1;;;4917:154:12;;;;;;;;;;;;-1:-1:-1;;;4917:154:12;;;;;;;;;;;;;;;5097:25;5101:12;;5115:6;5097:3;:25::i;:::-;5082:12;:40;5166:6;;-1:-1:-1;;;;;5166:6:12;5156:9;:17;;;;;;;;;;;5152:30;;5175:6;5152:3;:30::i;:::-;5142:6;;;-1:-1:-1;;;;;5142:6:12;;;5132:9;:17;;;;;;;;;;;:50;;;;5218:6;;5197:36;;;;;;;5218:6;;;5132:9;;-1:-1:-1;;;;;;;;;;;5197:36:12;;;;;;;;4861:379;:::o;3143:264::-;3262:10;3237:4;3287:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;3287:32:12;;;;;;;;;;3283:95;;;;;;;;;;;;3237:4;;3253:126;;3262:10;;3274:7;;3283:95;;3287:32;3321:15;;3283:95;;;;;:3;:95::i;1866:162::-;1944:4;1960:40;1970:10;1982:9;1993:6;1960:9;:40::i;2034:141::-;-1:-1:-1;;;;;2141:18:12;;;2115:7;2141:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;2034:141::o;3885:332::-;-1:-1:-1;;;;;3978:19:12;;3970:68;;;;-1:-1:-1;;;3970:68:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4056:21:12;;4048:68;;;;-1:-1:-1;;;4048:68:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4127:18:12;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;4178:32;;;;;;;;;;;;;;;;;3885:332;;;:::o;3413:466::-;-1:-1:-1;;;;;3510:20:12;;3502:70;;;;-1:-1:-1;;;3502:70:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3590:23:12;;3582:71;;;;-1:-1:-1;;;3582:71:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3684:72;3688:9;:17;3698:6;-1:-1:-1;;;;;3688:17:12;-1:-1:-1;;;;;3688:17:12;;;;;;;;;;;;;3707:6;3684:72;;;;;;;;;;;;;;;;;:3;:72::i;:::-;-1:-1:-1;;;;;3664:17:12;;;:9;:17;;;;;;;;;;;:92;;;;3793:20;;;;;;;3789:33;;3815:6;3789:3;:33::i;:::-;-1:-1:-1;;;;;3766:20:12;;;:9;:20;;;;;;;;;;;;:56;;;;3837:35;;;;;;;3766:20;;3837:35;;;;-1:-1:-1;;;;;;;;;;;3837:35:12;;;;;;;;3413:466;;;:::o;4380:162::-;4466:9;4503:12;4495:6;;;;4487:29;;;;-1:-1:-1;;;4487:29:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;4530:5:12;;;4380:162::o;4223:151::-;4306:5;;;4329:6;;;;4321:46;;;;;-1:-1:-1;;;4321:46:12;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;

Swarm Source

ipfs://1cd1d726efd29883483d0d732966c74cd84d917c364530256c3171106fca5336

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  ]

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.