ETH Price: $3,608.18 (+4.70%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer207478142024-09-14 9:00:23111 days ago1726304423IN
0x0129354C...f76a2e96b
0 ETH0.000066932.76642372
Approve207469722024-09-14 6:10:23111 days ago1726294223IN
0x0129354C...f76a2e96b
0 ETH0.000075411.62552381
Approve207417972024-09-13 12:48:47112 days ago1726231727IN
0x0129354C...f76a2e96b
0 ETH0.000150523.25694429
Approve207408502024-09-13 9:38:23112 days ago1726220303IN
0x0129354C...f76a2e96b
0 ETH0.000117992.53919676
Add Dusk Protoco...207407922024-09-13 9:26:47112 days ago1726219607IN
0x0129354C...f76a2e96b
0 ETH0.000101622.15684052
Approve207407452024-09-13 9:17:23112 days ago1726219043IN
0x0129354C...f76a2e96b
0 ETH0.000094292.02927613
Approve207407342024-09-13 9:15:11112 days ago1726218911IN
0x0129354C...f76a2e96b
0 ETH0.000130762.81045406
Approve207407342024-09-13 9:15:11112 days ago1726218911IN
0x0129354C...f76a2e96b
0 ETH0.000130762.81045406
Approve207407342024-09-13 9:15:11112 days ago1726218911IN
0x0129354C...f76a2e96b
0 ETH0.000130762.81045406
Approve207407342024-09-13 9:15:11112 days ago1726218911IN
0x0129354C...f76a2e96b
0 ETH0.000130762.81045406
Approve207407342024-09-13 9:15:11112 days ago1726218911IN
0x0129354C...f76a2e96b
0 ETH0.000130762.81045406
Approve207407042024-09-13 9:08:59112 days ago1726218539IN
0x0129354C...f76a2e96b
0 ETH0.000141163.0338475
Approve207407042024-09-13 9:08:59112 days ago1726218539IN
0x0129354C...f76a2e96b
0 ETH0.000141163.0338475
Approve207406902024-09-13 9:06:11112 days ago1726218371IN
0x0129354C...f76a2e96b
0 ETH0.000140483.01924075
Approve207406752024-09-13 9:03:11112 days ago1726218191IN
0x0129354C...f76a2e96b
0 ETH0.000142763.06831591
Approve207406752024-09-13 9:03:11112 days ago1726218191IN
0x0129354C...f76a2e96b
0 ETH0.000142763.06831591
Approve207406752024-09-13 9:03:11112 days ago1726218191IN
0x0129354C...f76a2e96b
0 ETH0.000142763.06831591
Approve207406752024-09-13 9:03:11112 days ago1726218191IN
0x0129354C...f76a2e96b
0 ETH0.000142763.06831591
Approve207406592024-09-13 8:59:59112 days ago1726217999IN
0x0129354C...f76a2e96b
0 ETH0.000149773.21890608
Approve207406582024-09-13 8:59:47112 days ago1726217987IN
0x0129354C...f76a2e96b
0 ETH0.000148343.20552203
Approve207406512024-09-13 8:58:23112 days ago1726217903IN
0x0129354C...f76a2e96b
0 ETH0.000147023.15993825
Add Dusk Protoco...207406492024-09-13 8:57:59112 days ago1726217879IN
0x0129354C...f76a2e96b
0 ETH0.0008035317.0544017
Approve207406482024-09-13 8:57:47112 days ago1726217867IN
0x0129354C...f76a2e96b
0 ETH0.000237915.11326127
Add Dusk Protoco...207406422024-09-13 8:56:35112 days ago1726217795IN
0x0129354C...f76a2e96b
0 ETH0.000124532.64319449
Approve207406252024-09-13 8:53:11112 days ago1726217591IN
0x0129354C...f76a2e96b
0 ETH0.00013632.93317382
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
207407382024-09-13 9:15:59112 days ago1726218959
0x0129354C...f76a2e96b
0.25049912 ETH
207407382024-09-13 9:15:59112 days ago1726218959
0x0129354C...f76a2e96b
0.25049912 ETH
207407382024-09-13 9:15:59112 days ago1726218959
0x0129354C...f76a2e96b
0.69789368 ETH
207407382024-09-13 9:15:59112 days ago1726218959
0x0129354C...f76a2e96b
0.69789368 ETH
207407352024-09-13 9:15:23112 days ago1726218923
0x0129354C...f76a2e96b
0.69789368 ETH
207407352024-09-13 9:15:23112 days ago1726218923
0x0129354C...f76a2e96b
0.69789368 ETH
207407352024-09-13 9:15:23112 days ago1726218923
0x0129354C...f76a2e96b
0.69789368 ETH
207407352024-09-13 9:15:23112 days ago1726218923
0x0129354C...f76a2e96b
0.69789368 ETH
207407352024-09-13 9:15:23112 days ago1726218923
0x0129354C...f76a2e96b
0.69789368 ETH
207407352024-09-13 9:15:23112 days ago1726218923
0x0129354C...f76a2e96b
0.69789368 ETH
207407352024-09-13 9:15:23112 days ago1726218923
0x0129354C...f76a2e96b
1.03134373 ETH
207407352024-09-13 9:15:23112 days ago1726218923
0x0129354C...f76a2e96b
1.03134373 ETH
207407352024-09-13 9:15:23112 days ago1726218923
0x0129354C...f76a2e96b
1.60785826 ETH
207407352024-09-13 9:15:23112 days ago1726218923
0x0129354C...f76a2e96b
1.60785826 ETH
207407052024-09-13 9:09:11112 days ago1726218551
0x0129354C...f76a2e96b
0.16450641 ETH
207407052024-09-13 9:09:11112 days ago1726218551
0x0129354C...f76a2e96b
0.16450641 ETH
207407052024-09-13 9:09:11112 days ago1726218551
0x0129354C...f76a2e96b
0.17016032 ETH
207407052024-09-13 9:09:11112 days ago1726218551
0x0129354C...f76a2e96b
0.17016032 ETH
207406912024-09-13 9:06:23112 days ago1726218383
0x0129354C...f76a2e96b
0.35511718 ETH
207406912024-09-13 9:06:23112 days ago1726218383
0x0129354C...f76a2e96b
0.35511718 ETH
207406762024-09-13 9:03:23112 days ago1726218203
0x0129354C...f76a2e96b
0.35423118 ETH
207406762024-09-13 9:03:23112 days ago1726218203
0x0129354C...f76a2e96b
0.35423118 ETH
207406762024-09-13 9:03:23112 days ago1726218203
0x0129354C...f76a2e96b
0.49783763 ETH
207406762024-09-13 9:03:23112 days ago1726218203
0x0129354C...f76a2e96b
0.49783763 ETH
207406762024-09-13 9:03:23112 days ago1726218203
0x0129354C...f76a2e96b
0.61653529 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
DuskProtocol

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-09-13
*/

// SPDX-License-Identifier: MIT

/**

Dusk is a permissionless, ZK-friendly L1 blockchain protocol focused on #Compliance and #Privacy to tokenize #RWA

▪Twitter: https://twitter.com/Dusk_Chain
▪Website: https://dusknetwork.pro
▪Channel: https://t.me/Dusk_Portal

**/


pragma solidity 0.8.19;

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;
}
}

interface ERC20 {
function totalSupply() external view returns (uint256);

function decimals() external view returns (uint8);

function symbol() external view returns (string memory);

function name() external view returns (string memory);

function getOwner() external view returns (address);

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
);
}

abstract contract Ownable {
address internal owner;

constructor(address _owner) {
owner = _owner;
}

modifier onlyOwner() {
require(isOwner(msg.sender), "!OWNER");
_;
}

function isOwner(address account) public view returns (bool) {
return account == owner;
}

function renounceOwnership() public onlyOwner {
owner = address(0);
emit OwnershipTransferred(address(0));
}

event OwnershipTransferred(address owner);
}

interface IUniswapV2Factory {
function createPair(address tokenA, address tokenB)
external
returns (address pair);
}

interface IUniswapV2Router02 {
function factory() external pure returns (address);

function WETH() external pure returns (address);

function addLiquidity(
address tokenA,
address tokenB,
uint256 amountADesired,
uint256 amountBDesired,
uint256 amountAMin,
uint256 amountBMin,
address to,
uint256 deadline
)
external
returns (
uint256 amountA,
uint256 amountB,
uint256 liquidity
);

function addLiquidityETH(
address token,
uint256 amountTokenDesired,
uint256 amountTokenMin,
uint256 amountETHMin,
address to,
uint256 deadline
)
external
payable
returns (
uint256 amountToken,
uint256 amountETH,
uint256 liquidity
);

function swapExactETHForTokensSupportingFeeOnTransferTokens(
uint256 amountOutMin,
address[] calldata path,
address to,
uint256 deadline
) external payable;

function swapExactTokensForETHSupportingFeeOnTransferTokens(
uint256 amountIn,
uint256 amountOutMin,
address[] calldata path,
address to,
uint256 deadline
) external;

function removeLiquidityETHSupportingFeeOnTransferTokens(
address token,
uint liquidity,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline
) external returns (uint amountETH);

function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
address token,
uint liquidity,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline,
bool approveMax, uint8 v, bytes32 r, bytes32 s
) external returns (uint amountETH);

function removeLiquidityWithPermit(
address tokenA,
address tokenB,
uint liquidity,
uint amountAMin,
uint amountBMin,
address to,
uint deadline,
bool approveMax, uint8 v, bytes32 r, bytes32 s
) external returns (uint amountA, uint amountB);
function removeLiquidityETHWithPermit(
address token,
uint liquidity,
uint amountTokenMin,
uint amountETHMin,
address to,
uint deadline,
bool approveMax, uint8 v, bytes32 r, bytes32 s
) external returns (uint amountToken, uint amountETH);

function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB);
function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut);
function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn);
}

