You are using a compiler version older than 0.8.18, which is the first version to allow named parameters in mapping
types.
Also, please post the relevant code as plain text (no screenshots or images).
I get these error when I compile 0.8.20 version...
Downloading compiler 0.8.20
TypeError: Function has override specified but does not override anything.
--> contracts/HogwartsNFT.sol:57:119:
|
57 | function _beforeTokenTransfer(address from, address to, uint256 first TokenId, uint256 batchSize) internal virtual override {
| ^^^^^^^^
TypeError: No arguments passed to the base constructor. Specify the arguments or mark "HogwartsNFT" as abstract.
--> contracts/HogwartsNFT.sol:8:1:
|
8 | contract HogwartsNFT is ERC721URIStorage, Ownable {
| ^ (Relevant source part starts here and spans across multiple lines).
Note: Base constructor parameters:
--> @openzeppelin/contracts/access/Ownable.sol:38:16:
|
38 | constructor(address initialOwner) {
| ^^^^^^^^^^^^^^^^^^^^
TypeError: Member "_beforeTokenTransfer" not found or not visible after argument-dependent lookup in type(contract super HogwartsNFT).
--> contracts/HogwartsNFT.sol:58:9:
|
58 | super._beforeTokenTransfer(from, to, firstTokenId, batchSize);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
Error HH600: Compilation failed
First of all, are we supposed to know what this contract is???
Second, now that you've solved the original problem, you may as well mark your question 'Solved', and post the new problem in a new question.
Third - once again - please post ALL the relevant information and ONLY the relevant information; for example - source code, error messages, project configuration, etc.
Fourth - once again - please post everything in plain (copy-pastable) text; no screenshots, no images and no links other than links to GitHub.
Thanks