// SPDX-License-Identifier: MIT pragma solidity ^0.8.2; import "@openzeppelin/contracts@4.4.2/token/ERC721/ERC721.sol"; import "@openzeppelin/contracts@4.4.2/access/Ownable.sol"; import "@openzeppelin/contracts@4.4.2/utils/Counters.sol"; contract GemCats is ERC721, Ownable { using Counters for Counters.Counter; Counters.Counter private _tokenIdCounter; constructor() ERC721("GemCats", "GEMCAT") {} function _baseURI() internal pure override returns (string memory) { return "ipfs://QmfCk225TdMZVtfbTFy4AJECFdR2F9Ysrps9Zwxd9CLh8e/"; } function safeMint(address to) public onlyOwner { uint256 tokenId = _tokenIdCounter.current(); _tokenIdCounter.increment(); _safeMint(to, tokenId); } }