{
  "_format": "hh-sol-artifact-1",
  "contractName": "SemaphoreChecker",
  "sourceName": "contracts/extensions/semaphore/SemaphoreChecker.sol",
  "abi": [
    {
      "inputs": [],
      "name": "AlreadyInitialized",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "InvalidGroup",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "InvalidProof",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "InvalidProver",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "subject",
          "type": "address"
        },
        {
          "internalType": "bytes",
          "name": "evidence",
          "type": "bytes"
        }
      ],
      "name": "check",
      "outputs": [
        {
          "internalType": "bool",
          "name": "checked",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getAppendedBytes",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "appendedBytes",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "groupId",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "initialize",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "initialized",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "semaphore",
      "outputs": [
        {
          "internalType": "contract ISemaphore",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": "0x6080604052348015600f57600080fd5b506105f08061001f6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063158ef93e146100675780637b5d2534146100895780638129fc1c146100b9578063a0f44c92146100c3578063b41a4b19146100da578063e2b24085146100ef575b600080fd5b6000546100749060ff1681565b60405190151581526020015b60405180910390f35b6000546100a19061010090046001600160a01b031681565b6040516001600160a01b039091168152602001610080565b6100c1610102565b005b6100cc60015481565b604051908152602001610080565b6100e261010c565b6040516100809190610303565b6100746100fd366004610369565b61011b565b61010a610130565b565b606061011661018a565b905090565b6000610128848484610195565b949350505050565b6101386102a2565b600061014261018a565b90506000808280602001905181019061015b91906103f0565b600080546001600160a01b0390931661010002610100600160a81b031990931692909217909155600155505050565b6060610116306102d4565b6000806101a483850185610481565b60808101516001549192509081146101cf5760405163036c503960e61b815260040160405180910390fd5b60608201516001600160a01b038082169088161461020057604051635945f53b60e01b815260040160405180910390fd5b6000546001546040516308ade83160e31b81526101009092046001600160a01b03169163456f418891610237918790600401610521565b602060405180830381865afa158015610254573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102789190610591565b610295576040516309bde33960e01b815260040160405180910390fd5b5060019695505050505050565b60005460ff16156102c55760405162dc149f60e41b815260040160405180910390fd5b6000805460ff19166001179055565b60405164ffffffffff602c19833b0116808252602090810190602d908301843c60408101815101604052919050565b602081526000825180602084015260005b818110156103315760208186018101516040868401015201610314565b506000604082850101526040601f19601f83011684010191505092915050565b6001600160a01b038116811461036657600080fd5b50565b60008060006040848603121561037e57600080fd5b833561038981610351565b9250602084013567ffffffffffffffff8111156103a557600080fd5b8401601f810186136103b657600080fd5b803567ffffffffffffffff8111156103cd57600080fd5b8660208284010111156103df57600080fd5b939660209190910195509293505050565b6000806040838503121561040357600080fd5b825161040e81610351565b6020939093015192949293505050565b634e487b7160e01b600052604160045260246000fd5b60405160c0810167ffffffffffffffff811182821017156104575761045761041e565b60405290565b604051610100810167ffffffffffffffff811182821017156104575761045761041e565b60006101a082840312801561049557600080fd5b5060006104a0610434565b833581526020808501359082015260408085013590820152606080850135908201526080808501359082015260bf840185136104da578182fd5b6104e261045d565b806101a08601878111156104f4578485fd5b60a087015b818110156105115780358452602093840193016104f9565b505060a083015250949350505050565b60006101c08201905083825282516020830152602083015160408301526040830151606083015260608301516080830152608083015160a083015260a083015160c0830160005b6008811015610587578251825260209283019290910190600101610568565b5050509392505050565b6000602082840312156105a357600080fd5b815180151581146105b357600080fd5b939250505056fea2646970667358221220fc67a94ed63919c525be2269490b6a2aa5142c90c534bcdffcdd36d9f4aefc0164736f6c634300081c0033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c8063158ef93e146100675780637b5d2534146100895780638129fc1c146100b9578063a0f44c92146100c3578063b41a4b19146100da578063e2b24085146100ef575b600080fd5b6000546100749060ff1681565b60405190151581526020015b60405180910390f35b6000546100a19061010090046001600160a01b031681565b6040516001600160a01b039091168152602001610080565b6100c1610102565b005b6100cc60015481565b604051908152602001610080565b6100e261010c565b6040516100809190610303565b6100746100fd366004610369565b61011b565b61010a610130565b565b606061011661018a565b905090565b6000610128848484610195565b949350505050565b6101386102a2565b600061014261018a565b90506000808280602001905181019061015b91906103f0565b600080546001600160a01b0390931661010002610100600160a81b031990931692909217909155600155505050565b6060610116306102d4565b6000806101a483850185610481565b60808101516001549192509081146101cf5760405163036c503960e61b815260040160405180910390fd5b60608201516001600160a01b038082169088161461020057604051635945f53b60e01b815260040160405180910390fd5b6000546001546040516308ade83160e31b81526101009092046001600160a01b03169163456f418891610237918790600401610521565b602060405180830381865afa158015610254573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102789190610591565b610295576040516309bde33960e01b815260040160405180910390fd5b5060019695505050505050565b60005460ff16156102c55760405162dc149f60e41b815260040160405180910390fd5b6000805460ff19166001179055565b60405164ffffffffff602c19833b0116808252602090810190602d908301843c60408101815101604052919050565b602081526000825180602084015260005b818110156103315760208186018101516040868401015201610314565b506000604082850101526040601f19601f83011684010191505092915050565b6001600160a01b038116811461036657600080fd5b50565b60008060006040848603121561037e57600080fd5b833561038981610351565b9250602084013567ffffffffffffffff8111156103a557600080fd5b8401601f810186136103b657600080fd5b803567ffffffffffffffff8111156103cd57600080fd5b8660208284010111156103df57600080fd5b939660209190910195509293505050565b6000806040838503121561040357600080fd5b825161040e81610351565b6020939093015192949293505050565b634e487b7160e01b600052604160045260246000fd5b60405160c0810167ffffffffffffffff811182821017156104575761045761041e565b60405290565b604051610100810167ffffffffffffffff811182821017156104575761045761041e565b60006101a082840312801561049557600080fd5b5060006104a0610434565b833581526020808501359082015260408085013590820152606080850135908201526080808501359082015260bf840185136104da578182fd5b6104e261045d565b806101a08601878111156104f4578485fd5b60a087015b818110156105115780358452602093840193016104f9565b505060a083015250949350505050565b60006101c08201905083825282516020830152602083015160408301526040830151606083015260608301516080830152608083015160a083015260a083015160c0830160005b6008811015610587578251825260209283019290910190600101610568565b5050509392505050565b6000602082840312156105a357600080fd5b815180151581146105b357600080fd5b939250505056fea2646970667358221220fc67a94ed63919c525be2269490b6a2aa5142c90c534bcdffcdd36d9f4aefc0164736f6c634300081c0033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
