Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 86 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Update | 18349820 | 440 days ago | IN | 0 ETH | 0.00036137 | ||||
Update | 18349773 | 440 days ago | IN | 0 ETH | 0.00038955 | ||||
Update | 18349757 | 440 days ago | IN | 0 ETH | 0.00035248 | ||||
Update | 18349752 | 440 days ago | IN | 0 ETH | 0.00036153 | ||||
Update | 18349744 | 440 days ago | IN | 0 ETH | 0.00021799 | ||||
Update | 18349740 | 440 days ago | IN | 0 ETH | 0.00034255 | ||||
Update | 18349639 | 440 days ago | IN | 0 ETH | 0.00038026 | ||||
Update | 18349597 | 440 days ago | IN | 0 ETH | 0.00035581 | ||||
Update | 18349594 | 440 days ago | IN | 0 ETH | 0.00035987 | ||||
Update | 18349577 | 440 days ago | IN | 0 ETH | 0.00034625 | ||||
Update | 18349574 | 440 days ago | IN | 0 ETH | 0.00036265 | ||||
Update | 18349573 | 440 days ago | IN | 0 ETH | 0.00036134 | ||||
Update | 18349571 | 440 days ago | IN | 0 ETH | 0.00033851 | ||||
Update | 18349568 | 440 days ago | IN | 0 ETH | 0.00034878 | ||||
Update | 18349566 | 440 days ago | IN | 0 ETH | 0.00036808 | ||||
Update | 18349564 | 440 days ago | IN | 0 ETH | 0.00036335 | ||||
Update | 18349563 | 440 days ago | IN | 0 ETH | 0.00037329 | ||||
Update | 18349562 | 440 days ago | IN | 0 ETH | 0.0003426 | ||||
Update | 18349561 | 440 days ago | IN | 0 ETH | 0.0003411 | ||||
Update | 18349560 | 440 days ago | IN | 0 ETH | 0.00034816 | ||||
Update | 18349559 | 440 days ago | IN | 0 ETH | 0.00036309 | ||||
Update | 18349558 | 440 days ago | IN | 0 ETH | 0.00037099 | ||||
Update | 18349557 | 440 days ago | IN | 0 ETH | 0.00035808 | ||||
Update | 18349556 | 440 days ago | IN | 0 ETH | 0.00036032 | ||||
Update | 18349555 | 440 days ago | IN | 0 ETH | 0.00036741 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
OnlyHumans
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-10-03 */ // SPDX-License-Identifier: MIT AND UNLICENSED // File @openzeppelin/contracts/utils/[email protected] // Original license: 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; } } // File @openzeppelin/contracts/access/[email protected] // Original license: SPDX_License_Identifier: MIT // OpenZeppelin Contracts (last updated v4.9.0) (access/Ownable.sol) pragma solidity ^0.8.0; /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ 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. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby disabling 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); } } // File contracts/OnlyHumans.sol // Original license: SPDX_License_Identifier: MIT pragma solidity ^0.8.9; contract OnlyHumans is Ownable { mapping(address => mapping(address => bool)) public registry; /** * @dev Update the registry mapping. * @param contract_address The address of the contract. * @param user_addresses The addresses of the users. * @param enabled A boolean array indicating if the user is enabled for the respective contract. */ function update( address contract_address, address[] calldata user_addresses, bool[] calldata enabled ) public onlyOwner { require( user_addresses.length == enabled.length, "All arrays must have the same length." ); for (uint256 i = 0; i < user_addresses.length; i++) { registry[contract_address][user_addresses[i]] = enabled[i]; } } /** * @dev Checks if a user is allowed to interact with a specific contract. * @param contractAddress The address of the contract the user wants to interact with. * @param user The address of the user being checked. * @return True if the user is allowed to interact with the specified contract, false otherwise. */ function isUserAllowed( address contractAddress, address user ) public view returns (bool) { return registry[contractAddress][user]; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"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":"address","name":"contractAddress","type":"address"},{"internalType":"address","name":"user","type":"address"}],"name":"isUserAllowed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"registry","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"contract_address","type":"address"},{"internalType":"address[]","name":"user_addresses","type":"address[]"},{"internalType":"bool[]","name":"enabled","type":"bool[]"}],"name":"update","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6105598061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638da5cb5b14610071578063a5afd1b614610091578063a9fb3b35146100cf578063ccd210481461010b578063f2fde38b1461011e575b600080fd5b61006f610131565b005b6000546040516001600160a01b0390911681526020015b60405180910390f35b6100bf61009f3660046103a2565b600160209081526000928352604080842090915290825290205460ff1681565b6040519015158152602001610088565b6100bf6100dd3660046103a2565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b61006f610119366004610421565b610145565b61006f61012c3660046104a2565b610263565b6101396102dc565b6101436000610336565b565b61014d6102dc565b8281146101af5760405162461bcd60e51b815260206004820152602560248201527f416c6c20617272617973206d7573742068617665207468652073616d65206c656044820152643733ba341760d91b60648201526084015b60405180910390fd5b60005b8381101561025b578282828181106101cc576101cc6104c4565b90506020020160208101906101e191906104da565b6001600160a01b03871660009081526001602052604081209087878581811061020c5761020c6104c4565b905060200201602081019061022191906104a2565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610253816104fc565b9150506101b2565b505050505050565b61026b6102dc565b6001600160a01b0381166102d05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101a6565b6102d981610336565b50565b6000546001600160a01b031633146101435760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101a6565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461039d57600080fd5b919050565b600080604083850312156103b557600080fd5b6103be83610386565b91506103cc60208401610386565b90509250929050565b60008083601f8401126103e757600080fd5b50813567ffffffffffffffff8111156103ff57600080fd5b6020830191508360208260051b850101111561041a57600080fd5b9250929050565b60008060008060006060868803121561043957600080fd5b61044286610386565b9450602086013567ffffffffffffffff8082111561045f57600080fd5b61046b89838a016103d5565b9096509450604088013591508082111561048457600080fd5b50610491888289016103d5565b969995985093965092949392505050565b6000602082840312156104b457600080fd5b6104bd82610386565b9392505050565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156104ec57600080fd5b813580151581146104bd57600080fd5b60006001820161051c57634e487b7160e01b600052601160045260246000fd5b506001019056fea26469706673582212202db79c91f1970affaf5f9c29e515bfc4407cf423bcaec18ee5575fa78e087dad64736f6c63430008130033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638da5cb5b14610071578063a5afd1b614610091578063a9fb3b35146100cf578063ccd210481461010b578063f2fde38b1461011e575b600080fd5b61006f610131565b005b6000546040516001600160a01b0390911681526020015b60405180910390f35b6100bf61009f3660046103a2565b600160209081526000928352604080842090915290825290205460ff1681565b6040519015158152602001610088565b6100bf6100dd3660046103a2565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b61006f610119366004610421565b610145565b61006f61012c3660046104a2565b610263565b6101396102dc565b6101436000610336565b565b61014d6102dc565b8281146101af5760405162461bcd60e51b815260206004820152602560248201527f416c6c20617272617973206d7573742068617665207468652073616d65206c656044820152643733ba341760d91b60648201526084015b60405180910390fd5b60005b8381101561025b578282828181106101cc576101cc6104c4565b90506020020160208101906101e191906104da565b6001600160a01b03871660009081526001602052604081209087878581811061020c5761020c6104c4565b905060200201602081019061022191906104a2565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610253816104fc565b9150506101b2565b505050505050565b61026b6102dc565b6001600160a01b0381166102d05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101a6565b6102d981610336565b50565b6000546001600160a01b031633146101435760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101a6565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461039d57600080fd5b919050565b600080604083850312156103b557600080fd5b6103be83610386565b91506103cc60208401610386565b90509250929050565b60008083601f8401126103e757600080fd5b50813567ffffffffffffffff8111156103ff57600080fd5b6020830191508360208260051b850101111561041a57600080fd5b9250929050565b60008060008060006060868803121561043957600080fd5b61044286610386565b9450602086013567ffffffffffffffff8082111561045f57600080fd5b61046b89838a016103d5565b9096509450604088013591508082111561048457600080fd5b50610491888289016103d5565b969995985093965092949392505050565b6000602082840312156104b457600080fd5b6104bd82610386565b9392505050565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156104ec57600080fd5b813580151581146104bd57600080fd5b60006001820161051c57634e487b7160e01b600052601160045260246000fd5b506001019056fea26469706673582212202db79c91f1970affaf5f9c29e515bfc4407cf423bcaec18ee5575fa78e087dad64736f6c63430008130033
Deployed Bytecode Sourcemap
3862:1369:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2929:103;;;:::i;:::-;;2288:87;2334:7;2361:6;2288:87;;-1:-1:-1;;;;;2361:6:0;;;160:51:1;;148:2;133:18;2288:87:0;;;;;;;;3900:60;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;830:14:1;;823:22;805:41;;793:2;778:18;3900:60:0;665:187:1;5057:171:0;;;;;;:::i;:::-;-1:-1:-1;;;;;5189:25:0;;;5165:4;5189:25;;;:8;:25;;;;;;;;:31;;;;;;;;;;;;;;;5057:171;4250:449;;;;;;:::i;:::-;;:::i;3187:201::-;;;;;;:::i;:::-;;:::i;2929:103::-;2174:13;:11;:13::i;:::-;2994:30:::1;3021:1;2994:18;:30::i;:::-;2929:103::o:0;4250:449::-;2174:13;:11;:13::i;:::-;4440:39;;::::1;4414:130;;;::::0;-1:-1:-1;;;4414:130:0;;2471:2:1;4414:130:0::1;::::0;::::1;2453:21:1::0;2510:2;2490:18;;;2483:30;2549:34;2529:18;;;2522:62;-1:-1:-1;;;2600:18:1;;;2593:35;2645:19;;4414:130:0::1;;;;;;;;;4560:9;4555:137;4575:25:::0;;::::1;4555:137;;;4670:7;;4678:1;4670:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;4622:26:0;::::1;;::::0;;;:8:::1;:26;::::0;;;;;4649:14;;4664:1;4649:17;;::::1;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;4622:45:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;4622:45:0;:58;;-1:-1:-1;;4622:58:0::1;::::0;::::1;;::::0;;;::::1;::::0;;4602:3;::::1;::::0;::::1;:::i;:::-;;;;4555:137;;;;4250:449:::0;;;;;:::o;3187:201::-;2174:13;:11;:13::i;:::-;-1:-1:-1;;;;;3276:22:0;::::1;3268:73;;;::::0;-1:-1:-1;;;3268:73:0;;3524:2:1;3268:73:0::1;::::0;::::1;3506:21:1::0;3563:2;3543:18;;;3536:30;3602:34;3582:18;;;3575:62;-1:-1:-1;;;3653:18:1;;;3646:36;3699:19;;3268:73:0::1;3322:402:1::0;3268:73:0::1;3352:28;3371:8;3352:18;:28::i;:::-;3187:201:::0;:::o;2453:132::-;2334:7;2361:6;-1:-1:-1;;;;;2361:6:0;864:10;2517:23;2509:68;;;;-1:-1:-1;;;2509:68:0;;3931:2:1;2509:68:0;;;3913:21:1;;;3950:18;;;3943:30;4009:34;3989:18;;;3982:62;4061:18;;2509:68:0;3729:356:1;3548:191:0;3622:16;3641:6;;-1:-1:-1;;;;;3658:17:0;;;-1:-1:-1;;;;;;3658:17:0;;;;;;3691:40;;3641:6;;;;;;;3691:40;;3622:16;3691:40;3611:128;3548:191;:::o;222:173:1:-;290:20;;-1:-1:-1;;;;;339:31:1;;329:42;;319:70;;385:1;382;375:12;319:70;222:173;;;:::o;400:260::-;468:6;476;529:2;517:9;508:7;504:23;500:32;497:52;;;545:1;542;535:12;497:52;568:29;587:9;568:29;:::i;:::-;558:39;;616:38;650:2;639:9;635:18;616:38;:::i;:::-;606:48;;400:260;;;;;:::o;857:367::-;920:8;930:6;984:3;977:4;969:6;965:17;961:27;951:55;;1002:1;999;992:12;951:55;-1:-1:-1;1025:20:1;;1068:18;1057:30;;1054:50;;;1100:1;1097;1090:12;1054:50;1137:4;1129:6;1125:17;1113:29;;1197:3;1190:4;1180:6;1177:1;1173:14;1165:6;1161:27;1157:38;1154:47;1151:67;;;1214:1;1211;1204:12;1151:67;857:367;;;;;:::o;1229:844::-;1357:6;1365;1373;1381;1389;1442:2;1430:9;1421:7;1417:23;1413:32;1410:52;;;1458:1;1455;1448:12;1410:52;1481:29;1500:9;1481:29;:::i;:::-;1471:39;;1561:2;1550:9;1546:18;1533:32;1584:18;1625:2;1617:6;1614:14;1611:34;;;1641:1;1638;1631:12;1611:34;1680:70;1742:7;1733:6;1722:9;1718:22;1680:70;:::i;:::-;1769:8;;-1:-1:-1;1654:96:1;-1:-1:-1;1857:2:1;1842:18;;1829:32;;-1:-1:-1;1873:16:1;;;1870:36;;;1902:1;1899;1892:12;1870:36;;1941:72;2005:7;1994:8;1983:9;1979:24;1941:72;:::i;:::-;1229:844;;;;-1:-1:-1;1229:844:1;;-1:-1:-1;2032:8:1;;1915:98;1229:844;-1:-1:-1;;;1229:844:1:o;2078:186::-;2137:6;2190:2;2178:9;2169:7;2165:23;2161:32;2158:52;;;2206:1;2203;2196:12;2158:52;2229:29;2248:9;2229:29;:::i;:::-;2219:39;2078:186;-1:-1:-1;;;2078:186:1:o;2675:127::-;2736:10;2731:3;2727:20;2724:1;2717:31;2767:4;2764:1;2757:15;2791:4;2788:1;2781:15;2807:273;2863:6;2916:2;2904:9;2895:7;2891:23;2887:32;2884:52;;;2932:1;2929;2922:12;2884:52;2971:9;2958:23;3024:5;3017:13;3010:21;3003:5;3000:32;2990:60;;3046:1;3043;3036:12;3085:232;3124:3;3145:17;;;3142:140;;3204:10;3199:3;3195:20;3192:1;3185:31;3239:4;3236:1;3229:15;3267:4;3264:1;3257:15;3142:140;-1:-1:-1;3309:1:1;3298:13;;3085:232::o
Swarm Source
ipfs://2db79c91f1970affaf5f9c29e515bfc4407cf423bcaec18ee5575fa78e087dad
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.