function publicMint(bytes calldata _signature) external payable {
uint256 _totalSupply = totalSupply;
require(_totalSupply < MAX_SUPPLY, "max supply");
require(msg.sender == tx.origin, "no bots");
require(publicMintingAddress ==
keccak256(
abi.encodePacked(
"\x19Ethereum Signed Message:\n32",
bytes32(uint256(uint160(msg.sender)))))
.recover(_signature),
"not allowed"
);
require(balanceOf(msg.sender) < 2, "too many");
require(msg.value == PRICE, "wrong price");
_mint(msg.sender, _totalSupply);
unchecked {
_totalSupply++;
}
totalSupply = _totalSupply;
}
·---------------------------------------|---------------------------|
| Solc version: 0.8.10 · Optimizer enabled: true ·
········································|···························|
| Methods
···············|························|·············|·············|
| Contract · Method · Min · Max ·
···············|························|·············|·············|
| GasContest · publicMint · 64191 · 81291 ·