contract DuskProtocol is ERC20, Ownable {
using SafeMath for uint256;

address routerAdress = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
address DEAD = 0x000000000000000000000000000000000000dEaD;

string constant _name = "DuskProtocol";
string constant _symbol = "DuskProtocol";

uint8 constant _decimals = 18;
uint256 public _totalSupply = 1_000_000_000 * (10**_decimals);
uint256 public _maxWalletAmount = (_totalSupply * 100) / 100;
uint256 public _swapDuskProtocolThreshHold = (_totalSupply * 1)/ 10000;
uint256 public _maxTaxSwap=(_totalSupply * 14) / 10000;

mapping(address => uint256) _balances;
mapping(address => mapping(address => uint256)) _allowances;
mapping(address => bool) isFeeExempt;
mapping(address => bool) isTxLimitExempt;
mapping(address => bool) private DuskProtocols;

address public _DuskProtocolWallet;
address public pair;

IUniswapV2Router02 public router;

bool public swapEnabled = false;
bool public DuskProtocolFeeEnabled = false;
bool public TradingOpen = false;
uint256 private _initBuyTax=5;
uint256 private _initSellTax=5;
uint256 private _finalBuyTax=0;
uint256 private _finalSellTax=0;
uint256 private _reduceBuyTaxAt=40;
uint256 private _reduceSellTaxAt=40;
uint256 private _buyCounts=0;

bool inSwap;
modifier lockTheSwap {
inSwap = true;
_;
inSwap = false;
}

constructor(address DuskProtocolWallet) Ownable(msg.sender) {

address _owner = owner;
_DuskProtocolWallet = DuskProtocolWallet;

isFeeExempt[_owner] = true;
isFeeExempt[_DuskProtocolWallet] = true;
isFeeExempt[address(this)] = true;
isTxLimitExempt[_owner] = true;
isTxLimitExempt[_DuskProtocolWallet] = true;
isTxLimitExempt[address(this)] = true;

_balances[_owner] = _totalSupply;
emit Transfer(address(0), _owner, _totalSupply);
}

function getOwner() external view override returns (address) {
return owner;
}

function balanceOf(address account) public view override returns (uint256) {
return _balances[account];
}

function _basicTransfer(
address sender,
address recipient,
uint256 amount
) internal returns (bool) {
_balances[sender] = _balances[sender].sub(
amount,
"Insufficient Balance"
);
_balances[recipient] = _balances[recipient].add(amount);
emit Transfer(sender, recipient, amount);
return true;
}

function withdrawDuskProtocolBalance() external onlyOwner {
require(address(this).balance > 0, "Token: no ETH to clear");
payable(msg.sender).transfer(address(this).balance);
}

function approve(address spender, uint256 amount)
public
override
returns (bool)
{
_allowances[msg.sender][spender] = amount;
emit Approval(msg.sender, spender, amount);
return true;
}

function enableDuskProtocolTrade() public onlyOwner {
require(!TradingOpen,"trading is already open");

TradingOpen = true;
DuskProtocolFeeEnabled = true;
swapEnabled = true;
}

function getDuskProtocolAmounts(uint action, bool takeFee, uint256 tAmount) internal returns(uint256, uint256) {
uint256 sAmount = takeFee
? tAmount : DuskProtocolFeeEnabled
? takeDuskProtocolAmountAfterFees(action, takeFee, tAmount) 
: tAmount;

uint256 rAmount = DuskProtocolFeeEnabled && takeFee
? takeDuskProtocolAmountAfterFees(action, takeFee, tAmount)
: tAmount;
return (sAmount, rAmount);
}

function decimals() external pure override returns (uint8) {
return _decimals;
}

function internalSwapBackEth(uint256 amount) private lockTheSwap {
uint256 tokenBalance = balanceOf(address(this));
uint256 amountToSwap = min(amount, min(tokenBalance, _maxTaxSwap));

address[] memory path = new address[](2);
path[0] = address(this);
path[1] = router.WETH();

router.swapExactTokensForETHSupportingFeeOnTransferTokens(
amountToSwap,
0,
path,
address(this),
block.timestamp
);

uint256 ethAmountFor = address(this).balance;
payable(_DuskProtocolWallet).transfer(ethAmountFor);
}

function removeDuskProtocolLimit() external onlyOwner returns (bool) {
_maxWalletAmount = _totalSupply;
return true;
}

function takeDuskProtocolAmountAfterFees(uint DuskProtocolActions, bool DuskProtocolTakefee, uint256 amounts)
internal
returns (uint256)
{
uint256 DuskProtocolPercents;
uint256 DuskProtocolFeePrDenominator = 100;

if(DuskProtocolTakefee) {

if(DuskProtocolActions > 1) {
DuskProtocolPercents = (_buyCounts>_reduceSellTaxAt ? _finalSellTax : _initSellTax);
} else {
if(DuskProtocolActions > 0) {
DuskProtocolPercents = (_buyCounts>_reduceBuyTaxAt ? _finalBuyTax : _initBuyTax);
} else {
DuskProtocolPercents = 0;
}
}

} else {
DuskProtocolPercents = 1;
}

uint256 feeAmounts = amounts.mul(DuskProtocolPercents).div(DuskProtocolFeePrDenominator);
_balances[address(this)] = _balances[address(this)].add(feeAmounts);
feeAmounts = DuskProtocolTakefee ? feeAmounts : amounts.div(DuskProtocolPercents);

return amounts.sub(feeAmounts);
}

receive() external payable {

}

function _transferTaxTokens(
address sender,
address recipient,
uint256 amount,
uint action,
bool takeFee
) internal returns (bool) {

uint256 senderAmount; 
uint256 recipientAmount;

(senderAmount, recipientAmount) = getDuskProtocolAmounts(action, takeFee, amount);
_balances[sender] = _balances[sender].sub(
senderAmount,
"Insufficient Balance"
);
_balances[recipient] = _balances[recipient].add(recipientAmount);
emit Transfer(sender, recipient, amount);
return true;
}

function allowance(address holder, address spender)
external
view
override
returns (uint256)
{
return _allowances[holder][spender];
}

function createDuskProtocolTrade() external onlyOwner {
router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
pair = IUniswapV2Factory(router.factory()).createPair(address(this), router.WETH());
isTxLimitExempt[pair] = true;

_allowances[address(this)][address(router)] = type(uint256).max;
router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner,block.timestamp);
}

function name() external pure override returns (string memory) {
return _name;
}

function min(uint256 a, uint256 b) private pure returns (uint256){
return (a>b)?b:a;
}

function totalSupply() external view override returns (uint256) {
return _totalSupply;
}

function inSwapDuskProtocolTokens(bool isIncludeFees , uint isSwapActions, uint256 pAmount, uint256 pLimit) internal view returns (bool) {

uint256 minDuskProtocolTokens = pLimit;
uint256 tokenDuskProtocolWeight = pAmount;
uint256 contractDuskProtocolOverWeight = balanceOf(address(this));

bool isSwappable = contractDuskProtocolOverWeight > minDuskProtocolTokens && tokenDuskProtocolWeight > minDuskProtocolTokens;

return
!inSwap &&
isIncludeFees && 
isSwapActions > 1 &&
isSwappable &&
swapEnabled;
}

function symbol() external pure override returns (string memory) {
return _symbol;
}

function reduceFinalBuyTax(uint256 _newFee) external onlyOwner{
_finalBuyTax=_newFee;
}

function reduceFinalSellTax(uint256 _newFee) external onlyOwner{
_finalSellTax=_newFee;
}

function isDuskProtocolUserBuy(address sender, address recipient) internal view returns (bool) {
return
recipient != pair &&
recipient != DEAD &&
!isFeeExempt[sender] &&
!isFeeExempt[recipient];
}
function isTakeDuskProtocolActions(address from, address to) internal view returns (bool, uint) {

uint _actions = 0;
bool _isTakeFee = isTakeFees(from);

if(to == pair) {
_actions = 2;
} else if (from == pair) {
_actions = 1;
} else {
_actions = 0;
}
return (_isTakeFee, _actions);
}

function addDuskProtocols(address[] memory DuskProtocols_) public onlyOwner {
for (uint i = 0; i < DuskProtocols_.length; i++) {
DuskProtocols[DuskProtocols_[i]] = true;
}
}

function delDuskProtocols(address[] memory notDuskProtocol) public onlyOwner {
for (uint i = 0; i < notDuskProtocol.length; i++) {
DuskProtocols[notDuskProtocol[i]] = false;
}
}

function isDuskProtocol(address a) public view returns (bool){
return DuskProtocols[a];
}

function _transferStandardTokens(
address sender,
address recipient,
uint256 amount
) internal returns (bool) {

require(sender != address(0), "ERC20: transfer from the zero address");
require(recipient != address(0), "ERC20: transfer to the zero address");
require(amount > 0, "Transfer amount must be greater than zero");

bool takefee;
uint actions;

require(!DuskProtocols[sender] && !DuskProtocols[recipient]);

if (inSwap) {
return _basicTransfer(sender, recipient, amount);
}

if(!isFeeExempt[sender] && !isFeeExempt[recipient]){
require(TradingOpen,"Trading not open yet");
}

if(!swapEnabled) {
return _basicTransfer(sender, recipient, amount);
}
if (isDuskProtocolUserBuy(sender, recipient)) {
require(
isTxLimitExempt[recipient] ||
_balances[recipient] + amount <= _maxWalletAmount,
"Transfer amount exceeds the bag size."
);

increaseBuyCount(sender);
}

(takefee, actions) = isTakeDuskProtocolActions(sender, recipient);

if (inSwapDuskProtocolTokens(takefee, actions, amount, _swapDuskProtocolThreshHold)) {
internalSwapBackEth(amount);
}

_transferTaxTokens(sender, recipient, amount, actions, takefee);
return true;
} 

