Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
DoctorCoin
Compiler Version
v0.8.4+commit.c7e474f2
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2021-07-28
*/
// SPDX-License-Identifier: Unlicensed
pragma solidity ^0.8.4;
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;
address private _previousOwner;
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);
}
}
contract DoctorCoin is Context, IERC20, Ownable {
using SafeMath for uint256;
string private constant _name = "DoctorCoin";
string private constant _symbol = "DOCT";
uint8 private constant _decimals = 9;
mapping(address => uint256) private _rOwned;
mapping(address => uint256) private _tOwned;
mapping(address => mapping(address => uint256)) private _allowances;
mapping(address => bool) private _isExcludedFromFee;
uint256 private constant MAX = ~uint256(0);
uint256 private constant _tTotal = 421*10**7 * (10**9);
uint256 private _rTotal = (MAX - (MAX % _tTotal));
uint256 private _tFeeTotal;
uint256 private _taxFee = 2;
uint256 private _charityFee = 3;
address payable private _charityAddress;
constructor(address payable addr1) {
_charityAddress = addr1;
_rOwned[_msgSender()] = _rTotal;
_isExcludedFromFee[owner()] = true;
_isExcludedFromFee[address(this)] = true;
_isExcludedFromFee[_charityAddress] = true;
emit Transfer(address(0), _msgSender(), _tTotal);
}
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 _tTotal;
}
function balanceOf(address account) public view override returns (uint256) {
return tokenFromReflection(_rOwned[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);
_approve(
sender,
_msgSender(),
_allowances[sender][_msgSender()].sub(
amount,
"ERC20: transfer amount exceeds allowance"
)
);
return true;
}
function tokenFromReflection(uint256 rAmount)
private
view
returns (uint256)
{
require(
rAmount <= _rTotal,
"Amount must be less than total reflections"
);
uint256 currentRate = _getRate();
return rAmount.div(currentRate);
}
function removeAllFee() private {
if (_taxFee == 0 && _charityFee == 0) return;
_taxFee = 0;
_charityFee = 0;
}
function restoreAllFee() private {
_taxFee = 2;
_charityFee = 3;
}
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 from,
address to,
uint256 amount
) private {
require(from != address(0), "ERC20: transfer from the zero address");
require(to != address(0), "ERC20: transfer to the zero address");
require(amount > 0, "Transfer amount must be greater than zero");
bool takeFee = true;
if (_isExcludedFromFee[from] || _isExcludedFromFee[to]) {
takeFee = false;
}
_tokenTransfer(from, to, amount, takeFee);
}
function _tokenTransfer(
address sender,
address recipient,
uint256 amount,
bool takeFee
) private {
if (!takeFee) removeAllFee();
_transferStandard(sender, recipient, amount);
if (!takeFee) restoreAllFee();
}
function _transferStandard(
address sender,
address recipient,
uint256 tAmount
) private {
(
uint256 rAmount,
uint256 rTransferAmount,
uint256 rFee,
uint256 tTransferAmount,
uint256 tFee,
uint256 tCharity
) = _getValues(tAmount);
_rOwned[sender] = _rOwned[sender].sub(rAmount);
_rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
_takeCharity(tCharity);
_reflectFee(rFee, tFee);
emit Transfer(sender, recipient, tTransferAmount);
}
function _takeCharity(uint256 tCharity) private {
uint256 currentRate = _getRate();
uint256 rCharity = tCharity.mul(currentRate);
_rOwned[_charityAddress] = _rOwned[_charityAddress].add(rCharity);
}
function _reflectFee(uint256 rFee, uint256 tFee) private {
_rTotal = _rTotal.sub(rFee);
_tFeeTotal = _tFeeTotal.add(tFee);
}
receive() external payable {}
function _getValues(uint256 tAmount)
private
view
returns (
uint256,
uint256,
uint256,
uint256,
uint256,
uint256
)
{
(uint256 tTransferAmount, uint256 tFee, uint256 tCharity) =
_getTValues(tAmount, _taxFee, _charityFee);
uint256 currentRate = _getRate();
(uint256 rAmount, uint256 rTransferAmount, uint256 rFee) =
_getRValues(tAmount, tFee, tCharity, currentRate);
return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tCharity);
}
function _getTValues(
uint256 tAmount,
uint256 taxFee,
uint256 CharityFee
)
private
pure
returns (
uint256,
uint256,
uint256
)
{
uint256 tFee = tAmount.mul(taxFee).div(100);
uint256 tCharity = tAmount.mul(CharityFee).div(100);
uint256 tTransferAmount = tAmount.sub(tFee).sub(tCharity);
return (tTransferAmount, tFee, tCharity);
}
function _getRValues(
uint256 tAmount,
uint256 tFee,
uint256 tCharity,
uint256 currentRate
)
private
pure
returns (
uint256,
uint256,
uint256
)
{
uint256 rAmount = tAmount.mul(currentRate);
uint256 rFee = tFee.mul(currentRate);
uint256 rCharity = tCharity.mul(currentRate);
uint256 rTransferAmount = rAmount.sub(rFee).sub(rCharity);
return (rAmount, rTransferAmount, rFee);
}
function _getRate() private view returns (uint256) {
(uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
return rSupply.div(tSupply);
}
function _getCurrentSupply() private view returns (uint256, uint256) {
uint256 rSupply = _rTotal;
uint256 tSupply = _tTotal;
if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
return (rSupply, tSupply);
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address payable","name":"addr1","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":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":[{"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":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","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":"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
6080604052610018673a6cecb1c8650000600019610219565b610024906000196101f6565b6006556002600855600360095534801561003d57600080fd5b506040516200103c3803806200103c83398101604081905261005e916101c8565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600a80546001600160a01b0319166001600160a01b038316179055600654600260006100c83390565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506001600560006101006101b960201b60201c565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526005909352818320805485166001908117909155600a5490911683529120805490921617905561015e3390565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef673a6cecb1c86500006040516101ab91815260200190565b60405180910390a350610239565b6000546001600160a01b031690565b6000602082840312156101d9578081fd5b81516001600160a01b03811681146101ef578182fd5b9392505050565b60008282101561021457634e487b7160e01b81526011600452602481fd5b500390565b60008261023457634e487b7160e01b81526012600452602481fd5b500690565b610df380620002496000396000f3fe6080604052600436106100a05760003560e01c806370a082311161006457806370a0823114610182578063715018a6146101a25780638da5cb5b146101b957806395d89b41146101e1578063a9059cbb1461020e578063dd62ed3e1461022e57600080fd5b806306fdde03146100ac578063095ea7b3146100f157806318160ddd1461012157806323b872dd14610146578063313ce5671461016657600080fd5b366100a757005b600080fd5b3480156100b857600080fd5b5060408051808201909152600a8152692237b1ba37b921b7b4b760b11b60208201525b6040516100e89190610cbe565b60405180910390f35b3480156100fd57600080fd5b5061011161010c366004610c95565b610274565b60405190151581526020016100e8565b34801561012d57600080fd5b50673a6cecb1c86500005b6040519081526020016100e8565b34801561015257600080fd5b50610111610161366004610c5a565b61028b565b34801561017257600080fd5b50604051600981526020016100e8565b34801561018e57600080fd5b5061013861019d366004610c0e565b6102f4565b3480156101ae57600080fd5b506101b7610316565b005b3480156101c557600080fd5b506000546040516001600160a01b0390911681526020016100e8565b3480156101ed57600080fd5b506040805180820190915260048152631113d0d560e21b60208201526100db565b34801561021a57600080fd5b50610111610229366004610c95565b6103bf565b34801561023a57600080fd5b50610138610249366004610c28565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b60006102813384846103cc565b5060015b92915050565b60006102988484846104f0565b6102ea84336102e585604051806060016040528060288152602001610d96602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610675565b6103cc565b5060019392505050565b6001600160a01b038116600090815260026020526040812054610285906106af565b6000546001600160a01b031633146103755760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60006102813384846104f0565b6001600160a01b03831661042e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161036c565b6001600160a01b03821661048f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161036c565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166105545760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161036c565b6001600160a01b0382166105b65760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161036c565b600081116106185760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161036c565b6001600160a01b03831660009081526005602052604090205460019060ff168061065a57506001600160a01b03831660009081526005602052604090205460ff165b15610663575060005b61066f84848484610733565b50505050565b600081848411156106995760405162461bcd60e51b815260040161036c9190610cbe565b5060006106a68486610d68565b95945050505050565b60006006548211156107165760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b606482015260840161036c565b600061072061075f565b905061072c8382610782565b9392505050565b80610740576107406107c4565b61074b8484846107e7565b8061066f5761066f60026008556003600955565b600080600061076c6108de565b909250905061077b8282610782565b9250505090565b600061072c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061091e565b6008541580156107d45750600954155b156107db57565b60006008819055600955565b6000806000806000806107f98761094c565b6001600160a01b038f16600090815260026020526040902054959b5093995091975095509350915061082b90876109a9565b6001600160a01b03808b1660009081526002602052604080822093909355908a168152205461085a90866109eb565b6001600160a01b03891660009081526002602052604090205561087c81610a4a565b6108868483610aaa565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516108cb91815260200190565b60405180910390a3505050505050505050565b6006546000908190673a6cecb1c86500006108f98282610782565b82101561091557505060065492673a6cecb1c865000092509050565b90939092509050565b6000818361093f5760405162461bcd60e51b815260040161036c9190610cbe565b5060006106a68486610d29565b60008060008060008060008060006109698a600854600954610ace565b925092509250600061097961075f565b9050600080600061098c8e878787610b23565b919e509c509a509598509396509194505050505091939550919395565b600061072c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610675565b6000806109f88385610d11565b90508381101561072c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161036c565b6000610a5461075f565b90506000610a628383610b73565b600a546001600160a01b0316600090815260026020526040902054909150610a8a90826109eb565b600a546001600160a01b0316600090815260026020526040902055505050565b600654610ab790836109a9565b600655600754610ac790826109eb565b6007555050565b6000808080610ae86064610ae28989610b73565b90610782565b90506000610afb6064610ae28a89610b73565b90506000610b1382610b0d8b866109a9565b906109a9565b9992985090965090945050505050565b6000808080610b328886610b73565b90506000610b408887610b73565b90506000610b4e8888610b73565b90506000610b6082610b0d86866109a9565b939b939a50919850919650505050505050565b600082610b8257506000610285565b6000610b8e8385610d49565b905082610b9b8583610d29565b1461072c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161036c565b80356001600160a01b0381168114610c0957600080fd5b919050565b600060208284031215610c1f578081fd5b61072c82610bf2565b60008060408385031215610c3a578081fd5b610c4383610bf2565b9150610c5160208401610bf2565b90509250929050565b600080600060608486031215610c6e578081fd5b610c7784610bf2565b9250610c8560208501610bf2565b9150604084013590509250925092565b60008060408385031215610ca7578182fd5b610cb083610bf2565b946020939093013593505050565b6000602080835283518082850152825b81811015610cea57858101830151858201604001528201610cce565b81811115610cfb5783604083870101525b50601f01601f1916929092016040019392505050565b60008219821115610d2457610d24610d7f565b500190565b600082610d4457634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615610d6357610d63610d7f565b500290565b600082821015610d7a57610d7a610d7f565b500390565b634e487b7160e01b600052601160045260246000fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212209a245e9ebe06bec9de40e447d529a05c59c90d2b3bee7b7ef932f018f1e0e51564736f6c63430008040033000000000000000000000000b7067734dba4263047045b2835e058252fcffc33
Deployed Bytecode
0x6080604052600436106100a05760003560e01c806370a082311161006457806370a0823114610182578063715018a6146101a25780638da5cb5b146101b957806395d89b41146101e1578063a9059cbb1461020e578063dd62ed3e1461022e57600080fd5b806306fdde03146100ac578063095ea7b3146100f157806318160ddd1461012157806323b872dd14610146578063313ce5671461016657600080fd5b366100a757005b600080fd5b3480156100b857600080fd5b5060408051808201909152600a8152692237b1ba37b921b7b4b760b11b60208201525b6040516100e89190610cbe565b60405180910390f35b3480156100fd57600080fd5b5061011161010c366004610c95565b610274565b60405190151581526020016100e8565b34801561012d57600080fd5b50673a6cecb1c86500005b6040519081526020016100e8565b34801561015257600080fd5b50610111610161366004610c5a565b61028b565b34801561017257600080fd5b50604051600981526020016100e8565b34801561018e57600080fd5b5061013861019d366004610c0e565b6102f4565b3480156101ae57600080fd5b506101b7610316565b005b3480156101c557600080fd5b506000546040516001600160a01b0390911681526020016100e8565b3480156101ed57600080fd5b506040805180820190915260048152631113d0d560e21b60208201526100db565b34801561021a57600080fd5b50610111610229366004610c95565b6103bf565b34801561023a57600080fd5b50610138610249366004610c28565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b60006102813384846103cc565b5060015b92915050565b60006102988484846104f0565b6102ea84336102e585604051806060016040528060288152602001610d96602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610675565b6103cc565b5060019392505050565b6001600160a01b038116600090815260026020526040812054610285906106af565b6000546001600160a01b031633146103755760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60006102813384846104f0565b6001600160a01b03831661042e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161036c565b6001600160a01b03821661048f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161036c565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166105545760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161036c565b6001600160a01b0382166105b65760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161036c565b600081116106185760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161036c565b6001600160a01b03831660009081526005602052604090205460019060ff168061065a57506001600160a01b03831660009081526005602052604090205460ff165b15610663575060005b61066f84848484610733565b50505050565b600081848411156106995760405162461bcd60e51b815260040161036c9190610cbe565b5060006106a68486610d68565b95945050505050565b60006006548211156107165760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b606482015260840161036c565b600061072061075f565b905061072c8382610782565b9392505050565b80610740576107406107c4565b61074b8484846107e7565b8061066f5761066f60026008556003600955565b600080600061076c6108de565b909250905061077b8282610782565b9250505090565b600061072c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061091e565b6008541580156107d45750600954155b156107db57565b60006008819055600955565b6000806000806000806107f98761094c565b6001600160a01b038f16600090815260026020526040902054959b5093995091975095509350915061082b90876109a9565b6001600160a01b03808b1660009081526002602052604080822093909355908a168152205461085a90866109eb565b6001600160a01b03891660009081526002602052604090205561087c81610a4a565b6108868483610aaa565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516108cb91815260200190565b60405180910390a3505050505050505050565b6006546000908190673a6cecb1c86500006108f98282610782565b82101561091557505060065492673a6cecb1c865000092509050565b90939092509050565b6000818361093f5760405162461bcd60e51b815260040161036c9190610cbe565b5060006106a68486610d29565b60008060008060008060008060006109698a600854600954610ace565b925092509250600061097961075f565b9050600080600061098c8e878787610b23565b919e509c509a509598509396509194505050505091939550919395565b600061072c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610675565b6000806109f88385610d11565b90508381101561072c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161036c565b6000610a5461075f565b90506000610a628383610b73565b600a546001600160a01b0316600090815260026020526040902054909150610a8a90826109eb565b600a546001600160a01b0316600090815260026020526040902055505050565b600654610ab790836109a9565b600655600754610ac790826109eb565b6007555050565b6000808080610ae86064610ae28989610b73565b90610782565b90506000610afb6064610ae28a89610b73565b90506000610b1382610b0d8b866109a9565b906109a9565b9992985090965090945050505050565b6000808080610b328886610b73565b90506000610b408887610b73565b90506000610b4e8888610b73565b90506000610b6082610b0d86866109a9565b939b939a50919850919650505050505050565b600082610b8257506000610285565b6000610b8e8385610d49565b905082610b9b8583610d29565b1461072c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161036c565b80356001600160a01b0381168114610c0957600080fd5b919050565b600060208284031215610c1f578081fd5b61072c82610bf2565b60008060408385031215610c3a578081fd5b610c4383610bf2565b9150610c5160208401610bf2565b90509250929050565b600080600060608486031215610c6e578081fd5b610c7784610bf2565b9250610c8560208501610bf2565b9150604084013590509250925092565b60008060408385031215610ca7578182fd5b610cb083610bf2565b946020939093013593505050565b6000602080835283518082850152825b81811015610cea57858101830151858201604001528201610cce565b81811115610cfb5783604083870101525b50601f01601f1916929092016040019392505050565b60008219821115610d2457610d24610d7f565b500190565b600082610d4457634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615610d6357610d63610d7f565b500290565b600082821015610d7a57610d7a610d7f565b500390565b634e487b7160e01b600052601160045260246000fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212209a245e9ebe06bec9de40e447d529a05c59c90d2b3bee7b7ef932f018f1e0e51564736f6c63430008040033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000b7067734dba4263047045b2835e058252fcffc33
-----Decoded View---------------
Arg [0] : addr1 (address): 0xB7067734Dba4263047045B2835E058252FcFFc33
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000b7067734dba4263047045b2835e058252fcffc33
Deployed Bytecode Sourcemap
2968:7660:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4089:83;;;;;;;;;;-1:-1:-1;4159:5:0;;;;;;;;;;;;-1:-1:-1;;;4159:5:0;;;;4089:83;;;;;;;:::i;:::-;;;;;;;;5014:193;;;;;;;;;;-1:-1:-1;5014:193:0;;;;;:::i;:::-;;:::i;:::-;;;1653:14:1;;1646:22;1628:41;;1616:2;1601:18;5014:193:0;1583:92:1;4366:95:0;;;;;;;;;;-1:-1:-1;3517:19:0;4366:95;;;5992:25:1;;;5980:2;5965:18;4366:95:0;5947:76:1;5215:446:0;;;;;;;;;;-1:-1:-1;5215:446:0;;;;;:::i;:::-;;:::i;4275:83::-;;;;;;;;;;-1:-1:-1;4275:83:0;;3191:1;6170:36:1;;6158:2;6143:18;4275:83:0;6125:87:1;4469:138:0;;;;;;;;;;-1:-1:-1;4469:138:0;;;;;:::i;:::-;;:::i;2813:148::-;;;;;;;;;;;;;:::i;:::-;;2599:79;;;;;;;;;;-1:-1:-1;2637:7:0;2664:6;2599:79;;-1:-1:-1;;;;;2664:6:0;;;1426:51:1;;1414:2;1399:18;2599:79:0;1381:102:1;4180:87:0;;;;;;;;;;-1:-1:-1;4252:7:0;;;;;;;;;;;;-1:-1:-1;;;4252:7:0;;;;4180:87;;4615:199;;;;;;;;;;-1:-1:-1;4615:199:0;;;;;:::i;:::-;;:::i;4822:184::-;;;;;;;;;;-1:-1:-1;4822:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;4971:18:0;;;4939:7;4971:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4822:184;5014:193;5116:4;5138:39;182:10;5161:7;5170:6;5138:8;:39::i;:::-;-1:-1:-1;5195:4:0;5014:193;;;;;:::o;5215:446::-;5347:4;5364:36;5374:6;5382:9;5393:6;5364:9;:36::i;:::-;5411:220;5434:6;182:10;5482:138;5538:6;5482:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5482:19:0;;;;;;:11;:19;;;;;;;;182:10;5482:33;;;;;;;;;;:37;:138::i;:::-;5411:8;:220::i;:::-;-1:-1:-1;5649:4:0;5215:446;;;;;:::o;4469:138::-;-1:-1:-1;;;;;4582:16:0;;4535:7;4582:16;;;:7;:16;;;;;;4562:37;;:19;:37::i;2813:148::-;2726:6;;-1:-1:-1;;;;;2726:6:0;182:10;2726:22;2718:67;;;;-1:-1:-1;;;2718:67:0;;4466:2:1;2718:67:0;;;4448:21:1;;;4485:18;;;4478:30;4544:34;4524:18;;;4517:62;4596:18;;2718:67:0;;;;;;;;;2920:1:::1;2904:6:::0;;2883:40:::1;::::0;-1:-1:-1;;;;;2904:6:0;;::::1;::::0;2883:40:::1;::::0;2920:1;;2883:40:::1;2951:1;2934:19:::0;;-1:-1:-1;;;;;;2934:19:0::1;::::0;;2813:148::o;4615:199::-;4720:4;4742:42;182:10;4766:9;4777:6;4742:9;:42::i;6248:369::-;-1:-1:-1;;;;;6375:19:0;;6367:68;;;;-1:-1:-1;;;6367:68:0;;5643:2:1;6367:68:0;;;5625:21:1;5682:2;5662:18;;;5655:30;5721:34;5701:18;;;5694:62;-1:-1:-1;;;5772:18:1;;;5765:34;5816:19;;6367:68:0;5615:226:1;6367:68:0;-1:-1:-1;;;;;6454:21:0;;6446:68;;;;-1:-1:-1;;;6446:68:0;;3305:2:1;6446:68:0;;;3287:21:1;3344:2;3324:18;;;3317:30;3383:34;3363:18;;;3356:62;-1:-1:-1;;;3434:18:1;;;3427:32;3476:19;;6446:68:0;3277:224:1;6446:68:0;-1:-1:-1;;;;;6525:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6577:32;;5992:25:1;;;6577:32:0;;5965:18:1;6577:32:0;;;;;;;6248:369;;;:::o;6625:536::-;-1:-1:-1;;;;;6747:18:0;;6739:68;;;;-1:-1:-1;;;6739:68:0;;5237:2:1;6739:68:0;;;5219:21:1;5276:2;5256:18;;;5249:30;5315:34;5295:18;;;5288:62;-1:-1:-1;;;5366:18:1;;;5359:35;5411:19;;6739:68:0;5209:227:1;6739:68:0;-1:-1:-1;;;;;6826:16:0;;6818:64;;;;-1:-1:-1;;;6818:64:0;;2490:2:1;6818:64:0;;;2472:21:1;2529:2;2509:18;;;2502:30;2568:34;2548:18;;;2541:62;-1:-1:-1;;;2619:18:1;;;2612:33;2662:19;;6818:64:0;2462:225:1;6818:64:0;6910:1;6901:6;:10;6893:64;;;;-1:-1:-1;;;6893:64:0;;4827:2:1;6893:64:0;;;4809:21:1;4866:2;4846:18;;;4839:30;4905:34;4885:18;;;4878:62;-1:-1:-1;;;4956:18:1;;;4949:39;5005:19;;6893:64:0;4799:231:1;6893:64:0;-1:-1:-1;;;;;7006:24:0;;6970:12;7006:24;;;:18;:24;;;;;;6985:4;;7006:24;;;:50;;-1:-1:-1;;;;;;7034:22:0;;;;;;:18;:22;;;;;;;;7006:50;7002:98;;;-1:-1:-1;7083:5:0;7002:98;7112:41;7127:4;7133:2;7137:6;7145:7;7112:14;:41::i;:::-;6625:536;;;;:::o;1364:224::-;1484:7;1520:12;1512:6;;;;1504:29;;;;-1:-1:-1;;;1504:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1544:9:0;1556:5;1560:1;1556;:5;:::i;:::-;1544:17;1364:224;-1:-1:-1;;;;;1364:224:0:o;5669:323::-;5764:7;5822;;5811;:18;;5789:110;;;;-1:-1:-1;;;5789:110:0;;2894:2:1;5789:110:0;;;2876:21:1;2933:2;2913:18;;;2906:30;2972:34;2952:18;;;2945:62;-1:-1:-1;;;3023:18:1;;;3016:40;3073:19;;5789:110:0;2866:232:1;5789:110:0;5910:19;5932:10;:8;:10::i;:::-;5910:32;-1:-1:-1;5960:24:0;:7;5910:32;5960:11;:24::i;:::-;5953:31;5669:323;-1:-1:-1;;;5669:323:0:o;7169:282::-;7325:7;7320:28;;7334:14;:12;:14::i;:::-;7359:44;7377:6;7385:9;7396:6;7359:17;:44::i;:::-;7419:7;7414:29;;7428:15;6205:1;6195:7;:11;6231:1;6217:11;:15;6151:89;10194:164;10236:7;10257:15;10274;10293:19;:17;:19::i;:::-;10256:56;;-1:-1:-1;10256:56:0;-1:-1:-1;10330:20:0;10256:56;;10330:11;:20::i;:::-;10323:27;;;;10194:164;:::o;1850:132::-;1908:7;1935:39;1939:1;1942;1935:39;;;;;;;;;;;;;;;;;:3;:39::i;6000:143::-;6047:7;;:12;:32;;;;-1:-1:-1;6063:11:0;;:16;6047:32;6043:45;;;6000:143::o;6043:45::-;6108:1;6098:7;:11;;;6120;:15;6000:143::o;7459:619::-;7606:15;7636:23;7674:12;7701:23;7739:12;7766:16;7796:19;7807:7;7796:10;:19::i;:::-;-1:-1:-1;;;;;7844:15:0;;;;;;:7;:15;;;;;;7591:224;;-1:-1:-1;7591:224:0;;-1:-1:-1;7591:224:0;;-1:-1:-1;7591:224:0;-1:-1:-1;7591:224:0;-1:-1:-1;7591:224:0;-1:-1:-1;7844:28:0;;7591:224;7844:19;:28::i;:::-;-1:-1:-1;;;;;7826:15:0;;;;;;;:7;:15;;;;;;:46;;;;7904:18;;;;;;;:39;;7927:15;7904:22;:39::i;:::-;-1:-1:-1;;;;;7883:18:0;;;;;;:7;:18;;;;;:60;7954:22;7967:8;7954:12;:22::i;:::-;7987:23;7999:4;8005;7987:11;:23::i;:::-;8043:9;-1:-1:-1;;;;;8026:44:0;8035:6;-1:-1:-1;;;;;8026:44:0;;8054:15;8026:44;;;;5992:25:1;;5980:2;5965:18;;5947:76;8026:44:0;;;;;;;;7459:619;;;;;;;;;:::o;10366:257::-;10464:7;;10417;;;;3517:19;10532:20;10464:7;3517:19;10532:11;:20::i;:::-;10522:7;:30;10518:61;;;-1:-1:-1;;10562:7:0;;;3517:19;;-1:-1:-1;10366:257:0;-1:-1:-1;10366:257:0:o;10518:61::-;10598:7;;10607;;-1:-1:-1;10366:257:0;-1:-1:-1;10366:257:0:o;1990:223::-;2110:7;2145:12;2138:5;2130:28;;;;-1:-1:-1;;;2130:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2169:9:0;2181:5;2185:1;2181;:5;:::i;8516:626::-;8616:7;8638;8660;8682;8704;8726;8762:23;8787:12;8801:16;8834:42;8846:7;8855;;8864:11;;8834;:42::i;:::-;8761:115;;;;;;8887:19;8909:10;:8;:10::i;:::-;8887:32;;8931:15;8948:23;8973:12;9002:49;9014:7;9023:4;9029:8;9039:11;9002;:49::i;:::-;8930:121;;-1:-1:-1;8930:121:0;-1:-1:-1;8930:121:0;-1:-1:-1;9102:15:0;;-1:-1:-1;9119:4:0;;-1:-1:-1;9125:8:0;;-1:-1:-1;;;;;8516:626:0;;;;;;;:::o;1220:136::-;1278:7;1305:43;1309:1;1312;1305:43;;;;;;;;;;;;;;;;;:3;:43::i;1033:179::-;1091:7;;1123:5;1127:1;1123;:5;:::i;:::-;1111:17;;1152:1;1147;:6;;1139:46;;;;-1:-1:-1;;;1139:46:0;;3708:2:1;1139:46:0;;;3690:21:1;3747:2;3727:18;;;3720:30;3786:29;3766:18;;;3759:57;3833:18;;1139:46:0;3680:177:1;8086:230:0;8145:19;8167:10;:8;:10::i;:::-;8145:32;-1:-1:-1;8188:16:0;8207:25;:8;8145:32;8207:12;:25::i;:::-;8278:15;;-1:-1:-1;;;;;8278:15:0;8270:24;;;;:7;:24;;;;;;8188:44;;-1:-1:-1;8270:38:0;;8188:44;8270:28;:38::i;:::-;8251:15;;-1:-1:-1;;;;;8251:15:0;8243:24;;;;:7;:24;;;;;:65;-1:-1:-1;;;8086:230:0:o;8324:147::-;8402:7;;:17;;8414:4;8402:11;:17::i;:::-;8392:7;:27;8443:10;;:20;;8458:4;8443:14;:20::i;:::-;8430:10;:33;-1:-1:-1;;8324:147:0:o;9150:482::-;9321:7;;;;9415:28;9439:3;9415:19;:7;9427:6;9415:11;:19::i;:::-;:23;;:28::i;:::-;9400:43;-1:-1:-1;9454:16:0;9473:32;9501:3;9473:23;:7;9485:10;9473:11;:23::i;:32::-;9454:51;-1:-1:-1;9516:23:0;9542:31;9454:51;9542:17;:7;9554:4;9542:11;:17::i;:::-;:21;;:31::i;:::-;9516:57;9609:4;;-1:-1:-1;9615:8:0;;-1:-1:-1;9150:482:0;;-1:-1:-1;;;;;9150:482:0:o;9640:546::-;9837:7;;;;9934:24;:7;9946:11;9934;:24::i;:::-;9916:42;-1:-1:-1;9969:12:0;9984:21;:4;9993:11;9984:8;:21::i;:::-;9969:36;-1:-1:-1;10016:16:0;10035:25;:8;10048:11;10035:12;:25::i;:::-;10016:44;-1:-1:-1;10071:23:0;10097:31;10016:44;10097:17;:7;10109:4;10097:11;:17::i;:31::-;10147:7;;;;-1:-1:-1;10173:4:0;;-1:-1:-1;9640:546:0;;-1:-1:-1;;;;;;;9640:546:0:o;1596:246::-;1654:7;1678:6;1674:47;;-1:-1:-1;1708:1:0;1701:8;;1674:47;1731:9;1743:5;1747:1;1743;:5;:::i;:::-;1731:17;-1:-1:-1;1776:1:0;1767:5;1771:1;1731:17;1767:5;:::i;:::-;:10;1759:56;;;;-1:-1:-1;;;1759:56:0;;4064:2:1;1759:56:0;;;4046:21:1;4103:2;4083:18;;;4076:30;4142:34;4122:18;;;4115:62;-1:-1:-1;;;4193:18:1;;;4186:31;4234:19;;1759:56:0;4036:223:1;14:173;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:2;;177:1;174;167:12;111:2;63:124;;;:::o;192:196::-;251:6;304:2;292:9;283:7;279:23;275:32;272:2;;;325:6;317;310:22;272:2;353:29;372:9;353:29;:::i;393:270::-;461:6;469;522:2;510:9;501:7;497:23;493:32;490:2;;;543:6;535;528:22;490:2;571:29;590:9;571:29;:::i;:::-;561:39;;619:38;653:2;642:9;638:18;619:38;:::i;:::-;609:48;;480:183;;;;;:::o;668:338::-;745:6;753;761;814:2;802:9;793:7;789:23;785:32;782:2;;;835:6;827;820:22;782:2;863:29;882:9;863:29;:::i;:::-;853:39;;911:38;945:2;934:9;930:18;911:38;:::i;:::-;901:48;;996:2;985:9;981:18;968:32;958:42;;772:234;;;;;:::o;1011:264::-;1079:6;1087;1140:2;1128:9;1119:7;1115:23;1111:32;1108:2;;;1161:6;1153;1146:22;1108:2;1189:29;1208:9;1189:29;:::i;:::-;1179:39;1265:2;1250:18;;;;1237:32;;-1:-1:-1;;;1098:177:1:o;1680:603::-;1792:4;1821:2;1850;1839:9;1832:21;1882:6;1876:13;1925:6;1920:2;1909:9;1905:18;1898:34;1950:4;1963:140;1977:6;1974:1;1971:13;1963:140;;;2072:14;;;2068:23;;2062:30;2038:17;;;2057:2;2034:26;2027:66;1992:10;;1963:140;;;2121:6;2118:1;2115:13;2112:2;;;2191:4;2186:2;2177:6;2166:9;2162:22;2158:31;2151:45;2112:2;-1:-1:-1;2267:2:1;2246:15;-1:-1:-1;;2242:29:1;2227:45;;;;2274:2;2223:54;;1801:482;-1:-1:-1;;;1801:482:1:o;6217:128::-;6257:3;6288:1;6284:6;6281:1;6278:13;6275:2;;;6294:18;;:::i;:::-;-1:-1:-1;6330:9:1;;6265:80::o;6350:217::-;6390:1;6416;6406:2;;-1:-1:-1;;;6441:31:1;;6495:4;6492:1;6485:15;6523:4;6448:1;6513:15;6406:2;-1:-1:-1;6552:9:1;;6396:171::o;6572:168::-;6612:7;6678:1;6674;6670:6;6666:14;6663:1;6660:21;6655:1;6648:9;6641:17;6637:45;6634:2;;;6685:18;;:::i;:::-;-1:-1:-1;6725:9:1;;6624:116::o;6745:125::-;6785:4;6813:1;6810;6807:8;6804:2;;;6818:18;;:::i;:::-;-1:-1:-1;6855:9:1;;6794:76::o;6875:127::-;6936:10;6931:3;6927:20;6924:1;6917:31;6967:4;6964:1;6957:15;6991:4;6988:1;6981:15
Swarm Source
ipfs://9a245e9ebe06bec9de40e447d529a05c59c90d2b3bee7b7ef932f018f1e0e515
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.