Source Code
Overview
ETH Balance
0 ETH
More Info
ContractCreator
Multichain Info
N/A
Latest 7 from a total of 7 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Set Factory | 1991404 | 44 days ago | IN | 0 ETH | 0.00000435 | ||||
Set Factory | 1991282 | 44 days ago | IN | 0 ETH | 0.00000479 | ||||
Set Factory | 1990511 | 44 days ago | IN | 0 ETH | 0.00000593 | ||||
Set Factory | 1988853 | 44 days ago | IN | 0 ETH | 0.00000431 | ||||
Set Factory | 1988547 | 44 days ago | IN | 0 ETH | 0.00000431 | ||||
Set Factory | 1988476 | 44 days ago | IN | 0 ETH | 0.00000555 | ||||
Set Factory | 1988381 | 44 days ago | IN | 0 ETH | 0.000005 |
Latest 25 internal transactions (View All)
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
5387900 | 40 hrs ago | 0 ETH | ||||
5387900 | 40 hrs ago | 0 ETH | ||||
5387900 | 40 hrs ago | 0 ETH | ||||
5387839 | 40 hrs ago | 0 ETH | ||||
5387839 | 40 hrs ago | 0 ETH | ||||
5387839 | 40 hrs ago | 0 ETH | ||||
5348313 | 2 days ago | 0 ETH | ||||
5348313 | 2 days ago | 0 ETH | ||||
5348313 | 2 days ago | 0 ETH | ||||
5089751 | 5 days ago | 0 ETH | ||||
5089751 | 5 days ago | 0 ETH | ||||
5089751 | 5 days ago | 0 ETH | ||||
5089655 | 5 days ago | 0 ETH | ||||
5089655 | 5 days ago | 0 ETH | ||||
5089655 | 5 days ago | 0 ETH | ||||
5019627 | 6 days ago | 0 ETH | ||||
5019627 | 6 days ago | 0 ETH | ||||
5019627 | 6 days ago | 0 ETH | ||||
4919209 | 8 days ago | 0 ETH | ||||
4919209 | 8 days ago | 0 ETH | ||||
4919209 | 8 days ago | 0 ETH | ||||
4374103 | 15 days ago | 0 ETH | ||||
4374103 | 15 days ago | 0 ETH | ||||
4374103 | 15 days ago | 0 ETH | ||||
4371121 | 15 days ago | 0 ETH |
Loading...
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0xd5E3efDA...033496Dda The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
AGWRegistry
Compiler Version
v0.8.26+commit.8a97fa7a
ZkSolc Version
v1.5.6
Optimization Enabled:
Yes with Mode 3
Other Settings:
cancun EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: GPL-3.0 pragma solidity ^0.8.17; import {Ownable, Ownable2Step} from '@openzeppelin/contracts/access/Ownable2Step.sol'; import {Errors} from './libraries/Errors.sol'; import {IAGWRegistry} from './interfaces/IAGWRegistry.sol'; contract AGWRegistry is Ownable2Step, IAGWRegistry { mapping(address => bool) public isFactory; // Mapping of AGW accounts mapping(address => bool) public isAGW; /** * @notice Event emmited when a factory contract is set * @param factory address - Address of the factory contract */ event FactorySet(address indexed factory); /** * @notice Event emmited when a factory contract is unset * @param factory address - Address of the factory contract */ event FactoryUnset(address indexed factory); // Constructor function of the contracts constructor(address _owner) Ownable(_owner) {} /** * @notice Registers an account as a AGW account * @dev Can only be called by the factory or owner * @param account address - Address of the account to register */ function register(address account) external override { if (!isFactory[msg.sender] && msg.sender != owner()) { revert Errors.NOT_FROM_FACTORY(); } isAGW[account] = true; } /** * @notice Registers multiple accounts as AGW accounts * @dev Can only be called by the factory or owner * @param accounts address[] - Array of addresses to register */ function registerMultiple(address[] calldata accounts) external { if (!isFactory[msg.sender] && msg.sender != owner()) { revert Errors.NOT_FROM_FACTORY(); } for (uint256 i = 0; i < accounts.length; i++) { isAGW[accounts[i]] = true; } } /** * @notice Unregisters an account as a AGW account * @dev Can only be called by the factory or owner * @param account address - Address of the account to unregister */ function unregister(address account) external { if (!isFactory[msg.sender] && msg.sender != owner()) { revert Errors.NOT_FROM_FACTORY(); } isAGW[account] = false; } /** * @notice Unregisters multiple accounts as AGW accounts * @dev Can only be called by the factory or owner * @param accounts address[] - Array of addresses to unregister */ function unregisterMultiple(address[] calldata accounts) external { if (!isFactory[msg.sender] && msg.sender != owner()) { revert Errors.NOT_FROM_FACTORY(); } for (uint256 i = 0; i < accounts.length; i++) { isAGW[accounts[i]] = false; } } /** * @notice Sets a new factory contract * @dev Can only be called by the owner * @param factory_ address - Address of the new factory */ function setFactory(address factory_) external onlyOwner { isFactory[factory_] = true; emit FactorySet(factory_); } /** * @notice Unsets a factory contract * @dev Can only be called by the owner * @param factory_ address - Address of the factory */ function unsetFactory(address factory_) external onlyOwner { isFactory[factory_] = false; emit FactoryUnset(factory_); } }
// SPDX-License-Identifier: GPL-3.0 pragma solidity ^0.8.17; library Errors { /*////////////////////////////////////////////////////////////// AGW //////////////////////////////////////////////////////////////*/ error INSUFFICIENT_FUNDS(); // 0xe7931438 error FEE_PAYMENT_FAILED(); // 0x3d40a3a3 error UNAUTHORIZED_OUTSIDE_TRANSACTION(); // 0xfc82da4e error VALIDATION_HOOK_FAILED(); // 0x52c9d27a /*////////////////////////////////////////////////////////////// LINKED LIST //////////////////////////////////////////////////////////////*/ error INVALID_PREV(); // 0x5a4c0eb3 // Bytes error INVALID_BYTES(); // 0xb6dfaaff error BYTES_ALREADY_EXISTS(); // 0xdf6cac6b error BYTES_NOT_EXISTS(); // 0x689908a6 // Address error INVALID_ADDRESS(); // 0x5963709b error ADDRESS_ALREADY_EXISTS(); // 0xf2d4d191 error ADDRESS_NOT_EXISTS(); // 0xad6ab975 /*////////////////////////////////////////////////////////////// OWNER MANAGER //////////////////////////////////////////////////////////////*/ error EMPTY_OWNERS(); // 0xc957eb7e error INVALID_PUBKEY_LENGTH(); // 0x04c4d8f7 /*////////////////////////////////////////////////////////////// VALIDATOR MANAGER //////////////////////////////////////////////////////////////*/ error EMPTY_VALIDATORS(); // 0xd7c64d89 error VALIDATOR_ERC165_FAIL(); // 0x5d5273ad /*////////////////////////////////////////////////////////////// UPGRADE MANAGER //////////////////////////////////////////////////////////////*/ error SAME_IMPLEMENTATION(); // 0x5e741005 /*////////////////////////////////////////////////////////////// HOOK MANAGER //////////////////////////////////////////////////////////////*/ error EMPTY_HOOK_ADDRESS(); // 0x413348ae error HOOK_ERC165_FAIL(); // 0x9f93f87d error INVALID_KEY(); // 0xce7045bd /*////////////////////////////////////////////////////////////// MODULE MANAGER //////////////////////////////////////////////////////////////*/ error EMPTY_MODULE_ADDRESS(); // 0x912fe2f2 error RECUSIVE_MODULE_CALL(); // 0x2cf7b9c8 error MODULE_ERC165_FAIL(); // 0xc1ad2a50 /*////////////////////////////////////////////////////////////// AUTH //////////////////////////////////////////////////////////////*/ error NOT_FROM_BOOTLOADER(); // 0x93887e3b error NOT_FROM_MODULE(); // 0x574a805d error NOT_FROM_HOOK(); // 0xd675a4f1 error NOT_FROM_SELF(); // 0xa70c28d1 error NOT_FROM_SELF_OR_MODULE(); // 0x22a1259f /*////////////////////////////////////////////////////////////// R1 VALIDATOR //////////////////////////////////////////////////////////////*/ error INVALID_SIGNATURE(); // 0xa3402a38 /*////////////////////////////////////////////////////////////// SOCIAL RECOVERY //////////////////////////////////////////////////////////////*/ error INVALID_RECOVERY_CONFIG(); // 0xf774f439 error INVALID_RECOVERY_NONCE(); // 0x098c9f8e error INVALID_GUARDIAN(); // 0x11a2a82b error INVALID_GUARDIAN_SIGNATURE(); // 0xcc117c1c error ZERO_ADDRESS_GUARDIAN(); // 0x6de9b401 error GUARDIANS_MUST_BE_SORTED(); // 0xc52b41f7 error RECOVERY_TIMELOCK(); // 0x1506ac5a error RECOVERY_NOT_STARTED(); // 0xa6a4a3aa error RECOVERY_NOT_INITED(); // 0xd0f6fdbf error RECOVERY_IN_PROGRESS(); // 0x8daa42a9 error INSUFFICIENT_GUARDIANS(); // 0x7629075d error ALREADY_INITED(); // 0xdb0c77c8 /*////////////////////////////////////////////////////////////// FACTORY //////////////////////////////////////////////////////////////*/ error DEPLOYMENT_FAILED(); // 0x0f02d218 error INITIALIZATION_FAILED(); // 0x5b101091 error INVALID_INITIALIZER(); // 0x350366d7 error INVALID_SALT(); // 0x8b3152e6 error ALREADY_CREATED(); // 0x26ebf2e8 /*////////////////////////////////////////////////////////////// PAYMASTER //////////////////////////////////////////////////////////////*/ error UNSUPPORTED_FLOW(); // 0xd721e389 error UNAUTHORIZED_WITHDRAW(); // 0x7809a0b4 error INVALID_TOKEN(); // 0xd0995cf2 error SHORT_PAYMASTER_INPUT(); // 0x48d170f6 error UNSUPPORTED_TOKEN(); // 0xce706f70 error LESS_ALLOWANCE_FOR_PAYMASTER(); // 0x11f7d13f error FAILED_FEE_TRANSFER(); // 0xf316e09d error INVALID_MARKUP(); // 0x4af7ffe3 error USER_LIMIT_REACHED(); // 0x07235346 error INVALID_USER_LIMIT(); // 0x2640fa41 error NOT_AGW_ACCOUNT(); // 0x1ae1d6fd error EXCEEDS_MAX_SPONSORED_ETH(); // 0x3f379f40 /*////////////////////////////////////////////////////////////// REGISTRY //////////////////////////////////////////////////////////////*/ error NOT_FROM_FACTORY(); // 0x238438ed error NOT_FROM_DEPLOYER(); // 0x83f090e3 /*////////////////////////////////////////////////////////////// BatchCaller //////////////////////////////////////////////////////////////*/ error ONLY_DELEGATECALL(); // 0x43d22ee9 error CALL_FAILED(); // 0x84aed38d /*////////////////////////////////////////////////////////////// INITABLE //////////////////////////////////////////////////////////////*/ error MODULE_NOT_ADDED_CORRECTLY(); // 0xb66e8ec4 error MODULE_NOT_REMOVED_CORRECTLY(); // 0x680c8744 error MsgValueMismatch(uint256 actualValue, uint256 expectedValue); }
// SPDX-License-Identifier: GPL-3.0 pragma solidity ^0.8.17; interface IAGWRegistry { function register(address account) external; function isAGW(address account) external view returns (bool); }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v5.1.0) (access/Ownable2Step.sol) pragma solidity ^0.8.20; import {Ownable} from "./Ownable.sol"; /** * @dev Contract module which provides access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * This extension of the {Ownable} contract includes a two-step mechanism to transfer * ownership, where the new owner must call {acceptOwnership} in order to replace the * old one. This can help prevent common mistakes, such as transfers of ownership to * incorrect accounts, or to contracts that are unable to interact with the * permission system. * * The initial owner is specified at deployment time in the constructor for `Ownable`. This * can later be changed with {transferOwnership} and {acceptOwnership}. * * This module is used through inheritance. It will make available all functions * from parent (Ownable). */ abstract contract Ownable2Step is Ownable { address private _pendingOwner; event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner); /** * @dev Returns the address of the pending owner. */ function pendingOwner() public view virtual returns (address) { return _pendingOwner; } /** * @dev Starts the ownership transfer of the contract to a new account. Replaces the pending transfer if there is one. * Can only be called by the current owner. * * Setting `newOwner` to the zero address is allowed; this can be used to cancel an initiated ownership transfer. */ function transferOwnership(address newOwner) public virtual override onlyOwner { _pendingOwner = newOwner; emit OwnershipTransferStarted(owner(), newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`) and deletes any pending owner. * Internal function without access restriction. */ function _transferOwnership(address newOwner) internal virtual override { delete _pendingOwner; super._transferOwnership(newOwner); } /** * @dev The new owner accepts the ownership transfer. */ function acceptOwnership() public virtual { address sender = _msgSender(); if (pendingOwner() != sender) { revert OwnableUnauthorizedAccount(sender); } _transferOwnership(sender); } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v5.0.0) (access/Ownable.sol) pragma solidity ^0.8.20; import {Context} from "../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. * * The initial owner is set to the address provided by the deployer. 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; /** * @dev The caller account is not authorized to perform an operation. */ error OwnableUnauthorizedAccount(address account); /** * @dev The owner is not a valid owner account. (eg. `address(0)`) */ error OwnableInvalidOwner(address owner); event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the address provided by the deployer as the initial owner. */ constructor(address initialOwner) { if (initialOwner == address(0)) { revert OwnableInvalidOwner(address(0)); } _transferOwnership(initialOwner); } /** * @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 { if (owner() != _msgSender()) { revert OwnableUnauthorizedAccount(_msgSender()); } } /** * @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 { if (newOwner == address(0)) { revert OwnableInvalidOwner(address(0)); } _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 (last updated v5.0.1) (utils/Context.sol) pragma solidity ^0.8.20; /** * @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; } function _contextSuffixLength() internal view virtual returns (uint256) { return 0; } }
{ "evmVersion": "cancun", "optimizer": { "enabled": true, "mode": "3" }, "outputSelection": { "*": { "*": [ "abi" ] } }, "detectMissingLibraries": false, "forceEVMLA": false, "enableEraVMExtensions": true, "libraries": {} }
[{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"NOT_FROM_FACTORY","type":"error"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"OwnableInvalidOwner","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"OwnableUnauthorizedAccount","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"factory","type":"address"}],"name":"FactorySet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"factory","type":"address"}],"name":"FactoryUnset","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferStarted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isAGW","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFactory","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pendingOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"register","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"}],"name":"registerMultiple","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"factory_","type":"address"}],"name":"setFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"unregister","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"}],"name":"unregisterMultiple","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"factory_","type":"address"}],"name":"unsetFactory","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Deployed Bytecode
0x0001000000000002000300000000000200000000000103550000006003100270000000980330019700000001002001900000001d0000c13d0000008002000039000000400020043f000000040030008c000002360000413d000000000201043b000000e002200270000000a20020009c000000470000a13d000000a30020009c000000790000a13d000000a40020009c000000a90000213d000000a70020009c000000ef0000613d000000a80020009c000002360000c13d0000000001000416000000000001004b000002360000c13d0000000101000039000000000101041a000001bb0000013d0000000002000416000000000002004b000002360000c13d0000001f0230003900000099022001970000008002200039000000400020043f0000001f0430018f0000009a0530019800000080025000390000002e0000613d0000008006000039000000000701034f000000007807043c0000000006860436000000000026004b0000002a0000c13d000000000004004b0000003b0000613d000000000151034f0000000304400210000000000502043300000000054501cf000000000545022f000000000101043b0000010004400089000000000141022f00000000014101cf000000000151019f0000000000120435000000200030008c000002360000413d000000800100043d0000009b0010009c000002360000213d0000009b06100198000000d60000c13d000000a001000041000000000010043f000000040000043f000000a1010000410000025f00010430000000ac0020009c0000008b0000213d000000b00020009c0000013d0000613d000000b10020009c000001510000613d000000b20020009c000002360000c13d000000240030008c000002360000413d0000000002000416000000000002004b000002360000c13d0000000401100370000000000201043b0000009b0020009c000002360000213d0000000001000411000000000010043f0000000201000039000000200010043f0000000001000414000000980010009c0000009801008041000000c001100210000000b4011001c7000300000002001d0000801002000039025d02580000040f00000001002001900000000302000029000002360000613d000000000101043b000000000101041a000000ff00100190000000700000c13d000000000100041a0000009b011001970000000003000411000000000013004b000002420000c13d000000000020043f0000000301000039000000200010043f025d02460000040f000000000201041a000000bc02200197000000000021041b00000000010000190000025e0001042e000000a90020009c0000019e0000613d000000aa0020009c000001b70000613d000000ab0020009c000002360000c13d000000240030008c000002360000413d0000000002000416000000000002004b000002360000c13d0000000401100370000000000101043b0000009b0010009c000002360000213d000000000010043f0000000301000039000001480000013d000000ad0020009c000001bf0000613d000000ae0020009c000001ea0000613d000000af0020009c000002360000c13d0000000001000416000000000001004b000002360000c13d000000000100041a0000009b051001970000000002000411000000000025004b000002380000c13d0000000102000039000000000302041a0000009c03300197000000000032041b0000009c01100197000000000010041b0000000001000414000000980010009c0000009801008041000000c0011002100000009d011001c70000800d0200003900000003030000390000009e040000410000000006000019000002310000013d000000a50020009c000002150000613d000000a60020009c000002360000c13d000000240030008c000002360000413d0000000002000416000000000002004b000002360000c13d0000000401100370000000000101043b0000009b0010009c000002360000213d000000000200041a0000009b032001970000000002000411000000000023004b000002380000c13d0000009b01100197000300000001001d000000000010043f0000000201000039000000200010043f0000000001000414000000980010009c0000009801008041000000c001100210000000b4011001c70000801002000039025d02580000040f0000000100200190000002360000613d000000000101043b000000000201041a000000bc02200197000000000021041b0000000001000414000000980010009c0000009801008041000000c0011002100000009d011001c70000800d020000390000000203000039000000b504000041000002130000013d0000000101000039000000000201041a0000009c02200197000000000021041b000000000100041a0000009c02100197000000000262019f000000000020041b00000000020004140000009b05100197000000980020009c0000009802008041000000c0012002100000009d011001c70000800d0200003900000003030000390000009e04000041025d02530000040f0000000100200190000002360000613d0000002001000039000001000010044300000120000004430000009f010000410000025e0001042e000000240030008c000002360000413d0000000002000416000000000002004b000002360000c13d0000000402100370000000000202043b000000b80020009c000002360000213d0000002304200039000000000034004b000002360000813d0000000404200039000000000141034f000000000101043b000200000001001d000000b80010009c000002360000213d000100240020003d000000020100002900000005011002100000000101100029000000000031004b000002360000213d0000000001000411000000000010043f0000000201000039000000200010043f0000000001000414000000980010009c0000009801008041000000c001100210000000b4011001c70000801002000039025d02580000040f0000000100200190000002360000613d000000000101043b000000000101041a000000ff001001900000011d0000c13d000000000100041a0000009b011001970000000002000411000000000012004b000002420000c13d000000020000006b000002340000613d0000000004000019000000050140021000000001011000290000000001100367000000000101043b0000009b0010009c000002360000213d000000000010043f0000000301000039000000200010043f0000000001000414000000980010009c0000009801008041000000c001100210000000b4011001c70000801002000039000300000004001d025d02580000040f00000003040000290000000100200190000002360000613d000000000101043b000000000201041a000000bc0220019700000001022001bf000000000021041b0000000104400039000000020040006c000001200000413d000002340000013d000000240030008c000002360000413d0000000002000416000000000002004b000002360000c13d0000000401100370000000000101043b0000009b0010009c000002360000213d000000000010043f0000000201000039000000200010043f025d02460000040f000000000101041a000000ff001001900000000001000039000000010100c039000000800010043f000000b7010000410000025e0001042e000000240030008c000002360000413d0000000002000416000000000002004b000002360000c13d0000000402100370000000000202043b000000b80020009c000002360000213d0000002304200039000000000034004b000002360000813d0000000404200039000000000141034f000000000101043b000200000001001d000000b80010009c000002360000213d000100240020003d000000020100002900000005011002100000000101100029000000000031004b000002360000213d0000000001000411000000000010043f0000000201000039000000200010043f0000000001000414000000980010009c0000009801008041000000c001100210000000b4011001c70000801002000039025d02580000040f0000000100200190000002360000613d000000000101043b000000000101041a000000ff001001900000017f0000c13d000000000100041a0000009b011001970000000002000411000000000012004b000002420000c13d000000020000006b000002340000613d0000000004000019000000050140021000000001011000290000000001100367000000000101043b0000009b0010009c000002360000213d000000000010043f0000000301000039000000200010043f0000000001000414000000980010009c0000009801008041000000c001100210000000b4011001c70000801002000039000300000004001d025d02580000040f00000003040000290000000100200190000002360000613d000000000101043b000000000201041a000000bc02200197000000000021041b0000000104400039000000020040006c000001820000413d000002340000013d0000000001000416000000000001004b000002360000c13d0000000101000039000000000201041a0000009b032001970000000006000411000000000063004b0000023d0000c13d0000009c02200197000000000021041b000000000100041a0000009c02100197000000000262019f000000000020041b00000000020004140000009b05100197000000980020009c0000009802008041000000c0012002100000009d011001c70000800d0200003900000003030000390000009e04000041000002310000013d0000000001000416000000000001004b000002360000c13d000000000100041a0000009b01100197000000800010043f000000b7010000410000025e0001042e000000240030008c000002360000413d0000000002000416000000000002004b000002360000c13d0000000401100370000000000201043b0000009b0020009c000002360000213d0000000001000411000000000010043f0000000201000039000000200010043f0000000001000414000000980010009c0000009801008041000000c001100210000000b4011001c7000300000002001d0000801002000039025d02580000040f00000001002001900000000302000029000002360000613d000000000101043b000000000101041a000000ff00100190000001e00000c13d000000000100041a0000009b011001970000000003000411000000000013004b000002420000c13d000000000020043f0000000301000039000000200010043f025d02460000040f000000000201041a000000bc0220019700000001022001bf000000000021041b00000000010000190000025e0001042e000000240030008c000002360000413d0000000002000416000000000002004b000002360000c13d0000000401100370000000000101043b0000009b0010009c000002360000213d000000000200041a0000009b032001970000000002000411000000000023004b000002380000c13d0000009b01100197000300000001001d000000000010043f0000000201000039000000200010043f0000000001000414000000980010009c0000009801008041000000c001100210000000b4011001c70000801002000039025d02580000040f0000000100200190000002360000613d000000000101043b000000000201041a000000bc0220019700000001022001bf000000000021041b0000000001000414000000980010009c0000009801008041000000c0011002100000009d011001c70000800d020000390000000203000039000000b9040000410000000305000029000002310000013d000000240030008c000002360000413d0000000002000416000000000002004b000002360000c13d0000000401100370000000000101043b0000009b0010009c000002360000213d000000000200041a0000009b052001970000000002000411000000000025004b000002380000c13d0000009b061001970000000101000039000000000201041a0000009c02200197000000000262019f000000000021041b0000000001000414000000980010009c0000009801008041000000c0011002100000009d011001c70000800d020000390000000303000039000000b604000041025d02530000040f0000000100200190000002360000613d00000000010000190000025e0001042e00000000010000190000025f00010430000000b301000041000000000010043f000000040020043f000000a1010000410000025f00010430000000b301000041000000000010043f000000040060043f000000a1010000410000025f00010430000000ba01000041000000000010043f000000bb010000410000025f000104300000000001000414000000980010009c0000009801008041000000c001100210000000b4011001c70000801002000039025d02580000040f0000000100200190000002510000613d000000000101043b000000000001042d00000000010000190000025f0001043000000256002104210000000102000039000000000001042d0000000002000019000000000001042d0000025b002104230000000102000039000000000001042d0000000002000019000000000001042d0000025d000004320000025e0001042e0000025f0001043000000000000000000000000000000000000000000000000000000000ffffffff00000000000000000000000000000000000000000000000000000001ffffffe000000000000000000000000000000000000000000000000000000000ffffffe0000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000008be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e000000002000000000000000000000000000000400000010000000000000000001e4fbdf70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000240000000000000000000000000000000000000000000000000000000000000000000000000000000079ba509600000000000000000000000000000000000000000000000000000000a3ba111500000000000000000000000000000000000000000000000000000000f2fde38a00000000000000000000000000000000000000000000000000000000f2fde38b00000000000000000000000000000000000000000000000000000000fe819cf800000000000000000000000000000000000000000000000000000000a3ba111600000000000000000000000000000000000000000000000000000000e30c39780000000000000000000000000000000000000000000000000000000079ba5097000000000000000000000000000000000000000000000000000000008da5cb5b00000000000000000000000000000000000000000000000000000000932bdb47000000000000000000000000000000000000000000000000000000004420e485000000000000000000000000000000000000000000000000000000004420e486000000000000000000000000000000000000000000000000000000005bb4780800000000000000000000000000000000000000000000000000000000715018a6000000000000000000000000000000000000000000000000000000000f04ba6700000000000000000000000000000000000000000000000000000000210623ea000000000000000000000000000000000000000000000000000000002ec2c246118cdaa7000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000040000000000000000000000000a28509b69b263b0c27b3b2947957d2eceaf2509f452a3587dd447b30de6ab26538d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e227000000000000000000000000000000000000000020000000800000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff1edf3afd4ac789736e00d216cd88be164ddcef26a6eedcc30cdb0cb62f3741b1238438ed000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000000000090a8218a580224db3982333cda2aa2427b75c5071d2e35fa2abaeb5d99753663
Loading...
Loading
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.