More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 5,788 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Withdraw | 17879414 | 502 days ago | IN | 0 ETH | 0.00118558 | ||||
Withdraw | 17879409 | 502 days ago | IN | 0 ETH | 0.00103183 | ||||
Withdraw | 17879405 | 502 days ago | IN | 0 ETH | 0.00085315 | ||||
Withdraw | 17295527 | 584 days ago | IN | 0 ETH | 0.00270507 | ||||
Withdraw | 17295478 | 584 days ago | IN | 0 ETH | 0.00238349 | ||||
Withdraw | 17295464 | 584 days ago | IN | 0 ETH | 0.00224158 | ||||
Pay Fee | 17196770 | 598 days ago | IN | 0.008 ETH | 0.00841657 | ||||
Pay Fee | 17195897 | 598 days ago | IN | 0.008 ETH | 0.0122287 | ||||
Register Vault | 17188325 | 599 days ago | IN | 0 ETH | 0.00975388 | ||||
Pay Fee | 17154181 | 604 days ago | IN | 0.008 ETH | 0.00180045 | ||||
Pay Fee | 17148953 | 605 days ago | IN | 0.008 ETH | 0.00177224 | ||||
Register Vault | 17145603 | 605 days ago | IN | 0 ETH | 0.00385895 | ||||
Withdraw | 17125445 | 608 days ago | IN | 0 ETH | 0.00195471 | ||||
Pay Fee | 17125312 | 608 days ago | IN | 0.002 ETH | 0.00205252 | ||||
Pay Fee | 17120642 | 608 days ago | IN | 0.002 ETH | 0.00182475 | ||||
Pay Fee | 17118037 | 609 days ago | IN | 0.002 ETH | 0.00255277 | ||||
Pay Fee | 17115723 | 609 days ago | IN | 0.002 ETH | 0.00220259 | ||||
Pay Fee | 17109411 | 610 days ago | IN | 0.002 ETH | 0.00207583 | ||||
Pay Fee | 17109127 | 610 days ago | IN | 0.002 ETH | 0.00207316 | ||||
Pay Fee | 17104867 | 611 days ago | IN | 0.002 ETH | 0.00259738 | ||||
Pay Fee | 17103407 | 611 days ago | IN | 0.002 ETH | 0.00416171 | ||||
Pay Fee | 17102430 | 611 days ago | IN | 0.002 ETH | 0.00186466 | ||||
Pay Fee | 17098632 | 612 days ago | IN | 0.002 ETH | 0.00174646 | ||||
Pay Fee | 17097238 | 612 days ago | IN | 0.002 ETH | 0.00204876 | ||||
Register Vault | 17095882 | 612 days ago | IN | 0 ETH | 0.00394444 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
17879414 | 502 days ago | 0.016 ETH | ||||
17879409 | 502 days ago | 0.016 ETH | ||||
17295527 | 584 days ago | 0.008 ETH | ||||
17295478 | 584 days ago | 0.016 ETH | ||||
17295464 | 584 days ago | 0.008 ETH | ||||
17125445 | 608 days ago | 0.318 ETH | ||||
17036048 | 621 days ago | 1.238 ETH | ||||
16934776 | 635 days ago | 0.856 ETH | ||||
16798754 | 654 days ago | 0.024 ETH | ||||
16793919 | 655 days ago | 0.04 ETH | ||||
16793484 | 655 days ago | 0.024 ETH | ||||
16793471 | 655 days ago | 0.008 ETH | ||||
16735924 | 663 days ago | 1.114 ETH | ||||
16735912 | 663 days ago | 0.38 ETH | ||||
16585893 | 684 days ago | 0.304 ETH | ||||
16585875 | 684 days ago | 0.168 ETH | ||||
16585702 | 684 days ago | 0.49 ETH | ||||
16500508 | 696 days ago | 0.048 ETH | ||||
16500507 | 696 days ago | 0.008 ETH | ||||
16401190 | 710 days ago | 0.016 ETH | ||||
16293962 | 725 days ago | 0.024 ETH | ||||
16293960 | 725 days ago | 0.016 ETH | ||||
16242233 | 732 days ago | 0.044138 ETH | ||||
16188187 | 739 days ago | 0.032 ETH | ||||
16182762 | 740 days ago | 0.016 ETH |
Loading...
Loading
Contract Name:
FeeCollector
Compiler Version
v0.8.15+commit.e14f2714
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity 0.8.15; import { IFeeCollector } from "./interfaces/IFeeCollector.sol"; import { LibAddress } from "./lib/LibAddress.sol"; import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; contract FeeCollector is IFeeCollector { using LibAddress for address payable; address payable public guildFeeCollector; uint96 public guildSharex100; address payable public poapFeeCollector; uint96 public poapSharex100; Vault[] internal vaults; /// @param guildFeeCollector_ The address that will receive Guild's share from the funds. /// @param guildSharex100_ The percentage of Guild's share multiplied by 100 (e.g 500 for a 5% cut). /// @param poapFeeCollector_ The address that will receive POAP's share from the funds. /// @param poapSharex100_ The percentage of POAP's share multiplied by 100 (e.g 500 for a 5% cut). constructor( address payable guildFeeCollector_, uint96 guildSharex100_, address payable poapFeeCollector_, uint96 poapSharex100_ ) { guildFeeCollector = guildFeeCollector_; guildSharex100 = guildSharex100_; poapFeeCollector = poapFeeCollector_; poapSharex100 = poapSharex100_; } function registerVault( uint256 eventId, address owner, address token, uint128 fee ) external { Vault storage vault = vaults.push(); vault.eventId = eventId; vault.owner = owner; vault.token = token; vault.fee = fee; emit VaultRegistered(vaults.length - 1, eventId, owner, token, fee); } function payFee(uint256 vaultId) external payable { if (vaultId >= vaults.length) revert VaultDoesNotExist(vaultId); Vault storage vault = vaults[vaultId]; uint256 requiredAmount = vault.fee; vault.collected += uint128(requiredAmount); vault.paid[msg.sender] = true; // If the tokenAddress is zero, the payment should be in Ether, otherwise in ERC20. address tokenAddress = vault.token; if (tokenAddress == address(0)) { if (msg.value != requiredAmount) revert IncorrectFee(vaultId, msg.value, requiredAmount); } else { if (msg.value != 0) revert IncorrectFee(vaultId, msg.value, 0); if (!IERC20(vault.token).transferFrom(msg.sender, address(this), requiredAmount)) revert TransferFailed(msg.sender, address(this)); } emit FeeReceived(vaultId, msg.sender, requiredAmount); } function withdraw(uint256 vaultId) external { if (vaultId >= vaults.length) revert VaultDoesNotExist(vaultId); Vault storage vault = vaults[vaultId]; uint256 collected = vault.collected; vault.collected = 0; // Calculate fees to receive. Guild's and Poap's part is truncated - the remainder goes to the owner (max 2 wei). uint256 guildAmount = (collected * guildSharex100) / 10000; uint256 poapAmount = (collected * poapSharex100) / 10000; uint256 ownerAmount = collected - poapAmount - guildAmount; // If the tokenAddress is zero, the collected fees are in Ether, otherwise in ERC20. address tokenAddress = vault.token; if (tokenAddress == address(0)) _withdrawEther(guildAmount, poapAmount, ownerAmount, vault.owner); else _withdrawToken(guildAmount, poapAmount, ownerAmount, vault.owner, tokenAddress); emit Withdrawn(vaultId, guildAmount, poapAmount, ownerAmount); } function setGuildFeeCollector(address payable newFeeCollector) external { if (msg.sender != guildFeeCollector) revert AccessDenied(msg.sender, guildFeeCollector); guildFeeCollector = newFeeCollector; emit GuildFeeCollectorChanged(newFeeCollector); } function setGuildSharex100(uint96 newShare) external { if (msg.sender != guildFeeCollector) revert AccessDenied(msg.sender, guildFeeCollector); guildSharex100 = newShare; emit GuildSharex100Changed(newShare); } function setPoapFeeCollector(address payable newFeeCollector) external { if (msg.sender != poapFeeCollector) revert AccessDenied(msg.sender, poapFeeCollector); poapFeeCollector = newFeeCollector; emit PoapFeeCollectorChanged(newFeeCollector); } function setPoapSharex100(uint96 newShare) external { if (msg.sender != poapFeeCollector) revert AccessDenied(msg.sender, poapFeeCollector); poapSharex100 = newShare; emit PoapSharex100Changed(newShare); } function getVault(uint256 vaultId) external view returns ( uint256 eventId, address owner, address token, uint128 fee, uint128 collected ) { if (vaultId >= vaults.length) revert VaultDoesNotExist(vaultId); Vault storage vault = vaults[vaultId]; return (vault.eventId, vault.owner, vault.token, vault.fee, vault.collected); } function hasPaid(uint256 vaultId, address account) external view returns (bool paid) { if (vaultId >= vaults.length) revert VaultDoesNotExist(vaultId); return vaults[vaultId].paid[account]; } function _withdrawEther( uint256 guildAmount, uint256 poapAmount, uint256 ownerAmount, address eventOwner ) internal { guildFeeCollector.sendEther(guildAmount); poapFeeCollector.sendEther(poapAmount); payable(eventOwner).sendEther(ownerAmount); } function _withdrawToken( uint256 guildAmount, uint256 poapAmount, uint256 ownerAmount, address eventOwner, address tokenAddress ) internal { IERC20 token = IERC20(tokenAddress); if (!token.transfer(guildFeeCollector, guildAmount)) revert TransferFailed(address(this), guildFeeCollector); if (!token.transfer(poapFeeCollector, poapAmount)) revert TransferFailed(address(this), poapFeeCollector); if (!token.transfer(eventOwner, ownerAmount)) revert TransferFailed(address(this), eventOwner); } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; interface IFeeCollector { struct Vault { uint256 eventId; address owner; address token; uint128 fee; uint128 collected; mapping(address => bool) paid; } /// @notice Registers a POAP drop and it's fee. /// @param eventId The id of the POAP drop. /// @param owner The address that receives the fees from the drop. /// @param token The zero address for Ether, otherwise an ERC20 token. /// @param fee The amount of fee to pay in wei. function registerVault( uint256 eventId, address owner, address token, uint128 fee ) external; /// @notice Registers the paid fee, both in Ether or ERC20. /// @param vaultId The id of the vault to pay to. function payFee(uint256 vaultId) external payable; /// @notice Sets the address that receives Guild's share from the funds. /// @dev Callable only by the current Guild fee collector. /// @param newFeeCollector The new address of guildFeeCollector. function setGuildFeeCollector(address payable newFeeCollector) external; /// @notice Sets Guild's share from the funds. /// @dev Callable only by the Guild fee collector. /// @param newShare The percentual value multiplied by 100. function setGuildSharex100(uint96 newShare) external; /// @notice Sets the address that receives POAP's share from the funds. /// @dev Callable only by the current POAP fee collector. /// @param newFeeCollector The new address of poapFeeCollector. function setPoapFeeCollector(address payable newFeeCollector) external; /// @notice Sets POAP's share from the funds. /// @dev Callable only by the POAP fee collector. /// @param newShare The percentual value multiplied by 100. function setPoapSharex100(uint96 newShare) external; /// @notice Distributes the funds from a vault to the fee collectors and the owner. /// @param vaultId The id of the vault whose funds should be distributed. function withdraw(uint256 vaultId) external; /// @notice Returns a vault's details. /// @param vaultId The id of the queried vault. /// @return eventId The id of the POAP drop. /// @return owner The owner of the vault who recieves the funds. /// @return token The address of the token to receive funds in (the zero address in case of Ether). /// @return fee The amount of required funds in wei. /// @return collected The amount of already collected funds. function getVault(uint256 vaultId) external view returns ( uint256 eventId, address owner, address token, uint128 fee, uint128 collected ); /// @notice Returns if an account has paid the fee to a vault. /// @param vaultId The id of the queried vault. /// @param account The address of the queried account. function hasPaid(uint256 vaultId, address account) external view returns (bool paid); /// @notice Returns the address that receives Guild's share from the funds. function guildFeeCollector() external view returns (address payable); /// @notice Returns the percentage of Guild's share multiplied by 100. function guildSharex100() external view returns (uint96); /// @notice Returns the address that receives POAP's share from the funds. function poapFeeCollector() external view returns (address payable); /// @notice Returns the percentage of POAP's share multiplied by 100. function poapSharex100() external view returns (uint96); /// @notice Event emitted when a call to {payFee} succeeds. /// @param vaultId The id of the vault that received the payment. /// @param account The address of the account that paid. /// @param amount The amount of fee received in wei. event FeeReceived(uint256 indexed vaultId, address indexed account, uint256 amount); /// @notice Event emitted when the Guild fee collector address is changed. /// @param newFeeCollector The address to change guildFeeCollector to. event GuildFeeCollectorChanged(address newFeeCollector); /// @notice Event emitted when the share of the Guild fee collector changes. /// @param newShare The new value of guildSharex100. event GuildSharex100Changed(uint96 newShare); /// @notice Event emitted when the POAP fee collector address is changed. /// @param newFeeCollector The address to change poapFeeCollector to. event PoapFeeCollectorChanged(address newFeeCollector); /// @notice Event emitted when the share of the POAP fee collector changes. /// @param newShare The new value of poapSharex100. event PoapSharex100Changed(uint96 newShare); /// @notice Event emitted when a new vault is registered. /// @param eventId The id of the POAP drop. /// @param owner The address that receives the fees from the drop. /// @param token The zero address for Ether, otherwise an ERC20 token. /// @param fee The amount of fee to pay in wei. event VaultRegistered( uint256 vaultId, uint256 indexed eventId, address indexed owner, address indexed token, uint256 fee ); /// @notice Event emitted when funds are withdrawn by a vault owner. /// @param vaultId The id of the vault. /// @param guildAmount The amount received by the Guild fee collector in wei. /// @param poapAmount The amount received by the POAP fee collector in wei. /// @param ownerAmount The amount received by the vault's owner in wei. event Withdrawn(uint256 indexed vaultId, uint256 guildAmount, uint256 poapAmount, uint256 ownerAmount); /// @notice Error thrown when an incorrect amount of fee is attempted to be paid. /// @dev requiredAmount might be 0 in cases when an ERC20 payment was expected but Ether was received, too. /// @param vaultId The id of the vault. /// @param paid The amount of funds received. /// @param requiredAmount The amount of fees required by the vault. error IncorrectFee(uint256 vaultId, uint256 paid, uint256 requiredAmount); /// @notice Error thrown when a function is attempted to be called by the wrong address. /// @param sender The address that sent the transaction. /// @param owner The address that is allowed to call the function. error AccessDenied(address sender, address owner); /// @notice Error thrown when an ERC20 transfer failed. /// @param from The sender of the token. /// @param to The recipient of the token. error TransferFailed(address from, address to); /// @notice Error thrown when a vault does not exist. /// @param vaultId The id of the requested vault. error VaultDoesNotExist(uint256 vaultId); }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; /// @title Library for functions related to addresses. library LibAddress { /// @notice Error thrown when sending ether fails. /// @param recipient The address that could not receive the ether. error FailedToSendEther(address recipient); /// @notice Send ether to an address, forwarding all available gas and reverting on errors. /// @param recipient The recipient of the ether. /// @param amount The amount of ether to send in wei. function sendEther(address payable recipient, uint256 amount) internal { // solhint-disable-next-line avoid-low-level-calls (bool success, ) = recipient.call{ value: amount }(""); if (!success) revert FailedToSendEther(recipient); } }
// 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); }
{ "metadata": { "useLiteralContent": true }, "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "abi" ] } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address payable","name":"guildFeeCollector_","type":"address"},{"internalType":"uint96","name":"guildSharex100_","type":"uint96"},{"internalType":"address payable","name":"poapFeeCollector_","type":"address"},{"internalType":"uint96","name":"poapSharex100_","type":"uint96"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"name":"AccessDenied","type":"error"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"}],"name":"FailedToSendEther","type":"error"},{"inputs":[{"internalType":"uint256","name":"vaultId","type":"uint256"},{"internalType":"uint256","name":"paid","type":"uint256"},{"internalType":"uint256","name":"requiredAmount","type":"uint256"}],"name":"IncorrectFee","type":"error"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"}],"name":"TransferFailed","type":"error"},{"inputs":[{"internalType":"uint256","name":"vaultId","type":"uint256"}],"name":"VaultDoesNotExist","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"vaultId","type":"uint256"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FeeReceived","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newFeeCollector","type":"address"}],"name":"GuildFeeCollectorChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint96","name":"newShare","type":"uint96"}],"name":"GuildSharex100Changed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newFeeCollector","type":"address"}],"name":"PoapFeeCollectorChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint96","name":"newShare","type":"uint96"}],"name":"PoapSharex100Changed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"vaultId","type":"uint256"},{"indexed":true,"internalType":"uint256","name":"eventId","type":"uint256"},{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":false,"internalType":"uint256","name":"fee","type":"uint256"}],"name":"VaultRegistered","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"vaultId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"guildAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"poapAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ownerAmount","type":"uint256"}],"name":"Withdrawn","type":"event"},{"inputs":[{"internalType":"uint256","name":"vaultId","type":"uint256"}],"name":"getVault","outputs":[{"internalType":"uint256","name":"eventId","type":"uint256"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint128","name":"fee","type":"uint128"},{"internalType":"uint128","name":"collected","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"guildFeeCollector","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"guildSharex100","outputs":[{"internalType":"uint96","name":"","type":"uint96"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"vaultId","type":"uint256"},{"internalType":"address","name":"account","type":"address"}],"name":"hasPaid","outputs":[{"internalType":"bool","name":"paid","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"vaultId","type":"uint256"}],"name":"payFee","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"poapFeeCollector","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"poapSharex100","outputs":[{"internalType":"uint96","name":"","type":"uint96"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"eventId","type":"uint256"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint128","name":"fee","type":"uint128"}],"name":"registerVault","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"newFeeCollector","type":"address"}],"name":"setGuildFeeCollector","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint96","name":"newShare","type":"uint96"}],"name":"setGuildSharex100","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"newFeeCollector","type":"address"}],"name":"setPoapFeeCollector","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint96","name":"newShare","type":"uint96"}],"name":"setPoapSharex100","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"vaultId","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b50604051620010ee380380620010ee83398101604081905261003191610096565b6001600160601b03928316600160a01b9081026001600160a01b039586161760005592169091029116176001556100ea565b80516001600160a01b038116811461007a57600080fd5b919050565b80516001600160601b038116811461007a57600080fd5b600080600080608085870312156100ac57600080fd5b6100b585610063565b93506100c36020860161007f565b92506100d160408601610063565b91506100df6060860161007f565b905092959194509250565b610ff480620000fa6000396000f3fe6080604052600436106100c25760003560e01c8063504af59a1161007f578063bf51429e11610059578063bf51429e1461026c578063cf4408251461028c578063d289ade2146102ac578063d8bc7fff146102bf57600080fd5b8063504af59a146101b457806359878fee146101ec5780639403b6341461020c57600080fd5b806307ade415146100c757806310a3c725146100e95780631139cbe91461012d578063228a0831146101545780632e1a7d4d1461017457806337d8eca714610194575b600080fd5b3480156100d357600080fd5b506100e76100e2366004610dde565b6102ef565b005b3480156100f557600080fd5b5060005461011090600160a01b90046001600160601b031681565b6040516001600160601b0390911681526020015b60405180910390f35b34801561013957600080fd5b5060015461011090600160a01b90046001600160601b031681565b34801561016057600080fd5b506100e761016f366004610dde565b610389565b34801561018057600080fd5b506100e761018f366004610e02565b610413565b3480156101a057600080fd5b506100e76101af366004610e1b565b610594565b3480156101c057600080fd5b506000546101d4906001600160a01b031681565b6040516001600160a01b039091168152602001610124565b3480156101f857600080fd5b506100e7610207366004610e7a565b6106e2565b34801561021857600080fd5b5061022c610227366004610e02565b610774565b604080519586526001600160a01b03948516602087015293909216928401929092526001600160801b03918216606084015216608082015260a001610124565b34801561027857600080fd5b506001546101d4906001600160a01b031681565b34801561029857600080fd5b506100e76102a7366004610e7a565b61080c565b6100e76102ba366004610e02565b61089e565b3480156102cb57600080fd5b506102df6102da366004610ea3565b610aa7565b6040519015158152602001610124565b6001546001600160a01b031633146103345760015460405163c21bbf9d60e01b815261032b9133916001600160a01b0390911690600401610ed3565b60405180910390fd5b600180546001600160a01b0319166001600160a01b0383169081179091556040519081527f765a078d0c53824942cbd78317aac3cd27d848a557fe67e04d638e056c051b78906020015b60405180910390a150565b6000546001600160a01b031633146103c55760005460405163c21bbf9d60e01b815261032b9133916001600160a01b0390911690600401610ed3565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f41c387ad232996a24e924bd12a8be0da67a8350e31529f702890a9a039cd0c7e9060200161037e565b60025481106104385760405163148eeced60e31b81526004810182905260240161032b565b60006002828154811061044d5761044d610eed565b600091825260208220600591909102016003810180546001600160801b038082169092558354929450600160801b90041691906127109061049e90600160a01b90046001600160601b031684610f19565b6104a89190610f38565b600154909150600090612710906104cf90600160a01b90046001600160601b031685610f19565b6104d99190610f38565b90506000826104e88386610f5a565b6104f29190610f5a565b60028601549091506001600160a01b03168061052a576001860154610525908590859085906001600160a01b0316610b16565b610548565b6001860154610548908590859085906001600160a01b031685610b5b565b604080518581526020810185905290810183905287907ff33ea8296e3b54855453ed4cdaa29d067a97e3cc1d5ebd1fb072699e78aa01e29060600160405180910390a250505050505050565b6002805460018181018355600083905260059091027f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace81018781557f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5acf820180546001600160a01b03808a166001600160a01b031992831681179093557f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ad085018054918a169190921681179091557f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ad190930180546001600160801b0388166fffffffffffffffffffffffffffffffff1990911617905593549093919288917f6131de68fea5d38cd5891e9aca5f6b1f16c7c75b8cbb86639fee51f0caff52a3916106bc91610f5a565b604080519182526001600160801b03881660208301520160405180910390a45050505050565b6001546001600160a01b0316331461071e5760015460405163c21bbf9d60e01b815261032b9133916001600160a01b0390911690600401610ed3565b600180546001600160a01b0316600160a01b6001600160601b038416908102919091179091556040519081527f55033206c80b8260dfd95de6625e9a90efb0b8f0f3a18e25738791cb3e45b7689060200161037e565b600080600080600060028054905086106107a45760405163148eeced60e31b81526004810187905260240161032b565b6000600287815481106107b9576107b9610eed565b60009182526020909120600590910201805460018201546002830154600390930154919a6001600160a01b039182169a50921697506001600160801b038082169750600160801b90910416945092505050565b6000546001600160a01b031633146108485760005460405163c21bbf9d60e01b815261032b9133916001600160a01b0390911690600401610ed3565b600080546001600160a01b0316600160a01b6001600160601b038416908102919091179091556040519081527feccc8a49da3ca61680c27f3ef094e296ff519532f5aa59634e79b2d5dfdfc41c9060200161037e565b60025481106108c35760405163148eeced60e31b81526004810182905260240161032b565b6000600282815481106108d8576108d8610eed565b600091825260209091206005909102016003810180549192506001600160801b0380831692839291601091610916918591600160801b900416610f71565b82546001600160801b039182166101009390930a9283029190920219909116179055503360009081526004830160205260409020805460ff1916600117905560028201546001600160a01b03168061099d578134146109985760405163119a754560e01b8152600481018590523460248201526044810183905260640161032b565b610a6a565b34156109cc5760405163119a754560e01b8152600481018590523460248201526000604482015260640161032b565b60028301546040516323b872dd60e01b8152336004820152306024820152604481018490526001600160a01b03909116906323b872dd906064016020604051808303816000875af1158015610a25573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a499190610f9c565b610a6a57333060405163291e1d5560e11b815260040161032b929190610ed3565b604051828152339085907f26d8baa91676f5f0ff9373b84d9a9736de9187010efe488a475a0dd91adbdb469060200160405180910390a350505050565b6002546000908310610acf5760405163148eeced60e31b81526004810184905260240161032b565b60028381548110610ae257610ae2610eed565b600091825260208083206001600160a01b03861684526004600590930201919091019052604090205460ff16905092915050565b600054610b2c906001600160a01b031685610d42565b600154610b42906001600160a01b031684610d42565b610b556001600160a01b03821683610d42565b50505050565b60005460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101879052829182169063a9059cbb906044016020604051808303816000875af1158015610baf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd39190610f9c565b610c015760005460405163291e1d5560e11b815261032b9130916001600160a01b0390911690600401610ed3565b60015460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018790529082169063a9059cbb906044016020604051808303816000875af1158015610c54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c789190610f9c565b610ca65760015460405163291e1d5560e11b815261032b9130916001600160a01b0390911690600401610ed3565b60405163a9059cbb60e01b81526001600160a01b0384811660048301526024820186905282169063a9059cbb906044016020604051808303816000875af1158015610cf5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d199190610f9c565b610d3a57308360405163291e1d5560e11b815260040161032b929190610ed3565b505050505050565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114610d8f576040519150601f19603f3d011682016040523d82523d6000602084013e610d94565b606091505b5050905080610dc157604051632499e3bb60e11b81526001600160a01b038416600482015260240161032b565b505050565b6001600160a01b0381168114610ddb57600080fd5b50565b600060208284031215610df057600080fd5b8135610dfb81610dc6565b9392505050565b600060208284031215610e1457600080fd5b5035919050565b60008060008060808587031215610e3157600080fd5b843593506020850135610e4381610dc6565b92506040850135610e5381610dc6565b915060608501356001600160801b0381168114610e6f57600080fd5b939692955090935050565b600060208284031215610e8c57600080fd5b81356001600160601b0381168114610dfb57600080fd5b60008060408385031215610eb657600080fd5b823591506020830135610ec881610dc6565b809150509250929050565b6001600160a01b0392831681529116602082015260400190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615610f3357610f33610f03565b500290565b600082610f5557634e487b7160e01b600052601260045260246000fd5b500490565b600082821015610f6c57610f6c610f03565b500390565b60006001600160801b03808316818516808303821115610f9357610f93610f03565b01949350505050565b600060208284031215610fae57600080fd5b81518015158114610dfb57600080fdfea26469706673582212208f1b59393db632299b358791c676773377c49e300ff1c7f079ef3ab15fb2436564736f6c634300080f00330000000000000000000000007cd8c45a83d97d74bbd6b94c307919dd6600ccec00000000000000000000000000000000000000000000000000000000000000000000000000000000000000007cd8c45a83d97d74bbd6b94c307919dd6600ccec0000000000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x6080604052600436106100c25760003560e01c8063504af59a1161007f578063bf51429e11610059578063bf51429e1461026c578063cf4408251461028c578063d289ade2146102ac578063d8bc7fff146102bf57600080fd5b8063504af59a146101b457806359878fee146101ec5780639403b6341461020c57600080fd5b806307ade415146100c757806310a3c725146100e95780631139cbe91461012d578063228a0831146101545780632e1a7d4d1461017457806337d8eca714610194575b600080fd5b3480156100d357600080fd5b506100e76100e2366004610dde565b6102ef565b005b3480156100f557600080fd5b5060005461011090600160a01b90046001600160601b031681565b6040516001600160601b0390911681526020015b60405180910390f35b34801561013957600080fd5b5060015461011090600160a01b90046001600160601b031681565b34801561016057600080fd5b506100e761016f366004610dde565b610389565b34801561018057600080fd5b506100e761018f366004610e02565b610413565b3480156101a057600080fd5b506100e76101af366004610e1b565b610594565b3480156101c057600080fd5b506000546101d4906001600160a01b031681565b6040516001600160a01b039091168152602001610124565b3480156101f857600080fd5b506100e7610207366004610e7a565b6106e2565b34801561021857600080fd5b5061022c610227366004610e02565b610774565b604080519586526001600160a01b03948516602087015293909216928401929092526001600160801b03918216606084015216608082015260a001610124565b34801561027857600080fd5b506001546101d4906001600160a01b031681565b34801561029857600080fd5b506100e76102a7366004610e7a565b61080c565b6100e76102ba366004610e02565b61089e565b3480156102cb57600080fd5b506102df6102da366004610ea3565b610aa7565b6040519015158152602001610124565b6001546001600160a01b031633146103345760015460405163c21bbf9d60e01b815261032b9133916001600160a01b0390911690600401610ed3565b60405180910390fd5b600180546001600160a01b0319166001600160a01b0383169081179091556040519081527f765a078d0c53824942cbd78317aac3cd27d848a557fe67e04d638e056c051b78906020015b60405180910390a150565b6000546001600160a01b031633146103c55760005460405163c21bbf9d60e01b815261032b9133916001600160a01b0390911690600401610ed3565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f41c387ad232996a24e924bd12a8be0da67a8350e31529f702890a9a039cd0c7e9060200161037e565b60025481106104385760405163148eeced60e31b81526004810182905260240161032b565b60006002828154811061044d5761044d610eed565b600091825260208220600591909102016003810180546001600160801b038082169092558354929450600160801b90041691906127109061049e90600160a01b90046001600160601b031684610f19565b6104a89190610f38565b600154909150600090612710906104cf90600160a01b90046001600160601b031685610f19565b6104d99190610f38565b90506000826104e88386610f5a565b6104f29190610f5a565b60028601549091506001600160a01b03168061052a576001860154610525908590859085906001600160a01b0316610b16565b610548565b6001860154610548908590859085906001600160a01b031685610b5b565b604080518581526020810185905290810183905287907ff33ea8296e3b54855453ed4cdaa29d067a97e3cc1d5ebd1fb072699e78aa01e29060600160405180910390a250505050505050565b6002805460018181018355600083905260059091027f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace81018781557f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5acf820180546001600160a01b03808a166001600160a01b031992831681179093557f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ad085018054918a169190921681179091557f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ad190930180546001600160801b0388166fffffffffffffffffffffffffffffffff1990911617905593549093919288917f6131de68fea5d38cd5891e9aca5f6b1f16c7c75b8cbb86639fee51f0caff52a3916106bc91610f5a565b604080519182526001600160801b03881660208301520160405180910390a45050505050565b6001546001600160a01b0316331461071e5760015460405163c21bbf9d60e01b815261032b9133916001600160a01b0390911690600401610ed3565b600180546001600160a01b0316600160a01b6001600160601b038416908102919091179091556040519081527f55033206c80b8260dfd95de6625e9a90efb0b8f0f3a18e25738791cb3e45b7689060200161037e565b600080600080600060028054905086106107a45760405163148eeced60e31b81526004810187905260240161032b565b6000600287815481106107b9576107b9610eed565b60009182526020909120600590910201805460018201546002830154600390930154919a6001600160a01b039182169a50921697506001600160801b038082169750600160801b90910416945092505050565b6000546001600160a01b031633146108485760005460405163c21bbf9d60e01b815261032b9133916001600160a01b0390911690600401610ed3565b600080546001600160a01b0316600160a01b6001600160601b038416908102919091179091556040519081527feccc8a49da3ca61680c27f3ef094e296ff519532f5aa59634e79b2d5dfdfc41c9060200161037e565b60025481106108c35760405163148eeced60e31b81526004810182905260240161032b565b6000600282815481106108d8576108d8610eed565b600091825260209091206005909102016003810180549192506001600160801b0380831692839291601091610916918591600160801b900416610f71565b82546001600160801b039182166101009390930a9283029190920219909116179055503360009081526004830160205260409020805460ff1916600117905560028201546001600160a01b03168061099d578134146109985760405163119a754560e01b8152600481018590523460248201526044810183905260640161032b565b610a6a565b34156109cc5760405163119a754560e01b8152600481018590523460248201526000604482015260640161032b565b60028301546040516323b872dd60e01b8152336004820152306024820152604481018490526001600160a01b03909116906323b872dd906064016020604051808303816000875af1158015610a25573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a499190610f9c565b610a6a57333060405163291e1d5560e11b815260040161032b929190610ed3565b604051828152339085907f26d8baa91676f5f0ff9373b84d9a9736de9187010efe488a475a0dd91adbdb469060200160405180910390a350505050565b6002546000908310610acf5760405163148eeced60e31b81526004810184905260240161032b565b60028381548110610ae257610ae2610eed565b600091825260208083206001600160a01b03861684526004600590930201919091019052604090205460ff16905092915050565b600054610b2c906001600160a01b031685610d42565b600154610b42906001600160a01b031684610d42565b610b556001600160a01b03821683610d42565b50505050565b60005460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101879052829182169063a9059cbb906044016020604051808303816000875af1158015610baf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd39190610f9c565b610c015760005460405163291e1d5560e11b815261032b9130916001600160a01b0390911690600401610ed3565b60015460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018790529082169063a9059cbb906044016020604051808303816000875af1158015610c54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c789190610f9c565b610ca65760015460405163291e1d5560e11b815261032b9130916001600160a01b0390911690600401610ed3565b60405163a9059cbb60e01b81526001600160a01b0384811660048301526024820186905282169063a9059cbb906044016020604051808303816000875af1158015610cf5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d199190610f9c565b610d3a57308360405163291e1d5560e11b815260040161032b929190610ed3565b505050505050565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114610d8f576040519150601f19603f3d011682016040523d82523d6000602084013e610d94565b606091505b5050905080610dc157604051632499e3bb60e11b81526001600160a01b038416600482015260240161032b565b505050565b6001600160a01b0381168114610ddb57600080fd5b50565b600060208284031215610df057600080fd5b8135610dfb81610dc6565b9392505050565b600060208284031215610e1457600080fd5b5035919050565b60008060008060808587031215610e3157600080fd5b843593506020850135610e4381610dc6565b92506040850135610e5381610dc6565b915060608501356001600160801b0381168114610e6f57600080fd5b939692955090935050565b600060208284031215610e8c57600080fd5b81356001600160601b0381168114610dfb57600080fd5b60008060408385031215610eb657600080fd5b823591506020830135610ec881610dc6565b809150509250929050565b6001600160a01b0392831681529116602082015260400190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615610f3357610f33610f03565b500290565b600082610f5557634e487b7160e01b600052601260045260246000fd5b500490565b600082821015610f6c57610f6c610f03565b500390565b60006001600160801b03808316818516808303821115610f9357610f93610f03565b01949350505050565b600060208284031215610fae57600080fd5b81518015158114610dfb57600080fdfea26469706673582212208f1b59393db632299b358791c676773377c49e300ff1c7f079ef3ab15fb2436564736f6c634300080f0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000007cd8c45a83d97d74bbd6b94c307919dd6600ccec00000000000000000000000000000000000000000000000000000000000000000000000000000000000000007cd8c45a83d97d74bbd6b94c307919dd6600ccec0000000000000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : guildFeeCollector_ (address): 0x7CD8C45A83d97d74bbd6b94c307919DD6600Ccec
Arg [1] : guildSharex100_ (uint96): 0
Arg [2] : poapFeeCollector_ (address): 0x7CD8C45A83d97d74bbd6b94c307919DD6600Ccec
Arg [3] : poapSharex100_ (uint96): 0
-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 0000000000000000000000007cd8c45a83d97d74bbd6b94c307919dd6600ccec
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [2] : 0000000000000000000000007cd8c45a83d97d74bbd6b94c307919dd6600ccec
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
246:5931:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4099:272;;;;;;;;;;-1:-1:-1;4099:272:0;;;;;:::i;:::-;;:::i;:::-;;380:28;;;;;;;;;;-1:-1:-1;380:28:0;;;;-1:-1:-1;;;380:28:0;;-1:-1:-1;;;;;380:28:0;;;;;;-1:-1:-1;;;;;588:39:4;;;570:58;;558:2;543:18;380:28:0;;;;;;;;460:27;;;;;;;;;;-1:-1:-1;460:27:0;;;;-1:-1:-1;;;460:27:0;;-1:-1:-1;;;;;460:27:0;;;3572:277;;;;;;;;;;-1:-1:-1;3572:277:0;;;;;:::i;:::-;;:::i;2584:982::-;;;;;;;;;;-1:-1:-1;2584:982:0;;;;;:::i;:::-;;:::i;1275:376::-;;;;;;;;;;-1:-1:-1;1275:376:0;;;;;:::i;:::-;;:::i;334:40::-;;;;;;;;;;-1:-1:-1;334:40:0;;;;-1:-1:-1;;;;;334:40:0;;;;;;-1:-1:-1;;;;;1679:32:4;;;1661:51;;1649:2;1634:18;334:40:0;1499:219:4;4377:233:0;;;;;;;;;;-1:-1:-1;4377:233:0;;;;;:::i;:::-;;:::i;4616:448::-;;;;;;;;;;-1:-1:-1;4616:448:0;;;;;:::i;:::-;;:::i;:::-;;;;2279:25:4;;;-1:-1:-1;;;;;2378:15:4;;;2373:2;2358:18;;2351:43;2430:15;;;;2410:18;;;2403:43;;;;-1:-1:-1;;;;;2535:15:4;;;2530:2;2515:18;;2508:43;2588:15;2582:3;2567:19;;2560:44;2266:3;2251:19;4616:448:0;2020:590:4;415:39:0;;;;;;;;;;-1:-1:-1;415:39:0;;;;-1:-1:-1;;;;;415:39:0;;;3855:238;;;;;;;;;;-1:-1:-1;3855:238:0;;;;;:::i;:::-;;:::i;1657:921::-;;;;;;:::i;:::-;;:::i;5070:211::-;;;;;;;;;;-1:-1:-1;5070:211:0;;;;;:::i;:::-;;:::i;:::-;;;3108:14:4;;3101:22;3083:41;;3071:2;3056:18;5070:211:0;2943:187:4;4099:272:0;4198:16;;-1:-1:-1;;;;;4198:16:0;4184:10;:30;4180:85;;4248:16;;4223:42;;-1:-1:-1;;;4223:42:0;;;;4236:10;;-1:-1:-1;;;;;4248:16:0;;;;4223:42;;;:::i;:::-;;;;;;;;4180:85;4275:16;:34;;-1:-1:-1;;;;;;4275:34:0;-1:-1:-1;;;;;4275:34:0;;;;;;;;4324:40;;1661:51:4;;;4324:40:0;;1649:2:4;1634:18;4324:40:0;;;;;;;;4099:272;:::o;3572:277::-;3672:17;;-1:-1:-1;;;;;3672:17:0;3658:10;:31;3654:87;;3723:17;;3698:43;;-1:-1:-1;;;3698:43:0;;;;3711:10;;-1:-1:-1;;;;;3723:17:0;;;;3698:43;;;:::i;3654:87::-;3751:17;:35;;-1:-1:-1;;;;;;3751:35:0;-1:-1:-1;;;;;3751:35:0;;;;;;;;3801:41;;1661:51:4;;;3801:41:0;;1649:2:4;1634:18;3801:41:0;1499:219:4;2584:982:0;2653:6;:13;2642:24;;2638:63;;2675:26;;-1:-1:-1;;;2675:26:0;;;;;3814:25:4;;;3787:18;;2675:26:0;3668:177:4;2638:63:0;2712:19;2734:6;2741:7;2734:15;;;;;;;;:::i;:::-;;;;;;;;;;;;;;2779;;;;;-1:-1:-1;;;;;2804:19:0;;;;;;2991:14;;2734:15;;-1:-1:-1;;;;2779:15:0;;;;2734;3009:5;;2979:26;;-1:-1:-1;;;2991:14:0;;-1:-1:-1;;;;;2991:14:0;2779:15;2979:26;:::i;:::-;2978:36;;;;:::i;:::-;3058:13;;2956:58;;-1:-1:-1;3024:18:0;;3075:5;;3046:25;;-1:-1:-1;;;3058:13:0;;-1:-1:-1;;;;;3058:13:0;3046:9;:25;:::i;:::-;3045:35;;;;:::i;:::-;3024:56;-1:-1:-1;3090:19:0;3137:11;3112:22;3024:56;3112:9;:22;:::i;:::-;:36;;;;:::i;:::-;3275:11;;;;3090:58;;-1:-1:-1;;;;;;3275:11:0;;3296:191;;3381:11;;;;3328:65;;3343:11;;3356:10;;3368:11;;-1:-1:-1;;;;;3381:11:0;3328:14;:65::i;:::-;3296:191;;;3461:11;;;;3408:79;;3423:11;;3436:10;;3448:11;;-1:-1:-1;;;;;3461:11:0;3474:12;3408:14;:79::i;:::-;3503:56;;;4841:25:4;;;4897:2;4882:18;;4875:34;;;4925:18;;;4918:34;;;3513:7:0;;3503:56;;4829:2:4;4814:18;3503:56:0;;;;;;;2628:938;;;;;;2584:982;:::o;1275:376::-;1437:6;:13;;;;;;;;1415:19;1437:13;;;;;;;;;;1460:23;;;1493:11;;;:19;;-1:-1:-1;;;;;1493:19:0;;;-1:-1:-1;;;;;;1493:19:0;;;;;;;;1522:11;;;:19;;;;;;;;;;;;;;1551:9;;;;:15;;-1:-1:-1;;;;;1551:15:0;;-1:-1:-1;;1551:15:0;;;;;;1598:13;;1437;;1522:19;;1476:7;;1582:62;;1598:17;;;:::i;:::-;1582:62;;;5137:25:4;;;-1:-1:-1;;;;;5198:47:4;;5193:2;5178:18;;5171:75;5110:18;1582:62:0;;;;;;;1405:246;1275:376;;;;:::o;4377:233::-;4457:16;;-1:-1:-1;;;;;4457:16:0;4443:10;:30;4439:85;;4507:16;;4482:42;;-1:-1:-1;;;4482:42:0;;;;4495:10;;-1:-1:-1;;;;;4507:16:0;;;;4482:42;;;:::i;4439:85::-;4534:13;:24;;-1:-1:-1;;;;;4534:24:0;-1:-1:-1;;;;;;;;4534:24:0;;;;;;;;;;;;4573:30;;570:58:4;;;4573:30:0;;558:2:4;543:18;4573:30:0;426:208:4;4616:448:0;4711:15;4740:13;4767;4794:11;4819:17;4876:6;:13;;;;4865:7;:24;4861:63;;4898:26;;-1:-1:-1;;;4898:26:0;;;;;3814:25:4;;;3787:18;;4898:26:0;3668:177:4;4861:63:0;4934:19;4956:6;4963:7;4956:15;;;;;;;;:::i;:::-;;;;;;;;;;;;;;4989:13;;5004:11;;;;5017;;;;5030:9;;;;;4989:13;;-1:-1:-1;;;;;5004:11:0;;;;-1:-1:-1;5017:11:0;;;-1:-1:-1;;;;;;5030:9:0;;;;-1:-1:-1;;;;5041:15:0;;;;;-1:-1:-1;4616:448:0;-1:-1:-1;;;4616:448:0:o;3855:238::-;3936:17;;-1:-1:-1;;;;;3936:17:0;3922:10;:31;3918:87;;3987:17;;3962:43;;-1:-1:-1;;;3962:43:0;;;;3975:10;;-1:-1:-1;;;;;3987:17:0;;;;3962:43;;;:::i;3918:87::-;4015:14;:25;;-1:-1:-1;;;;;4015:25:0;-1:-1:-1;;;;;;;;4015:25:0;;;;;;;;;;;;4055:31;;570:58:4;;;4055:31:0;;558:2:4;543:18;4055:31:0;426:208:4;1657:921:0;1732:6;:13;1721:24;;1717:63;;1754:26;;-1:-1:-1;;;1754:26:0;;;;;3814:25:4;;;3787:18;;1754:26:0;3668:177:4;1717:63:0;1791:19;1813:6;1820:7;1813:15;;;;;;;;:::i;:::-;;;;;;;;;;;;;;1863:9;;;;;1813:15;;-1:-1:-1;;;;;;1863:9:0;;;;;;;1882:15;;:42;;1863:9;;-1:-1:-1;;;1882:42:0;;;;:::i;:::-;;;-1:-1:-1;;;;;1882:42:0;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1945:10:0;-1:-1:-1;1934:22:0;;;:10;;;:22;;;;;:29;;-1:-1:-1;;1934:29:0;-1:-1:-1;1934:29:0;;;2089:11;;;;-1:-1:-1;;;;;2089:11:0;;2110:398;;2173:14;2160:9;:27;2156:88;;2196:48;;-1:-1:-1;;;2196:48:0;;;;;4841:25:4;;;2218:9:0;4882:18:4;;;4875:34;4925:18;;;4918:34;;;4814:18;;2196:48:0;4639:319:4;2156:88:0;2110:398;;;2279:9;:14;2275:62;;2302:35;;-1:-1:-1;;;2302:35:0;;;;;4841:25:4;;;2324:9:0;4882:18:4;;;4875:34;2335:1:0;4925:18:4;;;4918:34;4814:18;;2302:35:0;4639:319:4;2275:62:0;2363:11;;;;2356:75;;-1:-1:-1;;;2356:75:0;;2389:10;2356:75;;;6087:34:4;2409:4:0;6137:18:4;;;6130:43;6189:18;;;6182:34;;;-1:-1:-1;;;;;2363:11:0;;;;2356:32;;6022:18:4;;2356:75:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2351:146;;2471:10;2491:4;2456:41;;-1:-1:-1;;;2456:41:0;;;;;;;;;:::i;2351:146::-;2523:48;;3814:25:4;;;2544:10:0;;2535:7;;2523:48;;3802:2:4;3787:18;2523:48:0;;;;;;;1707:871;;;1657:921;:::o;5070:211::-;5180:6;:13;5144:9;;5169:24;;5165:63;;5202:26;;-1:-1:-1;;;5202:26:0;;;;;3814:25:4;;;3787:18;;5202:26:0;3668:177:4;5165:63:0;5245:6;5252:7;5245:15;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;5245:29:0;;;;:20;:15;;;;;:20;;;;:29;;;;;;;;;-1:-1:-1;5070:211:0;;;;:::o;5287:310::-;5450:17;;:40;;-1:-1:-1;;;;;5450:17:0;5478:11;5450:27;:40::i;:::-;5500:16;;:38;;-1:-1:-1;;;;;5500:16:0;5527:10;5500:26;:38::i;:::-;5548:42;-1:-1:-1;;;;;5548:29:0;;5578:11;5548:29;:42::i;:::-;5287:310;;;;:::o;5603:572::-;5796:12;5861:17;5846:46;;-1:-1:-1;;;5846:46:0;;-1:-1:-1;;;;;5861:17:0;;;5846:46;;;7000:51:4;7067:18;;;7060:34;;;5818:12:0;;5846:14;;;;;6973:18:4;;5846:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5841:108;;5931:17;;5901:48;;-1:-1:-1;;;5901:48:0;;;;5924:4;;-1:-1:-1;;;;;5931:17:0;;;;5901:48;;;:::i;5841:108::-;5979:16;;5964:44;;-1:-1:-1;;;5964:44:0;;-1:-1:-1;;;;;5979:16:0;;;5964:44;;;7000:51:4;7067:18;;;7060:34;;;5964:14:0;;;;;;6973:18:4;;5964:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5959:105;;6047:16;;6017:47;;-1:-1:-1;;;6017:47:0;;;;6040:4;;-1:-1:-1;;;;;6047:16:0;;;;6017:47;;;:::i;5959:105::-;6079:39;;-1:-1:-1;;;6079:39:0;;-1:-1:-1;;;;;7018:32:4;;;6079:39:0;;;7000:51:4;7067:18;;;7060:34;;;6079:14:0;;;;;6973:18:4;;6079:39:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6074:94;;6150:4;6157:10;6127:41;;-1:-1:-1;;;6127:41:0;;;;;;;;;:::i;6074:94::-;5786:389;5603:572;;;;;:::o;519:260:2:-;660:12;678:9;-1:-1:-1;;;;;678:14:2;701:6;678:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;659:54;;;728:7;723:49;;744:28;;-1:-1:-1;;;744:28:2;;-1:-1:-1;;;;;1679:32:4;;744:28:2;;;1661:51:4;1634:18;;744:28:2;1499:219:4;723:49:2;590:189;519:260;;:::o;14:139:4:-;-1:-1:-1;;;;;97:31:4;;87:42;;77:70;;143:1;140;133:12;77:70;14:139;:::o;158:263::-;225:6;278:2;266:9;257:7;253:23;249:32;246:52;;;294:1;291;284:12;246:52;333:9;320:23;352:39;385:5;352:39;:::i;:::-;410:5;158:263;-1:-1:-1;;;158:263:4:o;639:180::-;698:6;751:2;739:9;730:7;726:23;722:32;719:52;;;767:1;764;757:12;719:52;-1:-1:-1;790:23:4;;639:180;-1:-1:-1;639:180:4:o;824:670::-;910:6;918;926;934;987:3;975:9;966:7;962:23;958:33;955:53;;;1004:1;1001;994:12;955:53;1040:9;1027:23;1017:33;;1100:2;1089:9;1085:18;1072:32;1113:39;1146:5;1113:39;:::i;:::-;1171:5;-1:-1:-1;1228:2:4;1213:18;;1200:32;1241:41;1200:32;1241:41;:::i;:::-;1301:7;-1:-1:-1;1360:2:4;1345:18;;1332:32;-1:-1:-1;;;;;1395:48:4;;1383:61;;1373:89;;1458:1;1455;1448:12;1373:89;824:670;;;;-1:-1:-1;824:670:4;;-1:-1:-1;;824:670:4:o;1723:292::-;1781:6;1834:2;1822:9;1813:7;1809:23;1805:32;1802:52;;;1850:1;1847;1840:12;1802:52;1889:9;1876:23;-1:-1:-1;;;;;1932:5:4;1928:38;1921:5;1918:49;1908:77;;1981:1;1978;1971:12;2615:323;2683:6;2691;2744:2;2732:9;2723:7;2719:23;2715:32;2712:52;;;2760:1;2757;2750:12;2712:52;2796:9;2783:23;2773:33;;2856:2;2845:9;2841:18;2828:32;2869:39;2902:5;2869:39;:::i;:::-;2927:5;2917:15;;;2615:323;;;;;:::o;3135:312::-;-1:-1:-1;;;;;3373:15:4;;;3355:34;;3425:15;;3420:2;3405:18;;3398:43;3305:2;3290:18;;3135:312::o;3850:127::-;3911:10;3906:3;3902:20;3899:1;3892:31;3942:4;3939:1;3932:15;3966:4;3963:1;3956:15;3982:127;4043:10;4038:3;4034:20;4031:1;4024:31;4074:4;4071:1;4064:15;4098:4;4095:1;4088:15;4114:168;4154:7;4220:1;4216;4212:6;4208:14;4205:1;4202:21;4197:1;4190:9;4183:17;4179:45;4176:71;;;4227:18;;:::i;:::-;-1:-1:-1;4267:9:4;;4114:168::o;4287:217::-;4327:1;4353;4343:132;;4397:10;4392:3;4388:20;4385:1;4378:31;4432:4;4429:1;4422:15;4460:4;4457:1;4450:15;4343:132;-1:-1:-1;4489:9:4;;4287:217::o;4509:125::-;4549:4;4577:1;4574;4571:8;4568:34;;;4582:18;;:::i;:::-;-1:-1:-1;4619:9:4;;4509:125::o;5257:253::-;5297:3;-1:-1:-1;;;;;5386:2:4;5383:1;5379:10;5416:2;5413:1;5409:10;5447:3;5443:2;5439:12;5434:3;5431:21;5428:47;;;5455:18;;:::i;:::-;5491:13;;5257:253;-1:-1:-1;;;;5257:253:4:o;6227:277::-;6294:6;6347:2;6335:9;6326:7;6322:23;6318:32;6315:52;;;6363:1;6360;6353:12;6315:52;6395:9;6389:16;6448:5;6441:13;6434:21;6427:5;6424:32;6414:60;;6470:1;6467;6460:12
Swarm Source
ipfs://8f1b59393db632299b358791c676773377c49e300ff1c7f079ef3ab15fb24365
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
POL | 39.64% | $1 | 2,945.45 | $2,948.4 | |
POL | 38.29% | $0.499743 | 5,699.3983 | $2,848.24 | |
POL | 2.30% | $1 | 171 | $171.17 | |
POL | 0.21% | $3,386.97 | 0.00453 | $15.34 | |
ETH | Ether (ETH) | 17.32% | $3,390.34 | 0.38 | $1,288.24 |
ETH | 1.05% | $1 | 78 | $78 | |
ETH | 0.34% | $0.99952 | 25 | $24.99 | |
ARB | 0.36% | $3,390.43 | 0.008 | $27.12 | |
BSC | 0.27% | $0.999924 | 20 | $20 | |
BSC | 0.02% | $694.38 | 0.0021 | $1.46 | |
BSC | 0.01% | $0.999907 | 1 | $0.9999 | |
OP | 0.20% | $3,389.44 | 0.004329 | $14.67 | |
AVAX | <0.01% | $38.49 | 0.002 | $0.076988 | |
GNO | <0.01% | $0.999894 | 0.003 | $0.003 |
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.