{
  "_format": "hh-sol-artifact-1",
  "contractName": "ERC20BurnableFacet",
  "sourceName": "contracts/token/ERC20/facets/ERC20BurnableFacet.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "contract IForwarderRegistry",
          "name": "forwarderRegistry",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "ERC20ApprovalToAddressZero",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "spender",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "allowance",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "decrement",
          "type": "uint256"
        }
      ],
      "name": "ERC20InsufficientAllowance",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "balance",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "ERC20InsufficientBalance",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "IllegalInterfaceId",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "InconsistentArrayLengths",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        }
      ],
      "name": "NotProxyAdmin",
      "type": "error"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "spender",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "Approval",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "Transfer",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "address[]",
          "name": "owners",
          "type": "address[]"
        },
        {
          "internalType": "uint256[]",
          "name": "values",
          "type": "uint256[]"
        }
      ],
      "name": "batchBurnFrom",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "burn",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "burnFrom",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "initERC20BurnableStorage",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x60a034606657601f610a7138819003918201601f19168301916001600160401b03831184841017606b57808492602094604052833981010312606657516001600160a01b03811681036066576080526040516109ef90816100828239608051816106780152f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604052600436101561001257600080fd5b60003560e01c80631b9a7529146102b057806342966c681461024c578063751ec2d314610112576379cc67901461004857600080fd5b3461010d5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261010d5760043573ffffffffffffffffffffffffffffffffffffffff811680820361010d576100f091602435917f1da92899d3da68bf9787824388a37ea2bfa79780bcef91b9716c390eec8ecbee90836100cb610661565b9173ffffffffffffffffffffffffffffffffffffffff8316036100fb575b5050610540565b602060405160018152f35b610106918484610805565b38836100e9565b600080fd5b3461010d5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261010d57610149610661565b73ffffffffffffffffffffffffffffffffffffffff807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035416911690810361021f577f20c07ed1000000000000000000000000000000000000000000000000000000006000527fca9d3e17f264b0f3984e2634e94adb37fa3e6a8103f06aeae6fa59e21c769f5d6020527f0fe906604d4cc705ea1b9f113133426bf04f7f63322b0f5653f6f8d581e44fb480547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055005b7f673a31a10000000000000000000000000000000000000000000000000000000060005260045260246000fd5b3461010d5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261010d576100f06004357f1da92899d3da68bf9787824388a37ea2bfa79780bcef91b9716c390eec8ecbee6102aa610661565b90610540565b3461010d5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261010d5760043567ffffffffffffffff811161010d576102ff903690600401610355565b6024359167ffffffffffffffff831161010d576103236100f0933690600401610355565b9290917f1da92899d3da68bf9787824388a37ea2bfa79780bcef91b9716c390eec8ecbee61034f610661565b906103c5565b9181601f8401121561010d5782359167ffffffffffffffff831161010d576020808501948460051b01011161010d57565b91908110156103965760051b0190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9390929480860361051657851561050e5760009560005b8181106103fd57505050505050816103f2575050565b600201908154039055565b610408818387610386565b3573ffffffffffffffffffffffffffffffffffffffff81169081810361010d57610433838688610386565b3590818973ffffffffffffffffffffffffffffffffffffffff811685036104fc575b509050610494575b600192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020600093604051908152a3016103dc565b98604060008381528a60205220548a810390808210156104c65750600083815260208b9052604090205589019861045d565b8b90847fe450d38c0000000000000000000000000000000000000000000000000000000060005260045260245260445260646000fd5b610506928c610805565b388189610455565b505050505050565b7f658253360000000000000000000000000000000000000000000000000000000060005260046000fd5b8261058e575b50907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602073ffffffffffffffffffffffffffffffffffffffff6000946040519485521692a3565b73ffffffffffffffffffffffffffffffffffffffff8216600052806020526040600020548381039080821015610615575073ffffffffffffffffffffffffffffffffffffffff8316600090815260208390526040902055600201805483900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610546565b849073ffffffffffffffffffffffffffffffffffffffff857fe450d38c000000000000000000000000000000000000000000000000000000006000521660045260245260445260646000fd5b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001680156107f65732331480156107fb575b6107f6577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec36013560601c908033149081156106ec575b506106e957503390565b90565b60649150602090604051928380927f019a20280000000000000000000000000000000000000000000000000000000082528660048301523360248301523060448301525afa9081156107ea57600091610747575b50386106df565b60203d6020116107e3575b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f820116820182811067ffffffffffffffff8211176107b6576020918391604052810103126107b257519081151582036107af575038610740565b80fd5b5080fd5b6024847f4e487b710000000000000000000000000000000000000000000000000000000081526041600452fd5b503d610752565b6040513d6000823e3d90fd5b503390565b50601836106106a8565b92909173ffffffffffffffffffffffffffffffffffffffff169283156109755760010173ffffffffffffffffffffffffffffffffffffffff831660005280602052604060002084600052602052604060002054917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8314158061096c575b6108cf575b505090602073ffffffffffffffffffffffffffffffffffffffff7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925926040519485521692a3565b808303928084101561091357505073ffffffffffffffffffffffffffffffffffffffff83811660009081526020928352604080822087835284529020839055610888565b60849185918773ffffffffffffffffffffffffffffffffffffffff604051947f137ad6ab000000000000000000000000000000000000000000000000000000008652166004850152602484015260448301526064820152fd5b50801515610883565b73ffffffffffffffffffffffffffffffffffffffff837ff7e1ac0f000000000000000000000000000000000000000000000000000000006000521660045260246000fdfea264697066735822122093a956c81b88c4b53a7b63bc3e14f606d74ea0efa8e9816ac1f69db25dbf9b4a64736f6c634300081e0033",
  "deployedBytecode": "0x6080604052600436101561001257600080fd5b60003560e01c80631b9a7529146102b057806342966c681461024c578063751ec2d314610112576379cc67901461004857600080fd5b3461010d5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261010d5760043573ffffffffffffffffffffffffffffffffffffffff811680820361010d576100f091602435917f1da92899d3da68bf9787824388a37ea2bfa79780bcef91b9716c390eec8ecbee90836100cb610661565b9173ffffffffffffffffffffffffffffffffffffffff8316036100fb575b5050610540565b602060405160018152f35b610106918484610805565b38836100e9565b600080fd5b3461010d5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261010d57610149610661565b73ffffffffffffffffffffffffffffffffffffffff807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035416911690810361021f577f20c07ed1000000000000000000000000000000000000000000000000000000006000527fca9d3e17f264b0f3984e2634e94adb37fa3e6a8103f06aeae6fa59e21c769f5d6020527f0fe906604d4cc705ea1b9f113133426bf04f7f63322b0f5653f6f8d581e44fb480547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055005b7f673a31a10000000000000000000000000000000000000000000000000000000060005260045260246000fd5b3461010d5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261010d576100f06004357f1da92899d3da68bf9787824388a37ea2bfa79780bcef91b9716c390eec8ecbee6102aa610661565b90610540565b3461010d5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261010d5760043567ffffffffffffffff811161010d576102ff903690600401610355565b6024359167ffffffffffffffff831161010d576103236100f0933690600401610355565b9290917f1da92899d3da68bf9787824388a37ea2bfa79780bcef91b9716c390eec8ecbee61034f610661565b906103c5565b9181601f8401121561010d5782359167ffffffffffffffff831161010d576020808501948460051b01011161010d57565b91908110156103965760051b0190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9390929480860361051657851561050e5760009560005b8181106103fd57505050505050816103f2575050565b600201908154039055565b610408818387610386565b3573ffffffffffffffffffffffffffffffffffffffff81169081810361010d57610433838688610386565b3590818973ffffffffffffffffffffffffffffffffffffffff811685036104fc575b509050610494575b600192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020600093604051908152a3016103dc565b98604060008381528a60205220548a810390808210156104c65750600083815260208b9052604090205589019861045d565b8b90847fe450d38c0000000000000000000000000000000000000000000000000000000060005260045260245260445260646000fd5b610506928c610805565b388189610455565b505050505050565b7f658253360000000000000000000000000000000000000000000000000000000060005260046000fd5b8261058e575b50907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602073ffffffffffffffffffffffffffffffffffffffff6000946040519485521692a3565b73ffffffffffffffffffffffffffffffffffffffff8216600052806020526040600020548381039080821015610615575073ffffffffffffffffffffffffffffffffffffffff8316600090815260208390526040902055600201805483900390557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610546565b849073ffffffffffffffffffffffffffffffffffffffff857fe450d38c000000000000000000000000000000000000000000000000000000006000521660045260245260445260646000fd5b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001680156107f65732331480156107fb575b6107f6577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec36013560601c908033149081156106ec575b506106e957503390565b90565b60649150602090604051928380927f019a20280000000000000000000000000000000000000000000000000000000082528660048301523360248301523060448301525afa9081156107ea57600091610747575b50386106df565b60203d6020116107e3575b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f820116820182811067ffffffffffffffff8211176107b6576020918391604052810103126107b257519081151582036107af575038610740565b80fd5b5080fd5b6024847f4e487b710000000000000000000000000000000000000000000000000000000081526041600452fd5b503d610752565b6040513d6000823e3d90fd5b503390565b50601836106106a8565b92909173ffffffffffffffffffffffffffffffffffffffff169283156109755760010173ffffffffffffffffffffffffffffffffffffffff831660005280602052604060002084600052602052604060002054917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8314158061096c575b6108cf575b505090602073ffffffffffffffffffffffffffffffffffffffff7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925926040519485521692a3565b808303928084101561091357505073ffffffffffffffffffffffffffffffffffffffff83811660009081526020928352604080822087835284529020839055610888565b60849185918773ffffffffffffffffffffffffffffffffffffffff604051947f137ad6ab000000000000000000000000000000000000000000000000000000008652166004850152602484015260448301526064820152fd5b50801515610883565b73ffffffffffffffffffffffffffffffffffffffff837ff7e1ac0f000000000000000000000000000000000000000000000000000000006000521660045260246000fdfea264697066735822122093a956c81b88c4b53a7b63bc3e14f606d74ea0efa8e9816ac1f69db25dbf9b4a64736f6c634300081e0033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
