Overview
APE Balance
APE Value
$0.00More Info
Private Name Tags
ContractCreator
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
PodcastAnalyticsCompanion
Compiler Version
v0.8.28+commit.7893614a
Contract Source Code (Solidity)
/** *Submitted for verification at apescan.io on 2024-10-27 */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; interface IExistingPodcast { function episodeCount() external view returns (uint256); function owner() external view returns (address); } contract PodcastAnalyticsCompanion { address public mainContract; address public owner; struct EpisodeAnalytics { uint256 totalListens; mapping(address => bool) hasListened; uint256 uniqueListeners; uint256 lastListenTime; mapping(uint256 => uint256) dailyListens; // timestamp => count } // Storage mapping(uint256 => EpisodeAnalytics) public analytics; uint256 public totalPodcastListens; uint256 public totalUniqueListeners; mapping(address => uint256) public listenerEpisodeCount; // Events event Listen(uint256 indexed episodeId, address indexed listener, uint256 timestamp); event AnalyticsUpdated(uint256 indexed episodeId, uint256 totalListens, uint256 uniqueListeners); constructor(address _mainContract) { mainContract = _mainContract; owner = msg.sender; } modifier onlyOwner() { require(msg.sender == owner, "Only owner can call this function"); _; } modifier validEpisode(uint256 _episodeId) { require(_episodeId > 0 && _episodeId <= IExistingPodcast(mainContract).episodeCount(), "Invalid episode ID"); _; } // Record a listen function recordListen(uint256 _episodeId) public validEpisode(_episodeId) { EpisodeAnalytics storage stats = analytics[_episodeId]; // Update episode stats stats.totalListens++; uint256 today = block.timestamp / 1 days; stats.dailyListens[today]++; // Update unique listeners if (!stats.hasListened[msg.sender]) { stats.hasListened[msg.sender] = true; stats.uniqueListeners++; listenerEpisodeCount[msg.sender]++; totalUniqueListeners++; } stats.lastListenTime = block.timestamp; totalPodcastListens++; emit Listen(_episodeId, msg.sender, block.timestamp); emit AnalyticsUpdated(_episodeId, stats.totalListens, stats.uniqueListeners); } // View functions function getEpisodeStats(uint256 _episodeId) public view validEpisode(_episodeId) returns ( uint256 totalListens, uint256 uniqueListeners, uint256 lastListenTime ) { EpisodeAnalytics storage stats = analytics[_episodeId]; return ( stats.totalListens, stats.uniqueListeners, stats.lastListenTime ); } function getDailyListens(uint256 _episodeId, uint256 _timestamp) public view validEpisode(_episodeId) returns (uint256) { return analytics[_episodeId].dailyListens[_timestamp / 1 days]; } function getListenerStats(address _listener) public view returns ( uint256 episodesListened ) { return listenerEpisodeCount[_listener]; } // Admin functions function updateMainContract(address _newContract) public onlyOwner { mainContract = _newContract; } function transferOwnership(address _newOwner) public onlyOwner { owner = _newOwner; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"_mainContract","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"episodeId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"totalListens","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"uniqueListeners","type":"uint256"}],"name":"AnalyticsUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"episodeId","type":"uint256"},{"indexed":true,"internalType":"address","name":"listener","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"Listen","type":"event"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"analytics","outputs":[{"internalType":"uint256","name":"totalListens","type":"uint256"},{"internalType":"uint256","name":"uniqueListeners","type":"uint256"},{"internalType":"uint256","name":"lastListenTime","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_episodeId","type":"uint256"},{"internalType":"uint256","name":"_timestamp","type":"uint256"}],"name":"getDailyListens","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_episodeId","type":"uint256"}],"name":"getEpisodeStats","outputs":[{"internalType":"uint256","name":"totalListens","type":"uint256"},{"internalType":"uint256","name":"uniqueListeners","type":"uint256"},{"internalType":"uint256","name":"lastListenTime","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_listener","type":"address"}],"name":"getListenerStats","outputs":[{"internalType":"uint256","name":"episodesListened","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"listenerEpisodeCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"mainContract","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_episodeId","type":"uint256"}],"name":"recordListen","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalPodcastListens","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalUniqueListeners","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newContract","type":"address"}],"name":"updateMainContract","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561000f575f5ffd5b50604051610f9f380380610f9f83398181016040528101906100319190610114565b805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503360015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061013f565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100e3826100ba565b9050919050565b6100f3816100d9565b81146100fd575f5ffd5b50565b5f8151905061010e816100ea565b92915050565b5f60208284031215610129576101286100b6565b5b5f61013684828501610100565b91505092915050565b610e538061014c5f395ff3fe608060405234801561000f575f5ffd5b50600436106100b2575f3560e01c8063d21ed6e01161006f578063d21ed6e0146101a2578063d270e7ab146101c0578063de5ecb4d146101de578063df8bbc591461020e578063f2fde38b1461022a578063f90167d114610246576100b2565b80631886ff5d146100b657806373d9d32f146100d4578063895a08d1146101065780638da5cb5b146101225780639bed7aa914610140578063afd8e60814610170575b5f5ffd5b6100be610276565b6040516100cb9190610a4e565b60405180910390f35b6100ee60048036038101906100e99190610a95565b61027c565b6040516100fd93929190610ac0565b60405180910390f35b610120600480360381019061011b9190610a95565b6102a2565b005b61012a6105c3565b6040516101379190610b34565b60405180910390f35b61015a60048036038101906101559190610b77565b6105e8565b6040516101679190610a4e565b60405180910390f35b61018a60048036038101906101859190610a95565b6105fd565b60405161019993929190610ac0565b60405180910390f35b6101aa61070c565b6040516101b79190610a4e565b60405180910390f35b6101c8610712565b6040516101d59190610b34565b60405180910390f35b6101f860048036038101906101f39190610ba2565b610736565b6040516102059190610a4e565b60405180910390f35b61022860048036038101906102239190610b77565b61084d565b005b610244600480360381019061023f9190610b77565b61091e565b005b610260600480360381019061025b9190610b77565b6109f0565b60405161026d9190610a4e565b60405180910390f35b60045481565b6002602052805f5260405f205f91509050805f0154908060020154908060030154905083565b805f8111801561033e57505f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636be153ae6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610316573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061033a9190610bf4565b8111155b61037d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161037490610c79565b60405180910390fd5b5f60025f8481526020019081526020015f209050805f015f8154809291906103a490610cc4565b91905055505f62015180426103b99190610d38565b9050816004015f8281526020019081526020015f205f8154809291906103de90610cc4565b9190505550816001015f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1661050d576001826001015f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550816002015f81548092919061049e90610cc4565b919050555060055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8154809291906104f090610cc4565b919050555060045f81548092919061050790610cc4565b91905055505b42826003018190555060035f81548092919061052890610cc4565b91905055503373ffffffffffffffffffffffffffffffffffffffff16847f73a8b0f752679a82b700ed4a9a7bfad9c5ea1946677221a3d305855c19415024426040516105749190610a4e565b60405180910390a3837fae1dd3f2d7e1c58d3a89e27565ac6732a48cc3a0ee34874f1749e6fcca597308835f015484600201546040516105b5929190610d68565b60405180910390a250505050565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6005602052805f5260405f205f915090505481565b5f5f5f835f8111801561069c57505f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636be153ae6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610674573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106989190610bf4565b8111155b6106db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106d290610c79565b60405180910390fd5b5f60025f8781526020019081526020015f209050805f01548160020154826003015494509450945050509193909250565b60035481565b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f825f811180156107d357505f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636be153ae6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ab573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107cf9190610bf4565b8111155b610812576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161080990610c79565b60405180910390fd5b60025f8581526020019081526020015f206004015f62015180856108369190610d38565b81526020019081526020015f205491505092915050565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146108dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d390610dff565b60405180910390fd5b805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146109ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109a490610dff565b60405180910390fd5b8060015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f60055f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b5f819050919050565b610a4881610a36565b82525050565b5f602082019050610a615f830184610a3f565b92915050565b5f5ffd5b610a7481610a36565b8114610a7e575f5ffd5b50565b5f81359050610a8f81610a6b565b92915050565b5f60208284031215610aaa57610aa9610a67565b5b5f610ab784828501610a81565b91505092915050565b5f606082019050610ad35f830186610a3f565b610ae06020830185610a3f565b610aed6040830184610a3f565b949350505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610b1e82610af5565b9050919050565b610b2e81610b14565b82525050565b5f602082019050610b475f830184610b25565b92915050565b610b5681610b14565b8114610b60575f5ffd5b50565b5f81359050610b7181610b4d565b92915050565b5f60208284031215610b8c57610b8b610a67565b5b5f610b9984828501610b63565b91505092915050565b5f5f60408385031215610bb857610bb7610a67565b5b5f610bc585828601610a81565b9250506020610bd685828601610a81565b9150509250929050565b5f81519050610bee81610a6b565b92915050565b5f60208284031215610c0957610c08610a67565b5b5f610c1684828501610be0565b91505092915050565b5f82825260208201905092915050565b7f496e76616c696420657069736f646520494400000000000000000000000000005f82015250565b5f610c63601283610c1f565b9150610c6e82610c2f565b602082019050919050565b5f6020820190508181035f830152610c9081610c57565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610cce82610a36565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610d0057610cff610c97565b5b600182019050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f610d4282610a36565b9150610d4d83610a36565b925082610d5d57610d5c610d0b565b5b828204905092915050565b5f604082019050610d7b5f830185610a3f565b610d886020830184610a3f565b9392505050565b7f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f5f8201527f6e00000000000000000000000000000000000000000000000000000000000000602082015250565b5f610de9602183610c1f565b9150610df482610d8f565b604082019050919050565b5f6020820190508181035f830152610e1681610ddd565b905091905056fea2646970667358221220367c7dedf641e4a1d0b3bbee815a3044b3b801b82618af06b76b7cd2bf06bb9c64736f6c634300081c0033000000000000000000000000e7bccd6afed2f506c6099d78e47855a765158337
Deployed Bytecode
0x608060405234801561000f575f5ffd5b50600436106100b2575f3560e01c8063d21ed6e01161006f578063d21ed6e0146101a2578063d270e7ab146101c0578063de5ecb4d146101de578063df8bbc591461020e578063f2fde38b1461022a578063f90167d114610246576100b2565b80631886ff5d146100b657806373d9d32f146100d4578063895a08d1146101065780638da5cb5b146101225780639bed7aa914610140578063afd8e60814610170575b5f5ffd5b6100be610276565b6040516100cb9190610a4e565b60405180910390f35b6100ee60048036038101906100e99190610a95565b61027c565b6040516100fd93929190610ac0565b60405180910390f35b610120600480360381019061011b9190610a95565b6102a2565b005b61012a6105c3565b6040516101379190610b34565b60405180910390f35b61015a60048036038101906101559190610b77565b6105e8565b6040516101679190610a4e565b60405180910390f35b61018a60048036038101906101859190610a95565b6105fd565b60405161019993929190610ac0565b60405180910390f35b6101aa61070c565b6040516101b79190610a4e565b60405180910390f35b6101c8610712565b6040516101d59190610b34565b60405180910390f35b6101f860048036038101906101f39190610ba2565b610736565b6040516102059190610a4e565b60405180910390f35b61022860048036038101906102239190610b77565b61084d565b005b610244600480360381019061023f9190610b77565b61091e565b005b610260600480360381019061025b9190610b77565b6109f0565b60405161026d9190610a4e565b60405180910390f35b60045481565b6002602052805f5260405f205f91509050805f0154908060020154908060030154905083565b805f8111801561033e57505f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636be153ae6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610316573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061033a9190610bf4565b8111155b61037d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161037490610c79565b60405180910390fd5b5f60025f8481526020019081526020015f209050805f015f8154809291906103a490610cc4565b91905055505f62015180426103b99190610d38565b9050816004015f8281526020019081526020015f205f8154809291906103de90610cc4565b9190505550816001015f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1661050d576001826001015f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550816002015f81548092919061049e90610cc4565b919050555060055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8154809291906104f090610cc4565b919050555060045f81548092919061050790610cc4565b91905055505b42826003018190555060035f81548092919061052890610cc4565b91905055503373ffffffffffffffffffffffffffffffffffffffff16847f73a8b0f752679a82b700ed4a9a7bfad9c5ea1946677221a3d305855c19415024426040516105749190610a4e565b60405180910390a3837fae1dd3f2d7e1c58d3a89e27565ac6732a48cc3a0ee34874f1749e6fcca597308835f015484600201546040516105b5929190610d68565b60405180910390a250505050565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6005602052805f5260405f205f915090505481565b5f5f5f835f8111801561069c57505f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636be153ae6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610674573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106989190610bf4565b8111155b6106db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106d290610c79565b60405180910390fd5b5f60025f8781526020019081526020015f209050805f01548160020154826003015494509450945050509193909250565b60035481565b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f825f811180156107d357505f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636be153ae6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ab573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107cf9190610bf4565b8111155b610812576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161080990610c79565b60405180910390fd5b60025f8581526020019081526020015f206004015f62015180856108369190610d38565b81526020019081526020015f205491505092915050565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146108dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d390610dff565b60405180910390fd5b805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146109ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109a490610dff565b60405180910390fd5b8060015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f60055f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b5f819050919050565b610a4881610a36565b82525050565b5f602082019050610a615f830184610a3f565b92915050565b5f5ffd5b610a7481610a36565b8114610a7e575f5ffd5b50565b5f81359050610a8f81610a6b565b92915050565b5f60208284031215610aaa57610aa9610a67565b5b5f610ab784828501610a81565b91505092915050565b5f606082019050610ad35f830186610a3f565b610ae06020830185610a3f565b610aed6040830184610a3f565b949350505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610b1e82610af5565b9050919050565b610b2e81610b14565b82525050565b5f602082019050610b475f830184610b25565b92915050565b610b5681610b14565b8114610b60575f5ffd5b50565b5f81359050610b7181610b4d565b92915050565b5f60208284031215610b8c57610b8b610a67565b5b5f610b9984828501610b63565b91505092915050565b5f5f60408385031215610bb857610bb7610a67565b5b5f610bc585828601610a81565b9250506020610bd685828601610a81565b9150509250929050565b5f81519050610bee81610a6b565b92915050565b5f60208284031215610c0957610c08610a67565b5b5f610c1684828501610be0565b91505092915050565b5f82825260208201905092915050565b7f496e76616c696420657069736f646520494400000000000000000000000000005f82015250565b5f610c63601283610c1f565b9150610c6e82610c2f565b602082019050919050565b5f6020820190508181035f830152610c9081610c57565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610cce82610a36565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610d0057610cff610c97565b5b600182019050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f610d4282610a36565b9150610d4d83610a36565b925082610d5d57610d5c610d0b565b5b828204905092915050565b5f604082019050610d7b5f830185610a3f565b610d886020830184610a3f565b9392505050565b7f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f5f8201527f6e00000000000000000000000000000000000000000000000000000000000000602082015250565b5f610de9602183610c1f565b9150610df482610d8f565b604082019050919050565b5f6020820190508181035f830152610e1681610ddd565b905091905056fea2646970667358221220367c7dedf641e4a1d0b3bbee815a3044b3b801b82618af06b76b7cd2bf06bb9c64736f6c634300081c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000e7bccd6afed2f506c6099d78e47855a765158337
-----Decoded View---------------
Arg [0] : _mainContract (address): 0xE7bccD6aFED2F506C6099d78e47855A765158337
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000e7bccd6afed2f506c6099d78e47855a765158337
Deployed Bytecode Sourcemap
212:3182:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;692:35;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;591:53;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;1484:840;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;288:20;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;734:55;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2355:402;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;651:34;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;254:27;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2765:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3171:113;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3292:99;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2974:165;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;692:35;;;;:::o;591:53::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1484:840::-;1546:10;1327:1;1314:10;:14;:77;;;;;1363:12;;;;;;;;;;;1346:43;;;:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1332:10;:59;;1314:77;1306:126;;;;;;;;;;;;:::i;:::-;;;;;;;;;1569:30:::1;1602:9;:21;1612:10;1602:21;;;;;;;;;;;1569:54;;1677:5;:18;;;:20;;;;;;;;;:::i;:::-;;;;;;1708:13;1742:6;1724:15;:24;;;;:::i;:::-;1708:40;;1759:5;:18;;:25;1778:5;1759:25;;;;;;;;;;;;:27;;;;;;;;;:::i;:::-;;;;;;1848:5;:17;;:29;1866:10;1848:29;;;;;;;;;;;;;;;;;;;;;;;;;1843:223;;1926:4;1894:5;:17;;:29;1912:10;1894:29;;;;;;;;;;;;;;;;:36;;;;;;;;;;;;;;;;;;1945:5;:21;;;:23;;;;;;;;;:::i;:::-;;;;;;1983:20;:32;2004:10;1983:32;;;;;;;;;;;;;;;;:34;;;;;;;;;:::i;:::-;;;;;;2032:20;;:22;;;;;;;;;:::i;:::-;;;;;;1843:223;2109:15;2086:5;:20;;:38;;;;2135:19;;:21;;;;;;;;;:::i;:::-;;;;;;2201:10;2182:47;;2189:10;2182:47;2213:15;2182:47;;;;;;:::i;:::-;;;;;;;;2262:10;2245:71;2274:5;:18;;;2294:5;:21;;;2245:71;;;;;;;:::i;:::-;;;;;;;;1558:766;;1484:840:::0;;:::o;288:20::-;;;;;;;;;;;;;:::o;734:55::-;;;;;;;;;;;;;;;;;:::o;2355:402::-;2456:20;2487:23;2521:22;2425:10;1327:1;1314:10;:14;:77;;;;;1363:12;;;;;;;;;;;1346:43;;;:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1332:10;:59;;1314:77;1306:126;;;;;;;;;;;;:::i;:::-;;;;;;;;;2562:30:::1;2595:9;:21;2605:10;2595:21;;;;;;;;;;;2562:54;;2649:5;:18;;;2682:5;:21;;;2718:5;:20;;;2627:122;;;;;;;2355:402:::0;;;;;;:::o;651:34::-;;;;:::o;254:27::-;;;;;;;;;;;;;:::o;2765:201::-;2876:7;2855:10;1327:1;1314:10;:14;:77;;;;;1363:12;;;;;;;;;;;1346:43;;;:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1332:10;:59;;1314:77;1306:126;;;;;;;;;;;;:::i;:::-;;;;;;;;;2903:9:::1;:21;2913:10;2903:21;;;;;;;;;;;:34;;:55;2951:6;2938:10;:19;;;;:::i;:::-;2903:55;;;;;;;;;;;;2896:62;;2765:201:::0;;;;;:::o;3171:113::-;1182:5;;;;;;;;;;;1168:19;;:10;:19;;;1160:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;3264:12:::1;3249;;:27;;;;;;;;;;;;;;;;;;3171:113:::0;:::o;3292:99::-;1182:5;;;;;;;;;;;1168:19;;:10;:19;;;1160:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;3374:9:::1;3366:5;;:17;;;;;;;;;;;;;;;;;;3292:99:::0;:::o;2974:165::-;3050:24;3100:20;:31;3121:9;3100:31;;;;;;;;;;;;;;;;3093:38;;2974:165;;;:::o;7:77:1:-;44:7;73:5;62:16;;7:77;;;:::o;90:118::-;177:24;195:5;177:24;:::i;:::-;172:3;165:37;90:118;;:::o;214:222::-;307:4;345:2;334:9;330:18;322:26;;358:71;426:1;415:9;411:17;402:6;358:71;:::i;:::-;214:222;;;;:::o;523:117::-;632:1;629;622:12;769:122;842:24;860:5;842:24;:::i;:::-;835:5;832:35;822:63;;881:1;878;871:12;822:63;769:122;:::o;897:139::-;943:5;981:6;968:20;959:29;;997:33;1024:5;997:33;:::i;:::-;897:139;;;;:::o;1042:329::-;1101:6;1150:2;1138:9;1129:7;1125:23;1121:32;1118:119;;;1156:79;;:::i;:::-;1118:119;1276:1;1301:53;1346:7;1337:6;1326:9;1322:22;1301:53;:::i;:::-;1291:63;;1247:117;1042:329;;;;:::o;1377:442::-;1526:4;1564:2;1553:9;1549:18;1541:26;;1577:71;1645:1;1634:9;1630:17;1621:6;1577:71;:::i;:::-;1658:72;1726:2;1715:9;1711:18;1702:6;1658:72;:::i;:::-;1740;1808:2;1797:9;1793:18;1784:6;1740:72;:::i;:::-;1377:442;;;;;;:::o;1825:126::-;1862:7;1902:42;1895:5;1891:54;1880:65;;1825:126;;;:::o;1957:96::-;1994:7;2023:24;2041:5;2023:24;:::i;:::-;2012:35;;1957:96;;;:::o;2059:118::-;2146:24;2164:5;2146:24;:::i;:::-;2141:3;2134:37;2059:118;;:::o;2183:222::-;2276:4;2314:2;2303:9;2299:18;2291:26;;2327:71;2395:1;2384:9;2380:17;2371:6;2327:71;:::i;:::-;2183:222;;;;:::o;2411:122::-;2484:24;2502:5;2484:24;:::i;:::-;2477:5;2474:35;2464:63;;2523:1;2520;2513:12;2464:63;2411:122;:::o;2539:139::-;2585:5;2623:6;2610:20;2601:29;;2639:33;2666:5;2639:33;:::i;:::-;2539:139;;;;:::o;2684:329::-;2743:6;2792:2;2780:9;2771:7;2767:23;2763:32;2760:119;;;2798:79;;:::i;:::-;2760:119;2918:1;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2889:117;2684:329;;;;:::o;3019:474::-;3087:6;3095;3144:2;3132:9;3123:7;3119:23;3115:32;3112:119;;;3150:79;;:::i;:::-;3112:119;3270:1;3295:53;3340:7;3331:6;3320:9;3316:22;3295:53;:::i;:::-;3285:63;;3241:117;3397:2;3423:53;3468:7;3459:6;3448:9;3444:22;3423:53;:::i;:::-;3413:63;;3368:118;3019:474;;;;;:::o;3499:143::-;3556:5;3587:6;3581:13;3572:22;;3603:33;3630:5;3603:33;:::i;:::-;3499:143;;;;:::o;3648:351::-;3718:6;3767:2;3755:9;3746:7;3742:23;3738:32;3735:119;;;3773:79;;:::i;:::-;3735:119;3893:1;3918:64;3974:7;3965:6;3954:9;3950:22;3918:64;:::i;:::-;3908:74;;3864:128;3648:351;;;;:::o;4005:169::-;4089:11;4123:6;4118:3;4111:19;4163:4;4158:3;4154:14;4139:29;;4005:169;;;;:::o;4180:168::-;4320:20;4316:1;4308:6;4304:14;4297:44;4180:168;:::o;4354:366::-;4496:3;4517:67;4581:2;4576:3;4517:67;:::i;:::-;4510:74;;4593:93;4682:3;4593:93;:::i;:::-;4711:2;4706:3;4702:12;4695:19;;4354:366;;;:::o;4726:419::-;4892:4;4930:2;4919:9;4915:18;4907:26;;4979:9;4973:4;4969:20;4965:1;4954:9;4950:17;4943:47;5007:131;5133:4;5007:131;:::i;:::-;4999:139;;4726:419;;;:::o;5151:180::-;5199:77;5196:1;5189:88;5296:4;5293:1;5286:15;5320:4;5317:1;5310:15;5337:233;5376:3;5399:24;5417:5;5399:24;:::i;:::-;5390:33;;5445:66;5438:5;5435:77;5432:103;;5515:18;;:::i;:::-;5432:103;5562:1;5555:5;5551:13;5544:20;;5337:233;;;:::o;5576:180::-;5624:77;5621:1;5614:88;5721:4;5718:1;5711:15;5745:4;5742:1;5735:15;5762:185;5802:1;5819:20;5837:1;5819:20;:::i;:::-;5814:25;;5853:20;5871:1;5853:20;:::i;:::-;5848:25;;5892:1;5882:35;;5897:18;;:::i;:::-;5882:35;5939:1;5936;5932:9;5927:14;;5762:185;;;;:::o;5953:332::-;6074:4;6112:2;6101:9;6097:18;6089:26;;6125:71;6193:1;6182:9;6178:17;6169:6;6125:71;:::i;:::-;6206:72;6274:2;6263:9;6259:18;6250:6;6206:72;:::i;:::-;5953:332;;;;;:::o;6291:220::-;6431:34;6427:1;6419:6;6415:14;6408:58;6500:3;6495:2;6487:6;6483:15;6476:28;6291:220;:::o;6517:366::-;6659:3;6680:67;6744:2;6739:3;6680:67;:::i;:::-;6673:74;;6756:93;6845:3;6756:93;:::i;:::-;6874:2;6869:3;6865:12;6858:19;;6517:366;;;:::o;6889:419::-;7055:4;7093:2;7082:9;7078:18;7070:26;;7142:9;7136:4;7132:20;7128:1;7117:9;7113:17;7106:47;7170:131;7296:4;7170:131;:::i;:::-;7162:139;;6889:419;;;:::o
Swarm Source
ipfs://367c7dedf641e4a1d0b3bbee815a3044b3b801b82618af06b76b7cd2bf06bb9c
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 35 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
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.