Address Contract Partially Verified
Address
0x6B4D67b49B1780892A7Db184Ae0C0d330b910e6a
Balance
0 ETH
Nonce
1
Code Size
6658 bytes
Creator
0xC9cf9087...8C34 at tx 0x950d9a2d...92b858
Indexed Transactions
0
Contract Bytecode
6658 bytes
0x608060405234801561000f575f80fd5b5060043610610109575f3560e01c806341275358116100a05780638da5cb5b1161006f5780638da5cb5b1461029357806395d89b41146102b15780639ed3edf0146102cf578063a9059cbb146102ed578063dd62ed3e1461031d57610109565b8063412753581461021f57806370a082311461023d578063715018a61461026d5780638705fcd41461027757610109565b806323b872dd116100dc57806323b872dd146101955780632ff2e9dc146101c5578063313ce567146101e35780633c3dbbc71461020157610109565b806306fdde031461010d578063095ea7b31461012b5780630ee976961461015b57806318160ddd14610177575b5f80fd5b61011561034d565b6040516101229190611074565b60405180910390f35b61014560048036038101906101409190611125565b6103dd565b604051610152919061117d565b60405180910390f35b61017560048036038101906101709190611196565b6103fa565b005b61017f6104de565b60405161018c91906111d0565b60405180910390f35b6101af60048036038101906101aa91906111e9565b6104e7565b6040516101bc919061117d565b60405180910390f35b6101cd6105a1565b6040516101da91906111d0565b60405180910390f35b6101eb6105b1565b6040516101f89190611254565b60405180910390f35b6102096105b9565b60405161021691906111d0565b60405180910390f35b6102276105be565b604051610234919061127c565b60405180910390f35b61025760048036038101906102529190611295565b6105e3565b60405161026491906111d0565b60405180910390f35b610275610628565b005b610291600480360381019061028c9190611295565b61077b565b005b61029b610854565b6040516102a8919061127c565b60405180910390f35b6102b961087c565b6040516102c69190611074565b60405180910390f35b6102d761090c565b6040516102e491906111d0565b60405180910390f35b61030760048036038101906103029190611125565b610912565b604051610314919061117d565b60405180910390f35b610337600480360381019061033291906112c0565b610a81565b60405161034491906111d0565b60405180910390f35b60606003805461035c9061132b565b80601f01602080910402602001604051908101604052809291908181526020018280546103889061132b565b80156103d35780601f106103aa576101008083540402835291602001916103d3565b820191905f5260205f20905b8154815290600101906020018083116103b657829003601f168201915b5050505050905090565b5f6103f06103e9610b03565b8484610b0a565b6001905092915050565b610402610b03565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610490576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610487906113a5565b60405180910390fd5b60968111156104d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104cb90611433565b60405180910390fd5b8060088190555050565b5f600254905090565b5f6104f3848484610ccd565b610596846104ff610b03565b6105918560015f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610549610b03565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610fb090919063ffffffff16565b610b0a565b600190509392505050565b6b50c783eb9b5c85f2a800000081565b5f6012905090565b600a81565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610630610b03565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106b5906113a5565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f60055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610783610b03565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610811576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610808906113a5565b60405180910390fd5b8060075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606004805461088b9061132b565b80601f01602080910402602001604051908101604052809291908181526020018280546108b79061132b565b80156109025780601f106108d957610100808354040283529160200191610902565b820191905f5260205f20905b8154815290600101906020018083116108e557829003601f168201915b5050505050905090565b60085481565b5f600160065414610958576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161094f9061149b565b60405180910390fd5b6002600681905550600a8210156109a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099b90611529565b60405180910390fd5b5f6109ce6103e86109c060085486610fc590919063ffffffff16565b610fda90919063ffffffff16565b9050808311610a12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a09906115b7565b60405180910390fd5b5f610a268285610fb090919063ffffffff16565b9050610a5b610a33610b03565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610ccd565b610a6d610a66610b03565b8683610ccd565b600192505050600160068190555092915050565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b78576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b6f90611645565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610be6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bdd906116d3565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610cc091906111d0565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d3290611761565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610da9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da0906117ef565b60405180910390fd5b805f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541015610e28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1f9061187d565b60405180910390fd5b610e77815f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610fb090919063ffffffff16565b5f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550610f06815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610fef90919063ffffffff16565b5f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610fa391906111d0565b60405180910390a3505050565b5f8183610fbd91906118c8565b905092915050565b5f8183610fd291906118fb565b905092915050565b5f8183610fe79190611969565b905092915050565b5f8183610ffc9190611999565b905092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61104682611004565b611050818561100e565b935061106081856020860161101e565b6110698161102c565b840191505092915050565b5f6020820190508181035f83015261108c818461103c565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6110c182611098565b9050919050565b6110d1816110b7565b81146110db575f80fd5b50565b5f813590506110ec816110c8565b92915050565b5f819050919050565b611104816110f2565b811461110e575f80fd5b50565b5f8135905061111f816110fb565b92915050565b5f806040838503121561113b5761113a611094565b5b5f611148858286016110de565b925050602061115985828601611111565b9150509250929050565b5f8115159050919050565b61117781611163565b82525050565b5f6020820190506111905f83018461116e565b92915050565b5f602082840312156111ab576111aa611094565b5b5f6111b884828501611111565b91505092915050565b6111ca816110f2565b82525050565b5f6020820190506111e35f8301846111c1565b92915050565b5f805f60608486031215611200576111ff611094565b5b5f61120d868287016110de565b935050602061121e868287016110de565b925050604061122f86828701611111565b9150509250925092565b5f60ff82169050919050565b61124e81611239565b82525050565b5f6020820190506112675f830184611245565b92915050565b611276816110b7565b82525050565b5f60208201905061128f5f83018461126d565b92915050565b5f602082840312156112aa576112a9611094565b5b5f6112b7848285016110de565b91505092915050565b5f80604083850312156112d6576112d5611094565b5b5f6112e3858286016110de565b92505060206112f4858286016110de565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061134257607f821691505b602082108103611355576113546112fe565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f61138f60208361100e565b915061139a8261135b565b602082019050919050565b5f6020820190508181035f8301526113bc81611383565b9050919050565b7f4269746c617374726f3a206665652063616e6e6f7420626520696e63726561735f8201527f65642061626f766520312e352500000000000000000000000000000000000000602082015250565b5f61141d602d8361100e565b9150611428826113c3565b604082019050919050565b5f6020820190508181035f83015261144a81611411565b9050919050565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c005f82015250565b5f611485601f8361100e565b915061149082611451565b602082019050919050565b5f6020820190508181035f8301526114b281611479565b9050919050565b7f4269746c617374726f3a207472616e7366657220616d6f756e7420746f6f20735f8201527f6d616c6c00000000000000000000000000000000000000000000000000000000602082015250565b5f61151360248361100e565b915061151e826114b9565b604082019050919050565b5f6020820190508181035f83015261154081611507565b9050919050565b7f4269746c617374726f3a207472616e7366657220616d6f756e7420746f6f20735f8201527f6d616c6c20616674657220666565000000000000000000000000000000000000602082015250565b5f6115a1602e8361100e565b91506115ac82611547565b604082019050919050565b5f6020820190508181035f8301526115ce81611595565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f61162f60248361100e565b915061163a826115d5565b604082019050919050565b5f6020820190508181035f83015261165c81611623565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6116bd60228361100e565b91506116c882611663565b604082019050919050565b5f6020820190508181035f8301526116ea816116b1565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f61174b60258361100e565b9150611756826116f1565b604082019050919050565b5f6020820190508181035f8301526117788161173f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6117d960238361100e565b91506117e48261177f565b604082019050919050565b5f6020820190508181035f830152611806816117cd565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f61186760268361100e565b91506118728261180d565b604082019050919050565b5f6020820190508181035f8301526118948161185b565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6118d2826110f2565b91506118dd836110f2565b92508282039050818111156118f5576118f461189b565b5b92915050565b5f611905826110f2565b9150611910836110f2565b925082820261191e816110f2565b915082820484148315176119355761193461189b565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611973826110f2565b915061197e836110f2565b92508261198e5761198d61193c565b5b828204905092915050565b5f6119a3826110f2565b91506119ae836110f2565b92508282019050808211156119c6576119c561189b565b5b9291505056fea26469706673582212206a007adba813e376d2431fecb66172cce93e31d6501f3f701904e026fa9ddd3e64736f6c634300081a0033
Verified Source Code Partial Match
Compiler: v0.8.26+commit.8a97fa7a
EVM: cancun
Optimization: No
Bitlastro.sol 262 lines
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.2;
// SafeMath Library
library SafeMath {
function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) {
unchecked {
uint256 c = a + b;
if (c < a) return (false, 0);
return (true, c);
}
}
function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) {
unchecked {
if (b > a) return (false, 0);
return (true, a - b);
}
}
function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) {
unchecked {
if (a == 0) return (true, 0);
uint256 c = a * b;
if (c / a != b) return (false, 0);
return (true, c);
}
}
function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) {
unchecked {
if (b == 0) return (false, 0);
return (true, a / b);
}
}
function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) {
unchecked {
if (b == 0) return (false, 0);
return (true, a % b);
}
}
function add(uint256 a, uint256 b) internal pure returns (uint256) {
return a + b;
}
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
return a - b;
}
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
return a * b;
}
function div(uint256 a, uint256 b) internal pure returns (uint256) {
return a / b;
}
function mod(uint256 a, uint256 b) internal pure returns (uint256) {
return a % b;
}
function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
unchecked {
require(b <= a, errorMessage);
return a - b;
}
}
function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
unchecked {
require(b > 0, errorMessage);
return a / b;
}
}
function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
unchecked {
require(b > 0, errorMessage);
return a % b;
}
}
}
// Context.sol
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
}
// Ownable.sol
abstract contract Ownable is Context {
address private _owner;
constructor(address initialOwner) {
_owner = initialOwner;
}
function owner() public view virtual returns (address) {
return _owner;
}
modifier onlyOwner() {
require(_owner == _msgSender(), "Ownable: caller is not the owner");
_;
}
function renounceOwnership() public virtual onlyOwner {
emit OwnershipTransferred(_owner, address(0));
_owner = address(0);
}
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
}
// ReentrancyGuard.sol
abstract contract ReentrancyGuard {
uint256 private _status;
constructor() {
_status = 1;
}
modifier nonReentrant() {
require(_status == 1, "ReentrancyGuard: reentrant call");
_status = 2;
_;
_status = 1;
}
}
// IERC20.sol
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);
}
// ERC20 without external libraries
contract ERC20 is Context, IERC20 {
using SafeMath for uint256;
mapping(address => uint256) private _balances;
mapping(address => mapping(address => uint256)) private _allowances;
uint256 private _totalSupply;
string private _name;
string private _symbol;
constructor(string memory name_, string memory symbol_) {
_name = name_;
_symbol = symbol_;
}
function name() public view virtual returns (string memory) {
return _name;
}
function symbol() public view virtual returns (string memory) {
return _symbol;
}
function decimals() public view virtual returns (uint8) {
return 18;
}
function totalSupply() public view virtual override returns (uint256) {
return _totalSupply;
}
function balanceOf(address account) public view virtual override returns (uint256) {
return _balances[account];
}
function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
_transfer(_msgSender(), recipient, amount);
return true;
}
function allowance(address owner, address spender) public view virtual override returns (uint256) {
return _allowances[owner][spender];
}
function approve(address spender, uint256 amount) public virtual override returns (bool) {
_approve(_msgSender(), spender, amount);
return true;
}
function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
_transfer(sender, recipient, amount);
_approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount));
return true;
}
function _transfer(address sender, address recipient, uint256 amount) internal virtual {
require(sender != address(0), "ERC20: transfer from the zero address");
require(recipient != address(0), "ERC20: transfer to the zero address");
require(_balances[sender] >= amount, "ERC20: transfer amount exceeds balance");
_balances[sender] = _balances[sender].sub(amount);
_balances[recipient] = _balances[recipient].add(amount);
emit Transfer(sender, recipient, amount);
}
function _approve(address owner, address spender, uint256 amount) internal virtual {
require(owner != address(0), "ERC20: approve from the zero address");
require(spender != address(0), "ERC20: approve to the zero address");
_allowances[owner][spender] = amount;
emit Approval(owner, spender, amount);
}
function _mint(address account, uint256 amount) internal virtual {
require(account != address(0), "ERC20: mint to the zero address");
_totalSupply = _totalSupply.add(amount);
_balances[account] = _balances[account].add(amount);
emit Transfer(address(0), account, amount);
}
}
// Bitlastro.sol
contract Bitlastro is ERC20, Ownable, ReentrancyGuard {
using SafeMath for uint256;
address public feeAddress;
uint256 public constant INITIAL_SUPPLY = 25 * 10**9 * 10**18;
uint256 public transactionFee = 0; // Inicialmente 0% (0 base points)
uint256 public constant MIN_TRANSFER_AMOUNT = 10;
constructor() ERC20("BITLASTRO", "BITL") Ownable(0xC9cf90879398Ea05Bf7d1079c7abdb8708Ee8C34) {
feeAddress = 0xC9cf90879398Ea05Bf7d1079c7abdb8708Ee8C34;
_mint(0xC9cf90879398Ea05Bf7d1079c7abdb8708Ee8C34, INITIAL_SUPPLY);
}
function transfer(address recipient, uint256 amount) public override nonReentrant returns (bool) {
require(amount >= MIN_TRANSFER_AMOUNT, "Bitlastro: transfer amount too small");
uint256 fee = amount.mul(transactionFee).div(1000);
require(amount > fee, "Bitlastro: transfer amount too small after fee");
uint256 amountAfterFee = amount.sub(fee);
_transfer(_msgSender(), feeAddress, fee);
_transfer(_msgSender(), recipient, amountAfterFee);
return true;
}
function updateTransactionFee(uint256 newFee) public onlyOwner {
require(newFee <= 150, "Bitlastro: fee cannot be increased above 1.5%");
transactionFee = newFee;
}
function setFeeAddress(address newFeeAddress) public onlyOwner {
feeAddress = newFeeAddress;
}
}
Read Contract
INITIAL_SUPPLY 0x2ff2e9dc → uint256
MIN_TRANSFER_AMOUNT 0x3c3dbbc7 → uint256
allowance 0xdd62ed3e → uint256
balanceOf 0x70a08231 → uint256
decimals 0x313ce567 → uint8
feeAddress 0x41275358 → address
name 0x06fdde03 → string
owner 0x8da5cb5b → address
symbol 0x95d89b41 → string
totalSupply 0x18160ddd → uint256
transactionFee 0x9ed3edf0 → uint256
Write Contract 6 functions
These functions modify contract state and require a wallet transaction to execute.
approve 0x095ea7b3
address spender
uint256 amount
returns: bool
renounceOwnership 0x715018a6
No parameters
setFeeAddress 0x8705fcd4
address newFeeAddress
transfer 0xa9059cbb
address recipient
uint256 amount
returns: bool
transferFrom 0x23b872dd
address sender
address recipient
uint256 amount
returns: bool
updateTransactionFee 0x0ee97696
uint256 newFee
Recent Transactions
No transactions found for this address