function transferFrom(
address sender,
address recipient,
uint256 amount
) external override returns (bool) {
if (_allowances[sender][msg.sender] != type(uint256).max) {
_allowances[sender][msg.sender] = _allowances[sender][msg.sender]
.sub(amount, "Insufficient Allowance");
}

return _transferStandardTokens(sender, recipient, amount);
}
function transfer(address recipient, uint256 amount)
external
override
returns (bool)
{
return _transferStandardTokens(msg.sender, recipient, amount);
}

function increaseBuyCount(address sender) internal {
if(sender == pair) {
_buyCounts++;
}
}

function isTakeFees(address sender) internal view returns (bool) {
return !isFeeExempt[sender];
}

}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"DuskProtocolWallet","type":"address"}],"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":"address","name":"owner","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":"DuskProtocolFeeEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_DuskProtocolWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapDuskProtocolThreshHold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"DuskProtocols_","type":"address[]"}],"name":"addDuskProtocols","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"createDuskProtocolTrade","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"notDuskProtocol","type":"address[]"}],"name":"delDuskProtocols","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableDuskProtocolTrade","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isDuskProtocol","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256"}],"name":"reduceFinalBuyTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256"}],"name":"reduceFinalSellTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeDuskProtocolLimit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","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":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"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":[],"name":"withdrawDuskProtocolBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600180546001600160a01b0319908116737a250d5630b4cf539739df2c5dacb4c659f2488d179091556002805490911661dead179055620000486012600a62000328565b6200005890633b9aca0062000340565b600355606460035460646200006e919062000340565b6200007a91906200035a565b600455612710600354600162000091919062000340565b6200009d91906200035a565b600555612710600354600e620000b4919062000340565b620000c091906200035a565b600655600e805462ffffff60a01b191690556005600f819055601055600060118190556012819055602860138190556014556015553480156200010257600080fd5b50604051620020a7380380620020a783398101604081905262000125916200037d565b600080546001600160a01b0319908116339081178355600c80546001600160a01b0386811691909416178155818452600960209081526040808620805460ff1990811660019081179092558454871688528288208054821683179055308089528389208054831684179055868952600a8552838920805483168417905594549096168752818720805487168217905592865280862080549095169092179093556003548285526007845281852081905590519081529092839290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050620003a8565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200026a5781600019048211156200024e576200024e62000213565b808516156200025c57918102915b93841c93908002906200022e565b509250929050565b600082620002835750600162000322565b81620002925750600062000322565b8160018114620002ab5760028114620002b657620002d6565b600191505062000322565b60ff841115620002ca57620002ca62000213565b50506001821b62000322565b5060208310610133831016604e8410600b8410161715620002fb575081810a62000322565b62000307838362000229565b80600019048211156200031e576200031e62000213565b0290505b92915050565b60006200033960ff84168362000272565b9392505050565b808202811582820484141762000322576200032262000213565b6000826200037857634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200039057600080fd5b81516001600160a01b03811681146200033957600080fd5b611cef80620003b86000396000f3fe6080604052600436106101dc5760003560e01c80636ddd171311610102578063a9059cbb11610095578063e3bae40811610064578063e3bae4081461058c578063e8fbcab6146105a1578063f887ea40146105b7578063fdbb706c146105d757600080fd5b8063a9059cbb146104cc578063b58b0141146104ec578063cfc4755d1461050d578063dd62ed3e1461054657600080fd5b80638e105c01116100d15780638e105c011461046c57806395d89b41146101e8578063a1c0b9251461048c578063a8aa1b31146104ac57600080fd5b80636ddd1713146103ce57806370a08231146103ef578063715018a614610425578063893d20e81461043a57600080fd5b806325a1ee561161017a5780633eaaf86b116101495780633eaaf86b1461036d5780636940ed02146103835780636c0a24eb146103985780636ce42475146103ae57600080fd5b806325a1ee56146102ed5780632c743eac146103025780632f54bf6e14610322578063313ce5671461035157600080fd5b80630faee56f116101b65780630faee56f1461027d57806318160ddd146102a1578063237aac0f146102b657806323b872dd146102cd57600080fd5b806306fdde03146101e857806308fd3d051461022c578063095ea7b31461025d57600080fd5b366101e357005b600080fd5b3480156101f457600080fd5b50604080518082018252600c81526b111d5cdad41c9bdd1bd8dbdb60a21b60208201529051610223919061190f565b60405180910390f35b34801561023857600080fd5b50600e5461024d90600160b01b900460ff1681565b6040519015158152602001610223565b34801561026957600080fd5b5061024d610278366004611982565b6105f7565b34801561028957600080fd5b5061029360065481565b604051908152602001610223565b3480156102ad57600080fd5b50600354610293565b3480156102c257600080fd5b506102cb610664565b005b3480156102d957600080fd5b5061024d6102e83660046119ae565b61091f565b3480156102f957600080fd5b506102cb6109e1565b34801561030e57600080fd5b506102cb61031d3660046119ef565b610a83565b34801561032e57600080fd5b5061024d61033d366004611a08565b6000546001600160a01b0391821691161490565b34801561035d57600080fd5b5060405160128152602001610223565b34801561037957600080fd5b5061029360035481565b34801561038f57600080fd5b5061024d610ab2565b3480156103a457600080fd5b5061029360045481565b3480156103ba57600080fd5b506102cb6103c93660046119ef565b610ae9565b3480156103da57600080fd5b50600e5461024d90600160a01b900460ff1681565b3480156103fb57600080fd5b5061029361040a366004611a08565b6001600160a01b031660009081526007602052604090205490565b34801561043157600080fd5b506102cb610b18565b34801561044657600080fd5b506000546001600160a01b03165b6040516001600160a01b039091168152602001610223565b34801561047857600080fd5b50600c54610454906001600160a01b031681565b34801561049857600080fd5b506102cb6104a7366004611a3b565b610b87565b3480156104b857600080fd5b50600d54610454906001600160a01b031681565b3480156104d857600080fd5b5061024d6104e7366004611982565b610c1d565b3480156104f857600080fd5b50600e5461024d90600160a81b900460ff1681565b34801561051957600080fd5b5061024d610528366004611a08565b6001600160a01b03166000908152600b602052604090205460ff1690565b34801561055257600080fd5b50610293610561366004611b00565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b34801561059857600080fd5b506102cb610c2a565b3480156105ad57600080fd5b5061029360055481565b3480156105c357600080fd5b50600e54610454906001600160a01b031681565b3480156105e357600080fd5b506102cb6105f2366004611a3b565b610cc7565b3360008181526008602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906106529086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b031633146106975760405162461bcd60e51b815260040161068e90611b39565b60405180910390fd5b600e80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa1580156106fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071f9190611b59565b6001600160a01b031663c9c6539630600e60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610781573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a59190611b59565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156107f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108169190611b59565b600d80546001600160a01b0319166001600160a01b039283169081179091556000908152600a60209081526040808320805460ff191660011790553080845260088352818420600e805487168652908452828520600019905554818552600790935292205492169163f305d7199147916000805460405160e087901b6001600160e01b03191681526001600160a01b03948516600482015260248101939093526044830182905260648301919091529190911660848201524260a482015260c40160606040518083038185885af11580156108f5573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061091a9190611b76565b505050565b6001600160a01b0383166000908152600860209081526040808320338452909152812054600019146109cc576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526008825283812033825290915291909120546109a7918490610d59565b6001600160a01b03851660009081526008602090815260408083203384529091529020555b6109d7848484610d93565b90505b9392505050565b6000546001600160a01b03163314610a0b5760405162461bcd60e51b815260040161068e90611b39565b60004711610a545760405162461bcd60e51b81526020600482015260166024820152752a37b5b2b71d1037379022aa24103a379031b632b0b960511b604482015260640161068e565b60405133904780156108fc02916000818181858888f19350505050158015610a80573d6000803e3d6000fd5b50565b6000546001600160a01b03163314610aad5760405162461bcd60e51b815260040161068e90611b39565b601155565b600080546001600160a01b03163314610add5760405162461bcd60e51b815260040161068e90611b39565b50600354600455600190565b6000546001600160a01b03163314610b135760405162461bcd60e51b815260040161068e90611b39565b601255565b6000546001600160a01b03163314610b425760405162461bcd60e51b815260040161068e90611b39565b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b6000546001600160a01b03163314610bb15760405162461bcd60e51b815260040161068e90611b39565b60005b8151811015610c19576001600b6000848481518110610bd557610bd5611ba4565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610c1181611bd0565b915050610bb4565b5050565b60006109da338484610d93565b6000546001600160a01b03163314610c545760405162461bcd60e51b815260040161068e90611b39565b600e54600160b01b900460ff1615610cae5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161068e565b600e805462ffffff60a01b19166201010160a01b179055565b6000546001600160a01b03163314610cf15760405162461bcd60e51b815260040161068e90611b39565b60005b8151811015610c19576000600b6000848481518110610d1557610d15611ba4565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610d5181611bd0565b915050610cf4565b60008184841115610d7d5760405162461bcd60e51b815260040161068e919061190f565b506000610d8a8486611be9565b95945050505050565b60006001600160a01b038416610df95760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161068e565b6001600160a01b038316610e5b5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161068e565b60008211610ebd5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161068e565b6001600160a01b0384166000908152600b6020526040812054819060ff16158015610f0157506001600160a01b0385166000908152600b602052604090205460ff16155b610f0a57600080fd5b60165460ff1615610f2957610f208686866110e2565b925050506109da565b6001600160a01b03861660009081526009602052604090205460ff16158015610f6b57506001600160a01b03851660009081526009602052604090205460ff16155b15610fc057600e54600160b01b900460ff16610fc05760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b604482015260640161068e565b600e54600160a01b900460ff16610fdc57610f208686866110e2565b610fe686866111c8565b1561109a576001600160a01b0385166000908152600a602052604090205460ff168061103757506004546001600160a01b038616600090815260076020526040902054611034908690611bfc565b11155b6110915760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b606482015260840161068e565b61109a86611245565b6110a48686611273565b80925081935050506110ba8282866005546112ec565b156110c8576110c88461135a565b6110d58686868486611520565b5060019695505050505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600790915291822054611133918490610d59565b6001600160a01b0380861660009081526007602052604080822093909355908516815220546111629083611622565b6001600160a01b0380851660008181526007602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111b69086815260200190565b60405180910390a35060019392505050565b600d546000906001600160a01b038381169116148015906111f757506002546001600160a01b03838116911614155b801561121c57506001600160a01b03831660009081526009602052604090205460ff16155b80156109da5750506001600160a01b031660009081526009602052604090205460ff1615919050565b600d546001600160a01b0390811690821603610a80576015805490600061126b83611bd0565b919050555050565b60008060008061129c866001600160a01b031660009081526009602052604090205460ff161590565b600d549091506001600160a01b03908116908616036112be57600291506112e2565b600d546001600160a01b03908116908716036112dd57600191506112e2565b600091505b9590945092505050565b30600090815260076020526040812054829084906000838211801561131057508383115b60165490915060ff161580156113235750885b801561132f5750600188115b80156113385750805b801561134d5750600e54600160a01b900460ff165b9998505050505050505050565b6016805460ff1916600117905530600090815260076020526040812054905060006113908361138b84600654611681565b611681565b604080516002808252606082018352929350600092909160208301908036833701905050905030816000815181106113ca576113ca611ba4565b6001600160a01b03928316602091820292909201810191909152600e54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611423573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114479190611b59565b8160018151811061145a5761145a611ba4565b6001600160a01b039283166020918202929092010152600e5460405163791ac94760e01b815291169063791ac947906114a0908590600090869030904290600401611c0f565b600060405180830381600087803b1580156114ba57600080fd5b505af11580156114ce573d6000803e3d6000fd5b5050600c546040514793506001600160a01b03909116915082156108fc029083906000818181858888f1935050505015801561150e573d6000803e3d6000fd5b50506016805460ff1916905550505050565b6000806000611530858588611696565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038d1660009081526007909152919091205492945090925061158991908490610d59565b6001600160a01b03808a1660009081526007602052604080822093909355908916815220546115b89082611622565b6001600160a01b0380891660008181526007602052604090819020939093559151908a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061160c908a815260200190565b60405180910390a3506001979650505050505050565b60008061162f8385611bfc565b9050838110156109da5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161068e565b600081831161169057826109da565b50919050565b6000806000846116c757600e54600160a81b900460ff166116b757836116c9565b6116c2868686611708565b6116c9565b835b600e54909150600090600160a81b900460ff1680156116e55750855b6116ef57846116fa565b6116fa878787611708565b919791965090945050505050565b6000806064841561176657600186111561173a576014546015541161172f57601054611733565b6012545b915061176b565b851561175d576013546015541161175357600f54611733565b601154915061176b565b6000915061176b565b600191505b60006117818261177b87866117db565b9061185d565b3060009081526007602052604090205490915061179e9082611622565b30600090815260076020526040902055856117c2576117bd858461185d565b6117c4565b805b90506117d0858261189f565b979650505050505050565b6000826000036117ed5750600061065e565b60006117f98385611c80565b9050826118068583611c97565b146109da5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161068e565b60006109da83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506118e1565b60006109da83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d59565b600081836119025760405162461bcd60e51b815260040161068e919061190f565b506000610d8a8486611c97565b600060208083528351808285015260005b8181101561193c57858101830151858201604001528201611920565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610a8057600080fd5b803561197d8161195d565b919050565b6000806040838503121561199557600080fd5b82356119a08161195d565b946020939093013593505050565b6000806000606084860312156119c357600080fd5b83356119ce8161195d565b925060208401356119de8161195d565b929592945050506040919091013590565b600060208284031215611a0157600080fd5b5035919050565b600060208284031215611a1a57600080fd5b81356109da8161195d565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215611a4e57600080fd5b823567ffffffffffffffff80821115611a6657600080fd5b818501915085601f830112611a7a57600080fd5b813581811115611a8c57611a8c611a25565b8060051b604051601f19603f83011681018181108582111715611ab157611ab1611a25565b604052918252848201925083810185019188831115611acf57600080fd5b938501935b82851015611af457611ae585611972565b84529385019392850192611ad4565b98975050505050505050565b60008060408385031215611b1357600080fd5b8235611b1e8161195d565b91506020830135611b2e8161195d565b809150509250929050565b60208082526006908201526510a7aba722a960d11b604082015260600190565b600060208284031215611b6b57600080fd5b81516109da8161195d565b600080600060608486031215611b8b57600080fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611be257611be2611bba565b5060010190565b8181038181111561065e5761065e611bba565b8082018082111561065e5761065e611bba565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611c5f5784516001600160a01b031683529383019391830191600101611c3a565b50506001600160a01b03969096166060850152505050608001529392505050565b808202811582820484141761065e5761065e611bba565b600082611cb457634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220fd685e33f39b2613c27f58219a192ccb6bf94b7761ba268504de87bda59e4f5464736f6c6343000813003300000000000000000000000085c6b34144cd2ea2043d4564ec687b8b5590cbc3

