{
  "_format": "hh-sol-artifact-1",
  "contractName": "IdentityRegistryImplV1",
  "sourceName": "contracts/registry/IdentityRegistryImplV1.sol",
  "abi": [
    {
      "inputs": [],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "target",
          "type": "address"
        }
      ],
      "name": "AddressEmptyCode",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "implementation",
          "type": "address"
        }
      ],
      "name": "ERC1967InvalidImplementation",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "ERC1967NonPayable",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "FailedCall",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "HUB_NOT_SET",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "InvalidInitialization",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "LeafAlreadyExists",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "LeafCannotBeZero",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "LeafDoesNotExist",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "LeafGreaterThanSnarkScalarField",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "NotInitializing",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "ONLY_HUB_CAN_ACCESS",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "OwnableInvalidOwner",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        }
      ],
      "name": "OwnableUnauthorizedAccount",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "REGISTERED_COMMITMENT",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "UUPSUnauthorizedCallContext",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "slot",
          "type": "bytes32"
        }
      ],
      "name": "UUPSUnsupportedProxiableUUID",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "WrongSiblingNodes",
      "type": "error"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "attestationId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "nullifier",
          "type": "uint256"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "commitment",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "timestamp",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "imtRoot",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "imtIndex",
          "type": "uint256"
        }
      ],
      "name": "CommitmentRegistered",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "cscaRoot",
          "type": "uint256"
        }
      ],
      "name": "CscaRootUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "attestationId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "nullifier",
          "type": "uint256"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "commitment",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "timestamp",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "imtRoot",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "imtIndex",
          "type": "uint256"
        }
      ],
      "name": "DevCommitmentRegistered",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "oldLeaf",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "imtRoot",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "timestamp",
          "type": "uint256"
        }
      ],
      "name": "DevCommitmentRemoved",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "oldLeaf",
          "type": "uint256"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "newLeaf",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "imtRoot",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "timestamp",
          "type": "uint256"
        }
      ],
      "name": "DevCommitmentUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "commitment",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "imtRoot",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "imtIndex",
          "type": "uint256"
        }
      ],
      "name": "DevDscKeyCommitmentRegistered",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "oldLeaf",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "imtRoot",
          "type": "uint256"
        }
      ],
      "name": "DevDscKeyCommitmentRemoved",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "commitment",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "bool",
          "name": "state",
          "type": "bool"
        }
      ],
      "name": "DevDscKeyCommitmentStateChanged",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "oldLeaf",
          "type": "uint256"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "newLeaf",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "imtRoot",
          "type": "uint256"
        }
      ],
      "name": "DevDscKeyCommitmentUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "attestationId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "nullifier",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "bool",
          "name": "state",
          "type": "bool"
        }
      ],
      "name": "DevNullifierStateChanged",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "commitment",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "timestamp",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "imtRoot",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "imtIndex",
          "type": "uint256"
        }
      ],
      "name": "DscKeyCommitmentRegistered",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "hub",
          "type": "address"
        }
      ],
      "name": "HubUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint64",
          "name": "version",
          "type": "uint64"
        }
      ],
      "name": "Initialized",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "nameAndDobOfacRoot",
          "type": "uint256"
        }
      ],
      "name": "NameAndDobOfacRootUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "nameAndYobOfacRoot",
          "type": "uint256"
        }
      ],
      "name": "NameAndYobOfacRootUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "previousOwner",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "OwnershipTransferStarted",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "previousOwner",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "OwnershipTransferred",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "passportNoOfacRoot",
          "type": "uint256"
        }
      ],
      "name": "PassportNoOfacRootUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "hub",
          "type": "address"
        }
      ],
      "name": "RegistryInitialized",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "implementation",
          "type": "address"
        }
      ],
      "name": "Upgraded",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "UPGRADE_INTERFACE_VERSION",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "acceptOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "root",
          "type": "uint256"
        }
      ],
      "name": "checkCscaRoot",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "root",
          "type": "uint256"
        }
      ],
      "name": "checkDscKeyCommitmentMerkleRoot",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "root",
          "type": "uint256"
        }
      ],
      "name": "checkIdentityCommitmentRoot",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "passportNoRoot",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "nameAndDobRoot",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "nameAndYobRoot",
          "type": "uint256"
        }
      ],
      "name": "checkOfacRoots",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "dscCommitment",
          "type": "uint256"
        }
      ],
      "name": "devAddDscKeyCommitment",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "attestationId",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "nullifier",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "commitment",
          "type": "uint256"
        }
      ],
      "name": "devAddIdentityCommitment",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "dscCommitment",
          "type": "uint256"
        },
        {
          "internalType": "bool",
          "name": "state",
          "type": "bool"
        }
      ],
      "name": "devChangeDscKeyCommitmentState",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "attestationId",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "nullifier",
          "type": "uint256"
        },
        {
          "internalType": "bool",
          "name": "state",
          "type": "bool"
        }
      ],
      "name": "devChangeNullifierState",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "oldLeaf",
          "type": "uint256"
        },
        {
          "internalType": "uint256[]",
          "name": "siblingNodes",
          "type": "uint256[]"
        }
      ],
      "name": "devRemoveCommitment",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "oldLeaf",
          "type": "uint256"
        },
        {
          "internalType": "uint256[]",
          "name": "siblingNodes",
          "type": "uint256[]"
        }
      ],
      "name": "devRemoveDscKeyCommitment",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "oldLeaf",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "newLeaf",
          "type": "uint256"
        },
        {
          "internalType": "uint256[]",
          "name": "siblingNodes",
          "type": "uint256[]"
        }
      ],
      "name": "devUpdateCommitment",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "oldLeaf",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "newLeaf",
          "type": "uint256"
        },
        {
          "internalType": "uint256[]",
          "name": "siblingNodes",
          "type": "uint256[]"
        }
      ],
      "name": "devUpdateDscKeyCommitment",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getCscaRoot",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "commitment",
          "type": "uint256"
        }
      ],
      "name": "getDscKeyCommitmentIndex",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getDscKeyCommitmentMerkleRoot",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getDscKeyCommitmentTreeSize",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "commitment",
          "type": "uint256"
        }
      ],
      "name": "getIdentityCommitmentIndex",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getIdentityCommitmentMerkleRoot",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getIdentityCommitmentMerkleTreeSize",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getNameAndDobOfacRoot",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getNameAndYobOfacRoot",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getPassportNoOfacRoot",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "hub",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_hub",
          "type": "address"
        }
      ],
      "name": "initialize",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "commitment",
          "type": "uint256"
        }
      ],
      "name": "isRegisteredDscKeyCommitment",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "attestationId",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "nullifier",
          "type": "uint256"
        }
      ],
      "name": "nullifiers",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "owner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "pendingOwner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "proxiableUUID",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "attestationId",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "nullifier",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "commitment",
          "type": "uint256"
        }
      ],
      "name": "registerCommitment",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "dscCommitment",
          "type": "uint256"
        }
      ],
      "name": "registerDscKeyCommitment",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "renounceOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "root",
          "type": "uint256"
        }
      ],
      "name": "rootTimestamps",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "transferOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "newCscaRoot",
          "type": "uint256"
        }
      ],
      "name": "updateCscaRoot",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "newHubAddress",
          "type": "address"
        }
      ],
      "name": "updateHub",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "newNameAndDobOfacRoot",
          "type": "uint256"
        }
      ],
      "name": "updateNameAndDobOfacRoot",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "newNameAndYobOfacRoot",
          "type": "uint256"
        }
      ],
      "name": "updateNameAndYobOfacRoot",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "newPassportNoOfacRoot",
          "type": "uint256"
        }
      ],
      "name": "updatePassportNoOfacRoot",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "newImplementation",
          "type": "address"
        },
        {
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "upgradeToAndCall",
      "outputs": [],
      "stateMutability": "payable",
      "type": "function"
    }
  ],
  "bytecode": "[encoded data, 12368 characters]$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808d8d8881811061175e5761175e612285565b905060200201358152602001898152506040518263ffffffff1660e01b815260040161178a919061229b565b602060405180830381865af41580156117a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117cb919061226c565b955073__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808d8d8881811061180457611804612285565b905060200201358152602001888152506040518263ffffffff1660e01b8152600401611830919061229b565b602060405180830381865af415801561184d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611871919061226c565b94508260010192506119ec565b86811c84821c146119d8576000805160206124288339815191528a8a858181106118aa576118aa612285565b90506020020135106118cf576040516361c0541760e11b815260040160405180910390fd5b73__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808981526020018d8d8881811061190c5761190c612285565b905060200201358152506040518263ffffffff1660e01b8152600401611932919061229b565b602060405180830381865af415801561194f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611973919061226c565b955073__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808881526020018d8d888181106119b2576119b2612285565b905060200201358152506040518263ffffffff1660e01b8152600401611830919061229b565b600083815260028e01602052604090208690555b6001016116cb565b5060018c0154600090815260028d0160205260409020548414611a2a57604051631fd4986360e11b815260040160405180910390fd5b600081815260028d01602052604090208590558915611a5c5760008b815260038d016020526040808220548c83529120555b505050600088815260038a0160205260408120555091505095945050505050565b60006000805160206124288339815191528210611aad576040516361c0541760e11b815260040160405180910390fd5b81600003611ace576040516314b48df160e11b815260040160405180910390fd5b600082815260038401602052604090205415611afd576040516312c50cad60e11b815260040160405180910390fd5b825460018085015490611b119083906122cc565b611b1c8260026123c6565b1015611b2e57611b2b816123d2565b90505b600185018190558360005b82811015611c0b578084901c600116600103611bef57604080518082018252600083815260028a0160209081529083902054825281018490529051632b0aac7f60e11b815273__$75f79a42d9bcbdbb69ad79ebd80f556f39$[encoded data, 4482 characters]",
  "deployedBytecode": "[encoded data, 11862 characters]$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808d8d8881811061175e5761175e612285565b905060200201358152602001898152506040518263ffffffff1660e01b815260040161178a919061229b565b602060405180830381865af41580156117a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117cb919061226c565b955073__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808d8d8881811061180457611804612285565b905060200201358152602001888152506040518263ffffffff1660e01b8152600401611830919061229b565b602060405180830381865af415801561184d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611871919061226c565b94508260010192506119ec565b86811c84821c146119d8576000805160206124288339815191528a8a858181106118aa576118aa612285565b90506020020135106118cf576040516361c0541760e11b815260040160405180910390fd5b73__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808981526020018d8d8881811061190c5761190c612285565b905060200201358152506040518263ffffffff1660e01b8152600401611932919061229b565b602060405180830381865af415801561194f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611973919061226c565b955073__$75f79a42d9bcbdbb69ad79ebd80f556f39$__63561558fe60405180604001604052808881526020018d8d888181106119b2576119b2612285565b905060200201358152506040518263ffffffff1660e01b8152600401611830919061229b565b600083815260028e01602052604090208690555b6001016116cb565b5060018c0154600090815260028d0160205260409020548414611a2a57604051631fd4986360e11b815260040160405180910390fd5b600081815260028d01602052604090208590558915611a5c5760008b815260038d016020526040808220548c83529120555b505050600088815260038a0160205260408120555091505095945050505050565b60006000805160206124288339815191528210611aad576040516361c0541760e11b815260040160405180910390fd5b81600003611ace576040516314b48df160e11b815260040160405180910390fd5b600082815260038401602052604090205415611afd576040516312c50cad60e11b815260040160405180910390fd5b825460018085015490611b119083906122cc565b611b1c8260026123c6565b1015611b2e57611b2b816123d2565b90505b600185018190558360005b82811015611c0b578084901c600116600103611bef57604080518082018252600083815260028a0160209081529083902054825281018490529051632b0aac7f60e11b815273__$75f79a42d9bcbdbb69ad79ebd80f556f39$[encoded data, 4482 characters]",
  "linkReferences": {
    "poseidon-solidity/PoseidonT3.sol": {
      "PoseidonT3": [
        {
          "length": 20,
          "start": 6182
        },
        {
          "length": 20,
          "start": 6348
        },
        {
          "length": 20,
          "start": 6606
        },
        {
          "length": 20,
          "start": 6772
        },
        {
          "length": 20,
          "start": 7293
        }
      ]
    }
  },
  "deployedLinkReferences": {
    "poseidon-solidity/PoseidonT3.sol": {
      "PoseidonT3": [
        {
          "length": 20,
          "start": 5929
        },
        {
          "length": 20,
          "start": 6095
        },
        {
          "length": 20,
          "start": 6353
        },
        {
          "length": 20,
          "start": 6519
        },
        {
          "length": 20,
          "start": 7040
        }
      ]
    }
  }
}
