diff --git a/contract/src/MinaAccountValidation.sol b/contract/src/MinaAccountValidation.sol index 5d960c4c..9a6b72c2 100644 --- a/contract/src/MinaAccountValidation.sol +++ b/contract/src/MinaAccountValidation.sol @@ -6,6 +6,17 @@ import "aligned_layer/contracts/src/core/AlignedLayerServiceManager.sol"; error AccountIsNotVerified(); contract MinaAccountValidation { + struct AlignedArgs { + bytes32 proofCommitment; + bytes32 provingSystemAuxDataCommitment; + bytes20 proofGeneratorAddr; + bytes32 batchMerkleRoot; + bytes merkleProof; + uint256 verificationDataBatchIndex; + bytes pubInput; + address batcherPaymentServiceAddr; + } + /// @notice Reference to the AlignedLayerServiceManager contract. AlignedLayerServiceManager aligned; @@ -13,29 +24,20 @@ contract MinaAccountValidation { aligned = AlignedLayerServiceManager(_alignedServiceAddr); } - function validateAccount( - bytes32 proofCommitment, - bytes32 provingSystemAuxDataCommitment, - bytes20 proofGeneratorAddr, - bytes32 batchMerkleRoot, - bytes memory merkleProof, - uint256 verificationDataBatchIndex, - bytes calldata pubInput, - address batcherPaymentServiceAddress - ) external view returns (Account memory) { - bytes calldata encodedAccount = pubInput[32 + 8:]; + function validateAccount(AlignedArgs calldata args) external view returns (Account memory) { + bytes calldata encodedAccount = args.pubInput[32 + 8:]; - bytes32 pubInputCommitment = keccak256(pubInput); + bytes32 pubInputCommitment = keccak256(args.pubInput); bool isAccountVerified = aligned.verifyBatchInclusion( - proofCommitment, + args.proofCommitment, pubInputCommitment, - provingSystemAuxDataCommitment, - proofGeneratorAddr, - batchMerkleRoot, - merkleProof, - verificationDataBatchIndex, - batcherPaymentServiceAddress + args.provingSystemAuxDataCommitment, + args.proofGeneratorAddr, + args.batchMerkleRoot, + args.merkleProof, + args.verificationDataBatchIndex, + args.batcherPaymentServiceAddr ); if (isAccountVerified) { diff --git a/core/abi/MinaAccountValidation.json b/core/abi/MinaAccountValidation.json index b37e6f9d..b967e2a2 100644 --- a/core/abi/MinaAccountValidation.json +++ b/core/abi/MinaAccountValidation.json @@ -1 +1 @@ -{"abi":[{"type":"constructor","inputs":[{"name":"_alignedServiceAddr","type":"address","internalType":"address payable"}],"stateMutability":"nonpayable"},{"type":"function","name":"validateAccount","inputs":[{"name":"proofCommitment","type":"bytes32","internalType":"bytes32"},{"name":"provingSystemAuxDataCommitment","type":"bytes32","internalType":"bytes32"},{"name":"proofGeneratorAddr","type":"bytes20","internalType":"bytes20"},{"name":"batchMerkleRoot","type":"bytes32","internalType":"bytes32"},{"name":"merkleProof","type":"bytes","internalType":"bytes"},{"name":"verificationDataBatchIndex","type":"uint256","internalType":"uint256"},{"name":"pubInput","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"tuple","internalType":"struct MinaAccountValidation.Account","components":[{"name":"publicKey","type":"tuple","internalType":"struct MinaAccountValidation.CompressedECPoint","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"isOdd","type":"bool","internalType":"bool"}]},{"name":"tokenIdKeyHash","type":"bytes32","internalType":"bytes32"},{"name":"tokenSymbol","type":"string","internalType":"string"},{"name":"balance","type":"uint64","internalType":"uint64"},{"name":"nonce","type":"uint32","internalType":"uint32"},{"name":"receiptChainHash","type":"bytes32","internalType":"bytes32"},{"name":"delegate","type":"tuple","internalType":"struct MinaAccountValidation.CompressedECPoint","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"isOdd","type":"bool","internalType":"bool"}]},{"name":"votingFor","type":"bytes32","internalType":"bytes32"},{"name":"timing","type":"tuple","internalType":"struct MinaAccountValidation.Timing","components":[{"name":"initialMinimumBalance","type":"uint64","internalType":"uint64"},{"name":"cliffTime","type":"uint32","internalType":"uint32"},{"name":"cliffAmount","type":"uint64","internalType":"uint64"},{"name":"vestingPeriod","type":"uint32","internalType":"uint32"},{"name":"vestingIncrement","type":"uint64","internalType":"uint64"}]},{"name":"permissions","type":"tuple","internalType":"struct MinaAccountValidation.Permissions","components":[{"name":"editState","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"access","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"send","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"rreceive","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"setDelegate","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"setPermissions","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"setVerificationKeyAuth","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"setVerificationKeyUint","type":"uint32","internalType":"uint32"},{"name":"setZkappUri","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"editActionState","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"setTokenSymbol","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"incrementNonce","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"setVotingFor","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"setTiming","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"}]},{"name":"zkapp","type":"tuple","internalType":"struct MinaAccountValidation.ZkappAccount","components":[{"name":"appState","type":"bytes32[8]","internalType":"bytes32[8]"},{"name":"verificationKey","type":"tuple","internalType":"struct MinaAccountValidation.VerificationKey","components":[{"name":"maxProofsVerified","type":"uint8","internalType":"enum MinaAccountValidation.ProofsVerified"},{"name":"actualWrapDomainSize","type":"uint8","internalType":"enum MinaAccountValidation.ProofsVerified"},{"name":"wrapIndex","type":"tuple","internalType":"struct MinaAccountValidation.WrapIndex","components":[{"name":"sigmaComm","type":"tuple[7]","internalType":"struct MinaAccountValidation.Commitment[7]","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]},{"name":"coefficientsComm","type":"tuple[15]","internalType":"struct MinaAccountValidation.Commitment[15]","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]},{"name":"genericComm","type":"tuple","internalType":"struct MinaAccountValidation.Commitment","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]},{"name":"psmComm","type":"tuple","internalType":"struct MinaAccountValidation.Commitment","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]},{"name":"completeAddComm","type":"tuple","internalType":"struct MinaAccountValidation.Commitment","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]},{"name":"mulComm","type":"tuple","internalType":"struct MinaAccountValidation.Commitment","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]},{"name":"emulComm","type":"tuple","internalType":"struct MinaAccountValidation.Commitment","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]},{"name":"endomulScalarComm","type":"tuple","internalType":"struct MinaAccountValidation.Commitment","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]}]}]},{"name":"zkappVersion","type":"uint32","internalType":"uint32"},{"name":"actionState","type":"bytes32[5]","internalType":"bytes32[5]"},{"name":"lastActionSlot","type":"uint32","internalType":"uint32"},{"name":"provedState","type":"bool","internalType":"bool"},{"name":"zkappUri","type":"bytes","internalType":"bytes"}]}]}],"stateMutability":"view"},{"type":"error","name":"AccountIsNotVerified","inputs":[]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b506040516113e23803806113e283398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b61134f806100936000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f4c7c1fa14610030575b600080fd5b61004361003e3660046105ac565b610059565b6040516100509190610a2d565b60405180910390f35b610061610167565b3660006100718460288188610b5f565b9150915060008585604051610087929190610b89565b6040518091039020905060008060009054906101000a90046001600160a01b03166001600160a01b03166306045a918e848f8f8f8f8f60006040518963ffffffff1660e01b81526004016100e2989796959493929190610b99565b602060405180830381865afa1580156100ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101239190610c11565b9050801561014257610137838501856111f9565b94505050505061015b565b604051634de35c5f60e11b815260040160405180910390fd5b98975050505050505050565b604080516101a081018252600061016082018181526101808301829052825260208083018290526060838501819052808401839052608080850184905260a08086018590528651808801885285815280850186905260c087015260e0860185905286519081018752848152928301849052948201839052810182905292830152610100810191909152610120810161026a604080516101c0810190915280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526000602082018190526040909101908152602001600081526020016000815260200160008152602001600081526020016000905290565b815260200161027761027c565b905290565b6040518060e0016040528061028f6102c9565b815260200161029c6102e8565b8152600060208201526040016102b0610307565b8152600060208201819052604082015260609081015290565b6040518061010001604052806008906020820280368337509192915050565b6040805160608101825260008082526020820152908101610277610325565b6040518060a001604052806005906020820280368337509192915050565b6040518061010001604052806103396103d0565b8152602001610346610409565b8152604080518082018252600080825260208083018290528085019290925282518084018452818152808301829052838501528251808401845281815280830182905260608501528251808401845281815280830182905260808501528251808401845281815280830182905260a085015282518084019093528083529082015260c09091015290565b6040518060e001604052806007905b60408051808201909152600080825260208201528152602001906001900390816103df5790505090565b60408051610220810190915260006101e082018181526102008301919091528152600e602082016103df565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b038111828210171561046d5761046d610435565b60405290565b6040516101c081016001600160401b038111828210171561046d5761046d610435565b604051606081016001600160401b038111828210171561046d5761046d610435565b60405161010081016001600160401b038111828210171561046d5761046d610435565b60405160e081016001600160401b038111828210171561046d5761046d610435565b60405161016081016001600160401b038111828210171561046d5761046d610435565b600082601f83011261053157600080fd5b81356001600160401b038082111561054b5761054b610435565b604051601f8301601f19908116603f0116810190828211818310171561057357610573610435565b8160405283815286602085880101111561058c57600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060008060008060e0898b0312156105c857600080fd5b883597506020890135965060408901356bffffffffffffffffffffffff19811681146105f357600080fd5b95506060890135945060808901356001600160401b038082111561061657600080fd5b6106228c838d01610520565b955060a08b0135945060c08b013591508082111561063f57600080fd5b818b0191508b601f83011261065357600080fd5b81358181111561066257600080fd5b8c602082850101111561067457600080fd5b6020830194508093505050509295985092959890939650565b6000815180845260005b818110156106b357602081850181015186830182015201610697565b818111156106c5576000602083870101525b50601f01601f19169290920160200192915050565b634e487b7160e01b600052602160045260246000fd5b60058110610700576107006106da565b9052565b61070f8282516106f0565b602081015161072160208401826106f0565b50604081015161073460408401826106f0565b50606081015161074760608401826106f0565b50608081015161075a60808401826106f0565b5060a081015161076d60a08401826106f0565b5060c081015161078060c08401826106f0565b5060e081015161079860e084018263ffffffff169052565b50610100808201516107ac828501826106f0565b5050610120808201516107c1828501826106f0565b5050610140808201516107d6828501826106f0565b5050610160808201516107eb828501826106f0565b505061018080820151610800828501826106f0565b50506101a080820151610815828501826106f0565b50505050565b60038110610700576107006106da565b8060005b600f8110156108155761084d84835180518252602090810151910152565b604093909301926020919091019060010161082f565b61086e82825161081b565b6020808201516108808285018261081b565b50604082810151805160008684015b60078210156108bf576108ad81845180518252602090810151910152565b9185019160019190910190840161088f565b50505091820151916108d561020086018461082b565b9081015180516105c08601526020908101516105e0860152606082015180516106008701528101516106208601526080820151805161064087015281015161066086015260a082015180516106808701528101516106a086015260c082015180516106c08701528101516106e086015260e09091015180516107008601520151610720909301929092525050565b8060005b6005811015610815578151845260209384019390910190600101610967565b80516000906109609084835b60088110156109b1578251825260209283019290910190600101610992565b50505060208301516109c7610100860182610863565b50604083015163ffffffff1661084085015260608301516109ec610860860182610963565b50608083015163ffffffff1661090085015260a0830151151561092085015260c08301516109408501829052610a248286018261068d565b95945050505050565b6020808252825180518383015201511515604082015260208201516060820152600060408301516103c0806080850152610a6b6103e085018361068d565b91506060850151610a8760a08601826001600160401b03169052565b50608085015163ffffffff811660c08601525060a085015160e085015260c0850151610100610ac481870183805182526020908101511515910152565b60e0870151610140878101919091528188015180516001600160401b039081166101608a0152602082015163ffffffff9081166101808b0152604083015182166101a08b01526060830151166101c08a0152608090910151166101e08801526101208801519250610b39610200880184610704565b870151868503601f1901848801529150610b5590508382610986565b9695505050505050565b60008085851115610b6f57600080fd5b83861115610b7c57600080fd5b5050820193919092039150565b8183823760009101908152919050565b60006101008a83528960208401528860408401526bffffffffffffffffffffffff19881660608401528660808401528060a0840152610bda8184018761068d565b60c084019590955250506001600160a01b039190911660e0909101529695505050505050565b8015158114610c0e57600080fd5b50565b600060208284031215610c2357600080fd5b8151610c2e81610c00565b9392505050565b8035610c4081610c00565b919050565b600060408284031215610c5757600080fd5b610c5f61044b565b9050813581526020820135610c7381610c00565b602082015292915050565b80356001600160401b0381168114610c4057600080fd5b803563ffffffff81168114610c4057600080fd5b600060a08284031215610cbb57600080fd5b60405160a081018181106001600160401b0382111715610cdd57610cdd610435565b604052905080610cec83610c7e565b8152610cfa60208401610c95565b6020820152610d0b60408401610c7e565b6040820152610d1c60608401610c95565b6060820152610d2d60808401610c7e565b60808201525092915050565b803560058110610c4057600080fd5b60006101c08284031215610d5b57600080fd5b610d63610473565b9050610d6e82610d39565b8152610d7c60208301610d39565b6020820152610d8d60408301610d39565b6040820152610d9e60608301610d39565b6060820152610daf60808301610d39565b6080820152610dc060a08301610d39565b60a0820152610dd160c08301610d39565b60c0820152610de260e08301610c95565b60e0820152610100610df5818401610d39565b90820152610120610e07838201610d39565b90820152610140610e19838201610d39565b90820152610160610e2b838201610d39565b90820152610180610e3d838201610d39565b908201526101a0610e4f838201610d39565b9082015292915050565b600082601f830112610e6a57600080fd5b6040516101008082018281106001600160401b0382111715610e8e57610e8e610435565b60405283018185821115610ea157600080fd5b845b82811015610ebb578035825260209182019101610ea3565b509195945050505050565b803560038110610c4057600080fd5b600060408284031215610ee757600080fd5b610eef61044b565b9050813581526020820135602082015292915050565b600082601f830112610f1657600080fd5b6040805160e081018181106001600160401b0382111715610f3957610f39610435565b8252806101c0850186811115610f4e57600080fd5b855b81811015610f7157610f628882610ed5565b83526020909201918401610f50565b50919695505050505050565b600082601f830112610f8e57600080fd5b604080516101e081018181106001600160401b0382111715610fb257610fb2610435565b8252806103c0850186811115610fc757600080fd5b855b81811015610f7157610fdb8882610ed5565b83526020909201918401610fc9565b6000818303610740811215610ffe57600080fd5b611006610496565b915061101183610ec6565b825261101f60208401610ec6565b602083015261070080603f198301121561103857600080fd5b6110406104b8565b915061104f8560408601610f05565b825261105f856102008601610f7d565b6020830152611072856105c08601610ed5565b6040830152611085856106008601610ed5565b6060830152611098856106408601610ed5565b60808301526110ab856106808601610ed5565b60a08301526110be856106c08601610ed5565b60c08301526110cf85828601610ed5565b60e083015250604082015292915050565b600082601f8301126110f157600080fd5b60405160a081018181106001600160401b038211171561111357611113610435565b6040528060a084018581111561112857600080fd5b845b81811015610ebb57803583526020928301920161112a565b6000610960828403121561115557600080fd5b61115d6104db565b90506111698383610e59565b8152611179836101008401610fea565b602082015261118b6108408301610c95565b604082015261119e8361086084016110e0565b60608201526111b06109008301610c95565b60808201526111c26109208301610c35565b60a08201526109408201356001600160401b038111156111e157600080fd5b6111ed84828501610520565b60c08301525092915050565b60006020828403121561120b57600080fd5b81356001600160401b038082111561122257600080fd5b908301906103c0828603121561123757600080fd5b61123f6104fd565b6112498684610c45565b81526040830135602082015260608301358281111561126757600080fd5b61127387828601610520565b60408301525061128560808401610c7e565b606082015261129660a08401610c95565b608082015260c083013560a08201526112b28660e08501610c45565b60c08201526101208084013560e08301526101406112d288828701610ca9565b6101008401526112e6886101e08701610d48565b828401526103a08501359150838211156112ff57600080fd5b61130b88838701611142565b90830152509594505050505056fea264697066735822122034adf3e34dfad4a785abce07aeaa5b199bc318fc511caaf4c5ead2fa3f51563964736f6c634300080c0033","sourceMap":"171:3299:64:-:0;;;319:123;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;378:7;:57;;-1:-1:-1;;;;;;378:57:64;-1:-1:-1;;;;;378:57:64;;;;;;;;;;171:3299;;14:298:67;92:6;145:2;133:9;124:7;120:23;116:32;113:52;;;161:1;158;151:12;113:52;187:16;;-1:-1:-1;;;;;232:31:67;;222:42;;212:70;;278:1;275;268:12;212:70;301:5;14:298;-1:-1:-1;;;14:298:67:o;:::-;171:3299:64;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f4c7c1fa14610030575b600080fd5b61004361003e3660046105ac565b610059565b6040516100509190610a2d565b60405180910390f35b610061610167565b3660006100718460288188610b5f565b9150915060008585604051610087929190610b89565b6040518091039020905060008060009054906101000a90046001600160a01b03166001600160a01b03166306045a918e848f8f8f8f8f60006040518963ffffffff1660e01b81526004016100e2989796959493929190610b99565b602060405180830381865afa1580156100ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101239190610c11565b9050801561014257610137838501856111f9565b94505050505061015b565b604051634de35c5f60e11b815260040160405180910390fd5b98975050505050505050565b604080516101a081018252600061016082018181526101808301829052825260208083018290526060838501819052808401839052608080850184905260a08086018590528651808801885285815280850186905260c087015260e0860185905286519081018752848152928301849052948201839052810182905292830152610100810191909152610120810161026a604080516101c0810190915280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526000602082018190526040909101908152602001600081526020016000815260200160008152602001600081526020016000905290565b815260200161027761027c565b905290565b6040518060e0016040528061028f6102c9565b815260200161029c6102e8565b8152600060208201526040016102b0610307565b8152600060208201819052604082015260609081015290565b6040518061010001604052806008906020820280368337509192915050565b6040805160608101825260008082526020820152908101610277610325565b6040518060a001604052806005906020820280368337509192915050565b6040518061010001604052806103396103d0565b8152602001610346610409565b8152604080518082018252600080825260208083018290528085019290925282518084018452818152808301829052838501528251808401845281815280830182905260608501528251808401845281815280830182905260808501528251808401845281815280830182905260a085015282518084019093528083529082015260c09091015290565b6040518060e001604052806007905b60408051808201909152600080825260208201528152602001906001900390816103df5790505090565b60408051610220810190915260006101e082018181526102008301919091528152600e602082016103df565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b038111828210171561046d5761046d610435565b60405290565b6040516101c081016001600160401b038111828210171561046d5761046d610435565b604051606081016001600160401b038111828210171561046d5761046d610435565b60405161010081016001600160401b038111828210171561046d5761046d610435565b60405160e081016001600160401b038111828210171561046d5761046d610435565b60405161016081016001600160401b038111828210171561046d5761046d610435565b600082601f83011261053157600080fd5b81356001600160401b038082111561054b5761054b610435565b604051601f8301601f19908116603f0116810190828211818310171561057357610573610435565b8160405283815286602085880101111561058c57600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060008060008060e0898b0312156105c857600080fd5b883597506020890135965060408901356bffffffffffffffffffffffff19811681146105f357600080fd5b95506060890135945060808901356001600160401b038082111561061657600080fd5b6106228c838d01610520565b955060a08b0135945060c08b013591508082111561063f57600080fd5b818b0191508b601f83011261065357600080fd5b81358181111561066257600080fd5b8c602082850101111561067457600080fd5b6020830194508093505050509295985092959890939650565b6000815180845260005b818110156106b357602081850181015186830182015201610697565b818111156106c5576000602083870101525b50601f01601f19169290920160200192915050565b634e487b7160e01b600052602160045260246000fd5b60058110610700576107006106da565b9052565b61070f8282516106f0565b602081015161072160208401826106f0565b50604081015161073460408401826106f0565b50606081015161074760608401826106f0565b50608081015161075a60808401826106f0565b5060a081015161076d60a08401826106f0565b5060c081015161078060c08401826106f0565b5060e081015161079860e084018263ffffffff169052565b50610100808201516107ac828501826106f0565b5050610120808201516107c1828501826106f0565b5050610140808201516107d6828501826106f0565b5050610160808201516107eb828501826106f0565b505061018080820151610800828501826106f0565b50506101a080820151610815828501826106f0565b50505050565b60038110610700576107006106da565b8060005b600f8110156108155761084d84835180518252602090810151910152565b604093909301926020919091019060010161082f565b61086e82825161081b565b6020808201516108808285018261081b565b50604082810151805160008684015b60078210156108bf576108ad81845180518252602090810151910152565b9185019160019190910190840161088f565b50505091820151916108d561020086018461082b565b9081015180516105c08601526020908101516105e0860152606082015180516106008701528101516106208601526080820151805161064087015281015161066086015260a082015180516106808701528101516106a086015260c082015180516106c08701528101516106e086015260e09091015180516107008601520151610720909301929092525050565b8060005b6005811015610815578151845260209384019390910190600101610967565b80516000906109609084835b60088110156109b1578251825260209283019290910190600101610992565b50505060208301516109c7610100860182610863565b50604083015163ffffffff1661084085015260608301516109ec610860860182610963565b50608083015163ffffffff1661090085015260a0830151151561092085015260c08301516109408501829052610a248286018261068d565b95945050505050565b6020808252825180518383015201511515604082015260208201516060820152600060408301516103c0806080850152610a6b6103e085018361068d565b91506060850151610a8760a08601826001600160401b03169052565b50608085015163ffffffff811660c08601525060a085015160e085015260c0850151610100610ac481870183805182526020908101511515910152565b60e0870151610140878101919091528188015180516001600160401b039081166101608a0152602082015163ffffffff9081166101808b0152604083015182166101a08b01526060830151166101c08a0152608090910151166101e08801526101208801519250610b39610200880184610704565b870151868503601f1901848801529150610b5590508382610986565b9695505050505050565b60008085851115610b6f57600080fd5b83861115610b7c57600080fd5b5050820193919092039150565b8183823760009101908152919050565b60006101008a83528960208401528860408401526bffffffffffffffffffffffff19881660608401528660808401528060a0840152610bda8184018761068d565b60c084019590955250506001600160a01b039190911660e0909101529695505050505050565b8015158114610c0e57600080fd5b50565b600060208284031215610c2357600080fd5b8151610c2e81610c00565b9392505050565b8035610c4081610c00565b919050565b600060408284031215610c5757600080fd5b610c5f61044b565b9050813581526020820135610c7381610c00565b602082015292915050565b80356001600160401b0381168114610c4057600080fd5b803563ffffffff81168114610c4057600080fd5b600060a08284031215610cbb57600080fd5b60405160a081018181106001600160401b0382111715610cdd57610cdd610435565b604052905080610cec83610c7e565b8152610cfa60208401610c95565b6020820152610d0b60408401610c7e565b6040820152610d1c60608401610c95565b6060820152610d2d60808401610c7e565b60808201525092915050565b803560058110610c4057600080fd5b60006101c08284031215610d5b57600080fd5b610d63610473565b9050610d6e82610d39565b8152610d7c60208301610d39565b6020820152610d8d60408301610d39565b6040820152610d9e60608301610d39565b6060820152610daf60808301610d39565b6080820152610dc060a08301610d39565b60a0820152610dd160c08301610d39565b60c0820152610de260e08301610c95565b60e0820152610100610df5818401610d39565b90820152610120610e07838201610d39565b90820152610140610e19838201610d39565b90820152610160610e2b838201610d39565b90820152610180610e3d838201610d39565b908201526101a0610e4f838201610d39565b9082015292915050565b600082601f830112610e6a57600080fd5b6040516101008082018281106001600160401b0382111715610e8e57610e8e610435565b60405283018185821115610ea157600080fd5b845b82811015610ebb578035825260209182019101610ea3565b509195945050505050565b803560038110610c4057600080fd5b600060408284031215610ee757600080fd5b610eef61044b565b9050813581526020820135602082015292915050565b600082601f830112610f1657600080fd5b6040805160e081018181106001600160401b0382111715610f3957610f39610435565b8252806101c0850186811115610f4e57600080fd5b855b81811015610f7157610f628882610ed5565b83526020909201918401610f50565b50919695505050505050565b600082601f830112610f8e57600080fd5b604080516101e081018181106001600160401b0382111715610fb257610fb2610435565b8252806103c0850186811115610fc757600080fd5b855b81811015610f7157610fdb8882610ed5565b83526020909201918401610fc9565b6000818303610740811215610ffe57600080fd5b611006610496565b915061101183610ec6565b825261101f60208401610ec6565b602083015261070080603f198301121561103857600080fd5b6110406104b8565b915061104f8560408601610f05565b825261105f856102008601610f7d565b6020830152611072856105c08601610ed5565b6040830152611085856106008601610ed5565b6060830152611098856106408601610ed5565b60808301526110ab856106808601610ed5565b60a08301526110be856106c08601610ed5565b60c08301526110cf85828601610ed5565b60e083015250604082015292915050565b600082601f8301126110f157600080fd5b60405160a081018181106001600160401b038211171561111357611113610435565b6040528060a084018581111561112857600080fd5b845b81811015610ebb57803583526020928301920161112a565b6000610960828403121561115557600080fd5b61115d6104db565b90506111698383610e59565b8152611179836101008401610fea565b602082015261118b6108408301610c95565b604082015261119e8361086084016110e0565b60608201526111b06109008301610c95565b60808201526111c26109208301610c35565b60a08201526109408201356001600160401b038111156111e157600080fd5b6111ed84828501610520565b60c08301525092915050565b60006020828403121561120b57600080fd5b81356001600160401b038082111561122257600080fd5b908301906103c0828603121561123757600080fd5b61123f6104fd565b6112498684610c45565b81526040830135602082015260608301358281111561126757600080fd5b61127387828601610520565b60408301525061128560808401610c7e565b606082015261129660a08401610c95565b608082015260c083013560a08201526112b28660e08501610c45565b60c08201526101208084013560e08301526101406112d288828701610ca9565b6101008401526112e6886101e08701610d48565b828401526103a08501359150838211156112ff57600080fd5b61130b88838701611142565b90830152509594505050505056fea264697066735822122034adf3e34dfad4a785abce07aeaa5b199bc318fc511caaf4c5ead2fa3f51563964736f6c634300080c0033","sourceMap":"171:3299:64:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;448:947;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;763:14;;:::i;:::-;789:29;;821:17;:8;830:6;821:8;;:17;:::i;:::-;789:49;;;;849:26;888:8;;878:19;;;;;;;:::i;:::-;;;;;;;;849:48;;908:22;933:7;;;;;;;;;-1:-1:-1;;;;;933:7:64;-1:-1:-1;;;;;933:28:64;;975:15;1004:18;1036:30;1080:18;1112:15;1141:11;1166:26;1214:1;933:293;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;908:318;;1241:17;1237:152;;;1281:37;;;;1292:14;1281:37;:::i;:::-;1274:44;;;;;;;;1237:152;1356:22;;-1:-1:-1;;;1356:22:64;;;;;;;;;;;448:947;;;;;;;;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:127:67;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:257;218:4;212:11;;;250:17;;-1:-1:-1;;;;;282:34:67;;318:22;;;279:62;276:88;;;344:18;;:::i;:::-;380:4;373:24;146:257;:::o;408:250::-;475:2;469:9;517:6;505:19;;-1:-1:-1;;;;;539:34:67;;575:22;;;536:62;533:88;;;601:18;;:::i;663:253::-;735:2;729:9;777:4;765:17;;-1:-1:-1;;;;;797:34:67;;833:22;;;794:62;791:88;;;859:18;;:::i;921:255::-;993:2;987:9;1035:6;1023:19;;-1:-1:-1;;;;;1057:34:67;;1093:22;;;1054:62;1051:88;;;1119:18;;:::i;1181:253::-;1253:2;1247:9;1295:4;1283:17;;-1:-1:-1;;;;;1315:34:67;;1351:22;;;1312:62;1309:88;;;1377:18;;:::i;1439:255::-;1511:2;1505:9;1553:6;1541:19;;-1:-1:-1;;;;;1575:34:67;;1611:22;;;1572:62;1569:88;;;1637:18;;:::i;1699:718::-;1741:5;1794:3;1787:4;1779:6;1775:17;1771:27;1761:55;;1812:1;1809;1802:12;1761:55;1848:6;1835:20;-1:-1:-1;;;;;1911:2:67;1907;1904:10;1901:36;;;1917:18;;:::i;:::-;1992:2;1986:9;1960:2;2046:13;;-1:-1:-1;;2042:22:67;;;2066:2;2038:31;2034:40;2022:53;;;2090:18;;;2110:22;;;2087:46;2084:72;;;2136:18;;:::i;:::-;2176:10;2172:2;2165:22;2211:2;2203:6;2196:18;2257:3;2250:4;2245:2;2237:6;2233:15;2229:26;2226:35;2223:55;;;2274:1;2271;2264:12;2223:55;2338:2;2331:4;2323:6;2319:17;2312:4;2304:6;2300:17;2287:54;2385:1;2378:4;2373:2;2365:6;2361:15;2357:26;2350:37;2405:6;2396:15;;;;;;1699:718;;;;:::o;2422:1251::-;2555:6;2563;2571;2579;2587;2595;2603;2611;2664:3;2652:9;2643:7;2639:23;2635:33;2632:53;;;2681:1;2678;2671:12;2632:53;2704:23;;;-1:-1:-1;2774:2:67;2759:18;;2746:32;;-1:-1:-1;2828:2:67;2813:18;;2800:32;-1:-1:-1;;2861:43:67;;2851:54;;2841:82;;2919:1;2916;2909:12;2841:82;2942:5;-1:-1:-1;2994:2:67;2979:18;;2966:32;;-1:-1:-1;3049:3:67;3034:19;;3021:33;-1:-1:-1;;;;;3103:14:67;;;3100:34;;;3130:1;3127;3120:12;3100:34;3153:49;3194:7;3185:6;3174:9;3170:22;3153:49;:::i;:::-;3143:59;;3249:3;3238:9;3234:19;3221:33;3211:43;;3307:3;3296:9;3292:19;3279:33;3263:49;;3337:2;3327:8;3324:16;3321:36;;;3353:1;3350;3343:12;3321:36;3391:8;3380:9;3376:24;3366:34;;3438:7;3431:4;3427:2;3423:13;3419:27;3409:55;;3460:1;3457;3450:12;3409:55;3500:2;3487:16;3526:2;3518:6;3515:14;3512:34;;;3542:1;3539;3532:12;3512:34;3587:7;3582:2;3573:6;3569:2;3565:15;3561:24;3558:37;3555:57;;;3608:1;3605;3598:12;3555:57;3639:2;3635;3631:11;3621:21;;3661:6;3651:16;;;;;2422:1251;;;;;;;;;;;:::o;3953:472::-;3995:3;4033:5;4027:12;4060:6;4055:3;4048:19;4085:1;4095:162;4109:6;4106:1;4103:13;4095:162;;;4171:4;4227:13;;;4223:22;;4217:29;4199:11;;;4195:20;;4188:59;4124:12;4095:162;;;4275:6;4272:1;4269:13;4266:87;;;4341:1;4334:4;4325:6;4320:3;4316:16;4312:27;4305:38;4266:87;-1:-1:-1;4407:2:67;4386:15;-1:-1:-1;;4382:29:67;4373:39;;;;4414:4;4369:50;;3953:472;-1:-1:-1;;3953:472:67:o;5108:127::-;5169:10;5164:3;5160:20;5157:1;5150:31;5200:4;5197:1;5190:15;5224:4;5221:1;5214:15;5240:143;5324:1;5317:5;5314:12;5304:46;;5330:18;;:::i;:::-;5359;;5240:143::o;5388:1834::-;5453:47;5496:3;5488:5;5482:12;5453:47;:::i;:::-;5546:4;5539:5;5535:16;5529:23;5561:58;5613:4;5608:3;5604:14;5590:12;5561:58;:::i;:::-;;5667:4;5660:5;5656:16;5650:23;5682:60;5736:4;5731:3;5727:14;5711;5682:60;:::i;:::-;;5790:4;5783:5;5779:16;5773:23;5805:60;5859:4;5854:3;5850:14;5834;5805:60;:::i;:::-;;5913:4;5906:5;5902:16;5896:23;5928:60;5982:4;5977:3;5973:14;5957;5928:60;:::i;:::-;;6036:4;6029:5;6025:16;6019:23;6051:60;6105:4;6100:3;6096:14;6080;6051:60;:::i;:::-;;6159:4;6152:5;6148:16;6142:23;6174:60;6228:4;6223:3;6219:14;6203;6174:60;:::i;:::-;;6282:4;6275:5;6271:16;6265:23;6297:49;6340:4;6335:3;6331:14;6315;4613:10;4602:22;4590:35;;4537:94;6297:49;;6365:6;6419:2;6412:5;6408:14;6402:21;6432:58;6486:2;6481:3;6477:12;6461:14;6432:58;:::i;:::-;;;6509:6;6563:2;6556:5;6552:14;6546:21;6576:58;6630:2;6625:3;6621:12;6605:14;6576:58;:::i;:::-;;;6653:6;6707:2;6700:5;6696:14;6690:21;6720:58;6774:2;6769:3;6765:12;6749:14;6720:58;:::i;:::-;;;6797:6;6852:2;6845:5;6841:14;6835:21;6865:59;6920:2;6915:3;6911:12;6894:15;6865:59;:::i;:::-;;;6943:6;6998:2;6991:5;6987:14;6981:21;7011:59;7066:2;7061:3;7057:12;7040:15;7011:59;:::i;:::-;;;7089:6;7144:2;7137:5;7133:14;7127:21;7157:59;7212:2;7207:3;7203:12;7186:15;7157:59;:::i;:::-;;;5388:1834;;:::o;7227:145::-;7313:1;7306:5;7303:12;7293:46;;7319:18;;:::i;7533:335::-;7636:5;7659:1;7669:193;7683:4;7680:1;7677:11;7669:193;;;7730:48;7774:3;7765:6;7759:13;7453:12;;7441:25;;7515:4;7504:16;;;7498:23;7482:14;;7475:47;7377:151;7730:48;7807:4;7798:14;;;;;7847:4;7835:17;;;;;7703:1;7696:9;7669:193;;7873:1627;7942:49;7987:3;7979:5;7973:12;7942:49;:::i;:::-;8010:4;8060:2;8053:5;8049:14;8043:21;8073:58;8127:2;8122:3;8118:12;8104;8073:58;:::i;:::-;-1:-1:-1;8150:4:67;8191:14;;;8185:21;8256;;8364:1;8225:12;;;8374:195;8388:4;8385:1;8382:11;8374:195;;;8435:50;8479:5;8470:6;8464:13;7453:12;;7441:25;;7515:4;7504:16;;;7498:23;7482:14;;7475:47;7377:151;8435:50;8544:15;;;;8408:1;8401:9;;;;;8507:14;;8374:195;;;-1:-1:-1;;;8606:23:67;;;8600:30;;8639:65;8699:3;8690:13;;8600:30;8639:65;:::i;:::-;8741:23;;;8735:30;7453:12;;8828:4;8819:14;;7441:25;7515:4;7504:16;;;7498:23;7482:14;;;7475:47;8891:4;8871:25;;8865:32;7453:12;;8960:4;8951:14;;7441:25;7504:16;;7498:23;7482:14;;;7475:47;9023:4;9003:25;;8997:32;7453:12;;9092:4;9083:14;;7441:25;7504:16;;7498:23;7482:14;;;7475:47;9155:4;9135:25;;9129:32;7453:12;;9224:4;9215:14;;7441:25;7504:16;;7498:23;7482:14;;;7475:47;9287:4;9267:25;;9261:32;7453:12;;9356:4;9347:14;;7441:25;7504:16;;7498:23;7482:14;;;7475:47;9419:4;9399:25;;;9393:32;7453:12;;9488:4;9479:14;;7441:25;7504:16;7498:23;7482:14;;;;7475:47;;;;-1:-1:-1;;7873:1627:67:o;9505:326::-;9598:5;9621:1;9631:194;9645:4;9642:1;9639:11;9631:194;;;9704:13;;9692:26;;9741:4;9765:12;;;;9800:15;;;;9665:1;9658:9;9631:194;;9836:1166;9944:12;;9891:3;;9919:6;;9978:3;9891;10055:200;10069:4;10066:1;10063:11;10055:200;;;10130:13;;10116:28;;10167:4;10230:15;;;;10193:14;;;;10089:1;10082:9;10055:200;;;10059:3;;;10301:4;10294:5;10290:16;10284:23;10316:65;10373:6;10368:3;10364:16;10350:12;10316:65;:::i;:::-;-1:-1:-1;10429:4:67;10418:16;;10412:23;4613:10;4602:22;10487:6;10478:16;;4590:35;10543:4;10532:16;;10526:23;10558:58;10608:6;10599:16;;10526:23;10558:58;:::i;:::-;-1:-1:-1;10664:4:67;10653:16;;10647:23;4613:10;4602:22;10722:6;10713:16;;4590:35;10778:4;10767:16;;10761:23;3748:13;3741:21;10834:6;10825:16;;3729:34;10890:4;10879:16;;10873:23;10921:6;10912:16;;10905:28;;;10949:47;10983:12;;;10873:23;10949:47;:::i;:::-;10942:54;9836:1166;-1:-1:-1;;;;;9836:1166:67:o;11007:1526::-;11188:2;11170:21;;;11236:13;;3857:12;;11251:18;;;3845:25;3922:16;3916:23;3909:31;3902:39;3886:14;;;3879:63;11324:2;11316:6;11312:15;11306:22;11301:2;11290:9;11286:18;11279:50;11151:4;11376;11368:6;11364:17;11358:24;11401:6;11444:2;11438:3;11427:9;11423:19;11416:31;11470:52;11517:3;11506:9;11502:19;11488:12;11470:52;:::i;:::-;11456:66;;11571:2;11563:6;11559:15;11553:22;11584:54;11633:3;11622:9;11618:19;11602:14;-1:-1:-1;;;;;4495:30:67;4483:43;;4430:102;11584:54;-1:-1:-1;11687:3:67;11675:16;;11669:23;4613:10;4602:22;;11750:3;11735:19;;4590:35;11701:54;11810:3;11802:6;11798:16;11792:23;11786:3;11775:9;11771:19;11764:52;11865:3;11857:6;11853:16;11847:23;11889:3;11901:71;11968:2;11957:9;11953:18;11937:14;3857:12;;3845:25;;3933:4;3922:16;;;3916:23;3909:31;3902:39;3886:14;;3879:63;3774:174;11901:71;12009:3;11997:16;;11991:23;12033:3;12052:18;;;12045:30;;;;12112:15;;;12106:22;4749:12;;-1:-1:-1;;;;;4745:21:67;;;12193:3;12178:19;;4733:34;4813:4;4802:16;;4796:23;4838:10;4880:21;;;4864:14;;;4857:45;4955:4;4944:16;;4938:23;4934:32;;4918:14;;;4911:56;5020:4;5009:16;;5003:23;4999:32;4983:14;;;4976:56;5085:4;5074:16;;;5068:23;5064:32;5048:14;;;5041:56;12247:6;12235:19;;12229:26;;-1:-1:-1;12264:66:67;12325:3;12310:19;;12229:26;12264:66;:::i;:::-;12367:15;;12361:22;12423;;;-1:-1:-1;;12419:36:67;12399:18;;;12392:64;12361:22;-1:-1:-1;12473:54:67;;-1:-1:-1;12427:6:67;12361:22;12473:54;:::i;:::-;12465:62;11007:1526;-1:-1:-1;;;;;;11007:1526:67:o;12538:331::-;12643:9;12654;12696:8;12684:10;12681:24;12678:44;;;12718:1;12715;12708:12;12678:44;12747:6;12737:8;12734:20;12731:40;;;12767:1;12764;12757:12;12731:40;-1:-1:-1;;12793:23:67;;;12838:25;;;;;-1:-1:-1;12538:331:67:o;12874:271::-;13057:6;13049;13044:3;13031:33;13013:3;13083:16;;13108:13;;;13083:16;12874:271;-1:-1:-1;12874:271:67:o;13150:805::-;13456:4;13485:3;13515:6;13504:9;13497:25;13558:6;13553:2;13542:9;13538:18;13531:34;13601:6;13596:2;13585:9;13581:18;13574:34;13660:26;13656:31;13648:6;13644:44;13639:2;13628:9;13624:18;13617:72;13726:6;13720:3;13709:9;13705:19;13698:35;13770:2;13764:3;13753:9;13749:19;13742:31;13790:45;13831:2;13820:9;13816:18;13808:6;13790:45;:::i;:::-;13866:3;13851:19;;13844:35;;;;-1:-1:-1;;;;;;;13916:32:67;;;;13910:3;13895:19;;;13888:61;13782:53;13150:805;-1:-1:-1;;;;;;13150:805:67:o;13960:118::-;14046:5;14039:13;14032:21;14025:5;14022:32;14012:60;;14068:1;14065;14058:12;14012:60;13960:118;:::o;14083:245::-;14150:6;14203:2;14191:9;14182:7;14178:23;14174:32;14171:52;;;14219:1;14216;14209:12;14171:52;14251:9;14245:16;14270:28;14292:5;14270:28;:::i;:::-;14317:5;14083:245;-1:-1:-1;;;14083:245:67:o;14333:128::-;14398:20;;14427:28;14398:20;14427:28;:::i;:::-;14333:128;;;:::o;14466:362::-;14530:5;14578:4;14566:9;14561:3;14557:19;14553:30;14550:50;;;14596:1;14593;14586:12;14550:50;14618:22;;:::i;:::-;14609:31;;14676:9;14663:23;14656:5;14649:38;14739:2;14728:9;14724:18;14711:32;14752:30;14774:7;14752:30;:::i;:::-;14809:2;14798:14;;14791:31;14802:5;14466:362;-1:-1:-1;;14466:362:67:o;14833:171::-;14900:20;;-1:-1:-1;;;;;14949:30:67;;14939:41;;14929:69;;14994:1;14991;14984:12;15009:163;15076:20;;15136:10;15125:22;;15115:33;;15105:61;;15162:1;15159;15152:12;15177:696;15230:5;15278:4;15266:9;15261:3;15257:19;15253:30;15250:50;;;15296:1;15293;15286:12;15250:50;15329:2;15323:9;15371:4;15363:6;15359:17;15442:6;15430:10;15427:22;-1:-1:-1;;;;;15394:10:67;15391:34;15388:62;15385:88;;;15453:18;;:::i;:::-;15489:2;15482:22;15522:6;-1:-1:-1;15522:6:67;15552:28;15570:9;15552:28;:::i;:::-;15544:6;15537:44;15614:37;15647:2;15636:9;15632:18;15614:37;:::i;:::-;15609:2;15601:6;15597:15;15590:62;15685:37;15718:2;15707:9;15703:18;15685:37;:::i;:::-;15680:2;15672:6;15668:15;15661:62;15756:37;15789:2;15778:9;15774:18;15756:37;:::i;:::-;15751:2;15743:6;15739:15;15732:62;15828:38;15861:3;15850:9;15846:19;15828:38;:::i;:::-;15822:3;15814:6;15810:16;15803:64;;15177:696;;;;:::o;15878:153::-;15956:20;;16005:1;15995:12;;15985:40;;16021:1;16018;16011:12;16036:1416;16094:5;16142:6;16130:9;16125:3;16121:19;16117:32;16114:52;;;16162:1;16159;16152:12;16114:52;16184:17;;:::i;:::-;16175:26;;16224:39;16253:9;16224:39;:::i;:::-;16217:5;16210:54;16296:48;16340:2;16329:9;16325:18;16296:48;:::i;:::-;16291:2;16284:5;16280:14;16273:72;16377:48;16421:2;16410:9;16406:18;16377:48;:::i;:::-;16372:2;16365:5;16361:14;16354:72;16458:48;16502:2;16491:9;16487:18;16458:48;:::i;:::-;16453:2;16446:5;16442:14;16435:72;16540:49;16584:3;16573:9;16569:19;16540:49;:::i;:::-;16534:3;16527:5;16523:15;16516:74;16623:49;16667:3;16656:9;16652:19;16623:49;:::i;:::-;16617:3;16610:5;16606:15;16599:74;16706:49;16750:3;16739:9;16735:19;16706:49;:::i;:::-;16700:3;16693:5;16689:15;16682:74;16789:38;16822:3;16811:9;16807:19;16789:38;:::i;:::-;16783:3;16776:5;16772:15;16765:63;16847:3;16882:48;16926:2;16915:9;16911:18;16882:48;:::i;:::-;16866:14;;;16859:72;16950:3;16985:48;17014:18;;;16985:48;:::i;:::-;16969:14;;;16962:72;17053:3;17088:48;17117:18;;;17088:48;:::i;:::-;17072:14;;;17065:72;17156:3;17191:48;17220:18;;;17191:48;:::i;:::-;17175:14;;;17168:72;17259:3;17294:48;17323:18;;;17294:48;:::i;:::-;17278:14;;;17271:72;17362:3;17397:48;17426:18;;;17397:48;:::i;:::-;17381:14;;;17374:72;17385:5;16036:1416;-1:-1:-1;;16036:1416:67:o;17457:668::-;17507:5;17560:3;17553:4;17545:6;17541:17;17537:27;17527:55;;17578:1;17575;17568:12;17527:55;17611:2;17605:9;17633:3;17675:2;17667:6;17663:15;17744:6;17732:10;17729:22;-1:-1:-1;;;;;17696:10:67;17693:34;17690:62;17687:88;;;17755:18;;:::i;:::-;17791:2;17784:22;17855:15;;17826:6;17882:15;;;17879:35;;;17910:1;17907;17900:12;17879:35;17934:6;17949:146;17965:6;17960:3;17957:15;17949:146;;;18033:17;;18021:30;;18080:4;18071:14;;;;17982;17949:146;;;-1:-1:-1;18113:6:67;;17457:668;-1:-1:-1;;;;;17457:668:67:o;18130:155::-;18210:20;;18259:1;18249:12;;18239:40;;18275:1;18272;18265:12;18290:285;18347:5;18395:4;18383:9;18378:3;18374:19;18370:30;18367:50;;;18413:1;18410;18403:12;18367:50;18435:22;;:::i;:::-;18426:31;;18493:9;18480:23;18473:5;18466:38;18564:2;18553:9;18549:18;18536:32;18531:2;18524:5;18520:14;18513:56;18290:285;;;;:::o;18580:698::-;18640:5;18693:3;18686:4;18678:6;18674:17;18670:27;18660:55;;18711:1;18708;18701:12;18660:55;18734:2;18765;18759:9;18807:3;18799:6;18795:16;18877:6;18865:10;18862:22;-1:-1:-1;;;;;18829:10:67;18826:34;18823:62;18820:88;;;18888:18;;:::i;:::-;18917:22;;18959:6;19000:3;18988:16;;19016:15;;;19013:35;;;19044:1;19041;19034:12;19013:35;19068:6;19083:165;19099:6;19094:3;19091:15;19083:165;;;19165:38;19199:3;19194;19165:38;:::i;:::-;19153:51;;19233:4;19224:14;;;;19116:12;;19083:165;;;-1:-1:-1;19266:6:67;;18580:698;-1:-1:-1;;;;;;18580:698:67:o;19283:720::-;19365:5;19418:3;19411:4;19403:6;19399:17;19395:27;19385:55;;19436:1;19433;19426:12;19385:55;19459:2;19490;19484:9;19532:3;19524:6;19520:16;19602:6;19590:10;19587:22;-1:-1:-1;;;;;19554:10:67;19551:34;19548:62;19545:88;;;19613:18;;:::i;:::-;19642:22;;19684:6;19725:3;19713:16;;19741:15;;;19738:35;;;19769:1;19766;19759:12;19738:35;19793:6;19808:165;19824:6;19819:3;19816:15;19808:165;;;19890:38;19924:3;19919;19890:38;:::i;:::-;19878:51;;19958:4;19949:14;;;;19841:12;;19808:165;;20008:1264;20070:5;20109:9;20104:3;20100:19;20139:6;20135:2;20131:15;20128:35;;;20159:1;20156;20149:12;20128:35;20181:22;;:::i;:::-;20172:31;;20226:41;20257:9;20226:41;:::i;:::-;20219:5;20212:56;20300:50;20346:2;20335:9;20331:18;20300:50;:::i;:::-;20295:2;20288:5;20284:14;20277:74;20370:6;20410:2;20404;20400:7;20396:2;20392:16;20388:25;20385:45;;;20426:1;20423;20416:12;20385:45;20454:22;;:::i;:::-;20439:37;;20501:59;20556:3;20551:2;20540:9;20536:18;20501:59;:::i;:::-;20492:7;20485:76;20595:82;20673:3;20667;20656:9;20652:19;20595:82;:::i;:::-;20590:2;20581:7;20577:16;20570:108;20712:55;20763:3;20756:4;20745:9;20741:20;20712:55;:::i;:::-;20707:2;20698:7;20694:16;20687:81;20804:55;20855:3;20848:4;20837:9;20833:20;20804:55;:::i;:::-;20797:4;20788:7;20784:18;20777:83;20896:55;20947:3;20940:4;20929:9;20925:20;20896:55;:::i;:::-;20889:4;20880:7;20876:18;20869:83;20988:55;21039:3;21032:4;21021:9;21017:20;20988:55;:::i;:::-;20981:4;20972:7;20968:18;20961:83;21080:55;21131:3;21124:4;21113:9;21109:20;21080:55;:::i;:::-;21073:4;21064:7;21060:18;21053:83;21172:53;21221:3;21216:2;21205:9;21201:18;21172:53;:::i;:::-;21165:4;21152:18;;21145:81;-1:-1:-1;21253:2:67;21242:14;;21235:31;21246:5;20008:1264;-1:-1:-1;;20008:1264:67:o;21277:659::-;21338:5;21391:3;21384:4;21376:6;21372:17;21368:27;21358:55;;21409:1;21406;21399:12;21358:55;21442:2;21436:9;21484:3;21476:6;21472:16;21554:6;21542:10;21539:22;-1:-1:-1;;;;;21506:10:67;21503:34;21500:62;21497:88;;;21565:18;;:::i;:::-;21601:2;21594:22;21636:6;21677:3;21665:16;;21693:15;;;21690:35;;;21721:1;21718;21711:12;21690:35;21745:6;21760:146;21776:6;21771:3;21768:15;21760:146;;;21844:17;;21832:30;;21891:4;21882:14;;;;21793;21760:146;;21941:848;22000:5;22048:6;22036:9;22031:3;22027:19;22023:32;22020:52;;;22068:1;22065;22058:12;22020:52;22090:22;;:::i;:::-;22081:31;;22135:40;22171:3;22160:9;22135:40;:::i;:::-;22128:5;22121:55;22210:59;22265:3;22259;22248:9;22244:19;22210:59;:::i;:::-;22203:4;22196:5;22192:16;22185:85;22304:39;22337:4;22326:9;22322:20;22304:39;:::i;:::-;22297:4;22290:5;22286:16;22279:65;22378:62;22436:3;22429:4;22418:9;22414:20;22378:62;:::i;:::-;22371:4;22364:5;22360:16;22353:88;22475:39;22508:4;22497:9;22493:20;22475:39;:::i;:::-;22468:4;22461:5;22457:16;22450:65;22549:37;22580:4;22569:9;22565:20;22549:37;:::i;:::-;22542:4;22535:5;22531:16;22524:63;22638:4;22627:9;22623:20;22610:34;-1:-1:-1;;;;;22659:6:67;22656:30;22653:50;;;22699:1;22696;22689:12;22653:50;22737:45;22778:3;22769:6;22758:9;22754:22;22737:45;:::i;:::-;22730:4;22723:5;22719:16;22712:71;;21941:848;;;;:::o;22794:1498::-;22879:6;22932:2;22920:9;22911:7;22907:23;22903:32;22900:52;;;22948:1;22945;22938:12;22900:52;22988:9;22975:23;-1:-1:-1;;;;;23058:2:67;23050:6;23047:14;23044:34;;;23074:1;23071;23064:12;23044:34;23097:22;;;;23153:6;23135:16;;;23131:29;23128:49;;;23173:1;23170;23163:12;23128:49;23199:22;;:::i;:::-;23244:48;23284:7;23280:2;23244:48;:::i;:::-;23237:5;23230:63;23346:2;23342;23338:11;23325:25;23320:2;23313:5;23309:14;23302:49;23397:2;23393;23389:11;23376:25;23426:2;23416:8;23413:16;23410:36;;;23442:1;23439;23432:12;23410:36;23478:44;23514:7;23503:8;23499:2;23495:17;23478:44;:::i;:::-;23473:2;23466:5;23462:14;23455:68;;23555:31;23581:3;23577:2;23573:12;23555:31;:::i;:::-;23550:2;23543:5;23539:14;23532:55;23620:31;23646:3;23642:2;23638:12;23620:31;:::i;:::-;23614:3;23607:5;23603:15;23596:56;23706:3;23702:2;23698:12;23685:26;23679:3;23672:5;23668:15;23661:51;23745:58;23795:7;23789:3;23785:2;23781:12;23745:58;:::i;:::-;23739:3;23732:5;23728:15;23721:83;23823:3;23880:2;23876;23872:11;23859:25;23853:3;23846:5;23842:15;23835:50;23904:3;23943:46;23981:7;23976:2;23972;23968:11;23943:46;:::i;:::-;23934:6;23927:5;23923:18;23916:74;24022:52;24066:7;24060:3;24056:2;24052:12;24022:52;:::i;:::-;24017:2;24010:5;24006:14;23999:76;24121:3;24117:2;24113:12;24100:26;24084:42;;24151:2;24141:8;24138:16;24135:36;;;24167:1;24164;24157:12;24135:36;24203:58;24253:7;24242:8;24238:2;24234:17;24203:58;:::i;:::-;24187:14;;;24180:82;-1:-1:-1;24191:5:67;22794:1498;-1:-1:-1;;;;;22794:1498:67:o","linkReferences":{}},"methodIdentifiers":{"validateAccount(bytes32,bytes32,bytes20,bytes32,bytes,uint256,bytes)":"f4c7c1fa"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.12+commit.f00d7308\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_alignedServiceAddr\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"AccountIsNotVerified\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"proofCommitment\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"provingSystemAuxDataCommitment\",\"type\":\"bytes32\"},{\"internalType\":\"bytes20\",\"name\":\"proofGeneratorAddr\",\"type\":\"bytes20\"},{\"internalType\":\"bytes32\",\"name\":\"batchMerkleRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"merkleProof\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"verificationDataBatchIndex\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"pubInput\",\"type\":\"bytes\"}],\"name\":\"validateAccount\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bool\",\"name\":\"isOdd\",\"type\":\"bool\"}],\"internalType\":\"struct MinaAccountValidation.CompressedECPoint\",\"name\":\"publicKey\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"tokenIdKeyHash\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tokenSymbol\",\"type\":\"string\"},{\"internalType\":\"uint64\",\"name\":\"balance\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"nonce\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"receiptChainHash\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bool\",\"name\":\"isOdd\",\"type\":\"bool\"}],\"internalType\":\"struct MinaAccountValidation.CompressedECPoint\",\"name\":\"delegate\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"votingFor\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"uint64\",\"name\":\"initialMinimumBalance\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"cliffTime\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"cliffAmount\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"vestingPeriod\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"vestingIncrement\",\"type\":\"uint64\"}],\"internalType\":\"struct MinaAccountValidation.Timing\",\"name\":\"timing\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"editState\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"access\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"send\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"rreceive\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"setDelegate\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"setPermissions\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"setVerificationKeyAuth\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"setVerificationKeyUint\",\"type\":\"uint32\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"setZkappUri\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"editActionState\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"setTokenSymbol\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"incrementNonce\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"setVotingFor\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"setTiming\",\"type\":\"uint8\"}],\"internalType\":\"struct MinaAccountValidation.Permissions\",\"name\":\"permissions\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32[8]\",\"name\":\"appState\",\"type\":\"bytes32[8]\"},{\"components\":[{\"internalType\":\"enum MinaAccountValidation.ProofsVerified\",\"name\":\"maxProofsVerified\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.ProofsVerified\",\"name\":\"actualWrapDomainSize\",\"type\":\"uint8\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment[7]\",\"name\":\"sigmaComm\",\"type\":\"tuple[7]\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment[15]\",\"name\":\"coefficientsComm\",\"type\":\"tuple[15]\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment\",\"name\":\"genericComm\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment\",\"name\":\"psmComm\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment\",\"name\":\"completeAddComm\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment\",\"name\":\"mulComm\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment\",\"name\":\"emulComm\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment\",\"name\":\"endomulScalarComm\",\"type\":\"tuple\"}],\"internalType\":\"struct MinaAccountValidation.WrapIndex\",\"name\":\"wrapIndex\",\"type\":\"tuple\"}],\"internalType\":\"struct MinaAccountValidation.VerificationKey\",\"name\":\"verificationKey\",\"type\":\"tuple\"},{\"internalType\":\"uint32\",\"name\":\"zkappVersion\",\"type\":\"uint32\"},{\"internalType\":\"bytes32[5]\",\"name\":\"actionState\",\"type\":\"bytes32[5]\"},{\"internalType\":\"uint32\",\"name\":\"lastActionSlot\",\"type\":\"uint32\"},{\"internalType\":\"bool\",\"name\":\"provedState\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"zkappUri\",\"type\":\"bytes\"}],\"internalType\":\"struct MinaAccountValidation.ZkappAccount\",\"name\":\"zkapp\",\"type\":\"tuple\"}],\"internalType\":\"struct MinaAccountValidation.Account\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/MinaAccountValidation.sol\":\"MinaAccountValidation\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin-upgrades/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/\",\":@openzeppelin/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/\",\":aligned_layer/=lib/aligned_layer/\",\":ds-test/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/ds-test/src/\",\":eigenlayer-contracts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/\",\":eigenlayer-core-contracts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/core/\",\":eigenlayer-core/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/\",\":eigenlayer-middleware/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/\",\":eigenlayer-scripts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/script/\",\":erc4626-tests/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-upgradeable-v4.9.0/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":openzeppelin-contracts-upgradeable-v4.9.0/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-upgradeable-v4.9.0/\",\":openzeppelin-contracts-upgradeable/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts-v4.9.0/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-v4.9.0/\",\":openzeppelin-contracts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/\"]},\"sources\":{\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IAVSDirectory.sol\":{\"keccak256\":\"0x3f67ab9b510b02dc3c07014b49785f1e167401bdb39cc10f737bbf545632d938\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://48d1267e2df6c8ac9b8f419269ff3d23be9b62606ee6b6d2278c27ffebfd73aa\",\"dweb:/ipfs/QmaFyywKCm1eotKjF1evryW8BMQJzPDstZm1wMRW79phXG\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IBeaconChainOracle.sol\":{\"keccak256\":\"0x0fef07aa6179c77198f1514e12e628aa1c876e04f9c181ec853a322179e5be00\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://51438325876cc2d4c77f58488a7e27b488015d1b663c50be6a5cafbd73b9c983\",\"dweb:/ipfs/QmViCuGoYZzi6wtXA8PPKigqVv3KMuNxEVQ1Td9dGqjL18\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IDelegationManager.sol\":{\"keccak256\":\"0xab76a9f4eff865cbb689f627cf98263488765519d7a4ec5ffbcb0ca4972842f9\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://ff57ce18e8350bf39f190645db0988bc0f1279f1872150a114a1b520c38a2914\",\"dweb:/ipfs/QmSsUXkNUqYuJgGRumHTSs9rAaboGjecotcM4xHrdBYWaZ\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IETHPOSDeposit.sol\":{\"keccak256\":\"0x2e60e5f4b0da0a0a4e2a07c63141120998559970c21deac743ea0c64a60a880c\",\"license\":\"CC0-1.0\",\"urls\":[\"bzz-raw://e635c346bde5b7ade9bcf35bc733081520cb86015be4fbc6e761e6e9482c4c91\",\"dweb:/ipfs/QmRoeazEnbFn5SPSWAkoFK2gSN9DMp3hJAnrLWuL2sKutz\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IEigenPod.sol\":{\"keccak256\":\"0xb50c36ad96b6679bb80fd8331f949cbfbcba0f529026e1421a4d2bae64396eba\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://5719181d780120f1e688c0da276992a8caf185815917f453b3550537c31ed4cc\",\"dweb:/ipfs/QmYprRC5ZEXhz3zAUND5E8Xjn6s5TL8ZF8QbnndVq7aVPR\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IEigenPodManager.sol\":{\"keccak256\":\"0xd8a64dbed03d3a5cdbefe1af75968f2dde07f973749c2ef5197bf7187c3e448c\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://27ccc7c1fd9352e9f9b357c9063d255dc0ed9583f43db09f786ac7497d7846b8\",\"dweb:/ipfs/QmeJzuJkE9m2NUNwZSp4tGZEZmih1LeucePup8hzMVDRbG\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IPausable.sol\":{\"keccak256\":\"0x98cffc894842947377e24c1d375813a1120dd73a84c29782ab68404e109cb34f\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://b3474f6c350ceaee57cbdfb08fb48835d0c6e81ae8ebfbb9667899584a139324\",\"dweb:/ipfs/QmWELKtksdtWxQbqAccd8yGyhKqrgPZXTADKR7BuT27Zg5\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IPauserRegistry.sol\":{\"keccak256\":\"0x9de8dd682bc0d812bbd6583c0231cbf35448d5eff58b74a93efa64cb9a768c49\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://c00d6c675b9c72b092d287fe85fd37782588df32b8eb59ab4c7db7a86be25e7d\",\"dweb:/ipfs/QmeYokY3HhAdbBaCPdHg3PgQEdRCDFEJy3Wf7VtgHBkQSx\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IRewardsCoordinator.sol\":{\"keccak256\":\"0xeab6f1140a90eb7f107d95bae1e8b2ecfbfe36282d62c9df69e6a564c2c59771\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://785cd2777cdcab3b827b5eef2a4dae02c56db07252fdcefd8dd1016be034dc71\",\"dweb:/ipfs/QmNyDFchTuMeiVoxNEfQw96JVq7DfkohGz1txKXe7HyNbq\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/ISignatureUtils.sol\":{\"keccak256\":\"0x5e52482a31d94401a8502f3014c4aada1142b4450fc0596dff8e1866a85fe092\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://17dc326c9361bc1453379f26545963557b2883b0c88bc07d4477e04dbcc0cc8c\",\"dweb:/ipfs/QmZXT7A816W5JH2ymirE2ETaJttqztFCsEL22AV8oEfCK9\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/ISlasher.sol\":{\"keccak256\":\"0x45dfaa2cfdde87f48a6ee38bb6fb739847aef7cf3f6137bdcd8c8a330559ec79\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://1b7f6bd75b42fcaa91ceb7140cb2c41926a1fe6ee2d3161e4fe6186b181ba232\",\"dweb:/ipfs/QmZjbdKiSs33C9i3GDc3sdD39Pz4YPkDoKftowoUF4kHmY\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IStrategy.sol\":{\"keccak256\":\"0xc530c6a944b70051fd0dac0222de9a4b5baadeaf94ad194daac6ad8d2ace7420\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://3767df0364ce835b52e786d2851431eb9223fe4747602107505477e162231d73\",\"dweb:/ipfs/QmZkH5bKUygQrJomndNaQqkefVRW4rRefCa8HPJ5HMczxJ\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IStrategyManager.sol\":{\"keccak256\":\"0x68bf02a443fc8b2f612eba3d39bfefa5f61f78b549f111cdecec5f2c58236a52\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://76bc6875ce74128b861fdac5fd1c0c72f3cc9bacf67fa4a73721b95fb23959ef\",\"dweb:/ipfs/QmPix4WJmf9fXyMZxfgwXEHBcg7V4NAbRqs4HUf5YrSJcM\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/libraries/BeaconChainProofs.sol\":{\"keccak256\":\"0x70d89b05c1c5f47b74a07fbb5a2c05e606fed494e749ea98a9915b7be73df377\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://db1d3bfaee69aef53c8b12b492a17584e6d1ac94610cb8b38aad33e1cdd81af7\",\"dweb:/ipfs/QmfVsMTj1hcf9fMEm5RzvtcBN4dMcAKFBgUUDsNDr5XFpq\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/libraries/Endian.sol\":{\"keccak256\":\"0xf3b72653ba2567a978d4612703fa5f71c5fcd015d8dac7818468f22772d90a9d\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://cee9d09370d968138d775c39525db4cd0768d60d17be7685519de12444e7dd2f\",\"dweb:/ipfs/QmUdGh8wpMei3edKiEWA6S96s9dRt4ekZKJ4nau356X8xQ\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/libraries/Merkle.sol\":{\"keccak256\":\"0x9095fc29b96d102b10c02d44b3a6fbfa25593ef6ae4a810363ab885b9e6b0f71\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0945132d482d56278edddb1d32209903c4d3839c87ba4317aadd97dc23610d0f\",\"dweb:/ipfs/QmVuM2aLRHxitx4rPx3GTYTBCVNcjYn6sHBRr1biUjLBP5\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/permissions/Pausable.sol\":{\"keccak256\":\"0xce8ee0ab28f2bce9e94aa19fffe55bebef080327632ac98ff3ab14994b369bc0\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://5c7e2be97a8840fa2a0434077a36136553a84efd9bff4b46712ce9fddb813a6a\",\"dweb:/ipfs/QmZKvgPxLAbGo1CqTA4AX6MCDPFLSSNt43ZKWRjvvzFp7S\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x247c62047745915c0af6b955470a72d1696ebad4352d7d3011aef1a2463cd888\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d7fc8396619de513c96b6e00301b88dd790e83542aab918425633a5f7297a15a\",\"dweb:/ipfs/QmXbP4kiZyp7guuS7xe8KaybnwkRPGrBc2Kbi3vhcTfpxb\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x0203dcadc5737d9ef2c211d6fa15d18ebc3b30dfa51903b64870b01a062b0b4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6eb2fd1e9894dbe778f4b8131adecebe570689e63cf892f4e21257bfe1252497\",\"dweb:/ipfs/QmXgUGNfZvrn6N2miv3nooSs7Jm34A41qz94fu2GtDFcx8\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x611aa3f23e59cfdd1863c536776407b3e33d695152a266fa7cfb34440a29a8a3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b4b2110b7f2b3eb32951bc08046fa90feccffa594e1176cb91cdfb0e94726b4\",\"dweb:/ipfs/QmSxLwYjicf9zWFuieRc8WQwE4FisA1Um5jp1iSa731TGt\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x963ea7f0b48b032eef72fe3a7582edf78408d6f834115b9feadd673a4d5bd149\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d6520943ea55fdf5f0bafb39ed909f64de17051bc954ff3e88c9e5621412c79c\",\"dweb:/ipfs/QmWZ4rAKTQbNG2HxGs46AcTXShsVytKeLs7CUCdCSv5N7a\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x9750c6b834f7b43000631af5cc30001c5f547b3ceb3635488f140f60e897ea6b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a7d5b1ef5d8d5889ad2ed89d8619c09383b80b72ab226e0fe7bde1636481e34\",\"dweb:/ipfs/QmebXWgtEfumQGBdVeM6c71McLixYXQP5Bk6kKXuoY4Bmr\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/BLSSignatureChecker.sol\":{\"keccak256\":\"0x3a5c205c596d3d73c7afa63ffbbfac8204f6d6a26c151ef26b47278981c3c0fe\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://4beb88bf5b7c7e614f0d87b157d7a4b67afbf1cc93f3127622bd66f696799241\",\"dweb:/ipfs/QmWJKb6qsd69bWgpAHX6deCkJqmJdo9oBLQAXJk97gWEE2\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/ServiceManagerBase.sol\":{\"keccak256\":\"0x7e32ef76daf32e5eb5a93cecf204223e64243f42afe70c7ca71ad3db3925b9c4\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://19c10aa22f2e86e27e946b65c434e541caa6af06fcdde46c3b5e9b42890bd221\",\"dweb:/ipfs/QmPb5qDRdbJTniKSqsbjVhbtwdb72G9hWPYcHtVvj1zBxg\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/ServiceManagerBaseStorage.sol\":{\"keccak256\":\"0xa544114dbf6d973a815f997a2ac9237c531c40b08c91d3a65a23b152ed621e1e\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://4cf69f9be7d3f3c4184b61b267280a829040973633ea9d95e2ec0dbf70f40a2e\",\"dweb:/ipfs/QmT2HeCJWBLX2p4KAWnyU318MMx9USb2brqCKq1vn2pXpR\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IBLSApkRegistry.sol\":{\"keccak256\":\"0xc07a5edfd95ab4f16f16a8dc8e76eadf4b0e90fe49db90540d01daaad86898c5\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://52b53266450a53da641e82d8ae3be93c5e09f8342b4ea0cc96bb9038d8406354\",\"dweb:/ipfs/QmVuoiQyqPTLCGnyt8zDaxiyaj4ETdgTGKv4MDHWzqEDjp\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IBLSSignatureChecker.sol\":{\"keccak256\":\"0xee5823a6674e553c71f5e127f08245827eb116d1ad418b5a7f2a9d6985fd95e0\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://94aa26debddca6c0784585340cf891de4c2d7edaa3e5ec7229af9730312a5a51\",\"dweb:/ipfs/QmWbHGbM7eVYTAmrCVaDU8b4YTm9VAN82XgLDR78uHC7vj\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IIndexRegistry.sol\":{\"keccak256\":\"0x83b2d56aacf27e65c4959a832c5de573e013908c044f6e48ea8284ac5282ae2b\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://877af382587e96bb39bcc6db8bb5e4b871db5025c52347d4bee9afeaa4a6cc8d\",\"dweb:/ipfs/QmdnhsQCChzq2o5NgbeT3JxSsEcMm1PC9QW6zenZNPjD9F\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IRegistry.sol\":{\"keccak256\":\"0x51426a17fb7e54bd3720e2890104e97a8559a13ff248b3d6b840916751c143d3\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://01f91289e6100d528cb8b318cb14ff22a0bc52882c9d4db41585e030cc9ddc25\",\"dweb:/ipfs/Qmb22nqGrsrtNovHRwbMCvDHGENuxAgrWu3Db4p7Er2MHY\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IRegistryCoordinator.sol\":{\"keccak256\":\"0xdd8effb082c1d5957d5ff43d7c59497b32866a6d82bcc7d5efa49ea9bc9b3385\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://cb33a2a1446585b13b7a509e880c60d658d2d2522ec48a9f02e30d2cff54002d\",\"dweb:/ipfs/QmVNG8ZPZkXzNEadPdTj1uBYLiZdCnYfsE5iGU6nJcJXiD\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IServiceManager.sol\":{\"keccak256\":\"0x7602cfb4397a114a0ed60e70e8e1d729fdcf406b585838181b3cb3ffa6ac9a9a\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://b718fa016a13a2a5ce298bc5ea7495cc70cf9c358211c75595d5c9dde9a6cc0f\",\"dweb:/ipfs/QmQNrVmU7P7pRqGBJuTQDkjf3wMDY2kJm7zXdtQwsQTbzY\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IServiceManagerUI.sol\":{\"keccak256\":\"0x365761699b4a5b7360ee6c75f12606eefc4b0394754c8b8e1e1eefec0cba7ffb\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://ac14ada180b66cbbc5f9de0d6b4bb87b5946d2a9569ae88f2f62aaca47e879a8\",\"dweb:/ipfs/QmcN9xKYF24naNWc6cYah9suz5gJSYE9nPj9eZFWnP35VX\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IStakeRegistry.sol\":{\"keccak256\":\"0x1b8b4d757c1b804bc4cf6fbbf8bf8f89ebdeb30a31014751fe7d01deb9d513d4\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://984bf2777b898ed187d28997f9783f5c293a1a1848e3e9aa470ce9183d454c97\",\"dweb:/ipfs/Qme3aTpBrkLu8wYHFMZbCfhXHoZ1M6SpXkeC237T9BuU5B\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/libraries/BN254.sol\":{\"keccak256\":\"0xb428c8d0c3b325507a88a61a80115493eb88606ccc19ed64a31e11294ab853b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d7b6fb935bfe0494e6ff970c8f30a86d5f4cf5c3e0967300c28cd383c043acae\",\"dweb:/ipfs/QmUHfFZaVjLPXhkBmcxrZhAHZaSFQDqXtrLGpjGBQBa5Ki\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/libraries/BitmapUtils.sol\":{\"keccak256\":\"0x44315ac460be30a6b18fd4df4d1b8afb46653bf4dc06ca9f93c32353fd0605c5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://da14f2ead3a375b02afd09d4a02edddf7b63a88945746b96789b2473184fdb04\",\"dweb:/ipfs/QmRqcjxa2Vv2MrLdPeAwsktXdWTirapEDsRbJCyYRtKT6g\"]},\"lib/aligned_layer/contracts/src/core/AlignedLayerServiceManager.sol\":{\"keccak256\":\"0x2fa3543fb62b2954207591aa045dfa18d88e8a94d14e6639aec06cf92c30e921\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://86cbef8f4b9c15d59b1593c09efdc738b54a196a6a9acc479823177411b7b724\",\"dweb:/ipfs/QmYAWQsLU9XKRUYYZzwANGF7EQTz1bwwr3WCa8syvRDvRJ\"]},\"lib/aligned_layer/contracts/src/core/AlignedLayerServiceManagerStorage.sol\":{\"keccak256\":\"0xabc512eb0a600c2e6465b0813cc2d1b26edd0225f03d9c1de2f6fe96db531817\",\"urls\":[\"bzz-raw://64c7675966d4d3503e011ed3184ffaebb85128b04e892f81cb47996788ca744d\",\"dweb:/ipfs/QmXqm57dvJCPUGgwMhf6k4sbPa3DUUTY3UVu2UCbHejY68\"]},\"lib/aligned_layer/contracts/src/core/IAlignedLayerServiceManager.sol\":{\"keccak256\":\"0x8d2bfeabfc2cde8b699778f7395c5efe44ded0bc57f0d0ea14cdc18a87d8433b\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://b2f47bfa5a21219889cde76d1bf30800c7765648ab68e1148c268b83362e040b\",\"dweb:/ipfs/QmWADSHQrj5qxMJ3kiksWDVe82w2WMPxgtLYxGnv8kGr9M\"]},\"src/MinaAccountValidation.sol\":{\"keccak256\":\"0xa6b0d0d800c74341814b90bfe81a774ba1ef8aed33e88b55165910a959835385\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://5f9de046b12fc312d4198f11995862080c0422fdc86d9b2d80ce65630dd992bc\",\"dweb:/ipfs/QmSAwmbB5YZ1w7DYzrBhpKxhB2h468H8MgmVq4JEUeKz2q\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.12+commit.f00d7308"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address payable","name":"_alignedServiceAddr","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"error","name":"AccountIsNotVerified"},{"inputs":[{"internalType":"bytes32","name":"proofCommitment","type":"bytes32"},{"internalType":"bytes32","name":"provingSystemAuxDataCommitment","type":"bytes32"},{"internalType":"bytes20","name":"proofGeneratorAddr","type":"bytes20"},{"internalType":"bytes32","name":"batchMerkleRoot","type":"bytes32"},{"internalType":"bytes","name":"merkleProof","type":"bytes"},{"internalType":"uint256","name":"verificationDataBatchIndex","type":"uint256"},{"internalType":"bytes","name":"pubInput","type":"bytes"}],"stateMutability":"view","type":"function","name":"validateAccount","outputs":[{"internalType":"struct MinaAccountValidation.Account","name":"","type":"tuple","components":[{"internalType":"struct MinaAccountValidation.CompressedECPoint","name":"publicKey","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bool","name":"isOdd","type":"bool"}]},{"internalType":"bytes32","name":"tokenIdKeyHash","type":"bytes32"},{"internalType":"string","name":"tokenSymbol","type":"string"},{"internalType":"uint64","name":"balance","type":"uint64"},{"internalType":"uint32","name":"nonce","type":"uint32"},{"internalType":"bytes32","name":"receiptChainHash","type":"bytes32"},{"internalType":"struct MinaAccountValidation.CompressedECPoint","name":"delegate","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bool","name":"isOdd","type":"bool"}]},{"internalType":"bytes32","name":"votingFor","type":"bytes32"},{"internalType":"struct MinaAccountValidation.Timing","name":"timing","type":"tuple","components":[{"internalType":"uint64","name":"initialMinimumBalance","type":"uint64"},{"internalType":"uint32","name":"cliffTime","type":"uint32"},{"internalType":"uint64","name":"cliffAmount","type":"uint64"},{"internalType":"uint32","name":"vestingPeriod","type":"uint32"},{"internalType":"uint64","name":"vestingIncrement","type":"uint64"}]},{"internalType":"struct MinaAccountValidation.Permissions","name":"permissions","type":"tuple","components":[{"internalType":"enum MinaAccountValidation.AuthRequired","name":"editState","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"access","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"send","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"rreceive","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"setDelegate","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"setPermissions","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"setVerificationKeyAuth","type":"uint8"},{"internalType":"uint32","name":"setVerificationKeyUint","type":"uint32"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"setZkappUri","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"editActionState","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"setTokenSymbol","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"incrementNonce","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"setVotingFor","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"setTiming","type":"uint8"}]},{"internalType":"struct MinaAccountValidation.ZkappAccount","name":"zkapp","type":"tuple","components":[{"internalType":"bytes32[8]","name":"appState","type":"bytes32[8]"},{"internalType":"struct MinaAccountValidation.VerificationKey","name":"verificationKey","type":"tuple","components":[{"internalType":"enum MinaAccountValidation.ProofsVerified","name":"maxProofsVerified","type":"uint8"},{"internalType":"enum MinaAccountValidation.ProofsVerified","name":"actualWrapDomainSize","type":"uint8"},{"internalType":"struct MinaAccountValidation.WrapIndex","name":"wrapIndex","type":"tuple","components":[{"internalType":"struct MinaAccountValidation.Commitment[7]","name":"sigmaComm","type":"tuple[7]","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]},{"internalType":"struct MinaAccountValidation.Commitment[15]","name":"coefficientsComm","type":"tuple[15]","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]},{"internalType":"struct MinaAccountValidation.Commitment","name":"genericComm","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]},{"internalType":"struct MinaAccountValidation.Commitment","name":"psmComm","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]},{"internalType":"struct MinaAccountValidation.Commitment","name":"completeAddComm","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]},{"internalType":"struct MinaAccountValidation.Commitment","name":"mulComm","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]},{"internalType":"struct MinaAccountValidation.Commitment","name":"emulComm","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]},{"internalType":"struct MinaAccountValidation.Commitment","name":"endomulScalarComm","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]}]}]},{"internalType":"uint32","name":"zkappVersion","type":"uint32"},{"internalType":"bytes32[5]","name":"actionState","type":"bytes32[5]"},{"internalType":"uint32","name":"lastActionSlot","type":"uint32"},{"internalType":"bool","name":"provedState","type":"bool"},{"internalType":"bytes","name":"zkappUri","type":"bytes"}]}]}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin-upgrades/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/","@openzeppelin/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/","aligned_layer/=lib/aligned_layer/","ds-test/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/ds-test/src/","eigenlayer-contracts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/","eigenlayer-core-contracts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/core/","eigenlayer-core/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/","eigenlayer-middleware/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/","eigenlayer-scripts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/script/","erc4626-tests/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-upgradeable-v4.9.0/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","openzeppelin-contracts-upgradeable-v4.9.0/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-upgradeable-v4.9.0/","openzeppelin-contracts-upgradeable/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts-v4.9.0/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-v4.9.0/","openzeppelin-contracts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/MinaAccountValidation.sol":"MinaAccountValidation"},"evmVersion":"london","libraries":{}},"sources":{"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IAVSDirectory.sol":{"keccak256":"0x3f67ab9b510b02dc3c07014b49785f1e167401bdb39cc10f737bbf545632d938","urls":["bzz-raw://48d1267e2df6c8ac9b8f419269ff3d23be9b62606ee6b6d2278c27ffebfd73aa","dweb:/ipfs/QmaFyywKCm1eotKjF1evryW8BMQJzPDstZm1wMRW79phXG"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IBeaconChainOracle.sol":{"keccak256":"0x0fef07aa6179c77198f1514e12e628aa1c876e04f9c181ec853a322179e5be00","urls":["bzz-raw://51438325876cc2d4c77f58488a7e27b488015d1b663c50be6a5cafbd73b9c983","dweb:/ipfs/QmViCuGoYZzi6wtXA8PPKigqVv3KMuNxEVQ1Td9dGqjL18"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IDelegationManager.sol":{"keccak256":"0xab76a9f4eff865cbb689f627cf98263488765519d7a4ec5ffbcb0ca4972842f9","urls":["bzz-raw://ff57ce18e8350bf39f190645db0988bc0f1279f1872150a114a1b520c38a2914","dweb:/ipfs/QmSsUXkNUqYuJgGRumHTSs9rAaboGjecotcM4xHrdBYWaZ"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IETHPOSDeposit.sol":{"keccak256":"0x2e60e5f4b0da0a0a4e2a07c63141120998559970c21deac743ea0c64a60a880c","urls":["bzz-raw://e635c346bde5b7ade9bcf35bc733081520cb86015be4fbc6e761e6e9482c4c91","dweb:/ipfs/QmRoeazEnbFn5SPSWAkoFK2gSN9DMp3hJAnrLWuL2sKutz"],"license":"CC0-1.0"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IEigenPod.sol":{"keccak256":"0xb50c36ad96b6679bb80fd8331f949cbfbcba0f529026e1421a4d2bae64396eba","urls":["bzz-raw://5719181d780120f1e688c0da276992a8caf185815917f453b3550537c31ed4cc","dweb:/ipfs/QmYprRC5ZEXhz3zAUND5E8Xjn6s5TL8ZF8QbnndVq7aVPR"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IEigenPodManager.sol":{"keccak256":"0xd8a64dbed03d3a5cdbefe1af75968f2dde07f973749c2ef5197bf7187c3e448c","urls":["bzz-raw://27ccc7c1fd9352e9f9b357c9063d255dc0ed9583f43db09f786ac7497d7846b8","dweb:/ipfs/QmeJzuJkE9m2NUNwZSp4tGZEZmih1LeucePup8hzMVDRbG"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IPausable.sol":{"keccak256":"0x98cffc894842947377e24c1d375813a1120dd73a84c29782ab68404e109cb34f","urls":["bzz-raw://b3474f6c350ceaee57cbdfb08fb48835d0c6e81ae8ebfbb9667899584a139324","dweb:/ipfs/QmWELKtksdtWxQbqAccd8yGyhKqrgPZXTADKR7BuT27Zg5"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IPauserRegistry.sol":{"keccak256":"0x9de8dd682bc0d812bbd6583c0231cbf35448d5eff58b74a93efa64cb9a768c49","urls":["bzz-raw://c00d6c675b9c72b092d287fe85fd37782588df32b8eb59ab4c7db7a86be25e7d","dweb:/ipfs/QmeYokY3HhAdbBaCPdHg3PgQEdRCDFEJy3Wf7VtgHBkQSx"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IRewardsCoordinator.sol":{"keccak256":"0xeab6f1140a90eb7f107d95bae1e8b2ecfbfe36282d62c9df69e6a564c2c59771","urls":["bzz-raw://785cd2777cdcab3b827b5eef2a4dae02c56db07252fdcefd8dd1016be034dc71","dweb:/ipfs/QmNyDFchTuMeiVoxNEfQw96JVq7DfkohGz1txKXe7HyNbq"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/ISignatureUtils.sol":{"keccak256":"0x5e52482a31d94401a8502f3014c4aada1142b4450fc0596dff8e1866a85fe092","urls":["bzz-raw://17dc326c9361bc1453379f26545963557b2883b0c88bc07d4477e04dbcc0cc8c","dweb:/ipfs/QmZXT7A816W5JH2ymirE2ETaJttqztFCsEL22AV8oEfCK9"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/ISlasher.sol":{"keccak256":"0x45dfaa2cfdde87f48a6ee38bb6fb739847aef7cf3f6137bdcd8c8a330559ec79","urls":["bzz-raw://1b7f6bd75b42fcaa91ceb7140cb2c41926a1fe6ee2d3161e4fe6186b181ba232","dweb:/ipfs/QmZjbdKiSs33C9i3GDc3sdD39Pz4YPkDoKftowoUF4kHmY"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IStrategy.sol":{"keccak256":"0xc530c6a944b70051fd0dac0222de9a4b5baadeaf94ad194daac6ad8d2ace7420","urls":["bzz-raw://3767df0364ce835b52e786d2851431eb9223fe4747602107505477e162231d73","dweb:/ipfs/QmZkH5bKUygQrJomndNaQqkefVRW4rRefCa8HPJ5HMczxJ"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IStrategyManager.sol":{"keccak256":"0x68bf02a443fc8b2f612eba3d39bfefa5f61f78b549f111cdecec5f2c58236a52","urls":["bzz-raw://76bc6875ce74128b861fdac5fd1c0c72f3cc9bacf67fa4a73721b95fb23959ef","dweb:/ipfs/QmPix4WJmf9fXyMZxfgwXEHBcg7V4NAbRqs4HUf5YrSJcM"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/libraries/BeaconChainProofs.sol":{"keccak256":"0x70d89b05c1c5f47b74a07fbb5a2c05e606fed494e749ea98a9915b7be73df377","urls":["bzz-raw://db1d3bfaee69aef53c8b12b492a17584e6d1ac94610cb8b38aad33e1cdd81af7","dweb:/ipfs/QmfVsMTj1hcf9fMEm5RzvtcBN4dMcAKFBgUUDsNDr5XFpq"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/libraries/Endian.sol":{"keccak256":"0xf3b72653ba2567a978d4612703fa5f71c5fcd015d8dac7818468f22772d90a9d","urls":["bzz-raw://cee9d09370d968138d775c39525db4cd0768d60d17be7685519de12444e7dd2f","dweb:/ipfs/QmUdGh8wpMei3edKiEWA6S96s9dRt4ekZKJ4nau356X8xQ"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/libraries/Merkle.sol":{"keccak256":"0x9095fc29b96d102b10c02d44b3a6fbfa25593ef6ae4a810363ab885b9e6b0f71","urls":["bzz-raw://0945132d482d56278edddb1d32209903c4d3839c87ba4317aadd97dc23610d0f","dweb:/ipfs/QmVuM2aLRHxitx4rPx3GTYTBCVNcjYn6sHBRr1biUjLBP5"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/permissions/Pausable.sol":{"keccak256":"0xce8ee0ab28f2bce9e94aa19fffe55bebef080327632ac98ff3ab14994b369bc0","urls":["bzz-raw://5c7e2be97a8840fa2a0434077a36136553a84efd9bff4b46712ce9fddb813a6a","dweb:/ipfs/QmZKvgPxLAbGo1CqTA4AX6MCDPFLSSNt43ZKWRjvvzFp7S"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x247c62047745915c0af6b955470a72d1696ebad4352d7d3011aef1a2463cd888","urls":["bzz-raw://d7fc8396619de513c96b6e00301b88dd790e83542aab918425633a5f7297a15a","dweb:/ipfs/QmXbP4kiZyp7guuS7xe8KaybnwkRPGrBc2Kbi3vhcTfpxb"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x0203dcadc5737d9ef2c211d6fa15d18ebc3b30dfa51903b64870b01a062b0b4e","urls":["bzz-raw://6eb2fd1e9894dbe778f4b8131adecebe570689e63cf892f4e21257bfe1252497","dweb:/ipfs/QmXgUGNfZvrn6N2miv3nooSs7Jm34A41qz94fu2GtDFcx8"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x611aa3f23e59cfdd1863c536776407b3e33d695152a266fa7cfb34440a29a8a3","urls":["bzz-raw://9b4b2110b7f2b3eb32951bc08046fa90feccffa594e1176cb91cdfb0e94726b4","dweb:/ipfs/QmSxLwYjicf9zWFuieRc8WQwE4FisA1Um5jp1iSa731TGt"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x963ea7f0b48b032eef72fe3a7582edf78408d6f834115b9feadd673a4d5bd149","urls":["bzz-raw://d6520943ea55fdf5f0bafb39ed909f64de17051bc954ff3e88c9e5621412c79c","dweb:/ipfs/QmWZ4rAKTQbNG2HxGs46AcTXShsVytKeLs7CUCdCSv5N7a"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x9750c6b834f7b43000631af5cc30001c5f547b3ceb3635488f140f60e897ea6b","urls":["bzz-raw://5a7d5b1ef5d8d5889ad2ed89d8619c09383b80b72ab226e0fe7bde1636481e34","dweb:/ipfs/QmebXWgtEfumQGBdVeM6c71McLixYXQP5Bk6kKXuoY4Bmr"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/BLSSignatureChecker.sol":{"keccak256":"0x3a5c205c596d3d73c7afa63ffbbfac8204f6d6a26c151ef26b47278981c3c0fe","urls":["bzz-raw://4beb88bf5b7c7e614f0d87b157d7a4b67afbf1cc93f3127622bd66f696799241","dweb:/ipfs/QmWJKb6qsd69bWgpAHX6deCkJqmJdo9oBLQAXJk97gWEE2"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/ServiceManagerBase.sol":{"keccak256":"0x7e32ef76daf32e5eb5a93cecf204223e64243f42afe70c7ca71ad3db3925b9c4","urls":["bzz-raw://19c10aa22f2e86e27e946b65c434e541caa6af06fcdde46c3b5e9b42890bd221","dweb:/ipfs/QmPb5qDRdbJTniKSqsbjVhbtwdb72G9hWPYcHtVvj1zBxg"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/ServiceManagerBaseStorage.sol":{"keccak256":"0xa544114dbf6d973a815f997a2ac9237c531c40b08c91d3a65a23b152ed621e1e","urls":["bzz-raw://4cf69f9be7d3f3c4184b61b267280a829040973633ea9d95e2ec0dbf70f40a2e","dweb:/ipfs/QmT2HeCJWBLX2p4KAWnyU318MMx9USb2brqCKq1vn2pXpR"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IBLSApkRegistry.sol":{"keccak256":"0xc07a5edfd95ab4f16f16a8dc8e76eadf4b0e90fe49db90540d01daaad86898c5","urls":["bzz-raw://52b53266450a53da641e82d8ae3be93c5e09f8342b4ea0cc96bb9038d8406354","dweb:/ipfs/QmVuoiQyqPTLCGnyt8zDaxiyaj4ETdgTGKv4MDHWzqEDjp"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IBLSSignatureChecker.sol":{"keccak256":"0xee5823a6674e553c71f5e127f08245827eb116d1ad418b5a7f2a9d6985fd95e0","urls":["bzz-raw://94aa26debddca6c0784585340cf891de4c2d7edaa3e5ec7229af9730312a5a51","dweb:/ipfs/QmWbHGbM7eVYTAmrCVaDU8b4YTm9VAN82XgLDR78uHC7vj"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IIndexRegistry.sol":{"keccak256":"0x83b2d56aacf27e65c4959a832c5de573e013908c044f6e48ea8284ac5282ae2b","urls":["bzz-raw://877af382587e96bb39bcc6db8bb5e4b871db5025c52347d4bee9afeaa4a6cc8d","dweb:/ipfs/QmdnhsQCChzq2o5NgbeT3JxSsEcMm1PC9QW6zenZNPjD9F"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IRegistry.sol":{"keccak256":"0x51426a17fb7e54bd3720e2890104e97a8559a13ff248b3d6b840916751c143d3","urls":["bzz-raw://01f91289e6100d528cb8b318cb14ff22a0bc52882c9d4db41585e030cc9ddc25","dweb:/ipfs/Qmb22nqGrsrtNovHRwbMCvDHGENuxAgrWu3Db4p7Er2MHY"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IRegistryCoordinator.sol":{"keccak256":"0xdd8effb082c1d5957d5ff43d7c59497b32866a6d82bcc7d5efa49ea9bc9b3385","urls":["bzz-raw://cb33a2a1446585b13b7a509e880c60d658d2d2522ec48a9f02e30d2cff54002d","dweb:/ipfs/QmVNG8ZPZkXzNEadPdTj1uBYLiZdCnYfsE5iGU6nJcJXiD"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IServiceManager.sol":{"keccak256":"0x7602cfb4397a114a0ed60e70e8e1d729fdcf406b585838181b3cb3ffa6ac9a9a","urls":["bzz-raw://b718fa016a13a2a5ce298bc5ea7495cc70cf9c358211c75595d5c9dde9a6cc0f","dweb:/ipfs/QmQNrVmU7P7pRqGBJuTQDkjf3wMDY2kJm7zXdtQwsQTbzY"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IServiceManagerUI.sol":{"keccak256":"0x365761699b4a5b7360ee6c75f12606eefc4b0394754c8b8e1e1eefec0cba7ffb","urls":["bzz-raw://ac14ada180b66cbbc5f9de0d6b4bb87b5946d2a9569ae88f2f62aaca47e879a8","dweb:/ipfs/QmcN9xKYF24naNWc6cYah9suz5gJSYE9nPj9eZFWnP35VX"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IStakeRegistry.sol":{"keccak256":"0x1b8b4d757c1b804bc4cf6fbbf8bf8f89ebdeb30a31014751fe7d01deb9d513d4","urls":["bzz-raw://984bf2777b898ed187d28997f9783f5c293a1a1848e3e9aa470ce9183d454c97","dweb:/ipfs/Qme3aTpBrkLu8wYHFMZbCfhXHoZ1M6SpXkeC237T9BuU5B"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/libraries/BN254.sol":{"keccak256":"0xb428c8d0c3b325507a88a61a80115493eb88606ccc19ed64a31e11294ab853b3","urls":["bzz-raw://d7b6fb935bfe0494e6ff970c8f30a86d5f4cf5c3e0967300c28cd383c043acae","dweb:/ipfs/QmUHfFZaVjLPXhkBmcxrZhAHZaSFQDqXtrLGpjGBQBa5Ki"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/libraries/BitmapUtils.sol":{"keccak256":"0x44315ac460be30a6b18fd4df4d1b8afb46653bf4dc06ca9f93c32353fd0605c5","urls":["bzz-raw://da14f2ead3a375b02afd09d4a02edddf7b63a88945746b96789b2473184fdb04","dweb:/ipfs/QmRqcjxa2Vv2MrLdPeAwsktXdWTirapEDsRbJCyYRtKT6g"],"license":"MIT"},"lib/aligned_layer/contracts/src/core/AlignedLayerServiceManager.sol":{"keccak256":"0x2fa3543fb62b2954207591aa045dfa18d88e8a94d14e6639aec06cf92c30e921","urls":["bzz-raw://86cbef8f4b9c15d59b1593c09efdc738b54a196a6a9acc479823177411b7b724","dweb:/ipfs/QmYAWQsLU9XKRUYYZzwANGF7EQTz1bwwr3WCa8syvRDvRJ"],"license":"UNLICENSED"},"lib/aligned_layer/contracts/src/core/AlignedLayerServiceManagerStorage.sol":{"keccak256":"0xabc512eb0a600c2e6465b0813cc2d1b26edd0225f03d9c1de2f6fe96db531817","urls":["bzz-raw://64c7675966d4d3503e011ed3184ffaebb85128b04e892f81cb47996788ca744d","dweb:/ipfs/QmXqm57dvJCPUGgwMhf6k4sbPa3DUUTY3UVu2UCbHejY68"],"license":null},"lib/aligned_layer/contracts/src/core/IAlignedLayerServiceManager.sol":{"keccak256":"0x8d2bfeabfc2cde8b699778f7395c5efe44ded0bc57f0d0ea14cdc18a87d8433b","urls":["bzz-raw://b2f47bfa5a21219889cde76d1bf30800c7765648ab68e1148c268b83362e040b","dweb:/ipfs/QmWADSHQrj5qxMJ3kiksWDVe82w2WMPxgtLYxGnv8kGr9M"],"license":"UNLICENSED"},"src/MinaAccountValidation.sol":{"keccak256":"0xa6b0d0d800c74341814b90bfe81a774ba1ef8aed33e88b55165910a959835385","urls":["bzz-raw://5f9de046b12fc312d4198f11995862080c0422fdc86d9b2d80ce65630dd992bc","dweb:/ipfs/QmSAwmbB5YZ1w7DYzrBhpKxhB2h468H8MgmVq4JEUeKz2q"],"license":"UNLICENSED"}},"version":1},"id":64} \ No newline at end of file +{"abi":[{"type":"constructor","inputs":[{"name":"_alignedServiceAddr","type":"address","internalType":"address payable"}],"stateMutability":"nonpayable"},{"type":"function","name":"validateAccount","inputs":[{"name":"args","type":"tuple","internalType":"struct MinaAccountValidation.AlignedArgs","components":[{"name":"proofCommitment","type":"bytes32","internalType":"bytes32"},{"name":"provingSystemAuxDataCommitment","type":"bytes32","internalType":"bytes32"},{"name":"proofGeneratorAddr","type":"bytes20","internalType":"bytes20"},{"name":"batchMerkleRoot","type":"bytes32","internalType":"bytes32"},{"name":"merkleProof","type":"bytes","internalType":"bytes"},{"name":"verificationDataBatchIndex","type":"uint256","internalType":"uint256"},{"name":"pubInput","type":"bytes","internalType":"bytes"},{"name":"batcherPaymentServiceAddr","type":"address","internalType":"address"}]}],"outputs":[{"name":"","type":"tuple","internalType":"struct MinaAccountValidation.Account","components":[{"name":"publicKey","type":"tuple","internalType":"struct MinaAccountValidation.CompressedECPoint","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"isOdd","type":"bool","internalType":"bool"}]},{"name":"tokenIdKeyHash","type":"bytes32","internalType":"bytes32"},{"name":"tokenSymbol","type":"string","internalType":"string"},{"name":"balance","type":"uint64","internalType":"uint64"},{"name":"nonce","type":"uint32","internalType":"uint32"},{"name":"receiptChainHash","type":"bytes32","internalType":"bytes32"},{"name":"delegate","type":"tuple","internalType":"struct MinaAccountValidation.CompressedECPoint","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"isOdd","type":"bool","internalType":"bool"}]},{"name":"votingFor","type":"bytes32","internalType":"bytes32"},{"name":"timing","type":"tuple","internalType":"struct MinaAccountValidation.Timing","components":[{"name":"initialMinimumBalance","type":"uint64","internalType":"uint64"},{"name":"cliffTime","type":"uint32","internalType":"uint32"},{"name":"cliffAmount","type":"uint64","internalType":"uint64"},{"name":"vestingPeriod","type":"uint32","internalType":"uint32"},{"name":"vestingIncrement","type":"uint64","internalType":"uint64"}]},{"name":"permissions","type":"tuple","internalType":"struct MinaAccountValidation.Permissions","components":[{"name":"editState","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"access","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"send","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"rreceive","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"setDelegate","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"setPermissions","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"setVerificationKeyAuth","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"setVerificationKeyUint","type":"uint32","internalType":"uint32"},{"name":"setZkappUri","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"editActionState","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"setTokenSymbol","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"incrementNonce","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"setVotingFor","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"},{"name":"setTiming","type":"uint8","internalType":"enum MinaAccountValidation.AuthRequired"}]},{"name":"zkapp","type":"tuple","internalType":"struct MinaAccountValidation.ZkappAccount","components":[{"name":"appState","type":"bytes32[8]","internalType":"bytes32[8]"},{"name":"verificationKey","type":"tuple","internalType":"struct MinaAccountValidation.VerificationKey","components":[{"name":"maxProofsVerified","type":"uint8","internalType":"enum MinaAccountValidation.ProofsVerified"},{"name":"actualWrapDomainSize","type":"uint8","internalType":"enum MinaAccountValidation.ProofsVerified"},{"name":"wrapIndex","type":"tuple","internalType":"struct MinaAccountValidation.WrapIndex","components":[{"name":"sigmaComm","type":"tuple[7]","internalType":"struct MinaAccountValidation.Commitment[7]","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]},{"name":"coefficientsComm","type":"tuple[15]","internalType":"struct MinaAccountValidation.Commitment[15]","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]},{"name":"genericComm","type":"tuple","internalType":"struct MinaAccountValidation.Commitment","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]},{"name":"psmComm","type":"tuple","internalType":"struct MinaAccountValidation.Commitment","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]},{"name":"completeAddComm","type":"tuple","internalType":"struct MinaAccountValidation.Commitment","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]},{"name":"mulComm","type":"tuple","internalType":"struct MinaAccountValidation.Commitment","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]},{"name":"emulComm","type":"tuple","internalType":"struct MinaAccountValidation.Commitment","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]},{"name":"endomulScalarComm","type":"tuple","internalType":"struct MinaAccountValidation.Commitment","components":[{"name":"x","type":"bytes32","internalType":"bytes32"},{"name":"y","type":"bytes32","internalType":"bytes32"}]}]}]},{"name":"zkappVersion","type":"uint32","internalType":"uint32"},{"name":"actionState","type":"bytes32[5]","internalType":"bytes32[5]"},{"name":"lastActionSlot","type":"uint32","internalType":"uint32"},{"name":"provedState","type":"bool","internalType":"bool"},{"name":"zkappUri","type":"bytes","internalType":"bytes"}]}]}],"stateMutability":"view"},{"type":"error","name":"AccountIsNotVerified","inputs":[]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b5060405161142d38038061142d83398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b61139a806100936000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80639029ad1514610030575b600080fd5b61004361003e366004610475565b610059565b6040516100509190610857565b60405180910390f35b6100616101a7565b36600061007160c085018561097f565b61007f9160289082906109cc565b9092509050600061009360c086018661097f565b6040516100a19291906109f6565b604080519182900390912060008054919350916001600160a01b03909116906306045a9190883590859060208b0135906100e19060608d01908d01610a06565b60608c01356100f360808e018e61097f565b8e60a001358f60e001602081019061010b9190610a35565b6040518a63ffffffff1660e01b815260040161012f99989796959493929190610a5e565b602060405180830381865afa15801561014c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101709190610aec565b9050801561018e5761018483850185611244565b9695505050505050565b604051634de35c5f60e11b815260040160405180910390fd5b604080516101a081018252600061016082018181526101808301829052825260208083018290526060838501819052808401839052608080850184905260a08086018590528651808801885285815280850186905260c087015260e086018590528651908101875284815292830184905294820183905281018290529283015261010081019190915261012081016102aa604080516101c0810190915280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526000602082018190526040909101908152602001600081526020016000815260200160008152602001600081526020016000905290565b81526020016102b76102bc565b905290565b6040518060e001604052806102cf610309565b81526020016102dc610328565b8152600060208201526040016102f0610347565b8152600060208201819052604082015260609081015290565b6040518061010001604052806008906020820280368337509192915050565b60408051606081018252600080825260208201529081016102b7610365565b6040518060a001604052806005906020820280368337509192915050565b604051806101000160405280610379610410565b8152602001610386610449565b8152604080518082018252600080825260208083018290528085019290925282518084018452818152808301829052838501528251808401845281815280830182905260608501528251808401845281815280830182905260808501528251808401845281815280830182905260a085015282518084019093528083529082015260c09091015290565b6040518060e001604052806007905b604080518082019091526000808252602082015281526020019060019003908161041f5790505090565b60408051610220810190915260006101e082018181526102008301919091528152600e6020820161041f565b60006020828403121561048757600080fd5b81356001600160401b0381111561049d57600080fd5b820161010081850312156104b057600080fd5b9392505050565b6000815180845260005b818110156104dd576020818501810151868301820152016104c1565b818111156104ef576000602083870101525b50601f01601f19169290920160200192915050565b634e487b7160e01b600052602160045260246000fd5b6005811061052a5761052a610504565b9052565b61053982825161051a565b602081015161054b602084018261051a565b50604081015161055e604084018261051a565b506060810151610571606084018261051a565b506080810151610584608084018261051a565b5060a081015161059760a084018261051a565b5060c08101516105aa60c084018261051a565b5060e08101516105c260e084018263ffffffff169052565b50610100808201516105d68285018261051a565b5050610120808201516105eb8285018261051a565b5050610140808201516106008285018261051a565b5050610160808201516106158285018261051a565b50506101808082015161062a8285018261051a565b50506101a08082015161063f8285018261051a565b50505050565b6003811061052a5761052a610504565b8060005b600f81101561063f5761067784835180518252602090810151910152565b6040939093019260209190910190600101610659565b610698828251610645565b6020808201516106aa82850182610645565b50604082810151805160008684015b60078210156106e9576106d781845180518252602090810151910152565b918501916001919091019084016106b9565b50505091820151916106ff610200860184610655565b9081015180516105c08601526020908101516105e0860152606082015180516106008701528101516106208601526080820151805161064087015281015161066086015260a082015180516106808701528101516106a086015260c082015180516106c08701528101516106e086015260e09091015180516107008601520151610720909301929092525050565b8060005b600581101561063f578151845260209384019390910190600101610791565b80516000906109609084835b60088110156107db5782518252602092830192909101906001016107bc565b50505060208301516107f161010086018261068d565b50604083015163ffffffff16610840850152606083015161081661086086018261078d565b50608083015163ffffffff1661090085015260a0830151151561092085015260c0830151610940850182905261084e828601826104b7565b95945050505050565b6020808252825180518383015201511515604082015260208201516060820152600060408301516103c08060808501526108956103e08501836104b7565b915060608501516108b160a08601826001600160401b03169052565b50608085015163ffffffff811660c08601525060a085015160e085015260c08501516101006108ee81870183805182526020908101511515910152565b60e0870151610140878101919091528188015180516001600160401b039081166101608a0152602082015163ffffffff9081166101808b0152604083015182166101a08b01526060830151166101c08a0152608090910151166101e0880152610120880151925061096361020088018461052e565b870151868503601f1901848801529150610184905083826107b0565b6000808335601e1984360301811261099657600080fd5b8301803591506001600160401b038211156109b057600080fd5b6020019150368190038213156109c557600080fd5b9250929050565b600080858511156109dc57600080fd5b838611156109e957600080fd5b5050820193919092039150565b8183823760009101908152919050565b600060208284031215610a1857600080fd5b81356bffffffffffffffffffffffff19811681146104b057600080fd5b600060208284031215610a4757600080fd5b81356001600160a01b03811681146104b057600080fd5b60006101008b83528a60208401528960408401526bffffffffffffffffffffffff19891660608401528760808401528060a0840152858184015250610120858782850137600083870182015260c0830194909452506001600160a01b039190911660e0820152601f909201601f1916909101019695505050505050565b8015158114610ae957600080fd5b50565b600060208284031215610afe57600080fd5b81516104b081610adb565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715610b4157610b41610b09565b60405290565b6040516101c081016001600160401b0381118282101715610b4157610b41610b09565b604051606081016001600160401b0381118282101715610b4157610b41610b09565b60405161010081016001600160401b0381118282101715610b4157610b41610b09565b60405160e081016001600160401b0381118282101715610b4157610b41610b09565b60405161016081016001600160401b0381118282101715610b4157610b41610b09565b8035610bff81610adb565b919050565b600060408284031215610c1657600080fd5b610c1e610b1f565b9050813581526020820135610c3281610adb565b602082015292915050565b600082601f830112610c4e57600080fd5b81356001600160401b0380821115610c6857610c68610b09565b604051601f8301601f19908116603f01168101908282118183101715610c9057610c90610b09565b81604052838152866020858801011115610ca957600080fd5b836020870160208301376000602085830101528094505050505092915050565b80356001600160401b0381168114610bff57600080fd5b803563ffffffff81168114610bff57600080fd5b600060a08284031215610d0657600080fd5b60405160a081018181106001600160401b0382111715610d2857610d28610b09565b604052905080610d3783610cc9565b8152610d4560208401610ce0565b6020820152610d5660408401610cc9565b6040820152610d6760608401610ce0565b6060820152610d7860808401610cc9565b60808201525092915050565b803560058110610bff57600080fd5b60006101c08284031215610da657600080fd5b610dae610b47565b9050610db982610d84565b8152610dc760208301610d84565b6020820152610dd860408301610d84565b6040820152610de960608301610d84565b6060820152610dfa60808301610d84565b6080820152610e0b60a08301610d84565b60a0820152610e1c60c08301610d84565b60c0820152610e2d60e08301610ce0565b60e0820152610100610e40818401610d84565b90820152610120610e52838201610d84565b90820152610140610e64838201610d84565b90820152610160610e76838201610d84565b90820152610180610e88838201610d84565b908201526101a0610e9a838201610d84565b9082015292915050565b600082601f830112610eb557600080fd5b6040516101008082018281106001600160401b0382111715610ed957610ed9610b09565b60405283018185821115610eec57600080fd5b845b82811015610f06578035825260209182019101610eee565b509195945050505050565b803560038110610bff57600080fd5b600060408284031215610f3257600080fd5b610f3a610b1f565b9050813581526020820135602082015292915050565b600082601f830112610f6157600080fd5b6040805160e081018181106001600160401b0382111715610f8457610f84610b09565b8252806101c0850186811115610f9957600080fd5b855b81811015610fbc57610fad8882610f20565b83526020909201918401610f9b565b50919695505050505050565b600082601f830112610fd957600080fd5b604080516101e081018181106001600160401b0382111715610ffd57610ffd610b09565b8252806103c085018681111561101257600080fd5b855b81811015610fbc576110268882610f20565b83526020909201918401611014565b600081830361074081121561104957600080fd5b611051610b6a565b915061105c83610f11565b825261106a60208401610f11565b602083015261070080603f198301121561108357600080fd5b61108b610b8c565b915061109a8560408601610f50565b82526110aa856102008601610fc8565b60208301526110bd856105c08601610f20565b60408301526110d0856106008601610f20565b60608301526110e3856106408601610f20565b60808301526110f6856106808601610f20565b60a0830152611109856106c08601610f20565b60c083015261111a85828601610f20565b60e083015250604082015292915050565b600082601f83011261113c57600080fd5b60405160a081018181106001600160401b038211171561115e5761115e610b09565b6040528060a084018581111561117357600080fd5b845b81811015610f06578035835260209283019201611175565b600061096082840312156111a057600080fd5b6111a8610baf565b90506111b48383610ea4565b81526111c4836101008401611035565b60208201526111d66108408301610ce0565b60408201526111e983610860840161112b565b60608201526111fb6109008301610ce0565b608082015261120d6109208301610bf4565b60a08201526109408201356001600160401b0381111561122c57600080fd5b61123884828501610c3d565b60c08301525092915050565b60006020828403121561125657600080fd5b81356001600160401b038082111561126d57600080fd5b908301906103c0828603121561128257600080fd5b61128a610bd1565b6112948684610c04565b8152604083013560208201526060830135828111156112b257600080fd5b6112be87828601610c3d565b6040830152506112d060808401610cc9565b60608201526112e160a08401610ce0565b608082015260c083013560a08201526112fd8660e08501610c04565b60c08201526101208084013560e083015261014061131d88828701610cf4565b610100840152611331886101e08701610d93565b828401526103a085013591508382111561134a57600080fd5b6113568883870161118d565b90830152509594505050505056fea2646970667358221220a143d738674c8ad3fa3f41442c0f065979faa50e96bbfcee54cd25b15ec02d0564736f6c634300080c0033","sourceMap":"171:3439:39:-:0;;;639:123;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;698:7;:57;;-1:-1:-1;;;;;;698:57:39;-1:-1:-1;;;;;698:57:39;;;;;;;;;;171:3439;;14:298:40;92:6;145:2;133:9;124:7;120:23;116:32;113:52;;;161:1;158;151:12;113:52;187:16;;-1:-1:-1;;;;;232:31:40;;222:42;;212:70;;278:1;275;268:12;212:70;301:5;14:298;-1:-1:-1;;;14:298:40:o;:::-;171:3439:39;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c80639029ad1514610030575b600080fd5b61004361003e366004610475565b610059565b6040516100509190610857565b60405180910390f35b6100616101a7565b36600061007160c085018561097f565b61007f9160289082906109cc565b9092509050600061009360c086018661097f565b6040516100a19291906109f6565b604080519182900390912060008054919350916001600160a01b03909116906306045a9190883590859060208b0135906100e19060608d01908d01610a06565b60608c01356100f360808e018e61097f565b8e60a001358f60e001602081019061010b9190610a35565b6040518a63ffffffff1660e01b815260040161012f99989796959493929190610a5e565b602060405180830381865afa15801561014c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101709190610aec565b9050801561018e5761018483850185611244565b9695505050505050565b604051634de35c5f60e11b815260040160405180910390fd5b604080516101a081018252600061016082018181526101808301829052825260208083018290526060838501819052808401839052608080850184905260a08086018590528651808801885285815280850186905260c087015260e086018590528651908101875284815292830184905294820183905281018290529283015261010081019190915261012081016102aa604080516101c0810190915280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526000602082018190526040909101908152602001600081526020016000815260200160008152602001600081526020016000905290565b81526020016102b76102bc565b905290565b6040518060e001604052806102cf610309565b81526020016102dc610328565b8152600060208201526040016102f0610347565b8152600060208201819052604082015260609081015290565b6040518061010001604052806008906020820280368337509192915050565b60408051606081018252600080825260208201529081016102b7610365565b6040518060a001604052806005906020820280368337509192915050565b604051806101000160405280610379610410565b8152602001610386610449565b8152604080518082018252600080825260208083018290528085019290925282518084018452818152808301829052838501528251808401845281815280830182905260608501528251808401845281815280830182905260808501528251808401845281815280830182905260a085015282518084019093528083529082015260c09091015290565b6040518060e001604052806007905b604080518082019091526000808252602082015281526020019060019003908161041f5790505090565b60408051610220810190915260006101e082018181526102008301919091528152600e6020820161041f565b60006020828403121561048757600080fd5b81356001600160401b0381111561049d57600080fd5b820161010081850312156104b057600080fd5b9392505050565b6000815180845260005b818110156104dd576020818501810151868301820152016104c1565b818111156104ef576000602083870101525b50601f01601f19169290920160200192915050565b634e487b7160e01b600052602160045260246000fd5b6005811061052a5761052a610504565b9052565b61053982825161051a565b602081015161054b602084018261051a565b50604081015161055e604084018261051a565b506060810151610571606084018261051a565b506080810151610584608084018261051a565b5060a081015161059760a084018261051a565b5060c08101516105aa60c084018261051a565b5060e08101516105c260e084018263ffffffff169052565b50610100808201516105d68285018261051a565b5050610120808201516105eb8285018261051a565b5050610140808201516106008285018261051a565b5050610160808201516106158285018261051a565b50506101808082015161062a8285018261051a565b50506101a08082015161063f8285018261051a565b50505050565b6003811061052a5761052a610504565b8060005b600f81101561063f5761067784835180518252602090810151910152565b6040939093019260209190910190600101610659565b610698828251610645565b6020808201516106aa82850182610645565b50604082810151805160008684015b60078210156106e9576106d781845180518252602090810151910152565b918501916001919091019084016106b9565b50505091820151916106ff610200860184610655565b9081015180516105c08601526020908101516105e0860152606082015180516106008701528101516106208601526080820151805161064087015281015161066086015260a082015180516106808701528101516106a086015260c082015180516106c08701528101516106e086015260e09091015180516107008601520151610720909301929092525050565b8060005b600581101561063f578151845260209384019390910190600101610791565b80516000906109609084835b60088110156107db5782518252602092830192909101906001016107bc565b50505060208301516107f161010086018261068d565b50604083015163ffffffff16610840850152606083015161081661086086018261078d565b50608083015163ffffffff1661090085015260a0830151151561092085015260c0830151610940850182905261084e828601826104b7565b95945050505050565b6020808252825180518383015201511515604082015260208201516060820152600060408301516103c08060808501526108956103e08501836104b7565b915060608501516108b160a08601826001600160401b03169052565b50608085015163ffffffff811660c08601525060a085015160e085015260c08501516101006108ee81870183805182526020908101511515910152565b60e0870151610140878101919091528188015180516001600160401b039081166101608a0152602082015163ffffffff9081166101808b0152604083015182166101a08b01526060830151166101c08a0152608090910151166101e0880152610120880151925061096361020088018461052e565b870151868503601f1901848801529150610184905083826107b0565b6000808335601e1984360301811261099657600080fd5b8301803591506001600160401b038211156109b057600080fd5b6020019150368190038213156109c557600080fd5b9250929050565b600080858511156109dc57600080fd5b838611156109e957600080fd5b5050820193919092039150565b8183823760009101908152919050565b600060208284031215610a1857600080fd5b81356bffffffffffffffffffffffff19811681146104b057600080fd5b600060208284031215610a4757600080fd5b81356001600160a01b03811681146104b057600080fd5b60006101008b83528a60208401528960408401526bffffffffffffffffffffffff19891660608401528760808401528060a0840152858184015250610120858782850137600083870182015260c0830194909452506001600160a01b039190911660e0820152601f909201601f1916909101019695505050505050565b8015158114610ae957600080fd5b50565b600060208284031215610afe57600080fd5b81516104b081610adb565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715610b4157610b41610b09565b60405290565b6040516101c081016001600160401b0381118282101715610b4157610b41610b09565b604051606081016001600160401b0381118282101715610b4157610b41610b09565b60405161010081016001600160401b0381118282101715610b4157610b41610b09565b60405160e081016001600160401b0381118282101715610b4157610b41610b09565b60405161016081016001600160401b0381118282101715610b4157610b41610b09565b8035610bff81610adb565b919050565b600060408284031215610c1657600080fd5b610c1e610b1f565b9050813581526020820135610c3281610adb565b602082015292915050565b600082601f830112610c4e57600080fd5b81356001600160401b0380821115610c6857610c68610b09565b604051601f8301601f19908116603f01168101908282118183101715610c9057610c90610b09565b81604052838152866020858801011115610ca957600080fd5b836020870160208301376000602085830101528094505050505092915050565b80356001600160401b0381168114610bff57600080fd5b803563ffffffff81168114610bff57600080fd5b600060a08284031215610d0657600080fd5b60405160a081018181106001600160401b0382111715610d2857610d28610b09565b604052905080610d3783610cc9565b8152610d4560208401610ce0565b6020820152610d5660408401610cc9565b6040820152610d6760608401610ce0565b6060820152610d7860808401610cc9565b60808201525092915050565b803560058110610bff57600080fd5b60006101c08284031215610da657600080fd5b610dae610b47565b9050610db982610d84565b8152610dc760208301610d84565b6020820152610dd860408301610d84565b6040820152610de960608301610d84565b6060820152610dfa60808301610d84565b6080820152610e0b60a08301610d84565b60a0820152610e1c60c08301610d84565b60c0820152610e2d60e08301610ce0565b60e0820152610100610e40818401610d84565b90820152610120610e52838201610d84565b90820152610140610e64838201610d84565b90820152610160610e76838201610d84565b90820152610180610e88838201610d84565b908201526101a0610e9a838201610d84565b9082015292915050565b600082601f830112610eb557600080fd5b6040516101008082018281106001600160401b0382111715610ed957610ed9610b09565b60405283018185821115610eec57600080fd5b845b82811015610f06578035825260209182019101610eee565b509195945050505050565b803560038110610bff57600080fd5b600060408284031215610f3257600080fd5b610f3a610b1f565b9050813581526020820135602082015292915050565b600082601f830112610f6157600080fd5b6040805160e081018181106001600160401b0382111715610f8457610f84610b09565b8252806101c0850186811115610f9957600080fd5b855b81811015610fbc57610fad8882610f20565b83526020909201918401610f9b565b50919695505050505050565b600082601f830112610fd957600080fd5b604080516101e081018181106001600160401b0382111715610ffd57610ffd610b09565b8252806103c085018681111561101257600080fd5b855b81811015610fbc576110268882610f20565b83526020909201918401611014565b600081830361074081121561104957600080fd5b611051610b6a565b915061105c83610f11565b825261106a60208401610f11565b602083015261070080603f198301121561108357600080fd5b61108b610b8c565b915061109a8560408601610f50565b82526110aa856102008601610fc8565b60208301526110bd856105c08601610f20565b60408301526110d0856106008601610f20565b60608301526110e3856106408601610f20565b60808301526110f6856106808601610f20565b60a0830152611109856106c08601610f20565b60c083015261111a85828601610f20565b60e083015250604082015292915050565b600082601f83011261113c57600080fd5b60405160a081018181106001600160401b038211171561115e5761115e610b09565b6040528060a084018581111561117357600080fd5b845b81811015610f06578035835260209283019201611175565b600061096082840312156111a057600080fd5b6111a8610baf565b90506111b48383610ea4565b81526111c4836101008401611035565b60208201526111d66108408301610ce0565b60408201526111e983610860840161112b565b60608201526111fb6109008301610ce0565b608082015261120d6109208301610bf4565b60a08201526109408201356001600160401b0381111561122c57600080fd5b61123884828501610c3d565b60c08301525092915050565b60006020828403121561125657600080fd5b81356001600160401b038082111561126d57600080fd5b908301906103c0828603121561128257600080fd5b61128a610bd1565b6112948684610c04565b8152604083013560208201526060830135828111156112b257600080fd5b6112be87828601610c3d565b6040830152506112d060808401610cc9565b60608201526112e160a08401610ce0565b608082015260c083013560a08201526112fd8660e08501610c04565b60c08201526101208084013560e083015261014061131d88828701610cf4565b610100840152611331886101e08701610d93565b828401526103a085013591508382111561134a57600080fd5b6113568883870161118d565b90830152509594505050505056fea2646970667358221220a143d738674c8ad3fa3f41442c0f065979faa50e96bbfcee54cd25b15ec02d0564736f6c634300080c0033","sourceMap":"171:3439:39:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;768:767;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;843:14;;:::i;:::-;869:29;;901:13;;;;:4;:13;:::i;:::-;:22;;915:6;;901:22;;;:::i;:::-;869:54;;-1:-1:-1;869:54:39;-1:-1:-1;934:26:39;973:13;;;;:4;:13;:::i;:::-;963:24;;;;;;;:::i;:::-;;;;;;;;;;;998:22;1023:7;;963:24;;-1:-1:-1;998:22:39;-1:-1:-1;;;;;1023:7:39;;;;:28;;1065:20;;;963:24;;1131:35;;;;;1180:23;;;;;;;;;:::i;:::-;1217:20;;;;1251:16;;;;1217:4;1251:16;:::i;:::-;1281:4;:31;;;1326:4;:30;;;;;;;;;;:::i;:::-;1023:343;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;998:368;;1381:17;1377:152;;;1421:37;;;;1432:14;1421:37;:::i;:::-;1414:44;768:767;-1:-1:-1;;;;;;768:767:39:o;1377:152::-;1496:22;;-1:-1:-1;;;1496:22:39;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:391:40;104:6;157:2;145:9;136:7;132:23;128:32;125:52;;;173:1;170;163:12;125:52;213:9;200:23;-1:-1:-1;;;;;238:6:40;235:30;232:50;;;278:1;275;268:12;232:50;301:22;;357:3;339:16;;;335:26;332:46;;;374:1;371;364:12;332:46;397:2;14:391;-1:-1:-1;;;14:391:40:o;685:472::-;727:3;765:5;759:12;792:6;787:3;780:19;817:1;827:162;841:6;838:1;835:13;827:162;;;903:4;959:13;;;955:22;;949:29;931:11;;;927:20;;920:59;856:12;827:162;;;1007:6;1004:1;1001:13;998:87;;;1073:1;1066:4;1057:6;1052:3;1048:16;1044:27;1037:38;998:87;-1:-1:-1;1139:2:40;1118:15;-1:-1:-1;;1114:29:40;1105:39;;;;1146:4;1101:50;;685:472;-1:-1:-1;;685:472:40:o;1840:127::-;1901:10;1896:3;1892:20;1889:1;1882:31;1932:4;1929:1;1922:15;1956:4;1953:1;1946:15;1972:143;2056:1;2049:5;2046:12;2036:46;;2062:18;;:::i;:::-;2091;;1972:143::o;2120:1834::-;2185:47;2228:3;2220:5;2214:12;2185:47;:::i;:::-;2278:4;2271:5;2267:16;2261:23;2293:58;2345:4;2340:3;2336:14;2322:12;2293:58;:::i;:::-;;2399:4;2392:5;2388:16;2382:23;2414:60;2468:4;2463:3;2459:14;2443;2414:60;:::i;:::-;;2522:4;2515:5;2511:16;2505:23;2537:60;2591:4;2586:3;2582:14;2566;2537:60;:::i;:::-;;2645:4;2638:5;2634:16;2628:23;2660:60;2714:4;2709:3;2705:14;2689;2660:60;:::i;:::-;;2768:4;2761:5;2757:16;2751:23;2783:60;2837:4;2832:3;2828:14;2812;2783:60;:::i;:::-;;2891:4;2884:5;2880:16;2874:23;2906:60;2960:4;2955:3;2951:14;2935;2906:60;:::i;:::-;;3014:4;3007:5;3003:16;2997:23;3029:49;3072:4;3067:3;3063:14;3047;1345:10;1334:22;1322:35;;1269:94;3029:49;;3097:6;3151:2;3144:5;3140:14;3134:21;3164:58;3218:2;3213:3;3209:12;3193:14;3164:58;:::i;:::-;;;3241:6;3295:2;3288:5;3284:14;3278:21;3308:58;3362:2;3357:3;3353:12;3337:14;3308:58;:::i;:::-;;;3385:6;3439:2;3432:5;3428:14;3422:21;3452:58;3506:2;3501:3;3497:12;3481:14;3452:58;:::i;:::-;;;3529:6;3584:2;3577:5;3573:14;3567:21;3597:59;3652:2;3647:3;3643:12;3626:15;3597:59;:::i;:::-;;;3675:6;3730:2;3723:5;3719:14;3713:21;3743:59;3798:2;3793:3;3789:12;3772:15;3743:59;:::i;:::-;;;3821:6;3876:2;3869:5;3865:14;3859:21;3889:59;3944:2;3939:3;3935:12;3918:15;3889:59;:::i;:::-;;;2120:1834;;:::o;3959:145::-;4045:1;4038:5;4035:12;4025:46;;4051:18;;:::i;4265:335::-;4368:5;4391:1;4401:193;4415:4;4412:1;4409:11;4401:193;;;4462:48;4506:3;4497:6;4491:13;4185:12;;4173:25;;4247:4;4236:16;;;4230:23;4214:14;;4207:47;4109:151;4462:48;4539:4;4530:14;;;;;4579:4;4567:17;;;;;4435:1;4428:9;4401:193;;4605:1627;4674:49;4719:3;4711:5;4705:12;4674:49;:::i;:::-;4742:4;4792:2;4785:5;4781:14;4775:21;4805:58;4859:2;4854:3;4850:12;4836;4805:58;:::i;:::-;-1:-1:-1;4882:4:40;4923:14;;;4917:21;4988;;5096:1;4957:12;;;5106:195;5120:4;5117:1;5114:11;5106:195;;;5167:50;5211:5;5202:6;5196:13;4185:12;;4173:25;;4247:4;4236:16;;;4230:23;4214:14;;4207:47;4109:151;5167:50;5276:15;;;;5140:1;5133:9;;;;;5239:14;;5106:195;;;-1:-1:-1;;;5338:23:40;;;5332:30;;5371:65;5431:3;5422:13;;5332:30;5371:65;:::i;:::-;5473:23;;;5467:30;4185:12;;5560:4;5551:14;;4173:25;4247:4;4236:16;;;4230:23;4214:14;;;4207:47;5623:4;5603:25;;5597:32;4185:12;;5692:4;5683:14;;4173:25;4236:16;;4230:23;4214:14;;;4207:47;5755:4;5735:25;;5729:32;4185:12;;5824:4;5815:14;;4173:25;4236:16;;4230:23;4214:14;;;4207:47;5887:4;5867:25;;5861:32;4185:12;;5956:4;5947:14;;4173:25;4236:16;;4230:23;4214:14;;;4207:47;6019:4;5999:25;;5993:32;4185:12;;6088:4;6079:14;;4173:25;4236:16;;4230:23;4214:14;;;4207:47;6151:4;6131:25;;;6125:32;4185:12;;6220:4;6211:14;;4173:25;4236:16;4230:23;4214:14;;;;4207:47;;;;-1:-1:-1;;4605:1627:40:o;6237:326::-;6330:5;6353:1;6363:194;6377:4;6374:1;6371:11;6363:194;;;6436:13;;6424:26;;6473:4;6497:12;;;;6532:15;;;;6397:1;6390:9;6363:194;;6568:1166;6676:12;;6623:3;;6651:6;;6710:3;6623;6787:200;6801:4;6798:1;6795:11;6787:200;;;6862:13;;6848:28;;6899:4;6962:15;;;;6925:14;;;;6821:1;6814:9;6787:200;;;6791:3;;;7033:4;7026:5;7022:16;7016:23;7048:65;7105:6;7100:3;7096:16;7082:12;7048:65;:::i;:::-;-1:-1:-1;7161:4:40;7150:16;;7144:23;1345:10;1334:22;7219:6;7210:16;;1322:35;7275:4;7264:16;;7258:23;7290:58;7340:6;7331:16;;7258:23;7290:58;:::i;:::-;-1:-1:-1;7396:4:40;7385:16;;7379:23;1345:10;1334:22;7454:6;7445:16;;1322:35;7510:4;7499:16;;7493:23;480:13;473:21;7566:6;7557:16;;461:34;7622:4;7611:16;;7605:23;7653:6;7644:16;;7637:28;;;7681:47;7715:12;;;7605:23;7681:47;:::i;:::-;7674:54;6568:1166;-1:-1:-1;;;;;6568:1166:40:o;7739:1524::-;7918:2;7900:21;;;7966:13;;589:12;;7981:18;;;577:25;654:16;648:23;641:31;634:39;618:14;;;611:63;8054:2;8046:6;8042:15;8036:22;8031:2;8020:9;8016:18;8009:50;7881:4;8106;8098:6;8094:17;8088:24;8131:6;8174:2;8168:3;8157:9;8153:19;8146:31;8200:52;8247:3;8236:9;8232:19;8218:12;8200:52;:::i;:::-;8186:66;;8301:2;8293:6;8289:15;8283:22;8314:54;8363:3;8352:9;8348:19;8332:14;-1:-1:-1;;;;;1227:30:40;1215:43;;1162:102;8314:54;-1:-1:-1;8417:3:40;8405:16;;8399:23;1345:10;1334:22;;8480:3;8465:19;;1322:35;8431:54;8540:3;8532:6;8528:16;8522:23;8516:3;8505:9;8501:19;8494:52;8595:3;8587:6;8583:16;8577:23;8619:3;8631:71;8698:2;8687:9;8683:18;8667:14;589:12;;577:25;;665:4;654:16;;;648:23;641:31;634:39;618:14;;611:63;506:174;8631:71;8739:3;8727:16;;8721:23;8763:3;8782:18;;;8775:30;;;;8842:15;;;8836:22;1481:12;;-1:-1:-1;;;;;1477:21:40;;;8923:3;8908:19;;1465:34;1545:4;1534:16;;1528:23;1570:10;1612:21;;;1596:14;;;1589:45;1687:4;1676:16;;1670:23;1666:32;;1650:14;;;1643:56;1752:4;1741:16;;1735:23;1731:32;1715:14;;;1708:56;1817:4;1806:16;;;1800:23;1796:32;1780:14;;;1773:56;8977:6;8965:19;;8959:26;;-1:-1:-1;8994:66:40;9055:3;9040:19;;8959:26;8994:66;:::i;:::-;9097:15;;9091:22;9153;;;-1:-1:-1;;9149:36:40;9129:18;;;9122:64;9091:22;-1:-1:-1;9203:54:40;;-1:-1:-1;9157:6:40;9091:22;9203:54;:::i;9268:521::-;9345:4;9351:6;9411:11;9398:25;9505:2;9501:7;9490:8;9474:14;9470:29;9466:43;9446:18;9442:68;9432:96;;9524:1;9521;9514:12;9432:96;9551:33;;9603:20;;;-1:-1:-1;;;;;;9635:30:40;;9632:50;;;9678:1;9675;9668:12;9632:50;9711:4;9699:17;;-1:-1:-1;9742:14:40;9738:27;;;9728:38;;9725:58;;;9779:1;9776;9769:12;9725:58;9268:521;;;;;:::o;9794:331::-;9899:9;9910;9952:8;9940:10;9937:24;9934:44;;;9974:1;9971;9964:12;9934:44;10003:6;9993:8;9990:20;9987:40;;;10023:1;10020;10013:12;9987:40;-1:-1:-1;;10049:23:40;;;10094:25;;;;;-1:-1:-1;9794:331:40:o;10130:271::-;10313:6;10305;10300:3;10287:33;10269:3;10339:16;;10364:13;;;10339:16;10130:271;-1:-1:-1;10130:271:40:o;10406:298::-;10465:6;10518:2;10506:9;10497:7;10493:23;10489:32;10486:52;;;10534:1;10531;10524:12;10486:52;10560:23;;-1:-1:-1;;10612:43:40;;10602:54;;10592:82;;10670:1;10667;10660:12;10709:286;10768:6;10821:2;10809:9;10800:7;10796:23;10792:32;10789:52;;;10837:1;10834;10827:12;10789:52;10863:23;;-1:-1:-1;;;;;10915:31:40;;10905:42;;10895:70;;10961:1;10958;10951:12;11000:997;11316:4;11345:3;11375:6;11364:9;11357:25;11418:6;11413:2;11402:9;11398:18;11391:34;11461:6;11456:2;11445:9;11441:18;11434:34;11520:26;11516:31;11508:6;11504:44;11499:2;11488:9;11484:18;11477:72;11586:6;11580:3;11569:9;11565:19;11558:35;11630:2;11624:3;11613:9;11609:19;11602:31;11669:6;11664:2;11653:9;11649:18;11642:34;;11695:3;11748:6;11740;11735:2;11724:9;11720:18;11707:48;11804:1;11775:22;;;11771:31;;11764:42;11908:3;11893:19;;11886:35;;;;-1:-1:-1;;;;;;11958:32:40;;;;11952:3;11937:19;;11930:61;11867:2;11846:15;;;-1:-1:-1;;11842:29:40;11827:45;;;11823:54;;11000:997;-1:-1:-1;;;;;;11000:997:40:o;12002:118::-;12088:5;12081:13;12074:21;12067:5;12064:32;12054:60;;12110:1;12107;12100:12;12054:60;12002:118;:::o;12125:245::-;12192:6;12245:2;12233:9;12224:7;12220:23;12216:32;12213:52;;;12261:1;12258;12251:12;12213:52;12293:9;12287:16;12312:28;12334:5;12312:28;:::i;12375:127::-;12436:10;12431:3;12427:20;12424:1;12417:31;12467:4;12464:1;12457:15;12491:4;12488:1;12481:15;12507:257;12579:4;12573:11;;;12611:17;;-1:-1:-1;;;;;12643:34:40;;12679:22;;;12640:62;12637:88;;;12705:18;;:::i;:::-;12741:4;12734:24;12507:257;:::o;12769:250::-;12836:2;12830:9;12878:6;12866:19;;-1:-1:-1;;;;;12900:34:40;;12936:22;;;12897:62;12894:88;;;12962:18;;:::i;13024:253::-;13096:2;13090:9;13138:4;13126:17;;-1:-1:-1;;;;;13158:34:40;;13194:22;;;13155:62;13152:88;;;13220:18;;:::i;13282:255::-;13354:2;13348:9;13396:6;13384:19;;-1:-1:-1;;;;;13418:34:40;;13454:22;;;13415:62;13412:88;;;13480:18;;:::i;13542:253::-;13614:2;13608:9;13656:4;13644:17;;-1:-1:-1;;;;;13676:34:40;;13712:22;;;13673:62;13670:88;;;13738:18;;:::i;13800:255::-;13872:2;13866:9;13914:6;13902:19;;-1:-1:-1;;;;;13936:34:40;;13972:22;;;13933:62;13930:88;;;13998:18;;:::i;14060:128::-;14125:20;;14154:28;14125:20;14154:28;:::i;:::-;14060:128;;;:::o;14193:362::-;14257:5;14305:4;14293:9;14288:3;14284:19;14280:30;14277:50;;;14323:1;14320;14313:12;14277:50;14345:22;;:::i;:::-;14336:31;;14403:9;14390:23;14383:5;14376:38;14466:2;14455:9;14451:18;14438:32;14479:30;14501:7;14479:30;:::i;:::-;14536:2;14525:14;;14518:31;14529:5;14193:362;-1:-1:-1;;14193:362:40:o;14560:719::-;14603:5;14656:3;14649:4;14641:6;14637:17;14633:27;14623:55;;14674:1;14671;14664:12;14623:55;14710:6;14697:20;-1:-1:-1;;;;;14773:2:40;14769;14766:10;14763:36;;;14779:18;;:::i;:::-;14854:2;14848:9;14822:2;14908:13;;-1:-1:-1;;14904:22:40;;;14928:2;14900:31;14896:40;14884:53;;;14952:18;;;14972:22;;;14949:46;14946:72;;;14998:18;;:::i;:::-;15038:10;15034:2;15027:22;15073:2;15065:6;15058:18;15119:3;15112:4;15107:2;15099:6;15095:15;15091:26;15088:35;15085:55;;;15136:1;15133;15126:12;15085:55;15200:2;15193:4;15185:6;15181:17;15174:4;15166:6;15162:17;15149:54;15247:1;15240:4;15235:2;15227:6;15223:15;15219:26;15212:37;15267:6;15258:15;;;;;;14560:719;;;;:::o;15284:171::-;15351:20;;-1:-1:-1;;;;;15400:30:40;;15390:41;;15380:69;;15445:1;15442;15435:12;15460:163;15527:20;;15587:10;15576:22;;15566:33;;15556:61;;15613:1;15610;15603:12;15628:696;15681:5;15729:4;15717:9;15712:3;15708:19;15704:30;15701:50;;;15747:1;15744;15737:12;15701:50;15780:2;15774:9;15822:4;15814:6;15810:17;15893:6;15881:10;15878:22;-1:-1:-1;;;;;15845:10:40;15842:34;15839:62;15836:88;;;15904:18;;:::i;:::-;15940:2;15933:22;15973:6;-1:-1:-1;15973:6:40;16003:28;16021:9;16003:28;:::i;:::-;15995:6;15988:44;16065:37;16098:2;16087:9;16083:18;16065:37;:::i;:::-;16060:2;16052:6;16048:15;16041:62;16136:37;16169:2;16158:9;16154:18;16136:37;:::i;:::-;16131:2;16123:6;16119:15;16112:62;16207:37;16240:2;16229:9;16225:18;16207:37;:::i;:::-;16202:2;16194:6;16190:15;16183:62;16279:38;16312:3;16301:9;16297:19;16279:38;:::i;:::-;16273:3;16265:6;16261:16;16254:64;;15628:696;;;;:::o;16329:153::-;16407:20;;16456:1;16446:12;;16436:40;;16472:1;16469;16462:12;16487:1416;16545:5;16593:6;16581:9;16576:3;16572:19;16568:32;16565:52;;;16613:1;16610;16603:12;16565:52;16635:17;;:::i;:::-;16626:26;;16675:39;16704:9;16675:39;:::i;:::-;16668:5;16661:54;16747:48;16791:2;16780:9;16776:18;16747:48;:::i;:::-;16742:2;16735:5;16731:14;16724:72;16828:48;16872:2;16861:9;16857:18;16828:48;:::i;:::-;16823:2;16816:5;16812:14;16805:72;16909:48;16953:2;16942:9;16938:18;16909:48;:::i;:::-;16904:2;16897:5;16893:14;16886:72;16991:49;17035:3;17024:9;17020:19;16991:49;:::i;:::-;16985:3;16978:5;16974:15;16967:74;17074:49;17118:3;17107:9;17103:19;17074:49;:::i;:::-;17068:3;17061:5;17057:15;17050:74;17157:49;17201:3;17190:9;17186:19;17157:49;:::i;:::-;17151:3;17144:5;17140:15;17133:74;17240:38;17273:3;17262:9;17258:19;17240:38;:::i;:::-;17234:3;17227:5;17223:15;17216:63;17298:3;17333:48;17377:2;17366:9;17362:18;17333:48;:::i;:::-;17317:14;;;17310:72;17401:3;17436:48;17465:18;;;17436:48;:::i;:::-;17420:14;;;17413:72;17504:3;17539:48;17568:18;;;17539:48;:::i;:::-;17523:14;;;17516:72;17607:3;17642:48;17671:18;;;17642:48;:::i;:::-;17626:14;;;17619:72;17710:3;17745:48;17774:18;;;17745:48;:::i;:::-;17729:14;;;17722:72;17813:3;17848:48;17877:18;;;17848:48;:::i;:::-;17832:14;;;17825:72;17836:5;16487:1416;-1:-1:-1;;16487:1416:40:o;17908:668::-;17958:5;18011:3;18004:4;17996:6;17992:17;17988:27;17978:55;;18029:1;18026;18019:12;17978:55;18062:2;18056:9;18084:3;18126:2;18118:6;18114:15;18195:6;18183:10;18180:22;-1:-1:-1;;;;;18147:10:40;18144:34;18141:62;18138:88;;;18206:18;;:::i;:::-;18242:2;18235:22;18306:15;;18277:6;18333:15;;;18330:35;;;18361:1;18358;18351:12;18330:35;18385:6;18400:146;18416:6;18411:3;18408:15;18400:146;;;18484:17;;18472:30;;18531:4;18522:14;;;;18433;18400:146;;;-1:-1:-1;18564:6:40;;17908:668;-1:-1:-1;;;;;17908:668:40:o;18581:155::-;18661:20;;18710:1;18700:12;;18690:40;;18726:1;18723;18716:12;18741:285;18798:5;18846:4;18834:9;18829:3;18825:19;18821:30;18818:50;;;18864:1;18861;18854:12;18818:50;18886:22;;:::i;:::-;18877:31;;18944:9;18931:23;18924:5;18917:38;19015:2;19004:9;19000:18;18987:32;18982:2;18975:5;18971:14;18964:56;18741:285;;;;:::o;19031:698::-;19091:5;19144:3;19137:4;19129:6;19125:17;19121:27;19111:55;;19162:1;19159;19152:12;19111:55;19185:2;19216;19210:9;19258:3;19250:6;19246:16;19328:6;19316:10;19313:22;-1:-1:-1;;;;;19280:10:40;19277:34;19274:62;19271:88;;;19339:18;;:::i;:::-;19368:22;;19410:6;19451:3;19439:16;;19467:15;;;19464:35;;;19495:1;19492;19485:12;19464:35;19519:6;19534:165;19550:6;19545:3;19542:15;19534:165;;;19616:38;19650:3;19645;19616:38;:::i;:::-;19604:51;;19684:4;19675:14;;;;19567:12;;19534:165;;;-1:-1:-1;19717:6:40;;19031:698;-1:-1:-1;;;;;;19031:698:40:o;19734:720::-;19816:5;19869:3;19862:4;19854:6;19850:17;19846:27;19836:55;;19887:1;19884;19877:12;19836:55;19910:2;19941;19935:9;19983:3;19975:6;19971:16;20053:6;20041:10;20038:22;-1:-1:-1;;;;;20005:10:40;20002:34;19999:62;19996:88;;;20064:18;;:::i;:::-;20093:22;;20135:6;20176:3;20164:16;;20192:15;;;20189:35;;;20220:1;20217;20210:12;20189:35;20244:6;20259:165;20275:6;20270:3;20267:15;20259:165;;;20341:38;20375:3;20370;20341:38;:::i;:::-;20329:51;;20409:4;20400:14;;;;20292:12;;20259:165;;20459:1264;20521:5;20560:9;20555:3;20551:19;20590:6;20586:2;20582:15;20579:35;;;20610:1;20607;20600:12;20579:35;20632:22;;:::i;:::-;20623:31;;20677:41;20708:9;20677:41;:::i;:::-;20670:5;20663:56;20751:50;20797:2;20786:9;20782:18;20751:50;:::i;:::-;20746:2;20739:5;20735:14;20728:74;20821:6;20861:2;20855;20851:7;20847:2;20843:16;20839:25;20836:45;;;20877:1;20874;20867:12;20836:45;20905:22;;:::i;:::-;20890:37;;20952:59;21007:3;21002:2;20991:9;20987:18;20952:59;:::i;:::-;20943:7;20936:76;21046:82;21124:3;21118;21107:9;21103:19;21046:82;:::i;:::-;21041:2;21032:7;21028:16;21021:108;21163:55;21214:3;21207:4;21196:9;21192:20;21163:55;:::i;:::-;21158:2;21149:7;21145:16;21138:81;21255:55;21306:3;21299:4;21288:9;21284:20;21255:55;:::i;:::-;21248:4;21239:7;21235:18;21228:83;21347:55;21398:3;21391:4;21380:9;21376:20;21347:55;:::i;:::-;21340:4;21331:7;21327:18;21320:83;21439:55;21490:3;21483:4;21472:9;21468:20;21439:55;:::i;:::-;21432:4;21423:7;21419:18;21412:83;21531:55;21582:3;21575:4;21564:9;21560:20;21531:55;:::i;:::-;21524:4;21515:7;21511:18;21504:83;21623:53;21672:3;21667:2;21656:9;21652:18;21623:53;:::i;:::-;21616:4;21603:18;;21596:81;-1:-1:-1;21704:2:40;21693:14;;21686:31;21697:5;20459:1264;-1:-1:-1;;20459:1264:40:o;21728:659::-;21789:5;21842:3;21835:4;21827:6;21823:17;21819:27;21809:55;;21860:1;21857;21850:12;21809:55;21893:2;21887:9;21935:3;21927:6;21923:16;22005:6;21993:10;21990:22;-1:-1:-1;;;;;21957:10:40;21954:34;21951:62;21948:88;;;22016:18;;:::i;:::-;22052:2;22045:22;22087:6;22128:3;22116:16;;22144:15;;;22141:35;;;22172:1;22169;22162:12;22141:35;22196:6;22211:146;22227:6;22222:3;22219:15;22211:146;;;22295:17;;22283:30;;22342:4;22333:14;;;;22244;22211:146;;22392:849;22451:5;22499:6;22487:9;22482:3;22478:19;22474:32;22471:52;;;22519:1;22516;22509:12;22471:52;22541:22;;:::i;:::-;22532:31;;22586:40;22622:3;22611:9;22586:40;:::i;:::-;22579:5;22572:55;22661:59;22716:3;22710;22699:9;22695:19;22661:59;:::i;:::-;22654:4;22647:5;22643:16;22636:85;22755:39;22788:4;22777:9;22773:20;22755:39;:::i;:::-;22748:4;22741:5;22737:16;22730:65;22829:62;22887:3;22880:4;22869:9;22865:20;22829:62;:::i;:::-;22822:4;22815:5;22811:16;22804:88;22926:39;22959:4;22948:9;22944:20;22926:39;:::i;:::-;22919:4;22912:5;22908:16;22901:65;23000:37;23031:4;23020:9;23016:20;23000:37;:::i;:::-;22993:4;22986:5;22982:16;22975:63;23089:4;23078:9;23074:20;23061:34;-1:-1:-1;;;;;23110:6:40;23107:30;23104:50;;;23150:1;23147;23140:12;23104:50;23188:46;23230:3;23221:6;23210:9;23206:22;23188:46;:::i;:::-;23181:4;23174:5;23170:16;23163:72;;22392:849;;;;:::o;23246:1498::-;23330:6;23383:2;23371:9;23362:7;23358:23;23354:32;23351:52;;;23399:1;23396;23389:12;23351:52;23439:9;23426:23;-1:-1:-1;;;;;23509:2:40;23501:6;23498:14;23495:34;;;23525:1;23522;23515:12;23495:34;23548:22;;;;23604:6;23586:16;;;23582:29;23579:49;;;23624:1;23621;23614:12;23579:49;23650:22;;:::i;:::-;23695:48;23735:7;23731:2;23695:48;:::i;:::-;23688:5;23681:63;23797:2;23793;23789:11;23776:25;23771:2;23764:5;23760:14;23753:49;23848:2;23844;23840:11;23827:25;23877:2;23867:8;23864:16;23861:36;;;23893:1;23890;23883:12;23861:36;23929:45;23966:7;23955:8;23951:2;23947:17;23929:45;:::i;:::-;23924:2;23917:5;23913:14;23906:69;;24007:31;24033:3;24029:2;24025:12;24007:31;:::i;:::-;24002:2;23995:5;23991:14;23984:55;24072:31;24098:3;24094:2;24090:12;24072:31;:::i;:::-;24066:3;24059:5;24055:15;24048:56;24158:3;24154:2;24150:12;24137:26;24131:3;24124:5;24120:15;24113:51;24197:58;24247:7;24241:3;24237:2;24233:12;24197:58;:::i;:::-;24191:3;24184:5;24180:15;24173:83;24275:3;24332:2;24328;24324:11;24311:25;24305:3;24298:5;24294:15;24287:50;24356:3;24395:46;24433:7;24428:2;24424;24420:11;24395:46;:::i;:::-;24386:6;24379:5;24375:18;24368:74;24474:52;24518:7;24512:3;24508:2;24504:12;24474:52;:::i;:::-;24469:2;24462:5;24458:14;24451:76;24573:3;24569:2;24565:12;24552:26;24536:42;;24603:2;24593:8;24590:16;24587:36;;;24619:1;24616;24609:12;24587:36;24655:58;24705:7;24694:8;24690:2;24686:17;24655:58;:::i;:::-;24639:14;;;24632:82;-1:-1:-1;24643:5:40;23246:1498;-1:-1:-1;;;;;23246:1498:40:o","linkReferences":{}},"methodIdentifiers":{"validateAccount((bytes32,bytes32,bytes20,bytes32,bytes,uint256,bytes,address))":"9029ad15"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.12+commit.f00d7308\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_alignedServiceAddr\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"AccountIsNotVerified\",\"type\":\"error\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"proofCommitment\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"provingSystemAuxDataCommitment\",\"type\":\"bytes32\"},{\"internalType\":\"bytes20\",\"name\":\"proofGeneratorAddr\",\"type\":\"bytes20\"},{\"internalType\":\"bytes32\",\"name\":\"batchMerkleRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"merkleProof\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"verificationDataBatchIndex\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"pubInput\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"batcherPaymentServiceAddr\",\"type\":\"address\"}],\"internalType\":\"struct MinaAccountValidation.AlignedArgs\",\"name\":\"args\",\"type\":\"tuple\"}],\"name\":\"validateAccount\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bool\",\"name\":\"isOdd\",\"type\":\"bool\"}],\"internalType\":\"struct MinaAccountValidation.CompressedECPoint\",\"name\":\"publicKey\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"tokenIdKeyHash\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tokenSymbol\",\"type\":\"string\"},{\"internalType\":\"uint64\",\"name\":\"balance\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"nonce\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"receiptChainHash\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bool\",\"name\":\"isOdd\",\"type\":\"bool\"}],\"internalType\":\"struct MinaAccountValidation.CompressedECPoint\",\"name\":\"delegate\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"votingFor\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"uint64\",\"name\":\"initialMinimumBalance\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"cliffTime\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"cliffAmount\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"vestingPeriod\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"vestingIncrement\",\"type\":\"uint64\"}],\"internalType\":\"struct MinaAccountValidation.Timing\",\"name\":\"timing\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"editState\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"access\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"send\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"rreceive\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"setDelegate\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"setPermissions\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"setVerificationKeyAuth\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"setVerificationKeyUint\",\"type\":\"uint32\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"setZkappUri\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"editActionState\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"setTokenSymbol\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"incrementNonce\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"setVotingFor\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.AuthRequired\",\"name\":\"setTiming\",\"type\":\"uint8\"}],\"internalType\":\"struct MinaAccountValidation.Permissions\",\"name\":\"permissions\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32[8]\",\"name\":\"appState\",\"type\":\"bytes32[8]\"},{\"components\":[{\"internalType\":\"enum MinaAccountValidation.ProofsVerified\",\"name\":\"maxProofsVerified\",\"type\":\"uint8\"},{\"internalType\":\"enum MinaAccountValidation.ProofsVerified\",\"name\":\"actualWrapDomainSize\",\"type\":\"uint8\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment[7]\",\"name\":\"sigmaComm\",\"type\":\"tuple[7]\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment[15]\",\"name\":\"coefficientsComm\",\"type\":\"tuple[15]\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment\",\"name\":\"genericComm\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment\",\"name\":\"psmComm\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment\",\"name\":\"completeAddComm\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment\",\"name\":\"mulComm\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment\",\"name\":\"emulComm\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"x\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"y\",\"type\":\"bytes32\"}],\"internalType\":\"struct MinaAccountValidation.Commitment\",\"name\":\"endomulScalarComm\",\"type\":\"tuple\"}],\"internalType\":\"struct MinaAccountValidation.WrapIndex\",\"name\":\"wrapIndex\",\"type\":\"tuple\"}],\"internalType\":\"struct MinaAccountValidation.VerificationKey\",\"name\":\"verificationKey\",\"type\":\"tuple\"},{\"internalType\":\"uint32\",\"name\":\"zkappVersion\",\"type\":\"uint32\"},{\"internalType\":\"bytes32[5]\",\"name\":\"actionState\",\"type\":\"bytes32[5]\"},{\"internalType\":\"uint32\",\"name\":\"lastActionSlot\",\"type\":\"uint32\"},{\"internalType\":\"bool\",\"name\":\"provedState\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"zkappUri\",\"type\":\"bytes\"}],\"internalType\":\"struct MinaAccountValidation.ZkappAccount\",\"name\":\"zkapp\",\"type\":\"tuple\"}],\"internalType\":\"struct MinaAccountValidation.Account\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/MinaAccountValidation.sol\":\"MinaAccountValidation\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin-upgrades/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/\",\":@openzeppelin/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/\",\":aligned_layer/=lib/aligned_layer/\",\":ds-test/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/ds-test/src/\",\":eigenlayer-contracts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/\",\":eigenlayer-core-contracts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/core/\",\":eigenlayer-core/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/\",\":eigenlayer-middleware/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/\",\":eigenlayer-scripts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/script/\",\":erc4626-tests/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-upgradeable-v4.9.0/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":openzeppelin-contracts-upgradeable-v4.9.0/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-upgradeable-v4.9.0/\",\":openzeppelin-contracts-upgradeable/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts-v4.9.0/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-v4.9.0/\",\":openzeppelin-contracts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/\"]},\"sources\":{\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IAVSDirectory.sol\":{\"keccak256\":\"0x3f67ab9b510b02dc3c07014b49785f1e167401bdb39cc10f737bbf545632d938\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://48d1267e2df6c8ac9b8f419269ff3d23be9b62606ee6b6d2278c27ffebfd73aa\",\"dweb:/ipfs/QmaFyywKCm1eotKjF1evryW8BMQJzPDstZm1wMRW79phXG\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IBeaconChainOracle.sol\":{\"keccak256\":\"0x0fef07aa6179c77198f1514e12e628aa1c876e04f9c181ec853a322179e5be00\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://51438325876cc2d4c77f58488a7e27b488015d1b663c50be6a5cafbd73b9c983\",\"dweb:/ipfs/QmViCuGoYZzi6wtXA8PPKigqVv3KMuNxEVQ1Td9dGqjL18\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IDelegationManager.sol\":{\"keccak256\":\"0xab76a9f4eff865cbb689f627cf98263488765519d7a4ec5ffbcb0ca4972842f9\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://ff57ce18e8350bf39f190645db0988bc0f1279f1872150a114a1b520c38a2914\",\"dweb:/ipfs/QmSsUXkNUqYuJgGRumHTSs9rAaboGjecotcM4xHrdBYWaZ\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IETHPOSDeposit.sol\":{\"keccak256\":\"0x2e60e5f4b0da0a0a4e2a07c63141120998559970c21deac743ea0c64a60a880c\",\"license\":\"CC0-1.0\",\"urls\":[\"bzz-raw://e635c346bde5b7ade9bcf35bc733081520cb86015be4fbc6e761e6e9482c4c91\",\"dweb:/ipfs/QmRoeazEnbFn5SPSWAkoFK2gSN9DMp3hJAnrLWuL2sKutz\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IEigenPod.sol\":{\"keccak256\":\"0xb50c36ad96b6679bb80fd8331f949cbfbcba0f529026e1421a4d2bae64396eba\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://5719181d780120f1e688c0da276992a8caf185815917f453b3550537c31ed4cc\",\"dweb:/ipfs/QmYprRC5ZEXhz3zAUND5E8Xjn6s5TL8ZF8QbnndVq7aVPR\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IEigenPodManager.sol\":{\"keccak256\":\"0xd8a64dbed03d3a5cdbefe1af75968f2dde07f973749c2ef5197bf7187c3e448c\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://27ccc7c1fd9352e9f9b357c9063d255dc0ed9583f43db09f786ac7497d7846b8\",\"dweb:/ipfs/QmeJzuJkE9m2NUNwZSp4tGZEZmih1LeucePup8hzMVDRbG\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IPausable.sol\":{\"keccak256\":\"0x98cffc894842947377e24c1d375813a1120dd73a84c29782ab68404e109cb34f\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://b3474f6c350ceaee57cbdfb08fb48835d0c6e81ae8ebfbb9667899584a139324\",\"dweb:/ipfs/QmWELKtksdtWxQbqAccd8yGyhKqrgPZXTADKR7BuT27Zg5\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IPauserRegistry.sol\":{\"keccak256\":\"0x9de8dd682bc0d812bbd6583c0231cbf35448d5eff58b74a93efa64cb9a768c49\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://c00d6c675b9c72b092d287fe85fd37782588df32b8eb59ab4c7db7a86be25e7d\",\"dweb:/ipfs/QmeYokY3HhAdbBaCPdHg3PgQEdRCDFEJy3Wf7VtgHBkQSx\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IRewardsCoordinator.sol\":{\"keccak256\":\"0xeab6f1140a90eb7f107d95bae1e8b2ecfbfe36282d62c9df69e6a564c2c59771\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://785cd2777cdcab3b827b5eef2a4dae02c56db07252fdcefd8dd1016be034dc71\",\"dweb:/ipfs/QmNyDFchTuMeiVoxNEfQw96JVq7DfkohGz1txKXe7HyNbq\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/ISignatureUtils.sol\":{\"keccak256\":\"0x5e52482a31d94401a8502f3014c4aada1142b4450fc0596dff8e1866a85fe092\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://17dc326c9361bc1453379f26545963557b2883b0c88bc07d4477e04dbcc0cc8c\",\"dweb:/ipfs/QmZXT7A816W5JH2ymirE2ETaJttqztFCsEL22AV8oEfCK9\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/ISlasher.sol\":{\"keccak256\":\"0x45dfaa2cfdde87f48a6ee38bb6fb739847aef7cf3f6137bdcd8c8a330559ec79\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://1b7f6bd75b42fcaa91ceb7140cb2c41926a1fe6ee2d3161e4fe6186b181ba232\",\"dweb:/ipfs/QmZjbdKiSs33C9i3GDc3sdD39Pz4YPkDoKftowoUF4kHmY\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IStrategy.sol\":{\"keccak256\":\"0xc530c6a944b70051fd0dac0222de9a4b5baadeaf94ad194daac6ad8d2ace7420\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://3767df0364ce835b52e786d2851431eb9223fe4747602107505477e162231d73\",\"dweb:/ipfs/QmZkH5bKUygQrJomndNaQqkefVRW4rRefCa8HPJ5HMczxJ\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IStrategyManager.sol\":{\"keccak256\":\"0x68bf02a443fc8b2f612eba3d39bfefa5f61f78b549f111cdecec5f2c58236a52\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://76bc6875ce74128b861fdac5fd1c0c72f3cc9bacf67fa4a73721b95fb23959ef\",\"dweb:/ipfs/QmPix4WJmf9fXyMZxfgwXEHBcg7V4NAbRqs4HUf5YrSJcM\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/libraries/BeaconChainProofs.sol\":{\"keccak256\":\"0x70d89b05c1c5f47b74a07fbb5a2c05e606fed494e749ea98a9915b7be73df377\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://db1d3bfaee69aef53c8b12b492a17584e6d1ac94610cb8b38aad33e1cdd81af7\",\"dweb:/ipfs/QmfVsMTj1hcf9fMEm5RzvtcBN4dMcAKFBgUUDsNDr5XFpq\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/libraries/Endian.sol\":{\"keccak256\":\"0xf3b72653ba2567a978d4612703fa5f71c5fcd015d8dac7818468f22772d90a9d\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://cee9d09370d968138d775c39525db4cd0768d60d17be7685519de12444e7dd2f\",\"dweb:/ipfs/QmUdGh8wpMei3edKiEWA6S96s9dRt4ekZKJ4nau356X8xQ\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/libraries/Merkle.sol\":{\"keccak256\":\"0x9095fc29b96d102b10c02d44b3a6fbfa25593ef6ae4a810363ab885b9e6b0f71\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0945132d482d56278edddb1d32209903c4d3839c87ba4317aadd97dc23610d0f\",\"dweb:/ipfs/QmVuM2aLRHxitx4rPx3GTYTBCVNcjYn6sHBRr1biUjLBP5\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/permissions/Pausable.sol\":{\"keccak256\":\"0xce8ee0ab28f2bce9e94aa19fffe55bebef080327632ac98ff3ab14994b369bc0\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://5c7e2be97a8840fa2a0434077a36136553a84efd9bff4b46712ce9fddb813a6a\",\"dweb:/ipfs/QmZKvgPxLAbGo1CqTA4AX6MCDPFLSSNt43ZKWRjvvzFp7S\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x247c62047745915c0af6b955470a72d1696ebad4352d7d3011aef1a2463cd888\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d7fc8396619de513c96b6e00301b88dd790e83542aab918425633a5f7297a15a\",\"dweb:/ipfs/QmXbP4kiZyp7guuS7xe8KaybnwkRPGrBc2Kbi3vhcTfpxb\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x0203dcadc5737d9ef2c211d6fa15d18ebc3b30dfa51903b64870b01a062b0b4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6eb2fd1e9894dbe778f4b8131adecebe570689e63cf892f4e21257bfe1252497\",\"dweb:/ipfs/QmXgUGNfZvrn6N2miv3nooSs7Jm34A41qz94fu2GtDFcx8\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x611aa3f23e59cfdd1863c536776407b3e33d695152a266fa7cfb34440a29a8a3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b4b2110b7f2b3eb32951bc08046fa90feccffa594e1176cb91cdfb0e94726b4\",\"dweb:/ipfs/QmSxLwYjicf9zWFuieRc8WQwE4FisA1Um5jp1iSa731TGt\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x963ea7f0b48b032eef72fe3a7582edf78408d6f834115b9feadd673a4d5bd149\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d6520943ea55fdf5f0bafb39ed909f64de17051bc954ff3e88c9e5621412c79c\",\"dweb:/ipfs/QmWZ4rAKTQbNG2HxGs46AcTXShsVytKeLs7CUCdCSv5N7a\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x9750c6b834f7b43000631af5cc30001c5f547b3ceb3635488f140f60e897ea6b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a7d5b1ef5d8d5889ad2ed89d8619c09383b80b72ab226e0fe7bde1636481e34\",\"dweb:/ipfs/QmebXWgtEfumQGBdVeM6c71McLixYXQP5Bk6kKXuoY4Bmr\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/BLSSignatureChecker.sol\":{\"keccak256\":\"0x3a5c205c596d3d73c7afa63ffbbfac8204f6d6a26c151ef26b47278981c3c0fe\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://4beb88bf5b7c7e614f0d87b157d7a4b67afbf1cc93f3127622bd66f696799241\",\"dweb:/ipfs/QmWJKb6qsd69bWgpAHX6deCkJqmJdo9oBLQAXJk97gWEE2\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/ServiceManagerBase.sol\":{\"keccak256\":\"0x7e32ef76daf32e5eb5a93cecf204223e64243f42afe70c7ca71ad3db3925b9c4\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://19c10aa22f2e86e27e946b65c434e541caa6af06fcdde46c3b5e9b42890bd221\",\"dweb:/ipfs/QmPb5qDRdbJTniKSqsbjVhbtwdb72G9hWPYcHtVvj1zBxg\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/ServiceManagerBaseStorage.sol\":{\"keccak256\":\"0xa544114dbf6d973a815f997a2ac9237c531c40b08c91d3a65a23b152ed621e1e\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://4cf69f9be7d3f3c4184b61b267280a829040973633ea9d95e2ec0dbf70f40a2e\",\"dweb:/ipfs/QmT2HeCJWBLX2p4KAWnyU318MMx9USb2brqCKq1vn2pXpR\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IBLSApkRegistry.sol\":{\"keccak256\":\"0xc07a5edfd95ab4f16f16a8dc8e76eadf4b0e90fe49db90540d01daaad86898c5\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://52b53266450a53da641e82d8ae3be93c5e09f8342b4ea0cc96bb9038d8406354\",\"dweb:/ipfs/QmVuoiQyqPTLCGnyt8zDaxiyaj4ETdgTGKv4MDHWzqEDjp\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IBLSSignatureChecker.sol\":{\"keccak256\":\"0xee5823a6674e553c71f5e127f08245827eb116d1ad418b5a7f2a9d6985fd95e0\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://94aa26debddca6c0784585340cf891de4c2d7edaa3e5ec7229af9730312a5a51\",\"dweb:/ipfs/QmWbHGbM7eVYTAmrCVaDU8b4YTm9VAN82XgLDR78uHC7vj\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IIndexRegistry.sol\":{\"keccak256\":\"0x83b2d56aacf27e65c4959a832c5de573e013908c044f6e48ea8284ac5282ae2b\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://877af382587e96bb39bcc6db8bb5e4b871db5025c52347d4bee9afeaa4a6cc8d\",\"dweb:/ipfs/QmdnhsQCChzq2o5NgbeT3JxSsEcMm1PC9QW6zenZNPjD9F\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IRegistry.sol\":{\"keccak256\":\"0x51426a17fb7e54bd3720e2890104e97a8559a13ff248b3d6b840916751c143d3\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://01f91289e6100d528cb8b318cb14ff22a0bc52882c9d4db41585e030cc9ddc25\",\"dweb:/ipfs/Qmb22nqGrsrtNovHRwbMCvDHGENuxAgrWu3Db4p7Er2MHY\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IRegistryCoordinator.sol\":{\"keccak256\":\"0xdd8effb082c1d5957d5ff43d7c59497b32866a6d82bcc7d5efa49ea9bc9b3385\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://cb33a2a1446585b13b7a509e880c60d658d2d2522ec48a9f02e30d2cff54002d\",\"dweb:/ipfs/QmVNG8ZPZkXzNEadPdTj1uBYLiZdCnYfsE5iGU6nJcJXiD\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IServiceManager.sol\":{\"keccak256\":\"0x7602cfb4397a114a0ed60e70e8e1d729fdcf406b585838181b3cb3ffa6ac9a9a\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://b718fa016a13a2a5ce298bc5ea7495cc70cf9c358211c75595d5c9dde9a6cc0f\",\"dweb:/ipfs/QmQNrVmU7P7pRqGBJuTQDkjf3wMDY2kJm7zXdtQwsQTbzY\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IServiceManagerUI.sol\":{\"keccak256\":\"0x365761699b4a5b7360ee6c75f12606eefc4b0394754c8b8e1e1eefec0cba7ffb\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://ac14ada180b66cbbc5f9de0d6b4bb87b5946d2a9569ae88f2f62aaca47e879a8\",\"dweb:/ipfs/QmcN9xKYF24naNWc6cYah9suz5gJSYE9nPj9eZFWnP35VX\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IStakeRegistry.sol\":{\"keccak256\":\"0x1b8b4d757c1b804bc4cf6fbbf8bf8f89ebdeb30a31014751fe7d01deb9d513d4\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://984bf2777b898ed187d28997f9783f5c293a1a1848e3e9aa470ce9183d454c97\",\"dweb:/ipfs/Qme3aTpBrkLu8wYHFMZbCfhXHoZ1M6SpXkeC237T9BuU5B\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/libraries/BN254.sol\":{\"keccak256\":\"0xb428c8d0c3b325507a88a61a80115493eb88606ccc19ed64a31e11294ab853b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d7b6fb935bfe0494e6ff970c8f30a86d5f4cf5c3e0967300c28cd383c043acae\",\"dweb:/ipfs/QmUHfFZaVjLPXhkBmcxrZhAHZaSFQDqXtrLGpjGBQBa5Ki\"]},\"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/libraries/BitmapUtils.sol\":{\"keccak256\":\"0x44315ac460be30a6b18fd4df4d1b8afb46653bf4dc06ca9f93c32353fd0605c5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://da14f2ead3a375b02afd09d4a02edddf7b63a88945746b96789b2473184fdb04\",\"dweb:/ipfs/QmRqcjxa2Vv2MrLdPeAwsktXdWTirapEDsRbJCyYRtKT6g\"]},\"lib/aligned_layer/contracts/src/core/AlignedLayerServiceManager.sol\":{\"keccak256\":\"0x2fa3543fb62b2954207591aa045dfa18d88e8a94d14e6639aec06cf92c30e921\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://86cbef8f4b9c15d59b1593c09efdc738b54a196a6a9acc479823177411b7b724\",\"dweb:/ipfs/QmYAWQsLU9XKRUYYZzwANGF7EQTz1bwwr3WCa8syvRDvRJ\"]},\"lib/aligned_layer/contracts/src/core/AlignedLayerServiceManagerStorage.sol\":{\"keccak256\":\"0xabc512eb0a600c2e6465b0813cc2d1b26edd0225f03d9c1de2f6fe96db531817\",\"urls\":[\"bzz-raw://64c7675966d4d3503e011ed3184ffaebb85128b04e892f81cb47996788ca744d\",\"dweb:/ipfs/QmXqm57dvJCPUGgwMhf6k4sbPa3DUUTY3UVu2UCbHejY68\"]},\"lib/aligned_layer/contracts/src/core/IAlignedLayerServiceManager.sol\":{\"keccak256\":\"0x8d2bfeabfc2cde8b699778f7395c5efe44ded0bc57f0d0ea14cdc18a87d8433b\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://b2f47bfa5a21219889cde76d1bf30800c7765648ab68e1148c268b83362e040b\",\"dweb:/ipfs/QmWADSHQrj5qxMJ3kiksWDVe82w2WMPxgtLYxGnv8kGr9M\"]},\"src/MinaAccountValidation.sol\":{\"keccak256\":\"0xcaea4d628ecbc32a29a4b2f18edae3a2a4e99eedf0e85a1d75f2deb64fdbf21d\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://79d76e5136d3e3371514608625301d419f7db5c403f6fe3bbc4d247b2b0be20d\",\"dweb:/ipfs/QmRxTENUaymHA4igY28gZHHhJPqfrySyH6rv5YsHHUxU1C\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.12+commit.f00d7308"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address payable","name":"_alignedServiceAddr","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"error","name":"AccountIsNotVerified"},{"inputs":[{"internalType":"struct MinaAccountValidation.AlignedArgs","name":"args","type":"tuple","components":[{"internalType":"bytes32","name":"proofCommitment","type":"bytes32"},{"internalType":"bytes32","name":"provingSystemAuxDataCommitment","type":"bytes32"},{"internalType":"bytes20","name":"proofGeneratorAddr","type":"bytes20"},{"internalType":"bytes32","name":"batchMerkleRoot","type":"bytes32"},{"internalType":"bytes","name":"merkleProof","type":"bytes"},{"internalType":"uint256","name":"verificationDataBatchIndex","type":"uint256"},{"internalType":"bytes","name":"pubInput","type":"bytes"},{"internalType":"address","name":"batcherPaymentServiceAddr","type":"address"}]}],"stateMutability":"view","type":"function","name":"validateAccount","outputs":[{"internalType":"struct MinaAccountValidation.Account","name":"","type":"tuple","components":[{"internalType":"struct MinaAccountValidation.CompressedECPoint","name":"publicKey","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bool","name":"isOdd","type":"bool"}]},{"internalType":"bytes32","name":"tokenIdKeyHash","type":"bytes32"},{"internalType":"string","name":"tokenSymbol","type":"string"},{"internalType":"uint64","name":"balance","type":"uint64"},{"internalType":"uint32","name":"nonce","type":"uint32"},{"internalType":"bytes32","name":"receiptChainHash","type":"bytes32"},{"internalType":"struct MinaAccountValidation.CompressedECPoint","name":"delegate","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bool","name":"isOdd","type":"bool"}]},{"internalType":"bytes32","name":"votingFor","type":"bytes32"},{"internalType":"struct MinaAccountValidation.Timing","name":"timing","type":"tuple","components":[{"internalType":"uint64","name":"initialMinimumBalance","type":"uint64"},{"internalType":"uint32","name":"cliffTime","type":"uint32"},{"internalType":"uint64","name":"cliffAmount","type":"uint64"},{"internalType":"uint32","name":"vestingPeriod","type":"uint32"},{"internalType":"uint64","name":"vestingIncrement","type":"uint64"}]},{"internalType":"struct MinaAccountValidation.Permissions","name":"permissions","type":"tuple","components":[{"internalType":"enum MinaAccountValidation.AuthRequired","name":"editState","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"access","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"send","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"rreceive","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"setDelegate","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"setPermissions","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"setVerificationKeyAuth","type":"uint8"},{"internalType":"uint32","name":"setVerificationKeyUint","type":"uint32"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"setZkappUri","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"editActionState","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"setTokenSymbol","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"incrementNonce","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"setVotingFor","type":"uint8"},{"internalType":"enum MinaAccountValidation.AuthRequired","name":"setTiming","type":"uint8"}]},{"internalType":"struct MinaAccountValidation.ZkappAccount","name":"zkapp","type":"tuple","components":[{"internalType":"bytes32[8]","name":"appState","type":"bytes32[8]"},{"internalType":"struct MinaAccountValidation.VerificationKey","name":"verificationKey","type":"tuple","components":[{"internalType":"enum MinaAccountValidation.ProofsVerified","name":"maxProofsVerified","type":"uint8"},{"internalType":"enum MinaAccountValidation.ProofsVerified","name":"actualWrapDomainSize","type":"uint8"},{"internalType":"struct MinaAccountValidation.WrapIndex","name":"wrapIndex","type":"tuple","components":[{"internalType":"struct MinaAccountValidation.Commitment[7]","name":"sigmaComm","type":"tuple[7]","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]},{"internalType":"struct MinaAccountValidation.Commitment[15]","name":"coefficientsComm","type":"tuple[15]","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]},{"internalType":"struct MinaAccountValidation.Commitment","name":"genericComm","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]},{"internalType":"struct MinaAccountValidation.Commitment","name":"psmComm","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]},{"internalType":"struct MinaAccountValidation.Commitment","name":"completeAddComm","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]},{"internalType":"struct MinaAccountValidation.Commitment","name":"mulComm","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]},{"internalType":"struct MinaAccountValidation.Commitment","name":"emulComm","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]},{"internalType":"struct MinaAccountValidation.Commitment","name":"endomulScalarComm","type":"tuple","components":[{"internalType":"bytes32","name":"x","type":"bytes32"},{"internalType":"bytes32","name":"y","type":"bytes32"}]}]}]},{"internalType":"uint32","name":"zkappVersion","type":"uint32"},{"internalType":"bytes32[5]","name":"actionState","type":"bytes32[5]"},{"internalType":"uint32","name":"lastActionSlot","type":"uint32"},{"internalType":"bool","name":"provedState","type":"bool"},{"internalType":"bytes","name":"zkappUri","type":"bytes"}]}]}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin-upgrades/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/","@openzeppelin/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/","aligned_layer/=lib/aligned_layer/","ds-test/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/ds-test/src/","eigenlayer-contracts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/","eigenlayer-core-contracts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/core/","eigenlayer-core/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/","eigenlayer-middleware/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/","eigenlayer-scripts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/script/","erc4626-tests/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-upgradeable-v4.9.0/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","openzeppelin-contracts-upgradeable-v4.9.0/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-upgradeable-v4.9.0/","openzeppelin-contracts-upgradeable/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts-v4.9.0/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-v4.9.0/","openzeppelin-contracts/=lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/MinaAccountValidation.sol":"MinaAccountValidation"},"evmVersion":"london","libraries":{}},"sources":{"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IAVSDirectory.sol":{"keccak256":"0x3f67ab9b510b02dc3c07014b49785f1e167401bdb39cc10f737bbf545632d938","urls":["bzz-raw://48d1267e2df6c8ac9b8f419269ff3d23be9b62606ee6b6d2278c27ffebfd73aa","dweb:/ipfs/QmaFyywKCm1eotKjF1evryW8BMQJzPDstZm1wMRW79phXG"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IBeaconChainOracle.sol":{"keccak256":"0x0fef07aa6179c77198f1514e12e628aa1c876e04f9c181ec853a322179e5be00","urls":["bzz-raw://51438325876cc2d4c77f58488a7e27b488015d1b663c50be6a5cafbd73b9c983","dweb:/ipfs/QmViCuGoYZzi6wtXA8PPKigqVv3KMuNxEVQ1Td9dGqjL18"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IDelegationManager.sol":{"keccak256":"0xab76a9f4eff865cbb689f627cf98263488765519d7a4ec5ffbcb0ca4972842f9","urls":["bzz-raw://ff57ce18e8350bf39f190645db0988bc0f1279f1872150a114a1b520c38a2914","dweb:/ipfs/QmSsUXkNUqYuJgGRumHTSs9rAaboGjecotcM4xHrdBYWaZ"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IETHPOSDeposit.sol":{"keccak256":"0x2e60e5f4b0da0a0a4e2a07c63141120998559970c21deac743ea0c64a60a880c","urls":["bzz-raw://e635c346bde5b7ade9bcf35bc733081520cb86015be4fbc6e761e6e9482c4c91","dweb:/ipfs/QmRoeazEnbFn5SPSWAkoFK2gSN9DMp3hJAnrLWuL2sKutz"],"license":"CC0-1.0"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IEigenPod.sol":{"keccak256":"0xb50c36ad96b6679bb80fd8331f949cbfbcba0f529026e1421a4d2bae64396eba","urls":["bzz-raw://5719181d780120f1e688c0da276992a8caf185815917f453b3550537c31ed4cc","dweb:/ipfs/QmYprRC5ZEXhz3zAUND5E8Xjn6s5TL8ZF8QbnndVq7aVPR"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IEigenPodManager.sol":{"keccak256":"0xd8a64dbed03d3a5cdbefe1af75968f2dde07f973749c2ef5197bf7187c3e448c","urls":["bzz-raw://27ccc7c1fd9352e9f9b357c9063d255dc0ed9583f43db09f786ac7497d7846b8","dweb:/ipfs/QmeJzuJkE9m2NUNwZSp4tGZEZmih1LeucePup8hzMVDRbG"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IPausable.sol":{"keccak256":"0x98cffc894842947377e24c1d375813a1120dd73a84c29782ab68404e109cb34f","urls":["bzz-raw://b3474f6c350ceaee57cbdfb08fb48835d0c6e81ae8ebfbb9667899584a139324","dweb:/ipfs/QmWELKtksdtWxQbqAccd8yGyhKqrgPZXTADKR7BuT27Zg5"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IPauserRegistry.sol":{"keccak256":"0x9de8dd682bc0d812bbd6583c0231cbf35448d5eff58b74a93efa64cb9a768c49","urls":["bzz-raw://c00d6c675b9c72b092d287fe85fd37782588df32b8eb59ab4c7db7a86be25e7d","dweb:/ipfs/QmeYokY3HhAdbBaCPdHg3PgQEdRCDFEJy3Wf7VtgHBkQSx"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IRewardsCoordinator.sol":{"keccak256":"0xeab6f1140a90eb7f107d95bae1e8b2ecfbfe36282d62c9df69e6a564c2c59771","urls":["bzz-raw://785cd2777cdcab3b827b5eef2a4dae02c56db07252fdcefd8dd1016be034dc71","dweb:/ipfs/QmNyDFchTuMeiVoxNEfQw96JVq7DfkohGz1txKXe7HyNbq"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/ISignatureUtils.sol":{"keccak256":"0x5e52482a31d94401a8502f3014c4aada1142b4450fc0596dff8e1866a85fe092","urls":["bzz-raw://17dc326c9361bc1453379f26545963557b2883b0c88bc07d4477e04dbcc0cc8c","dweb:/ipfs/QmZXT7A816W5JH2ymirE2ETaJttqztFCsEL22AV8oEfCK9"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/ISlasher.sol":{"keccak256":"0x45dfaa2cfdde87f48a6ee38bb6fb739847aef7cf3f6137bdcd8c8a330559ec79","urls":["bzz-raw://1b7f6bd75b42fcaa91ceb7140cb2c41926a1fe6ee2d3161e4fe6186b181ba232","dweb:/ipfs/QmZjbdKiSs33C9i3GDc3sdD39Pz4YPkDoKftowoUF4kHmY"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IStrategy.sol":{"keccak256":"0xc530c6a944b70051fd0dac0222de9a4b5baadeaf94ad194daac6ad8d2ace7420","urls":["bzz-raw://3767df0364ce835b52e786d2851431eb9223fe4747602107505477e162231d73","dweb:/ipfs/QmZkH5bKUygQrJomndNaQqkefVRW4rRefCa8HPJ5HMczxJ"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/interfaces/IStrategyManager.sol":{"keccak256":"0x68bf02a443fc8b2f612eba3d39bfefa5f61f78b549f111cdecec5f2c58236a52","urls":["bzz-raw://76bc6875ce74128b861fdac5fd1c0c72f3cc9bacf67fa4a73721b95fb23959ef","dweb:/ipfs/QmPix4WJmf9fXyMZxfgwXEHBcg7V4NAbRqs4HUf5YrSJcM"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/libraries/BeaconChainProofs.sol":{"keccak256":"0x70d89b05c1c5f47b74a07fbb5a2c05e606fed494e749ea98a9915b7be73df377","urls":["bzz-raw://db1d3bfaee69aef53c8b12b492a17584e6d1ac94610cb8b38aad33e1cdd81af7","dweb:/ipfs/QmfVsMTj1hcf9fMEm5RzvtcBN4dMcAKFBgUUDsNDr5XFpq"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/libraries/Endian.sol":{"keccak256":"0xf3b72653ba2567a978d4612703fa5f71c5fcd015d8dac7818468f22772d90a9d","urls":["bzz-raw://cee9d09370d968138d775c39525db4cd0768d60d17be7685519de12444e7dd2f","dweb:/ipfs/QmUdGh8wpMei3edKiEWA6S96s9dRt4ekZKJ4nau356X8xQ"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/libraries/Merkle.sol":{"keccak256":"0x9095fc29b96d102b10c02d44b3a6fbfa25593ef6ae4a810363ab885b9e6b0f71","urls":["bzz-raw://0945132d482d56278edddb1d32209903c4d3839c87ba4317aadd97dc23610d0f","dweb:/ipfs/QmVuM2aLRHxitx4rPx3GTYTBCVNcjYn6sHBRr1biUjLBP5"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/permissions/Pausable.sol":{"keccak256":"0xce8ee0ab28f2bce9e94aa19fffe55bebef080327632ac98ff3ab14994b369bc0","urls":["bzz-raw://5c7e2be97a8840fa2a0434077a36136553a84efd9bff4b46712ce9fddb813a6a","dweb:/ipfs/QmZKvgPxLAbGo1CqTA4AX6MCDPFLSSNt43ZKWRjvvzFp7S"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x247c62047745915c0af6b955470a72d1696ebad4352d7d3011aef1a2463cd888","urls":["bzz-raw://d7fc8396619de513c96b6e00301b88dd790e83542aab918425633a5f7297a15a","dweb:/ipfs/QmXbP4kiZyp7guuS7xe8KaybnwkRPGrBc2Kbi3vhcTfpxb"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x0203dcadc5737d9ef2c211d6fa15d18ebc3b30dfa51903b64870b01a062b0b4e","urls":["bzz-raw://6eb2fd1e9894dbe778f4b8131adecebe570689e63cf892f4e21257bfe1252497","dweb:/ipfs/QmXgUGNfZvrn6N2miv3nooSs7Jm34A41qz94fu2GtDFcx8"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x611aa3f23e59cfdd1863c536776407b3e33d695152a266fa7cfb34440a29a8a3","urls":["bzz-raw://9b4b2110b7f2b3eb32951bc08046fa90feccffa594e1176cb91cdfb0e94726b4","dweb:/ipfs/QmSxLwYjicf9zWFuieRc8WQwE4FisA1Um5jp1iSa731TGt"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x963ea7f0b48b032eef72fe3a7582edf78408d6f834115b9feadd673a4d5bd149","urls":["bzz-raw://d6520943ea55fdf5f0bafb39ed909f64de17051bc954ff3e88c9e5621412c79c","dweb:/ipfs/QmWZ4rAKTQbNG2HxGs46AcTXShsVytKeLs7CUCdCSv5N7a"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x9750c6b834f7b43000631af5cc30001c5f547b3ceb3635488f140f60e897ea6b","urls":["bzz-raw://5a7d5b1ef5d8d5889ad2ed89d8619c09383b80b72ab226e0fe7bde1636481e34","dweb:/ipfs/QmebXWgtEfumQGBdVeM6c71McLixYXQP5Bk6kKXuoY4Bmr"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/BLSSignatureChecker.sol":{"keccak256":"0x3a5c205c596d3d73c7afa63ffbbfac8204f6d6a26c151ef26b47278981c3c0fe","urls":["bzz-raw://4beb88bf5b7c7e614f0d87b157d7a4b67afbf1cc93f3127622bd66f696799241","dweb:/ipfs/QmWJKb6qsd69bWgpAHX6deCkJqmJdo9oBLQAXJk97gWEE2"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/ServiceManagerBase.sol":{"keccak256":"0x7e32ef76daf32e5eb5a93cecf204223e64243f42afe70c7ca71ad3db3925b9c4","urls":["bzz-raw://19c10aa22f2e86e27e946b65c434e541caa6af06fcdde46c3b5e9b42890bd221","dweb:/ipfs/QmPb5qDRdbJTniKSqsbjVhbtwdb72G9hWPYcHtVvj1zBxg"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/ServiceManagerBaseStorage.sol":{"keccak256":"0xa544114dbf6d973a815f997a2ac9237c531c40b08c91d3a65a23b152ed621e1e","urls":["bzz-raw://4cf69f9be7d3f3c4184b61b267280a829040973633ea9d95e2ec0dbf70f40a2e","dweb:/ipfs/QmT2HeCJWBLX2p4KAWnyU318MMx9USb2brqCKq1vn2pXpR"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IBLSApkRegistry.sol":{"keccak256":"0xc07a5edfd95ab4f16f16a8dc8e76eadf4b0e90fe49db90540d01daaad86898c5","urls":["bzz-raw://52b53266450a53da641e82d8ae3be93c5e09f8342b4ea0cc96bb9038d8406354","dweb:/ipfs/QmVuoiQyqPTLCGnyt8zDaxiyaj4ETdgTGKv4MDHWzqEDjp"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IBLSSignatureChecker.sol":{"keccak256":"0xee5823a6674e553c71f5e127f08245827eb116d1ad418b5a7f2a9d6985fd95e0","urls":["bzz-raw://94aa26debddca6c0784585340cf891de4c2d7edaa3e5ec7229af9730312a5a51","dweb:/ipfs/QmWbHGbM7eVYTAmrCVaDU8b4YTm9VAN82XgLDR78uHC7vj"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IIndexRegistry.sol":{"keccak256":"0x83b2d56aacf27e65c4959a832c5de573e013908c044f6e48ea8284ac5282ae2b","urls":["bzz-raw://877af382587e96bb39bcc6db8bb5e4b871db5025c52347d4bee9afeaa4a6cc8d","dweb:/ipfs/QmdnhsQCChzq2o5NgbeT3JxSsEcMm1PC9QW6zenZNPjD9F"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IRegistry.sol":{"keccak256":"0x51426a17fb7e54bd3720e2890104e97a8559a13ff248b3d6b840916751c143d3","urls":["bzz-raw://01f91289e6100d528cb8b318cb14ff22a0bc52882c9d4db41585e030cc9ddc25","dweb:/ipfs/Qmb22nqGrsrtNovHRwbMCvDHGENuxAgrWu3Db4p7Er2MHY"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IRegistryCoordinator.sol":{"keccak256":"0xdd8effb082c1d5957d5ff43d7c59497b32866a6d82bcc7d5efa49ea9bc9b3385","urls":["bzz-raw://cb33a2a1446585b13b7a509e880c60d658d2d2522ec48a9f02e30d2cff54002d","dweb:/ipfs/QmVNG8ZPZkXzNEadPdTj1uBYLiZdCnYfsE5iGU6nJcJXiD"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IServiceManager.sol":{"keccak256":"0x7602cfb4397a114a0ed60e70e8e1d729fdcf406b585838181b3cb3ffa6ac9a9a","urls":["bzz-raw://b718fa016a13a2a5ce298bc5ea7495cc70cf9c358211c75595d5c9dde9a6cc0f","dweb:/ipfs/QmQNrVmU7P7pRqGBJuTQDkjf3wMDY2kJm7zXdtQwsQTbzY"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IServiceManagerUI.sol":{"keccak256":"0x365761699b4a5b7360ee6c75f12606eefc4b0394754c8b8e1e1eefec0cba7ffb","urls":["bzz-raw://ac14ada180b66cbbc5f9de0d6b4bb87b5946d2a9569ae88f2f62aaca47e879a8","dweb:/ipfs/QmcN9xKYF24naNWc6cYah9suz5gJSYE9nPj9eZFWnP35VX"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/interfaces/IStakeRegistry.sol":{"keccak256":"0x1b8b4d757c1b804bc4cf6fbbf8bf8f89ebdeb30a31014751fe7d01deb9d513d4","urls":["bzz-raw://984bf2777b898ed187d28997f9783f5c293a1a1848e3e9aa470ce9183d454c97","dweb:/ipfs/Qme3aTpBrkLu8wYHFMZbCfhXHoZ1M6SpXkeC237T9BuU5B"],"license":"BUSL-1.1"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/libraries/BN254.sol":{"keccak256":"0xb428c8d0c3b325507a88a61a80115493eb88606ccc19ed64a31e11294ab853b3","urls":["bzz-raw://d7b6fb935bfe0494e6ff970c8f30a86d5f4cf5c3e0967300c28cd383c043acae","dweb:/ipfs/QmUHfFZaVjLPXhkBmcxrZhAHZaSFQDqXtrLGpjGBQBa5Ki"],"license":"MIT"},"lib/aligned_layer/contracts/lib/eigenlayer-middleware/src/libraries/BitmapUtils.sol":{"keccak256":"0x44315ac460be30a6b18fd4df4d1b8afb46653bf4dc06ca9f93c32353fd0605c5","urls":["bzz-raw://da14f2ead3a375b02afd09d4a02edddf7b63a88945746b96789b2473184fdb04","dweb:/ipfs/QmRqcjxa2Vv2MrLdPeAwsktXdWTirapEDsRbJCyYRtKT6g"],"license":"MIT"},"lib/aligned_layer/contracts/src/core/AlignedLayerServiceManager.sol":{"keccak256":"0x2fa3543fb62b2954207591aa045dfa18d88e8a94d14e6639aec06cf92c30e921","urls":["bzz-raw://86cbef8f4b9c15d59b1593c09efdc738b54a196a6a9acc479823177411b7b724","dweb:/ipfs/QmYAWQsLU9XKRUYYZzwANGF7EQTz1bwwr3WCa8syvRDvRJ"],"license":"UNLICENSED"},"lib/aligned_layer/contracts/src/core/AlignedLayerServiceManagerStorage.sol":{"keccak256":"0xabc512eb0a600c2e6465b0813cc2d1b26edd0225f03d9c1de2f6fe96db531817","urls":["bzz-raw://64c7675966d4d3503e011ed3184ffaebb85128b04e892f81cb47996788ca744d","dweb:/ipfs/QmXqm57dvJCPUGgwMhf6k4sbPa3DUUTY3UVu2UCbHejY68"],"license":null},"lib/aligned_layer/contracts/src/core/IAlignedLayerServiceManager.sol":{"keccak256":"0x8d2bfeabfc2cde8b699778f7395c5efe44ded0bc57f0d0ea14cdc18a87d8433b","urls":["bzz-raw://b2f47bfa5a21219889cde76d1bf30800c7765648ab68e1148c268b83362e040b","dweb:/ipfs/QmWADSHQrj5qxMJ3kiksWDVe82w2WMPxgtLYxGnv8kGr9M"],"license":"UNLICENSED"},"src/MinaAccountValidation.sol":{"keccak256":"0xcaea4d628ecbc32a29a4b2f18edae3a2a4e99eedf0e85a1d75f2deb64fdbf21d","urls":["bzz-raw://79d76e5136d3e3371514608625301d419f7db5c403f6fe3bbc4d247b2b0be20d","dweb:/ipfs/QmRxTENUaymHA4igY28gZHHhJPqfrySyH6rv5YsHHUxU1C"],"license":"UNLICENSED"}},"version":1},"id":39} \ No newline at end of file diff --git a/core/src/main.rs b/core/src/main.rs index 26bc0793..35e7d91f 100644 --- a/core/src/main.rs +++ b/core/src/main.rs @@ -133,6 +133,7 @@ async fn main() { &pub_input, &chain, ð_rpc_url, + &batcher_eth_addr, ) .await { diff --git a/core/src/smart_contract_utility.rs b/core/src/smart_contract_utility.rs index ee42b86c..d428b462 100644 --- a/core/src/smart_contract_utility.rs +++ b/core/src/smart_contract_utility.rs @@ -263,7 +263,7 @@ pub async fn validate_account( pub_input: &MinaAccountPubInputs, chain: &Chain, eth_rpc_url: &str, - batcher_eth_addr: &str, + batcher_payment_service_addr: &str, ) -> Result { let bridge_eth_addr = Address::from_str(match chain { Chain::Devnet => BRIDGE_ACCOUNT_DEVNET_ETH_ADDR, @@ -302,21 +302,23 @@ pub async fn validate_account( .. } = verification_data_commitment; - let batcher_eth_addr = Address::from_str(batcher_eth_addr) + let batcher_payment_service_addr = Address::from_str(batcher_payment_service_addr) .map_err(|err| format!("Failed to parse batcher payment service address: {err}"))?; debug!("Validating account"); - let call = contract.validate_account( + let args = AlignedArgs { proof_commitment, proving_system_aux_data_commitment, proof_generator_addr, batch_merkle_root, merkle_proof, - index_in_batch.into(), - serialized_pub_input.into(), - batcher_eth_addr, - ); + verification_data_batch_index: index_in_batch.into(), + pub_input: serialized_pub_input.into(), + batcher_payment_service_addr, + }; + + let call = contract.validate_account(args); info!( "Estimated account verification gas cost: {}",