@vocdoni/davinci-contracts
Version:
Smart contracts powering DAVINCI's digital voting protocol
927 lines (926 loc) • 48.3 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.ProcessRegistry__factory = void 0;
/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */
const ethers_1 = require("ethers");
const _abi = [
{
inputs: [
{
internalType: "string",
name: "_chainID",
type: "string",
},
{
internalType: "address",
name: "_organizationRegistryAddress",
type: "address",
},
{
internalType: "address",
name: "_stVerifier",
type: "address",
},
{
internalType: "address",
name: "_rVerifier",
type: "address",
},
],
stateMutability: "nonpayable",
type: "constructor",
},
{
inputs: [],
name: "CannotAcceptResult",
type: "error",
},
{
inputs: [],
name: "InvalidCensus",
type: "error",
},
{
inputs: [],
name: "InvalidDuration",
type: "error",
},
{
inputs: [],
name: "InvalidMaxCount",
type: "error",
},
{
inputs: [],
name: "InvalidMaxValue",
type: "error",
},
{
inputs: [],
name: "InvalidStartTime",
type: "error",
},
{
inputs: [],
name: "InvalidStateRoot",
type: "error",
},
{
inputs: [],
name: "InvalidStatus",
type: "error",
},
{
inputs: [],
name: "NotOrganizationAdministrator",
type: "error",
},
{
inputs: [],
name: "OrganizationNotFound",
type: "error",
},
{
inputs: [],
name: "ProcessAlreadyExists",
type: "error",
},
{
inputs: [],
name: "ProcessNotFound",
type: "error",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "bytes32",
name: "processId",
type: "bytes32",
},
{
indexed: false,
internalType: "bytes32",
name: "censusRoot",
type: "bytes32",
},
{
indexed: false,
internalType: "string",
name: "censusURI",
type: "string",
},
{
indexed: false,
internalType: "uint256",
name: "maxVotes",
type: "uint256",
},
],
name: "CensusUpdated",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "bytes32",
name: "processId",
type: "bytes32",
},
{
indexed: true,
internalType: "address",
name: "creator",
type: "address",
},
],
name: "ProcessCreated",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "bytes32",
name: "processId",
type: "bytes32",
},
{
indexed: false,
internalType: "uint256",
name: "duration",
type: "uint256",
},
],
name: "ProcessDurationChanged",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "bytes32",
name: "processId",
type: "bytes32",
},
{
indexed: false,
internalType: "uint256[]",
name: "result",
type: "uint256[]",
},
],
name: "ProcessResultsSet",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "bytes32",
name: "processId",
type: "bytes32",
},
{
indexed: false,
internalType: "uint256",
name: "newStateRoot",
type: "uint256",
},
],
name: "ProcessStateRootUpdated",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "bytes32",
name: "processId",
type: "bytes32",
},
{
indexed: false,
internalType: "enum IProcessRegistry.ProcessStatus",
name: "newStatus",
type: "uint8",
},
],
name: "ProcessStatusChanged",
type: "event",
},
{
inputs: [],
name: "MAX_CENSUS_ORIGIN",
outputs: [
{
internalType: "uint8",
name: "",
type: "uint8",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "MAX_STATUS",
outputs: [
{
internalType: "uint8",
name: "",
type: "uint8",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "chainID",
outputs: [
{
internalType: "string",
name: "",
type: "string",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "processId",
type: "bytes32",
},
],
name: "getProcess",
outputs: [
{
components: [
{
internalType: "enum IProcessRegistry.ProcessStatus",
name: "status",
type: "uint8",
},
{
internalType: "address",
name: "organizationId",
type: "address",
},
{
components: [
{
internalType: "uint256",
name: "x",
type: "uint256",
},
{
internalType: "uint256",
name: "y",
type: "uint256",
},
],
internalType: "struct IProcessRegistry.EncryptionKey",
name: "encryptionKey",
type: "tuple",
},
{
internalType: "uint256",
name: "latestStateRoot",
type: "uint256",
},
{
internalType: "uint256[]",
name: "result",
type: "uint256[]",
},
{
internalType: "uint256",
name: "startTime",
type: "uint256",
},
{
internalType: "uint256",
name: "duration",
type: "uint256",
},
{
internalType: "uint256",
name: "voteCount",
type: "uint256",
},
{
internalType: "uint256",
name: "voteOverwriteCount",
type: "uint256",
},
{
internalType: "string",
name: "metadataURI",
type: "string",
},
{
components: [
{
internalType: "bool",
name: "costFromWeight",
type: "bool",
},
{
internalType: "bool",
name: "forceUniqueness",
type: "bool",
},
{
internalType: "uint8",
name: "maxCount",
type: "uint8",
},
{
internalType: "uint8",
name: "costExponent",
type: "uint8",
},
{
internalType: "uint256",
name: "maxValue",
type: "uint256",
},
{
internalType: "uint256",
name: "minValue",
type: "uint256",
},
{
internalType: "uint256",
name: "maxTotalCost",
type: "uint256",
},
{
internalType: "uint256",
name: "minTotalCost",
type: "uint256",
},
],
internalType: "struct IProcessRegistry.BallotMode",
name: "ballotMode",
type: "tuple",
},
{
components: [
{
internalType: "enum IProcessRegistry.CensusOrigin",
name: "censusOrigin",
type: "uint8",
},
{
internalType: "uint256",
name: "maxVotes",
type: "uint256",
},
{
internalType: "bytes32",
name: "censusRoot",
type: "bytes32",
},
{
internalType: "string",
name: "censusURI",
type: "string",
},
],
internalType: "struct IProcessRegistry.Census",
name: "census",
type: "tuple",
},
],
internalType: "struct IProcessRegistry.Process",
name: "",
type: "tuple",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "getRVerifierVKeyHash",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "getSTVerifierVKeyHash",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "enum IProcessRegistry.ProcessStatus",
name: "status",
type: "uint8",
},
{
internalType: "uint256",
name: "startTime",
type: "uint256",
},
{
internalType: "uint256",
name: "duration",
type: "uint256",
},
{
components: [
{
internalType: "bool",
name: "costFromWeight",
type: "bool",
},
{
internalType: "bool",
name: "forceUniqueness",
type: "bool",
},
{
internalType: "uint8",
name: "maxCount",
type: "uint8",
},
{
internalType: "uint8",
name: "costExponent",
type: "uint8",
},
{
internalType: "uint256",
name: "maxValue",
type: "uint256",
},
{
internalType: "uint256",
name: "minValue",
type: "uint256",
},
{
internalType: "uint256",
name: "maxTotalCost",
type: "uint256",
},
{
internalType: "uint256",
name: "minTotalCost",
type: "uint256",
},
],
internalType: "struct IProcessRegistry.BallotMode",
name: "ballotMode",
type: "tuple",
},
{
components: [
{
internalType: "enum IProcessRegistry.CensusOrigin",
name: "censusOrigin",
type: "uint8",
},
{
internalType: "uint256",
name: "maxVotes",
type: "uint256",
},
{
internalType: "bytes32",
name: "censusRoot",
type: "bytes32",
},
{
internalType: "string",
name: "censusURI",
type: "string",
},
],
internalType: "struct IProcessRegistry.Census",
name: "census",
type: "tuple",
},
{
internalType: "string",
name: "metadata",
type: "string",
},
{
internalType: "address",
name: "organizationId",
type: "address",
},
{
internalType: "bytes32",
name: "processId",
type: "bytes32",
},
{
components: [
{
internalType: "uint256",
name: "x",
type: "uint256",
},
{
internalType: "uint256",
name: "y",
type: "uint256",
},
],
internalType: "struct IProcessRegistry.EncryptionKey",
name: "encryptionKey",
type: "tuple",
},
{
internalType: "uint256",
name: "initStateRoot",
type: "uint256",
},
],
name: "newProcess",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "organizationRegistryAddress",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "processCount",
outputs: [
{
internalType: "uint32",
name: "",
type: "uint32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
name: "processes",
outputs: [
{
internalType: "enum IProcessRegistry.ProcessStatus",
name: "status",
type: "uint8",
},
{
internalType: "address",
name: "organizationId",
type: "address",
},
{
components: [
{
internalType: "uint256",
name: "x",
type: "uint256",
},
{
internalType: "uint256",
name: "y",
type: "uint256",
},
],
internalType: "struct IProcessRegistry.EncryptionKey",
name: "encryptionKey",
type: "tuple",
},
{
internalType: "uint256",
name: "latestStateRoot",
type: "uint256",
},
{
internalType: "uint256",
name: "startTime",
type: "uint256",
},
{
internalType: "uint256",
name: "duration",
type: "uint256",
},
{
internalType: "uint256",
name: "voteCount",
type: "uint256",
},
{
internalType: "uint256",
name: "voteOverwriteCount",
type: "uint256",
},
{
internalType: "string",
name: "metadataURI",
type: "string",
},
{
components: [
{
internalType: "bool",
name: "costFromWeight",
type: "bool",
},
{
internalType: "bool",
name: "forceUniqueness",
type: "bool",
},
{
internalType: "uint8",
name: "maxCount",
type: "uint8",
},
{
internalType: "uint8",
name: "costExponent",
type: "uint8",
},
{
internalType: "uint256",
name: "maxValue",
type: "uint256",
},
{
internalType: "uint256",
name: "minValue",
type: "uint256",
},
{
internalType: "uint256",
name: "maxTotalCost",
type: "uint256",
},
{
internalType: "uint256",
name: "minTotalCost",
type: "uint256",
},
],
internalType: "struct IProcessRegistry.BallotMode",
name: "ballotMode",
type: "tuple",
},
{
components: [
{
internalType: "enum IProcessRegistry.CensusOrigin",
name: "censusOrigin",
type: "uint8",
},
{
internalType: "uint256",
name: "maxVotes",
type: "uint256",
},
{
internalType: "bytes32",
name: "censusRoot",
type: "bytes32",
},
{
internalType: "string",
name: "censusURI",
type: "string",
},
],
internalType: "struct IProcessRegistry.Census",
name: "census",
type: "tuple",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "rVerifier",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "processId",
type: "bytes32",
},
{
components: [
{
internalType: "enum IProcessRegistry.CensusOrigin",
name: "censusOrigin",
type: "uint8",
},
{
internalType: "uint256",
name: "maxVotes",
type: "uint256",
},
{
internalType: "bytes32",
name: "censusRoot",
type: "bytes32",
},
{
internalType: "string",
name: "censusURI",
type: "string",
},
],
internalType: "struct IProcessRegistry.Census",
name: "census",
type: "tuple",
},
],
name: "setProcessCensus",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "processId",
type: "bytes32",
},
{
internalType: "uint256",
name: "_duration",
type: "uint256",
},
],
name: "setProcessDuration",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "processId",
type: "bytes32",
},
{
internalType: "bytes",
name: "proof",
type: "bytes",
},
{
internalType: "bytes",
name: "input",
type: "bytes",
},
],
name: "setProcessResults",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "processId",
type: "bytes32",
},
{
internalType: "enum IProcessRegistry.ProcessStatus",
name: "newStatus",
type: "uint8",
},
],
name: "setProcessStatus",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "stVerifier",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "processId",
type: "bytes32",
},
{
internalType: "bytes",
name: "proof",
type: "bytes",
},
{
internalType: "bytes",
name: "input",
type: "bytes",
},
],
name: "submitStateTransition",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
];
const _bytecode = "0x608060405234801561001057600080fd5b5060405161297e38038061297e83398101604081905261002f916100b1565b600261003b8582610238565b50600180546001600160a01b039485166001600160a01b031991821617909155600380549385169382169390931790925560048054919093169116179055506102f6565b634e487b7160e01b600052604160045260246000fd5b80516001600160a01b03811681146100ac57600080fd5b919050565b600080600080608085870312156100c757600080fd5b84516001600160401b038111156100dd57600080fd5b8501601f810187136100ee57600080fd5b80516001600160401b038111156101075761010761007f565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101355761013561007f565b60405281815282820160200189101561014d57600080fd5b60005b8281101561016c57602081850181015183830182015201610150565b5060006020838301015280965050505061018860208601610095565b925061019660408601610095565b91506101a460608601610095565b905092959194509250565b600181811c908216806101c357607f821691505b6020821081036101e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561023357806000526020600020601f840160051c810160208510156102105750805b601f840160051c820191505b81811015610230576000815560010161021c565b50505b505050565b81516001600160401b038111156102515761025161007f565b6102658161025f84546101af565b846101e9565b6020601f82116001811461029957600083156102815750848201515b600019600385901b1c1916600184901b178455610230565b600084815260208120601f198516915b828110156102c957878501518255602094850194600190920191016102a9565b50848210156102e75786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b612679806103056000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806392bc2669116100a2578063adc879e911610071578063adc879e91461024f578063b79938e914610264578063c718c01f14610277578063d71d072e1461028a578063f9aa44991461029d57600080fd5b806392bc2669146101f6578063992bc45b146102095780639c18deaf14610229578063a5b110de1461023c57600080fd5b806356a6f1e2116100de57806356a6f1e21461019a5780636bae04ea146101af57806372c628ef146101c2578063848df540146101ca57600080fd5b806302cc919a146101105780630535fece1461012f57806309706392146101595780634c0acc5614610184575b600080fd5b610118600981565b60405160ff90911681526020015b60405180910390f35b61014261013d366004611aca565b6102a5565b6040516101269b9a99989796959493929190611c00565b60035461016c906001600160a01b031681565b6040516001600160a01b039091168152602001610126565b61018c6104e7565b604051908152602001610126565b6101ad6101a8366004611caf565b61055a565b005b6101ad6101bd366004611cf3565b610729565b610118600481565b6001546101e190600160a01b900463ffffffff1681565b60405163ffffffff9091168152602001610126565b6101ad610204366004611dbf565b610956565b61021c610217366004611aca565b610cb1565b6040516101269190611ee2565b60045461016c906001600160a01b031681565b6101ad61024a366004611fd6565b610fb4565b610257611534565b6040516101269190612055565b60015461016c906001600160a01b031681565b6101ad61028536600461206f565b6115c2565b6101ad610298366004611fd6565b611742565b61018c6118d9565b6000602081815291815260409081902080548251808401909352600182015483526002820154938301939093526003810154600582015460068301546007840154600885015460098601805460ff8a169961010090046001600160a01b03169897919061031190612091565b80601f016020809104026020016040519081016040528092919081815260200182805461033d90612091565b801561038a5780601f1061035f5761010080835404028352916020019161038a565b820191906000526020600020905b81548152906001019060200180831161036d57829003601f168201915b5050604080516101008082018352600a88015460ff808216151584529181048216151560208401526201000081048216838501526301000000900481166060830152600b880154608080840191909152600c89015460a0840152600d89015460c0840152600e89015460e08401528351908101909352600f8801805497989297929650929450919250839116600981111561042757610427611ae3565b600981111561043857610438611ae3565b8152602001600182015481526020016002820154815260200160038201805461046090612091565b80601f016020809104026020016040519081016040528092919081815260200182805461048c90612091565b80156104d95780601f106104ae576101008083540402835291602001916104d9565b820191906000526020600020905b8154815290600101906020018083116104bc57829003601f168201915b50505050508152505090508b565b6003546040805163233ace1160e01b815290516000926001600160a01b03169163233ace119160048083019260209291908290030181865afa158015610531573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055591906120c5565b905090565b6000828152602081905260409020805461010090046001600160a01b03168061059657604051634d36eb6960e01b815260040160405180910390fd5b815460ff168060048111156105ad576105ad611ae3565b8460048111156105bf576105bf611ae3565b14806105de5750600484818111156105d9576105d9611ae3565b60ff16115b80610618575060008160048111156105f8576105f8611ae3565b141580156106185750600381600481111561061557610615611ae3565b14155b15610636576040516307a92f1960e51b815260040160405180910390fd5b60015460405163c1af6e0360e01b81526001600160a01b0384811660048301523360248301529091169063c1af6e0390604401602060405180830381865afa158015610686573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106aa91906120ef565b6106c75760405163f8b857d360e01b815260040160405180910390fd5b82548490849060ff191660018360048111156106e5576106e5611ae3565b0217905550847fac0c4085a30bc70d0d8893ee5d6466ac9c5f03e27fd7292dcef128a610e7c1908560405161071a919061210c565b60405180910390a25050505050565b6107366060820182612120565b90506000036107585760405163111127cb60e01b815260040160405180910390fd5b604081013560000361077d5760405163111127cb60e01b815260040160405180910390fd5b6000828152602081905260409020805461010090046001600160a01b0316806107b957604051634d36eb6960e01b815260040160405180910390fd5b60015460405163c1af6e0360e01b81526001600160a01b0383811660048301523360248301529091169063c1af6e0390604401602060405180830381865afa158015610809573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082d91906120ef565b61084a5760405163f8b857d360e01b815260040160405180910390fd5b6010820154602084013510156108735760405163111127cb60e01b815260040160405180910390fd5b6000825460ff16600481111561088b5761088b611ae3565b141580156108af57506003825460ff1660048111156108ac576108ac611ae3565b14155b156108cd576040516307a92f1960e51b815260040160405180910390fd5b60208301356010830155604083013560118301556108ee6060840184612120565b60128401916108fe9190836121cc565b50837f35947a8913e2156f19b018078c9f0667e49cb3dc24af3434a4d0b16b82675b1b60408501356109336060870187612120565b876020013560405161094894939291906122b5565b60405180910390a250505050565b60015460405163c1af6e0360e01b81526001600160a01b0386811660048301523360248301529091169063c1af6e0390604401602060405180830381865afa1580156109a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ca91906120ef565b6109e75760405163f8b857d360e01b815260040160405180910390fd5b6000838152602081905260409020805461010090046001600160a01b031615610a2357604051635040c4d360e11b815260040160405180910390fd5b610a3360608a0160408b016122ef565b60ff16600003610a565760405163ac38930b60e01b815260040160405180910390fd5b610a6660608a0160408b016122ef565b60ff16896080013511610a8c5760405163b1911d8b60e01b815260040160405180910390fd5b60048c81811115610a9f57610a9f611ae3565b60ff161180610add575060008c6004811115610abd57610abd611ae3565b14158015610add575060038c6004811115610ada57610ada611ae3565b14155b15610afb576040516307a92f1960e51b815260040160405180910390fd5b4260008c9003610b0957809b505b808c1015610b2a57604051632ca4094f60e21b815260040160405180910390fd5b80610b358c8e612322565b11610b5357604051637616640160e01b815260040160405180910390fd5b6009610b6260208b018b612342565b6009811115610b7357610b73611ae3565b60ff161115610b955760405163111127cb60e01b815260040160405180910390fd5b81548d90839060ff19166001836004811115610bb357610bb3611ae3565b0217905550600582018c9055600682018b90558154610100600160a81b0319166101006001600160a01b0388160217825583356001830155602084013560028301556003820183905560098201610c0b888a836121cc565b5089600a8301610c1b8282612379565b50899050600f8301610c2d828261243b565b505060018054600160a01b900463ffffffff16906014610c4c836124d3565b91906101000a81548163ffffffff021916908363ffffffff16021790555050336001600160a01b0316857fada6f87a2a16a0c9c169ca36754c5f33f7c1a973b575d068f888a549ed4faefa60405160405180910390a350505050505050505050505050565b610cb9611978565b60008281526020819052604090819020815161018081019092528054829060ff166004811115610ceb57610ceb611ae3565b6004811115610cfc57610cfc611ae3565b8152815461010090046001600160a01b03166020808301919091526040805180820182526001850154815260028501548184015281840152600384015460608401526004840180548251818502810185019093528083526080909401939192909190830182828015610d8d57602002820191906000526020600020905b815481526020019060010190808311610d79575b5050505050815260200160058201548152602001600682015481526020016007820154815260200160088201548152602001600982018054610dce90612091565b80601f0160208091040260200160405190810160405280929190818152602001828054610dfa90612091565b8015610e475780601f10610e1c57610100808354040283529160200191610e47565b820191906000526020600020905b815481529060010190602001808311610e2a57829003601f168201915b5050509183525050604080516101008082018352600a85015460ff8082161515845291810482161515602084810191909152620100008204831684860152630100000090910482166060840152600b860154608080850191909152600c87015460a0850152600d87015460c0850152600e87015460e08501529085019290925282519182018352600f85018054939094019391928391166009811115610eef57610eef611ae3565b6009811115610f0057610f00611ae3565b81526020016001820154815260200160028201548152602001600382018054610f2890612091565b80601f0160208091040260200160405190810160405280929190818152602001828054610f5490612091565b8015610fa15780601f10610f7657610100808354040283529160200191610fa1565b820191906000526020600020905b815481529060010190602001808311610f8457829003601f168201915b5050509190925250505090525092915050565b6000858152602081905260409020805461010090046001600160a01b0316610fef57604051634d36eb6960e01b815260040160405180910390fd5b6004815460ff16600481111561100757611007611ae3565b148061102857506002815460ff16600481111561102657611026611ae3565b145b15611046576040516307a92f1960e51b815260040160405180910390fd5b604080516101808101909152815461133991908390829060ff16600481111561107157611071611ae3565b600481111561108257611082611ae3565b8152815461010090046001600160a01b0316602080830191909152604080518082018252600185015481526002850154818401528184015260038401546060840152600484018054825181850281018501909352808352608090940193919290919083018282801561111357602002820191906000526020600020905b8154815260200190600101908083116110ff575b505050505081526020016005820154815260200160068201548152602001600782015481526020016008820154815260200160098201805461115490612091565b80601f016020809104026020016040519081016040528092919081815260200182805461118090612091565b80156111cd5780601f106111a2576101008083540402835291602001916111cd565b820191906000526020600020905b8154815290600101906020018083116111b057829003601f168201915b5050509183525050604080516101008082018352600a85015460ff8082161515845291810482161515602084810191909152620100008204831684860152630100000090910482166060840152600b860154608080850191909152600c87015460a0850152600d87015460c0850152600e87015460e08501529085019290925282519182018352600f8501805493909401939192839116600981111561127557611275611ae3565b600981111561128657611286611ae3565b815260200160018201548152602001600282015481526020016003820180546112ae90612091565b80601f01602080910402602001604051908101604052809291908181526020018280546112da90612091565b80156113275780601f106112fc57610100808354040283529160200191611327565b820191906000526020600020905b81548152906001019060200180831161130a57829003601f168201915b5050505050815250508152505061192e565b61135657604051631e1b576d60e31b815260040160405180910390fd5b60048054604051635c73957b60e11b81526001600160a01b039091169163b8e72af69161138b918991899189918991016124f8565b60006040518083038186803b1580156113a357600080fd5b505afa1580156113b7573d6000803e3d6000fd5b50600092506113cb9150508385018561255b565b60038301548151919250146113f357604051630b6fac0360e41b815260040160405180910390fd5b6000611401600160096125da565b67ffffffffffffffff81111561141957611419612167565b604051908082528060200260200182016040528015611442578160200160208202803683370190505b50905060015b600981101561149757828160098110611463576114636125c4565b6020020151826114746001846125da565b81518110611484576114846125c4565b6020908102919091010152600101611448565b50825460ff19166004908117845581516114b8918501906020840190611a6a565b50877fac0c4085a30bc70d0d8893ee5d6466ac9c5f03e27fd7292dcef128a610e7c19060046040516114ea919061210c565b60405180910390a2877fa21d6aca26cc870bcd3da1cc0d0b0f22572550a7d04fac698fc08b67b92c43528260405161152291906125ed565b60405180910390a25050505050505050565b6002805461154190612091565b80601f016020809104026020016040519081016040528092919081815260200182805461156d90612091565b80156115ba5780601f1061158f576101008083540402835291602001916115ba565b820191906000526020600020905b81548152906001019060200180831161159d57829003601f168201915b505050505081565b4281116115e257604051637616640160e01b815260040160405180910390fd5b6000828152602081905260409020805461010090046001600160a01b03168061161e57604051634d36eb6960e01b815260040160405180910390fd5b60015460405163c1af6e0360e01b81526001600160a01b0383811660048301523360248301529091169063c1af6e0390604401602060405180830381865afa15801561166e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061169291906120ef565b6116af5760405163f8b857d360e01b815260040160405180910390fd5b6000825460ff1660048111156116c7576116c7611ae3565b141580156116eb57506003825460ff1660048111156116e8576116e8611ae3565b14155b15611709576040516307a92f1960e51b815260040160405180910390fd5b6006820183905560405183815284907f0f759826327c668a220d576485ac38ddc4f83fbc414b984c00e79f669b649f4690602001610948565b6000858152602081905260409020805461010090046001600160a01b031661177d57604051634d36eb6960e01b815260040160405180910390fd5b6000815460ff16600481111561179557611795611ae3565b146117b3576040516307a92f1960e51b815260040160405180910390fd5b600354604051635c73957b60e11b81526001600160a01b039091169063b8e72af6906117e99088908890889088906004016124f8565b60006040518083038186803b15801561180157600080fd5b505afa158015611815573d6000803e3d6000fd5b506000925061182991505083850185612600565b600383015481519192501461185157604051630b6fac0360e41b815260040160405180910390fd5b602081015160038301556040810151600783018054600090611874908490612322565b90915550506060810151600883018054600090611892908490612322565b909155505060208082015160405190815288917fd25cbd3fa66107efb1230dc4f49f939d7b6b57ba10ab0ec87ba39040c075cf20910160405180910390a250505050505050565b6000600460009054906101000a90046001600160a01b03166001600160a01b031663233ace116040518163ffffffff1660e01b8152600401602060405180830381865afa158015610531573d6000803e3d6000fd5b600060018251600481111561194557611945611ae3565b14806119635750428260c001518360a001516119619190612322565b105b1561197057506001919050565b506000919050565b604080516101808101909152806000815260200160006001600160a01b031681526020016119b9604051806040016040528060008152602001600081525090565b815260200160008152602001606081526020016000815260200160008152602001600081526020016000815260200160608152602001611a41604051806101000160405280600015158152602001600015158152602001600060ff168152602001600060ff168152602001600081526020016000815260200160008152602001600081525090565b815260408051608081018252600080825260208281018290529282015260608082015291015290565b828054828255906000526020600020908101928215611aa5579160200282015b82811115611aa5578251825591602001919060010190611a8a565b50611ab1929150611ab5565b5090565b5b80821115611ab15760008155600101611ab6565b600060208284031215611adc57600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b60058110611b0957611b09611ae3565b9052565b6000815180845260005b81811015611b3357602081850181015186830182015201611b17565b506000602082860101526020601f19601f83011685010191505092915050565b80511515825260208101511515602083015260ff60408201511660408301526060810151611b86606084018260ff169052565b506080810151608083015260a081015160a083015260c081015160c083015260e081015160e08301525050565b60008151600a8110611bc757611bc7611ae3565b808452506020820151602084015260408201516040840152606082015160806060850152611bf86080850182611b0d565b949350505050565b611c0a818d611af9565b6001600160a01b038b166020820152611c30604082018b80518252602090810151910152565b8860808201528760a08201528660c08201528560e0820152846101008201526102606101208201526000611c68610260830186611b0d565b611c76610140840186611b53565b828103610240840152611c898185611bb3565b9e9d5050505050505050505050505050565b803560058110611caa57600080fd5b919050565b60008060408385031215611cc257600080fd5b82359150611cd260208401611c9b565b90509250929050565b600060808284031215611ced57600080fd5b50919050565b60008060408385031215611d0657600080fd5b82359150602083013567ffffffffffffffff811115611d2457600080fd5b611d3085828601611cdb565b9150509250929050565b60006101008284031215611ced57600080fd5b60008083601f840112611d5f57600080fd5b50813567ffffffffffffffff811115611d7757600080fd5b602083019150836020828501011115611d8f57600080fd5b9250929050565b80356001600160a01b0381168114611caa57600080fd5b600060408284031215611ced57600080fd5b60008060008060008060008060008060006102408c8e031215611de157600080fd5b611dea8c611c9b565b9a5060208c0135995060408c01359850611e078d60608e01611d3a565b97506101608c013567ffffffffffffffff811115611e2457600080fd5b611e308e828f01611cdb565b9750506101808c013567ffffffffffffffff811115611e4e57600080fd5b611e5a8e828f01611d4d565b9097509550611e6e90506101a08d01611d96565b93506101c08c01359250611e868d6101e08e01611dad565b915060006102208d01359050809150509295989b509295989b9093969950565b600081518084526020840193506020830160005b82811015611ed8578151865260209586019590910190600101611eba565b5093949350505050565b60208152611ef4602082018351611af9565b60006020830151611f1060408401826001600160a01b03169052565b506040830151805160608401526020810151608084015250606083015160a0830152608083015161028060c0840152611f4d6102a0840182611ea6565b905060a084015160e084015260c084015161010084015260e0840151610120840152610100840151610140840152610120840151601f1984830301610160850152611f988282611b0d565b915050610140840151611faf610180850182611b53565b50610160840151838203601f1901610280850152611fcd8282611bb3565b95945050505050565b600080600080600060608688031215611fee57600080fd5b85359450602086013567ffffffffffffffff81111561200c57600080fd5b61201888828901611d4d565b909550935050604086013567ffffffffffffffff81111561203857600080fd5b61204488828901611d4d565b969995985093965092949392505050565b6020815260006120686020830184611b0d565b9392505050565b6000806040838503121561208257600080fd5b50508035926020909101359150565b600181811c908216806120a557607f821691505b602082108103611ced57634e487b7160e01b600052602260045260246000fd5b6000602082840312156120d757600080fd5b5051919050565b80151581146120ec57600080fd5b50565b60006020828403121561210157600080fd5b8151612068816120de565b6020810161211a8284611af9565b92915050565b6000808335601e1984360301811261213757600080fd5b83018035915067ffffffffffffffff82111561215257600080fd5b602001915036819003821315611d8f57600080fd5b634e487b7160e01b600052604160045260246000fd5b601f8211156121c757806000526020600020601f840160051c810160208510156121a45750805b601f840160051c820191505b818110156121c457600081556001016121b0565b50505b505050565b67ffffffffffffffff8311156121e4576121e4612167565b6121f8836121f28354612091565b8361217d565b6000601f84116001811461222c57600085156122145750838201355b600019600387901b1c1916600186901b1783556121c4565b600083815260209020601f19861690835b8281101561225d578685013582556020948501946001909201910161223d565b508682101561227a5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8481526060602082015260006122cf60608301858761228c565b905082604083015295945050505050565b60ff811681146120ec57600080fd5b60006020828403121561230157600080fd5b8135612068816122e0565b634e487b7160e01b600052601160045260246000fd5b8082018082111561211a5761211a61230c565b600a81106120ec57600080fd5b60006020828403121561235457600080fd5b813561206881612335565b6000813561211a816120de565b6000813561211a816122e0565b8135612384816120de565b815490151560ff1660ff19919091161781556123bf6123a56020840161235f565b82805461ff00191691151560081b61ff0016919091179055565b6123e66123ce6040840161236c565b825462ff0000191660109190911b62ff000016178255565b61240f6123f56060840161236c565b825463ff000000191660189190911b63ff00000016178255565b6080820135600182015560a0820135600282015560c0820135600382015560e090910135600490910155565b813561244681612335565b600a811061245657612456611ae3565b815460ff191660ff9190911617815560208201356001820155604082013560028201556060820135601e193684900301811261249157600080fd5b8201803567ffffffffffffffff8111156124aa57600080fd5b6020820191508036038213156124bf57600080fd5b6124cd8183600386016121cc565b50505050565b600063ffffffff821663ffffffff81036124ef576124ef61230c565b60010192915050565b60408152600061250c60408301868861228c565b828103602084015261251f81858761228c565b979650505050505050565b604051601f8201601f1916810167ffffffffffffffff8111828210171561255357612553612167565b604052919050565b6000610120828403121561256e57600080fd5b600083601f84011261257e578081fd5b8061012061258b8161252a565b925082915084018581111561259f57600080fd5b845b818110156125b95780358452602093840193016125a1565b509095945050505050565b634e487b7160e01b600052603260045260246000fd5b8181038181111561211a5761211a61230c565b6020815260006120686020830184611ea6565b60006080828403121561261257600080fd5b600083601f840112612622578081fd5b8061262d608061252a565b9050809150608084018581111561259f57600080fdfea26469706673582212204fec4c7bb5b14c439538ae97fde1b07d8bfbacd3c0e2d11ff9bc4c9ea46293e164736f6c634300081c0033";
const isSuperArgs = (xs) => xs.length > 1;
class ProcessRegistry__factory extends ethers_1.ContractFactory {
constructor(...args) {
if (isSuperArgs(args)) {
super(...args);
}
else {
super(_abi, _bytecode, args[0]);
}
}
getDeployTransaction(_chainID, _organizationRegistryAddress, _stVerifier, _rVerifier, overrides) {
return super.getDeployTransaction(_chainID, _organizationRegistryAddress, _stVerifier, _rVerifier, overrides || {});
}
deploy(_chainID, _organizationRegistryAddress, _stVerifier, _rVerifier, overrides) {
return super.deploy(_chainID, _organizationRegistryAddress, _stVerifier, _rVerifier, overrides || {});
}
connect(runner) {
return super.connect(runner);
}
static createInterface() {
return new ethers_1.Interface(_abi);
}
static connect(address, runner) {
return new ethers_1.Contract(address, _abi, runner);
}
}
exports.ProcessRegistry__factory = ProcessRegistry__factory;
ProcessRegistry__factory.bytecode = _bytecode;
ProcessRegistry__factory.abi = _abi;