{
  "_format": "hh-sol-artifact-1",
  "contractName": "ERC721MintableFacet",
  "sourceName": "contracts/token/ERC721/facets/ERC721MintableFacet.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "contract IForwarderRegistry",
          "name": "forwarderRegistry",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "tokenId",
          "type": "uint256"
        }
      ],
      "name": "ERC721ExistingToken",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "ERC721MintToAddressZero",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "recipient",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "tokenId",
          "type": "uint256"
        }
      ],
      "name": "ERC721SafeTransferRejected",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "IllegalInterfaceId",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        }
      ],
      "name": "NotProxyAdmin",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "role",
          "type": "bytes32"
        },
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        }
      ],
      "name": "NotRoleHolder",
      "type": "error"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "tokenId",
          "type": "uint256"
        }
      ],
      "name": "Transfer",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "MINTER_ROLE",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "internalType": "uint256[]",
          "name": "tokenIds",
          "type": "uint256[]"
        }
      ],
      "name": "batchMint",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "initERC721MintableStorage",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "tokenId",
          "type": "uint256"
        }
      ],
      "name": "mint",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "tokenId",
          "type": "uint256"
        },
        {
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "safeMint",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x60a034606657601f610c2f38819003918201601f19168301916001600160401b03831184841017606b57808492602094604052833981010312606657516001600160a01b0381168103606657608052604051610bad9081610082823960805181610a4b0152f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604052600436101561001257600080fd5b60003560e01c806340c10f19146107615780634684d7e91461050b5780638832e6e3146101eb578063a920466f146100b15763d53913931461005357600080fd5b346100ac5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ac5760206040517f6d696e74657200000000000000000000000000000000000000000000000000008152f35b600080fd5b346100ac5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ac576100e8610a34565b73ffffffffffffffffffffffffffffffffffffffff807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103541691169081036101be577f8e773e13000000000000000000000000000000000000000000000000000000006000527fca9d3e17f264b0f3984e2634e94adb37fa3e6a8103f06aeae6fa59e21c769f5d6020527f4f521d2bc326c534847f496e961505200b8e61c57a75e48fd6b97dc560e2c5a480547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055005b7f673a31a10000000000000000000000000000000000000000000000000000000060005260045260246000fd5b346100ac5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ac576102226107f3565b60443560243567ffffffffffffffff82116100ac57366023830112156100ac5781600401359167ffffffffffffffff83116100ac5736602484830101116100ac576024936102987fc8827d3282af6f37b64c3e9e6f3ac9df286ab0bb0fccd6f8661bf19adb368b22610292610a34565b90610886565b61031783827fddf3ee18ae6d688373c219468f8be446e7ae82215f4779d821c7ea5e8c13c0c06102c6610a34565b9560208960009a8b93836040519e8f92610307837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8801160185610816565b848452019101378b010152610948565b803b610321578380f35b73ffffffffffffffffffffffffffffffffffffffff169373ffffffffffffffffffffffffffffffffffffffff604051927f150b7a020000000000000000000000000000000000000000000000000000000084521660048301528360248301528260448301526080606483015281815191826084830152855b8381106104f357505060a4817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f858985602098860101520116810103018186885af19081156104e8578391610469575b507fffffffff000000000000000000000000000000000000000000000000000000007f150b7a020000000000000000000000000000000000000000000000000000000091160361043b5780808380f35b6044927fc215a7a1000000000000000000000000000000000000000000000000000000008352600452602452fd5b90506020813d6020116104e0575b8161048460209383610816565b810103126104dc57517fffffffff00000000000000000000000000000000000000000000000000000000811681036104dc577fffffffff000000000000000000000000000000000000000000000000000000006103eb565b8280fd5b3d9150610477565b6040513d85823e3d90fd5b602082820181015160a4878401015285935001610399565b346100ac5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ac576105426107f3565b6024359067ffffffffffffffff82116100ac57366023830112156100ac5781600401359167ffffffffffffffff83116100ac578260051b916024838301013681116100ac576105b37fc8827d3282af6f37b64c3e9e6f3ac9df286ab0bb0fccd6f8661bf19adb368b22610292610a34565b7fddf3ee18ae6d688373c219468f8be446e7ae82215f4779d821c7ea5e8c13c0c0926000956105e86020604051970187610816565b8552602401602085015b8282106107515750505073ffffffffffffffffffffffffffffffffffffffff1690811561072957825192845b84811061065b5750505082527fddf3ee18ae6d688373c219468f8be446e7ae82215f4779d821c7ea5e8c13c0c16020526040822090815401905580f35b81518110156106fc5760208160051b830101518087528360205273ffffffffffffffffffffffffffffffffffffffff6040882054166106d157908160019288528460205285604089205585887fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a40161061e565b7f753eceac000000000000000000000000000000000000000000000000000000008752600452602486fd5b6024867f4e487b710000000000000000000000000000000000000000000000000000000081526032600452fd5b6004847f7851b9cd000000000000000000000000000000000000000000000000000000008152fd5b81358152602091820191016105f2565b346100ac5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ac576107f161079b6107f3565b6107c77fc8827d3282af6f37b64c3e9e6f3ac9df286ab0bb0fccd6f8661bf19adb368b22610292610a34565b602435907fddf3ee18ae6d688373c219468f8be446e7ae82215f4779d821c7ea5e8c13c0c0610948565b005b6004359073ffffffffffffffffffffffffffffffffffffffff821682036100ac57565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761085757604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f6d696e7465720000000000000000000000000000000000000000000000000000600052602052604060002073ffffffffffffffffffffffffffffffffffffffff821660005260205260ff60406000205416156108e05750565b73ffffffffffffffffffffffffffffffffffffffff907f7aa72882000000000000000000000000000000000000000000000000000000006000527f6d696e74657200000000000000000000000000000000000000000000000000006004521660245260446000fd5b9073ffffffffffffffffffffffffffffffffffffffff16908115610a0a57826000528060205273ffffffffffffffffffffffffffffffffffffffff604060002054166109dc57600190836000528060205282604060002055826000520160205260406000206001815401905560007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4565b827f753eceac0000000000000000000000000000000000000000000000000000000060005260045260246000fd5b7f7851b9cd0000000000000000000000000000000000000000000000000000000060005260046000fd5b73ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168015610b68573233148015610b6d575b610b68577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec36013560601c90803314908115610abf575b50610abc57503390565b90565b60649150602090604051928380927f019a20280000000000000000000000000000000000000000000000000000000082528660048301523360248301523060448301525afa908115610b5c57600091610b1a575b5038610ab2565b6020813d602011610b54575b81610b3360209383610816565b81010312610b505751908115158203610b4d575038610b13565b80fd5b5080fd5b3d9150610b26565b6040513d6000823e3d90fd5b503390565b5060183610610a7b56fea2646970667358221220d533da60b6052e067cf96a078a7f27d8b913acc4f1a79eee5a5761a9d01c89e264736f6c634300081e0033",
  "deployedBytecode": "0x6080604052600436101561001257600080fd5b60003560e01c806340c10f19146107615780634684d7e91461050b5780638832e6e3146101eb578063a920466f146100b15763d53913931461005357600080fd5b346100ac5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ac5760206040517f6d696e74657200000000000000000000000000000000000000000000000000008152f35b600080fd5b346100ac5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ac576100e8610a34565b73ffffffffffffffffffffffffffffffffffffffff807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103541691169081036101be577f8e773e13000000000000000000000000000000000000000000000000000000006000527fca9d3e17f264b0f3984e2634e94adb37fa3e6a8103f06aeae6fa59e21c769f5d6020527f4f521d2bc326c534847f496e961505200b8e61c57a75e48fd6b97dc560e2c5a480547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055005b7f673a31a10000000000000000000000000000000000000000000000000000000060005260045260246000fd5b346100ac5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ac576102226107f3565b60443560243567ffffffffffffffff82116100ac57366023830112156100ac5781600401359167ffffffffffffffff83116100ac5736602484830101116100ac576024936102987fc8827d3282af6f37b64c3e9e6f3ac9df286ab0bb0fccd6f8661bf19adb368b22610292610a34565b90610886565b61031783827fddf3ee18ae6d688373c219468f8be446e7ae82215f4779d821c7ea5e8c13c0c06102c6610a34565b9560208960009a8b93836040519e8f92610307837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8801160185610816565b848452019101378b010152610948565b803b610321578380f35b73ffffffffffffffffffffffffffffffffffffffff169373ffffffffffffffffffffffffffffffffffffffff604051927f150b7a020000000000000000000000000000000000000000000000000000000084521660048301528360248301528260448301526080606483015281815191826084830152855b8381106104f357505060a4817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f858985602098860101520116810103018186885af19081156104e8578391610469575b507fffffffff000000000000000000000000000000000000000000000000000000007f150b7a020000000000000000000000000000000000000000000000000000000091160361043b5780808380f35b6044927fc215a7a1000000000000000000000000000000000000000000000000000000008352600452602452fd5b90506020813d6020116104e0575b8161048460209383610816565b810103126104dc57517fffffffff00000000000000000000000000000000000000000000000000000000811681036104dc577fffffffff000000000000000000000000000000000000000000000000000000006103eb565b8280fd5b3d9150610477565b6040513d85823e3d90fd5b602082820181015160a4878401015285935001610399565b346100ac5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ac576105426107f3565b6024359067ffffffffffffffff82116100ac57366023830112156100ac5781600401359167ffffffffffffffff83116100ac578260051b916024838301013681116100ac576105b37fc8827d3282af6f37b64c3e9e6f3ac9df286ab0bb0fccd6f8661bf19adb368b22610292610a34565b7fddf3ee18ae6d688373c219468f8be446e7ae82215f4779d821c7ea5e8c13c0c0926000956105e86020604051970187610816565b8552602401602085015b8282106107515750505073ffffffffffffffffffffffffffffffffffffffff1690811561072957825192845b84811061065b5750505082527fddf3ee18ae6d688373c219468f8be446e7ae82215f4779d821c7ea5e8c13c0c16020526040822090815401905580f35b81518110156106fc5760208160051b830101518087528360205273ffffffffffffffffffffffffffffffffffffffff6040882054166106d157908160019288528460205285604089205585887fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a40161061e565b7f753eceac000000000000000000000000000000000000000000000000000000008752600452602486fd5b6024867f4e487b710000000000000000000000000000000000000000000000000000000081526032600452fd5b6004847f7851b9cd000000000000000000000000000000000000000000000000000000008152fd5b81358152602091820191016105f2565b346100ac5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ac576107f161079b6107f3565b6107c77fc8827d3282af6f37b64c3e9e6f3ac9df286ab0bb0fccd6f8661bf19adb368b22610292610a34565b602435907fddf3ee18ae6d688373c219468f8be446e7ae82215f4779d821c7ea5e8c13c0c0610948565b005b6004359073ffffffffffffffffffffffffffffffffffffffff821682036100ac57565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761085757604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f6d696e7465720000000000000000000000000000000000000000000000000000600052602052604060002073ffffffffffffffffffffffffffffffffffffffff821660005260205260ff60406000205416156108e05750565b73ffffffffffffffffffffffffffffffffffffffff907f7aa72882000000000000000000000000000000000000000000000000000000006000527f6d696e74657200000000000000000000000000000000000000000000000000006004521660245260446000fd5b9073ffffffffffffffffffffffffffffffffffffffff16908115610a0a57826000528060205273ffffffffffffffffffffffffffffffffffffffff604060002054166109dc57600190836000528060205282604060002055826000520160205260406000206001815401905560007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4565b827f753eceac0000000000000000000000000000000000000000000000000000000060005260045260246000fd5b7f7851b9cd0000000000000000000000000000000000000000000000000000000060005260046000fd5b73ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168015610b68573233148015610b6d575b610b68577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec36013560601c90803314908115610abf575b50610abc57503390565b90565b60649150602090604051928380927f019a20280000000000000000000000000000000000000000000000000000000082528660048301523360248301523060448301525afa908115610b5c57600091610b1a575b5038610ab2565b6020813d602011610b54575b81610b3360209383610816565b81010312610b505751908115158203610b4d575038610b13565b80fd5b5080fd5b3d9150610b26565b6040513d6000823e3d90fd5b503390565b5060183610610a7b56fea2646970667358221220d533da60b6052e067cf96a078a7f27d8b913acc4f1a79eee5a5761a9d01c89e264736f6c634300081e0033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
