ERC-20
Overview
Max Total Supply
283,622,135.705702855670661824 BASO
Holders
1,678
Total Transfers
-
Market
Price
$0.00 @ 0.000000 ETH
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
Contract Name:
Baso
Compiler Version
v0.8.13+commit.abaa5c0e
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: GPL-3.0-or-later pragma solidity 0.8.13; import "./interfaces/IBaso.sol"; contract Baso is IBaso { string public constant name = "BASO"; string public constant symbol = "BASO"; uint8 public constant decimals = 18; uint public totalSupply = 0; mapping(address => uint) public balanceOf; mapping(address => mapping(address => uint)) public allowance; bool public initialMinted; address public minter; address public redemptionReceiver; address public merkleClaim; event Transfer(address indexed from, address indexed to, uint value); event Approval(address indexed owner, address indexed spender, uint value); constructor() { minter = msg.sender; _mint(msg.sender, 0); } // No checks as its meant to be once off to set minting rights to BaseV1 Minter function setMinter(address _minter) external { require(msg.sender == minter); minter = _minter; } function setRedemptionReceiver(address _receiver) external { require(msg.sender == minter); redemptionReceiver = _receiver; } function setMerkleClaim(address _merkleClaim) external { require(msg.sender == minter); merkleClaim = _merkleClaim; } // Initial mint: total 100M function initialMint(address _recipient) external { require(msg.sender == minter && !initialMinted); initialMinted = true; _mint(_recipient, 100 * 1e6 * 1e18); } function approve(address _spender, uint _value) external returns (bool) { allowance[msg.sender][_spender] = _value; emit Approval(msg.sender, _spender, _value); return true; } function _mint(address _to, uint _amount) internal returns (bool) { totalSupply += _amount; unchecked { balanceOf[_to] += _amount; } emit Transfer(address(0x0), _to, _amount); return true; } function _transfer(address _from, address _to, uint _value) internal returns (bool) { balanceOf[_from] -= _value; unchecked { balanceOf[_to] += _value; } emit Transfer(_from, _to, _value); return true; } function transfer(address _to, uint _value) external returns (bool) { return _transfer(msg.sender, _to, _value); } function transferFrom(address _from, address _to, uint _value) external returns (bool) { uint allowed_from = allowance[_from][msg.sender]; if (allowed_from != type(uint).max) { allowance[_from][msg.sender] -= _value; } return _transfer(_from, _to, _value); } function mint(address account, uint amount) external returns (bool) { require(msg.sender == minter); _mint(account, amount); return true; } function claim(address account, uint amount) external returns (bool) { require(msg.sender == redemptionReceiver || msg.sender == merkleClaim); _mint(account, amount); return true; } }
pragma solidity 0.8.13; interface IBaso { function totalSupply() external view returns (uint); function balanceOf(address) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address, uint) external returns (bool); function transferFrom(address,address,uint) external returns (bool); function mint(address, uint) external returns (bool); function minter() external returns (address); function claim(address, uint) external returns (bool); }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"claim","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_recipient","type":"address"}],"name":"initialMint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initialMinted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"merkleClaim","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"minter","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"redemptionReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_merkleClaim","type":"address"}],"name":"setMerkleClaim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_minter","type":"address"}],"name":"setMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_receiver","type":"address"}],"name":"setRedemptionReceiver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040526000805534801561001457600080fd5b5060038054610100600160a81b0319163361010081029190911790915561003c906000610042565b506100d9565b60008160008082825461005591906100b3565b90915550506001600160a01b0383166000818152600160209081526040808320805487019055518581527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350600192915050565b600082198211156100d457634e487b7160e01b600052601160045260246000fd5b500190565b610804806100e86000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806395d89b41116100ad578063d9b2e35511610071578063d9b2e35514610284578063dd62ed3e14610297578063e752c44a146102c2578063ec676a25146102d5578063fca3b5aa146102e857600080fd5b806395d89b4114610126578063a9059cbb1461023c578063aad3ec961461024f578063c268f9ba14610262578063ca1c4de91461027757600080fd5b806323b872dd116100f457806323b872dd146101c9578063313ce567146101dc57806340c10f19146101f65780635e05fe501461020957806370a082311461021c57600080fd5b806306fdde0314610126578063075461721461015f578063095ea7b31461018f57806318160ddd146101b2575b600080fd5b610149604051806040016040528060048152602001634241534f60e01b81525081565b6040516101569190610664565b60405180910390f35b6003546101779061010090046001600160a01b031681565b6040516001600160a01b039091168152602001610156565b6101a261019d3660046106d5565b6102fb565b6040519015158152602001610156565b6101bb60005481565b604051908152602001610156565b6101a26101d73660046106ff565b610367565b6101e4601281565b60405160ff9091168152602001610156565b6101a26102043660046106d5565b6103e1565b600454610177906001600160a01b031681565b6101bb61022a36600461073b565b60016020526000908152604090205481565b6101a261024a3660046106d5565b610414565b6101a261025d3660046106d5565b610428565b61027561027036600461073b565b610457565b005b6003546101a29060ff1681565b61027561029236600461073b565b6104a8565b6101bb6102a5366004610756565b600260209081526000928352604080842090915290825290205481565b600554610177906001600160a01b031681565b6102756102e336600461073b565b6104e6565b6102756102f636600461073b565b610524565b3360008181526002602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103569086815260200190565b60405180910390a350600192915050565b6001600160a01b038316600090815260026020908152604080832033845290915281205460001981146103cd576001600160a01b0385166000908152600260209081526040808320338452909152812080548592906103c790849061079f565b90915550505b6103d8858585610568565b95945050505050565b60035460009061010090046001600160a01b0316331461040057600080fd5b61040a83836105ff565b5060019392505050565b6000610421338484610568565b9392505050565b6004546000906001600160a01b031633148061044e57506005546001600160a01b031633145b61040057600080fd5b60035461010090046001600160a01b031633148015610479575060035460ff16155b61048257600080fd5b6003805460ff191660011790556104a4816a52b7d2dcc80cd2e40000006105ff565b5050565b60035461010090046001600160a01b031633146104c457600080fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055565b60035461010090046001600160a01b0316331461050257600080fd5b600580546001600160a01b0319166001600160a01b0392909216919091179055565b60035461010090046001600160a01b0316331461054057600080fd5b600380546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b03831660009081526001602052604081208054839190839061059290849061079f565b90915550506001600160a01b03808416600081815260016020526040908190208054860190555190918616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906105ed9086815260200190565b60405180910390a35060019392505050565b60008160008082825461061291906107b6565b90915550506001600160a01b0383166000818152600160209081526040808320805487019055518581527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9101610356565b600060208083528351808285015260005b8181101561069157858101830151858201604001528201610675565b818111156106a3576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146106d057600080fd5b919050565b600080604083850312156106e857600080fd5b6106f1836106b9565b946020939093013593505050565b60008060006060848603121561071457600080fd5b61071d846106b9565b925061072b602085016106b9565b9150604084013590509250925092565b60006020828403121561074d57600080fd5b610421826106b9565b6000806040838503121561076957600080fd5b610772836106b9565b9150610780602084016106b9565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b6000828210156107b1576107b1610789565b500390565b600082198211156107c9576107c9610789565b50019056fea264697066735822122098d9bec644c3bd79ea625d0eb2194cc048bff8c5336a43cc818627971847f79264736f6c634300080d0033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101215760003560e01c806395d89b41116100ad578063d9b2e35511610071578063d9b2e35514610284578063dd62ed3e14610297578063e752c44a146102c2578063ec676a25146102d5578063fca3b5aa146102e857600080fd5b806395d89b4114610126578063a9059cbb1461023c578063aad3ec961461024f578063c268f9ba14610262578063ca1c4de91461027757600080fd5b806323b872dd116100f457806323b872dd146101c9578063313ce567146101dc57806340c10f19146101f65780635e05fe501461020957806370a082311461021c57600080fd5b806306fdde0314610126578063075461721461015f578063095ea7b31461018f57806318160ddd146101b2575b600080fd5b610149604051806040016040528060048152602001634241534f60e01b81525081565b6040516101569190610664565b60405180910390f35b6003546101779061010090046001600160a01b031681565b6040516001600160a01b039091168152602001610156565b6101a261019d3660046106d5565b6102fb565b6040519015158152602001610156565b6101bb60005481565b604051908152602001610156565b6101a26101d73660046106ff565b610367565b6101e4601281565b60405160ff9091168152602001610156565b6101a26102043660046106d5565b6103e1565b600454610177906001600160a01b031681565b6101bb61022a36600461073b565b60016020526000908152604090205481565b6101a261024a3660046106d5565b610414565b6101a261025d3660046106d5565b610428565b61027561027036600461073b565b610457565b005b6003546101a29060ff1681565b61027561029236600461073b565b6104a8565b6101bb6102a5366004610756565b600260209081526000928352604080842090915290825290205481565b600554610177906001600160a01b031681565b6102756102e336600461073b565b6104e6565b6102756102f636600461073b565b610524565b3360008181526002602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103569086815260200190565b60405180910390a350600192915050565b6001600160a01b038316600090815260026020908152604080832033845290915281205460001981146103cd576001600160a01b0385166000908152600260209081526040808320338452909152812080548592906103c790849061079f565b90915550505b6103d8858585610568565b95945050505050565b60035460009061010090046001600160a01b0316331461040057600080fd5b61040a83836105ff565b5060019392505050565b6000610421338484610568565b9392505050565b6004546000906001600160a01b031633148061044e57506005546001600160a01b031633145b61040057600080fd5b60035461010090046001600160a01b031633148015610479575060035460ff16155b61048257600080fd5b6003805460ff191660011790556104a4816a52b7d2dcc80cd2e40000006105ff565b5050565b60035461010090046001600160a01b031633146104c457600080fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055565b60035461010090046001600160a01b0316331461050257600080fd5b600580546001600160a01b0319166001600160a01b0392909216919091179055565b60035461010090046001600160a01b0316331461054057600080fd5b600380546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b03831660009081526001602052604081208054839190839061059290849061079f565b90915550506001600160a01b03808416600081815260016020526040908190208054860190555190918616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906105ed9086815260200190565b60405180910390a35060019392505050565b60008160008082825461061291906107b6565b90915550506001600160a01b0383166000818152600160209081526040808320805487019055518581527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9101610356565b600060208083528351808285015260005b8181101561069157858101830151858201604001528201610675565b818111156106a3576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146106d057600080fd5b919050565b600080604083850312156106e857600080fd5b6106f1836106b9565b946020939093013593505050565b60008060006060848603121561071457600080fd5b61071d846106b9565b925061072b602085016106b9565b9150604084013590509250925092565b60006020828403121561074d57600080fd5b610421826106b9565b6000806040838503121561076957600080fd5b610772836106b9565b9150610780602084016106b9565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b6000828210156107b1576107b1610789565b500390565b600082198211156107c9576107c9610789565b50019056fea264697066735822122098d9bec644c3bd79ea625d0eb2194cc048bff8c5336a43cc818627971847f79264736f6c634300080d0033
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.