false
true
0

Contract Address Details

0x4b20D07da954bA6735a57B253E0653b1b0e89cC5

Token
NVA (NVA)
Creator
0x465f52–14aecc at 0xa2e1aa–4e16cd
Balance
0 PLS ( )
Tokens
Fetching tokens...
Transactions
1,880 Transactions
Transfers
0 Transfers
Gas Used
0
Last Balance Update
26536771
Warning! Contract bytecode has been changed and doesn't match the verified one. Therefore, interaction with this smart contract may be risky.
This contract has been partially verified via Sourcify. View contract in Sourcify repository
Contract name:
NVA




Optimization enabled
false
Compiler version
v0.8.7+commit.e28d00a7




EVM Version
london




Verified at
2026-05-15T15:35:44.443813Z

NVA.sol

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;


interface IERC20 {
	event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);

    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
	function totalSupply() external view returns (uint256);
	function balanceOf(address account) external view returns (uint256);
	function allowance(address owner, address spender) external view returns (uint256);
	function approve(address spender, uint256 amount) external returns (bool);
	function transfer(address recipient, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
}


contract ERC20 is IERC20 {
    string private _name;
    string private _symbol;
    uint8 private _decimals;
    uint256 private _totalSupply;
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    
    constructor(string memory name_, string memory symbol_, uint8 decimals_) {
        _name = name_;
        _symbol = symbol_;
        _decimals = decimals_;
    }

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

    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }
    
    function decimals() public view virtual override returns (uint8) {
        return _decimals;
    }

    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }
    
    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }
    
    function allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }
    
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(msg.sender, spender, amount);
        return true;
    }
    
    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(msg.sender, recipient, amount);
        return true;
    }
	
    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);
        uint256 currentAllowance = _allowances[sender][msg.sender];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        unchecked {
            _approve(sender, msg.sender, currentAllowance - amount);
        }
        return true;
    }
    
    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(msg.sender, spender, _allowances[msg.sender][spender] + addedValue);
        return true;
    }
    
    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        uint256 currentAllowance = _allowances[msg.sender][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(msg.sender, spender, currentAllowance - subtractedValue);
        }
        return true;
    }
    
    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");
        _beforeTokenTransfer(address(0), account, amount);
        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);
        _afterTokenTransfer(address(0), account, amount);
    }
    
    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");
        _beforeTokenTransfer(account, address(0), amount);
        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
        }
        _totalSupply -= amount;
        emit Transfer(account, address(0), amount);
        _afterTokenTransfer(account, address(0), amount);
    }
    
    function _approve(address owner, address spender, uint256 amount) internal virtual {
        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 _transfer(address sender, address recipient, uint256 amount) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        _beforeTokenTransfer(sender, recipient, amount);
        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[sender] = senderBalance - amount;
        }
        _balances[recipient] += amount;
        emit Transfer(sender, recipient, amount);
        _afterTokenTransfer(sender, recipient, amount);
    }
    
    function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual {}
    function _afterTokenTransfer(address from, address to, uint256 amount) internal virtual {}
}


contract NVA is ERC20 {
    address private _owner;
    bool private _locked = false;
    
    event DepositEther(address indexed fromAddress, uint256 valueEth);
	event WithdrawEther(address indexed fromAddress, uint256 valueEth);

    constructor() ERC20("NVA", "NVA", 18) {
		uint256 initTotalSupply = uint256(10000000000)*(uint256(10)**18);
		_mint(msg.sender, initTotalSupply);
		_owner = msg.sender;
	}
	
    function owner() public view returns (address) {
        return _owner;
    }
	
    function getBalanceEther() public view returns (uint256) {
        return address(this).balance;
    }
	
    function depositEther() public payable {
        emit DepositEther(msg.sender, msg.value);
    }
    
    function withdrawEther(address payable recipient, uint256 amount) public {
        require(!_locked, "Reentrant call detected!");
        _locked = true;
        require(msg.sender == _owner);
        require(address(this).balance >= amount, "Address: insufficient balance");
        (bool success, ) = recipient.call{value: amount}("");
        require(success, "Address: unable to send value, recipient may have reverted");
		emit WithdrawEther(recipient, amount);
        _locked = false;
    }
    
    fallback() external payable {
		emit DepositEther(msg.sender, msg.value);
	}
	receive() external payable {
		emit DepositEther(msg.sender, msg.value);
	}
}
        