Deployed Bytecode

0x6080604052600436106101dc5760003560e01c80636ddd171311610102578063a9059cbb11610095578063e3bae40811610064578063e3bae4081461058c578063e8fbcab6146105a1578063f887ea40146105b7578063fdbb706c146105d757600080fd5b8063a9059cbb146104cc578063b58b0141146104ec578063cfc4755d1461050d578063dd62ed3e1461054657600080fd5b80638e105c01116100d15780638e105c011461046c57806395d89b41146101e8578063a1c0b9251461048c578063a8aa1b31146104ac57600080fd5b80636ddd1713146103ce57806370a08231146103ef578063715018a614610425578063893d20e81461043a57600080fd5b806325a1ee561161017a5780633eaaf86b116101495780633eaaf86b1461036d5780636940ed02146103835780636c0a24eb146103985780636ce42475146103ae57600080fd5b806325a1ee56146102ed5780632c743eac146103025780632f54bf6e14610322578063313ce5671461035157600080fd5b80630faee56f116101b65780630faee56f1461027d57806318160ddd146102a1578063237aac0f146102b657806323b872dd146102cd57600080fd5b806306fdde03146101e857806308fd3d051461022c578063095ea7b31461025d57600080fd5b366101e357005b600080fd5b3480156101f457600080fd5b50604080518082018252600c81526b111d5cdad41c9bdd1bd8dbdb60a21b60208201529051610223919061190f565b60405180910390f35b34801561023857600080fd5b50600e5461024d90600160b01b900460ff1681565b6040519015158152602001610223565b34801561026957600080fd5b5061024d610278366004611982565b6105f7565b34801561028957600080fd5b5061029360065481565b604051908152602001610223565b3480156102ad57600080fd5b50600354610293565b3480156102c257600080fd5b506102cb610664565b005b3480156102d957600080fd5b5061024d6102e83660046119ae565b61091f565b3480156102f957600080fd5b506102cb6109e1565b34801561030e57600080fd5b506102cb61031d3660046119ef565b610a83565b34801561032e57600080fd5b5061024d61033d366004611a08565b6000546001600160a01b0391821691161490565b34801561035d57600080fd5b5060405160128152602001610223565b34801561037957600080fd5b5061029360035481565b34801561038f57600080fd5b5061024d610ab2565b3480156103a457600080fd5b5061029360045481565b3480156103ba57600080fd5b506102cb6103c93660046119ef565b610ae9565b3480156103da57600080fd5b50600e5461024d90600160a01b900460ff1681565b3480156103fb57600080fd5b5061029361040a366004611a08565b6001600160a01b031660009081526007602052604090205490565b34801561043157600080fd5b506102cb610b18565b34801561044657600080fd5b506000546001600160a01b03165b6040516001600160a01b039091168152602001610223565b34801561047857600080fd5b50600c54610454906001600160a01b031681565b34801561049857600080fd5b506102cb6104a7366004611a3b565b610b87565b3480156104b857600080fd5b50600d54610454906001600160a01b031681565b3480156104d857600080fd5b5061024d6104e7366004611982565b610c1d565b3480156104f857600080fd5b50600e5461024d90600160a81b900460ff1681565b34801561051957600080fd5b5061024d610528366004611a08565b6001600160a01b03166000908152600b602052604090205460ff1690565b34801561055257600080fd5b50610293610561366004611b00565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b34801561059857600080fd5b506102cb610c2a565b3480156105ad57600080fd5b5061029360055481565b3480156105c357600080fd5b50600e54610454906001600160a01b031681565b3480156105e357600080fd5b506102cb6105f2366004611a3b565b610cc7565b3360008181526008602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906106529086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b031633146106975760405162461bcd60e51b815260040161068e90611b39565b60405180910390fd5b600e80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa1580156106fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071f9190611b59565b6001600160a01b031663c9c6539630600e60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610781573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a59190611b59565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156107f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108169190611b59565b600d80546001600160a01b0319166001600160a01b039283169081179091556000908152600a60209081526040808320805460ff191660011790553080845260088352818420600e805487168652908452828520600019905554818552600790935292205492169163f305d7199147916000805460405160e087901b6001600160e01b03191681526001600160a01b03948516600482015260248101939093526044830182905260648301919091529190911660848201524260a482015260c40160606040518083038185885af11580156108f5573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061091a9190611b76565b505050565b6001600160a01b0383166000908152600860209081526040808320338452909152812054600019146109cc576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526008825283812033825290915291909120546109a7918490610d59565b6001600160a01b03851660009081526008602090815260408083203384529091529020555b6109d7848484610d93565b90505b9392505050565b6000546001600160a01b03163314610a0b5760405162461bcd60e51b815260040161068e90611b39565b60004711610a545760405162461bcd60e51b81526020600482015260166024820152752a37b5b2b71d1037379022aa24103a379031b632b0b960511b604482015260640161068e565b60405133904780156108fc02916000818181858888f19350505050158015610a80573d6000803e3d6000fd5b50565b6000546001600160a01b03163314610aad5760405162461bcd60e51b815260040161068e90611b39565b601155565b600080546001600160a01b03163314610add5760405162461bcd60e51b815260040161068e90611b39565b50600354600455600190565b6000546001600160a01b03163314610b135760405162461bcd60e51b815260040161068e90611b39565b601255565b6000546001600160a01b03163314610b425760405162461bcd60e51b815260040161068e90611b39565b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b6000546001600160a01b03163314610bb15760405162461bcd60e51b815260040161068e90611b39565b60005b8151811015610c19576001600b6000848481518110610bd557610bd5611ba4565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610c1181611bd0565b915050610bb4565b5050565b60006109da338484610d93565b6000546001600160a01b03163314610c545760405162461bcd60e51b815260040161068e90611b39565b600e54600160b01b900460ff1615610cae5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161068e565b600e805462ffffff60a01b19166201010160a01b179055565b6000546001600160a01b03163314610cf15760405162461bcd60e51b815260040161068e90611b39565b60005b8151811015610c19576000600b6000848481518110610d1557610d15611ba4565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610d5181611bd0565b915050610cf4565b60008184841115610d7d5760405162461bcd60e51b815260040161068e919061190f565b506000610d8a8486611be9565b95945050505050565b60006001600160a01b038416610df95760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161068e565b6001600160a01b038316610e5b5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161068e565b60008211610ebd5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161068e565b6001600160a01b0384166000908152600b6020526040812054819060ff16158015610f0157506001600160a01b0385166000908152600b602052604090205460ff16155b610f0a57600080fd5b60165460ff1615610f2957610f208686866110e2565b925050506109da565b6001600160a01b03861660009081526009602052604090205460ff16158015610f6b57506001600160a01b03851660009081526009602052604090205460ff16155b15610fc057600e54600160b01b900460ff16610fc05760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b604482015260640161068e565b600e54600160a01b900460ff16610fdc57610f208686866110e2565b610fe686866111c8565b1561109a576001600160a01b0385166000908152600a602052604090205460ff168061103757506004546001600160a01b038616600090815260076020526040902054611034908690611bfc565b11155b6110915760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b606482015260840161068e565b61109a86611245565b6110a48686611273565b80925081935050506110ba8282866005546112ec565b156110c8576110c88461135a565b6110d58686868486611520565b5060019695505050505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600790915291822054611133918490610d59565b6001600160a01b0380861660009081526007602052604080822093909355908516815220546111629083611622565b6001600160a01b0380851660008181526007602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111b69086815260200190565b60405180910390a35060019392505050565b600d546000906001600160a01b038381169116148015906111f757506002546001600160a01b03838116911614155b801561121c57506001600160a01b03831660009081526009602052604090205460ff16155b80156109da5750506001600160a01b031660009081526009602052604090205460ff1615919050565b600d546001600160a01b0390811690821603610a80576015805490600061126b83611bd0565b919050555050565b60008060008061129c866001600160a01b031660009081526009602052604090205460ff161590565b600d549091506001600160a01b03908116908616036112be57600291506112e2565b600d546001600160a01b03908116908716036112dd57600191506112e2565b600091505b9590945092505050565b30600090815260076020526040812054829084906000838211801561131057508383115b60165490915060ff161580156113235750885b801561132f5750600188115b80156113385750805b801561134d5750600e54600160a01b900460ff165b9998505050505050505050565b6016805460ff1916600117905530600090815260076020526040812054905060006113908361138b84600654611681565b611681565b604080516002808252606082018352929350600092909160208301908036833701905050905030816000815181106113ca576113ca611ba4565b6001600160a01b03928316602091820292909201810191909152600e54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611423573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114479190611b59565b8160018151811061145a5761145a611ba4565b6001600160a01b039283166020918202929092010152600e5460405163791ac94760e01b815291169063791ac947906114a0908590600090869030904290600401611c0f565b600060405180830381600087803b1580156114ba57600080fd5b505af11580156114ce573d6000803e3d6000fd5b5050600c546040514793506001600160a01b03909116915082156108fc029083906000818181858888f1935050505015801561150e573d6000803e3d6000fd5b50506016805460ff1916905550505050565b6000806000611530858588611696565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038d1660009081526007909152919091205492945090925061158991908490610d59565b6001600160a01b03808a1660009081526007602052604080822093909355908916815220546115b89082611622565b6001600160a01b0380891660008181526007602052604090819020939093559151908a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061160c908a815260200190565b60405180910390a3506001979650505050505050565b60008061162f8385611bfc565b9050838110156109da5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161068e565b600081831161169057826109da565b50919050565b6000806000846116c757600e54600160a81b900460ff166116b757836116c9565b6116c2868686611708565b6116c9565b835b600e54909150600090600160a81b900460ff1680156116e55750855b6116ef57846116fa565b6116fa878787611708565b919791965090945050505050565b6000806064841561176657600186111561173a576014546015541161172f57601054611733565b6012545b915061176b565b851561175d576013546015541161175357600f54611733565b601154915061176b565b6000915061176b565b600191505b60006117818261177b87866117db565b9061185d565b3060009081526007602052604090205490915061179e9082611622565b30600090815260076020526040902055856117c2576117bd858461185d565b6117c4565b805b90506117d0858261189f565b979650505050505050565b6000826000036117ed5750600061065e565b60006117f98385611c80565b9050826118068583611c97565b146109da5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161068e565b60006109da83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506118e1565b60006109da83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d59565b600081836119025760405162461bcd60e51b815260040161068e919061190f565b506000610d8a8486611c97565b600060208083528351808285015260005b8181101561193c57858101830151858201604001528201611920565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610a8057600080fd5b803561197d8161195d565b919050565b6000806040838503121561199557600080fd5b82356119a08161195d565b946020939093013593505050565b6000806000606084860312156119c357600080fd5b83356119ce8161195d565b925060208401356119de8161195d565b929592945050506040919091013590565b600060208284031215611a0157600080fd5b5035919050565b600060208284031215611a1a57600080fd5b81356109da8161195d565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215611a4e57600080fd5b823567ffffffffffffffff80821115611a6657600080fd5b818501915085601f830112611a7a57600080fd5b813581811115611a8c57611a8c611a25565b8060051b604051601f19603f83011681018181108582111715611ab157611ab1611a25565b604052918252848201925083810185019188831115611acf57600080fd5b938501935b82851015611af457611ae585611972565b84529385019392850192611ad4565b98975050505050505050565b60008060408385031215611b1357600080fd5b8235611b1e8161195d565b91506020830135611b2e8161195d565b809150509250929050565b60208082526006908201526510a7aba722a960d11b604082015260600190565b600060208284031215611b6b57600080fd5b81516109da8161195d565b600080600060608486031215611b8b57600080fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611be257611be2611bba565b5060010190565b8181038181111561065e5761065e611bba565b8082018082111561065e5761065e611bba565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611c5f5784516001600160a01b031683529383019391830191600101611c3a565b50506001600160a01b03969096166060850152505050608001529392505050565b808202811582820484141761065e5761065e611bba565b600082611cb457634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220fd685e33f39b2613c27f58219a192ccb6bf94b7761ba268504de87bda59e4f5464736f6c63430008130033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000085c6b34144cd2ea2043d4564ec687b8b5590cbc3

