Skip to main content
Version: v3.x

Minimal Anti Collusion Infrastructure (MACI) / MACI__factory

Class: MACI__factory

Defined in: contracts/typechain-types/factories/contracts/MACI__factory.ts:787

Extends

  • ContractFactory

Constructors

Constructor

new MACI__factory(...args): MACI__factory

Defined in: contracts/typechain-types/factories/contracts/MACI__factory.ts:788

Parameters

args

...MACIConstructorParams

Returns

MACI__factory

Overrides

ContractFactory.constructor

Properties

abi

readonly static abi: readonly [{ inputs: readonly [{ components: readonly [{ internalType: "contract IPollFactory"; name: "pollFactory"; type: "address"; }, { internalType: "contract IMessageProcessorFactory"; name: "messageProcessorFactory"; type: "address"; }, { internalType: "contract ITallyFactory"; name: "tallyFactory"; type: "address"; }, { internalType: "contract IBasePolicy"; name: "signUpPolicy"; type: "address"; }, { internalType: "contract IVerifier"; name: "verifier"; type: "address"; }, { internalType: "contract IVerifyingKeysRegistry"; name: "verifyingKeysRegistry"; type: "address"; }, { internalType: "uint8"; name: "stateTreeDepth"; type: "uint8"; }, { internalType: "uint256[5]"; name: "emptyBallotRoots"; type: "uint256[5]"; }]; internalType: "struct MACI.InitParams"; name: "initParams"; type: "tuple"; }]; stateMutability: "payable"; type: "constructor"; }, { inputs: readonly []; name: "InvalidPublicKey"; type: "error"; }, { inputs: readonly [{ internalType: "uint8"; name: "depth"; type: "uint8"; }]; name: "InvalidVoteOptionTreeDepth"; type: "error"; }, { inputs: readonly []; name: "LeafAlreadyExists"; type: "error"; }, { inputs: readonly []; name: "LeafCannotBeZero"; type: "error"; }, { inputs: readonly []; name: "LeafGreaterThanSnarkScalarField"; type: "error"; }, { inputs: readonly [{ internalType: "uint256"; name: "pollId"; type: "uint256"; }]; name: "PollDoesNotExist"; type: "error"; }, { inputs: readonly []; name: "PoseidonHashLibrariesNotLinked"; type: "error"; }, { inputs: readonly []; name: "TooManySignups"; type: "error"; }, { inputs: readonly []; name: "UserNotSignedUp"; type: "error"; }, { anonymous: false; inputs: readonly [{ indexed: false; internalType: "uint256"; name: "_pollId"; type: "uint256"; }, { indexed: true; internalType: "uint256"; name: "_coordinatorPublicKeyX"; type: "uint256"; }, { indexed: true; internalType: "uint256"; name: "_coordinatorPublicKeyY"; type: "uint256"; }, { indexed: false; internalType: "enum DomainObjs.Mode"; name: "_mode"; type: "uint8"; }]; name: "DeployPoll"; type: "event"; }, { anonymous: false; inputs: readonly [{ indexed: false; internalType: "uint256"; name: "_stateIndex"; type: "uint256"; }, { indexed: false; internalType: "uint256"; name: "_timestamp"; type: "uint256"; }, { indexed: true; internalType: "uint256"; name: "_userPublicKeyX"; type: "uint256"; }, { indexed: true; internalType: "uint256"; name: "_userPublicKeyY"; type: "uint256"; }]; name: "SignUp"; type: "event"; }, { inputs: readonly []; name: "MESSAGE_DATA_LENGTH"; outputs: readonly [{ internalType: "uint8"; name: ""; type: "uint8"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly [{ components: readonly [{ internalType: "uint256"; name: "startDate"; type: "uint256"; }, { internalType: "uint256"; name: "endDate"; type: "uint256"; }, { components: readonly [{ internalType: "uint8"; name: "tallyProcessingStateTreeDepth"; type: "uint8"; }, { internalType: "uint8"; name: "voteOptionTreeDepth"; type: "uint8"; }, { internalType: "uint8"; name: "stateTreeDepth"; type: "uint8"; }]; internalType: "struct Params.TreeDepths"; name: "treeDepths"; type: "tuple"; }, { internalType: "uint8"; name: "messageBatchSize"; type: "uint8"; }, { components: readonly [{ internalType: "uint256"; name: "x"; type: "uint256"; }, { internalType: "uint256"; name: "y"; type: "uint256"; }]; internalType: "struct DomainObjs.PublicKey"; name: "coordinatorPublicKey"; type: "tuple"; }, { internalType: "enum DomainObjs.Mode"; name: "mode"; type: "uint8"; }, { internalType: "address"; name: "policy"; type: "address"; }, { internalType: "address"; name: "initialVoiceCreditProxy"; type: "address"; }, { internalType: "address[]"; name: "relayers"; type: "address[]"; }, { internalType: "uint256"; name: "voteOptions"; type: "uint256"; }]; internalType: "struct IMACI.DeployPollArgs"; name: "args"; type: "tuple"; }]; name: "deployPoll"; outputs: readonly [{ components: readonly [{ internalType: "address"; name: "poll"; type: "address"; }, { internalType: "address"; name: "messageProcessor"; type: "address"; }, { internalType: "address"; name: "tally"; type: "address"; }]; internalType: "struct IMACI.PollContracts"; name: ""; type: "tuple"; }]; stateMutability: "nonpayable"; type: "function"; }, { inputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256"; }]; name: "emptyBallotRoots"; outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly [{ internalType: "uint256"; name: "_pollId"; type: "uint256"; }]; name: "getPoll"; outputs: readonly [{ components: readonly [{ internalType: "address"; name: "poll"; type: "address"; }, { internalType: "address"; name: "messageProcessor"; type: "address"; }, { internalType: "address"; name: "tally"; type: "address"; }]; internalType: "struct IMACI.PollContracts"; name: "pollContracts"; type: "tuple"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly [{ internalType: "uint256"; name: "_publicKeyHash"; type: "uint256"; }]; name: "getStateIndex"; outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly [{ internalType: "uint256"; name: "_index"; type: "uint256"; }]; name: "getStateRootOnIndexedSignUp"; outputs: readonly [{ internalType: "uint256"; name: "stateRoot"; type: "uint256"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly []; name: "getStateTreeRoot"; outputs: readonly [{ internalType: "uint256"; name: "root"; type: "uint256"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly [{ internalType: "uint256[2]"; name: "array"; type: "uint256[2]"; }]; name: "hash2"; outputs: readonly [{ internalType: "uint256"; name: "result"; type: "uint256"; }]; stateMutability: "pure"; type: "function"; }, { inputs: readonly [{ internalType: "uint256[3]"; name: "array"; type: "uint256[3]"; }]; name: "hash3"; outputs: readonly [{ internalType: "uint256"; name: "result"; type: "uint256"; }]; stateMutability: "pure"; type: "function"; }, { inputs: readonly [{ internalType: "uint256[4]"; name: "array"; type: "uint256[4]"; }]; name: "hash4"; outputs: readonly [{ internalType: "uint256"; name: "result"; type: "uint256"; }]; stateMutability: "pure"; type: "function"; }, { inputs: readonly [{ internalType: "uint256[5]"; name: "array"; type: "uint256[5]"; }]; name: "hash5"; outputs: readonly [{ internalType: "uint256"; name: "result"; type: "uint256"; }]; stateMutability: "pure"; type: "function"; }, { inputs: readonly [{ internalType: "uint256"; name: "left"; type: "uint256"; }, { internalType: "uint256"; name: "right"; type: "uint256"; }]; name: "hashLeftRight"; outputs: readonly [{ internalType: "uint256"; name: "result"; type: "uint256"; }]; stateMutability: "pure"; type: "function"; }, { inputs: readonly []; name: "leanIMTData"; outputs: readonly [{ internalType: "uint256"; name: "size"; type: "uint256"; }, { internalType: "uint256"; name: "depth"; type: "uint256"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly []; name: "maxSignups"; outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly []; name: "messageProcessorFactory"; outputs: readonly [{ internalType: "contract IMessageProcessorFactory"; name: ""; type: "address"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly []; name: "nextPollId"; outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly []; name: "pollFactory"; outputs: readonly [{ internalType: "contract IPollFactory"; name: ""; type: "address"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256"; }]; name: "polls"; outputs: readonly [{ internalType: "address"; name: "poll"; type: "address"; }, { internalType: "address"; name: "messageProcessor"; type: "address"; }, { internalType: "address"; name: "tally"; type: "address"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly [{ internalType: "uint256[]"; name: "array"; type: "uint256[]"; }]; name: "sha256Hash"; outputs: readonly [{ internalType: "uint256"; name: "result"; type: "uint256"; }]; stateMutability: "pure"; type: "function"; }, { inputs: readonly [{ components: readonly [{ internalType: "uint256"; name: "x"; type: "uint256"; }, { internalType: "uint256"; name: "y"; type: "uint256"; }]; internalType: "struct DomainObjs.PublicKey"; name: "_publicKey"; type: "tuple"; }, { internalType: "bytes"; name: "_signUpPolicyData"; type: "bytes"; }]; name: "signUp"; outputs: readonly []; stateMutability: "nonpayable"; type: "function"; }, { inputs: readonly []; name: "signUpPolicy"; outputs: readonly [{ internalType: "contract IBasePolicy"; name: ""; type: "address"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256"; }]; name: "stateRootsOnSignUp"; outputs: readonly [{ internalType: "uint256"; name: ""; type: "uint256"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly []; name: "stateTreeDepth"; outputs: readonly [{ internalType: "uint8"; name: ""; type: "uint8"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly []; name: "tallyFactory"; outputs: readonly [{ internalType: "contract ITallyFactory"; name: ""; type: "address"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly []; name: "totalSignups"; outputs: readonly [{ internalType: "uint256"; name: "signUps"; type: "uint256"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly []; name: "verifier"; outputs: readonly [{ internalType: "contract IVerifier"; name: ""; type: "address"; }]; stateMutability: "view"; type: "function"; }, { inputs: readonly []; name: "verifyingKeysRegistry"; outputs: readonly [{ internalType: "contract IVerifyingKeysRegistry"; name: ""; type: "address"; }]; stateMutability: "view"; type: "function"; }] = _abi

Defined in: contracts/typechain-types/factories/contracts/MACI__factory.ts:852


bytecode

readonly static bytecode: "0x61018060405260405161238b38038061238b833981016040819052610023916104ee565b61003c600760008051602061236b833981519152610164565b50600b805460018101825560009190915260008051602061236b8339815191527f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db99091015580516001600160a01b0390811660c09081526020830151821660e0526040830151821661010052606083015182166101205260808084015183166101405260a0840151909216610160528201805160ff908116909252516100e491166002610694565b60a05260e08101516100fa9060009060056103b6565b507e7af346e2d304279e79e0a9f3023f771294a78acb70e73f90afe27cad401e81610140604051806040016040528060018152602001600181525061033b60201b60201c565b1461015e57604051633d7ba68560e21b815260040160405180910390fd5b5061071d565b60007f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f000000182106101a6576040516361c0541760e11b815260040160405180910390fd5b816000036101c7576040516314b48df160e11b815260040160405180910390fd5b6000828152600384016020526040902054156101f6576040516312c50cad60e11b815260040160405180910390fd5b82546001808501549061020a9083906106a7565b6001821b10156102205761021d816106ba565b90505b600185018190558360005b828110156102fd578084901c6001166001036102e157604080518082018252600083815260028a01602090815290839020548252810184905290516314d2f97b60e11b815273__$6574937f64fc1d7710ec0e28b7a36713bb$__916329a5f2f69161029991906004016106d3565b602060405180830381865af41580156102b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102da9190610704565b91506102f5565b600081815260028801602052604090208290555b60010161022b565b50610307836106ba565b8087556000928352600287016020908152604080852084905587855260038901909152909220919091559150505b92915050565b6040516314d2f97b60e11b815260009073__$6574937f64fc1d7710ec0e28b7a36713bb$__906329a5f2f6906103759085906004016106d3565b602060405180830381865af4158015610392573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103359190610704565b82600581019282156103e4579160200282015b828111156103e45782518255916020019190600101906103c9565b506103f09291506103f4565b5090565b5b808211156103f057600081556001016103f5565b634e487b7160e01b600052604160045260246000fd5b60405161010081016001600160401b038111828210171561044257610442610409565b60405290565b6001600160a01b038116811461045d57600080fd5b50565b805161046b81610448565b919050565b805160ff8116811461046b57600080fd5b600082601f83011261049257600080fd5b60405160a081016001600160401b03811182821017156104b4576104b4610409565b6040528060a08401858111156104c957600080fd5b845b818110156104e35780518352602092830192016104cb565b509195945050505050565b600061018082840312801561050257600080fd5b5061050b61041f565b825161051681610448565b815261052460208401610460565b602082015261053560408401610460565b604082015261054660608401610460565b606082015261055760808401610460565b608082015261056860a08401610460565b60a082015261057960c08401610470565b60c082015261058b8460e08501610481565b60e08201529392505050565b634e487b7160e01b600052601160045260246000fd5b6001815b60018411156105e8578085048111156105cc576105cc610597565b60018416156105da57908102905b60019390931c9280026105b1565b935093915050565b6000826105ff57506001610335565b8161060c57506000610335565b8160018114610622576002811461062c57610648565b6001915050610335565b60ff84111561063d5761063d610597565b50506001821b610335565b5060208310610133831016604e8410600b841016171561066b575081810a610335565b61067860001984846105ad565b806000190482111561068c5761068c610597565b029392505050565b60006106a083836105f0565b9392505050565b8082018082111561033557610335610597565b6000600182016106cc576106cc610597565b5060010190565b60408101818360005b60028110156106fb5781518352602092830192909101906001016106dc565b50505092915050565b60006020828403121561071657600080fd5b5051919050565b60805160a05160c05160e05161010051610120516101405161016051611b9c6107cf600039600081816103d5015281816108be01528181610aca0152610b8d0152600081816102530152818161089201528181610aa80152610b6c01526000818161049b015261062101526000818161035a0152610b3d0152600081816101b30152610a7b01526000818161028f01526109cc0152600081816104c2015261059e015260006103810152611b9c6000f3fe608060405234801561001057600080fd5b50600436106101a95760003560e01c80635bb93995116100f9578063ac2f007411610097578063c1103da011610071578063c1103da014610483578063cffca67614610496578063df82635a146104bd578063fc6bb994146104e457600080fd5b8063ac2f0074146103f7578063b87802c81461045d578063bea140b31461047057600080fd5b8063652c76e4116100d3578063652c76e41461037c578063683f3dc3146103b55780639cfced97146103bd578063a2d718a4146103d057600080fd5b80635bb939951461032f57806362a361bb1461034257806362b31f1e1461035557600080fd5b80633dfb88b2116101665780634984b894116101405780634984b894146102ee5780634c62aa721461030157806358bfc379146103145780635ae9d4f11461032757600080fd5b80633dfb88b2146102b1578063423f3e19146102c457806349716ebf146102db57600080fd5b8063055575eb146101ae5780631a8cbcaa146101f25780632b786571146102375780632b7ac3f31461024e57806330c5072814610275578063343393b51461028a575b600080fd5b6101d57f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b610205610200366004611146565b610507565b6040805182516001600160a01b03908116825260208085015182169083015292820151909216908201526060016101e9565b61024060055481565b6040519081526020016101e9565b6101d57f000000000000000000000000000000000000000000000000000000000000000081565b61028861028336600461121f565b610599565b005b6101d57f000000000000000000000000000000000000000000000000000000000000000081565b6102406102bf3660046112cb565b61073c565b600854600090815260096020526040902054610240565b6102406102e9366004611146565b6107bd565b6102406102fc366004611146565b6107fe565b61020561030f366004611484565b61081f565b610240610322366004611584565b610ce8565b600754610240565b61024061033d36600461161a565b610d70565b61024061035036600461163c565b610d95565b6101d57f000000000000000000000000000000000000000000000000000000000000000081565b6103a37f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff90911681526020016101e9565b6103a3600a81565b6102406103cb36600461167f565b610dcf565b6101d57f000000000000000000000000000000000000000000000000000000000000000081565b610433610405366004611146565b6006602052600090815260409020805460018201546002909201546001600160a01b03918216928216911683565b604080516001600160a01b03948516815292841660208401529216918101919091526060016101e9565b61024061046b366004611146565b610e09565b61024061047e3660046116c2565b610e20565b610240610491366004611146565b610e5a565b6101d57f000000000000000000000000000000000000000000000000000000000000000081565b6102407f000000000000000000000000000000000000000000000000000000000000000081565b6007546008546104f2919082565b604080519283526020830191909152016101e9565b6040805160608101825260008082526020820181905291810191909152600554821061054e5760405163a86ecdd560e01b8152600481018390526024015b60405180910390fd5b50600090815260066020908152604091829020825160608101845281546001600160a01b03908116825260018301548116938201939093526002909101549091169181019190915290565b6007547f0000000000000000000000000000000000000000000000000000000000000000116105db5760405163b984588b60e01b815260040160405180910390fd5b6105ed82600001518360200151610e81565b61060a5760405163145a1fdd60e31b815260040160405180910390fd5b604051631e898ef160e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631e898ef1906106589033908590600401611729565b600060405180830381600087803b15801561067257600080fd5b505af1158015610686573d6000803e3d6000fd5b50505050600061069e83600001518460200151610d70565b905060006106ad600783610f2b565b600b8054600181810183556000929092527f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db90182905560208601518651600754939450909290917f8a7b66ad10ac10c434142aadc63725213863fe31458b701f452d43de8a19b0d9916107209190611781565b604080519182524260208301520160405180910390a350505050565b60405163248f667760e01b815260009073__$ce9c2c925f157047e54fa833ec4e61409f$__9063248f667790610776908590600401611794565b602060405180830381865af4158015610793573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107b791906117c5565b92915050565b6000818152600a60205260408120548082036107ec57604051632cb4506160e21b815260040160405180910390fd5b6107f7600182611781565b9392505050565b600b818154811061080e57600080fd5b600091825260209091200154905081565b604080516060810182526000808252602082018190529181019190915260058054600181019091556080830151805160209091015161085e9190610e81565b61087b5760405163145a1fdd60e31b815260040160405180910390fd5b6040805160a0810182523081526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166020808401919091527f000000000000000000000000000000000000000000000000000000000000000082168385015260c08701518216606084015260e08701519091166080830152918501519091015160ff81161580610917575060058160ff16115b1561093a5760405163b23471c360e01b815260ff82166004820152602401610545565b6000604051806101400160405280876000015181526020018760200151815260200187604001518152602001876060015160ff16815260200187608001518152602001848152602001600060018561099291906117de565b60ff16600581106109a5576109a56117f7565b015481526020018581526020018761010001518152602001876101200151815250905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634b332c20836040518263ffffffff1660e01b8152600401610a169190611852565b6020604051808303816000875af1158015610a35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a59919061195a565b60a0880151604051631c7d4e2b60e11b81529192506000916001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916338fa9c5691610af4917f0000000000000000000000000000000000000000000000000000000000000000917f0000000000000000000000000000000000000000000000000000000000000000918891600401611999565b6020604051808303816000875af1158015610b13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b37919061195a565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663363448737f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000086868e60a001516040518663ffffffff1660e01b8152600401610bd39594939291906119cf565b6020604051808303816000875af1158015610bf2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c16919061195a565b604080516060810182526001600160a01b038087168252858116602080840191825282861684860190815260008e815260068352869020855181549086166001600160a01b031991821617825593516001820180549187169186169190911790559051600290910180549190941692169190911790915560808d015190810151905160a08e01519351949550919390927f38b2d18bb65cc91d7b436014cf44c8298b13bee60cc18d9e8efec26d1df3189091610cd3918d91611a04565b60405180910390a39998505050505050505050565b6000600080516020611b47833981519152600283604051602001610d0c9190611a18565b60408051601f1981840301815290829052610d2691611a4e565b602060405180830381855afa158015610d43573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610d6691906117c5565b6107b79190611a80565b6000610d7a611128565b83815260208101839052610d8d81610d95565b949350505050565b6040516314d2f97b60e11b815260009073__$6574937f64fc1d7710ec0e28b7a36713bb$__906329a5f2f690610776908590600401611aa2565b604051630926f44b60e31b815260009073__$20527677031d76601747626a9845039fe4$__90634937a25890610776908590600401611aca565b60008160058110610e1957600080fd5b0154905081565b6040516304b98e1d60e31b815260009073__$dc01a9744591ab014bc46a3b7671cdaefb$__906325cc70e890610776908590600401611af2565b6000600b8281548110610e6f57610e6f6117f7565b90600052602060002001549050919050565b600080600080516020611b4783398151915284850990506000600080516020611b4783398151915284850990506000600080516020611b4783398151915282600080516020611b4783398151915285620292fc090890506000600080516020611b478339815191528084600080516020611b4783398151915287620292f809096001089050610f1f8282600080516020611b478339815191526110ed565b15979650505050505050565b6000600080516020611b478339815191528210610f5b576040516361c0541760e11b815260040160405180910390fd5b81600003610f7c576040516314b48df160e11b815260040160405180910390fd5b600082815260038401602052604090205415610fab576040516312c50cad60e11b815260040160405180910390fd5b825460018085015490610fbf908390611b1a565b6001821b1015610fd557610fd281611b2d565b90505b600185018190558360005b828110156110b2578084901c60011660010361109657604080518082018252600083815260028a01602090815290839020548252810184905290516314d2f97b60e11b815273__$6574937f64fc1d7710ec0e28b7a36713bb$__916329a5f2f69161104e9190600401611aa2565b602060405180830381865af415801561106b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108f91906117c5565b91506110aa565b600081815260028801602052604090208290555b600101610fe0565b506110bc83611b2d565b8087556000928352600287016020908152604080852084905596845260039097019096529390209390935550919050565b600083838111611104576111018382611b1a565b90505b828061111257611112611a6a565b600061111e8684611781565b0895945050505050565b60405180604001604052806002906020820280368337509192915050565b60006020828403121561115857600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604051610140810167ffffffffffffffff811182821017156111995761119961115f565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156111c8576111c861115f565b604052919050565b6000604082840312156111e257600080fd5b6040805190810167ffffffffffffffff811182821017156112055761120561115f565b604052823581526020928301359281019290925250919050565b6000806060838503121561123257600080fd5b61123c84846111d0565b9150604083013567ffffffffffffffff81111561125857600080fd5b8301601f8101851361126957600080fd5b803567ffffffffffffffff8111156112835761128361115f565b611296601f8201601f191660200161119f565b8181528660208385010111156112ab57600080fd5b816020840160208301376000602083830101528093505050509250929050565b6000608082840312156112dd57600080fd5b600083601f8401126112ed578081fd5b806112f8608061119f565b9050809150608084018581111561130e57600080fd5b845b81811015611328578035845260209384019301611310565b509095945050505050565b803560ff8116811461134457600080fd5b919050565b60006060828403121561135b57600080fd5b6040516060810167ffffffffffffffff8111828210171561137e5761137e61115f565b60405290508061138d83611333565b815261139b60208401611333565b60208201526113ac60408401611333565b60408201525092915050565b80356003811061134457600080fd5b6001600160a01b03811681146113dc57600080fd5b50565b8035611344816113c7565b600067ffffffffffffffff8211156114045761140461115f565b5060051b60200190565b600082601f83011261141f57600080fd5b813561143261142d826113ea565b61119f565b8082825260208201915060208360051b86010192508583111561145457600080fd5b602085015b8381101561147a57803561146c816113c7565b835260209283019201611459565b5095945050505050565b60006020828403121561149657600080fd5b813567ffffffffffffffff8111156114ad57600080fd5b82016101a081850312156114c057600080fd5b6114c8611175565b81358152602080830135908201526114e38560408401611349565b60408201526114f460a08301611333565b60608201526115068560c084016111d0565b608082015261151861010083016113b8565b60a082015261152a61012083016113df565b60c082015261153c61014083016113df565b60e082015261016082013567ffffffffffffffff81111561155c57600080fd5b6115688682850161140e565b6101008301525061018091909101356101208201529392505050565b60006020828403121561159657600080fd5b813567ffffffffffffffff8111156115ad57600080fd5b8201601f810184136115be57600080fd5b80356115cc61142d826113ea565b8082825260208201915060208360051b8501019250868311156115ee57600080fd5b6020840193505b828410156116105783358252602093840193909101906115f5565b9695505050505050565b6000806040838503121561162d57600080fd5b50508035926020909101359150565b60006040828403121561164e57600080fd5b600083601f84011261165e578081fd5b80611669604061119f565b9050809150604084018581111561130e57600080fd5b600060a0828403121561169157600080fd5b600083601f8401126116a1578081fd5b806116ac60a061119f565b905080915060a084018581111561130e57600080fd5b6000606082840312156116d457600080fd5b600083601f8401126116e4578081fd5b806116ef606061119f565b9050809150606084018581111561130e57600080fd5b60005b83811015611720578181015183820152602001611708565b50506000910152565b60018060a01b03831681526040602082015260008251806040840152611756816060850160208701611705565b601f01601f1916919091016060019392505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156107b7576107b761176b565b60808101818360005b60048110156117bc57815183526020928301929091019060010161179d565b50505092915050565b6000602082840312156117d757600080fd5b5051919050565b60ff82811682821603908111156107b7576107b761176b565b634e487b7160e01b600052603260045260246000fd5b600081518084526020840193506020830160005b828110156118485781516001600160a01b0316865260209586019590910190600101611821565b5093949350505050565b6020815281516020820152602082015160408201526000604083015161189b606084018260ff815116825260ff602082015116602083015260ff60408201511660408301525050565b50606083015160ff811660c0840152506080830151805160e084015260208101516101008401525060a083015180516001600160a01b039081166101208501526020820151811661014085015260408201518116610160850152606082015181166101808501526080820151166101a08401525060c08301516101c083015260e08301516101e083015261010083015161022061020084015261194261024084018261180d565b90506101208401516102208401528091505092915050565b60006020828403121561196c57600080fd5b81516107f7816113c7565b6003811061199557634e487b7160e01b600052602160045260246000fd5b9052565b6001600160a01b038581168252848116602083015283166040820152608081016119c66060830184611977565b95945050505050565b6001600160a01b038681168252858116602083015284811660408301528316606082015260a081016116106080830184611977565b828152604081016107f76020830184611977565b8151600090829060208501835b82811015611a43578151845260209384019390910190600101611a25565b509195945050505050565b60008251611a60818460208701611705565b9190910192915050565b634e487b7160e01b600052601260045260246000fd5b600082611a9d57634e487b7160e01b600052601260045260246000fd5b500690565b60408101818360005b60028110156117bc578151835260209283019290910190600101611aab565b60a08101818360005b60058110156117bc578151835260209283019290910190600101611ad3565b60608101818360005b60038110156117bc578151835260209283019290910190600101611afb565b808201808211156107b7576107b761176b565b600060018201611b3f57611b3f61176b565b506001019056fe30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001a2646970667358221220ac6ca0bff9d751c86b46ba501af21484662fe8b666c09e753d3dc42b0262bf0064736f6c634300081c003302e5032e6745f142152719c9b1c7f4790cf2b265e9060346a64791186aeae9d6" = _bytecode

Defined in: contracts/typechain-types/factories/contracts/MACI__factory.ts:851

Methods

connect()

connect(runner): MACI__factory

Defined in: contracts/typechain-types/factories/contracts/MACI__factory.ts:847

Return a new ContractFactory with the same ABI and bytecode, but connected to %%runner%%.

Parameters

runner

ContractRunner | null

Returns

MACI__factory

Overrides

ContractFactory.connect


deploy()

deploy(initParams, overrides?): Promise<MACI & object>

Defined in: contracts/typechain-types/factories/contracts/MACI__factory.ts:837

Resolves to the Contract deployed by passing %%args%% into the constructor.

This will resolve to the Contract before it has been deployed to the network, so the [[BaseContract-waitForDeployment]] should be used before sending any transactions to it.

Parameters

initParams

InitParamsStruct

overrides?

PayableOverrides & object

Returns

Promise<MACI & object>

Overrides

ContractFactory.deploy


getDeployTransaction()

getDeployTransaction(initParams, overrides?): Promise<ContractDeployTransaction>

Defined in: contracts/typechain-types/factories/contracts/MACI__factory.ts:831

Resolves to the transaction to deploy the contract, passing %%args%% into the constructor.

Parameters

initParams

InitParamsStruct

overrides?

PayableOverrides & object

Returns

Promise<ContractDeployTransaction>

Overrides

ContractFactory.getDeployTransaction


connect()

static connect(address, runner?): MACI

Defined in: contracts/typechain-types/factories/contracts/MACI__factory.ts:856

Parameters

address

string

runner?

ContractRunner | null

Returns

MACI


createInterface()

static createInterface(): MACIInterface

Defined in: contracts/typechain-types/factories/contracts/MACI__factory.ts:853

Returns

MACIInterface


linkBytecode()

static linkBytecode(linkLibraryAddresses): string

Defined in: contracts/typechain-types/factories/contracts/MACI__factory.ts:797

Parameters

linkLibraryAddresses

MACILibraryAddresses

Returns

string