Source Code
Overview
ETH Balance
0.13 ETH
More Info
ContractCreator
Multichain Info
N/A
Latest 18 from a total of 18 transactions
| Transaction Hash |
Method
|
Block
|
From
|
To
|
Amount
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Sponsor | 16202879 | 517 days ago | IN | 0.01 ETH | 0.00000237 | ||||
| Whitelist Wallet | 16201935 | 517 days ago | IN | 0 ETH | 0.00000063 | ||||
| Sponsor | 16197146 | 517 days ago | IN | 0.01 ETH | 0.00000042 | ||||
| Sponsor | 16197041 | 517 days ago | IN | 0.01 ETH | 0.00000045 | ||||
| Set Reward | 16197005 | 517 days ago | IN | 0 ETH | 0.0000005 | ||||
| Whitelist Wallet | 16196958 | 517 days ago | IN | 0 ETH | 0.00000054 | ||||
| Sponsor | 16196920 | 517 days ago | IN | 0.01 ETH | 0.00000051 | ||||
| Sponsor | 16196843 | 517 days ago | IN | 0.01 ETH | 0.00000052 | ||||
| Sponsor | 16196625 | 517 days ago | IN | 0.01 ETH | 0.00000048 | ||||
| Sponsor | 16196234 | 517 days ago | IN | 0.01 ETH | 0.00000059 | ||||
| Sponsor | 16196188 | 517 days ago | IN | 0.01 ETH | 0.00000063 | ||||
| Sponsor | 16196065 | 517 days ago | IN | 0.01 ETH | 0.00000062 | ||||
| Sponsor | 16196012 | 517 days ago | IN | 0.01 ETH | 0.00000055 | ||||
| Sponsor | 16195989 | 517 days ago | IN | 0.01 ETH | 0.00000059 | ||||
| Sponsor | 16195916 | 517 days ago | IN | 0.01 ETH | 0.00000062 | ||||
| Sponsor | 16195794 | 517 days ago | IN | 0.01 ETH | 0.0000005 | ||||
| Sponsor | 16195677 | 517 days ago | IN | 0.01 ETH | 0.00000063 | ||||
| Sponsor | 16195124 | 517 days ago | IN | 0.01 ETH | 0.00000066 |
Loading...
Loading
Contract Name:
RewardsContract
Compiler Version
v0.8.17+commit.8df45f5f
Contract Source Code (Solidity)
/**
*Submitted for verification at sepolia.basescan.org on 2024-10-05
*/
//SPDX-License-Identifier: MIT
pragma solidity >=0.8.0 <0.9.0;
// Use openzeppelin to inherit battle-tested implementations (ERC20, ERC721, etc)
// import "@openzeppelin/contracts/access/Ownable.sol";
/**
* A smart contract that allows changing a state variable of the contract and tracking the changes
* It also allows the owner to withdraw the Ether in the contract
* @author BuidlGuidl
*/
contract RewardsContract {
// State Variables
address public immutable owner;
uint256 public totalSponsorships = 0;
uint256 public maxClaimersPerExercise = 100;
mapping(address => uint) public sponsorships;
// Mapping to track rewards by ID
mapping(uint256 => uint256) public exerciseRewardPool;
mapping(uint256 => uint256) public exerciseRewardClaimers;
mapping(uint256 => mapping(address => bool))
public whitelistedRewardsAddresses;
mapping(address => mapping(uint256 => uint256)) public claimedRewards;
// Events: a way to emit log statements from smart contract that can be listened to by external parties
event Sponsored(address indexed sponsor, uint256 value);
event RewardSet(uint256 exerciseId, uint256 amount);
event Whitelisted(uint256 exerciseId, address wallet);
event RewardClaimed(
address indexed claimant,
uint256 exerciseId,
uint256 amount
);
// Events: a way to emit log statements from smart contract that can be listened to by external parties
event RewardClaimed(address indexed sponsor, uint256 value);
// Modifier to restrict access to the owner
modifier onlyOwner() {
require(msg.sender == owner, "Caller is not the owner");
_;
}
// Constructor: Called once on contract deployment
// Check packages/hardhat/deploy/00_deploy_your_contract.ts
constructor(address _owner) {
owner = _owner;
}
// Modifier: used to define a set of rules that must be met before or after a function is executed
// Check the withdraw() function
modifier isOwner() {
// msg.sender: predefined variable that represents address of the account that called the current function
require(msg.sender == owner, "Not the Owner");
_;
}
/**
* Function that allows anyone to sponsor
*
*/
function sponsor() public payable {
require(msg.value > 0, "Sponsorship amount must be greater than 0");
// Update the sponsor's total contributions
sponsorships[msg.sender] += msg.value;
// Increment total sponsorship amount
totalSponsorships += msg.value;
// Emit Sponsored event
emit Sponsored(msg.sender, msg.value);
}
// Function to set rewards, can only be called by the owner
function setReward(uint256 exerciseId, uint256 amount) external onlyOwner {
require(amount > 0, "Reward amount must be greater than 0");
// Set the reward amount for the specified ID
exerciseRewardPool[exerciseId] = amount;
// Emit RewardSet event
emit RewardSet(exerciseId, amount);
}
// Function to set rewards, can only be called by the owner
function whitelistWallet(
uint256 exerciseId,
address wallet
) external onlyOwner {
require(
exerciseRewardClaimers[exerciseId] < maxClaimersPerExercise,
"Max winners reached"
);
// Set the reward amount for the specified ID
exerciseRewardClaimers[exerciseId] += 1;
whitelistedRewardsAddresses[exerciseId][wallet] = true;
// Emit RewardSet event
emit Whitelisted(exerciseId, wallet);
}
// Function for whitelisted wallets to claim rewards
function claimReward(uint256 exerciseId) external {
uint256 totalRewardAmount = exerciseRewardPool[exerciseId];
require(totalRewardAmount > 0, "Reward not set for this ID");
require(
whitelistedRewardsAddresses[exerciseId][msg.sender],
"Not whitelisted"
);
require(
claimedRewards[msg.sender][exerciseId] == 0,
"Reward already claimed"
);
uint256 rewardAmount = totalRewardAmount / maxClaimersPerExercise;
// Mark reward as claimed
claimedRewards[msg.sender][exerciseId] = rewardAmount;
// Transfer the reward to the claimant
(bool success, ) = payable(msg.sender).call{value: rewardAmount}("");
require(success, "Reward claim failed");
// Emit RewardClaimed event
emit RewardClaimed(msg.sender, exerciseId, rewardAmount);
}
// Fallback function to accept plain ETH transfers
receive() external payable {
sponsor();
}
}Contract ABI
API[{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"claimant","type":"address"},{"indexed":false,"internalType":"uint256","name":"exerciseId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"RewardClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sponsor","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"RewardClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"exerciseId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"RewardSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sponsor","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Sponsored","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"exerciseId","type":"uint256"},{"indexed":false,"internalType":"address","name":"wallet","type":"address"}],"name":"Whitelisted","type":"event"},{"inputs":[{"internalType":"uint256","name":"exerciseId","type":"uint256"}],"name":"claimReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"claimedRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"exerciseRewardClaimers","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"exerciseRewardPool","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxClaimersPerExercise","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"exerciseId","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sponsor","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"sponsorships","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSponsorships","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"exerciseId","type":"uint256"},{"internalType":"address","name":"wallet","type":"address"}],"name":"whitelistWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"name":"whitelistedRewardsAddresses","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
60a060405260008055606460015534801561001957600080fd5b50604051610a05380380610a0583398101604081905261003891610049565b6001600160a01b0316608052610079565b60006020828403121561005b57600080fd5b81516001600160a01b038116811461007257600080fd5b9392505050565b6080516109636100a26000396000818161017a015281816103a101526104bf01526109636000f3fe6080604052600436106100ab5760003560e01c8063a47bd49611610064578063a47bd496146101e1578063a7d7536e14610201578063ae169a5014610221578063cf78c9d914610241578063f45829bf14610257578063fb831b9a1461028457600080fd5b80637315ab50146100bf57806374dcca7e146100e857806377c936621461011557806384d991b01461011d5780638da5cb5b14610168578063a100d967146101b457600080fd5b366100ba576100b86102bc565b005b600080fd5b3480156100cb57600080fd5b506100d560005481565b6040519081526020015b60405180910390f35b3480156100f457600080fd5b506100d5610103366004610815565b60046020526000908152604090205481565b6100b86102bc565b34801561012957600080fd5b5061015861013836600461084a565b600560209081526000928352604080842090915290825290205460ff1681565b60405190151581526020016100df565b34801561017457600080fd5b5061019c7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100df565b3480156101c057600080fd5b506100d56101cf366004610876565b60026020526000908152604090205481565b3480156101ed57600080fd5b506100b86101fc366004610898565b610396565b34801561020d57600080fd5b506100b861021c36600461084a565b6104b4565b34801561022d57600080fd5b506100b861023c366004610815565b610603565b34801561024d57600080fd5b506100d560015481565b34801561026357600080fd5b506100d5610272366004610815565b60036020526000908152604090205481565b34801561029057600080fd5b506100d561029f3660046108ba565b600660209081526000928352604080842090915290825290205481565b600034116103235760405162461bcd60e51b815260206004820152602960248201527f53706f6e736f727368697020616d6f756e74206d75737420626520677265617460448201526806572207468616e20360bc1b60648201526084015b60405180910390fd5b33600090815260026020526040812080543492906103429084906108e4565b925050819055503460008082825461035a91906108e4565b909155505060405134815233907fbb2c10eb8b0d65523a501a1c079906e38af3c4231e31b799d408daacd7ce72269060200160405180910390a2565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146104085760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329037bbb732b960491b604482015260640161031a565b600081116104645760405162461bcd60e51b8152602060048201526024808201527f52657761726420616d6f756e74206d75737420626520677265617465722074686044820152630616e20360e41b606482015260840161031a565b60008281526003602090815260409182902083905581518481529081018390527fb1364803920b7aa08b58c240c989062d8ebd96ab4bd352792350afbab26c823991015b60405180910390a15050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146105265760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329037bbb732b960491b604482015260640161031a565b6001546000838152600460205260409020541061057b5760405162461bcd60e51b815260206004820152601360248201527213585e081dda5b9b995c9cc81c995858da1959606a1b604482015260640161031a565b600082815260046020526040812080546001929061059a9084906108e4565b909155505060008281526005602090815260408083206001600160a01b03851680855290835292819020805460ff191660011790558051858152918201929092527f2279719af4080e08a5a2b25c8234a83b76079141524127d1096409ac07fa5d0f91016104a8565b6000818152600360205260409020548061065f5760405162461bcd60e51b815260206004820152601a60248201527f526577617264206e6f742073657420666f722074686973204944000000000000604482015260640161031a565b600082815260056020908152604080832033845290915290205460ff166106ba5760405162461bcd60e51b815260206004820152600f60248201526e139bdd081dda1a5d195b1a5cdd1959608a1b604482015260640161031a565b3360009081526006602090815260408083208584529091529020541561071b5760405162461bcd60e51b815260206004820152601660248201527514995dd85c9908185b1c9958591e4818db185a5b595960521b604482015260640161031a565b60006001548261072b919061090b565b336000818152600660209081526040808320888452909152808220849055519293509183908381818185875af1925050503d8060008114610788576040519150601f19603f3d011682016040523d82523d6000602084013e61078d565b606091505b50509050806107d45760405162461bcd60e51b815260206004820152601360248201527214995dd85c990818db185a5b4819985a5b1959606a1b604482015260640161031a565b604080518581526020810184905233917ff01da32686223933d8a18a391060918c7f11a3648639edd87ae013e2e2731743910160405180910390a250505050565b60006020828403121561082757600080fd5b5035919050565b80356001600160a01b038116811461084557600080fd5b919050565b6000806040838503121561085d57600080fd5b8235915061086d6020840161082e565b90509250929050565b60006020828403121561088857600080fd5b6108918261082e565b9392505050565b600080604083850312156108ab57600080fd5b50508035926020909101359150565b600080604083850312156108cd57600080fd5b6108d68361082e565b946020939093013593505050565b8082018082111561090557634e487b7160e01b600052601160045260246000fd5b92915050565b60008261092857634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220ef790ed6deceed4fdc05750b557d5ab452cee17b6c19e00e23c04c0aaa8d675264736f6c63430008110033000000000000000000000000436ca2299e7fdf36c4b1164ca3e80081e68c318a
Deployed Bytecode
0x6080604052600436106100ab5760003560e01c8063a47bd49611610064578063a47bd496146101e1578063a7d7536e14610201578063ae169a5014610221578063cf78c9d914610241578063f45829bf14610257578063fb831b9a1461028457600080fd5b80637315ab50146100bf57806374dcca7e146100e857806377c936621461011557806384d991b01461011d5780638da5cb5b14610168578063a100d967146101b457600080fd5b366100ba576100b86102bc565b005b600080fd5b3480156100cb57600080fd5b506100d560005481565b6040519081526020015b60405180910390f35b3480156100f457600080fd5b506100d5610103366004610815565b60046020526000908152604090205481565b6100b86102bc565b34801561012957600080fd5b5061015861013836600461084a565b600560209081526000928352604080842090915290825290205460ff1681565b60405190151581526020016100df565b34801561017457600080fd5b5061019c7f000000000000000000000000436ca2299e7fdf36c4b1164ca3e80081e68c318a81565b6040516001600160a01b0390911681526020016100df565b3480156101c057600080fd5b506100d56101cf366004610876565b60026020526000908152604090205481565b3480156101ed57600080fd5b506100b86101fc366004610898565b610396565b34801561020d57600080fd5b506100b861021c36600461084a565b6104b4565b34801561022d57600080fd5b506100b861023c366004610815565b610603565b34801561024d57600080fd5b506100d560015481565b34801561026357600080fd5b506100d5610272366004610815565b60036020526000908152604090205481565b34801561029057600080fd5b506100d561029f3660046108ba565b600660209081526000928352604080842090915290825290205481565b600034116103235760405162461bcd60e51b815260206004820152602960248201527f53706f6e736f727368697020616d6f756e74206d75737420626520677265617460448201526806572207468616e20360bc1b60648201526084015b60405180910390fd5b33600090815260026020526040812080543492906103429084906108e4565b925050819055503460008082825461035a91906108e4565b909155505060405134815233907fbb2c10eb8b0d65523a501a1c079906e38af3c4231e31b799d408daacd7ce72269060200160405180910390a2565b336001600160a01b037f000000000000000000000000436ca2299e7fdf36c4b1164ca3e80081e68c318a16146104085760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329037bbb732b960491b604482015260640161031a565b600081116104645760405162461bcd60e51b8152602060048201526024808201527f52657761726420616d6f756e74206d75737420626520677265617465722074686044820152630616e20360e41b606482015260840161031a565b60008281526003602090815260409182902083905581518481529081018390527fb1364803920b7aa08b58c240c989062d8ebd96ab4bd352792350afbab26c823991015b60405180910390a15050565b336001600160a01b037f000000000000000000000000436ca2299e7fdf36c4b1164ca3e80081e68c318a16146105265760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329037bbb732b960491b604482015260640161031a565b6001546000838152600460205260409020541061057b5760405162461bcd60e51b815260206004820152601360248201527213585e081dda5b9b995c9cc81c995858da1959606a1b604482015260640161031a565b600082815260046020526040812080546001929061059a9084906108e4565b909155505060008281526005602090815260408083206001600160a01b03851680855290835292819020805460ff191660011790558051858152918201929092527f2279719af4080e08a5a2b25c8234a83b76079141524127d1096409ac07fa5d0f91016104a8565b6000818152600360205260409020548061065f5760405162461bcd60e51b815260206004820152601a60248201527f526577617264206e6f742073657420666f722074686973204944000000000000604482015260640161031a565b600082815260056020908152604080832033845290915290205460ff166106ba5760405162461bcd60e51b815260206004820152600f60248201526e139bdd081dda1a5d195b1a5cdd1959608a1b604482015260640161031a565b3360009081526006602090815260408083208584529091529020541561071b5760405162461bcd60e51b815260206004820152601660248201527514995dd85c9908185b1c9958591e4818db185a5b595960521b604482015260640161031a565b60006001548261072b919061090b565b336000818152600660209081526040808320888452909152808220849055519293509183908381818185875af1925050503d8060008114610788576040519150601f19603f3d011682016040523d82523d6000602084013e61078d565b606091505b50509050806107d45760405162461bcd60e51b815260206004820152601360248201527214995dd85c990818db185a5b4819985a5b1959606a1b604482015260640161031a565b604080518581526020810184905233917ff01da32686223933d8a18a391060918c7f11a3648639edd87ae013e2e2731743910160405180910390a250505050565b60006020828403121561082757600080fd5b5035919050565b80356001600160a01b038116811461084557600080fd5b919050565b6000806040838503121561085d57600080fd5b8235915061086d6020840161082e565b90509250929050565b60006020828403121561088857600080fd5b6108918261082e565b9392505050565b600080604083850312156108ab57600080fd5b50508035926020909101359150565b600080604083850312156108cd57600080fd5b6108d68361082e565b946020939093013593505050565b8082018082111561090557634e487b7160e01b600052601160045260246000fd5b92915050565b60008261092857634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220ef790ed6deceed4fdc05750b557d5ab452cee17b6c19e00e23c04c0aaa8d675264736f6c63430008110033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000436ca2299e7fdf36c4b1164ca3e80081e68c318a
-----Decoded View---------------
Arg [0] : _owner (address): 0x436cA2299e7fDF36C4b1164cA3e80081E68c318A
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000436ca2299e7fdf36c4b1164ca3e80081e68c318a
Deployed Bytecode Sourcemap
409:3969:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4361:9;:7;:9::i;:::-;409:3969;;;;;493:36;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;493:36:0;;;;;;;;721:57;;;;;;;;;;-1:-1:-1;721:57:0;;;;;:::i;:::-;;;;;;;;;;;;;;2200:351;;;:::i;782:82::-;;;;;;;;;;-1:-1:-1;782:82:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;983:14:1;;976:22;958:41;;946:2;931:18;782:82:0;818:187:1;459:30:0;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1174:32:1;;;1156:51;;1144:2;1129:18;459:30:0;1010:203:1;580:44:0;;;;;;;;;;-1:-1:-1;580:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;2618:306;;;;;;;;;;-1:-1:-1;2618:306:0;;;;;:::i;:::-;;:::i;2991:428::-;;;;;;;;;;-1:-1:-1;2991:428:0;;;;;:::i;:::-;;:::i;3479:792::-;;;;;;;;;;-1:-1:-1;3479:792:0;;;;;:::i;:::-;;:::i;533:43::-;;;;;;;;;;;;;;;;664:53;;;;;;;;;;-1:-1:-1;664:53:0;;;;;:::i;:::-;;;;;;;;;;;;;;868:69;;;;;;;;;;-1:-1:-1;868:69:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;2200:351;2259:1;2247:9;:13;2239:67;;;;-1:-1:-1;;;2239:67:0;;2123:2:1;2239:67:0;;;2105:21:1;2162:2;2142:18;;;2135:30;2201:34;2181:18;;;2174:62;-1:-1:-1;;;2252:18:1;;;2245:39;2301:19;;2239:67:0;;;;;;;;;2373:10;2360:24;;;;:12;:24;;;;;:37;;2388:9;;2360:24;:37;;2388:9;;2360:37;:::i;:::-;;;;;;;;2466:9;2445:17;;:30;;;;;;;:::i;:::-;;;;-1:-1:-1;;2514:32:0;;2536:9;160:25:1;;2524:10:0;;2514:32;;148:2:1;133:18;2514:32:0;;;;;;;2200:351::o;2618:306::-;1573:10;-1:-1:-1;;;;;1587:5:0;1573:19;;1565:55;;;;-1:-1:-1;;;1565:55:0;;2760:2:1;1565:55:0;;;2742:21:1;2799:2;2779:18;;;2772:30;-1:-1:-1;;;2818:18:1;;;2811:53;2881:18;;1565:55:0;2558:347:1;1565:55:0;2714:1:::1;2705:6;:10;2697:59;;;::::0;-1:-1:-1;;;2697:59:0;;3112:2:1;2697:59:0::1;::::0;::::1;3094:21:1::0;3151:2;3131:18;;;3124:30;3190:34;3170:18;;;3163:62;-1:-1:-1;;;3241:18:1;;;3234:34;3285:19;;2697:59:0::1;2910:400:1::0;2697:59:0::1;2812:30;::::0;;;:18:::1;:30;::::0;;;;;;;;:39;;;2890:29;;3489:25:1;;;3530:18;;;3523:34;;;2890:29:0::1;::::0;3462:18:1;2890:29:0::1;;;;;;;;2618:306:::0;;:::o;2991:428::-;1573:10;-1:-1:-1;;;;;1587:5:0;1573:19;;1565:55;;;;-1:-1:-1;;;1565:55:0;;2760:2:1;1565:55:0;;;2742:21:1;2799:2;2779:18;;;2772:30;-1:-1:-1;;;2818:18:1;;;2811:53;2881:18;;1565:55:0;2558:347:1;1565:55:0;3136:22:::1;::::0;3099:34:::1;::::0;;;:22:::1;:34;::::0;;;;;:59:::1;3086:104;;;::::0;-1:-1:-1;;;3086:104:0;;3770:2:1;3086:104:0::1;::::0;::::1;3752:21:1::0;3809:2;3789:18;;;3782:30;-1:-1:-1;;;3828:18:1;;;3821:49;3887:18;;3086:104:0::1;3568:343:1::0;3086:104:0::1;3246:34;::::0;;;:22:::1;:34;::::0;;;;:39;;3284:1:::1;::::0;3246:34;:39:::1;::::0;3284:1;;3246:39:::1;:::i;:::-;::::0;;;-1:-1:-1;;3290:39:0::1;::::0;;;:27:::1;:39;::::0;;;;;;;-1:-1:-1;;;;;3290:47:0;::::1;::::0;;;;;;;;;;:54;;-1:-1:-1;;3290:54:0::1;3340:4;3290:54;::::0;;3383:31;;4090:25:1;;;4131:18;;;4124:60;;;;3383:31:0::1;::::0;4063:18:1;3383:31:0::1;3916:274:1::0;3479:792:0;3534:25;3562:30;;;:18;:30;;;;;;3605:21;3597:60;;;;-1:-1:-1;;;3597:60:0;;4397:2:1;3597:60:0;;;4379:21:1;4436:2;4416:18;;;4409:30;4475:28;4455:18;;;4448:56;4521:18;;3597:60:0;4195:350:1;3597:60:0;3675:39;;;;:27;:39;;;;;;;;3715:10;3675:51;;;;;;;;;;3662:92;;;;-1:-1:-1;;;3662:92:0;;4752:2:1;3662:92:0;;;4734:21:1;4791:2;4771:18;;;4764:30;-1:-1:-1;;;4810:18:1;;;4803:45;4865:18;;3662:92:0;4550:339:1;3662:92:0;3787:10;3772:26;;;;:14;:26;;;;;;;;:38;;;;;;;;;:43;3759:91;;;;-1:-1:-1;;;3759:91:0;;5096:2:1;3759:91:0;;;5078:21:1;5135:2;5115:18;;;5108:30;-1:-1:-1;;;5154:18:1;;;5147:52;5216:18;;3759:91:0;4894:346:1;3759:91:0;3857:20;3900:22;;3880:17;:42;;;;:::i;:::-;3973:10;3958:26;;;;:14;:26;;;;;;;;:38;;;;;;;;;:53;;;4079:49;3958:53;;-1:-1:-1;3958:26:0;:53;;:26;4079:49;3958:26;4079:49;3958:53;3973:10;4079:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4060:68;;;4141:7;4133:39;;;;-1:-1:-1;;;4133:39:0;;5879:2:1;4133:39:0;;;5861:21:1;5918:2;5898:18;;;5891:30;-1:-1:-1;;;5937:18:1;;;5930:49;5996:18;;4133:39:0;5677:343:1;4133:39:0;4215:51;;;3489:25:1;;;3545:2;3530:18;;3523:34;;;4229:10:0;;4215:51;;3462:18:1;4215:51:0;;;;;;;3529:742;;;3479:792;:::o;196:180:1:-;255:6;308:2;296:9;287:7;283:23;279:32;276:52;;;324:1;321;314:12;276:52;-1:-1:-1;347:23:1;;196:180;-1:-1:-1;196:180:1:o;381:173::-;449:20;;-1:-1:-1;;;;;498:31:1;;488:42;;478:70;;544:1;541;534:12;478:70;381:173;;;:::o;559:254::-;627:6;635;688:2;676:9;667:7;663:23;659:32;656:52;;;704:1;701;694:12;656:52;740:9;727:23;717:33;;769:38;803:2;792:9;788:18;769:38;:::i;:::-;759:48;;559:254;;;;;:::o;1218:186::-;1277:6;1330:2;1318:9;1309:7;1305:23;1301:32;1298:52;;;1346:1;1343;1336:12;1298:52;1369:29;1388:9;1369:29;:::i;:::-;1359:39;1218:186;-1:-1:-1;;;1218:186:1:o;1409:248::-;1477:6;1485;1538:2;1526:9;1517:7;1513:23;1509:32;1506:52;;;1554:1;1551;1544:12;1506:52;-1:-1:-1;;1577:23:1;;;1647:2;1632:18;;;1619:32;;-1:-1:-1;1409:248:1:o;1662:254::-;1730:6;1738;1791:2;1779:9;1770:7;1766:23;1762:32;1759:52;;;1807:1;1804;1797:12;1759:52;1830:29;1849:9;1830:29;:::i;:::-;1820:39;1906:2;1891:18;;;;1878:32;;-1:-1:-1;;;1662:254:1:o;2331:222::-;2396:9;;;2417:10;;;2414:133;;;2469:10;2464:3;2460:20;2457:1;2450:31;2504:4;2501:1;2494:15;2532:4;2529:1;2522:15;2414:133;2331:222;;;;:::o;5245:217::-;5285:1;5311;5301:132;;5355:10;5350:3;5346:20;5343:1;5336:31;5390:4;5387:1;5380:15;5418:4;5415:1;5408:15;5301:132;-1:-1:-1;5447:9:1;;5245:217::o
Swarm Source
ipfs://ef790ed6deceed4fdc05750b557d5ab452cee17b6c19e00e23c04c0aaa8d6752
Loading...
Loading
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.