Overview
S Balance
0 S
S Value
$0.00More Info
Private Name Tags
ContractCreator
Loading...
Loading
Contract Name:
DevFund
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at SonicScan.org on 2025-01-22 */ // SPDX-License-Identifier: MIT // File: @openzeppelin/contracts/utils/Context.sol pragma solidity >=0.6.0 <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 GSN 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 payable) { return msg.sender; } function _msgData() internal view virtual returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } // File: @openzeppelin/contracts/access/Ownable.sol pragma solidity >=0.6.0 <0.8.0; /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor () internal { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } // File: contracts/interfaces/IDistributor.sol pragma solidity ^0.6.0; interface IDistributor { function distribute() external; } // File: contracts/interfaces/IERC20.sol pragma solidity 0.6.12; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @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 `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address recipient, 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 `sender` to `recipient` 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 sender, address recipient, uint256 amount) external returns (bool); /** * @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); } // File: contracts/DevFund.sol pragma solidity 0.6.12; contract DevFund is Ownable, IDistributor { struct Allocation { address account; uint256 points; } Allocation[] public allocations; uint256 public totalPoints; IERC20[] public tokens; constructor(address[] memory accounts, uint256[] memory points) public { for (uint256 a = 0; a < accounts.length; a++) { allocations.push(Allocation({ account : accounts[a], points : points[a] })); totalPoints += points[a]; } } function addToken(IERC20 token) external onlyOwner { tokens.push(token); } function distribute() override external { for (uint256 t; t < tokens.length; t++) { IERC20 token = tokens[t]; uint256 balance = token.balanceOf(address(this)); if (balance > 0) { for (uint256 a; a < allocations.length; a++) { token.transfer(allocations[a].account, balance * allocations[a].points / totalPoints); } } } } function addAllocation(address account, uint256 points) external onlyOwner { allocations.push(Allocation({ account: account, points: points })); totalPoints += points; } function removeAllocation(address account) external onlyOwner { for (uint256 a = 0; a < allocations.length; a++) { if (allocations[a].account == account) { totalPoints -= allocations[a].points; allocations[a] = allocations[allocations.length - 1]; allocations.pop(); break; } } } function setAllocationPoints(address account, uint256 points) external onlyOwner { for (uint256 a = 0; a < allocations.length; a++) { if (allocations[a].account == account) { totalPoints = totalPoints - allocations[a].points + points; allocations[a].points = points; } } } function call(address payable _to, uint256 _value, bytes calldata _data) external payable onlyOwner returns (bytes memory) { (bool success, bytes memory result) = _to.call{value: _value}(_data); require(success, "external call failed"); return result; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"uint256[]","name":"points","type":"uint256[]"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"points","type":"uint256"}],"name":"addAllocation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"token","type":"address"}],"name":"addToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"allocations","outputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"points","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address payable","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"name":"call","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"distribute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"removeAllocation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"points","type":"uint256"}],"name":"setAllocationPoints","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"tokens","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalPoints","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b5060405162000fc938038062000fc9833981810160405260408110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b9083019060208201858111156200006e57600080fd5b82518660208202830111640100000000821117156200008c57600080fd5b82525081516020918201928201910280838360005b83811015620000bb578181015183820152602001620000a1565b5050505090500160405260200180516040519392919084640100000000821115620000e557600080fd5b908301906020820185811115620000fb57600080fd5b82518660208202830111640100000000821117156200011957600080fd5b82525081516020918201928201910280838360005b83811015620001485781810151838201526020016200012e565b505050509050016040525050506000620001676200027c60201b60201c565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060005b8251811015620002735760016040518060400160405280858481518110620001d857fe5b60200260200101516001600160a01b03168152602001848481518110620001fb57fe5b602090810291909101810151909152825460018082018555600094855293829020835160029092020180546001600160a01b0319166001600160a01b0390921691909117815591015191015581518290829081106200025657fe5b6020908102919091010151600280549091019055600101620001b4565b50505062000280565b3390565b610d3980620002906000396000f3fe6080604052600436106100a75760003560e01c80638da5cb5b116100645780638da5cb5b146102b0578063c58156e0146102c5578063ceb0cc64146102f8578063d48bfca714610331578063e4fc6b6d14610364578063f2fde38b14610379576100a7565b80630a2642bf146100ac5780634cc9e275146100f95780634f64b2be14610134578063567142be1461017a5780636dbf2fa0146101a1578063715018a61461029b575b600080fd5b3480156100b857600080fd5b506100d6600480360360208110156100cf57600080fd5b50356103ac565b604080516001600160a01b03909316835260208301919091528051918290030190f35b34801561010557600080fd5b506101326004803603604081101561011c57600080fd5b506001600160a01b0381351690602001356103e1565b005b34801561014057600080fd5b5061015e6004803603602081101561015757600080fd5b50356104e2565b604080516001600160a01b039092168252519081900360200190f35b34801561018657600080fd5b5061018f610509565b60408051918252519081900360200190f35b610226600480360360608110156101b757600080fd5b6001600160a01b03823516916020810135918101906060810160408201356401000000008111156101e757600080fd5b8201836020820111156101f957600080fd5b8035906020019184600183028401116401000000008311171561021b57600080fd5b50909250905061050f565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610260578181015183820152602001610248565b50505050905090810190601f16801561028d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102a757600080fd5b50610132610632565b3480156102bc57600080fd5b5061015e6106de565b3480156102d157600080fd5b50610132600480360360208110156102e857600080fd5b50356001600160a01b03166106ed565b34801561030457600080fd5b506101326004803603604081101561031b57600080fd5b506001600160a01b038135169060200135610863565b34801561033d57600080fd5b506101326004803603602081101561035457600080fd5b50356001600160a01b0316610965565b34801561037057600080fd5b50610132610a19565b34801561038557600080fd5b506101326004803603602081101561039c57600080fd5b50356001600160a01b0316610bb7565b600181815481106103b957fe5b6000918252602090912060029091020180546001909101546001600160a01b03909116915082565b6103e9610cb9565b6001600160a01b03166103fa6106de565b6001600160a01b031614610443576040805162461bcd60e51b81526020600482018190526024820152600080516020610ce4833981519152604482015290519081900360640190fd5b604080518082019091526001600160a01b0392831681526020810182815260018054808201825560009190915291517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6600293840290810180546001600160a01b0319169290961691909117909455517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7909301929092558154019055565b600381815481106104ef57fe5b6000918252602090912001546001600160a01b0316905081565b60025481565b6060610519610cb9565b6001600160a01b031661052a6106de565b6001600160a01b031614610573576040805162461bcd60e51b81526020600482018190526024820152600080516020610ce4833981519152604482015290519081900360640190fd5b60006060866001600160a01b0316868686604051808383808284376040519201945060009350909150508083038185875af1925050503d80600081146105d5576040519150601f19603f3d011682016040523d82523d6000602084013e6105da565b606091505b509150915081610628576040805162461bcd60e51b8152602060048201526014602482015273195e1d195c9b985b0818d85b1b0819985a5b195960621b604482015290519081900360640190fd5b9695505050505050565b61063a610cb9565b6001600160a01b031661064b6106de565b6001600160a01b031614610694576040805162461bcd60e51b81526020600482018190526024820152600080516020610ce4833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b6106f5610cb9565b6001600160a01b03166107066106de565b6001600160a01b03161461074f576040805162461bcd60e51b81526020600482018190526024820152600080516020610ce4833981519152604482015290519081900360640190fd5b60005b60015481101561085f57816001600160a01b03166001828154811061077357fe5b60009182526020909120600290910201546001600160a01b0316141561085757600181815481106107a057fe5b60009182526020909120600291820201600190810154825403909155805460001981019081106107cc57fe5b9060005260206000209060020201600182815481106107e757fe5b60009182526020909120825460029092020180546001600160a01b0319166001600160a01b039092169190911781556001918201549082015580548061082957fe5b60008281526020812060026000199093019283020180546001600160a01b031916815560010155905561085f565b600101610752565b5050565b61086b610cb9565b6001600160a01b031661087c6106de565b6001600160a01b0316146108c5576040805162461bcd60e51b81526020600482018190526024820152600080516020610ce4833981519152604482015290519081900360640190fd5b60005b60015481101561096057826001600160a01b0316600182815481106108e957fe5b60009182526020909120600290910201546001600160a01b0316141561095857816001828154811061091757fe5b9060005260206000209060020201600101546002540301600281905550816001828154811061094257fe5b9060005260206000209060020201600101819055505b6001016108c8565b505050565b61096d610cb9565b6001600160a01b031661097e6106de565b6001600160a01b0316146109c7576040805162461bcd60e51b81526020600482018190526024820152600080516020610ce4833981519152604482015290519081900360640190fd5b600380546001810182556000919091527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b0319166001600160a01b0392909216919091179055565b60005b600354811015610bb457600060038281548110610a3557fe5b6000918252602080832090910154604080516370a0823160e01b815230600482015290516001600160a01b03909216945084926370a0823192602480840193829003018186803b158015610a8857600080fd5b505afa158015610a9c573d6000803e3d6000fd5b505050506040513d6020811015610ab257600080fd5b505190508015610baa5760005b600154811015610ba857826001600160a01b031663a9059cbb60018381548110610ae557fe5b60009182526020909120600291820201549054600180546001600160a01b039093169286908110610b1257fe5b906000526020600020906002020160010154860281610b2d57fe5b046040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015610b7457600080fd5b505af1158015610b88573d6000803e3d6000fd5b505050506040513d6020811015610b9e57600080fd5b5050600101610abf565b505b5050600101610a1c565b50565b610bbf610cb9565b6001600160a01b0316610bd06106de565b6001600160a01b031614610c19576040805162461bcd60e51b81526020600482018190526024820152600080516020610ce4833981519152604482015290519081900360640190fd5b6001600160a01b038116610c5e5760405162461bcd60e51b8152600401808060200182810382526026815260200180610cbe6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b339056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a26469706673582212204db0342f12e7ab138e85af95db1ece0c8152814fa9d9d7232df79d058532276a64736f6c634300060c0033000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000003000000000000000000000000d622b4302b726c82e95c286ca0096411e6de96c000000000000000000000000069a77e537e4e9ebb5c6a54058fdda0b0fef7d17b00000000000000000000000002102930c010ee3e11d6d9e6e76055fea5e560af000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000003e800000000000000000000000000000000000000000000000000000000000003e800000000000000000000000000000000000000000000000000000000000003e8
Deployed Bytecode
0x6080604052600436106100a75760003560e01c80638da5cb5b116100645780638da5cb5b146102b0578063c58156e0146102c5578063ceb0cc64146102f8578063d48bfca714610331578063e4fc6b6d14610364578063f2fde38b14610379576100a7565b80630a2642bf146100ac5780634cc9e275146100f95780634f64b2be14610134578063567142be1461017a5780636dbf2fa0146101a1578063715018a61461029b575b600080fd5b3480156100b857600080fd5b506100d6600480360360208110156100cf57600080fd5b50356103ac565b604080516001600160a01b03909316835260208301919091528051918290030190f35b34801561010557600080fd5b506101326004803603604081101561011c57600080fd5b506001600160a01b0381351690602001356103e1565b005b34801561014057600080fd5b5061015e6004803603602081101561015757600080fd5b50356104e2565b604080516001600160a01b039092168252519081900360200190f35b34801561018657600080fd5b5061018f610509565b60408051918252519081900360200190f35b610226600480360360608110156101b757600080fd5b6001600160a01b03823516916020810135918101906060810160408201356401000000008111156101e757600080fd5b8201836020820111156101f957600080fd5b8035906020019184600183028401116401000000008311171561021b57600080fd5b50909250905061050f565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610260578181015183820152602001610248565b50505050905090810190601f16801561028d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102a757600080fd5b50610132610632565b3480156102bc57600080fd5b5061015e6106de565b3480156102d157600080fd5b50610132600480360360208110156102e857600080fd5b50356001600160a01b03166106ed565b34801561030457600080fd5b506101326004803603604081101561031b57600080fd5b506001600160a01b038135169060200135610863565b34801561033d57600080fd5b506101326004803603602081101561035457600080fd5b50356001600160a01b0316610965565b34801561037057600080fd5b50610132610a19565b34801561038557600080fd5b506101326004803603602081101561039c57600080fd5b50356001600160a01b0316610bb7565b600181815481106103b957fe5b6000918252602090912060029091020180546001909101546001600160a01b03909116915082565b6103e9610cb9565b6001600160a01b03166103fa6106de565b6001600160a01b031614610443576040805162461bcd60e51b81526020600482018190526024820152600080516020610ce4833981519152604482015290519081900360640190fd5b604080518082019091526001600160a01b0392831681526020810182815260018054808201825560009190915291517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6600293840290810180546001600160a01b0319169290961691909117909455517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7909301929092558154019055565b600381815481106104ef57fe5b6000918252602090912001546001600160a01b0316905081565b60025481565b6060610519610cb9565b6001600160a01b031661052a6106de565b6001600160a01b031614610573576040805162461bcd60e51b81526020600482018190526024820152600080516020610ce4833981519152604482015290519081900360640190fd5b60006060866001600160a01b0316868686604051808383808284376040519201945060009350909150508083038185875af1925050503d80600081146105d5576040519150601f19603f3d011682016040523d82523d6000602084013e6105da565b606091505b509150915081610628576040805162461bcd60e51b8152602060048201526014602482015273195e1d195c9b985b0818d85b1b0819985a5b195960621b604482015290519081900360640190fd5b9695505050505050565b61063a610cb9565b6001600160a01b031661064b6106de565b6001600160a01b031614610694576040805162461bcd60e51b81526020600482018190526024820152600080516020610ce4833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b6106f5610cb9565b6001600160a01b03166107066106de565b6001600160a01b03161461074f576040805162461bcd60e51b81526020600482018190526024820152600080516020610ce4833981519152604482015290519081900360640190fd5b60005b60015481101561085f57816001600160a01b03166001828154811061077357fe5b60009182526020909120600290910201546001600160a01b0316141561085757600181815481106107a057fe5b60009182526020909120600291820201600190810154825403909155805460001981019081106107cc57fe5b9060005260206000209060020201600182815481106107e757fe5b60009182526020909120825460029092020180546001600160a01b0319166001600160a01b039092169190911781556001918201549082015580548061082957fe5b60008281526020812060026000199093019283020180546001600160a01b031916815560010155905561085f565b600101610752565b5050565b61086b610cb9565b6001600160a01b031661087c6106de565b6001600160a01b0316146108c5576040805162461bcd60e51b81526020600482018190526024820152600080516020610ce4833981519152604482015290519081900360640190fd5b60005b60015481101561096057826001600160a01b0316600182815481106108e957fe5b60009182526020909120600290910201546001600160a01b0316141561095857816001828154811061091757fe5b9060005260206000209060020201600101546002540301600281905550816001828154811061094257fe5b9060005260206000209060020201600101819055505b6001016108c8565b505050565b61096d610cb9565b6001600160a01b031661097e6106de565b6001600160a01b0316146109c7576040805162461bcd60e51b81526020600482018190526024820152600080516020610ce4833981519152604482015290519081900360640190fd5b600380546001810182556000919091527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b0319166001600160a01b0392909216919091179055565b60005b600354811015610bb457600060038281548110610a3557fe5b6000918252602080832090910154604080516370a0823160e01b815230600482015290516001600160a01b03909216945084926370a0823192602480840193829003018186803b158015610a8857600080fd5b505afa158015610a9c573d6000803e3d6000fd5b505050506040513d6020811015610ab257600080fd5b505190508015610baa5760005b600154811015610ba857826001600160a01b031663a9059cbb60018381548110610ae557fe5b60009182526020909120600291820201549054600180546001600160a01b039093169286908110610b1257fe5b906000526020600020906002020160010154860281610b2d57fe5b046040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015610b7457600080fd5b505af1158015610b88573d6000803e3d6000fd5b505050506040513d6020811015610b9e57600080fd5b5050600101610abf565b505b5050600101610a1c565b50565b610bbf610cb9565b6001600160a01b0316610bd06106de565b6001600160a01b031614610c19576040805162461bcd60e51b81526020600482018190526024820152600080516020610ce4833981519152604482015290519081900360640190fd5b6001600160a01b038116610c5e5760405162461bcd60e51b8152600401808060200182810382526026815260200180610cbe6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b339056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a26469706673582212204db0342f12e7ab138e85af95db1ece0c8152814fa9d9d7232df79d058532276a64736f6c634300060c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000003000000000000000000000000d622b4302b726c82e95c286ca0096411e6de96c000000000000000000000000069a77e537e4e9ebb5c6a54058fdda0b0fef7d17b00000000000000000000000002102930c010ee3e11d6d9e6e76055fea5e560af000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000003e800000000000000000000000000000000000000000000000000000000000003e800000000000000000000000000000000000000000000000000000000000003e8
-----Decoded View---------------
Arg [0] : accounts (address[]): 0xD622b4302b726c82E95C286CA0096411e6DE96C0,0x69A77E537E4e9EBB5C6A54058fdDa0b0feF7d17B,0x02102930C010eE3e11D6D9E6E76055feA5E560AF
Arg [1] : points (uint256[]): 1000,1000,1000
-----Encoded View---------------
10 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [3] : 000000000000000000000000d622b4302b726c82e95c286ca0096411e6de96c0
Arg [4] : 00000000000000000000000069a77e537e4e9ebb5c6a54058fdda0b0fef7d17b
Arg [5] : 00000000000000000000000002102930c010ee3e11d6d9e6e76055fea5e560af
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [7] : 00000000000000000000000000000000000000000000000000000000000003e8
Arg [8] : 00000000000000000000000000000000000000000000000000000000000003e8
Arg [9] : 00000000000000000000000000000000000000000000000000000000000003e8
Deployed Bytecode Sourcemap
6335:2135:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6457:31;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6457:31:0;;:::i;:::-;;;;-1:-1:-1;;;;;6457:31:0;;;;;;;;;;;;;;;;;;;;;7320:197;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;7320:197:0;;;;;;;;:::i;:::-;;6526:22;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6526:22:0;;:::i;:::-;;;;-1:-1:-1;;;;;6526:22:0;;;;;;;;;;;;;;6493:26;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;8194:271;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8194:271:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8194:271:0;;-1:-1:-1;8194:271:0;-1:-1:-1;8194:271:0;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2781:148;;;;;;;;;;;;;:::i;2130:87::-;;;;;;;;;;;;;:::i;7523:342::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7523:342:0;-1:-1:-1;;;;;7523:342:0;;:::i;7871:317::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;7871:317:0;;;;;;;;:::i;6836:82::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6836:82:0;-1:-1:-1;;;;;6836:82:0;;:::i;6924:390::-;;;;;;;;;;;;;:::i;3084:244::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3084:244:0;-1:-1:-1;;;;;3084:244:0;;:::i;6457:31::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6457:31:0;;;;-1:-1:-1;6457:31:0;:::o;7320:197::-;2361:12;:10;:12::i;:::-;-1:-1:-1;;;;;2350:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;2350:23:0;;2342:68;;;;;-1:-1:-1;;;2342:68:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2342:68:0;;;;;;;;;;;;;;;7419:63:::1;::::0;;;;::::1;::::0;;;-1:-1:-1;;;;;7419:63:0;;::::1;::::0;;::::1;::::0;::::1;::::0;;;7402:11:::1;:81:::0;;;;::::1;::::0;;-1:-1:-1;7402:81:0;;;;;;;::::1;::::0;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;;;;;7402:81:0::1;::::0;;;::::1;::::0;;;::::1;::::0;;;;;;;;;;;;7490:21;;::::1;::::0;;7320:197::o;6526:22::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6526:22:0;;-1:-1:-1;6526:22:0;:::o;6493:26::-;;;;:::o;8194:271::-;8303:12;2361;:10;:12::i;:::-;-1:-1:-1;;;;;2350:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;2350:23:0;;2342:68;;;;;-1:-1:-1;;;2342:68:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2342:68:0;;;;;;;;;;;;;;;8325:12:::1;8339:19;8362:3;-1:-1:-1::0;;;;;8362:8:0::1;8378:6;8386:5;;8362:30;;;;;;;;;;::::0;;::::1;::::0;-1:-1:-1;8362:30:0::1;::::0;-1:-1:-1;8362:30:0;;-1:-1:-1;;8362:30:0;;::::1;::::0;;;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8324:68;;;;8407:7;8399:40;;;::::0;;-1:-1:-1;;;8399:40:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;8399:40:0;;;;;;;;;;;;;::::1;;8453:6:::0;8194:271;-1:-1:-1;;;;;;8194:271:0:o;2781:148::-;2361:12;:10;:12::i;:::-;-1:-1:-1;;;;;2350:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;2350:23:0;;2342:68;;;;;-1:-1:-1;;;2342:68:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2342:68:0;;;;;;;;;;;;;;;2888:1:::1;2872:6:::0;;2851:40:::1;::::0;-1:-1:-1;;;;;2872:6:0;;::::1;::::0;2851:40:::1;::::0;2888:1;;2851:40:::1;2919:1;2902:19:::0;;-1:-1:-1;;;;;;2902:19:0::1;::::0;;2781:148::o;2130:87::-;2176:7;2203:6;-1:-1:-1;;;;;2203:6:0;2130:87;:::o;7523:342::-;2361:12;:10;:12::i;:::-;-1:-1:-1;;;;;2350:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;2350:23:0;;2342:68;;;;;-1:-1:-1;;;2342:68:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2342:68:0;;;;;;;;;;;;;;;7597:9:::1;7592:268;7616:11;:18:::0;7612:22;::::1;7592:268;;;7680:7;-1:-1:-1::0;;;;;7654:33:0::1;:11;7666:1;7654:14;;;;;;;;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;:22:::0;-1:-1:-1;;;;;7654:22:0::1;:33;7650:203;;;7715:11;7727:1;7715:14;;;;;;;;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;:21;::::0;;::::1;::::0;7700:36;;::::1;::::0;;;7776:18;;-1:-1:-1;;7776:22:0;;;7764:35;::::1;;;;;;;;;;;;;;;7747:11;7759:1;7747:14;;;;;;;;;::::0;;;::::1;::::0;;;:52;;:14:::1;::::0;;::::1;;:52:::0;;-1:-1:-1;;;;;;7747:52:0::1;-1:-1:-1::0;;;;;7747:52:0;;::::1;::::0;;;::::1;::::0;;;;;::::1;::::0;;;::::1;::::0;7810:17;;;::::1;;;;;::::0;;;::::1;::::0;;::::1;-1:-1:-1::0;;7810:17:0;;;;;::::1;;::::0;;-1:-1:-1;;;;;;7810:17:0::1;::::0;;::::1;;::::0;;;7838:5:::1;;7650:203;7636:3;;7592:268;;;;7523:342:::0;:::o;7871:317::-;2361:12;:10;:12::i;:::-;-1:-1:-1;;;;;2350:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;2350:23:0;;2342:68;;;;;-1:-1:-1;;;2342:68:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2342:68:0;;;;;;;;;;;;;;;7964:9:::1;7959:224;7983:11;:18:::0;7979:22;::::1;7959:224;;;8047:7;-1:-1:-1::0;;;;;8021:33:0::1;:11;8033:1;8021:14;;;;;;;;;::::0;;;::::1;::::0;;;::::1;::::0;;::::1;;:22:::0;-1:-1:-1;;;;;8021:22:0::1;:33;8017:159;;;8119:6;8095:11;8107:1;8095:14;;;;;;;;;;;;;;;;;;:21;;;8081:11;;:35;:44;8067:11;:58;;;;8160:6;8136:11;8148:1;8136:14;;;;;;;;;;;;;;;;;;:21;;:30;;;;8017:159;8003:3;;7959:224;;;;7871:317:::0;;:::o;6836:82::-;2361:12;:10;:12::i;:::-;-1:-1:-1;;;;;2350:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;2350:23:0;;2342:68;;;;;-1:-1:-1;;;2342:68:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2342:68:0;;;;;;;;;;;;;;;6894:6:::1;:18:::0;;::::1;::::0;::::1;::::0;;-1:-1:-1;6894:18:0;;;;;::::1;::::0;;-1:-1:-1;;;;;;6894:18:0::1;-1:-1:-1::0;;;;;6894:18:0;;;::::1;::::0;;;::::1;::::0;;6836:82::o;6924:390::-;6976:9;6971:338;6991:6;:13;6987:17;;6971:338;;;7020:12;7035:6;7042:1;7035:9;;;;;;;;;;;;;;;;;;;;7071:30;;;-1:-1:-1;;;7071:30:0;;7095:4;7071:30;;;;;;-1:-1:-1;;;;;7035:9:0;;;;-1:-1:-1;7035:9:0;;7071:15;;:30;;;;;;;;;;7035:9;7071:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7071:30:0;;-1:-1:-1;7114:11:0;;7110:192;;7143:9;7138:155;7158:11;:18;7154:22;;7138:155;;;7196:5;-1:-1:-1;;;;;7196:14:0;;7211:11;7223:1;7211:14;;;;;;;;;;;;;;;;;;;;;:22;7269:11;;7211:22;7245:14;;-1:-1:-1;;;;;7211:22:0;;;;7257:1;;7245:14;;;;;;;;;;;;;;;;:21;;;7235:7;:31;:45;;;;;;7196:85;;;;;;;;;;;;;-1:-1:-1;;;;;7196:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7178:3:0;;7138:155;;;;7110:192;-1:-1:-1;;7006:3:0;;6971:338;;;;6924:390::o;3084:244::-;2361:12;:10;:12::i;:::-;-1:-1:-1;;;;;2350:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;2350:23:0;;2342:68;;;;;-1:-1:-1;;;2342:68:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2342:68:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;3173:22:0;::::1;3165:73;;;;-1:-1:-1::0;;;3165:73:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3275:6;::::0;;3254:38:::1;::::0;-1:-1:-1;;;;;3254:38:0;;::::1;::::0;3275:6;::::1;::::0;3254:38:::1;::::0;::::1;3303:6;:17:::0;;-1:-1:-1;;;;;;3303:17:0::1;-1:-1:-1::0;;;;;3303:17:0;;;::::1;::::0;;;::::1;::::0;;3084:244::o;667:106::-;755:10;667:106;:::o
Swarm Source
ipfs://4db0342f12e7ab138e85af95db1ece0c8152814fa9d9d7232df79d058532276a
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.