// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
// Part: IApes
interface IToken {
function burn(address _from, uint256 _amount) external;
}
/**
* @title Counters
* @author Matt Condon (@shrugs)
* @dev Provides counters that can only be incremented, decremented or reset. This can be used e.g. to track the number
* of elements in a mapping, issuing ERC721 ids, or counting request ids.
*
* Include with `using Counters for Counters.Counter;`
*/
contract Upgrade {
IToken public tokenContract;
constructor(address _apes) public {
tokenContract = IToken(_apes);
}
function Buy(uint256 _amount) external {
tokenContract.burn(msg.sender,_amount);
}
}
{
"compilationTarget": {
"contracts/Upgrade.sol": "Upgrade"
},
"evmVersion": "london",
"libraries": {},
"metadata": {
"bytecodeHash": "ipfs"
},
"optimizer": {
"enabled": true,
"runs": 200
},
"remappings": []
}
[{"inputs":[{"internalType":"address","name":"_apes","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"Buy","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"tokenContract","outputs":[{"internalType":"contract IToken","name":"","type":"address"}],"stateMutability":"view","type":"function"}]