Contract
0x2521Bc90B4f5Fb9a8D61278197e5FF5cDbc4FBF2
1
Contract Overview
Balance:
0 Ether
More Info
My Name Tag:
Not Available
TokenTracker:
[ Download CSV Export ]
Latest 25 internal transaction
[ Download CSV Export ]
Contract Name:
HEZ
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-02-12 */ // SPDX-License-Identifier: GPL-3.0 pragma solidity 0.6.12; interface IERC20 { 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); } library SafeMath { string private constant ERROR_ADD_OVERFLOW = "MATH:ADD_OVERFLOW"; string private constant ERROR_SUB_UNDERFLOW = "MATH:SUB_UNDERFLOW"; function add(uint256 x, uint256 y) internal pure returns (uint256 z) { require((z = x + y) >= x, ERROR_ADD_OVERFLOW); } function sub(uint256 x, uint256 y) internal pure returns (uint256 z) { require((z = x - y) <= x, ERROR_SUB_UNDERFLOW); } } // Lightweight token modelled after UNI-LP: // https://github.com/Uniswap/uniswap-v2-core/blob/v1.0.1/contracts/UniswapV2ERC20.sol // Adds: // - An exposed `burn()` // - ERC-3009 (`transferWithAuthorization()`) contract HEZ is IERC20 { using SafeMath for uint256; uint8 public constant decimals = 18; string public constant symbol = "HEZ"; string public constant name = "Hermez Network Token"; uint256 public constant initialBalance = 100_000_000 * (1e18); // bytes32 public constant PERMIT_TYPEHASH = // keccak256("Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)"); bytes32 public constant PERMIT_TYPEHASH = 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9; // bytes32 public constant TRANSFER_WITH_AUTHORIZATION_TYPEHASH = // keccak256("TransferWithAuthorization(address from,address to,uint256 value,uint256 validAfter,uint256 validBefore,bytes32 nonce)"); bytes32 public constant TRANSFER_WITH_AUTHORIZATION_TYPEHASH = 0x7c7c6cdb67a18743f49ec6fa9b35f50d52ed05cbed4cc592e13b44501c1a2267; // bytes32 public constant EIP712DOMAIN_HASH = // keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)") bytes32 public constant EIP712DOMAIN_HASH = 0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f; // bytes32 public constant NAME_HASH = // keccak256("Hermez Network Token") bytes32 public constant NAME_HASH = 0x64c0a41a0260272b78f2a5bd50d5ff7c1779bc3bba16dcff4550c7c642b0e4b4; // bytes32 public constant VERSION_HASH = // keccak256("1") bytes32 public constant VERSION_HASH = 0xc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6; uint256 public override totalSupply; mapping(address => uint256) public override balanceOf; mapping(address => mapping(address => uint256)) public override allowance; mapping(address => uint256) public nonces; mapping(address => mapping(bytes32 => bool)) public authorizationState; event Approval(address indexed owner, address indexed spender, uint256 value); event Transfer(address indexed from, address indexed to, uint256 value); event AuthorizationUsed(address indexed authorizer, bytes32 indexed nonce); constructor(address initialHolder) public { _mint(initialHolder, initialBalance); } function _validateSignedData( address signer, bytes32 encodeData, uint8 v, bytes32 r, bytes32 s ) internal view { bytes32 domainSeparator = keccak256( abi.encode( EIP712DOMAIN_HASH, NAME_HASH, VERSION_HASH, getChainId(), address(this) ) ); bytes32 digest = keccak256( abi.encodePacked("\x19\x01", domainSeparator, encodeData) ); address recoveredAddress = ecrecover(digest, v, r, s); // Explicitly disallow authorizations for address(0) as ecrecover returns address(0) on malformed messages require( recoveredAddress != address(0) && recoveredAddress == signer, "HEZ::_validateSignedData: INVALID_SIGNATURE" ); } function getChainId() public pure returns (uint256 chainId){ assembly { chainId := chainid() } } function _mint(address to, uint256 value) internal { totalSupply = totalSupply.add(value); balanceOf[to] = balanceOf[to].add(value); emit Transfer(address(0), to, value); } function _burn(address from, uint value) internal { // Balance is implicitly checked with SafeMath's underflow protection balanceOf[from] = balanceOf[from].sub(value); totalSupply = totalSupply.sub(value); emit Transfer(from, address(0), value); } function _approve( address owner, address spender, uint256 value ) private { allowance[owner][spender] = value; emit Approval(owner, spender, value); } function _transfer( address from, address to, uint256 value ) private { require( to != address(this) && to != address(0), "HEZ::_transfer: NOT_VALID_TRANSFER" ); // Balance is implicitly checked with SafeMath's underflow protection balanceOf[from] = balanceOf[from].sub(value); balanceOf[to] = balanceOf[to].add(value); emit Transfer(from, to, value); } function burn(uint256 value) external returns (bool) { _burn(msg.sender, value); return true; } function approve(address spender, uint256 value) external override returns (bool) { _approve(msg.sender, spender, value); return true; } function transfer(address to, uint256 value) external override returns (bool) { _transfer(msg.sender, to, value); return true; } function transferFrom( address from, address to, uint256 value ) external override returns (bool) { uint256 fromAllowance = allowance[from][msg.sender]; if (fromAllowance != uint256(-1)) { // Allowance is implicitly checked with SafeMath's underflow protection allowance[from][msg.sender] = fromAllowance.sub(value); } _transfer(from, to, value); return true; } function permit( address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s ) external { require(deadline >= block.timestamp, "HEZ::permit: AUTH_EXPIRED"); bytes32 encodeData = keccak256( abi.encode( PERMIT_TYPEHASH, owner, spender, value, nonces[owner]++, deadline ) ); _validateSignedData(owner, encodeData, v, r, s); _approve(owner, spender, value); } function transferWithAuthorization( address from, address to, uint256 value, uint256 validAfter, uint256 validBefore, bytes32 nonce, uint8 v, bytes32 r, bytes32 s ) external { require(block.timestamp > validAfter, "HEZ::transferWithAuthorization: AUTH_NOT_YET_VALID"); require(block.timestamp < validBefore, "HEZ::transferWithAuthorization: AUTH_EXPIRED"); require(!authorizationState[from][nonce], "HEZ::transferWithAuthorization: AUTH_ALREADY_USED"); bytes32 encodeData = keccak256( abi.encode( TRANSFER_WITH_AUTHORIZATION_TYPEHASH, from, to, value, validAfter, validBefore, nonce ) ); _validateSignedData(from, encodeData, v, r, s); authorizationState[from][nonce] = true; _transfer(from, to, value); emit AuthorizationUsed(from, nonce); } }
[{"inputs":[{"internalType":"address","name":"initialHolder","type":"address"}],"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":"authorizer","type":"address"},{"indexed":true,"internalType":"bytes32","name":"nonce","type":"bytes32"}],"name":"AuthorizationUsed","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":[],"name":"EIP712DOMAIN_HASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"NAME_HASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PERMIT_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TRANSFER_WITH_AUTHORIZATION_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"VERSION_HASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"authorizationState","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getChainId","outputs":[{"internalType":"uint256","name":"chainId","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"initialBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"permit","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":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"validAfter","type":"uint256"},{"internalType":"uint256","name":"validBefore","type":"uint256"},{"internalType":"bytes32","name":"nonce","type":"bytes32"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"transferWithAuthorization","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b506040516200147038038062001470833981810160405260208110156200003757600080fd5b505162000050816a52b7d2dcc80cd2e400000062000057565b50620001c2565b6200007381600054620000ff60201b62000b2a1790919060201c565b60009081556001600160a01b038316815260016020908152604090912054620000a791839062000b2a620000ff821b17901c565b6001600160a01b03831660008181526001602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6040805180820190915260118152704d4154483a4144445f4f564552464c4f5760781b60208201528183019083821015620001bb5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156200017f57818101518382015260200162000165565b50505050905090810190601f168015620001ad5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5092915050565b61129e80620001d26000396000f3fe608060405234801561001057600080fd5b50600436106101775760003560e01c806370a08231116100d8578063a9059cbb1161008c578063dd62ed3e11610066578063dd62ed3e1461041d578063e3ee160e14610458578063e94a0102146104c457610177565b8063a9059cbb1461037c578063c473af33146103b5578063d505accf146103bd57610177565b806395d89b41116100bd57806395d89b41146103645780639e4e73181461036c578063a0cc6a681461037457610177565b806370a08231146102fe5780637ecebe001461033157610177565b806323b872dd1161012f578063313ce56711610114578063313ce567146102bb5780633408e470146102d957806342966c68146102e157610177565b806323b872dd1461027057806330adf81f146102b357610177565b8063095ea7b311610160578063095ea7b31461021357806318160ddd1461026057806318369a2a1461026857610177565b806304622c2e1461017c57806306fdde0314610196575b600080fd5b6101846104fd565b60408051918252519081900360200190f35b61019e610521565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101d85781810151838201526020016101c0565b50505050905090810190601f1680156102055780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61024c6004803603604081101561022957600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813516906020013561055a565b604080519115158252519081900360200190f35b610184610570565b610184610576565b61024c6004803603606081101561028657600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160208101359091169060400135610585565b61018461062f565b6102c3610653565b6040805160ff9092168252519081900360200190f35b610184610658565b61024c600480360360208110156102f757600080fd5b503561065c565b6101846004803603602081101561031457600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610670565b6101846004803603602081101561034757600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610682565b61019e610694565b6101846106cd565b6101846106f1565b61024c6004803603604081101561039257600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135169060200135610715565b610184610722565b61041b600480360360e08110156103d357600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c00135610746565b005b6101846004803603604081101561043357600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135811691602001351661086d565b61041b600480360361012081101561046f57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160208101359091169060408101359060608101359060808101359060a08101359060ff60c0820135169060e081013590610100013561088a565b61024c600480360360408110156104da57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135169060200135610b0a565b7f64c0a41a0260272b78f2a5bd50d5ff7c1779bc3bba16dcff4550c7c642b0e4b481565b6040518060400160405280601481526020017f4865726d657a204e6574776f726b20546f6b656e00000000000000000000000081525081565b6000610567338484610c0f565b50600192915050565b60005481565b6a52b7d2dcc80cd2e400000081565b73ffffffffffffffffffffffffffffffffffffffff831660009081526002602090815260408083203384529091528120547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610619576105e78184610c7e565b73ffffffffffffffffffffffffffffffffffffffff861660009081526002602090815260408083203384529091529020555b610624858585610d1f565b506001949350505050565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b601281565b4690565b60006106683383610e84565b506001919050565b60016020526000908152604090205481565b60036020526000908152604090205481565b6040518060400160405280600381526020017f48455a000000000000000000000000000000000000000000000000000000000081525081565b7fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc681565b7f7c7c6cdb67a18743f49ec6fa9b35f50d52ed05cbed4cc592e13b44501c1a226781565b6000610567338484610d1f565b7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f81565b428410156107b557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f48455a3a3a7065726d69743a20415554485f4558504952454400000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff80881660008181526003602090815260409182902080546001810190915582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98184015280840194909452938a1660608401526080830189905260a083019390935260c08083018890528151808403909101815260e0909201905280519101206108588882868686610f3d565b610863888888610c0f565b5050505050505050565b600260209081526000928352604080842090915290825290205481565b8542116108e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260328152602001806111db6032913960400191505060405180910390fd5b84421061093a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c81526020018061118d602c913960400191505060405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8916600090815260046020908152604080832087845290915290205460ff16156109c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260318152602001806112386031913960400191505060405180910390fd5b604080517f7c7c6cdb67a18743f49ec6fa9b35f50d52ed05cbed4cc592e13b44501c1a226760208083019190915273ffffffffffffffffffffffffffffffffffffffff808d16838501528b166060830152608082018a905260a0820189905260c0820188905260e0808301889052835180840390910181526101009092019092528051910120610a578a82868686610f3d565b73ffffffffffffffffffffffffffffffffffffffff8a166000908152600460209081526040808320888452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055610abb8a8a8a610d1f565b604051859073ffffffffffffffffffffffffffffffffffffffff8c16907f98de503528ee59b575ef0c0a2576a82497bfc029a5685b209e9ec333479b10a590600090a350505050505050505050565b600460209081526000928352604080842090915290825290205460ff1681565b60408051808201909152601181527f4d4154483a4144445f4f564552464c4f5700000000000000000000000000000060208201528183019083821015610c08576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610bcd578181015183820152602001610bb5565b50505050905090810190601f168015610bfa5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5092915050565b73ffffffffffffffffffffffffffffffffffffffff808416600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b60408051808201909152601281527f4d4154483a5355425f554e444552464c4f57000000000000000000000000000060208201528183039083821115610c08576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201818152835160248401528351909283926044909101919085019080838360008315610bcd578181015183820152602001610bb5565b73ffffffffffffffffffffffffffffffffffffffff82163014801590610d5a575073ffffffffffffffffffffffffffffffffffffffff821615155b610daf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806111b96022913960400191505060405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8316600090815260016020526040902054610ddf9082610c7e565b73ffffffffffffffffffffffffffffffffffffffff8085166000908152600160205260408082209390935590841681522054610e1b9082610b2a565b73ffffffffffffffffffffffffffffffffffffffff80841660008181526001602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b73ffffffffffffffffffffffffffffffffffffffff8216600090815260016020526040902054610eb49082610c7e565b73ffffffffffffffffffffffffffffffffffffffff831660009081526001602052604081209190915554610ee89082610c7e565b600090815560408051838152905173ffffffffffffffffffffffffffffffffffffffff8516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef919081900360200190a35050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f7f64c0a41a0260272b78f2a5bd50d5ff7c1779bc3bba16dcff4550c7c642b0e4b47fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6610faa610658565b6040805160208082019690965280820194909452606084019290925260808301523060a0808401919091528151808403909101815260c0830182528051908401207f190100000000000000000000000000000000000000000000000000000000000060e084015260e283018190526101028084018a9052825180850390910181526101228401808452815191860191909120600091829052610142850180855281905260ff8a1661016286015261018285018990526101a285018890529251919550919391926001926101c28083019391927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08301929081900390910190855afa1580156110bc573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff81161580159061113757508773ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b610863576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602b81526020018061120d602b913960400191505060405180910390fdfe48455a3a3a7472616e7366657257697468417574686f72697a6174696f6e3a20415554485f4558504952454448455a3a3a5f7472616e736665723a204e4f545f56414c49445f5452414e5346455248455a3a3a7472616e7366657257697468417574686f72697a6174696f6e3a20415554485f4e4f545f5945545f56414c494448455a3a3a5f76616c69646174655369676e6564446174613a20494e56414c49445f5349474e415455524548455a3a3a7472616e7366657257697468417574686f72697a6174696f6e3a20415554485f414c52454144595f55534544a2646970667358221220cbf100e16c6a451e844058b4ea535f02c694c2170969205af721fbb39e05e86064736f6c634300060c00330000000000000000000000003ea6a273fd66f1085c3b1ac0ad6a576d6e85352f
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000003ea6a273fd66f1085c3b1ac0ad6a576d6e85352f
-----Decoded View---------------
Arg [0] : initialHolder (address): 0x3ea6a273fd66f1085c3b1ac0ad6a576d6e85352f
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000003ea6a273fd66f1085c3b1ac0ad6a576d6e85352f
Deployed ByteCode Sourcemap
1343:7158:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2624:102;;;:::i;:::-;;;;;;;;;;;;;;;;1498:52;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5924:191;;;;;;;;;;;;;;;;-1:-1:-1;5924:191:0;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;2922:35;;;:::i;1557:61::-;;;:::i;6314:469::-;;;;;;;;;;;;;;;;-1:-1:-1;6314:469:0;;;;;;;;;;;;;;;;;;:::i;1788:108::-;;;:::i;1408:35::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4480:110;;;:::i;5798:118::-;;;;;;;;;;;;;;;;-1:-1:-1;5798:118:0;;:::i;2964:53::-;;;;;;;;;;;;;;;;-1:-1:-1;2964:53:0;;;;:::i;3104:41::-;;;;;;;;;;;;;;;;-1:-1:-1;3104:41:0;;;;:::i;1454:37::-;;;:::i;2808:105::-;;;:::i;2119:129::-;;;:::i;6123:183::-;;;;;;;;;;;;;;;;-1:-1:-1;6123:183:0;;;;;;;;;:::i;2416:110::-;;;:::i;6791:636::-;;;;;;;;;;;;;;;;-1:-1:-1;6791:636:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3024:73;;;;;;;;;;;;;;;;-1:-1:-1;3024:73:0;;;;;;;;;;;:::i;7435:1063::-;;;;;;;;;;;;;;;;-1:-1:-1;7435:1063:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;3152:70::-;;;;;;;;;;;;;;;;-1:-1:-1;3152:70:0;;;;;;;;;:::i;2624:102::-;2660:66;2624:102;:::o;1498:52::-;;;;;;;;;;;;;;;;;;;:::o;5924:191::-;6027:4;6049:36;6058:10;6070:7;6079:5;6049:8;:36::i;:::-;-1:-1:-1;6103:4:0;5924:191;;;;:::o;2922:35::-;;;;:::o;1557:61::-;1598:20;1557:61;:::o;6314:469::-;6479:15;;;6438:4;6479:15;;;:9;:15;;;;;;;;6495:10;6479:27;;;;;;;;6546:2;6521:28;;6517:200;;6681:24;:13;6699:5;6681:17;:24::i;:::-;6651:15;;;;;;;:9;:15;;;;;;;;6667:10;6651:27;;;;;;;:54;6517:200;6727:26;6737:4;6743:2;6747:5;6727:9;:26::i;:::-;-1:-1:-1;6771:4:0;;6314:469;-1:-1:-1;;;;6314:469:0:o;1788:108::-;1830:66;1788:108;:::o;1408:35::-;1441:2;1408:35;:::o;4480:110::-;4572:9;;4559:24::o;5798:118::-;5845:4;5862:24;5868:10;5880:5;5862;:24::i;:::-;-1:-1:-1;5904:4:0;5798:118;;;:::o;2964:53::-;;;;;;;;;;;;;:::o;3104:41::-;;;;;;;;;;;;;:::o;1454:37::-;;;;;;;;;;;;;;;;;;;:::o;2808:105::-;2847:66;2808:105;:::o;2119:129::-;2182:66;2119:129;:::o;6123:183::-;6222:4;6244:32;6254:10;6266:2;6270:5;6244:9;:32::i;2416:110::-;2460:66;2416:110;:::o;6791:636::-;7013:15;7001:8;:27;;6993:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7251:13;;;;7069:18;7251:13;;;:6;:13;;;;;;;;;:15;;;;;;;;7114:194;;1830:66;7114:194;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7090:229;;;;;7330:47;7177:5;7090:229;7369:1;7372;7375;7330:19;:47::i;:::-;7388:31;7397:5;7404:7;7413:5;7388:8;:31::i;:::-;6791:636;;;;;;;;:::o;3024:73::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;7435:1063::-;7732:10;7714:15;:28;7706:91;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7834:11;7816:15;:29;7808:86;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7914:24;;;;;;;:18;:24;;;;;;;;:31;;;;;;;;;;;7913:32;7905:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8057:231;;;2182:66;8057:231;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8033:266;;;;;8310:46;8141:4;8033:266;8348:1;8351;8354;8310:19;:46::i;:::-;8369:24;;;;;;;:18;:24;;;;;;;;:31;;;;;;;;:38;;;;8403:4;8369:38;;;8418:26;8388:4;8434:2;8438:5;8418:9;:26::i;:::-;8460:30;;8484:5;;8460:30;;;;;;;;;7435:1063;;;;;;;;;;:::o;3152:70::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;840:133::-;946:18;;;;;;;;;;;;;;;;;933:5;;;;928:16;;;;920:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;840:133;;;;:::o;5106:206::-;5224:16;;;;;;;;:9;:16;;;;;;;;:25;;;;;;;;;;;;;:33;;;5273:31;;;;;;;;;;;;;;;;;5106:206;;;:::o;981:134::-;1087:19;;;;;;;;;;;;;;;;;1074:5;;;;1069:16;;;;1061:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5320:470;5455:19;;;5469:4;5455:19;;;;:39;;-1:-1:-1;5478:16:0;;;;;5455:39;5433:123;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5664:15;;;;;;;:9;:15;;;;;;:26;;5684:5;5664:19;:26::i;:::-;5646:15;;;;;;;;:9;:15;;;;;;:44;;;;5717:13;;;;;;;:24;;5735:5;5717:17;:24::i;:::-;5701:13;;;;;;;;:9;:13;;;;;;;;;:40;;;;5757:25;;;;;;;5701:13;;5757:25;;;;;;;;;;;;;5320:470;;;:::o;4810:288::-;4968:15;;;;;;;:9;:15;;;;;;:26;;4988:5;4968:19;:26::i;:::-;4950:15;;;;;;;:9;:15;;;;;:44;;;;5019:11;:22;;5035:5;5019:15;:22::i;:::-;5005:11;:36;;;5057:33;;;;;;;;;;;;;;;;;;;;;;4810:288;;:::o;3581:891::-;3754:23;2460:66;2660;2847;3928:12;:10;:12::i;:::-;3804:183;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3967:4;3804:183;;;;;;;;;;;;;;;;;;;;;;;3780:218;;;;;;4052:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4028:92;;;;;;;;;-1:-1:-1;4158:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3780:218;;-1:-1:-1;4028:92:0;;-1:-1:-1;;4158:26:0;;;;;;;3804:183;;-1:-1:-1;4158:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4158:26:0;;;;;;-1:-1:-1;;4333:30:0;;;;;;;:60;;;4387:6;4367:26;;:16;:26;;;4333:60;4311:153;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Swarm Source
ipfs://cbf100e16c6a451e844058b4ea535f02c694c2170969205af721fbb39e05e860
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.