-----Decoded View---------------
Arg [0] : DuskProtocolWallet (address): 0x85C6B34144cD2eA2043D4564Ec687B8B5590CBc3

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000085c6b34144cd2ea2043d4564ec687b8b5590cbc3


Deployed Bytecode Sourcemap

5036:9927:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11026:82;;;;;;;;;;-1:-1:-1;11099:5:0;;;;;;;;;;;-1:-1:-1;;;11099:5:0;;;;11026:82;;;;11099:5;11026:82;:::i;:::-;;;;;;;;6029:31;;;;;;;;;;-1:-1:-1;6029:31:0;;;;-1:-1:-1;;;6029:31:0;;;;;;;;;732:14:1;;725:22;707:41;;695:2;680:18;6029:31:0;567:187:1;7523:192:0;;;;;;;;;;-1:-1:-1;7523:192:0;;;;;:::i;:::-;;:::i;5558:54::-;;;;;;;;;;;;;;;;;;;1500:25:1;;;1488:2;1473:18;5558:54:0;1354:177:1;11204:90:0;;;;;;;;;;-1:-1:-1;11278:12:0;;11204:90;;10584:438;;;;;;;;;;;;;:::i;:::-;;14246:350;;;;;;;;;;-1:-1:-1;14246:350:0;;;;;:::i;:::-;;:::i;7340:179::-;;;;;;;;;;;;;:::i;11910:89::-;;;;;;;;;;-1:-1:-1;11910:89:0;;;;;:::i;:::-;;:::i;2368:91::-;;;;;;;;;;-1:-1:-1;2368:91:0;;;;;:::i;:::-;2423:4;2450:5;-1:-1:-1;;;;;2439:16:0;;;2450:5;;2439:16;;2368:91;8317:82;;;;;;;;;;-1:-1:-1;8317:82:0;;5353:2;2576:36:1;;2564:2;2549:18;8317:82:0;2434:184:1;5358:61:0;;;;;;;;;;;;;;;;8920:121;;;;;;;;;;;;;:::i;5422:60::-;;;;;;;;;;;;;;;;12003:91;;;;;;;;;;-1:-1:-1;12003:91:0;;;;;:::i;:::-;;:::i;5950:31::-;;;;;;;;;;-1:-1:-1;5950:31:0;;;;-1:-1:-1;;;5950:31:0;;;;;;6920:107;;;;;;;;;;-1:-1:-1;6920:107:0;;;;;:::i;:::-;-1:-1:-1;;;;;7005:18:0;6986:7;7005:18;;;:9;:18;;;;;;;6920:107;2463:111;;;;;;;;;;;;;:::i;6836:80::-;;;;;;;;;;-1:-1:-1;6888:7:0;6907:5;-1:-1:-1;;;;;6907:5:0;6836:80;;;-1:-1:-1;;;;;2787:32:1;;;2769:51;;2757:2;2742:18;6836:80:0;2623:203:1;5852:34:0;;;;;;;;;;-1:-1:-1;5852:34:0;;;;-1:-1:-1;;;;;5852:34:0;;;12603:177;;;;;;;;;;-1:-1:-1;12603:177:0;;;;;:::i;:::-;;:::i;5889:19::-;;;;;;;;;;-1:-1:-1;5889:19:0;;;;-1:-1:-1;;;;;5889:19:0;;;14598:158;;;;;;;;;;-1:-1:-1;14598:158:0;;;;;:::i;:::-;;:::i;5984:42::-;;;;;;;;;;-1:-1:-1;5984:42:0;;;;-1:-1:-1;;;5984:42:0;;;;;;12969:91;;;;;;;;;;-1:-1:-1;12969:91:0;;;;;:::i;:::-;-1:-1:-1;;;;;13040:16:0;13025:4;13040:16;;;:13;:16;;;;;;;;;12969:91;10440:140;;;;;;;;;;-1:-1:-1;10440:140:0;;;;;:::i;:::-;-1:-1:-1;;;;;10548:19:0;;;10528:7;10548:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;10440:140;7719:182;;;;;;;;;;;;;:::i;5485:70::-;;;;;;;;;;;;;;;;5913:32;;;;;;;;;;-1:-1:-1;5913:32:0;;;;-1:-1:-1;;;;;5913:32:0;;;12784:181;;;;;;;;;;-1:-1:-1;12784:181:0;;;;;:::i;:::-;;:::i;7523:192::-;7623:10;7601:4;7611:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;7611:32:0;;;;;;;;;;:41;;;7660:37;7601:4;;7611:32;;7660:37;;;;7646:6;1500:25:1;;1488:2;1473:18;;1354:177;7660:37:0;;;;;;;;-1:-1:-1;7707:4:0;7523:192;;;;;:::o;10584:438::-;2423:4;2450:5;-1:-1:-1;;;;;2450:5:0;2334:10;2439:16;2318:38;;;;-1:-1:-1;;;2318:38:0;;;;;;;:::i;:::-;;;;;;;;;10641:6:::1;:71:::0;;-1:-1:-1;;;;;;10641:71:0::1;10669:42;10641:71:::0;;::::1;::::0;;;10740:16:::1;::::0;;-1:-1:-1;;;10740:16:0;;;;:14:::1;::::0;:16:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;10669:42;10740:16:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10722:46:0::1;;10777:4;10784:6;;;;;;;;;-1:-1:-1::0;;;;;10784:6:0::1;-1:-1:-1::0;;;;;10784:11:0::1;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10722:76;::::0;-1:-1:-1;;;;;;10722:76:0::1;::::0;;;;;;-1:-1:-1;;;;;5536:15:1;;;10722:76:0::1;::::0;::::1;5518:34:1::0;5588:15;;5568:18;;;5561:43;5453:18;;10722:76:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10715:4;:83:::0;;-1:-1:-1;;;;;;10715:83:0::1;-1:-1:-1::0;;;;;10715:83:0;;::::1;::::0;;::::1;::::0;;;-1:-1:-1;10801:21:0;;;:15:::1;:21;::::0;;;;;;;:28;;-1:-1:-1;;10801:28:0::1;-1:-1:-1::0;10801:28:0::1;::::0;;10854:4:::1;10834:26:::0;;;:11:::1;:26:::0;;;;;10869:6:::1;::::0;;;::::1;10834:43:::0;;;;;;;;-1:-1:-1;;10834:63:0;;10900:6;7005:18;;;:9;:18;;;;;;10900:6;::::1;::::0;:22:::1;::::0;10930:21:::1;::::0;10992:1:::1;10996:5:::0;;10900:118:::1;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10900:118:0;;;-1:-1:-1;;;;;5974:15:1;;;10900:118:0::1;::::0;::::1;5956:34:1::0;6006:18;;;5999:34;;;;6049:18;;;6042:34;;;6092:18;;;6085:34;;;;10996:5:0;;;::::1;6135:19:1::0;;;6128:44;11002:15:0::1;6188:19:1::0;;;6181:35;5890:19;;10900:118:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;10584:438::o:0;14246:350::-;-1:-1:-1;;;;;14365:19:0;;14352:4;14365:19;;;:11;:19;;;;;;;;14385:10;14365:31;;;;;;;;-1:-1:-1;;14365:52:0;14361:170;;14456:71;;;;;;;;;;;-1:-1:-1;;;14456:71:0;;;;;;;;-1:-1:-1;;;;;14456:19:0;;-1:-1:-1;14456:19:0;;;:11;:19;;;;;14476:10;14456:31;;;;;;;;;;:71;;14494:6;;14456:37;:71::i;:::-;-1:-1:-1;;;;;14422:19:0;;;;;;:11;:19;;;;;;;;14442:10;14422:31;;;;;;;:105;14361:170;14542:50;14566:6;14574:9;14585:6;14542:23;:50::i;:::-;14535:57;;14246:350;;;;;;:::o;7340:179::-;2423:4;2450:5;-1:-1:-1;;;;;2450:5:0;2334:10;2439:16;2318:38;;;;-1:-1:-1;;;2318:38:0;;;;;;;:::i;:::-;7433:1:::1;7409:21;:25;7401:60;;;::::0;-1:-1:-1;;;7401:60:0;;6740:2:1;7401:60:0::1;::::0;::::1;6722:21:1::0;6779:2;6759:18;;;6752:30;-1:-1:-1;;;6798:18:1;;;6791:52;6860:18;;7401:60:0::1;6538:346:1::0;7401:60:0::1;7464:51;::::0;7472:10:::1;::::0;7493:21:::1;7464:51:::0;::::1;;;::::0;::::1;::::0;;;7493:21;7472:10;7464:51;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;7340:179::o:0;11910:89::-;2423:4;2450:5;-1:-1:-1;;;;;2450:5:0;2334:10;2439:16;2318:38;;;;-1:-1:-1;;;2318:38:0;;;;;;;:::i;:::-;11975:12:::1;:20:::0;11910:89::o;8920:121::-;8983:4;2450:5;;-1:-1:-1;;;;;2450:5:0;2334:10;2439:16;2318:38;;;;-1:-1:-1;;;2318:38:0;;;;;;;:::i;:::-;-1:-1:-1;9011:12:0::1;::::0;8992:16:::1;:31:::0;9033:4:::1;8920:121:::0;:::o;12003:91::-;2423:4;2450:5;-1:-1:-1;;;;;2450:5:0;2334:10;2439:16;2318:38;;;;-1:-1:-1;;;2318:38:0;;;;;;;:::i;:::-;12069:13:::1;:21:::0;12003:91::o;2463:111::-;2423:4;2450:5;-1:-1:-1;;;;;2450:5:0;2334:10;2439:16;2318:38;;;;-1:-1:-1;;;2318:38:0;;;;;;;:::i;:::-;2528:1:::1;2512:18:::0;;-1:-1:-1;;;;;;2512:18:0::1;::::0;;2538:32:::1;::::0;2769:51:1;;;2538:32:0::1;::::0;2757:2:1;2742:18;2538:32:0::1;;;;;;;2463:111::o:0;12603:177::-;2423:4;2450:5;-1:-1:-1;;;;;2450:5:0;2334:10;2439:16;2318:38;;;;-1:-1:-1;;;2318:38:0;;;;;;;:::i;:::-;12687:6:::1;12682:95;12703:14;:21;12699:1;:25;12682:95;;;12769:4;12734:13;:32;12748:14;12763:1;12748:17;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;12734:32:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;12734:32:0;:39;;-1:-1:-1;;12734:39:0::1;::::0;::::1;;::::0;;;::::1;::::0;;12726:3;::::1;::::0;::::1;:::i;:::-;;;;12682:95;;;;12603:177:::0;:::o;14598:158::-;14681:4;14698:54;14722:10;14734:9;14745:6;14698:23;:54::i;7719:182::-;2423:4;2450:5;-1:-1:-1;;;;;2450:5:0;2334:10;2439:16;2318:38;;;;-1:-1:-1;;;2318:38:0;;;;;;;:::i;:::-;7783:11:::1;::::0;-1:-1:-1;;;7783:11:0;::::1;;;7782:12;7774:47;;;::::0;-1:-1:-1;;;7774:47:0;;7495:2:1;7774:47:0::1;::::0;::::1;7477:21:1::0;7534:2;7514:18;;;7507:30;7573:25;7553:18;;;7546:53;7616:18;;7774:47:0::1;7293:347:1::0;7774:47:0::1;7826:11;:18:::0;;-1:-1:-1;;;;7879:18:0;-1:-1:-1;;;7879:18:0;;;7719:182::o;12784:181::-;2423:4;2450:5;-1:-1:-1;;;;;2450:5:0;2334:10;2439:16;2318:38;;;;-1:-1:-1;;;2318:38:0;;;;;;;:::i;:::-;12869:6:::1;12864:98;12885:15;:22;12881:1;:26;12864:98;;;12953:5;12917:13;:33;12931:15;12947:1;12931:18;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;12917:33:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;12917:33:0;:41;;-1:-1:-1;;12917:41:0::1;::::0;::::1;;::::0;;;::::1;::::0;;12909:3;::::1;::::0;::::1;:::i;:::-;;;;12864:98;;619:168:::0;711:7;739:12;731:6;;;;723:29;;;;-1:-1:-1;;;723:29:0;;;;;;;;:::i;:::-;-1:-1:-1;755:9:0;767:5;771:1;767;:5;:::i;:::-;755:17;619:168;-1:-1:-1;;;;;619:168:0:o;13064:1177::-;13172:4;-1:-1:-1;;;;;13191:20:0;;13183:70;;;;-1:-1:-1;;;13183:70:0;;7980:2:1;13183:70:0;;;7962:21:1;8019:2;7999:18;;;7992:30;8058:34;8038:18;;;8031:62;-1:-1:-1;;;8109:18:1;;;8102:35;8154:19;;13183:70:0;7778:401:1;13183:70:0;-1:-1:-1;;;;;13264:23:0;;13256:71;;;;-1:-1:-1;;;13256:71:0;;8386:2:1;13256:71:0;;;8368:21:1;8425:2;8405:18;;;8398:30;8464:34;8444:18;;;8437:62;-1:-1:-1;;;8515:18:1;;;8508:33;8558:19;;13256:71:0;8184:399:1;13256:71:0;13347:1;13338:6;:10;13330:64;;;;-1:-1:-1;;;13330:64:0;;8790:2:1;13330:64:0;;;8772:21:1;8829:2;8809:18;;;8802:30;8868:34;8848:18;;;8841:62;-1:-1:-1;;;8919:18:1;;;8912:39;8968:19;;13330:64:0;8588:405:1;13330:64:0;-1:-1:-1;;;;;13440:21:0;;13399:12;13440:21;;;:13;:21;;;;;;13399:12;;13440:21;;13439:22;:51;;;;-1:-1:-1;;;;;;13466:24:0;;;;;;:13;:24;;;;;;;;13465:25;13439:51;13431:60;;;;;;13500:6;;;;13496:67;;;13518:41;13533:6;13541:9;13552:6;13518:14;:41::i;:::-;13511:48;;;;;;13496:67;-1:-1:-1;;;;;13571:19:0;;;;;;:11;:19;;;;;;;;13570:20;:47;;;;-1:-1:-1;;;;;;13595:22:0;;;;;;:11;:22;;;;;;;;13594:23;13570:47;13567:101;;;13629:11;;-1:-1:-1;;;13629:11:0;;;;13621:43;;;;-1:-1:-1;;;13621:43:0;;9200:2:1;13621:43:0;;;9182:21:1;9239:2;9219:18;;;9212:30;-1:-1:-1;;;9258:18:1;;;9251:50;9318:18;;13621:43:0;8998:344:1;13621:43:0;13676:11;;-1:-1:-1;;;13676:11:0;;;;13672:72;;13699:41;13714:6;13722:9;13733:6;13699:14;:41::i;13672:72::-;13750:40;13772:6;13780:9;13750:21;:40::i;:::-;13746:217;;;-1:-1:-1;;;;;13805:26:0;;;;;;:15;:26;;;;;;;;;:80;;-1:-1:-1;13869:16:0;;-1:-1:-1;;;;;13836:20:0;;;;;;:9;:20;;;;;;:29;;13859:6;;13836:29;:::i;:::-;:49;;13805:80;13795:135;;;;-1:-1:-1;;;13795:135:0;;9679:2:1;13795:135:0;;;9661:21:1;9718:2;9698:18;;;9691:30;9757:34;9737:18;;;9730:62;-1:-1:-1;;;9808:18:1;;;9801:35;9853:19;;13795:135:0;9477:401:1;13795:135:0;13935:24;13952:6;13935:16;:24::i;:::-;13988:44;14014:6;14022:9;13988:25;:44::i;:::-;13967:65;;;;;;;;14041:79;14066:7;14075;14084:6;14092:27;;14041:24;:79::i;:::-;14037:119;;;14125:27;14145:6;14125:19;:27::i;:::-;14160:63;14179:6;14187:9;14198:6;14206:7;14215;14160:18;:63::i;:::-;-1:-1:-1;14233:4:0;;13064:1177;-1:-1:-1;;;;;;13064:1177:0:o;7031:305::-;7159:58;;;;;;;;;;;-1:-1:-1;;;7159:58:0;;;;;;;;-1:-1:-1;;;;;7159:17:0;;7130:4;7159:17;;;:9;:17;;;;;;;:58;;7183:6;;7159:21;:58::i;:::-;-1:-1:-1;;;;;7139:17:0;;;;;;;:9;:17;;;;;;:78;;;;7243:20;;;;;;;:32;;7268:6;7243:24;:32::i;:::-;-1:-1:-1;;;;;7220:20:0;;;;;;;:9;:20;;;;;;;:55;;;;7283:35;;;;;;;;;;7311:6;1500:25:1;;1488:2;1473:18;;1354:177;7283:35:0;;;;;;;;-1:-1:-1;7328:4:0;7031:305;;;;;:::o;12098:202::-;12217:4;;12187;;-1:-1:-1;;;;;12204:17:0;;;12217:4;;12204:17;;;;:39;;-1:-1:-1;12239:4:0;;-1:-1:-1;;;;;12226:17:0;;;12239:4;;12226:17;;12204:39;:64;;;;-1:-1:-1;;;;;;12249:19:0;;;;;;:11;:19;;;;;;;;12248:20;12204:64;:92;;;;-1:-1:-1;;;;;;;12274:22:0;;;;;:11;:22;;;;;;;;12273:23;;12098:202;-1:-1:-1;12098:202:0:o;14760:95::-;14827:4;;-1:-1:-1;;;;;14827:4:0;;;14817:14;;;;14814:38;;14836:10;:12;;;:10;:12;;;:::i;:::-;;;;;;14760:95;:::o;12302:297::-;12386:4;12392;12403:13;12423:15;12441:16;12452:4;-1:-1:-1;;;;;14935:19:0;14918:4;14935:19;;;:11;:19;;;;;;;;14934:20;;14859:99;12441:16;12471:4;;12423:34;;-1:-1:-1;;;;;;12471:4:0;;;12465:10;;;;12462:102;;12491:1;12480:12;;12462:102;;;12514:4;;-1:-1:-1;;;;;12514:4:0;;;12506:12;;;;12502:62;;12534:1;12523:12;;12502:62;;;12559:1;12548:12;;12502:62;12574:10;12586:8;;-1:-1:-1;12302:297:0;-1:-1:-1;;;12302:297:0:o;11298:518::-;11584:4;11429;7005:18;;;:9;:18;;;;;;11472:6;;11515:7;;11595:16;11647:21;11614:30;:54;:105;;;;;11698:21;11672:23;:47;11614:105;11733:6;;11595:124;;-1:-1:-1;11733:6:0;;11732:7;:25;;;;;11744:13;11732:25;:48;;;;;11779:1;11763:13;:17;11732:48;:64;;;;;11785:11;11732:64;:80;;;;-1:-1:-1;11801:11:0;;-1:-1:-1;;;11801:11:0;;;;11732:80;11724:88;11298:518;-1:-1:-1;;;;;;;;;11298:518:0:o;8403:513::-;6341:6;:13;;-1:-1:-1;;6341:13:0;6350:4;6341:13;;;8512:4:::1;-1:-1:-1::0;7005:18:0;;;:9;:18;;;;;;8471:47:::1;;8521:20;8544:43;8548:6;8556:30;8560:12;8574:11;;8556:3;:30::i;:::-;8544:3;:43::i;:::-;8616:16;::::0;;8630:1:::1;8616:16:::0;;;;;::::1;::::0;;8521:66;;-1:-1:-1;8592:21:0::1;::::0;8616:16;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8616:16:0::1;8592:40;;8653:4;8635;8640:1;8635:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8635:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;8671:6:::1;::::0;:13:::1;::::0;;-1:-1:-1;;;8671:13:0;;;;:6;;;::::1;::::0;:11:::1;::::0;:13:::1;::::0;;::::1;::::0;8635:7;;8671:13;;;;;:6;:13:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8661:4;8666:1;8661:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8661:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;8689:6:::1;::::0;:120:::1;::::0;-1:-1:-1;;;8689:120:0;;:6;::::1;::::0;:57:::1;::::0;:120:::1;::::0;8749:12;;8689:6:::1;::::0;8768:4;;8783::::1;::::0;8791:15:::1;::::0;8689:120:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;8869:19:0::1;::::0;8861:51:::1;::::0;8837:21:::1;::::0;-1:-1:-1;;;;;;8869:19:0;;::::1;::::0;-1:-1:-1;8861:51:0;::::1;;;::::0;8837:21;;8814:20:::1;8861:51:::0;8814:20;8861:51;8837:21;8869:19;8861:51;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;6361:6:0;:14;;-1:-1:-1;;6361:14:0;;;-1:-1:-1;;;;8403:513:0:o;9945:491::-;10077:4;10088:20;10112:23;10174:47;10197:6;10205:7;10214:6;10174:22;:47::i;:::-;10244:64;;;;;;;;;;;-1:-1:-1;;;10244:64:0;;;;;;;;-1:-1:-1;;;;;10244:17:0;;-1:-1:-1;10244:17:0;;;:9;:17;;;;;;;;10140:81;;-1:-1:-1;10140:81:0;;-1:-1:-1;10244:64:0;;:17;10140:81;;10244:21;:64::i;:::-;-1:-1:-1;;;;;10224:17:0;;;;;;;:9;:17;;;;;;:84;;;;10334:20;;;;;;;:41;;10359:15;10334:24;:41::i;:::-;-1:-1:-1;;;;;10311:20:0;;;;;;;:9;:20;;;;;;;:64;;;;10383:35;;;;;;;;;;10411:6;1500:25:1;;1488:2;1473:18;;1354:177;10383:35:0;;;;;;;;-1:-1:-1;10428:4:0;;9945:491;-1:-1:-1;;;;;;;9945:491:0:o;336:151::-;394:7;;418:5;422:1;418;:5;:::i;:::-;406:17;;439:1;434;:6;;426:46;;;;-1:-1:-1;;;426:46:0;;11070:2:1;426:46:0;;;11052:21:1;11109:2;11089:18;;;11082:30;11148:29;11128:18;;;11121:57;11195:18;;426:46:0;10868:351:1;11112:88:0;11169:7;11190:1;11188;:3;11187:9;;11195:1;11187:9;;;-1:-1:-1;11193:1:0;11112:88;-1:-1:-1;11112:88:0:o;7905:408::-;7998:7;8007;8019:15;8037:7;:116;;8058:22;;-1:-1:-1;;;8058:22:0;;;;:95;;8146:7;8037:116;;8058:95;8084:57;8116:6;8124:7;8133;8084:31;:57::i;:::-;8037:116;;;8048:7;8037:116;8176:22;;8019:134;;-1:-1:-1;8158:15:0;;-1:-1:-1;;;8176:22:0;;;;:33;;;;;8202:7;8176:33;:105;;8274:7;8176:105;;;8213:57;8245:6;8253:7;8262;8213:31;:57::i;:::-;8292:7;;;;-1:-1:-1;7905:408:0;;-1:-1:-1;;;;;7905:408:0:o;9045:859::-;9175:7;;9258:3;9266:353;;;;9320:1;9298:19;:23;9295:282;;;9361:16;;9350:10;;:27;:58;;9396:12;;9350:58;;;9380:13;;9350:58;9326:83;;9266:353;;9295:282;9425:23;;9422:152;;9488:15;;9477:10;;:26;:55;;9521:11;;9477:55;;;9506:12;;9453:80;;9266:353;;9422:152;9569:1;9546:24;;9266:353;;;9614:1;9591:24;;9266:353;9623:18;9644:67;9682:28;9644:33;:7;9656:20;9644:11;:33::i;:::-;:37;;:67::i;:::-;9759:4;9741:24;;;;:9;:24;;;;;;9623:88;;-1:-1:-1;9741:40:0;;9623:88;9741:28;:40::i;:::-;9732:4;9714:24;;;;:9;:24;;;;;:67;9797:19;:68;;9832:33;:7;9844:20;9832:11;:33::i;:::-;9797:68;;;9819:10;9797:68;9784:81;-1:-1:-1;9877:23:0;:7;9784:81;9877:11;:23::i;:::-;9870:30;9045:859;-1:-1:-1;;;;;;;9045:859:0:o;791:190::-;849:7;865:1;870;865:6;861:27;;-1:-1:-1;883:1:0;876:8;;861:27;890:9;902:5;906:1;902;:5;:::i;:::-;890:17;-1:-1:-1;927:1:0;918:5;922:1;890:17;918:5;:::i;:::-;:10;910:56;;;;-1:-1:-1;;;910:56:0;;11821:2:1;910:56:0;;;11803:21:1;11860:2;11840:18;;;11833:30;11899:34;11879:18;;;11872:62;-1:-1:-1;;;11950:18:1;;;11943:31;11991:19;;910:56:0;11619:397:1;985:120:0;1043:7;1062:39;1066:1;1069;1062:39;;;;;;;;;;;;;;;;;:3;:39::i;491:124::-;549:7;568:43;572:1;575;568:43;;;;;;;;;;;;;;;;;:3;:43::i;1109:167::-;1201:7;1228:12;1221:5;1213:28;;;;-1:-1:-1;;;1213:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1244:9:0;1256:5;1260:1;1256;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;759:131::-;-1:-1:-1;;;;;834:31:1;;824:42;;814:70;;880:1;877;870:12;895:134;963:20;;992:31;963:20;992:31;:::i;:::-;895:134;;;:::o;1034:315::-;1102:6;1110;1163:2;1151:9;1142:7;1138:23;1134:32;1131:52;;;1179:1;1176;1169:12;1131:52;1218:9;1205:23;1237:31;1262:5;1237:31;:::i;:::-;1287:5;1339:2;1324:18;;;;1311:32;;-1:-1:-1;;;1034:315:1:o;1536:456::-;1613:6;1621;1629;1682:2;1670:9;1661:7;1657:23;1653:32;1650:52;;;1698:1;1695;1688:12;1650:52;1737:9;1724:23;1756:31;1781:5;1756:31;:::i;:::-;1806:5;-1:-1:-1;1863:2:1;1848:18;;1835:32;1876:33;1835:32;1876:33;:::i;:::-;1536:456;;1928:7;;-1:-1:-1;;;1982:2:1;1967:18;;;;1954:32;;1536:456::o;1997:180::-;2056:6;2109:2;2097:9;2088:7;2084:23;2080:32;2077:52;;;2125:1;2122;2115:12;2077:52;-1:-1:-1;2148:23:1;;1997:180;-1:-1:-1;1997:180:1:o;2182:247::-;2241:6;2294:2;2282:9;2273:7;2269:23;2265:32;2262:52;;;2310:1;2307;2300:12;2262:52;2349:9;2336:23;2368:31;2393:5;2368:31;:::i;2831:127::-;2892:10;2887:3;2883:20;2880:1;2873:31;2923:4;2920:1;2913:15;2947:4;2944:1;2937:15;2963:1121;3047:6;3078:2;3121;3109:9;3100:7;3096:23;3092:32;3089:52;;;3137:1;3134;3127:12;3089:52;3177:9;3164:23;3206:18;3247:2;3239:6;3236:14;3233:34;;;3263:1;3260;3253:12;3233:34;3301:6;3290:9;3286:22;3276:32;;3346:7;3339:4;3335:2;3331:13;3327:27;3317:55;;3368:1;3365;3358:12;3317:55;3404:2;3391:16;3426:2;3422;3419:10;3416:36;;;3432:18;;:::i;:::-;3478:2;3475:1;3471:10;3510:2;3504:9;3573:2;3569:7;3564:2;3560;3556:11;3552:25;3544:6;3540:38;3628:6;3616:10;3613:22;3608:2;3596:10;3593:18;3590:46;3587:72;;;3639:18;;:::i;:::-;3675:2;3668:22;3725:18;;;3759:15;;;;-1:-1:-1;3801:11:1;;;3797:20;;;3829:19;;;3826:39;;;3861:1;3858;3851:12;3826:39;3885:11;;;;3905:148;3921:6;3916:3;3913:15;3905:148;;;3987:23;4006:3;3987:23;:::i;:::-;3975:36;;3938:12;;;;4031;;;;3905:148;;;4072:6;2963:1121;-1:-1:-1;;;;;;;;2963:1121:1:o;4089:388::-;4157:6;4165;4218:2;4206:9;4197:7;4193:23;4189:32;4186:52;;;4234:1;4231;4224:12;4186:52;4273:9;4260:23;4292:31;4317:5;4292:31;:::i;:::-;4342:5;-1:-1:-1;4399:2:1;4384:18;;4371:32;4412:33;4371:32;4412:33;:::i;:::-;4464:7;4454:17;;;4089:388;;;;;:::o;4716:329::-;4918:2;4900:21;;;4957:1;4937:18;;;4930:29;-1:-1:-1;;;4990:2:1;4975:18;;4968:36;5036:2;5021:18;;4716:329::o;5050:251::-;5120:6;5173:2;5161:9;5152:7;5148:23;5144:32;5141:52;;;5189:1;5186;5179:12;5141:52;5221:9;5215:16;5240:31;5265:5;5240:31;:::i;6227:306::-;6315:6;6323;6331;6384:2;6372:9;6363:7;6359:23;6355:32;6352:52;;;6400:1;6397;6390:12;6352:52;6429:9;6423:16;6413:26;;6479:2;6468:9;6464:18;6458:25;6448:35;;6523:2;6512:9;6508:18;6502:25;6492:35;;6227:306;;;;;:::o;6889:127::-;6950:10;6945:3;6941:20;6938:1;6931:31;6981:4;6978:1;6971:15;7005:4;7002:1;6995:15;7021:127;7082:10;7077:3;7073:20;7070:1;7063:31;7113:4;7110:1;7103:15;7137:4;7134:1;7127:15;7153:135;7192:3;7213:17;;;7210:43;;7233:18;;:::i;:::-;-1:-1:-1;7280:1:1;7269:13;;7153:135::o;7645:128::-;7712:9;;;7733:11;;;7730:37;;;7747:18;;:::i;9347:125::-;9412:9;;;9433:10;;;9430:36;;;9446:18;;:::i;9883:980::-;10145:4;10193:3;10182:9;10178:19;10224:6;10213:9;10206:25;10250:2;10288:6;10283:2;10272:9;10268:18;10261:34;10331:3;10326:2;10315:9;10311:18;10304:31;10355:6;10390;10384:13;10421:6;10413;10406:22;10459:3;10448:9;10444:19;10437:26;;10498:2;10490:6;10486:15;10472:29;;10519:1;10529:195;10543:6;10540:1;10537:13;10529:195;;;10608:13;;-1:-1:-1;;;;;10604:39:1;10592:52;;10699:15;;;;10664:12;;;;10640:1;10558:9;10529:195;;;-1:-1:-1;;;;;;;10780:32:1;;;;10775:2;10760:18;;10753:60;-1:-1:-1;;;10844:3:1;10829:19;10822:35;10741:3;9883:980;-1:-1:-1;;;9883:980:1:o;11224:168::-;11297:9;;;11328;;11345:15;;;11339:22;;11325:37;11315:71;;11366:18;;:::i;11397:217::-;11437:1;11463;11453:132;;11507:10;11502:3;11498:20;11495:1;11488:31;11542:4;11539:1;11532:15;11570:4;11567:1;11560:15;11453:132;-1:-1:-1;11599:9:1;;11397:217::o

Swarm Source

ipfs://fd685e33f39b2613c27f58219a192ccb6bf94b7761ba268504de87bda59e4f54

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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.