Compiler Settings

{"remappings":[],"optimizer":{"runs":200,"enabled":false},"metadata":{"bytecodeHash":"ipfs"},"libraries":{},"evmVersion":"london","compilationTarget":{"NVA.sol":"NVA"}}
              

Contract ABI

[{"type":"constructor","stateMutability":"nonpayable","inputs":[]},{"type":"event","name":"Approval","inputs":[{"type":"address","name":"owner","internalType":"address","indexed":true},{"type":"address","name":"spender","internalType":"address","indexed":true},{"type":"uint256","name":"value","internalType":"uint256","indexed":false}],"anonymous":false},{"type":"event","name":"DepositEther","inputs":[{"type":"address","name":"fromAddress","internalType":"address","indexed":true},{"type":"uint256","name":"valueEth","internalType":"uint256","indexed":false}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"type":"address","name":"from","internalType":"address","indexed":true},{"type":"address","name":"to","internalType":"address","indexed":true},{"type":"uint256","name":"value","internalType":"uint256","indexed":false}],"anonymous":false},{"type":"event","name":"WithdrawEther","inputs":[{"type":"address","name":"fromAddress","internalType":"address","indexed":true},{"type":"uint256","name":"valueEth","internalType":"uint256","indexed":false}],"anonymous":false},{"type":"fallback","stateMutability":"payable"},{"type":"function","stateMutability":"view","outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"allowance","inputs":[{"type":"address","name":"owner","internalType":"address"},{"type":"address","name":"spender","internalType":"address"}]},{"type":"function","stateMutability":"nonpayable","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"approve","inputs":[{"type":"address","name":"spender","internalType":"address"},{"type":"uint256","name":"amount","internalType":"uint256"}]},{"type":"function","stateMutability":"view","outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"balanceOf","inputs":[{"type":"address","name":"account","internalType":"address"}]},{"type":"function","stateMutability":"view","outputs":[{"type":"uint8","name":"","internalType":"uint8"}],"name":"decimals","inputs":[]},{"type":"function","stateMutability":"nonpayable","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"decreaseAllowance","inputs":[{"type":"address","name":"spender","internalType":"address"},{"type":"uint256","name":"subtractedValue","internalType":"uint256"}]},{"type":"function","stateMutability":"payable","outputs":[],"name":"depositEther","inputs":[]},{"type":"function","stateMutability":"view","outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"getBalanceEther","inputs":[]},{"type":"function","stateMutability":"nonpayable","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"increaseAllowance","inputs":[{"type":"address","name":"spender","internalType":"address"},{"type":"uint256","name":"addedValue","internalType":"uint256"}]},{"type":"function","stateMutability":"view","outputs":[{"type":"string","name":"","internalType":"string"}],"name":"name","inputs":[]},{"type":"function","stateMutability":"view","outputs":[{"type":"address","name":"","internalType":"address"}],"name":"owner","inputs":[]},{"type":"function","stateMutability":"view","outputs":[{"type":"string","name":"","internalType":"string"}],"name":"symbol","inputs":[]},{"type":"function","stateMutability":"view","outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"totalSupply","inputs":[]},{"type":"function","stateMutability":"nonpayable","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"transfer","inputs":[{"type":"address","name":"recipient","internalType":"address"},{"type":"uint256","name":"amount","internalType":"uint256"}]},{"type":"function","stateMutability":"nonpayable","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"transferFrom","inputs":[{"type":"address","name":"sender","internalType":"address"},{"type":"address","name":"recipient","internalType":"address"},{"type":"uint256","name":"amount","internalType":"uint256"}]},{"type":"function","stateMutability":"nonpayable","outputs":[],"name":"withdrawEther","inputs":[{"type":"address","name":"recipient","internalType":"address payable"},{"type":"uint256","name":"amount","internalType":"uint256"}]},{"type":"receive","stateMutability":"payable"}]
              

Contract Creation Code

Verify & Publish
0x60806040526000600660146101000a81548160ff0219169083151502179055503480156200002c57600080fd5b506040518060400160405280600381526020017f4e564100000000000000000000000000000000000000000000000000000000008152506040518060400160405280600381526020017f4e5641000000000000000000000000000000000000000000000000000000000081525060128260009080519060200190620000b3929190620002ef565b508160019080519060200190620000cc929190620002ef565b5080600260006101000a81548160ff021916908360ff16021790555050505060006012600a620000fd9190620004df565b6402540be4006200010f91906200061c565b90506200012333826200016b60201b60201c565b33600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506200075e565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415620001de576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001d590620003d7565b60405180910390fd5b620001f260008383620002e560201b60201c565b806003600082825462000206919062000427565b9250508190555080600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546200025e919062000427565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620002c59190620003f9565b60405180910390a3620002e160008383620002ea60201b60201c565b5050565b505050565b505050565b828054620002fd9062000694565b90600052602060002090601f0160209004810192826200032157600085556200036d565b82601f106200033c57805160ff19168380011785556200036d565b828001600101855582156200036d579182015b828111156200036c5782518255916020019190600101906200034f565b5b5090506200037c919062000380565b5090565b5b808211156200039b57600081600090555060010162000381565b5090565b6000620003ae601f8362000416565b9150620003bb8262000735565b602082019050919050565b620003d1816200067d565b82525050565b60006020820190508181036000830152620003f2816200039f565b9050919050565b6000602082019050620004106000830184620003c6565b92915050565b600082825260208201905092915050565b600062000434826200067d565b915062000441836200067d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620004795762000478620006ca565b5b828201905092915050565b6000808291508390505b6001851115620004d657808604811115620004ae57620004ad620006ca565b5b6001851615620004be5780820291505b8081029050620004ce8562000728565b94506200048e565b94509492505050565b6000620004ec826200067d565b9150620004f98362000687565b9250620005287fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000530565b905092915050565b60008262000542576001905062000615565b8162000552576000905062000615565b81600181146200056b57600281146200057657620005ac565b600191505062000615565b60ff8411156200058b576200058a620006ca565b5b8360020a915084821115620005a557620005a4620006ca565b5b5062000615565b5060208310610133831016604e8410600b8410161715620005e65782820a905083811115620005e057620005df620006ca565b5b62000615565b620005f5848484600162000484565b925090508184048111156200060f576200060e620006ca565b5b81810290505b9392505050565b600062000629826200067d565b915062000636836200067d565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620006725762000671620006ca565b5b828202905092915050565b6000819050919050565b600060ff82169050919050565b60006002820490506001821680620006ad57607f821691505b60208210811415620006c457620006c3620006f9565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008160011c9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b611a73806200076e6000396000f3fe6080604052600436106100ec5760003560e01c806370a082311161008a578063a457c2d711610059578063a457c2d71461038f578063a9059cbb146103cc578063d8a4095314610409578063dd62ed3e1461043457610141565b806370a08231146102f25780638da5cb5b1461032f57806395d89b411461035a57806398ea5fca1461038557610141565b806323b872dd116100c657806323b872dd14610224578063313ce56714610261578063395093511461028c578063522f6815146102c957610141565b806306fdde0314610191578063095ea7b3146101bc57806318160ddd146101f957610141565b36610141573373ffffffffffffffffffffffffffffffffffffffff167fe628a607143b255f52afd0900e0d9630dd009c2f2635cd1e28c7aeeeff940802346040516101379190611538565b60405180910390a2005b3373ffffffffffffffffffffffffffffffffffffffff167fe628a607143b255f52afd0900e0d9630dd009c2f2635cd1e28c7aeeeff940802346040516101879190611538565b60405180910390a2005b34801561019d57600080fd5b506101a6610471565b6040516101b391906113d6565b60405180910390f35b3480156101c857600080fd5b506101e360048036038101906101de9190611155565b610503565b6040516101f091906113bb565b60405180910390f35b34801561020557600080fd5b5061020e61051a565b60405161021b9190611538565b60405180910390f35b34801561023057600080fd5b5061024b60048036038101906102469190611102565b610524565b60405161025891906113bb565b60405180910390f35b34801561026d57600080fd5b5061027661060e565b6040516102839190611553565b60405180910390f35b34801561029857600080fd5b506102b360048036038101906102ae9190611155565b610625565b6040516102c091906113bb565b60405180910390f35b3480156102d557600080fd5b506102f060048036038101906102eb9190611082565b6106c3565b005b3480156102fe57600080fd5b5061031960048036038101906103149190611055565b6108e5565b6040516103269190611538565b60405180910390f35b34801561033b57600080fd5b5061034461092e565b60405161035191906113a0565b60405180910390f35b34801561036657600080fd5b5061036f610958565b60405161037c91906113d6565b60405180910390f35b61038d6109ea565b005b34801561039b57600080fd5b506103b660048036038101906103b19190611155565b610a3a565b6040516103c391906113bb565b60405180910390f35b3480156103d857600080fd5b506103f360048036038101906103ee9190611155565b610b17565b60405161040091906113bb565b60405180910390f35b34801561041557600080fd5b5061041e610b2e565b60405161042b9190611538565b60405180910390f35b34801561044057600080fd5b5061045b600480360381019061045691906110c2565b610b36565b6040516104689190611538565b60405180910390f35b60606000805461048090611685565b80601f01602080910402602001604051908101604052809291908181526020018280546104ac90611685565b80156104f95780601f106104ce576101008083540402835291602001916104f9565b820191906000526020600020905b8154815290600101906020018083116104dc57829003601f168201915b5050505050905090565b6000610510338484610bbd565b6001905092915050565b6000600354905090565b6000610531848484610d88565b6000600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156105f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105ec906114b8565b60405180910390fd5b6106028533858403610bbd565b60019150509392505050565b6000600260009054906101000a900460ff16905090565b60006106b9338484600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546106b49190611595565b610bbd565b6001905092915050565b600660149054906101000a900460ff1615610713576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161070a90611418565b60405180910390fd5b6001600660146101000a81548160ff021916908315150217905550600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461078857600080fd5b804710156107cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c290611498565b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff16826040516107f19061138b565b60006040518083038185875af1925050503d806000811461082e576040519150601f19603f3d011682016040523d82523d6000602084013e610833565b606091505b5050905080610877576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161086e90611478565b60405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff167fdb35132c111efe920cede025e819975671cfd1b8fcc1174762c8670c4e94c211836040516108bd9190611538565b60405180910390a26000600660146101000a81548160ff021916908315150217905550505050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606001805461096790611685565b80601f016020809104026020016040519081016040528092919081815260200182805461099390611685565b80156109e05780601f106109b5576101008083540402835291602001916109e0565b820191906000526020600020905b8154815290600101906020018083116109c357829003601f168201915b5050505050905090565b3373ffffffffffffffffffffffffffffffffffffffff167fe628a607143b255f52afd0900e0d9630dd009c2f2635cd1e28c7aeeeff94080234604051610a309190611538565b60405180910390a2565b600080600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610aff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610af690611518565b60405180910390fd5b610b0c3385858403610bbd565b600191505092915050565b6000610b24338484610d88565b6001905092915050565b600047905090565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610c2d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c24906114f8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610c9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9490611438565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610d7b9190611538565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610df8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610def906114d8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5f906113f8565b60405180910390fd5b610e7383838361100c565b6000600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610efa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ef190611458565b60405180910390fd5b818103600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f8f9190611595565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610ff39190611538565b60405180910390a3611006848484611011565b50505050565b505050565b505050565b600081359050611025816119f8565b92915050565b60008135905061103a81611a0f565b92915050565b60008135905061104f81611a26565b92915050565b60006020828403121561106b5761106a611715565b5b600061107984828501611016565b91505092915050565b6000806040838503121561109957611098611715565b5b60006110a78582860161102b565b92505060206110b885828601611040565b9150509250929050565b600080604083850312156110d9576110d8611715565b5b60006110e785828601611016565b92505060206110f885828601611016565b9150509250929050565b60008060006060848603121561111b5761111a611715565b5b600061112986828701611016565b935050602061113a86828701611016565b925050604061114b86828701611040565b9150509250925092565b6000806040838503121561116c5761116b611715565b5b600061117a85828601611016565b925050602061118b85828601611040565b9150509250929050565b61119e816115eb565b82525050565b6111ad8161160f565b82525050565b60006111be8261156e565b6111c88185611584565b93506111d8818560208601611652565b6111e18161171a565b840191505092915050565b60006111f9602383611584565b91506112048261172b565b604082019050919050565b600061121c601883611584565b91506112278261177a565b602082019050919050565b600061123f602283611584565b915061124a826117a3565b604082019050919050565b6000611262602683611584565b915061126d826117f2565b604082019050919050565b6000611285603a83611584565b915061129082611841565b604082019050919050565b60006112a8601d83611584565b91506112b382611890565b602082019050919050565b60006112cb602883611584565b91506112d6826118b9565b604082019050919050565b60006112ee602583611584565b91506112f982611908565b604082019050919050565b6000611311600083611579565b915061131c82611957565b600082019050919050565b6000611334602483611584565b915061133f8261195a565b604082019050919050565b6000611357602583611584565b9150611362826119a9565b604082019050919050565b6113768161163b565b82525050565b61138581611645565b82525050565b600061139682611304565b9150819050919050565b60006020820190506113b56000830184611195565b92915050565b60006020820190506113d060008301846111a4565b92915050565b600060208201905081810360008301526113f081846111b3565b905092915050565b60006020820190508181036000830152611411816111ec565b9050919050565b600060208201905081810360008301526114318161120f565b9050919050565b6000602082019050818103600083015261145181611232565b9050919050565b6000602082019050818103600083015261147181611255565b9050919050565b6000602082019050818103600083015261149181611278565b9050919050565b600060208201905081810360008301526114b18161129b565b9050919050565b600060208201905081810360008301526114d1816112be565b9050919050565b600060208201905081810360008301526114f1816112e1565b9050919050565b6000602082019050818103600083015261151181611327565b9050919050565b600060208201905081810360008301526115318161134a565b9050919050565b600060208201905061154d600083018461136d565b92915050565b6000602082019050611568600083018461137c565b92915050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b60006115a08261163b565b91506115ab8361163b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156115e0576115df6116b7565b5b828201905092915050565b60006115f68261161b565b9050919050565b60006116088261161b565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015611670578082015181840152602081019050611655565b8381111561167f576000848401525b50505050565b6000600282049050600182168061169d57607f821691505b602082108114156116b1576116b06116e6565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f5265656e7472616e742063616c6c206465746563746564210000000000000000600082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260008201527f6563697069656e74206d61792068617665207265766572746564000000000000602082015250565b7f416464726573733a20696e73756666696369656e742062616c616e6365000000600082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b50565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b611a01816115eb565b8114611a0c57600080fd5b50565b611a18816115fd565b8114611a2357600080fd5b50565b611a2f8161163b565b8114611a3a57600080fd5b5056fea2646970667358221220239cd501fc5ef6000a39756252b7a2fdbf3d902d333b40fd347c2d7d5f6fa2f464736f6c63430008070033

Deployed ByteCode

0x6080604052600436106100ec5760003560e01c806370a082311161008a578063a457c2d711610059578063a457c2d71461038f578063a9059cbb146103cc578063d8a4095314610409578063dd62ed3e1461043457610141565b806370a08231146102f25780638da5cb5b1461032f57806395d89b411461035a57806398ea5fca1461038557610141565b806323b872dd116100c657806323b872dd14610224578063313ce56714610261578063395093511461028c578063522f6815146102c957610141565b806306fdde0314610191578063095ea7b3146101bc57806318160ddd146101f957610141565b36610141573373ffffffffffffffffffffffffffffffffffffffff167fe628a607143b255f52afd0900e0d9630dd009c2f2635cd1e28c7aeeeff940802346040516101379190611538565b60405180910390a2005b3373ffffffffffffffffffffffffffffffffffffffff167fe628a607143b255f52afd0900e0d9630dd009c2f2635cd1e28c7aeeeff940802346040516101879190611538565b60405180910390a2005b34801561019d57600080fd5b506101a6610471565b6040516101b391906113d6565b60405180910390f35b3480156101c857600080fd5b506101e360048036038101906101de9190611155565b610503565b6040516101f091906113bb565b60405180910390f35b34801561020557600080fd5b5061020e61051a565b60405161021b9190611538565b60405180910390f35b34801561023057600080fd5b5061024b60048036038101906102469190611102565b610524565b60405161025891906113bb565b60405180910390f35b34801561026d57600080fd5b5061027661060e565b6040516102839190611553565b60405180910390f35b34801561029857600080fd5b506102b360048036038101906102ae9190611155565b610625565b6040516102c091906113bb565b60405180910390f35b3480156102d557600080fd5b506102f060048036038101906102eb9190611082565b6106c3565b005b3480156102fe57600080fd5b5061031960048036038101906103149190611055565b6108e5565b6040516103269190611538565b60405180910390f35b34801561033b57600080fd5b5061034461092e565b60405161035191906113a0565b60405180910390f35b34801561036657600080fd5b5061036f610958565b60405161037c91906113d6565b60405180910390f35b61038d6109ea565b005b34801561039b57600080fd5b506103b660048036038101906103b19190611155565b610a3a565b6040516103c391906113bb565b60405180910390f35b3480156103d857600080fd5b506103f360048036038101906103ee9190611155565b610b17565b60405161040091906113bb565b60405180910390f35b34801561041557600080fd5b5061041e610b2e565b60405161042b9190611538565b60405180910390f35b34801561044057600080fd5b5061045b600480360381019061045691906110c2565b610b36565b6040516104689190611538565b60405180910390f35b60606000805461048090611685565b80601f01602080910402602001604051908101604052809291908181526020018280546104ac90611685565b80156104f95780601f106104ce576101008083540402835291602001916104f9565b820191906000526020600020905b8154815290600101906020018083116104dc57829003601f168201915b5050505050905090565b6000610510338484610bbd565b6001905092915050565b6000600354905090565b6000610531848484610d88565b6000600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156105f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105ec906114b8565b60405180910390fd5b6106028533858403610bbd565b60019150509392505050565b6000600260009054906101000a900460ff16905090565b60006106b9338484600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546106b49190611595565b610bbd565b6001905092915050565b600660149054906101000a900460ff1615610713576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161070a90611418565b60405180910390fd5b6001600660146101000a81548160ff021916908315150217905550600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461078857600080fd5b804710156107cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c290611498565b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff16826040516107f19061138b565b60006040518083038185875af1925050503d806000811461082e576040519150601f19603f3d011682016040523d82523d6000602084013e610833565b606091505b5050905080610877576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161086e90611478565b60405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff167fdb35132c111efe920cede025e819975671cfd1b8fcc1174762c8670c4e94c211836040516108bd9190611538565b60405180910390a26000600660146101000a81548160ff021916908315150217905550505050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606001805461096790611685565b80601f016020809104026020016040519081016040528092919081815260200182805461099390611685565b80156109e05780601f106109b5576101008083540402835291602001916109e0565b820191906000526020600020905b8154815290600101906020018083116109c357829003601f168201915b5050505050905090565b3373ffffffffffffffffffffffffffffffffffffffff167fe628a607143b255f52afd0900e0d9630dd009c2f2635cd1e28c7aeeeff94080234604051610a309190611538565b60405180910390a2565b600080600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610aff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610af690611518565b60405180910390fd5b610b0c3385858403610bbd565b600191505092915050565b6000610b24338484610d88565b6001905092915050565b600047905090565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610c2d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c24906114f8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610c9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9490611438565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610d7b9190611538565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610df8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610def906114d8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5f906113f8565b60405180910390fd5b610e7383838361100c565b6000600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610efa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ef190611458565b60405180910390fd5b818103600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f8f9190611595565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610ff39190611538565b60405180910390a3611006848484611011565b50505050565b505050565b505050565b600081359050611025816119f8565b92915050565b60008135905061103a81611a0f565b92915050565b60008135905061104f81611a26565b92915050565b60006020828403121561106b5761106a611715565b5b600061107984828501611016565b91505092915050565b6000806040838503121561109957611098611715565b5b60006110a78582860161102b565b92505060206110b885828601611040565b9150509250929050565b600080604083850312156110d9576110d8611715565b5b60006110e785828601611016565b92505060206110f885828601611016565b9150509250929050565b60008060006060848603121561111b5761111a611715565b5b600061112986828701611016565b935050602061113a86828701611016565b925050604061114b86828701611040565b9150509250925092565b6000806040838503121561116c5761116b611715565b5b600061117a85828601611016565b925050602061118b85828601611040565b9150509250929050565b61119e816115eb565b82525050565b6111ad8161160f565b82525050565b60006111be8261156e565b6111c88185611584565b93506111d8818560208601611652565b6111e18161171a565b840191505092915050565b60006111f9602383611584565b91506112048261172b565b604082019050919050565b600061121c601883611584565b91506112278261177a565b602082019050919050565b600061123f602283611584565b915061124a826117a3565b604082019050919050565b6000611262602683611584565b915061126d826117f2565b604082019050919050565b6000611285603a83611584565b915061129082611841565b604082019050919050565b60006112a8601d83611584565b91506112b382611890565b602082019050919050565b60006112cb602883611584565b91506112d6826118b9565b604082019050919050565b60006112ee602583611584565b91506112f982611908565b604082019050919050565b6000611311600083611579565b915061131c82611957565b600082019050919050565b6000611334602483611584565b915061133f8261195a565b604082019050919050565b6000611357602583611584565b9150611362826119a9565b604082019050919050565b6113768161163b565b82525050565b61138581611645565b82525050565b600061139682611304565b9150819050919050565b60006020820190506113b56000830184611195565b92915050565b60006020820190506113d060008301846111a4565b92915050565b600060208201905081810360008301526113f081846111b3565b905092915050565b60006020820190508181036000830152611411816111ec565b9050919050565b600060208201905081810360008301526114318161120f565b9050919050565b6000602082019050818103600083015261145181611232565b9050919050565b6000602082019050818103600083015261147181611255565b9050919050565b6000602082019050818103600083015261149181611278565b9050919050565b600060208201905081810360008301526114b18161129b565b9050919050565b600060208201905081810360008301526114d1816112be565b9050919050565b600060208201905081810360008301526114f1816112e1565b9050919050565b6000602082019050818103600083015261151181611327565b9050919050565b600060208201905081810360008301526115318161134a565b9050919050565b600060208201905061154d600083018461136d565b92915050565b6000602082019050611568600083018461137c565b92915050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b60006115a08261163b565b91506115ab8361163b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156115e0576115df6116b7565b5b828201905092915050565b60006115f68261161b565b9050919050565b60006116088261161b565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015611670578082015181840152602081019050611655565b8381111561167f576000848401525b50505050565b6000600282049050600182168061169d57607f821691505b602082108114156116b1576116b06116e6565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f5265656e7472616e742063616c6c206465746563746564210000000000000000600082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260008201527f6563697069656e74206d61792068617665207265766572746564000000000000602082015250565b7f416464726573733a20696e73756666696369656e742062616c616e6365000000600082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b50565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b611a01816115eb565b8114611a0c57600080fd5b50565b611a18816115fd565b8114611a2357600080fd5b50565b611a2f8161163b565b8114611a3a57600080fd5b5056fea2646970667358221220239cd501fc5ef6000a39756252b7a2fdbf3d902d333b40fd347c2d7d5f6fa2f464736f6c63430008070033