contract ERC20Burnable is Context, ERC20 {
	/**
	 * @dev Destroys `amount` tokens from the caller.
	 *
	 * See {ERC20-_burn}.
	 */
	function burn(uint256 amount) public {
		_burn(_msgSender(), amount);
	}

	/**
	 * @dev See {ERC20-_burnFrom}.
	 */
	function burnFrom(address account, uint256 amount) public {
		_burnFrom(account, amount);
	}
}
/**
 * @dev Extension of {ERC20} that allows token holders to destroy both their own
 * tokens and those that they have an allowance for, in a way that can be
 * recognized off-chain (via event analysis).
 */
function burn(uint256 amount) public {
	_burn(_msgSender(), amount);
}

/**
 	 * @dev Destroys `amount` tokens from the caller.
 	 *
 	 * See {ERC20-_burn}.
 	 */