More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 166 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Withdraw | 20284019 | 204 days ago | IN | 0 ETH | 0.00033619 | ||||
Release By Artis... | 20010906 | 243 days ago | IN | 0 ETH | 0.00053799 | ||||
Release By Artis... | 19979190 | 247 days ago | IN | 0 ETH | 0.00093791 | ||||
Release By Artis... | 19940180 | 252 days ago | IN | 0 ETH | 0.00064545 | ||||
Release By Artis... | 19911400 | 257 days ago | IN | 0 ETH | 0.00030166 | ||||
Release By Artis... | 19794528 | 273 days ago | IN | 0 ETH | 0.00031424 | ||||
Release By Artis... | 19578773 | 303 days ago | IN | 0 ETH | 0.00180516 | ||||
Release By Artis... | 19575320 | 304 days ago | IN | 0 ETH | 0.00119832 | ||||
Release By Artis... | 19225569 | 353 days ago | IN | 0 ETH | 0.00149557 | ||||
Release By Artis... | 18937384 | 393 days ago | IN | 0 ETH | 0.00070157 | ||||
Release By Artis... | 18919839 | 396 days ago | IN | 0 ETH | 0.0013761 | ||||
Release By Artis... | 18600876 | 440 days ago | IN | 0 ETH | 0.00121589 | ||||
Release By Artis... | 18283339 | 485 days ago | IN | 0 ETH | 0.00032926 | ||||
Release By Artis... | 18080817 | 513 days ago | IN | 0 ETH | 0.0006541 | ||||
Release By Artis... | 17919618 | 536 days ago | IN | 0 ETH | 0.00067932 | ||||
Release By Artis... | 17890124 | 540 days ago | IN | 0 ETH | 0.00098118 | ||||
Release By Artis... | 17820971 | 549 days ago | IN | 0 ETH | 0.0016042 | ||||
Release By Artis... | 17814402 | 550 days ago | IN | 0 ETH | 0.00146358 | ||||
Release By Artis... | 17668910 | 571 days ago | IN | 0 ETH | 0.00074544 | ||||
Release By Artis... | 17219431 | 634 days ago | IN | 0 ETH | 0.00310248 | ||||
Release By Artis... | 17123171 | 648 days ago | IN | 0 ETH | 0.00223377 | ||||
Release By Artis... | 16929937 | 675 days ago | IN | 0 ETH | 0.00108399 | ||||
Release By Artis... | 16900237 | 679 days ago | IN | 0 ETH | 0.00098922 | ||||
Release By Artis... | 16868533 | 684 days ago | IN | 0 ETH | 0.00100363 | ||||
Release By Artis... | 16818212 | 691 days ago | IN | 0 ETH | 0.00123275 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
20284019 | 204 days ago | 4.77093333 ETH | ||||
20010906 | 243 days ago | 0.068 ETH | ||||
19979190 | 247 days ago | 0.068 ETH | ||||
19940180 | 252 days ago | 0.068 ETH | ||||
19911400 | 257 days ago | 0.00266666 ETH | ||||
19794528 | 273 days ago | 0.068 ETH | ||||
19578773 | 303 days ago | 0.068 ETH | ||||
19575320 | 304 days ago | 0.00746666 ETH | ||||
19225569 | 353 days ago | 0.068 ETH | ||||
18937384 | 393 days ago | 0.0056 ETH | ||||
18919839 | 396 days ago | 0.068 ETH | ||||
18600876 | 440 days ago | 0.068 ETH | ||||
18283339 | 485 days ago | 0.0008 ETH | ||||
18080817 | 513 days ago | 0.068 ETH | ||||
17919618 | 536 days ago | 0.0056 ETH | ||||
17890124 | 540 days ago | 0.068 ETH | ||||
17820971 | 549 days ago | 0.00026666 ETH | ||||
17814402 | 550 days ago | 0.0008 ETH | ||||
17668910 | 571 days ago | 0.00426666 ETH | ||||
17219431 | 634 days ago | 0.0056 ETH | ||||
17123171 | 648 days ago | 0.068 ETH | ||||
16929937 | 675 days ago | 0.0008 ETH | ||||
16900237 | 679 days ago | 0.0056 ETH | ||||
16868533 | 684 days ago | 0.068 ETH | ||||
16818212 | 691 days ago | 0.0032 ETH |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
GenesisPayments
Compiler Version
v0.8.9+commit.e5eed63a
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
//SPDX-License-Identifier: MIT pragma solidity ^0.8.9; import "@openzeppelin/contracts/access/AccessControl.sol"; import "@openzeppelin/contracts/finance/PaymentSplitter.sol"; contract GenesisPayments is AccessControl, PaymentSplitter { bytes32 public constant OPERATOR_ROLE = keccak256("OPERATOR_ROLE"); constructor( address[] memory artists, uint256[] memory shares ) payable PaymentSplitter(artists, shares) { _grantRole(DEFAULT_ADMIN_ROLE, msg.sender); _grantRole(OPERATOR_ROLE, msg.sender); } function releasableByArtist(address account) public view returns (uint256) { return super.releasable(account); } function releaseByArtist() public { super.release(payable(msg.sender)); } function withdraw(address payable beneficiary) public onlyRole(DEFAULT_ADMIN_ROLE) { uint256 amount = address(this).balance; (bool success, ) = payable(beneficiary).call{value: amount}(""); require(success, "Failed to withdraw"); } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.7.0) (access/AccessControl.sol) pragma solidity ^0.8.0; import "./IAccessControl.sol"; import "../utils/Context.sol"; import "../utils/Strings.sol"; import "../utils/introspection/ERC165.sol"; /** * @dev Contract module that allows children to implement role-based access * control mechanisms. This is a lightweight version that doesn't allow enumerating role * members except through off-chain means by accessing the contract event logs. Some * applications may benefit from on-chain enumerability, for those cases see * {AccessControlEnumerable}. * * Roles are referred to by their `bytes32` identifier. These should be exposed * in the external API and be unique. The best way to achieve this is by * using `public constant` hash digests: * * ``` * bytes32 public constant MY_ROLE = keccak256("MY_ROLE"); * ``` * * Roles can be used to represent a set of permissions. To restrict access to a * function call, use {hasRole}: * * ``` * function foo() public { * require(hasRole(MY_ROLE, msg.sender)); * ... * } * ``` * * Roles can be granted and revoked dynamically via the {grantRole} and * {revokeRole} functions. Each role has an associated admin role, and only * accounts that have a role's admin role can call {grantRole} and {revokeRole}. * * By default, the admin role for all roles is `DEFAULT_ADMIN_ROLE`, which means * that only accounts with this role will be able to grant or revoke other * roles. More complex role relationships can be created by using * {_setRoleAdmin}. * * WARNING: The `DEFAULT_ADMIN_ROLE` is also its own admin: it has permission to * grant and revoke this role. Extra precautions should be taken to secure * accounts that have been granted it. */ abstract contract AccessControl is Context, IAccessControl, ERC165 { struct RoleData { mapping(address => bool) members; bytes32 adminRole; } mapping(bytes32 => RoleData) private _roles; bytes32 public constant DEFAULT_ADMIN_ROLE = 0x00; /** * @dev Modifier that checks that an account has a specific role. Reverts * with a standardized message including the required role. * * The format of the revert reason is given by the following regular expression: * * /^AccessControl: account (0x[0-9a-f]{40}) is missing role (0x[0-9a-f]{64})$/ * * _Available since v4.1._ */ modifier onlyRole(bytes32 role) { _checkRole(role); _; } /** * @dev See {IERC165-supportsInterface}. */ function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) { return interfaceId == type(IAccessControl).interfaceId || super.supportsInterface(interfaceId); } /** * @dev Returns `true` if `account` has been granted `role`. */ function hasRole(bytes32 role, address account) public view virtual override returns (bool) { return _roles[role].members[account]; } /** * @dev Revert with a standard message if `_msgSender()` is missing `role`. * Overriding this function changes the behavior of the {onlyRole} modifier. * * Format of the revert message is described in {_checkRole}. * * _Available since v4.6._ */ function _checkRole(bytes32 role) internal view virtual { _checkRole(role, _msgSender()); } /** * @dev Revert with a standard message if `account` is missing `role`. * * The format of the revert reason is given by the following regular expression: * * /^AccessControl: account (0x[0-9a-f]{40}) is missing role (0x[0-9a-f]{64})$/ */ function _checkRole(bytes32 role, address account) internal view virtual { if (!hasRole(role, account)) { revert( string( abi.encodePacked( "AccessControl: account ", Strings.toHexString(uint160(account), 20), " is missing role ", Strings.toHexString(uint256(role), 32) ) ) ); } } /** * @dev Returns the admin role that controls `role`. See {grantRole} and * {revokeRole}. * * To change a role's admin, use {_setRoleAdmin}. */ function getRoleAdmin(bytes32 role) public view virtual override returns (bytes32) { return _roles[role].adminRole; } /** * @dev Grants `role` to `account`. * * If `account` had not been already granted `role`, emits a {RoleGranted} * event. * * Requirements: * * - the caller must have ``role``'s admin role. * * May emit a {RoleGranted} event. */ function grantRole(bytes32 role, address account) public virtual override onlyRole(getRoleAdmin(role)) { _grantRole(role, account); } /** * @dev Revokes `role` from `account`. * * If `account` had been granted `role`, emits a {RoleRevoked} event. * * Requirements: * * - the caller must have ``role``'s admin role. * * May emit a {RoleRevoked} event. */ function revokeRole(bytes32 role, address account) public virtual override onlyRole(getRoleAdmin(role)) { _revokeRole(role, account); } /** * @dev Revokes `role` from the calling account. * * Roles are often managed via {grantRole} and {revokeRole}: this function's * purpose is to provide a mechanism for accounts to lose their privileges * if they are compromised (such as when a trusted device is misplaced). * * If the calling account had been revoked `role`, emits a {RoleRevoked} * event. * * Requirements: * * - the caller must be `account`. * * May emit a {RoleRevoked} event. */ function renounceRole(bytes32 role, address account) public virtual override { require(account == _msgSender(), "AccessControl: can only renounce roles for self"); _revokeRole(role, account); } /** * @dev Grants `role` to `account`. * * If `account` had not been already granted `role`, emits a {RoleGranted} * event. Note that unlike {grantRole}, this function doesn't perform any * checks on the calling account. * * May emit a {RoleGranted} event. * * [WARNING] * ==== * This function should only be called from the constructor when setting * up the initial roles for the system. * * Using this function in any other way is effectively circumventing the admin * system imposed by {AccessControl}. * ==== * * NOTE: This function is deprecated in favor of {_grantRole}. */ function _setupRole(bytes32 role, address account) internal virtual { _grantRole(role, account); } /** * @dev Sets `adminRole` as ``role``'s admin role. * * Emits a {RoleAdminChanged} event. */ function _setRoleAdmin(bytes32 role, bytes32 adminRole) internal virtual { bytes32 previousAdminRole = getRoleAdmin(role); _roles[role].adminRole = adminRole; emit RoleAdminChanged(role, previousAdminRole, adminRole); } /** * @dev Grants `role` to `account`. * * Internal function without access restriction. * * May emit a {RoleGranted} event. */ function _grantRole(bytes32 role, address account) internal virtual { if (!hasRole(role, account)) { _roles[role].members[account] = true; emit RoleGranted(role, account, _msgSender()); } } /** * @dev Revokes `role` from `account`. * * Internal function without access restriction. * * May emit a {RoleRevoked} event. */ function _revokeRole(bytes32 role, address account) internal virtual { if (hasRole(role, account)) { _roles[role].members[account] = false; emit RoleRevoked(role, account, _msgSender()); } } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.7.0) (finance/PaymentSplitter.sol) pragma solidity ^0.8.0; import "../token/ERC20/utils/SafeERC20.sol"; import "../utils/Address.sol"; import "../utils/Context.sol"; /** * @title PaymentSplitter * @dev This contract allows to split Ether payments among a group of accounts. The sender does not need to be aware * that the Ether will be split in this way, since it is handled transparently by the contract. * * The split can be in equal parts or in any other arbitrary proportion. The way this is specified is by assigning each * account to a number of shares. Of all the Ether that this contract receives, each account will then be able to claim * an amount proportional to the percentage of total shares they were assigned. The distribution of shares is set at the * time of contract deployment and can't be updated thereafter. * * `PaymentSplitter` follows a _pull payment_ model. This means that payments are not automatically forwarded to the * accounts but kept in this contract, and the actual transfer is triggered as a separate step by calling the {release} * function. * * NOTE: This contract assumes that ERC20 tokens will behave similarly to native tokens (Ether). Rebasing tokens, and * tokens that apply fees during transfers, are likely to not be supported as expected. If in doubt, we encourage you * to run tests before sending real value to this contract. */ contract PaymentSplitter is Context { event PayeeAdded(address account, uint256 shares); event PaymentReleased(address to, uint256 amount); event ERC20PaymentReleased(IERC20 indexed token, address to, uint256 amount); event PaymentReceived(address from, uint256 amount); uint256 private _totalShares; uint256 private _totalReleased; mapping(address => uint256) private _shares; mapping(address => uint256) private _released; address[] private _payees; mapping(IERC20 => uint256) private _erc20TotalReleased; mapping(IERC20 => mapping(address => uint256)) private _erc20Released; /** * @dev Creates an instance of `PaymentSplitter` where each account in `payees` is assigned the number of shares at * the matching position in the `shares` array. * * All addresses in `payees` must be non-zero. Both arrays must have the same non-zero length, and there must be no * duplicates in `payees`. */ constructor(address[] memory payees, uint256[] memory shares_) payable { require(payees.length == shares_.length, "PaymentSplitter: payees and shares length mismatch"); require(payees.length > 0, "PaymentSplitter: no payees"); for (uint256 i = 0; i < payees.length; i++) { _addPayee(payees[i], shares_[i]); } } /** * @dev The Ether received will be logged with {PaymentReceived} events. Note that these events are not fully * reliable: it's possible for a contract to receive Ether without triggering this function. This only affects the * reliability of the events, and not the actual splitting of Ether. * * To learn more about this see the Solidity documentation for * https://solidity.readthedocs.io/en/latest/contracts.html#fallback-function[fallback * functions]. */ receive() external payable virtual { emit PaymentReceived(_msgSender(), msg.value); } /** * @dev Getter for the total shares held by payees. */ function totalShares() public view returns (uint256) { return _totalShares; } /** * @dev Getter for the total amount of Ether already released. */ function totalReleased() public view returns (uint256) { return _totalReleased; } /** * @dev Getter for the total amount of `token` already released. `token` should be the address of an IERC20 * contract. */ function totalReleased(IERC20 token) public view returns (uint256) { return _erc20TotalReleased[token]; } /** * @dev Getter for the amount of shares held by an account. */ function shares(address account) public view returns (uint256) { return _shares[account]; } /** * @dev Getter for the amount of Ether already released to a payee. */ function released(address account) public view returns (uint256) { return _released[account]; } /** * @dev Getter for the amount of `token` tokens already released to a payee. `token` should be the address of an * IERC20 contract. */ function released(IERC20 token, address account) public view returns (uint256) { return _erc20Released[token][account]; } /** * @dev Getter for the address of the payee number `index`. */ function payee(uint256 index) public view returns (address) { return _payees[index]; } /** * @dev Getter for the amount of payee's releasable Ether. */ function releasable(address account) public view returns (uint256) { uint256 totalReceived = address(this).balance + totalReleased(); return _pendingPayment(account, totalReceived, released(account)); } /** * @dev Getter for the amount of payee's releasable `token` tokens. `token` should be the address of an * IERC20 contract. */ function releasable(IERC20 token, address account) public view returns (uint256) { uint256 totalReceived = token.balanceOf(address(this)) + totalReleased(token); return _pendingPayment(account, totalReceived, released(token, account)); } /** * @dev Triggers a transfer to `account` of the amount of Ether they are owed, according to their percentage of the * total shares and their previous withdrawals. */ function release(address payable account) public virtual { require(_shares[account] > 0, "PaymentSplitter: account has no shares"); uint256 payment = releasable(account); require(payment != 0, "PaymentSplitter: account is not due payment"); _released[account] += payment; _totalReleased += payment; Address.sendValue(account, payment); emit PaymentReleased(account, payment); } /** * @dev Triggers a transfer to `account` of the amount of `token` tokens they are owed, according to their * percentage of the total shares and their previous withdrawals. `token` must be the address of an IERC20 * contract. */ function release(IERC20 token, address account) public virtual { require(_shares[account] > 0, "PaymentSplitter: account has no shares"); uint256 payment = releasable(token, account); require(payment != 0, "PaymentSplitter: account is not due payment"); _erc20Released[token][account] += payment; _erc20TotalReleased[token] += payment; SafeERC20.safeTransfer(token, account, payment); emit ERC20PaymentReleased(token, account, payment); } /** * @dev internal logic for computing the pending payment of an `account` given the token historical balances and * already released amounts. */ function _pendingPayment( address account, uint256 totalReceived, uint256 alreadyReleased ) private view returns (uint256) { return (totalReceived * _shares[account]) / _totalShares - alreadyReleased; } /** * @dev Add a new payee to the contract. * @param account The address of the payee to add. * @param shares_ The number of shares owned by the payee. */ function _addPayee(address account, uint256 shares_) private { require(account != address(0), "PaymentSplitter: account is the zero address"); require(shares_ > 0, "PaymentSplitter: shares are 0"); require(_shares[account] == 0, "PaymentSplitter: account already has shares"); _payees.push(account); _shares[account] = shares_; _totalShares = _totalShares + shares_; emit PayeeAdded(account, shares_); } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (access/IAccessControl.sol) pragma solidity ^0.8.0; /** * @dev External interface of AccessControl declared to support ERC165 detection. */ interface IAccessControl { /** * @dev Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` * * `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite * {RoleAdminChanged} not being emitted signaling this. * * _Available since v3.1._ */ event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole); /** * @dev Emitted when `account` is granted `role`. * * `sender` is the account that originated the contract call, an admin role * bearer except when using {AccessControl-_setupRole}. */ event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender); /** * @dev Emitted when `account` is revoked `role`. * * `sender` is the account that originated the contract call: * - if using `revokeRole`, it is the admin role bearer * - if using `renounceRole`, it is the role bearer (i.e. `account`) */ event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender); /** * @dev Returns `true` if `account` has been granted `role`. */ function hasRole(bytes32 role, address account) external view returns (bool); /** * @dev Returns the admin role that controls `role`. See {grantRole} and * {revokeRole}. * * To change a role's admin, use {AccessControl-_setRoleAdmin}. */ function getRoleAdmin(bytes32 role) external view returns (bytes32); /** * @dev Grants `role` to `account`. * * If `account` had not been already granted `role`, emits a {RoleGranted} * event. * * Requirements: * * - the caller must have ``role``'s admin role. */ function grantRole(bytes32 role, address account) external; /** * @dev Revokes `role` from `account`. * * If `account` had been granted `role`, emits a {RoleRevoked} event. * * Requirements: * * - the caller must have ``role``'s admin role. */ function revokeRole(bytes32 role, address account) external; /** * @dev Revokes `role` from the calling account. * * Roles are often managed via {grantRole} and {revokeRole}: this function's * purpose is to provide a mechanism for accounts to lose their privileges * if they are compromised (such as when a trusted device is misplaced). * * If the calling account had been granted `role`, emits a {RoleRevoked} * event. * * Requirements: * * - the caller must be `account`. */ function renounceRole(bytes32 role, address account) external; }
// 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; } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.7.0) (utils/Strings.sol) pragma solidity ^0.8.0; /** * @dev String operations. */ library Strings { bytes16 private constant _HEX_SYMBOLS = "0123456789abcdef"; uint8 private constant _ADDRESS_LENGTH = 20; /** * @dev Converts a `uint256` to its ASCII `string` decimal representation. */ function toString(uint256 value) internal pure returns (string memory) { // Inspired by OraclizeAPI's implementation - MIT licence // https://github.com/oraclize/ethereum-api/blob/b42146b063c7d6ee1358846c198246239e9360e8/oraclizeAPI_0.4.25.sol if (value == 0) { return "0"; } uint256 temp = value; uint256 digits; while (temp != 0) { digits++; temp /= 10; } bytes memory buffer = new bytes(digits); while (value != 0) { digits -= 1; buffer[digits] = bytes1(uint8(48 + uint256(value % 10))); value /= 10; } return string(buffer); } /** * @dev Converts a `uint256` to its ASCII `string` hexadecimal representation. */ function toHexString(uint256 value) internal pure returns (string memory) { if (value == 0) { return "0x00"; } uint256 temp = value; uint256 length = 0; while (temp != 0) { length++; temp >>= 8; } return toHexString(value, length); } /** * @dev Converts a `uint256` to its ASCII `string` hexadecimal representation with fixed length. */ function toHexString(uint256 value, uint256 length) internal pure returns (string memory) { bytes memory buffer = new bytes(2 * length + 2); buffer[0] = "0"; buffer[1] = "x"; for (uint256 i = 2 * length + 1; i > 1; --i) { buffer[i] = _HEX_SYMBOLS[value & 0xf]; value >>= 4; } require(value == 0, "Strings: hex length insufficient"); return string(buffer); } /** * @dev Converts an `address` with fixed length of 20 bytes to its not checksummed ASCII `string` hexadecimal representation. */ function toHexString(address addr) internal pure returns (string memory) { return toHexString(uint256(uint160(addr)), _ADDRESS_LENGTH); } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (utils/introspection/ERC165.sol) pragma solidity ^0.8.0; import "./IERC165.sol"; /** * @dev Implementation of the {IERC165} interface. * * Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check * for the additional interface id that will be supported. For example: * * ```solidity * function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) { * return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId); * } * ``` * * Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation. */ abstract contract ERC165 is IERC165 { /** * @dev See {IERC165-supportsInterface}. */ function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) { return interfaceId == type(IERC165).interfaceId; } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (utils/introspection/IERC165.sol) pragma solidity ^0.8.0; /** * @dev Interface of the ERC165 standard, as defined in the * https://eips.ethereum.org/EIPS/eip-165[EIP]. * * Implementers can declare support of contract interfaces, which can then be * queried by others ({ERC165Checker}). * * For an implementation, see {ERC165}. */ interface IERC165 { /** * @dev Returns true if this contract implements the interface defined by * `interfaceId`. See the corresponding * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] * to learn more about how these ids are created. * * This function call must use less than 30 000 gas. */ function supportsInterface(bytes4 interfaceId) external view returns (bool); }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.7.0) (token/ERC20/utils/SafeERC20.sol) pragma solidity ^0.8.0; import "../IERC20.sol"; import "../extensions/draft-IERC20Permit.sol"; import "../../../utils/Address.sol"; /** * @title SafeERC20 * @dev Wrappers around ERC20 operations that throw on failure (when the token * contract returns false). Tokens that return no value (and instead revert or * throw on failure) are also supported, non-reverting calls are assumed to be * successful. * To use this library you can add a `using SafeERC20 for IERC20;` statement to your contract, * which allows you to call the safe operations as `token.safeTransfer(...)`, etc. */ library SafeERC20 { using Address for address; function safeTransfer( IERC20 token, address to, uint256 value ) internal { _callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value)); } function safeTransferFrom( IERC20 token, address from, address to, uint256 value ) internal { _callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value)); } /** * @dev Deprecated. This function has issues similar to the ones found in * {IERC20-approve}, and its usage is discouraged. * * Whenever possible, use {safeIncreaseAllowance} and * {safeDecreaseAllowance} instead. */ function safeApprove( IERC20 token, address spender, uint256 value ) internal { // safeApprove should only be called when setting an initial allowance, // or when resetting it to zero. To increase and decrease it, use // 'safeIncreaseAllowance' and 'safeDecreaseAllowance' require( (value == 0) || (token.allowance(address(this), spender) == 0), "SafeERC20: approve from non-zero to non-zero allowance" ); _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value)); } function safeIncreaseAllowance( IERC20 token, address spender, uint256 value ) internal { uint256 newAllowance = token.allowance(address(this), spender) + value; _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance)); } function safeDecreaseAllowance( IERC20 token, address spender, uint256 value ) internal { unchecked { uint256 oldAllowance = token.allowance(address(this), spender); require(oldAllowance >= value, "SafeERC20: decreased allowance below zero"); uint256 newAllowance = oldAllowance - value; _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance)); } } function safePermit( IERC20Permit token, address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s ) internal { uint256 nonceBefore = token.nonces(owner); token.permit(owner, spender, value, deadline, v, r, s); uint256 nonceAfter = token.nonces(owner); require(nonceAfter == nonceBefore + 1, "SafeERC20: permit did not succeed"); } /** * @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement * on the return value: the return value is optional (but if data is returned, it must not be false). * @param token The token targeted by the call. * @param data The call data (encoded using abi.encode or one of its variants). */ function _callOptionalReturn(IERC20 token, bytes memory data) private { // We need to perform a low level call here, to bypass Solidity's return data size checking mechanism, since // we're implementing it ourselves. We use {Address.functionCall} to perform this call, which verifies that // the target address contains contract code and also asserts for success in the low-level call. bytes memory returndata = address(token).functionCall(data, "SafeERC20: low-level call failed"); if (returndata.length > 0) { // Return data is optional require(abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed"); } } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.7.0) (utils/Address.sol) pragma solidity ^0.8.1; /** * @dev Collection of functions related to the address type */ library Address { /** * @dev Returns true if `account` is a contract. * * [IMPORTANT] * ==== * It is unsafe to assume that an address for which this function returns * false is an externally-owned account (EOA) and not a contract. * * Among others, `isContract` will return false for the following * types of addresses: * * - an externally-owned account * - a contract in construction * - an address where a contract will be created * - an address where a contract lived, but was destroyed * ==== * * [IMPORTANT] * ==== * You shouldn't rely on `isContract` to protect against flash loan attacks! * * Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets * like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract * constructor. * ==== */ function isContract(address account) internal view returns (bool) { // This method relies on extcodesize/address.code.length, which returns 0 // for contracts in construction, since the code is only stored at the end // of the constructor execution. return account.code.length > 0; } /** * @dev Replacement for Solidity's `transfer`: sends `amount` wei to * `recipient`, forwarding all available gas and reverting on errors. * * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost * of certain opcodes, possibly making contracts go over the 2300 gas limit * imposed by `transfer`, making them unable to receive funds via * `transfer`. {sendValue} removes this limitation. * * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more]. * * IMPORTANT: because control is transferred to `recipient`, care must be * taken to not create reentrancy vulnerabilities. Consider using * {ReentrancyGuard} or the * https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern]. */ function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); (bool success, ) = recipient.call{value: amount}(""); require(success, "Address: unable to send value, recipient may have reverted"); } /** * @dev Performs a Solidity function call using a low level `call`. A * plain `call` is an unsafe replacement for a function call: use this * function instead. * * If `target` reverts with a revert reason, it is bubbled up by this * function (like regular Solidity function calls). * * Returns the raw returned data. To convert to the expected return value, * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`]. * * Requirements: * * - `target` must be a contract. * - calling `target` with `data` must not revert. * * _Available since v3.1._ */ function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCall(target, data, "Address: low-level call failed"); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with * `errorMessage` as a fallback revert reason when `target` reverts. * * _Available since v3.1._ */ function functionCall( address target, bytes memory data, string memory errorMessage ) internal returns (bytes memory) { return functionCallWithValue(target, data, 0, errorMessage); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], * but also transferring `value` wei to `target`. * * Requirements: * * - the calling contract must have an ETH balance of at least `value`. * - the called Solidity function must be `payable`. * * _Available since v3.1._ */ function functionCallWithValue( address target, bytes memory data, uint256 value ) internal returns (bytes memory) { return functionCallWithValue(target, data, value, "Address: low-level call with value failed"); } /** * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but * with `errorMessage` as a fallback revert reason when `target` reverts. * * _Available since v3.1._ */ function functionCallWithValue( address target, bytes memory data, uint256 value, string memory errorMessage ) internal returns (bytes memory) { require(address(this).balance >= value, "Address: insufficient balance for call"); require(isContract(target), "Address: call to non-contract"); (bool success, bytes memory returndata) = target.call{value: value}(data); return verifyCallResult(success, returndata, errorMessage); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], * but performing a static call. * * _Available since v3.3._ */ function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) { return functionStaticCall(target, data, "Address: low-level static call failed"); } /** * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`], * but performing a static call. * * _Available since v3.3._ */ function functionStaticCall( address target, bytes memory data, string memory errorMessage ) internal view returns (bytes memory) { require(isContract(target), "Address: static call to non-contract"); (bool success, bytes memory returndata) = target.staticcall(data); return verifyCallResult(success, returndata, errorMessage); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], * but performing a delegate call. * * _Available since v3.4._ */ function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) { return functionDelegateCall(target, data, "Address: low-level delegate call failed"); } /** * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`], * but performing a delegate call. * * _Available since v3.4._ */ function functionDelegateCall( address target, bytes memory data, string memory errorMessage ) internal returns (bytes memory) { require(isContract(target), "Address: delegate call to non-contract"); (bool success, bytes memory returndata) = target.delegatecall(data); return verifyCallResult(success, returndata, errorMessage); } /** * @dev Tool to verifies that a low level call was successful, and revert if it wasn't, either by bubbling the * revert reason using the provided one. * * _Available since v4.3._ */ function verifyCallResult( bool success, bytes memory returndata, string memory errorMessage ) internal pure returns (bytes memory) { if (success) { return returndata; } else { // Look for revert reason and bubble it up if present if (returndata.length > 0) { // The easiest way to bubble the revert reason is using memory via assembly /// @solidity memory-safe-assembly assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.6.0) (token/ERC20/IERC20.sol) pragma solidity ^0.8.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `to`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address to, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `from` to `to` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom( address from, address to, uint256 amount ) external returns (bool); }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (token/ERC20/extensions/draft-IERC20Permit.sol) pragma solidity ^0.8.0; /** * @dev Interface of the ERC20 Permit extension allowing approvals to be made via signatures, as defined in * https://eips.ethereum.org/EIPS/eip-2612[EIP-2612]. * * Adds the {permit} method, which can be used to change an account's ERC20 allowance (see {IERC20-allowance}) by * presenting a message signed by the account. By not relying on {IERC20-approve}, the token holder account doesn't * need to send a transaction, and thus is not required to hold Ether at all. */ interface IERC20Permit { /** * @dev Sets `value` as the allowance of `spender` over ``owner``'s tokens, * given ``owner``'s signed approval. * * IMPORTANT: The same issues {IERC20-approve} has related to transaction * ordering also apply here. * * Emits an {Approval} event. * * Requirements: * * - `spender` cannot be the zero address. * - `deadline` must be a timestamp in the future. * - `v`, `r` and `s` must be a valid `secp256k1` signature from `owner` * over the EIP712-formatted function arguments. * - the signature must use ``owner``'s current nonce (see {nonces}). * * For more information on the signature format, see the * https://eips.ethereum.org/EIPS/eip-2612#specification[relevant EIP * section]. */ function permit( address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s ) external; /** * @dev Returns the current nonce for `owner`. This value must be * included whenever a signature is generated for {permit}. * * Every successful call to {permit} increases ``owner``'s nonce by one. This * prevents a signature from being used multiple times. */ function nonces(address owner) external view returns (uint256); /** * @dev Returns the domain separator used in the encoding of the signature for {permit}, as defined by {EIP712}. */ // solhint-disable-next-line func-name-mixedcase function DOMAIN_SEPARATOR() external view returns (bytes32); }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address[]","name":"artists","type":"address[]"},{"internalType":"uint256[]","name":"shares","type":"uint256[]"}],"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"contract IERC20","name":"token","type":"address"},{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"ERC20PaymentReleased","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"PayeeAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"PaymentReceived","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"PaymentReleased","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","type":"event"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"OPERATOR_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"payee","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"releasable","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"address","name":"account","type":"address"}],"name":"releasable","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"releasableByArtist","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address payable","name":"account","type":"address"}],"name":"release","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"address","name":"account","type":"address"}],"name":"release","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"releaseByArtist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"address","name":"account","type":"address"}],"name":"released","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"released","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"shares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"token","type":"address"}],"name":"totalReleased","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalReleased","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address payable","name":"beneficiary","type":"address"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405260405162001ab638038062001ab683398101604081905262000026916200050f565b818180518251146200009a5760405162461bcd60e51b815260206004820152603260248201527f5061796d656e7453706c69747465723a2070617965657320616e6420736861726044820152710cae640d8cadccee8d040dad2e6dac2e8c6d60731b60648201526084015b60405180910390fd5b6000825111620000ed5760405162461bcd60e51b815260206004820152601a60248201527f5061796d656e7453706c69747465723a206e6f20706179656573000000000000604482015260640162000091565b60005b8251811015620001595762000144838281518110620001135762000113620005ed565b6020026020010151838381518110620001305762000130620005ed565b60200260200101516200019f60201b60201c565b80620001508162000619565b915050620000f0565b506200016b915060009050336200038c565b620001977f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929336200038c565b505062000652565b6001600160a01b0382166200020c5760405162461bcd60e51b815260206004820152602c60248201527f5061796d656e7453706c69747465723a206163636f756e74206973207468652060448201526b7a65726f206164647265737360a01b606482015260840162000091565b600081116200025e5760405162461bcd60e51b815260206004820152601d60248201527f5061796d656e7453706c69747465723a20736861726573206172652030000000604482015260640162000091565b6001600160a01b03821660009081526003602052604090205415620002da5760405162461bcd60e51b815260206004820152602b60248201527f5061796d656e7453706c69747465723a206163636f756e7420616c726561647960448201526a206861732073686172657360a81b606482015260840162000091565b6005805460018082019092557f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db00180546001600160a01b0319166001600160a01b0385169081179091556000908152600360205260409020829055546200034390829062000637565b600155604080516001600160a01b0384168152602081018390527f40c340f65e17194d14ddddb073d3c9f888e3cb52b5aae0c6c7706b4fbc905fac910160405180910390a15050565b6000828152602081815260408083206001600160a01b038516845290915290205460ff1662000429576000828152602081815260408083206001600160a01b03851684529091529020805460ff19166001179055620003e83390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156200046e576200046e6200042d565b604052919050565b60006001600160401b038211156200049257620004926200042d565b5060051b60200190565b600082601f830112620004ae57600080fd5b81516020620004c7620004c18362000476565b62000443565b82815260059290921b84018101918181019086841115620004e757600080fd5b8286015b84811015620005045780518352918301918301620004eb565b509695505050505050565b600080604083850312156200052357600080fd5b82516001600160401b03808211156200053b57600080fd5b818501915085601f8301126200055057600080fd5b8151602062000563620004c18362000476565b82815260059290921b840181019181810190898411156200058357600080fd5b948201945b83861015620005ba5785516001600160a01b0381168114620005aa5760008081fd5b8252948201949082019062000588565b91880151919650909350505080821115620005d457600080fd5b50620005e3858286016200049c565b9150509250929050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060001982141562000630576200063062000603565b5060010190565b600082198211156200064d576200064d62000603565b500190565b61145480620006626000396000f3fe6080604052600436106101395760003560e01c806391d14854116100ab578063c45ac0501161006f578063c45ac050146103ef578063ce7c2ac21461040f578063d547741f14610445578063d79779b214610465578063e33b7de31461049b578063f5b541a6146104b057600080fd5b806391d148541461034f578063971d62dd1461036f5780639852595c14610384578063a217fddf146103ba578063a3f8eace146103cf57600080fd5b80633a98ef39116100fd5780633a98ef391461025c578063406072a91461027157806348b75044146102b757806351cff8d9146102d75780635d19d505146102f75780638b83209b1461031757600080fd5b806301ffc9a71461018757806319165587146101bc578063248a9ca3146101de5780632f2ff15d1461021c57806336568abe1461023c57600080fd5b36610182577f6ef95f06320e7a25a04a175ca677b7052bdd97131872c2192525a629f51be77033604080516001600160a01b0390921682523460208301520160405180910390a1005b600080fd5b34801561019357600080fd5b506101a76101a23660046110c6565b6104e4565b60405190151581526020015b60405180910390f35b3480156101c857600080fd5b506101dc6101d7366004611105565b61051b565b005b3480156101ea57600080fd5b5061020e6101f9366004611122565b60009081526020819052604090206001015490565b6040519081526020016101b3565b34801561022857600080fd5b506101dc61023736600461113b565b61061a565b34801561024857600080fd5b506101dc61025736600461113b565b610644565b34801561026857600080fd5b5060015461020e565b34801561027d57600080fd5b5061020e61028c36600461116b565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b3480156102c357600080fd5b506101dc6102d236600461116b565b6106c2565b3480156102e357600080fd5b506101dc6102f2366004611105565b6107e2565b34801561030357600080fd5b5061020e610312366004611105565b61088b565b34801561032357600080fd5b50610337610332366004611122565b610896565b6040516001600160a01b0390911681526020016101b3565b34801561035b57600080fd5b506101a761036a36600461113b565b6108c6565b34801561037b57600080fd5b506101dc6108ef565b34801561039057600080fd5b5061020e61039f366004611105565b6001600160a01b031660009081526004602052604090205490565b3480156103c657600080fd5b5061020e600081565b3480156103db57600080fd5b5061020e6103ea366004611105565b6108fa565b3480156103fb57600080fd5b5061020e61040a36600461116b565b610942565b34801561041b57600080fd5b5061020e61042a366004611105565b6001600160a01b031660009081526003602052604090205490565b34801561045157600080fd5b506101dc61046036600461113b565b610a1c565b34801561047157600080fd5b5061020e610480366004611105565b6001600160a01b031660009081526006602052604090205490565b3480156104a757600080fd5b5060025461020e565b3480156104bc57600080fd5b5061020e7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92981565b60006001600160e01b03198216637965db0b60e01b148061051557506301ffc9a760e01b6001600160e01b03198316145b92915050565b6001600160a01b0381166000908152600360205260409020546105595760405162461bcd60e51b815260040161055090611199565b60405180910390fd5b6000610564826108fa565b9050806105835760405162461bcd60e51b8152600401610550906111df565b6001600160a01b038216600090815260046020526040812080548392906105ab908490611240565b9250508190555080600260008282546105c49190611240565b909155506105d490508282610a41565b604080516001600160a01b0384168152602081018390527fdf20fd1e76bc69d672e4814fafb2c449bba3a5369d8359adf9e05e6fde87b056910160405180910390a15050565b60008281526020819052604090206001015461063581610b5a565b61063f8383610b67565b505050565b6001600160a01b03811633146106b45760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610550565b6106be8282610beb565b5050565b6001600160a01b0381166000908152600360205260409020546106f75760405162461bcd60e51b815260040161055090611199565b60006107038383610942565b9050806107225760405162461bcd60e51b8152600401610550906111df565b6001600160a01b03808416600090815260076020908152604080832093861683529290529081208054839290610759908490611240565b90915550506001600160a01b03831660009081526006602052604081208054839290610786908490611240565b909155506107979050838383610c50565b604080516001600160a01b038481168252602082018490528516917f3be5b7a71e84ed12875d241991c70855ac5817d847039e17a9d895c1ceb0f18a910160405180910390a2505050565b60006107ed81610b5a565b60405147906000906001600160a01b0385169083908381818185875af1925050503d806000811461083a576040519150601f19603f3d011682016040523d82523d6000602084013e61083f565b606091505b50509050806108855760405162461bcd60e51b81526020600482015260126024820152714661696c656420746f20776974686472617760701b6044820152606401610550565b50505050565b6000610515826108fa565b6000600582815481106108ab576108ab611258565b6000918252602090912001546001600160a01b031692915050565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b6108f83361051b565b565b60008061090660025490565b6109109047611240565b905061093b8382610936866001600160a01b031660009081526004602052604090205490565b610ca2565b9392505050565b6001600160a01b03821660009081526006602052604081205481906040516370a0823160e01b81523060048201526001600160a01b038616906370a082319060240160206040518083038186803b15801561099c57600080fd5b505afa1580156109b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d4919061126e565b6109de9190611240565b6001600160a01b03808616600090815260076020908152604080832093881683529290522054909150610a149084908390610ca2565b949350505050565b600082815260208190526040902060010154610a3781610b5a565b61063f8383610beb565b80471015610a915760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610550565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114610ade576040519150601f19603f3d011682016040523d82523d6000602084013e610ae3565b606091505b505090508061063f5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610550565b610b648133610ce0565b50565b610b7182826108c6565b6106be576000828152602081815260408083206001600160a01b03851684529091529020805460ff19166001179055610ba73390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610bf582826108c6565b156106be576000828152602081815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261063f908490610d44565b6001546001600160a01b03841660009081526003602052604081205490918391610ccc9086611287565b610cd691906112a6565b610a1491906112c8565b610cea82826108c6565b6106be57610d02816001600160a01b03166014610e16565b610d0d836020610e16565b604051602001610d1e92919061130b565b60408051601f198184030181529082905262461bcd60e51b825261055091600401611380565b6000610d99826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316610fb29092919063ffffffff16565b80519091501561063f5780806020019051810190610db791906113b3565b61063f5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610550565b60606000610e25836002611287565b610e30906002611240565b67ffffffffffffffff811115610e4857610e486113d5565b6040519080825280601f01601f191660200182016040528015610e72576020820181803683370190505b509050600360fc1b81600081518110610e8d57610e8d611258565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110610ebc57610ebc611258565b60200101906001600160f81b031916908160001a9053506000610ee0846002611287565b610eeb906001611240565b90505b6001811115610f63576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110610f1f57610f1f611258565b1a60f81b828281518110610f3557610f35611258565b60200101906001600160f81b031916908160001a90535060049490941c93610f5c816113eb565b9050610eee565b50831561093b5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610550565b6060610a148484600085856001600160a01b0385163b6110145760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610550565b600080866001600160a01b031685876040516110309190611402565b60006040518083038185875af1925050503d806000811461106d576040519150601f19603f3d011682016040523d82523d6000602084013e611072565b606091505b509150915061108282828661108d565b979650505050505050565b6060831561109c57508161093b565b8251156110ac5782518084602001fd5b8160405162461bcd60e51b81526004016105509190611380565b6000602082840312156110d857600080fd5b81356001600160e01b03198116811461093b57600080fd5b6001600160a01b0381168114610b6457600080fd5b60006020828403121561111757600080fd5b813561093b816110f0565b60006020828403121561113457600080fd5b5035919050565b6000806040838503121561114e57600080fd5b823591506020830135611160816110f0565b809150509250929050565b6000806040838503121561117e57600080fd5b8235611189816110f0565b91506020830135611160816110f0565b60208082526026908201527f5061796d656e7453706c69747465723a206163636f756e7420686173206e6f2060408201526573686172657360d01b606082015260800190565b6020808252602b908201527f5061796d656e7453706c69747465723a206163636f756e74206973206e6f742060408201526a191d59481c185e5b595b9d60aa1b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b600082198211156112535761125361122a565b500190565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561128057600080fd5b5051919050565b60008160001904831182151516156112a1576112a161122a565b500290565b6000826112c357634e487b7160e01b600052601260045260246000fd5b500490565b6000828210156112da576112da61122a565b500390565b60005b838110156112fa5781810151838201526020016112e2565b838111156108855750506000910152565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516113438160178501602088016112df565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516113748160288401602088016112df565b01602801949350505050565b602081526000825180602084015261139f8160408501602087016112df565b601f01601f19169190910160400192915050565b6000602082840312156113c557600080fd5b8151801515811461093b57600080fd5b634e487b7160e01b600052604160045260246000fd5b6000816113fa576113fa61122a565b506000190190565b600082516114148184602087016112df565b919091019291505056fea2646970667358221220104fcdce5d8a30ab7827e99f9f9574017b45c450810962e9732c777eaa6a109064736f6c63430008090033000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000013200000000000000000000000000000000000000000000000000000000000000096000000000000000000000000b64c53fe28949054dfa164fd6dc302b94f6997550000000000000000000000009505755dba47e1d9d61e89db4cb322459979c42d000000000000000000000000b54a407b18e5f36d15e7208d27752db68d4085ea0000000000000000000000007c4a53e6e287a097b27f8aca6786e556223c7b32000000000000000000000000ab5d4c82f35faa1b10d526c7a744ae2ebe713a94000000000000000000000000c8c0843f1fa7bdae072352f59852aa70f054067d0000000000000000000000006dbde3ab50f767732013604704220dd147638df10000000000000000000000007b714a777b72e97e8411d65277b1d2f06f400d13000000000000000000000000c10363acbe1247c912215c79017b1887b2188d8d0000000000000000000000007d330020927d35d7a96011cc59af5161e37cda62000000000000000000000000a21f3597b3a6c4e1ff6e0fc3faf3fad0b0634100000000000000000000000000fefef530d1c196d641d6c3d9290b2b35cc7b126400000000000000000000000020d0e09a5df5ca56e0446581b00ea049a1dd1df700000000000000000000000012aace3ef656ddde57bc75c13b35dc9a87c13d110000000000000000000000009ddc1a2a5016cbb2607fe2d4287c45373d616564000000000000000000000000040c2f28bb772287fee69d033ed4459c08c1113b00000000000000000000000071cfe5951e236a1d45fa668df460558772527638000000000000000000000000f0f1a04a214efe01ac5e189e6d9f38cf5d98d84e000000000000000000000000d03d0b1bebe7ec88b16297f229f7362b7420585c0000000000000000000000003e7221e2bf2aaf3f946c98e6e07fba079b7e8d2000000000000000000000000014a433774a8a25aefe804d61ce88361708936c490000000000000000000000000ffe7796eddab40c03ea78eec74f9287a73c0670000000000000000000000000014361a9a9c55c6442281ef6534e731442ed06c0000000000000000000000000c3ae80c65a25d3e11bec83d7307273364cf68b1e00000000000000000000000075dc3d4eeafe592a73ddac50cf0ea1f5f545ef1d000000000000000000000000fed52bf80d4231f7f6f017790935d0e44c59563b000000000000000000000000f42d99a5ea3124fe21b947d9d76d95c0c03a5feb0000000000000000000000000f5ad36cf3bb8e98cc185e7385ba063fe4cb20180000000000000000000000001628e7b03d4e1d9fd11da383c96a194e7483d692000000000000000000000000cf0669a41281df297c95e59fe69308411b7dc9bb000000000000000000000000cd7fa12a29d727d87c5cc6ea7b16544faf6c554d0000000000000000000000009ab0c5af2ed4bdffe6b8687f06ed3a536d0d710d000000000000000000000000b5076343849f0402c33698bae044b4d9510b52c0000000000000000000000000a264f355089bd93777979e9e40b278400b8778e9000000000000000000000000d976509aad5af94768c2555fc93fff5b4aa7105300000000000000000000000038a2268794c421e8ed1ab014b9fd077e761bee2100000000000000000000000050af54edabe7fe57ae74f6d9c438aa5a80846513000000000000000000000000e077bb264b064ebc9bf2bf98a3a421959534b7fe000000000000000000000000a3123215e33300cfc7228e20ed4a7c437c833a39000000000000000000000000df50cdf81fc2ad44bf05ada718d6b1abfa91a4f900000000000000000000000061e3a038e965f26e6cb24c1eaf282cc02fe5534700000000000000000000000082a9bfd5901ae6946355e228c9ad619b8090121b000000000000000000000000bc03f695a1f2a03669fca05ee1e7d2ed702f1b280000000000000000000000008fc11ab9a5f72a4f0d12199a72f474933bd71064000000000000000000000000ab0f23bdb8007fd9407cddfdc199de97cda34745000000000000000000000000b82fcd017cd5031bd2eac31fdf9551b62c4c4c16000000000000000000000000b1d9bdeaafae11402ff0c88f859377e9bf6dac640000000000000000000000001759f1c6142d8fe0d0f39354e7fa61910c71a8990000000000000000000000000c7545411b342ff722159ca116be24b7cc08fa8e00000000000000000000000028b5b2733ee20037bb7b7e47993e41cca6b4257600000000000000000000000019609ec1ff5ad509c84b3785c0aab9150e658b13000000000000000000000000d59f49d76581680ccb0a1d77903c92ff2cb2b663000000000000000000000000fd2543e8e2a44b16c782235ac864a8db210e3cdf000000000000000000000000bb59498b19783e5d81f72ad07acdac619b6808e2000000000000000000000000051f458eb3a16c982f6ea3b91ef822a0ad9c3a46000000000000000000000000f3d315913349d0024a0d2cdde87eeb8c940a8f3e000000000000000000000000191e00192b215b6fd496743df6d273215e33241c000000000000000000000000f394b6bb619729685e9c5e1d0ab27b6546ca591a00000000000000000000000030924f3d41ba1bb921cf6b07749ef8731a4a106e00000000000000000000000013257e056112d578414e5d291926c9d684d5d9ef000000000000000000000000c26ec287e5c848b138cc0ccef7f754aa2bc84d7b00000000000000000000000081cb88b0e44934a73319407aa9e00983246fa68100000000000000000000000022c134cd6fcbc67216ff6ebd98a8805246a97db0000000000000000000000000a84187162c75d7ef090e0da71bab9984c0a0780e0000000000000000000000005467846786aed0ad76735bbbc4ad4877e8b85d51000000000000000000000000d6c3d9b976799e0410070927bc74c0009d47511a000000000000000000000000afe27d2049c037915fb73ed30dcebccec516e1c3000000000000000000000000f54f26f8a94ddc9d383b4e3aeb7a1520682f074a000000000000000000000000d7cafffc2b904859cfe603b4098b2ef3be045961000000000000000000000000266a057678a829d0637922052d239ca55e289aae00000000000000000000000014a5caffd6be987fd369b8530cbc728020b02a250000000000000000000000004556968ea1194335b4d7d722e024d1fbd75421ac000000000000000000000000589ad95db08979d176ff66e2880b185680967b55000000000000000000000000cb77758ddb0a0547960fbe391a1d32f1c7ce46d8000000000000000000000000c96321e6b097baccc822e97c24e25ae97c44ee5f0000000000000000000000000007b9c4d506c6be7b4a3d454d078db5899172da0000000000000000000000009c335e4d8cacda86647ff4497789019c7a762a62000000000000000000000000e067efa67eea849e7dbb59388fb5e739033c0737000000000000000000000000a888b175a294620ecc9e11e569d009eb932df34e000000000000000000000000e4ca4b38bfb99d7bd7053f6581657f83f983dca6000000000000000000000000d7012573ec5570372a7fe92ca6a8b69d12549380000000000000000000000000ddf0eb653732a2e614ea29b2ec2ed3ecf96223c2000000000000000000000000b043b8899be4091d3a49cbefb7db4e9ae1cbed65000000000000000000000000c1557d8a807ef31dfddfd852eaa1617e1f12159c0000000000000000000000001e13ec9dd88b8433f4ca1108562f061eaf7ce451000000000000000000000000343aca08aa8459ab018a8f543402763e8aff4b7f00000000000000000000000065a92e44d58ed6e4049e157f1d99bee98bf595f700000000000000000000000033bb5c19c076a721fe6054db6924178f1aca0dce0000000000000000000000009984c91935a11fd7b8d9c4279faf57a29b3f8e4e000000000000000000000000bcf25231f7d6fea528bdc05c569416385dc1e4a3000000000000000000000000a5e85f4811ce12001b1014982fa23c08b45453df0000000000000000000000004da0ab4662e6de728db8146643ac38e1f9ef076e000000000000000000000000673460953de8a52d1ccae3c7e31fd445da99928e0000000000000000000000008556ffdb5c8cc82a183a65be3d82e70afde879f5000000000000000000000000ac55d1ccae1d8c7d53852bf45b2dbb4cc156c237000000000000000000000000595fa33b2b2727c668be49a83c8adad37af55a490000000000000000000000004cc554dc0da7e3febf1072a98a38f7fa24ca688c0000000000000000000000009a72efab5df2ed99ce47f69e5e30a47c5fae21b500000000000000000000000019058b87cc3975b2dd7d01b6e95102ab9e1a2a7200000000000000000000000093a1c72f8deb6927467905c50d24f0c75d6ece390000000000000000000000007e7475980e970090b9c228fe66d8635afd0e5e74000000000000000000000000d7e1bc51cd3f30e21b17bab33d77078e3fb7cc260000000000000000000000002b4a0f21ff06f66c22de13a510fbe7b6b1469f75000000000000000000000000ebb4012cc60bbc990ec5ee2a9ffbcc11df5a95980000000000000000000000000b72306917c9756a6ffbbc44130bdb6c170e63b100000000000000000000000014b015a7a4de3b306b34cfde194949530f32c6f2000000000000000000000000cfe48d201c7f98c4c548e05face458195afc3f45000000000000000000000000ccf5777eb3e065bd49677230c6cc335c50339e34000000000000000000000000c74a7eee8a15383939d0546cae0812dda23e19c9000000000000000000000000d922f0da727efa48905656c1d11c4f567727496b000000000000000000000000120eda282f2085d156dd3e183f6d7b87bf2ef00d0000000000000000000000006bab82bb09f9f9fd52f0bf46f799e5b919071d8d00000000000000000000000015d2516f33c4846fd6fd0151f5d1ba869c21947000000000000000000000000070feaf35f23f8a74b0923c216b2e01740abc92b1000000000000000000000000582e7577f3511550e7c9ed9b44f049ebc33fbd0d0000000000000000000000000231e2c4896241c3dad1292e9296b26cac13604a000000000000000000000000046cd19a339761c8f62ffa5c42023bc5e07e7c5c00000000000000000000000052ce3c6605ed169cba5425020a4bc8447550e61200000000000000000000000049fa2ee0713fe822b646f62f1bf35a49e3b3a2da0000000000000000000000008371f4a6dd13a1e324edafbb7da2c391f0e8bdeb000000000000000000000000db70121d91c747b3d3ecfab421ab2901fd449fde000000000000000000000000f606325db0f1b4cf96b0d74ae263f3e2d6dcf55a000000000000000000000000b61c77cd6ecc7f0e809f28c86521e63982280e13000000000000000000000000948cdcbe4379c26d83c25da8c4e5908ec7cb9d8d0000000000000000000000000cf54d5740f6f87184771baf00c9338072fc4cee000000000000000000000000e8c39372a3284fa8a99437568df0ad66153af809000000000000000000000000719771c0dbae9f66952fec83896be2ccd43882d00000000000000000000000005e15f6ceadc71e98359f30a6e1b8719aa03b7aa7000000000000000000000000fed46b255c10c5c11335eac40c02b580cb2ba7a100000000000000000000000066cc485492c73e3e52407ec553eca6a01d733dd800000000000000000000000035b7639a8d86950dd641aae3a33906d18c4f6433000000000000000000000000516656beacd4c41f4e1a2273263ff4995d0fd1d300000000000000000000000075a69d5c334a75488a2f9b1cd0ebac72be52c67e0000000000000000000000007682af8d811c0a3ca8914b255d24632670b6148e00000000000000000000000089dc174d751f0bd61ad207caf69ce7b7889b74b10000000000000000000000004cf4f2df0233f6ad40da451728b21316b480afa7000000000000000000000000e61ee241187c07cc95bba01483867223071006da00000000000000000000000075482413b0537dd8c4f7a8a147d42d94ce91174f00000000000000000000000009741ae603df1909b3b73f0a12827a27a3121ecd0000000000000000000000003a94bc7c39c4e918313a2a80f0c6d9a4178097bb00000000000000000000000058552f5b9a66d0f35852ed847e81db7667708eed00000000000000000000000087cb24c7b55f444507e7786f8a9d669648f1e90b000000000000000000000000d9fd4871569e06e8c31dfc87281c470a15a4a92e000000000000000000000000651da61ec8c9512b816086835c7f90c485850b62000000000000000000000000a12a9cb850ddf6abe695949a50465dc1d6b3a34e000000000000000000000000945f9bc75ed1187e7601ebcef211c866a6c8e37500000000000000000000000053b114a73a146000b26841f4bb411dd1955dc4d3000000000000000000000000feb90987b29fee4b3f0eb4bc1c2ef067384d872c000000000000000000000000537d6dfba40ba39d8cb90ab0ebe466a783e4d656000000000000000000000000eb1ba1603312ea289c16fe1c9c9cb53a443261580000000000000000000000000000000000000000000000000000000000000096000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001
Deployed Bytecode
0x6080604052600436106101395760003560e01c806391d14854116100ab578063c45ac0501161006f578063c45ac050146103ef578063ce7c2ac21461040f578063d547741f14610445578063d79779b214610465578063e33b7de31461049b578063f5b541a6146104b057600080fd5b806391d148541461034f578063971d62dd1461036f5780639852595c14610384578063a217fddf146103ba578063a3f8eace146103cf57600080fd5b80633a98ef39116100fd5780633a98ef391461025c578063406072a91461027157806348b75044146102b757806351cff8d9146102d75780635d19d505146102f75780638b83209b1461031757600080fd5b806301ffc9a71461018757806319165587146101bc578063248a9ca3146101de5780632f2ff15d1461021c57806336568abe1461023c57600080fd5b36610182577f6ef95f06320e7a25a04a175ca677b7052bdd97131872c2192525a629f51be77033604080516001600160a01b0390921682523460208301520160405180910390a1005b600080fd5b34801561019357600080fd5b506101a76101a23660046110c6565b6104e4565b60405190151581526020015b60405180910390f35b3480156101c857600080fd5b506101dc6101d7366004611105565b61051b565b005b3480156101ea57600080fd5b5061020e6101f9366004611122565b60009081526020819052604090206001015490565b6040519081526020016101b3565b34801561022857600080fd5b506101dc61023736600461113b565b61061a565b34801561024857600080fd5b506101dc61025736600461113b565b610644565b34801561026857600080fd5b5060015461020e565b34801561027d57600080fd5b5061020e61028c36600461116b565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b3480156102c357600080fd5b506101dc6102d236600461116b565b6106c2565b3480156102e357600080fd5b506101dc6102f2366004611105565b6107e2565b34801561030357600080fd5b5061020e610312366004611105565b61088b565b34801561032357600080fd5b50610337610332366004611122565b610896565b6040516001600160a01b0390911681526020016101b3565b34801561035b57600080fd5b506101a761036a36600461113b565b6108c6565b34801561037b57600080fd5b506101dc6108ef565b34801561039057600080fd5b5061020e61039f366004611105565b6001600160a01b031660009081526004602052604090205490565b3480156103c657600080fd5b5061020e600081565b3480156103db57600080fd5b5061020e6103ea366004611105565b6108fa565b3480156103fb57600080fd5b5061020e61040a36600461116b565b610942565b34801561041b57600080fd5b5061020e61042a366004611105565b6001600160a01b031660009081526003602052604090205490565b34801561045157600080fd5b506101dc61046036600461113b565b610a1c565b34801561047157600080fd5b5061020e610480366004611105565b6001600160a01b031660009081526006602052604090205490565b3480156104a757600080fd5b5060025461020e565b3480156104bc57600080fd5b5061020e7f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92981565b60006001600160e01b03198216637965db0b60e01b148061051557506301ffc9a760e01b6001600160e01b03198316145b92915050565b6001600160a01b0381166000908152600360205260409020546105595760405162461bcd60e51b815260040161055090611199565b60405180910390fd5b6000610564826108fa565b9050806105835760405162461bcd60e51b8152600401610550906111df565b6001600160a01b038216600090815260046020526040812080548392906105ab908490611240565b9250508190555080600260008282546105c49190611240565b909155506105d490508282610a41565b604080516001600160a01b0384168152602081018390527fdf20fd1e76bc69d672e4814fafb2c449bba3a5369d8359adf9e05e6fde87b056910160405180910390a15050565b60008281526020819052604090206001015461063581610b5a565b61063f8383610b67565b505050565b6001600160a01b03811633146106b45760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610550565b6106be8282610beb565b5050565b6001600160a01b0381166000908152600360205260409020546106f75760405162461bcd60e51b815260040161055090611199565b60006107038383610942565b9050806107225760405162461bcd60e51b8152600401610550906111df565b6001600160a01b03808416600090815260076020908152604080832093861683529290529081208054839290610759908490611240565b90915550506001600160a01b03831660009081526006602052604081208054839290610786908490611240565b909155506107979050838383610c50565b604080516001600160a01b038481168252602082018490528516917f3be5b7a71e84ed12875d241991c70855ac5817d847039e17a9d895c1ceb0f18a910160405180910390a2505050565b60006107ed81610b5a565b60405147906000906001600160a01b0385169083908381818185875af1925050503d806000811461083a576040519150601f19603f3d011682016040523d82523d6000602084013e61083f565b606091505b50509050806108855760405162461bcd60e51b81526020600482015260126024820152714661696c656420746f20776974686472617760701b6044820152606401610550565b50505050565b6000610515826108fa565b6000600582815481106108ab576108ab611258565b6000918252602090912001546001600160a01b031692915050565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b6108f83361051b565b565b60008061090660025490565b6109109047611240565b905061093b8382610936866001600160a01b031660009081526004602052604090205490565b610ca2565b9392505050565b6001600160a01b03821660009081526006602052604081205481906040516370a0823160e01b81523060048201526001600160a01b038616906370a082319060240160206040518083038186803b15801561099c57600080fd5b505afa1580156109b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d4919061126e565b6109de9190611240565b6001600160a01b03808616600090815260076020908152604080832093881683529290522054909150610a149084908390610ca2565b949350505050565b600082815260208190526040902060010154610a3781610b5a565b61063f8383610beb565b80471015610a915760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610550565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114610ade576040519150601f19603f3d011682016040523d82523d6000602084013e610ae3565b606091505b505090508061063f5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610550565b610b648133610ce0565b50565b610b7182826108c6565b6106be576000828152602081815260408083206001600160a01b03851684529091529020805460ff19166001179055610ba73390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610bf582826108c6565b156106be576000828152602081815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261063f908490610d44565b6001546001600160a01b03841660009081526003602052604081205490918391610ccc9086611287565b610cd691906112a6565b610a1491906112c8565b610cea82826108c6565b6106be57610d02816001600160a01b03166014610e16565b610d0d836020610e16565b604051602001610d1e92919061130b565b60408051601f198184030181529082905262461bcd60e51b825261055091600401611380565b6000610d99826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316610fb29092919063ffffffff16565b80519091501561063f5780806020019051810190610db791906113b3565b61063f5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610550565b60606000610e25836002611287565b610e30906002611240565b67ffffffffffffffff811115610e4857610e486113d5565b6040519080825280601f01601f191660200182016040528015610e72576020820181803683370190505b509050600360fc1b81600081518110610e8d57610e8d611258565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110610ebc57610ebc611258565b60200101906001600160f81b031916908160001a9053506000610ee0846002611287565b610eeb906001611240565b90505b6001811115610f63576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110610f1f57610f1f611258565b1a60f81b828281518110610f3557610f35611258565b60200101906001600160f81b031916908160001a90535060049490941c93610f5c816113eb565b9050610eee565b50831561093b5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610550565b6060610a148484600085856001600160a01b0385163b6110145760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610550565b600080866001600160a01b031685876040516110309190611402565b60006040518083038185875af1925050503d806000811461106d576040519150601f19603f3d011682016040523d82523d6000602084013e611072565b606091505b509150915061108282828661108d565b979650505050505050565b6060831561109c57508161093b565b8251156110ac5782518084602001fd5b8160405162461bcd60e51b81526004016105509190611380565b6000602082840312156110d857600080fd5b81356001600160e01b03198116811461093b57600080fd5b6001600160a01b0381168114610b6457600080fd5b60006020828403121561111757600080fd5b813561093b816110f0565b60006020828403121561113457600080fd5b5035919050565b6000806040838503121561114e57600080fd5b823591506020830135611160816110f0565b809150509250929050565b6000806040838503121561117e57600080fd5b8235611189816110f0565b91506020830135611160816110f0565b60208082526026908201527f5061796d656e7453706c69747465723a206163636f756e7420686173206e6f2060408201526573686172657360d01b606082015260800190565b6020808252602b908201527f5061796d656e7453706c69747465723a206163636f756e74206973206e6f742060408201526a191d59481c185e5b595b9d60aa1b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b600082198211156112535761125361122a565b500190565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561128057600080fd5b5051919050565b60008160001904831182151516156112a1576112a161122a565b500290565b6000826112c357634e487b7160e01b600052601260045260246000fd5b500490565b6000828210156112da576112da61122a565b500390565b60005b838110156112fa5781810151838201526020016112e2565b838111156108855750506000910152565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516113438160178501602088016112df565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516113748160288401602088016112df565b01602801949350505050565b602081526000825180602084015261139f8160408501602087016112df565b601f01601f19169190910160400192915050565b6000602082840312156113c557600080fd5b8151801515811461093b57600080fd5b634e487b7160e01b600052604160045260246000fd5b6000816113fa576113fa61122a565b506000190190565b600082516114148184602087016112df565b919091019291505056fea2646970667358221220104fcdce5d8a30ab7827e99f9f9574017b45c450810962e9732c777eaa6a109064736f6c63430008090033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000013200000000000000000000000000000000000000000000000000000000000000096000000000000000000000000b64c53fe28949054dfa164fd6dc302b94f6997550000000000000000000000009505755dba47e1d9d61e89db4cb322459979c42d000000000000000000000000b54a407b18e5f36d15e7208d27752db68d4085ea0000000000000000000000007c4a53e6e287a097b27f8aca6786e556223c7b32000000000000000000000000ab5d4c82f35faa1b10d526c7a744ae2ebe713a94000000000000000000000000c8c0843f1fa7bdae072352f59852aa70f054067d0000000000000000000000006dbde3ab50f767732013604704220dd147638df10000000000000000000000007b714a777b72e97e8411d65277b1d2f06f400d13000000000000000000000000c10363acbe1247c912215c79017b1887b2188d8d0000000000000000000000007d330020927d35d7a96011cc59af5161e37cda62000000000000000000000000a21f3597b3a6c4e1ff6e0fc3faf3fad0b0634100000000000000000000000000fefef530d1c196d641d6c3d9290b2b35cc7b126400000000000000000000000020d0e09a5df5ca56e0446581b00ea049a1dd1df700000000000000000000000012aace3ef656ddde57bc75c13b35dc9a87c13d110000000000000000000000009ddc1a2a5016cbb2607fe2d4287c45373d616564000000000000000000000000040c2f28bb772287fee69d033ed4459c08c1113b00000000000000000000000071cfe5951e236a1d45fa668df460558772527638000000000000000000000000f0f1a04a214efe01ac5e189e6d9f38cf5d98d84e000000000000000000000000d03d0b1bebe7ec88b16297f229f7362b7420585c0000000000000000000000003e7221e2bf2aaf3f946c98e6e07fba079b7e8d2000000000000000000000000014a433774a8a25aefe804d61ce88361708936c490000000000000000000000000ffe7796eddab40c03ea78eec74f9287a73c0670000000000000000000000000014361a9a9c55c6442281ef6534e731442ed06c0000000000000000000000000c3ae80c65a25d3e11bec83d7307273364cf68b1e00000000000000000000000075dc3d4eeafe592a73ddac50cf0ea1f5f545ef1d000000000000000000000000fed52bf80d4231f7f6f017790935d0e44c59563b000000000000000000000000f42d99a5ea3124fe21b947d9d76d95c0c03a5feb0000000000000000000000000f5ad36cf3bb8e98cc185e7385ba063fe4cb20180000000000000000000000001628e7b03d4e1d9fd11da383c96a194e7483d692000000000000000000000000cf0669a41281df297c95e59fe69308411b7dc9bb000000000000000000000000cd7fa12a29d727d87c5cc6ea7b16544faf6c554d0000000000000000000000009ab0c5af2ed4bdffe6b8687f06ed3a536d0d710d000000000000000000000000b5076343849f0402c33698bae044b4d9510b52c0000000000000000000000000a264f355089bd93777979e9e40b278400b8778e9000000000000000000000000d976509aad5af94768c2555fc93fff5b4aa7105300000000000000000000000038a2268794c421e8ed1ab014b9fd077e761bee2100000000000000000000000050af54edabe7fe57ae74f6d9c438aa5a80846513000000000000000000000000e077bb264b064ebc9bf2bf98a3a421959534b7fe000000000000000000000000a3123215e33300cfc7228e20ed4a7c437c833a39000000000000000000000000df50cdf81fc2ad44bf05ada718d6b1abfa91a4f900000000000000000000000061e3a038e965f26e6cb24c1eaf282cc02fe5534700000000000000000000000082a9bfd5901ae6946355e228c9ad619b8090121b000000000000000000000000bc03f695a1f2a03669fca05ee1e7d2ed702f1b280000000000000000000000008fc11ab9a5f72a4f0d12199a72f474933bd71064000000000000000000000000ab0f23bdb8007fd9407cddfdc199de97cda34745000000000000000000000000b82fcd017cd5031bd2eac31fdf9551b62c4c4c16000000000000000000000000b1d9bdeaafae11402ff0c88f859377e9bf6dac640000000000000000000000001759f1c6142d8fe0d0f39354e7fa61910c71a8990000000000000000000000000c7545411b342ff722159ca116be24b7cc08fa8e00000000000000000000000028b5b2733ee20037bb7b7e47993e41cca6b4257600000000000000000000000019609ec1ff5ad509c84b3785c0aab9150e658b13000000000000000000000000d59f49d76581680ccb0a1d77903c92ff2cb2b663000000000000000000000000fd2543e8e2a44b16c782235ac864a8db210e3cdf000000000000000000000000bb59498b19783e5d81f72ad07acdac619b6808e2000000000000000000000000051f458eb3a16c982f6ea3b91ef822a0ad9c3a46000000000000000000000000f3d315913349d0024a0d2cdde87eeb8c940a8f3e000000000000000000000000191e00192b215b6fd496743df6d273215e33241c000000000000000000000000f394b6bb619729685e9c5e1d0ab27b6546ca591a00000000000000000000000030924f3d41ba1bb921cf6b07749ef8731a4a106e00000000000000000000000013257e056112d578414e5d291926c9d684d5d9ef000000000000000000000000c26ec287e5c848b138cc0ccef7f754aa2bc84d7b00000000000000000000000081cb88b0e44934a73319407aa9e00983246fa68100000000000000000000000022c134cd6fcbc67216ff6ebd98a8805246a97db0000000000000000000000000a84187162c75d7ef090e0da71bab9984c0a0780e0000000000000000000000005467846786aed0ad76735bbbc4ad4877e8b85d51000000000000000000000000d6c3d9b976799e0410070927bc74c0009d47511a000000000000000000000000afe27d2049c037915fb73ed30dcebccec516e1c3000000000000000000000000f54f26f8a94ddc9d383b4e3aeb7a1520682f074a000000000000000000000000d7cafffc2b904859cfe603b4098b2ef3be045961000000000000000000000000266a057678a829d0637922052d239ca55e289aae00000000000000000000000014a5caffd6be987fd369b8530cbc728020b02a250000000000000000000000004556968ea1194335b4d7d722e024d1fbd75421ac000000000000000000000000589ad95db08979d176ff66e2880b185680967b55000000000000000000000000cb77758ddb0a0547960fbe391a1d32f1c7ce46d8000000000000000000000000c96321e6b097baccc822e97c24e25ae97c44ee5f0000000000000000000000000007b9c4d506c6be7b4a3d454d078db5899172da0000000000000000000000009c335e4d8cacda86647ff4497789019c7a762a62000000000000000000000000e067efa67eea849e7dbb59388fb5e739033c0737000000000000000000000000a888b175a294620ecc9e11e569d009eb932df34e000000000000000000000000e4ca4b38bfb99d7bd7053f6581657f83f983dca6000000000000000000000000d7012573ec5570372a7fe92ca6a8b69d12549380000000000000000000000000ddf0eb653732a2e614ea29b2ec2ed3ecf96223c2000000000000000000000000b043b8899be4091d3a49cbefb7db4e9ae1cbed65000000000000000000000000c1557d8a807ef31dfddfd852eaa1617e1f12159c0000000000000000000000001e13ec9dd88b8433f4ca1108562f061eaf7ce451000000000000000000000000343aca08aa8459ab018a8f543402763e8aff4b7f00000000000000000000000065a92e44d58ed6e4049e157f1d99bee98bf595f700000000000000000000000033bb5c19c076a721fe6054db6924178f1aca0dce0000000000000000000000009984c91935a11fd7b8d9c4279faf57a29b3f8e4e000000000000000000000000bcf25231f7d6fea528bdc05c569416385dc1e4a3000000000000000000000000a5e85f4811ce12001b1014982fa23c08b45453df0000000000000000000000004da0ab4662e6de728db8146643ac38e1f9ef076e000000000000000000000000673460953de8a52d1ccae3c7e31fd445da99928e0000000000000000000000008556ffdb5c8cc82a183a65be3d82e70afde879f5000000000000000000000000ac55d1ccae1d8c7d53852bf45b2dbb4cc156c237000000000000000000000000595fa33b2b2727c668be49a83c8adad37af55a490000000000000000000000004cc554dc0da7e3febf1072a98a38f7fa24ca688c0000000000000000000000009a72efab5df2ed99ce47f69e5e30a47c5fae21b500000000000000000000000019058b87cc3975b2dd7d01b6e95102ab9e1a2a7200000000000000000000000093a1c72f8deb6927467905c50d24f0c75d6ece390000000000000000000000007e7475980e970090b9c228fe66d8635afd0e5e74000000000000000000000000d7e1bc51cd3f30e21b17bab33d77078e3fb7cc260000000000000000000000002b4a0f21ff06f66c22de13a510fbe7b6b1469f75000000000000000000000000ebb4012cc60bbc990ec5ee2a9ffbcc11df5a95980000000000000000000000000b72306917c9756a6ffbbc44130bdb6c170e63b100000000000000000000000014b015a7a4de3b306b34cfde194949530f32c6f2000000000000000000000000cfe48d201c7f98c4c548e05face458195afc3f45000000000000000000000000ccf5777eb3e065bd49677230c6cc335c50339e34000000000000000000000000c74a7eee8a15383939d0546cae0812dda23e19c9000000000000000000000000d922f0da727efa48905656c1d11c4f567727496b000000000000000000000000120eda282f2085d156dd3e183f6d7b87bf2ef00d0000000000000000000000006bab82bb09f9f9fd52f0bf46f799e5b919071d8d00000000000000000000000015d2516f33c4846fd6fd0151f5d1ba869c21947000000000000000000000000070feaf35f23f8a74b0923c216b2e01740abc92b1000000000000000000000000582e7577f3511550e7c9ed9b44f049ebc33fbd0d0000000000000000000000000231e2c4896241c3dad1292e9296b26cac13604a000000000000000000000000046cd19a339761c8f62ffa5c42023bc5e07e7c5c00000000000000000000000052ce3c6605ed169cba5425020a4bc8447550e61200000000000000000000000049fa2ee0713fe822b646f62f1bf35a49e3b3a2da0000000000000000000000008371f4a6dd13a1e324edafbb7da2c391f0e8bdeb000000000000000000000000db70121d91c747b3d3ecfab421ab2901fd449fde000000000000000000000000f606325db0f1b4cf96b0d74ae263f3e2d6dcf55a000000000000000000000000b61c77cd6ecc7f0e809f28c86521e63982280e13000000000000000000000000948cdcbe4379c26d83c25da8c4e5908ec7cb9d8d0000000000000000000000000cf54d5740f6f87184771baf00c9338072fc4cee000000000000000000000000e8c39372a3284fa8a99437568df0ad66153af809000000000000000000000000719771c0dbae9f66952fec83896be2ccd43882d00000000000000000000000005e15f6ceadc71e98359f30a6e1b8719aa03b7aa7000000000000000000000000fed46b255c10c5c11335eac40c02b580cb2ba7a100000000000000000000000066cc485492c73e3e52407ec553eca6a01d733dd800000000000000000000000035b7639a8d86950dd641aae3a33906d18c4f6433000000000000000000000000516656beacd4c41f4e1a2273263ff4995d0fd1d300000000000000000000000075a69d5c334a75488a2f9b1cd0ebac72be52c67e0000000000000000000000007682af8d811c0a3ca8914b255d24632670b6148e00000000000000000000000089dc174d751f0bd61ad207caf69ce7b7889b74b10000000000000000000000004cf4f2df0233f6ad40da451728b21316b480afa7000000000000000000000000e61ee241187c07cc95bba01483867223071006da00000000000000000000000075482413b0537dd8c4f7a8a147d42d94ce91174f00000000000000000000000009741ae603df1909b3b73f0a12827a27a3121ecd0000000000000000000000003a94bc7c39c4e918313a2a80f0c6d9a4178097bb00000000000000000000000058552f5b9a66d0f35852ed847e81db7667708eed00000000000000000000000087cb24c7b55f444507e7786f8a9d669648f1e90b000000000000000000000000d9fd4871569e06e8c31dfc87281c470a15a4a92e000000000000000000000000651da61ec8c9512b816086835c7f90c485850b62000000000000000000000000a12a9cb850ddf6abe695949a50465dc1d6b3a34e000000000000000000000000945f9bc75ed1187e7601ebcef211c866a6c8e37500000000000000000000000053b114a73a146000b26841f4bb411dd1955dc4d3000000000000000000000000feb90987b29fee4b3f0eb4bc1c2ef067384d872c000000000000000000000000537d6dfba40ba39d8cb90ab0ebe466a783e4d656000000000000000000000000eb1ba1603312ea289c16fe1c9c9cb53a443261580000000000000000000000000000000000000000000000000000000000000096000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001
-----Decoded View---------------
Arg [0] : artists (address[]): 0xB64c53Fe28949054dFa164Fd6dc302B94f699755,0x9505755dbA47e1d9D61E89db4CB322459979C42d,0xB54A407B18e5f36D15E7208D27752dB68d4085eA,0x7c4A53E6e287A097B27f8aCA6786e556223c7b32,0xaB5d4C82F35fAa1B10D526c7A744aE2eBe713A94,0xC8c0843f1FA7bDaE072352F59852aa70f054067D,0x6dbde3AB50F767732013604704220Dd147638DF1,0x7B714A777B72E97E8411D65277B1D2f06F400D13,0xC10363aCbE1247c912215c79017b1887B2188d8d,0x7D330020927D35D7a96011Cc59AF5161E37cdA62,0xa21f3597B3A6C4E1fF6E0Fc3FAf3FAd0B0634100,0xfefeF530D1C196d641D6C3d9290B2b35Cc7B1264,0x20D0E09A5dF5ca56E0446581B00ea049A1Dd1DF7,0x12AACe3Ef656dDdE57bC75c13B35dc9A87c13D11,0x9dDc1a2a5016CbB2607fe2D4287C45373D616564,0x040c2f28Bb772287fEE69d033ed4459c08C1113B,0x71cFE5951e236A1d45Fa668Df460558772527638,0xF0f1a04a214EFE01ac5E189e6D9f38cf5D98d84E,0xD03D0B1bEbE7EC88B16297f229F7362b7420585C,0x3e7221E2bf2AaF3f946c98e6e07FbA079b7E8d20,0x14A433774a8a25aeFE804D61ce88361708936c49,0x0FFe7796eDDAB40c03eA78EEc74F9287a73C0670,0x014361A9a9c55c6442281eF6534e731442ed06c0,0xC3Ae80C65A25D3e11beC83d7307273364cF68b1E,0x75DC3D4EeafE592A73DDaC50cF0EA1f5F545ef1D,0xfed52bF80D4231F7f6F017790935d0E44c59563b,0xF42D99a5eA3124fe21B947d9D76d95C0c03a5FeB,0x0F5ad36CF3bb8e98cC185e7385BA063FE4cb2018,0x1628E7b03D4E1D9Fd11Da383c96A194E7483D692,0xCF0669a41281Df297C95E59FE69308411B7DC9Bb,0xCD7FA12A29D727D87C5cc6Ea7B16544faF6c554d,0x9AB0c5AF2ED4bDffE6B8687F06eD3a536d0D710d,0xb5076343849f0402c33698bAe044b4D9510b52c0,0xa264F355089Bd93777979e9e40b278400b8778e9,0xd976509AaD5Af94768C2555fc93fFf5B4AA71053,0x38A2268794C421E8ED1aB014b9fd077E761bee21,0x50aF54EdaBE7Fe57aE74F6D9C438AA5a80846513,0xE077BB264b064eBC9Bf2bf98a3A421959534b7fe,0xA3123215e33300cFc7228E20eD4a7C437C833A39,0xDF50CDF81fc2aD44bf05ADA718d6b1ABFA91A4f9,0x61e3A038e965F26e6cb24c1eaf282CC02fE55347,0x82a9BfD5901aE6946355e228C9aD619B8090121B,0xBC03f695A1f2A03669FCA05EE1e7d2ED702F1b28,0x8FC11AB9a5F72a4f0d12199A72F474933bd71064,0xAB0F23bdB8007FD9407cdDFDC199De97cda34745,0xB82FCd017Cd5031bd2EAC31FdF9551b62C4c4c16,0xB1D9BDeaafae11402FF0c88F859377E9bF6DAc64,0x1759f1C6142d8Fe0d0f39354e7fA61910c71A899,0x0c7545411B342fF722159ca116be24B7cC08fa8E,0x28b5b2733ee20037bB7B7e47993e41Cca6b42576,0x19609Ec1FF5Ad509C84B3785c0AaB9150E658B13,0xD59F49D76581680CcB0a1d77903c92Ff2Cb2B663,0xfD2543e8E2A44B16c782235aC864A8DB210e3cdf,0xBb59498B19783E5D81F72ad07acDAC619B6808e2,0x051f458eb3A16c982F6ea3B91eF822a0aD9c3A46,0xF3d315913349d0024A0d2cDDE87eEb8c940A8f3e,0x191e00192b215B6fD496743DF6D273215e33241C,0xF394b6Bb619729685E9C5E1D0Ab27B6546Ca591A,0x30924F3d41BA1bb921cF6B07749ef8731a4a106E,0x13257E056112D578414e5d291926c9D684d5D9eF,0xc26EC287e5c848b138cc0Ccef7F754AA2bc84D7B,0x81cb88B0E44934A73319407Aa9e00983246fa681,0x22c134CD6FcBC67216FF6EBD98a8805246a97Db0,0xa84187162C75d7Ef090E0dA71BaB9984c0A0780e,0x5467846786Aed0Ad76735BBbc4Ad4877e8b85d51,0xd6c3D9B976799e0410070927Bc74C0009d47511A,0xaFE27D2049c037915fB73ED30dceBcCEC516e1c3,0xf54F26F8A94DDC9d383B4E3AeB7A1520682F074A,0xd7CAfffC2b904859cFE603B4098b2eF3BE045961,0x266a057678a829d0637922052d239cA55E289AAe,0x14a5CAffD6bE987fD369B8530Cbc728020b02a25,0x4556968Ea1194335B4D7D722E024d1FBD75421ac,0x589AD95db08979d176ff66e2880B185680967b55,0xcB77758DdB0A0547960fBe391a1d32F1C7ce46D8,0xc96321e6b097baCCc822E97c24e25aE97c44Ee5F,0x0007b9c4D506C6bE7B4A3D454d078Db5899172dA,0x9C335e4d8cACDa86647ff4497789019C7a762A62,0xe067EFA67EEA849e7DBb59388Fb5e739033c0737,0xA888b175a294620eCC9E11E569D009EB932df34E,0xE4CA4B38bFb99d7bD7053f6581657f83f983dcA6,0xd7012573ec5570372a7fe92CA6a8B69d12549380,0xDdF0eB653732a2e614eA29b2eC2ed3Ecf96223C2,0xB043B8899Be4091D3A49Cbefb7DB4e9Ae1cbed65,0xC1557d8A807Ef31dfdDfD852EaA1617e1f12159c,0x1e13EC9dD88B8433F4cA1108562F061eaf7CE451,0x343Aca08Aa8459ab018a8f543402763E8aff4B7f,0x65A92e44d58Ed6e4049e157f1D99beE98bF595F7,0x33bB5c19c076a721FE6054Db6924178f1aca0DCE,0x9984c91935A11fd7b8D9c4279fAf57A29b3F8e4e,0xbcF25231f7d6fEA528BdC05c569416385DC1E4A3,0xa5E85F4811cE12001b1014982Fa23C08b45453dF,0x4Da0AB4662E6de728db8146643Ac38E1f9EF076E,0x673460953De8A52d1ccae3C7e31fD445da99928E,0x8556ffDb5c8Cc82a183a65be3D82e70afdE879F5,0xAc55D1cCaE1d8c7D53852BF45b2DbB4cc156C237,0x595FA33b2B2727c668Be49a83C8AdAd37AF55A49,0x4Cc554dC0DA7E3febF1072A98A38f7fA24Ca688c,0x9a72EFab5DF2ED99Ce47f69e5E30a47C5FAe21b5,0x19058B87cc3975b2dd7d01B6e95102AB9e1a2a72,0x93A1c72f8dEb6927467905c50D24F0c75d6ecE39,0x7e7475980e970090B9C228fE66d8635AFd0e5e74,0xd7E1bc51cd3F30e21b17Bab33D77078E3fB7cC26,0x2B4A0f21fF06f66C22dE13A510FbE7b6B1469F75,0xEbB4012CC60bbC990EC5Ee2a9FfbCc11DF5a9598,0x0b72306917c9756a6FFBBC44130bdb6c170E63b1,0x14B015A7A4de3B306B34cfDe194949530f32C6f2,0xcfe48D201C7F98c4c548e05fACE458195afC3f45,0xCCf5777eb3E065bd49677230c6cC335C50339e34,0xc74A7EEE8A15383939d0546CAE0812Dda23E19C9,0xD922f0DA727EFa48905656C1D11c4f567727496b,0x120EDa282f2085d156DD3E183f6d7b87bF2eF00d,0x6Bab82BB09f9f9FD52f0BF46f799e5B919071D8D,0x15d2516f33c4846fD6fd0151F5D1ba869C219470,0x70FeaF35f23F8A74B0923c216B2E01740aBc92B1,0x582E7577f3511550e7c9ed9B44F049EBc33fBD0D,0x0231e2C4896241C3DAD1292e9296B26Cac13604A,0x046CD19A339761C8f62FFA5C42023bC5E07e7c5C,0x52ce3C6605Ed169cBA5425020a4Bc8447550E612,0x49fA2eE0713fe822B646f62F1bF35A49e3b3a2Da,0x8371F4A6Dd13A1e324edaFBB7dA2C391f0e8bDEB,0xdB70121d91c747B3d3eCfab421AB2901FD449fdE,0xF606325Db0f1b4cf96b0D74Ae263F3e2d6dcF55a,0xB61C77Cd6ecC7F0e809f28c86521E63982280E13,0x948CdCbE4379C26d83C25Da8c4e5908Ec7cB9d8d,0x0Cf54D5740F6F87184771Baf00c9338072Fc4cEe,0xe8C39372a3284FA8a99437568df0Ad66153af809,0x719771c0Dbae9f66952feC83896be2CcD43882d0,0x5e15F6Ceadc71E98359F30A6e1B8719aa03B7aA7,0xFed46B255C10C5C11335EAc40c02B580cb2Ba7a1,0x66cC485492C73E3e52407eC553ECA6a01D733dD8,0x35B7639A8D86950dD641AaE3a33906d18c4f6433,0x516656beAcD4C41f4E1a2273263FF4995d0Fd1D3,0x75a69d5c334A75488A2f9B1Cd0EbaC72BE52c67e,0x7682aF8D811c0A3ca8914b255d24632670B6148E,0x89dc174D751F0bD61aD207cAF69ce7b7889B74B1,0x4cF4F2DF0233f6AD40da451728B21316b480afA7,0xe61eE241187C07cC95bbA01483867223071006DA,0x75482413b0537dd8c4F7A8A147d42D94ce91174f,0x09741AE603DF1909b3b73F0a12827A27a3121eCD,0x3A94bC7C39c4E918313a2A80F0c6d9a4178097bb,0x58552f5B9A66D0F35852Ed847E81db7667708eeD,0x87cb24C7B55F444507e7786F8A9D669648f1E90B,0xd9fD4871569e06e8C31DfC87281C470a15A4a92e,0x651DA61ec8c9512b816086835c7f90c485850b62,0xA12a9cB850DDF6aBE695949A50465Dc1D6B3A34E,0x945f9bC75ed1187E7601EbCef211c866A6C8e375,0x53B114A73a146000b26841f4bb411DD1955DC4d3,0xFeB90987B29Fee4B3F0EB4bC1c2eF067384d872C,0x537d6DfBa40ba39D8CB90ab0Ebe466A783E4D656,0xEb1bA1603312EA289c16FE1C9c9cb53a44326158
Arg [1] : shares (uint256[]): 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
-----Encoded View---------------
304 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [1] : 0000000000000000000000000000000000000000000000000000000000001320
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000096
Arg [3] : 000000000000000000000000b64c53fe28949054dfa164fd6dc302b94f699755
Arg [4] : 0000000000000000000000009505755dba47e1d9d61e89db4cb322459979c42d
Arg [5] : 000000000000000000000000b54a407b18e5f36d15e7208d27752db68d4085ea
Arg [6] : 0000000000000000000000007c4a53e6e287a097b27f8aca6786e556223c7b32
Arg [7] : 000000000000000000000000ab5d4c82f35faa1b10d526c7a744ae2ebe713a94
Arg [8] : 000000000000000000000000c8c0843f1fa7bdae072352f59852aa70f054067d
Arg [9] : 0000000000000000000000006dbde3ab50f767732013604704220dd147638df1
Arg [10] : 0000000000000000000000007b714a777b72e97e8411d65277b1d2f06f400d13
Arg [11] : 000000000000000000000000c10363acbe1247c912215c79017b1887b2188d8d
Arg [12] : 0000000000000000000000007d330020927d35d7a96011cc59af5161e37cda62
Arg [13] : 000000000000000000000000a21f3597b3a6c4e1ff6e0fc3faf3fad0b0634100
Arg [14] : 000000000000000000000000fefef530d1c196d641d6c3d9290b2b35cc7b1264
Arg [15] : 00000000000000000000000020d0e09a5df5ca56e0446581b00ea049a1dd1df7
Arg [16] : 00000000000000000000000012aace3ef656ddde57bc75c13b35dc9a87c13d11
Arg [17] : 0000000000000000000000009ddc1a2a5016cbb2607fe2d4287c45373d616564
Arg [18] : 000000000000000000000000040c2f28bb772287fee69d033ed4459c08c1113b
Arg [19] : 00000000000000000000000071cfe5951e236a1d45fa668df460558772527638
Arg [20] : 000000000000000000000000f0f1a04a214efe01ac5e189e6d9f38cf5d98d84e
Arg [21] : 000000000000000000000000d03d0b1bebe7ec88b16297f229f7362b7420585c
Arg [22] : 0000000000000000000000003e7221e2bf2aaf3f946c98e6e07fba079b7e8d20
Arg [23] : 00000000000000000000000014a433774a8a25aefe804d61ce88361708936c49
Arg [24] : 0000000000000000000000000ffe7796eddab40c03ea78eec74f9287a73c0670
Arg [25] : 000000000000000000000000014361a9a9c55c6442281ef6534e731442ed06c0
Arg [26] : 000000000000000000000000c3ae80c65a25d3e11bec83d7307273364cf68b1e
Arg [27] : 00000000000000000000000075dc3d4eeafe592a73ddac50cf0ea1f5f545ef1d
Arg [28] : 000000000000000000000000fed52bf80d4231f7f6f017790935d0e44c59563b
Arg [29] : 000000000000000000000000f42d99a5ea3124fe21b947d9d76d95c0c03a5feb
Arg [30] : 0000000000000000000000000f5ad36cf3bb8e98cc185e7385ba063fe4cb2018
Arg [31] : 0000000000000000000000001628e7b03d4e1d9fd11da383c96a194e7483d692
Arg [32] : 000000000000000000000000cf0669a41281df297c95e59fe69308411b7dc9bb
Arg [33] : 000000000000000000000000cd7fa12a29d727d87c5cc6ea7b16544faf6c554d
Arg [34] : 0000000000000000000000009ab0c5af2ed4bdffe6b8687f06ed3a536d0d710d
Arg [35] : 000000000000000000000000b5076343849f0402c33698bae044b4d9510b52c0
Arg [36] : 000000000000000000000000a264f355089bd93777979e9e40b278400b8778e9
Arg [37] : 000000000000000000000000d976509aad5af94768c2555fc93fff5b4aa71053
Arg [38] : 00000000000000000000000038a2268794c421e8ed1ab014b9fd077e761bee21
Arg [39] : 00000000000000000000000050af54edabe7fe57ae74f6d9c438aa5a80846513
Arg [40] : 000000000000000000000000e077bb264b064ebc9bf2bf98a3a421959534b7fe
Arg [41] : 000000000000000000000000a3123215e33300cfc7228e20ed4a7c437c833a39
Arg [42] : 000000000000000000000000df50cdf81fc2ad44bf05ada718d6b1abfa91a4f9
Arg [43] : 00000000000000000000000061e3a038e965f26e6cb24c1eaf282cc02fe55347
Arg [44] : 00000000000000000000000082a9bfd5901ae6946355e228c9ad619b8090121b
Arg [45] : 000000000000000000000000bc03f695a1f2a03669fca05ee1e7d2ed702f1b28
Arg [46] : 0000000000000000000000008fc11ab9a5f72a4f0d12199a72f474933bd71064
Arg [47] : 000000000000000000000000ab0f23bdb8007fd9407cddfdc199de97cda34745
Arg [48] : 000000000000000000000000b82fcd017cd5031bd2eac31fdf9551b62c4c4c16
Arg [49] : 000000000000000000000000b1d9bdeaafae11402ff0c88f859377e9bf6dac64
Arg [50] : 0000000000000000000000001759f1c6142d8fe0d0f39354e7fa61910c71a899
Arg [51] : 0000000000000000000000000c7545411b342ff722159ca116be24b7cc08fa8e
Arg [52] : 00000000000000000000000028b5b2733ee20037bb7b7e47993e41cca6b42576
Arg [53] : 00000000000000000000000019609ec1ff5ad509c84b3785c0aab9150e658b13
Arg [54] : 000000000000000000000000d59f49d76581680ccb0a1d77903c92ff2cb2b663
Arg [55] : 000000000000000000000000fd2543e8e2a44b16c782235ac864a8db210e3cdf
Arg [56] : 000000000000000000000000bb59498b19783e5d81f72ad07acdac619b6808e2
Arg [57] : 000000000000000000000000051f458eb3a16c982f6ea3b91ef822a0ad9c3a46
Arg [58] : 000000000000000000000000f3d315913349d0024a0d2cdde87eeb8c940a8f3e
Arg [59] : 000000000000000000000000191e00192b215b6fd496743df6d273215e33241c
Arg [60] : 000000000000000000000000f394b6bb619729685e9c5e1d0ab27b6546ca591a
Arg [61] : 00000000000000000000000030924f3d41ba1bb921cf6b07749ef8731a4a106e
Arg [62] : 00000000000000000000000013257e056112d578414e5d291926c9d684d5d9ef
Arg [63] : 000000000000000000000000c26ec287e5c848b138cc0ccef7f754aa2bc84d7b
Arg [64] : 00000000000000000000000081cb88b0e44934a73319407aa9e00983246fa681
Arg [65] : 00000000000000000000000022c134cd6fcbc67216ff6ebd98a8805246a97db0
Arg [66] : 000000000000000000000000a84187162c75d7ef090e0da71bab9984c0a0780e
Arg [67] : 0000000000000000000000005467846786aed0ad76735bbbc4ad4877e8b85d51
Arg [68] : 000000000000000000000000d6c3d9b976799e0410070927bc74c0009d47511a
Arg [69] : 000000000000000000000000afe27d2049c037915fb73ed30dcebccec516e1c3
Arg [70] : 000000000000000000000000f54f26f8a94ddc9d383b4e3aeb7a1520682f074a
Arg [71] : 000000000000000000000000d7cafffc2b904859cfe603b4098b2ef3be045961
Arg [72] : 000000000000000000000000266a057678a829d0637922052d239ca55e289aae
Arg [73] : 00000000000000000000000014a5caffd6be987fd369b8530cbc728020b02a25
Arg [74] : 0000000000000000000000004556968ea1194335b4d7d722e024d1fbd75421ac
Arg [75] : 000000000000000000000000589ad95db08979d176ff66e2880b185680967b55
Arg [76] : 000000000000000000000000cb77758ddb0a0547960fbe391a1d32f1c7ce46d8
Arg [77] : 000000000000000000000000c96321e6b097baccc822e97c24e25ae97c44ee5f
Arg [78] : 0000000000000000000000000007b9c4d506c6be7b4a3d454d078db5899172da
Arg [79] : 0000000000000000000000009c335e4d8cacda86647ff4497789019c7a762a62
Arg [80] : 000000000000000000000000e067efa67eea849e7dbb59388fb5e739033c0737
Arg [81] : 000000000000000000000000a888b175a294620ecc9e11e569d009eb932df34e
Arg [82] : 000000000000000000000000e4ca4b38bfb99d7bd7053f6581657f83f983dca6
Arg [83] : 000000000000000000000000d7012573ec5570372a7fe92ca6a8b69d12549380
Arg [84] : 000000000000000000000000ddf0eb653732a2e614ea29b2ec2ed3ecf96223c2
Arg [85] : 000000000000000000000000b043b8899be4091d3a49cbefb7db4e9ae1cbed65
Arg [86] : 000000000000000000000000c1557d8a807ef31dfddfd852eaa1617e1f12159c
Arg [87] : 0000000000000000000000001e13ec9dd88b8433f4ca1108562f061eaf7ce451
Arg [88] : 000000000000000000000000343aca08aa8459ab018a8f543402763e8aff4b7f
Arg [89] : 00000000000000000000000065a92e44d58ed6e4049e157f1d99bee98bf595f7
Arg [90] : 00000000000000000000000033bb5c19c076a721fe6054db6924178f1aca0dce
Arg [91] : 0000000000000000000000009984c91935a11fd7b8d9c4279faf57a29b3f8e4e
Arg [92] : 000000000000000000000000bcf25231f7d6fea528bdc05c569416385dc1e4a3
Arg [93] : 000000000000000000000000a5e85f4811ce12001b1014982fa23c08b45453df
Arg [94] : 0000000000000000000000004da0ab4662e6de728db8146643ac38e1f9ef076e
Arg [95] : 000000000000000000000000673460953de8a52d1ccae3c7e31fd445da99928e
Arg [96] : 0000000000000000000000008556ffdb5c8cc82a183a65be3d82e70afde879f5
Arg [97] : 000000000000000000000000ac55d1ccae1d8c7d53852bf45b2dbb4cc156c237
Arg [98] : 000000000000000000000000595fa33b2b2727c668be49a83c8adad37af55a49
Arg [99] : 0000000000000000000000004cc554dc0da7e3febf1072a98a38f7fa24ca688c
Arg [100] : 0000000000000000000000009a72efab5df2ed99ce47f69e5e30a47c5fae21b5
Arg [101] : 00000000000000000000000019058b87cc3975b2dd7d01b6e95102ab9e1a2a72
Arg [102] : 00000000000000000000000093a1c72f8deb6927467905c50d24f0c75d6ece39
Arg [103] : 0000000000000000000000007e7475980e970090b9c228fe66d8635afd0e5e74
Arg [104] : 000000000000000000000000d7e1bc51cd3f30e21b17bab33d77078e3fb7cc26
Arg [105] : 0000000000000000000000002b4a0f21ff06f66c22de13a510fbe7b6b1469f75
Arg [106] : 000000000000000000000000ebb4012cc60bbc990ec5ee2a9ffbcc11df5a9598
Arg [107] : 0000000000000000000000000b72306917c9756a6ffbbc44130bdb6c170e63b1
Arg [108] : 00000000000000000000000014b015a7a4de3b306b34cfde194949530f32c6f2
Arg [109] : 000000000000000000000000cfe48d201c7f98c4c548e05face458195afc3f45
Arg [110] : 000000000000000000000000ccf5777eb3e065bd49677230c6cc335c50339e34
Arg [111] : 000000000000000000000000c74a7eee8a15383939d0546cae0812dda23e19c9
Arg [112] : 000000000000000000000000d922f0da727efa48905656c1d11c4f567727496b
Arg [113] : 000000000000000000000000120eda282f2085d156dd3e183f6d7b87bf2ef00d
Arg [114] : 0000000000000000000000006bab82bb09f9f9fd52f0bf46f799e5b919071d8d
Arg [115] : 00000000000000000000000015d2516f33c4846fd6fd0151f5d1ba869c219470
Arg [116] : 00000000000000000000000070feaf35f23f8a74b0923c216b2e01740abc92b1
Arg [117] : 000000000000000000000000582e7577f3511550e7c9ed9b44f049ebc33fbd0d
Arg [118] : 0000000000000000000000000231e2c4896241c3dad1292e9296b26cac13604a
Arg [119] : 000000000000000000000000046cd19a339761c8f62ffa5c42023bc5e07e7c5c
Arg [120] : 00000000000000000000000052ce3c6605ed169cba5425020a4bc8447550e612
Arg [121] : 00000000000000000000000049fa2ee0713fe822b646f62f1bf35a49e3b3a2da
Arg [122] : 0000000000000000000000008371f4a6dd13a1e324edafbb7da2c391f0e8bdeb
Arg [123] : 000000000000000000000000db70121d91c747b3d3ecfab421ab2901fd449fde
Arg [124] : 000000000000000000000000f606325db0f1b4cf96b0d74ae263f3e2d6dcf55a
Arg [125] : 000000000000000000000000b61c77cd6ecc7f0e809f28c86521e63982280e13
Arg [126] : 000000000000000000000000948cdcbe4379c26d83c25da8c4e5908ec7cb9d8d
Arg [127] : 0000000000000000000000000cf54d5740f6f87184771baf00c9338072fc4cee
Arg [128] : 000000000000000000000000e8c39372a3284fa8a99437568df0ad66153af809
Arg [129] : 000000000000000000000000719771c0dbae9f66952fec83896be2ccd43882d0
Arg [130] : 0000000000000000000000005e15f6ceadc71e98359f30a6e1b8719aa03b7aa7
Arg [131] : 000000000000000000000000fed46b255c10c5c11335eac40c02b580cb2ba7a1
Arg [132] : 00000000000000000000000066cc485492c73e3e52407ec553eca6a01d733dd8
Arg [133] : 00000000000000000000000035b7639a8d86950dd641aae3a33906d18c4f6433
Arg [134] : 000000000000000000000000516656beacd4c41f4e1a2273263ff4995d0fd1d3
Arg [135] : 00000000000000000000000075a69d5c334a75488a2f9b1cd0ebac72be52c67e
Arg [136] : 0000000000000000000000007682af8d811c0a3ca8914b255d24632670b6148e
Arg [137] : 00000000000000000000000089dc174d751f0bd61ad207caf69ce7b7889b74b1
Arg [138] : 0000000000000000000000004cf4f2df0233f6ad40da451728b21316b480afa7
Arg [139] : 000000000000000000000000e61ee241187c07cc95bba01483867223071006da
Arg [140] : 00000000000000000000000075482413b0537dd8c4f7a8a147d42d94ce91174f
Arg [141] : 00000000000000000000000009741ae603df1909b3b73f0a12827a27a3121ecd
Arg [142] : 0000000000000000000000003a94bc7c39c4e918313a2a80f0c6d9a4178097bb
Arg [143] : 00000000000000000000000058552f5b9a66d0f35852ed847e81db7667708eed
Arg [144] : 00000000000000000000000087cb24c7b55f444507e7786f8a9d669648f1e90b
Arg [145] : 000000000000000000000000d9fd4871569e06e8c31dfc87281c470a15a4a92e
Arg [146] : 000000000000000000000000651da61ec8c9512b816086835c7f90c485850b62
Arg [147] : 000000000000000000000000a12a9cb850ddf6abe695949a50465dc1d6b3a34e
Arg [148] : 000000000000000000000000945f9bc75ed1187e7601ebcef211c866a6c8e375
Arg [149] : 00000000000000000000000053b114a73a146000b26841f4bb411dd1955dc4d3
Arg [150] : 000000000000000000000000feb90987b29fee4b3f0eb4bc1c2ef067384d872c
Arg [151] : 000000000000000000000000537d6dfba40ba39d8cb90ab0ebe466a783e4d656
Arg [152] : 000000000000000000000000eb1ba1603312ea289c16fe1c9c9cb53a44326158
Arg [153] : 0000000000000000000000000000000000000000000000000000000000000096
Arg [154] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [155] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [156] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [157] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [158] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [159] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [160] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [161] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [162] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [163] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [164] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [165] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [166] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [167] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [168] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [169] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [170] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [171] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [172] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [173] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [174] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [175] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [176] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [177] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [178] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [179] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [180] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [181] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [182] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [183] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [184] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [185] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [186] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [187] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [188] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [189] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [190] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [191] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [192] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [193] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [194] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [195] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [196] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [197] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [198] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [199] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [200] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [201] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [202] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [203] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [204] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [205] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [206] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [207] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [208] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [209] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [210] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [211] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [212] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [213] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [214] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [215] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [216] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [217] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [218] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [219] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [220] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [221] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [222] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [223] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [224] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [225] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [226] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [227] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [228] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [229] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [230] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [231] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [232] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [233] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [234] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [235] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [236] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [237] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [238] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [239] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [240] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [241] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [242] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [243] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [244] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [245] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [246] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [247] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [248] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [249] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [250] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [251] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [252] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [253] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [254] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [255] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [256] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [257] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [258] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [259] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [260] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [261] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [262] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [263] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [264] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [265] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [266] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [267] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [268] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [269] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [270] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [271] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [272] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [273] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [274] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [275] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [276] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [277] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [278] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [279] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [280] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [281] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [282] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [283] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [284] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [285] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [286] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [287] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [288] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [289] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [290] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [291] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [292] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [293] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [294] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [295] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [296] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [297] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [298] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [299] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [300] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [301] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [302] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [303] : 0000000000000000000000000000000000000000000000000000000000000001
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.