Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0.002 ETH
Eth Value
$6.71 (@ $3,355.29/ETH)More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 472 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
Value | ||||
---|---|---|---|---|---|---|---|---|---|
New Subdomain | 19922938 | 42 days ago | IN | 0 ETH | 0.00117179 | ||||
New Subdomain | 19922931 | 42 days ago | IN | 0 ETH | 0.0013598 | ||||
New Subdomain | 19842186 | 53 days ago | IN | 0 ETH | 0.00113537 | ||||
New Subdomain | 19822609 | 56 days ago | IN | 0 ETH | 0.00085303 | ||||
New Subdomain | 19822474 | 56 days ago | IN | 0 ETH | 0.0009724 | ||||
New Subdomain | 19748767 | 66 days ago | IN | 0 ETH | 0.0008924 | ||||
New Subdomain | 19671343 | 77 days ago | IN | 0 ETH | 0.00102074 | ||||
New Subdomain | 19671336 | 77 days ago | IN | 0 ETH | 0.00122156 | ||||
New Subdomain | 19495061 | 102 days ago | IN | 0 ETH | 0.002798 | ||||
New Subdomain | 19457775 | 107 days ago | IN | 0 ETH | 0.00435359 | ||||
New Subdomain | 19293908 | 130 days ago | IN | 0 ETH | 0.00354889 | ||||
New Subdomain | 19252007 | 136 days ago | IN | 0 ETH | 0.00229074 | ||||
New Subdomain | 19243572 | 137 days ago | IN | 0 ETH | 0.00273473 | ||||
New Subdomain | 19231526 | 138 days ago | IN | 0 ETH | 0.00292979 | ||||
New Subdomain | 19230828 | 139 days ago | IN | 0 ETH | 0.00330112 | ||||
New Subdomain | 19229752 | 139 days ago | IN | 0 ETH | 0.00331422 | ||||
New Subdomain | 19229744 | 139 days ago | IN | 0 ETH | 0.00373575 | ||||
New Subdomain | 19223689 | 140 days ago | IN | 0 ETH | 0.00286621 | ||||
New Subdomain | 19223504 | 140 days ago | IN | 0 ETH | 0.00288127 | ||||
New Subdomain | 19223296 | 140 days ago | IN | 0 ETH | 0.00304731 | ||||
New Subdomain | 19222685 | 140 days ago | IN | 0 ETH | 0.00422887 | ||||
New Subdomain | 19222104 | 140 days ago | IN | 0.002 ETH | 0.00349247 | ||||
New Subdomain | 19222096 | 140 days ago | IN | 0 ETH | 0.00493362 | ||||
New Subdomain | 19222094 | 140 days ago | IN | 0 ETH | 0.00465948 | ||||
New Subdomain | 19221890 | 140 days ago | IN | 0 ETH | 0.00472996 |
Latest 1 internal transaction
Advanced mode:
Parent Transaction Hash | Block | From | To | Value | ||
---|---|---|---|---|---|---|
19205849 | 142 days ago | 0.068 ETH |
Loading...
Loading
Contract Name:
SavedSoulsENS
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8.19; import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; interface IERC721 { function balanceOf(address owner) external view returns (uint256); } interface IENSResolver { function setAddr(bytes32 node, address addr) external; function addr(bytes32 node) external view returns (address); } interface IENSRegistry { function setOwner(bytes32 node, address owner) external; function owner(bytes32 node) external view returns (address); function setResolver(bytes32 node, address resolver) external; function resolver(bytes32 node) external view returns (address); function setSubnodeOwner(bytes32 node, bytes32 label, address owner) external; } error InvalidDomain(); error WrongEtherAmount(); error WithdrawalFailed(); error NotSavedSoulsHolder(); error SubdomainAlreadyOwned(); contract SavedSoulsENS is Ownable { bytes32 private constant EMPTY_NAMEHASH = 0x00; IERC721 private immutable savedSouls; IENSRegistry private registry; IENSResolver private resolver; uint256 public subdomainPrice = 0.002 ether; mapping(address => uint8) private freeSubdomainCount; constructor( IERC721 _savedSouls, IENSRegistry _registry, IENSResolver _resolver ) { registry = _registry; resolver = _resolver; savedSouls = _savedSouls; } function newSubdomain( string calldata _subdomain, string calldata _domain, string calldata _topdomain ) external payable { if (savedSouls.balanceOf(msg.sender) == 0) { revert NotSavedSoulsHolder(); } bytes32 topdomainNamehash = keccak256( abi.encodePacked(EMPTY_NAMEHASH, keccak256(abi.encodePacked(_topdomain))) ); bytes32 domainNamehash = keccak256( abi.encodePacked(topdomainNamehash, keccak256(abi.encodePacked(_domain))) ); if (registry.owner(domainNamehash) != address(this)) { revert InvalidDomain(); } bytes32 subdomainLabelhash = keccak256(abi.encodePacked(_subdomain)); bytes32 subdomainNamehash = keccak256( abi.encodePacked(domainNamehash, subdomainLabelhash) ); if (registry.owner(subdomainNamehash) != address(0)) { revert SubdomainAlreadyOwned(); } uint8 availableSubdomains = getAvailableSubdomains(msg.sender); if (availableSubdomains == 0 && msg.value != subdomainPrice) { revert WrongEtherAmount(); } if (availableSubdomains > 0) { freeSubdomainCount[msg.sender] += 1; } registry.setSubnodeOwner(domainNamehash, subdomainLabelhash, address(this)); registry.setResolver(subdomainNamehash, address(resolver)); resolver.setAddr(subdomainNamehash, msg.sender); registry.setOwner(subdomainNamehash, msg.sender); } function getFreeSubdomainCount(address _owner) external view returns (uint8) { return freeSubdomainCount[_owner]; } function getAvailableSubdomains(address _owner) public view returns (uint8) { uint256 balance = savedSouls.balanceOf(_owner); uint8 usedSubdomains = freeSubdomainCount[_owner]; if (balance >= 100) return 5 - usedSubdomains; if (balance >= 40) return 4 - usedSubdomains; if (balance >= 15) return 3 - usedSubdomains; if (balance >= 5) return 2 - usedSubdomains; if (balance >= 1) return 1 - usedSubdomains; return 0; } function domainOwner( string calldata _domain, string calldata _topdomain ) external view returns (address) { bytes32 topdomainNamehash = keccak256( abi.encodePacked(EMPTY_NAMEHASH, keccak256(abi.encodePacked(_topdomain))) ); bytes32 namehash = keccak256( abi.encodePacked(topdomainNamehash, keccak256(abi.encodePacked(_domain))) ); return registry.owner(namehash); } function subdomainOwner( string calldata _subdomain, string calldata _domain, string calldata _topdomain ) external view returns (address) { bytes32 topdomainNamehash = keccak256( abi.encodePacked(EMPTY_NAMEHASH, keccak256(abi.encodePacked(_topdomain))) ); bytes32 domainNamehash = keccak256( abi.encodePacked(topdomainNamehash, keccak256(abi.encodePacked(_domain))) ); bytes32 subdomainNamehash = keccak256( abi.encodePacked(domainNamehash, keccak256(abi.encodePacked(_subdomain))) ); return registry.owner(subdomainNamehash); } function updateRegistry(IENSRegistry _registry) external onlyOwner { registry = _registry; } function updateResolver(IENSResolver _resolver) external onlyOwner { resolver = _resolver; } function updateSubdomainPrice(uint256 _price) external onlyOwner { subdomainPrice = _price; } function withdraw() external onlyOwner { (bool success, ) = payable(owner()).call{value: address(this).balance}(""); if (!success) { revert WithdrawalFailed(); } } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.7.0) (access/Ownable.sol) pragma solidity ^0.8.0; import "../utils/Context.sol"; /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { _transferOwnership(_msgSender()); } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { _checkOwner(); _; } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if the sender is not the owner. */ function _checkOwner() internal view virtual { require(owner() == _msgSender(), "Ownable: caller is not the owner"); } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Internal function without access restriction. */ function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (utils/Context.sol) pragma solidity ^0.8.0; /** * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } }
{ "evmVersion": "paris", "libraries": {}, "metadata": { "bytecodeHash": "ipfs", "useLiteralContent": true }, "optimizer": { "enabled": true, "runs": 1000 }, "remappings": [], "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"contract IERC721","name":"_savedSouls","type":"address"},{"internalType":"contract IENSRegistry","name":"_registry","type":"address"},{"internalType":"contract IENSResolver","name":"_resolver","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"InvalidDomain","type":"error"},{"inputs":[],"name":"NotSavedSoulsHolder","type":"error"},{"inputs":[],"name":"SubdomainAlreadyOwned","type":"error"},{"inputs":[],"name":"WithdrawalFailed","type":"error"},{"inputs":[],"name":"WrongEtherAmount","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[{"internalType":"string","name":"_domain","type":"string"},{"internalType":"string","name":"_topdomain","type":"string"}],"name":"domainOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"getAvailableSubdomains","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"getFreeSubdomainCount","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"_subdomain","type":"string"},{"internalType":"string","name":"_domain","type":"string"},{"internalType":"string","name":"_topdomain","type":"string"}],"name":"newSubdomain","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_subdomain","type":"string"},{"internalType":"string","name":"_domain","type":"string"},{"internalType":"string","name":"_topdomain","type":"string"}],"name":"subdomainOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"subdomainPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IENSRegistry","name":"_registry","type":"address"}],"name":"updateRegistry","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IENSResolver","name":"_resolver","type":"address"}],"name":"updateResolver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_price","type":"uint256"}],"name":"updateSubdomainPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60a060405266071afd498d00006003553480156200001c57600080fd5b50604051620012c7380380620012c78339810160408190526200003f91620000ec565b6200004a3362000083565b600180546001600160a01b03199081166001600160a01b0394851617909155600280549091169183169190911790551660805262000140565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0381168114620000e957600080fd5b50565b6000806000606084860312156200010257600080fd5b83516200010f81620000d3565b60208501519093506200012281620000d3565b60408501519092506200013581620000d3565b809150509250925092565b608051611164620001636000396000818161051c0152610c4401526111646000f3fe6080604052600436106100d25760003560e01c8063610538f41161007f5780638da5cb5b116100595780638da5cb5b146102225780639469576714610240578063e6fe39ed14610260578063f2fde38b1461028057600080fd5b8063610538f4146101c9578063715018a6146101e95780637dc1cc34146101fe57600080fd5b80633ccfd60b116100b05780633ccfd60b1461018157806341b2e6df1461019657806357014fee146101a957600080fd5b80630ab4c065146100d75780631a5da6c814610114578063385bc12014610136575b600080fd5b3480156100e357600080fd5b506100f76100f2366004610f29565b6102a0565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561012057600080fd5b5061013461012f366004610fd8565b610438565b005b34801561014257600080fd5b5061016f610151366004610fd8565b6001600160a01b031660009081526004602052604090205460ff1690565b60405160ff909116815260200161010b565b34801561018d57600080fd5b5061013461046f565b6101346101a4366004610f29565b610507565b3480156101b557600080fd5b506100f76101c4366004610ffc565b610ae9565b3480156101d557600080fd5b5061016f6101e4366004610fd8565b610c20565b3480156101f557600080fd5b50610134610d3f565b34801561020a57600080fd5b5061021460035481565b60405190815260200161010b565b34801561022e57600080fd5b506000546001600160a01b03166100f7565b34801561024c57600080fd5b5061013461025b366004611068565b610d53565b34801561026c57600080fd5b5061013461027b366004610fd8565b610d60565b34801561028c57600080fd5b5061013461029b366004610fd8565b610d97565b6000806000801b84846040516020016102ba929190611081565b604051602081830303815290604052805190602001206040516020016102ea929190918252602082015260400190565b6040516020818303038152906040528051906020012090506000818787604051602001610318929190611081565b60405160208183030381529060405280519060200120604051602001610348929190918252602082015260400190565b6040516020818303038152906040528051906020012090506000818a8a604051602001610376929190611081565b604051602081830303815290604052805190602001206040516020016103a6929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529092506001600160a01b0316906302571be390602401602060405180830381865afa158015610406573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061042a9190611091565b9a9950505050505050505050565b610440610e29565b6001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b610477610e29565b600080546040516001600160a01b039091169047908381818185875af1925050503d80600081146104c4576040519150601f19603f3d011682016040523d82523d6000602084013e6104c9565b606091505b5050905080610504576040517f27fcd9d100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b6040516370a0823160e01b81523360048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa15801561056b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061058f91906110ae565b6000036105c8576040517fba2e4e0b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008060001b83836040516020016105e1929190611081565b60405160208183030381529060405280519060200120604051602001610611929190918252602082015260400190565b604051602081830303815290604052805190602001209050600081868660405160200161063f929190611081565b6040516020818303038152906040528051906020012060405160200161066f929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206001546302571be360e01b83526004830182905290925030916001600160a01b03909116906302571be390602401602060405180830381865afa1580156106d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f79190611091565b6001600160a01b031614610737576040517feb12798200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000888860405160200161074c929190611081565b60408051601f198184030181528282528051602091820120908301859052908201819052915060009060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529092506000916001600160a01b03909116906302571be390602401602060405180830381865afa1580156107dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108019190611091565b6001600160a01b031614610841576040517f73f81d0200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061084c33610c20565b905060ff811615801561086157506003543414155b15610898576040517f31fc877f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60ff8116156108dd573360009081526004602052604081208054600192906108c490849060ff166110f6565b92506101000a81548160ff021916908360ff1602179055505b6001546040517f06ab592300000000000000000000000000000000000000000000000000000000815260048101869052602481018590523060448201526001600160a01b03909116906306ab592390606401600060405180830381600087803b15801561094957600080fd5b505af115801561095d573d6000803e3d6000fd5b50506001546002546040517f1896f70a000000000000000000000000000000000000000000000000000000008152600481018790526001600160a01b03918216602482015291169250631896f70a9150604401600060405180830381600087803b1580156109ca57600080fd5b505af11580156109de573d6000803e3d6000fd5b50506002546040517fd5fa2b00000000000000000000000000000000000000000000000000000000008152600481018690523360248201526001600160a01b03909116925063d5fa2b009150604401600060405180830381600087803b158015610a4757600080fd5b505af1158015610a5b573d6000803e3d6000fd5b50506001546040517f5b0fc9c3000000000000000000000000000000000000000000000000000000008152600481018690523360248201526001600160a01b039091169250635b0fc9c39150604401600060405180830381600087803b158015610ac457600080fd5b505af1158015610ad8573d6000803e3d6000fd5b505050505050505050505050505050565b6000806000801b8484604051602001610b03929190611081565b60405160208183030381529060405280519060200120604051602001610b33929190918252602082015260400190565b6040516020818303038152906040528051906020012090506000818787604051602001610b61929190611081565b60405160208183030381529060405280519060200120604051602001610b91929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529092506001600160a01b0316906302571be390602401602060405180830381865afa158015610bf1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c159190611091565b979650505050505050565b6040516370a0823160e01b81526001600160a01b03828116600483015260009182917f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa158015610c8b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610caf91906110ae565b6001600160a01b03841660009081526004602052604090205490915060ff1660648210610ce957610ce1816005611115565b949350505050565b60288210610cfc57610ce1816004611115565b600f8210610d0f57610ce1816003611115565b60058210610d2257610ce1816002611115565b60018210610d3557610ce1816001611115565b5060009392505050565b610d47610e29565b610d516000610e83565b565b610d5b610e29565b600355565b610d68610e29565b6002805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b610d9f610e29565b6001600160a01b038116610e205760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61050481610e83565b6000546001600160a01b03163314610d515760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610e17565b600080546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60008083601f840112610ef257600080fd5b50813567ffffffffffffffff811115610f0a57600080fd5b602083019150836020828501011115610f2257600080fd5b9250929050565b60008060008060008060608789031215610f4257600080fd5b863567ffffffffffffffff80821115610f5a57600080fd5b610f668a838b01610ee0565b90985096506020890135915080821115610f7f57600080fd5b610f8b8a838b01610ee0565b90965094506040890135915080821115610fa457600080fd5b50610fb189828a01610ee0565b979a9699509497509295939492505050565b6001600160a01b038116811461050457600080fd5b600060208284031215610fea57600080fd5b8135610ff581610fc3565b9392505050565b6000806000806040858703121561101257600080fd5b843567ffffffffffffffff8082111561102a57600080fd5b61103688838901610ee0565b9096509450602087013591508082111561104f57600080fd5b5061105c87828801610ee0565b95989497509550505050565b60006020828403121561107a57600080fd5b5035919050565b8183823760009101908152919050565b6000602082840312156110a357600080fd5b8151610ff581610fc3565b6000602082840312156110c057600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60ff818116838216019081111561110f5761110f6110c7565b92915050565b60ff828116828216039081111561110f5761110f6110c756fea2646970667358221220051000a780c729415d2131b524cca2e42da7dc5f7d4bdca4405642adb6bf3e4d64736f6c63430008130033000000000000000000000000884ba86faa29745b6c40b7098567a393e91335cf00000000000000000000000000000000000c2e074ec69a0dfb2997ba6c7d2e1e0000000000000000000000004976fb03c32e5b8cfe2b6ccb31c09ba78ebaba41
Deployed Bytecode
0x6080604052600436106100d25760003560e01c8063610538f41161007f5780638da5cb5b116100595780638da5cb5b146102225780639469576714610240578063e6fe39ed14610260578063f2fde38b1461028057600080fd5b8063610538f4146101c9578063715018a6146101e95780637dc1cc34146101fe57600080fd5b80633ccfd60b116100b05780633ccfd60b1461018157806341b2e6df1461019657806357014fee146101a957600080fd5b80630ab4c065146100d75780631a5da6c814610114578063385bc12014610136575b600080fd5b3480156100e357600080fd5b506100f76100f2366004610f29565b6102a0565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561012057600080fd5b5061013461012f366004610fd8565b610438565b005b34801561014257600080fd5b5061016f610151366004610fd8565b6001600160a01b031660009081526004602052604090205460ff1690565b60405160ff909116815260200161010b565b34801561018d57600080fd5b5061013461046f565b6101346101a4366004610f29565b610507565b3480156101b557600080fd5b506100f76101c4366004610ffc565b610ae9565b3480156101d557600080fd5b5061016f6101e4366004610fd8565b610c20565b3480156101f557600080fd5b50610134610d3f565b34801561020a57600080fd5b5061021460035481565b60405190815260200161010b565b34801561022e57600080fd5b506000546001600160a01b03166100f7565b34801561024c57600080fd5b5061013461025b366004611068565b610d53565b34801561026c57600080fd5b5061013461027b366004610fd8565b610d60565b34801561028c57600080fd5b5061013461029b366004610fd8565b610d97565b6000806000801b84846040516020016102ba929190611081565b604051602081830303815290604052805190602001206040516020016102ea929190918252602082015260400190565b6040516020818303038152906040528051906020012090506000818787604051602001610318929190611081565b60405160208183030381529060405280519060200120604051602001610348929190918252602082015260400190565b6040516020818303038152906040528051906020012090506000818a8a604051602001610376929190611081565b604051602081830303815290604052805190602001206040516020016103a6929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529092506001600160a01b0316906302571be390602401602060405180830381865afa158015610406573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061042a9190611091565b9a9950505050505050505050565b610440610e29565b6001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b610477610e29565b600080546040516001600160a01b039091169047908381818185875af1925050503d80600081146104c4576040519150601f19603f3d011682016040523d82523d6000602084013e6104c9565b606091505b5050905080610504576040517f27fcd9d100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b6040516370a0823160e01b81523360048201527f000000000000000000000000884ba86faa29745b6c40b7098567a393e91335cf6001600160a01b0316906370a0823190602401602060405180830381865afa15801561056b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061058f91906110ae565b6000036105c8576040517fba2e4e0b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008060001b83836040516020016105e1929190611081565b60405160208183030381529060405280519060200120604051602001610611929190918252602082015260400190565b604051602081830303815290604052805190602001209050600081868660405160200161063f929190611081565b6040516020818303038152906040528051906020012060405160200161066f929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206001546302571be360e01b83526004830182905290925030916001600160a01b03909116906302571be390602401602060405180830381865afa1580156106d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f79190611091565b6001600160a01b031614610737576040517feb12798200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000888860405160200161074c929190611081565b60408051601f198184030181528282528051602091820120908301859052908201819052915060009060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529092506000916001600160a01b03909116906302571be390602401602060405180830381865afa1580156107dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108019190611091565b6001600160a01b031614610841576040517f73f81d0200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061084c33610c20565b905060ff811615801561086157506003543414155b15610898576040517f31fc877f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60ff8116156108dd573360009081526004602052604081208054600192906108c490849060ff166110f6565b92506101000a81548160ff021916908360ff1602179055505b6001546040517f06ab592300000000000000000000000000000000000000000000000000000000815260048101869052602481018590523060448201526001600160a01b03909116906306ab592390606401600060405180830381600087803b15801561094957600080fd5b505af115801561095d573d6000803e3d6000fd5b50506001546002546040517f1896f70a000000000000000000000000000000000000000000000000000000008152600481018790526001600160a01b03918216602482015291169250631896f70a9150604401600060405180830381600087803b1580156109ca57600080fd5b505af11580156109de573d6000803e3d6000fd5b50506002546040517fd5fa2b00000000000000000000000000000000000000000000000000000000008152600481018690523360248201526001600160a01b03909116925063d5fa2b009150604401600060405180830381600087803b158015610a4757600080fd5b505af1158015610a5b573d6000803e3d6000fd5b50506001546040517f5b0fc9c3000000000000000000000000000000000000000000000000000000008152600481018690523360248201526001600160a01b039091169250635b0fc9c39150604401600060405180830381600087803b158015610ac457600080fd5b505af1158015610ad8573d6000803e3d6000fd5b505050505050505050505050505050565b6000806000801b8484604051602001610b03929190611081565b60405160208183030381529060405280519060200120604051602001610b33929190918252602082015260400190565b6040516020818303038152906040528051906020012090506000818787604051602001610b61929190611081565b60405160208183030381529060405280519060200120604051602001610b91929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529092506001600160a01b0316906302571be390602401602060405180830381865afa158015610bf1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c159190611091565b979650505050505050565b6040516370a0823160e01b81526001600160a01b03828116600483015260009182917f000000000000000000000000884ba86faa29745b6c40b7098567a393e91335cf16906370a0823190602401602060405180830381865afa158015610c8b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610caf91906110ae565b6001600160a01b03841660009081526004602052604090205490915060ff1660648210610ce957610ce1816005611115565b949350505050565b60288210610cfc57610ce1816004611115565b600f8210610d0f57610ce1816003611115565b60058210610d2257610ce1816002611115565b60018210610d3557610ce1816001611115565b5060009392505050565b610d47610e29565b610d516000610e83565b565b610d5b610e29565b600355565b610d68610e29565b6002805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b610d9f610e29565b6001600160a01b038116610e205760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61050481610e83565b6000546001600160a01b03163314610d515760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610e17565b600080546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60008083601f840112610ef257600080fd5b50813567ffffffffffffffff811115610f0a57600080fd5b602083019150836020828501011115610f2257600080fd5b9250929050565b60008060008060008060608789031215610f4257600080fd5b863567ffffffffffffffff80821115610f5a57600080fd5b610f668a838b01610ee0565b90985096506020890135915080821115610f7f57600080fd5b610f8b8a838b01610ee0565b90965094506040890135915080821115610fa457600080fd5b50610fb189828a01610ee0565b979a9699509497509295939492505050565b6001600160a01b038116811461050457600080fd5b600060208284031215610fea57600080fd5b8135610ff581610fc3565b9392505050565b6000806000806040858703121561101257600080fd5b843567ffffffffffffffff8082111561102a57600080fd5b61103688838901610ee0565b9096509450602087013591508082111561104f57600080fd5b5061105c87828801610ee0565b95989497509550505050565b60006020828403121561107a57600080fd5b5035919050565b8183823760009101908152919050565b6000602082840312156110a357600080fd5b8151610ff581610fc3565b6000602082840312156110c057600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60ff818116838216019081111561110f5761110f6110c7565b92915050565b60ff828116828216039081111561110f5761110f6110c756fea2646970667358221220051000a780c729415d2131b524cca2e42da7dc5f7d4bdca4405642adb6bf3e4d64736f6c63430008130033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000884ba86faa29745b6c40b7098567a393e91335cf00000000000000000000000000000000000c2e074ec69a0dfb2997ba6c7d2e1e0000000000000000000000004976fb03c32e5b8cfe2b6ccb31c09ba78ebaba41
-----Decoded View---------------
Arg [0] : _savedSouls (address): 0x884Ba86FAA29745b6C40B7098567A393E91335CF
Arg [1] : _registry (address): 0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e
Arg [2] : _resolver (address): 0x4976fb03C32e5B8cfe2b6cCB31c09Ba78EBaBa41
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000884ba86faa29745b6c40b7098567a393e91335cf
Arg [1] : 00000000000000000000000000000000000c2e074ec69a0dfb2997ba6c7d2e1e
Arg [2] : 0000000000000000000000004976fb03c32e5b8cfe2b6ccb31c09ba78ebaba41
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | 100.00% | $3,355.29 | 0.002 | $6.71 |
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.