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:776

Extends

  • ContractFactory

Constructors

Constructor

new MACI__factory(...args): MACI__factory

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

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 []; 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:841


bytecode

readonly static bytecode: "0x61018060405260405161234c38038061234c833981016040819052610023916104c8565b61003c600760008051602061232c83398151915261013e565b50600b805460018101825560009190915260008051602061232c8339815191527f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db99091015580516001600160a01b0390811660c09081526020830151821660e0526040830151821661010052606083015182166101205260808084015183166101405260a0840151909216610160528201805160ff908116909252516100e49116600261066e565b60a05260e08101516100fa906000906005610390565b50604080518082019091526001808252602082015261011890610315565b60000361013857604051633d7ba68560e21b815260040160405180910390fd5b506106f7565b60007f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f00000018210610180576040516361c0541760e11b815260040160405180910390fd5b816000036101a1576040516314b48df160e11b815260040160405180910390fd5b6000828152600384016020526040902054156101d0576040516312c50cad60e11b815260040160405180910390fd5b8254600180850154906101e4908390610681565b6001821b10156101fa576101f781610694565b90505b600185018190558360005b828110156102d7578084901c6001166001036102bb57604080518082018252600083815260028a01602090815290839020548252810184905290516314d2f97b60e11b815273__$6574937f64fc1d7710ec0e28b7a36713bb$__916329a5f2f69161027391906004016106ad565b602060405180830381865af4158015610290573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b491906106de565b91506102cf565b600081815260028801602052604090208290555b600101610205565b506102e183610694565b8087556000928352600287016020908152604080852084905587855260038901909152909220919091559150505b92915050565b6040516314d2f97b60e11b815260009073__$6574937f64fc1d7710ec0e28b7a36713bb$__906329a5f2f69061034f9085906004016106ad565b602060405180830381865af415801561036c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061030f91906106de565b82600581019282156103be579160200282015b828111156103be5782518255916020019190600101906103a3565b506103ca9291506103ce565b5090565b5b808211156103ca57600081556001016103cf565b634e487b7160e01b600052604160045260246000fd5b60405161010081016001600160401b038111828210171561041c5761041c6103e3565b60405290565b6001600160a01b038116811461043757600080fd5b50565b805161044581610422565b919050565b805160ff8116811461044557600080fd5b600082601f83011261046c57600080fd5b60405160a081016001600160401b038111828210171561048e5761048e6103e3565b6040528060a08401858111156104a357600080fd5b845b818110156104bd5780518352602092830192016104a5565b509195945050505050565b60006101808284031280156104dc57600080fd5b506104e56103f9565b82516104f081610422565b81526104fe6020840161043a565b602082015261050f6040840161043a565b60408201526105206060840161043a565b60608201526105316080840161043a565b608082015261054260a0840161043a565b60a082015261055360c0840161044a565b60c08201526105658460e0850161045b565b60e08201529392505050565b634e487b7160e01b600052601160045260246000fd5b6001815b60018411156105c2578085048111156105a6576105a6610571565b60018416156105b457908102905b60019390931c92800261058b565b935093915050565b6000826105d95750600161030f565b816105e65750600061030f565b81600181146105fc576002811461060657610622565b600191505061030f565b60ff84111561061757610617610571565b50506001821b61030f565b5060208310610133831016604e8410600b8410161715610645575081810a61030f565b6106526000198484610587565b806000190482111561066657610666610571565b029392505050565b600061067a83836105ca565b9392505050565b8082018082111561030f5761030f610571565b6000600182016106a6576106a6610571565b5060010190565b60408101818360005b60028110156106d55781518352602092830192909101906001016106b6565b50505092915050565b6000602082840312156106f057600080fd5b5051919050565b60805160a05160c05160e05161010051610120516101405161016051611b836107a9600039600081816103d5015281816108c701528181610ab20152610b750152600081816102530152818161089801528181610a900152610b5401526000818161049b015261062001526000818161035a0152610b250152600081816101b30152610a6301526000818161028f01526109b40152600081816104c2015261059d015260006103810152611b836000f3fe608060405234801561001057600080fd5b50600436106101a95760003560e01c80635bb93995116100f9578063ac2f007411610097578063c1103da011610071578063c1103da014610483578063cffca67614610496578063df82635a146104bd578063fc6bb994146104e457600080fd5b8063ac2f0074146103f7578063b87802c81461045d578063bea140b31461047057600080fd5b8063652c76e4116100d3578063652c76e41461037c578063683f3dc3146103b55780639cfced97146103bd578063a2d718a4146103d057600080fd5b80635bb939951461032f57806362a361bb1461034257806362b31f1e1461035557600080fd5b80633dfb88b2116101665780634984b894116101405780634984b894146102ee5780634c62aa721461030157806358bfc379146103145780635ae9d4f11461032757600080fd5b80633dfb88b2146102b1578063423f3e19146102c457806349716ebf146102db57600080fd5b8063055575eb146101ae5780631a8cbcaa146101f25780632b786571146102375780632b7ac3f31461024e57806330c5072814610275578063343393b51461028a575b600080fd5b6101d57f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b61020561020036600461112d565b610507565b6040805182516001600160a01b03908116825260208085015182169083015292820151909216908201526060016101e9565b61024060055481565b6040519081526020016101e9565b6101d57f000000000000000000000000000000000000000000000000000000000000000081565b610288610283366004611206565b610598565b005b6101d57f000000000000000000000000000000000000000000000000000000000000000081565b6102406102bf3660046112b2565b61073b565b600854600090815260096020526040902054610240565b6102406102e936600461112d565b6107bc565b6102406102fc36600461112d565b6107fd565b61020561030f36600461146b565b61081e565b61024061032236600461156b565b610ccf565b600754610240565b61024061033d366004611601565b610d57565b610240610350366004611623565b610d7c565b6101d57f000000000000000000000000000000000000000000000000000000000000000081565b6103a37f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff90911681526020016101e9565b6103a3600a81565b6102406103cb366004611666565b610db6565b6101d57f000000000000000000000000000000000000000000000000000000000000000081565b61043361040536600461112d565b6006602052600090815260409020805460018201546002909201546001600160a01b03918216928216911683565b604080516001600160a01b03948516815292841660208401529216918101919091526060016101e9565b61024061046b36600461112d565b610df0565b61024061047e3660046116a9565b610e07565b61024061049136600461112d565b610e41565b6101d57f000000000000000000000000000000000000000000000000000000000000000081565b6102407f000000000000000000000000000000000000000000000000000000000000000081565b6007546008546104f2919082565b604080519283526020830191909152016101e9565b6040805160608101825260008082526020820181905291810191909152600554821061054d5760405163a86ecdd560e01b81526004810183905260240160405180910390fd5b50600090815260066020908152604091829020825160608101845281546001600160a01b03908116825260018301548116938201939093526002909101549091169181019190915290565b6007547f0000000000000000000000000000000000000000000000000000000000000000116105da5760405163b984588b60e01b815260040160405180910390fd5b6105ec82600001518360200151610e68565b6106095760405163145a1fdd60e31b815260040160405180910390fd5b604051631e898ef160e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631e898ef1906106579033908590600401611710565b600060405180830381600087803b15801561067157600080fd5b505af1158015610685573d6000803e3d6000fd5b50505050600061069d83600001518460200151610d57565b905060006106ac600783610f12565b600b8054600181810183556000929092527f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db90182905560208601518651600754939450909290917f8a7b66ad10ac10c434142aadc63725213863fe31458b701f452d43de8a19b0d99161071f9190611768565b604080519182524260208301520160405180910390a350505050565b60405163248f667760e01b815260009073__$ce9c2c925f157047e54fa833ec4e61409f$__9063248f66779061077590859060040161177b565b602060405180830381865af4158015610792573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107b691906117ac565b92915050565b6000818152600a60205260408120548082036107eb57604051632cb4506160e21b815260040160405180910390fd5b6107f6600182611768565b9392505050565b600b818154811061080d57600080fd5b600091825260209091200154905081565b604080516060810182526000808252602082018190529181019190915260058054600181019091556080830151805160209091015161085d9190610e68565b61087a5760405163145a1fdd60e31b815260040160405180910390fd5b60006040518060a00160405280306001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020018560c001516001600160a01b031681526020018560e001516001600160a01b031681525090506000604051806101400160405280866000015181526020018660200151815260200186604001518152602001866060015160ff168152602001866080015181526020018381526020016000600188604001516020015161097a91906117c5565b60ff166005811061098d5761098d6117de565b015481526020018481526020018661010001518152602001866101200151815250905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634b332c20836040518263ffffffff1660e01b81526004016109fe9190611839565b6020604051808303816000875af1158015610a1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a419190611941565b60a0870151604051631c7d4e2b60e11b81529192506000916001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916338fa9c5691610adc917f0000000000000000000000000000000000000000000000000000000000000000917f0000000000000000000000000000000000000000000000000000000000000000918891600401611980565b6020604051808303816000875af1158015610afb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b1f9190611941565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663363448737f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000086868d60a001516040518663ffffffff1660e01b8152600401610bbb9594939291906119b6565b6020604051808303816000875af1158015610bda573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bfe9190611941565b604080516060810182526001600160a01b038087168252858116602080840191825282861684860190815260008d815260068352869020855181549086166001600160a01b031991821617825593516001820180549187169186169190911790559051600290910180549190941692169190911790915560808c015190810151905160a08d01519351949550919390927f38b2d18bb65cc91d7b436014cf44c8298b13bee60cc18d9e8efec26d1df3189091610cbb918c916119eb565b60405180910390a398975050505050505050565b6000600080516020611b2e833981519152600283604051602001610cf391906119ff565b60408051601f1981840301815290829052610d0d91611a35565b602060405180830381855afa158015610d2a573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610d4d91906117ac565b6107b69190611a67565b6000610d6161110f565b83815260208101839052610d7481610d7c565b949350505050565b6040516314d2f97b60e11b815260009073__$6574937f64fc1d7710ec0e28b7a36713bb$__906329a5f2f690610775908590600401611a89565b604051630926f44b60e31b815260009073__$20527677031d76601747626a9845039fe4$__90634937a25890610775908590600401611ab1565b60008160058110610e0057600080fd5b0154905081565b6040516304b98e1d60e31b815260009073__$dc01a9744591ab014bc46a3b7671cdaefb$__906325cc70e890610775908590600401611ad9565b6000600b8281548110610e5657610e566117de565b90600052602060002001549050919050565b600080600080516020611b2e83398151915284850990506000600080516020611b2e83398151915284850990506000600080516020611b2e83398151915282600080516020611b2e83398151915285620292fc090890506000600080516020611b2e8339815191528084600080516020611b2e83398151915287620292f809096001089050610f068282600080516020611b2e8339815191526110d4565b15979650505050505050565b6000600080516020611b2e8339815191528210610f42576040516361c0541760e11b815260040160405180910390fd5b81600003610f63576040516314b48df160e11b815260040160405180910390fd5b600082815260038401602052604090205415610f92576040516312c50cad60e11b815260040160405180910390fd5b825460018085015490610fa6908390611b01565b6001821b1015610fbc57610fb981611b14565b90505b600185018190558360005b82811015611099578084901c60011660010361107d57604080518082018252600083815260028a01602090815290839020548252810184905290516314d2f97b60e11b815273__$6574937f64fc1d7710ec0e28b7a36713bb$__916329a5f2f6916110359190600401611a89565b602060405180830381865af4158015611052573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061107691906117ac565b9150611091565b600081815260028801602052604090208290555b600101610fc7565b506110a383611b14565b8087556000928352600287016020908152604080852084905596845260039097019096529390209390935550919050565b6000838381116110eb576110e88382611b01565b90505b82806110f9576110f9611a51565b60006111058684611768565b0895945050505050565b60405180604001604052806002906020820280368337509192915050565b60006020828403121561113f57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604051610140810167ffffffffffffffff8111828210171561118057611180611146565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156111af576111af611146565b604052919050565b6000604082840312156111c957600080fd5b6040805190810167ffffffffffffffff811182821017156111ec576111ec611146565b604052823581526020928301359281019290925250919050565b6000806060838503121561121957600080fd5b61122384846111b7565b9150604083013567ffffffffffffffff81111561123f57600080fd5b8301601f8101851361125057600080fd5b803567ffffffffffffffff81111561126a5761126a611146565b61127d601f8201601f1916602001611186565b81815286602083850101111561129257600080fd5b816020840160208301376000602083830101528093505050509250929050565b6000608082840312156112c457600080fd5b600083601f8401126112d4578081fd5b806112df6080611186565b905080915060808401858111156112f557600080fd5b845b8181101561130f5780358452602093840193016112f7565b509095945050505050565b803560ff8116811461132b57600080fd5b919050565b60006060828403121561134257600080fd5b6040516060810167ffffffffffffffff8111828210171561136557611365611146565b6040529050806113748361131a565b81526113826020840161131a565b60208201526113936040840161131a565b60408201525092915050565b80356003811061132b57600080fd5b6001600160a01b03811681146113c357600080fd5b50565b803561132b816113ae565b600067ffffffffffffffff8211156113eb576113eb611146565b5060051b60200190565b600082601f83011261140657600080fd5b8135611419611414826113d1565b611186565b8082825260208201915060208360051b86010192508583111561143b57600080fd5b602085015b83811015611461578035611453816113ae565b835260209283019201611440565b5095945050505050565b60006020828403121561147d57600080fd5b813567ffffffffffffffff81111561149457600080fd5b82016101a081850312156114a757600080fd5b6114af61115c565b81358152602080830135908201526114ca8560408401611330565b60408201526114db60a0830161131a565b60608201526114ed8560c084016111b7565b60808201526114ff610100830161139f565b60a082015261151161012083016113c6565b60c082015261152361014083016113c6565b60e082015261016082013567ffffffffffffffff81111561154357600080fd5b61154f868285016113f5565b6101008301525061018091909101356101208201529392505050565b60006020828403121561157d57600080fd5b813567ffffffffffffffff81111561159457600080fd5b8201601f810184136115a557600080fd5b80356115b3611414826113d1565b8082825260208201915060208360051b8501019250868311156115d557600080fd5b6020840193505b828410156115f75783358252602093840193909101906115dc565b9695505050505050565b6000806040838503121561161457600080fd5b50508035926020909101359150565b60006040828403121561163557600080fd5b600083601f840112611645578081fd5b806116506040611186565b905080915060408401858111156112f557600080fd5b600060a0828403121561167857600080fd5b600083601f840112611688578081fd5b8061169360a0611186565b905080915060a08401858111156112f557600080fd5b6000606082840312156116bb57600080fd5b600083601f8401126116cb578081fd5b806116d66060611186565b905080915060608401858111156112f557600080fd5b60005b838110156117075781810151838201526020016116ef565b50506000910152565b60018060a01b0383168152604060208201526000825180604084015261173d8160608501602087016116ec565b601f01601f1916919091016060019392505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156107b6576107b6611752565b60808101818360005b60048110156117a3578151835260209283019290910190600101611784565b50505092915050565b6000602082840312156117be57600080fd5b5051919050565b60ff82811682821603908111156107b6576107b6611752565b634e487b7160e01b600052603260045260246000fd5b600081518084526020840193506020830160005b8281101561182f5781516001600160a01b0316865260209586019590910190600101611808565b5093949350505050565b60208152815160208201526020820151604082015260006040830151611882606084018260ff815116825260ff602082015116602083015260ff60408201511660408301525050565b50606083015160ff811660c0840152506080830151805160e084015260208101516101008401525060a083015180516001600160a01b039081166101208501526020820151811661014085015260408201518116610160850152606082015181166101808501526080820151166101a08401525060c08301516101c083015260e08301516101e08301526101008301516102206102008401526119296102408401826117f4565b90506101208401516102208401528091505092915050565b60006020828403121561195357600080fd5b81516107f6816113ae565b6003811061197c57634e487b7160e01b600052602160045260246000fd5b9052565b6001600160a01b038581168252848116602083015283166040820152608081016119ad606083018461195e565b95945050505050565b6001600160a01b038681168252858116602083015284811660408301528316606082015260a081016115f7608083018461195e565b828152604081016107f6602083018461195e565b8151600090829060208501835b82811015611a2a578151845260209384019390910190600101611a0c565b509195945050505050565b60008251611a478184602087016116ec565b9190910192915050565b634e487b7160e01b600052601260045260246000fd5b600082611a8457634e487b7160e01b600052601260045260246000fd5b500690565b60408101818360005b60028110156117a3578151835260209283019290910190600101611a92565b60a08101818360005b60058110156117a3578151835260209283019290910190600101611aba565b60608101818360005b60038110156117a3578151835260209283019290910190600101611ae2565b808201808211156107b6576107b6611752565b600060018201611b2657611b26611752565b506001019056fe30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001a2646970667358221220bbad135a579e269a9f7ad11e17d108abd62379b6ac40b40f876ec91ed4d522f864736f6c634300081c003302e5032e6745f142152719c9b1c7f4790cf2b265e9060346a64791186aeae9d6" = _bytecode

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

Methods

connect()

connect(runner): MACI__factory

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

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:826

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:820

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:845

Parameters

address

string

runner?

ContractRunner | null

Returns

MACI


createInterface()

static createInterface(): MACIInterface

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

Returns

MACIInterface


linkBytecode()

static linkBytecode(linkLibraryAddresses): string

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

Parameters

linkLibraryAddresses

MACILibraryAddresses

Returns

string