아래와 같은 ERC721 컨트랙트를 배포하면 에러가 발생합니다.
혹시 컨트랙트 상에 문제가 있을까요?
pragma solidity 0.8.7;
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
import "./IERC721BridgeReceiver.sol";
/**
* @title ERC721ServiceChain
* @dev ERC721 service chain value transfer logic for 1-step transfer.
*/
contract BaobabERC721A is ERC721, Ownable {
address public bridge;
string _name = "Baobab ERC721 A";
string _symbol = "BEA";
constructor(address _bridge) ERC721(_name, _symbol) {
require(_bridge == tx.origin);
bridge = _bridge;
}
function setBridge(address _bridge) public onlyOwner {
bridge = _bridge;
}
function requestValueTransfer(uint256 _uid, address _to, bytes calldata _extraData) external {
transferFrom(msg.sender, bridge, _uid);
IERC721BridgeReceiver(bridge).onERC721Received(msg.sender, _uid, _to, _extraData);
}
}
에러는 다음과 같습니다.
Error: Error: evm: execution reverted
{
“blockHash”: “0xcb3a1add43a6b75439aa881d66df0423ed8619782a2db1f2c685cc813ce40af9”,
“blockNumber”: 77910658,
“codeFormat”: “0x0”,
“contractAddress”: “0x0757C6E1c5C6b6e3b558AAA1BfC33C020FD1A13b”,
“from”: “0xc404ee09f64218364e9a38c0695bb06677125e79”,
“gas”: “0x5f5e100”,
“gasPrice”: “0x5d21dba00”,
“gasUsed”: 830252,
“humanReadable”: false,
“input”: “…”,
“logsBloom”: “…”,
“nonce”: “0xaf”,
“senderTxHash”: “0x4f7437f497df2aff0cb3437d37e295e1906320093c4759bcd82127e7abdb6938”,
“signatures”: [
{
“V”: “0x7f5”,
“R”: “0xf57a838ea029e286a80ef7825ebcb88bbb7933833565773cc6fac5dacfeed8c0”,
“S”: “0xbd04d515bcf12114baf39696d4d021bf64c29597607c0d9ae5411b00aa1ef56”
}
],
“status”: false,
“to”: null,
“transactionHash”: “0x4f7437f497df2aff0cb3437d37e295e1906320093c4759bcd82127e7abdb6938”,
“transactionIndex”: 0,
“txError”: “0x9”,
“type”: “TxTypeSmartContractDeploy”,
“typeInt”: 40,
“value”: “0x0”,
“events”: {}
}
at checkForContractDeployment (/root/data/node_project/node_modules/caver-js/packages/caver-core-method/src/index.js:703:26)
at /root/data/node_project/node_modules/caver-js/packages/caver-core-method/src/index.js:635:23
at processTicksAndRejections (internal/process/task_queues.js:95:5)