diff --git a/.env.template b/.env.template index bbb654c2..396301cc 100644 --- a/.env.template +++ b/.env.template @@ -7,6 +7,9 @@ SAVE_PROOF=true/false # also false if other than "true" or variable were to be n # BATCHER_ETH_ADDR= # ETH_RPC_URL= # PROOF_GENERATOR_ADDR= +# BRIDGE_HOLESKY_ETH_ADDR= +# BRIDGE_ACCOUNT_HOLESKY_ETH_ADDR= +# ALIGNED_SM_HOLESKY_ETH_ADDR= ## You can choose to use a keystore or private key for your signing wallet. ## Leave empty if choosing Anvil Devnet. diff --git a/contract_deployer/src/main.rs b/contract_deployer/src/main.rs index 4c2ebf75..722912cc 100644 --- a/contract_deployer/src/main.rs +++ b/contract_deployer/src/main.rs @@ -1,4 +1,3 @@ -use aligned_sdk::core::types::Chain; use log::{debug, error, info}; use mina_bridge_core::{ mina_polling_service::query_root, @@ -7,11 +6,8 @@ use mina_bridge_core::{ MinaAccountValidationConstructorArgs, MinaBridgeConstructorArgs, SolStateHash, }, utils::{ - constants::{ - ALIGNED_SM_DEVNET_ETH_ADDR, ALIGNED_SM_HOLESKY_ETH_ADDR, BRIDGE_TRANSITION_FRONTIER_LEN, - }, - env::EnvironmentVariables, - wallet_alloy::get_wallet, + constants::BRIDGE_TRANSITION_FRONTIER_LEN, contract::get_aligned_sm_contract_addr, + env::EnvironmentVariables, wallet_alloy::get_wallet, }, }; use std::process; @@ -47,18 +43,17 @@ async fn main() { process::exit(1); }); - let aligned_sm_addr = match chain { - Chain::Devnet => ALIGNED_SM_DEVNET_ETH_ADDR, - Chain::Holesky => ALIGNED_SM_HOLESKY_ETH_ADDR, - _ => todo!(), - }; + let aligned_sm_addr = get_aligned_sm_contract_addr(&chain).unwrap_or_else(|err| { + error!("{err}"); + process::exit(1); + }); - let bridge_constructor_args = MinaBridgeConstructorArgs::new(aligned_sm_addr, root_hash) + let bridge_constructor_args = MinaBridgeConstructorArgs::new(&aligned_sm_addr, root_hash) .unwrap_or_else(|err| { error!("Failed to make constructor args for bridge contract call: {err}"); process::exit(1); }); - let account_constructor_args = MinaAccountValidationConstructorArgs::new(aligned_sm_addr) + let account_constructor_args = MinaAccountValidationConstructorArgs::new(&aligned_sm_addr) .unwrap_or_else(|err| { error!("Failed to make constructor args for account contract call: {err}"); process::exit(1); diff --git a/core/abi/MinaAccountValidation.json b/core/abi/MinaAccountValidation.json index 672b290c..599a990e 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":"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":"batcherPaymentService","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":"0x608060405234801561001057600080fd5b5060405161142d38038061142d83398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b61139a806100936000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80639029ad1514610030575b600080fd5b61004361003e366004610475565b610059565b6040516100509190610857565b60405180910390f35b6100616101a7565b36600061007160c085018561097f565b61007f9160289082906109cc565b9092509050600061009360c086018661097f565b6040516100a19291906109f6565b604080519182900390912060008054919350916001600160a01b03909116906306045a9190883590859060208b0135906100e19060608d01908d01610a06565b60608c01356100f360808e018e61097f565b8e60a001358f60e001602081019061010b9190610a35565b6040518a63ffffffff1660e01b815260040161012f99989796959493929190610a5e565b602060405180830381865afa15801561014c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101709190610aec565b9050801561018e5761018483850185611244565b9695505050505050565b604051634de35c5f60e11b815260040160405180910390fd5b604080516101a081018252600061016082018181526101808301829052825260208083018290526060838501819052808401839052608080850184905260a08086018590528651808801885285815280850186905260c087015260e086018590528651908101875284815292830184905294820183905281018290529283015261010081019190915261012081016102aa604080516101c0810190915280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526000602082018190526040909101908152602001600081526020016000815260200160008152602001600081526020016000905290565b81526020016102b76102bc565b905290565b6040518060e001604052806102cf610309565b81526020016102dc610328565b8152600060208201526040016102f0610347565b8152600060208201819052604082015260609081015290565b6040518061010001604052806008906020820280368337509192915050565b60408051606081018252600080825260208201529081016102b7610365565b6040518060a001604052806005906020820280368337509192915050565b604051806101000160405280610379610410565b8152602001610386610449565b8152604080518082018252600080825260208083018290528085019290925282518084018452818152808301829052838501528251808401845281815280830182905260608501528251808401845281815280830182905260808501528251808401845281815280830182905260a085015282518084019093528083529082015260c09091015290565b6040518060e001604052806007905b604080518082019091526000808252602082015281526020019060019003908161041f5790505090565b60408051610220810190915260006101e082018181526102008301919091528152600e6020820161041f565b60006020828403121561048757600080fd5b81356001600160401b0381111561049d57600080fd5b820161010081850312156104b057600080fd5b9392505050565b6000815180845260005b818110156104dd576020818501810151868301820152016104c1565b818111156104ef576000602083870101525b50601f01601f19169290920160200192915050565b634e487b7160e01b600052602160045260246000fd5b6005811061052a5761052a610504565b9052565b61053982825161051a565b602081015161054b602084018261051a565b50604081015161055e604084018261051a565b506060810151610571606084018261051a565b506080810151610584608084018261051a565b5060a081015161059760a084018261051a565b5060c08101516105aa60c084018261051a565b5060e08101516105c260e084018263ffffffff169052565b50610100808201516105d68285018261051a565b5050610120808201516105eb8285018261051a565b5050610140808201516106008285018261051a565b5050610160808201516106158285018261051a565b50506101808082015161062a8285018261051a565b50506101a08082015161063f8285018261051a565b50505050565b6003811061052a5761052a610504565b8060005b600f81101561063f5761067784835180518252602090810151910152565b6040939093019260209190910190600101610659565b610698828251610645565b6020808201516106aa82850182610645565b50604082810151805160008684015b60078210156106e9576106d781845180518252602090810151910152565b918501916001919091019084016106b9565b50505091820151916106ff610200860184610655565b9081015180516105c08601526020908101516105e0860152606082015180516106008701528101516106208601526080820151805161064087015281015161066086015260a082015180516106808701528101516106a086015260c082015180516106c08701528101516106e086015260e09091015180516107008601520151610720909301929092525050565b8060005b600581101561063f578151845260209384019390910190600101610791565b80516000906109609084835b60088110156107db5782518252602092830192909101906001016107bc565b50505060208301516107f161010086018261068d565b50604083015163ffffffff16610840850152606083015161081661086086018261078d565b50608083015163ffffffff1661090085015260a0830151151561092085015260c0830151610940850182905261084e828601826104b7565b95945050505050565b6020808252825180518383015201511515604082015260208201516060820152600060408301516103c08060808501526108956103e08501836104b7565b915060608501516108b160a08601826001600160401b03169052565b50608085015163ffffffff811660c08601525060a085015160e085015260c08501516101006108ee81870183805182526020908101511515910152565b60e0870151610140878101919091528188015180516001600160401b039081166101608a0152602082015163ffffffff9081166101808b0152604083015182166101a08b01526060830151166101c08a0152608090910151166101e0880152610120880151925061096361020088018461052e565b870151868503601f1901848801529150610184905083826107b0565b6000808335601e1984360301811261099657600080fd5b8301803591506001600160401b038211156109b057600080fd5b6020019150368190038213156109c557600080fd5b9250929050565b600080858511156109dc57600080fd5b838611156109e957600080fd5b5050820193919092039150565b8183823760009101908152919050565b600060208284031215610a1857600080fd5b81356bffffffffffffffffffffffff19811681146104b057600080fd5b600060208284031215610a4757600080fd5b81356001600160a01b03811681146104b057600080fd5b60006101008b83528a60208401528960408401526bffffffffffffffffffffffff19891660608401528760808401528060a0840152858184015250610120858782850137600083870182015260c0830194909452506001600160a01b039190911660e0820152601f909201601f1916909101019695505050505050565b8015158114610ae957600080fd5b50565b600060208284031215610afe57600080fd5b81516104b081610adb565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715610b4157610b41610b09565b60405290565b6040516101c081016001600160401b0381118282101715610b4157610b41610b09565b604051606081016001600160401b0381118282101715610b4157610b41610b09565b60405161010081016001600160401b0381118282101715610b4157610b41610b09565b60405160e081016001600160401b0381118282101715610b4157610b41610b09565b60405161016081016001600160401b0381118282101715610b4157610b41610b09565b8035610bff81610adb565b919050565b600060408284031215610c1657600080fd5b610c1e610b1f565b9050813581526020820135610c3281610adb565b602082015292915050565b600082601f830112610c4e57600080fd5b81356001600160401b0380821115610c6857610c68610b09565b604051601f8301601f19908116603f01168101908282118183101715610c9057610c90610b09565b81604052838152866020858801011115610ca957600080fd5b836020870160208301376000602085830101528094505050505092915050565b80356001600160401b0381168114610bff57600080fd5b803563ffffffff81168114610bff57600080fd5b600060a08284031215610d0657600080fd5b60405160a081018181106001600160401b0382111715610d2857610d28610b09565b604052905080610d3783610cc9565b8152610d4560208401610ce0565b6020820152610d5660408401610cc9565b6040820152610d6760608401610ce0565b6060820152610d7860808401610cc9565b60808201525092915050565b803560058110610bff57600080fd5b60006101c08284031215610da657600080fd5b610dae610b47565b9050610db982610d84565b8152610dc760208301610d84565b6020820152610dd860408301610d84565b6040820152610de960608301610d84565b6060820152610dfa60808301610d84565b6080820152610e0b60a08301610d84565b60a0820152610e1c60c08301610d84565b60c0820152610e2d60e08301610ce0565b60e0820152610100610e40818401610d84565b90820152610120610e52838201610d84565b90820152610140610e64838201610d84565b90820152610160610e76838201610d84565b90820152610180610e88838201610d84565b908201526101a0610e9a838201610d84565b9082015292915050565b600082601f830112610eb557600080fd5b6040516101008082018281106001600160401b0382111715610ed957610ed9610b09565b60405283018185821115610eec57600080fd5b845b82811015610f06578035825260209182019101610eee565b509195945050505050565b803560038110610bff57600080fd5b600060408284031215610f3257600080fd5b610f3a610b1f565b9050813581526020820135602082015292915050565b600082601f830112610f6157600080fd5b6040805160e081018181106001600160401b0382111715610f8457610f84610b09565b8252806101c0850186811115610f9957600080fd5b855b81811015610fbc57610fad8882610f20565b83526020909201918401610f9b565b50919695505050505050565b600082601f830112610fd957600080fd5b604080516101e081018181106001600160401b0382111715610ffd57610ffd610b09565b8252806103c085018681111561101257600080fd5b855b81811015610fbc576110268882610f20565b83526020909201918401611014565b600081830361074081121561104957600080fd5b611051610b6a565b915061105c83610f11565b825261106a60208401610f11565b602083015261070080603f198301121561108357600080fd5b61108b610b8c565b915061109a8560408601610f50565b82526110aa856102008601610fc8565b60208301526110bd856105c08601610f20565b60408301526110d0856106008601610f20565b60608301526110e3856106408601610f20565b60808301526110f6856106808601610f20565b60a0830152611109856106c08601610f20565b60c083015261111a85828601610f20565b60e083015250604082015292915050565b600082601f83011261113c57600080fd5b60405160a081018181106001600160401b038211171561115e5761115e610b09565b6040528060a084018581111561117357600080fd5b845b81811015610f06578035835260209283019201611175565b600061096082840312156111a057600080fd5b6111a8610baf565b90506111b48383610ea4565b81526111c4836101008401611035565b60208201526111d66108408301610ce0565b60408201526111e983610860840161112b565b60608201526111fb6109008301610ce0565b608082015261120d6109208301610bf4565b60a08201526109408201356001600160401b0381111561122c57600080fd5b61123884828501610c3d565b60c08301525092915050565b60006020828403121561125657600080fd5b81356001600160401b038082111561126d57600080fd5b908301906103c0828603121561128257600080fd5b61128a610bd1565b6112948684610c04565b8152604083013560208201526060830135828111156112b257600080fd5b6112be87828601610c3d565b6040830152506112d060808401610cc9565b60608201526112e160a08401610ce0565b608082015260c083013560a08201526112fd8660e08501610c04565b60c08201526101208084013560e083015261014061131d88828701610cf4565b610100840152611331886101e08701610d93565b828401526103a085013591508382111561134a57600080fd5b6113568883870161118d565b90830152509594505050505056fea26469706673582212204ff23779a72342be093c794a101b1afa919b353d8dbd2a9bc7be76ea30eab75864736f6c634300080c0033","sourceMap":"171:3431:64:-:0;;;635:123;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;694:7;:57;;-1:-1:-1;;;;;;694:57:64;-1:-1:-1;;;;;694:57:64;;;;;;;;;;171:3431;;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:3431:64;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c80639029ad1514610030575b600080fd5b61004361003e366004610475565b610059565b6040516100509190610857565b60405180910390f35b6100616101a7565b36600061007160c085018561097f565b61007f9160289082906109cc565b9092509050600061009360c086018661097f565b6040516100a19291906109f6565b604080519182900390912060008054919350916001600160a01b03909116906306045a9190883590859060208b0135906100e19060608d01908d01610a06565b60608c01356100f360808e018e61097f565b8e60a001358f60e001602081019061010b9190610a35565b6040518a63ffffffff1660e01b815260040161012f99989796959493929190610a5e565b602060405180830381865afa15801561014c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101709190610aec565b9050801561018e5761018483850185611244565b9695505050505050565b604051634de35c5f60e11b815260040160405180910390fd5b604080516101a081018252600061016082018181526101808301829052825260208083018290526060838501819052808401839052608080850184905260a08086018590528651808801885285815280850186905260c087015260e086018590528651908101875284815292830184905294820183905281018290529283015261010081019190915261012081016102aa604080516101c0810190915280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526000602082018190526040909101908152602001600081526020016000815260200160008152602001600081526020016000905290565b81526020016102b76102bc565b905290565b6040518060e001604052806102cf610309565b81526020016102dc610328565b8152600060208201526040016102f0610347565b8152600060208201819052604082015260609081015290565b6040518061010001604052806008906020820280368337509192915050565b60408051606081018252600080825260208201529081016102b7610365565b6040518060a001604052806005906020820280368337509192915050565b604051806101000160405280610379610410565b8152602001610386610449565b8152604080518082018252600080825260208083018290528085019290925282518084018452818152808301829052838501528251808401845281815280830182905260608501528251808401845281815280830182905260808501528251808401845281815280830182905260a085015282518084019093528083529082015260c09091015290565b6040518060e001604052806007905b604080518082019091526000808252602082015281526020019060019003908161041f5790505090565b60408051610220810190915260006101e082018181526102008301919091528152600e6020820161041f565b60006020828403121561048757600080fd5b81356001600160401b0381111561049d57600080fd5b820161010081850312156104b057600080fd5b9392505050565b6000815180845260005b818110156104dd576020818501810151868301820152016104c1565b818111156104ef576000602083870101525b50601f01601f19169290920160200192915050565b634e487b7160e01b600052602160045260246000fd5b6005811061052a5761052a610504565b9052565b61053982825161051a565b602081015161054b602084018261051a565b50604081015161055e604084018261051a565b506060810151610571606084018261051a565b506080810151610584608084018261051a565b5060a081015161059760a084018261051a565b5060c08101516105aa60c084018261051a565b5060e08101516105c260e084018263ffffffff169052565b50610100808201516105d68285018261051a565b5050610120808201516105eb8285018261051a565b5050610140808201516106008285018261051a565b5050610160808201516106158285018261051a565b50506101808082015161062a8285018261051a565b50506101a08082015161063f8285018261051a565b50505050565b6003811061052a5761052a610504565b8060005b600f81101561063f5761067784835180518252602090810151910152565b6040939093019260209190910190600101610659565b610698828251610645565b6020808201516106aa82850182610645565b50604082810151805160008684015b60078210156106e9576106d781845180518252602090810151910152565b918501916001919091019084016106b9565b50505091820151916106ff610200860184610655565b9081015180516105c08601526020908101516105e0860152606082015180516106008701528101516106208601526080820151805161064087015281015161066086015260a082015180516106808701528101516106a086015260c082015180516106c08701528101516106e086015260e09091015180516107008601520151610720909301929092525050565b8060005b600581101561063f578151845260209384019390910190600101610791565b80516000906109609084835b60088110156107db5782518252602092830192909101906001016107bc565b50505060208301516107f161010086018261068d565b50604083015163ffffffff16610840850152606083015161081661086086018261078d565b50608083015163ffffffff1661090085015260a0830151151561092085015260c0830151610940850182905261084e828601826104b7565b95945050505050565b6020808252825180518383015201511515604082015260208201516060820152600060408301516103c08060808501526108956103e08501836104b7565b915060608501516108b160a08601826001600160401b03169052565b50608085015163ffffffff811660c08601525060a085015160e085015260c08501516101006108ee81870183805182526020908101511515910152565b60e0870151610140878101919091528188015180516001600160401b039081166101608a0152602082015163ffffffff9081166101808b0152604083015182166101a08b01526060830151166101c08a0152608090910151166101e0880152610120880151925061096361020088018461052e565b870151868503601f1901848801529150610184905083826107b0565b6000808335601e1984360301811261099657600080fd5b8301803591506001600160401b038211156109b057600080fd5b6020019150368190038213156109c557600080fd5b9250929050565b600080858511156109dc57600080fd5b838611156109e957600080fd5b5050820193919092039150565b8183823760009101908152919050565b600060208284031215610a1857600080fd5b81356bffffffffffffffffffffffff19811681146104b057600080fd5b600060208284031215610a4757600080fd5b81356001600160a01b03811681146104b057600080fd5b60006101008b83528a60208401528960408401526bffffffffffffffffffffffff19891660608401528760808401528060a0840152858184015250610120858782850137600083870182015260c0830194909452506001600160a01b039190911660e0820152601f909201601f1916909101019695505050505050565b8015158114610ae957600080fd5b50565b600060208284031215610afe57600080fd5b81516104b081610adb565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715610b4157610b41610b09565b60405290565b6040516101c081016001600160401b0381118282101715610b4157610b41610b09565b604051606081016001600160401b0381118282101715610b4157610b41610b09565b60405161010081016001600160401b0381118282101715610b4157610b41610b09565b60405160e081016001600160401b0381118282101715610b4157610b41610b09565b60405161016081016001600160401b0381118282101715610b4157610b41610b09565b8035610bff81610adb565b919050565b600060408284031215610c1657600080fd5b610c1e610b1f565b9050813581526020820135610c3281610adb565b602082015292915050565b600082601f830112610c4e57600080fd5b81356001600160401b0380821115610c6857610c68610b09565b604051601f8301601f19908116603f01168101908282118183101715610c9057610c90610b09565b81604052838152866020858801011115610ca957600080fd5b836020870160208301376000602085830101528094505050505092915050565b80356001600160401b0381168114610bff57600080fd5b803563ffffffff81168114610bff57600080fd5b600060a08284031215610d0657600080fd5b60405160a081018181106001600160401b0382111715610d2857610d28610b09565b604052905080610d3783610cc9565b8152610d4560208401610ce0565b6020820152610d5660408401610cc9565b6040820152610d6760608401610ce0565b6060820152610d7860808401610cc9565b60808201525092915050565b803560058110610bff57600080fd5b60006101c08284031215610da657600080fd5b610dae610b47565b9050610db982610d84565b8152610dc760208301610d84565b6020820152610dd860408301610d84565b6040820152610de960608301610d84565b6060820152610dfa60808301610d84565b6080820152610e0b60a08301610d84565b60a0820152610e1c60c08301610d84565b60c0820152610e2d60e08301610ce0565b60e0820152610100610e40818401610d84565b90820152610120610e52838201610d84565b90820152610140610e64838201610d84565b90820152610160610e76838201610d84565b90820152610180610e88838201610d84565b908201526101a0610e9a838201610d84565b9082015292915050565b600082601f830112610eb557600080fd5b6040516101008082018281106001600160401b0382111715610ed957610ed9610b09565b60405283018185821115610eec57600080fd5b845b82811015610f06578035825260209182019101610eee565b509195945050505050565b803560038110610bff57600080fd5b600060408284031215610f3257600080fd5b610f3a610b1f565b9050813581526020820135602082015292915050565b600082601f830112610f6157600080fd5b6040805160e081018181106001600160401b0382111715610f8457610f84610b09565b8252806101c0850186811115610f9957600080fd5b855b81811015610fbc57610fad8882610f20565b83526020909201918401610f9b565b50919695505050505050565b600082601f830112610fd957600080fd5b604080516101e081018181106001600160401b0382111715610ffd57610ffd610b09565b8252806103c085018681111561101257600080fd5b855b81811015610fbc576110268882610f20565b83526020909201918401611014565b600081830361074081121561104957600080fd5b611051610b6a565b915061105c83610f11565b825261106a60208401610f11565b602083015261070080603f198301121561108357600080fd5b61108b610b8c565b915061109a8560408601610f50565b82526110aa856102008601610fc8565b60208301526110bd856105c08601610f20565b60408301526110d0856106008601610f20565b60608301526110e3856106408601610f20565b60808301526110f6856106808601610f20565b60a0830152611109856106c08601610f20565b60c083015261111a85828601610f20565b60e083015250604082015292915050565b600082601f83011261113c57600080fd5b60405160a081018181106001600160401b038211171561115e5761115e610b09565b6040528060a084018581111561117357600080fd5b845b81811015610f06578035835260209283019201611175565b600061096082840312156111a057600080fd5b6111a8610baf565b90506111b48383610ea4565b81526111c4836101008401611035565b60208201526111d66108408301610ce0565b60408201526111e983610860840161112b565b60608201526111fb6109008301610ce0565b608082015261120d6109208301610bf4565b60a08201526109408201356001600160401b0381111561122c57600080fd5b61123884828501610c3d565b60c08301525092915050565b60006020828403121561125657600080fd5b81356001600160401b038082111561126d57600080fd5b908301906103c0828603121561128257600080fd5b61128a610bd1565b6112948684610c04565b8152604083013560208201526060830135828111156112b257600080fd5b6112be87828601610c3d565b6040830152506112d060808401610cc9565b60608201526112e160a08401610ce0565b608082015260c083013560a08201526112fd8660e08501610c04565b60c08201526101208084013560e083015261014061131d88828701610cf4565b610100840152611331886101e08701610d93565b828401526103a085013591508382111561134a57600080fd5b6113568883870161118d565b90830152509594505050505056fea26469706673582212204ff23779a72342be093c794a101b1afa919b353d8dbd2a9bc7be76ea30eab75864736f6c634300080c0033","sourceMap":"171:3431:64:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;764:763;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;839:14;;:::i;:::-;865:29;;897:13;;;;:4;:13;:::i;:::-;:22;;911:6;;897:22;;;:::i;:::-;865:54;;-1:-1:-1;865:54:64;-1:-1:-1;930:26:64;969:13;;;;:4;:13;:::i;:::-;959:24;;;;;;;:::i;:::-;;;;;;;;;;;994:22;1019:7;;959:24;;-1:-1:-1;994:22:64;-1:-1:-1;;;;;1019:7:64;;;;:28;;1061:20;;;959:24;;1127:35;;;;;1176:23;;;;;;;;;:::i;:::-;1213:20;;;;1247:16;;;;1213:4;1247:16;:::i;:::-;1277:4;:31;;;1322:4;:26;;;;;;;;;;:::i;:::-;1019:339;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;994:364;;1373:17;1369:152;;;1413:37;;;;1424:14;1413:37;:::i;:::-;1406:44;764:763;-1:-1:-1;;;;;;764:763:64:o;1369:152::-;1488:22;;-1:-1:-1;;;1488:22:64;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:392:67;105:6;158:2;146:9;137:7;133:23;129:32;126:52;;;174:1;171;164:12;126:52;214:9;201:23;-1:-1:-1;;;;;239:6:67;236:30;233:50;;;279:1;276;269:12;233:50;302:22;;358:3;340:16;;;336:26;333:46;;;375:1;372;365:12;333:46;398:2;14:392;-1:-1:-1;;;14:392:67:o;686:472::-;728:3;766:5;760:12;793:6;788:3;781:19;818:1;828:162;842:6;839:1;836:13;828:162;;;904:4;960:13;;;956:22;;950:29;932:11;;;928:20;;921:59;857:12;828:162;;;1008:6;1005:1;1002:13;999:87;;;1074:1;1067:4;1058:6;1053:3;1049:16;1045:27;1038:38;999:87;-1:-1:-1;1140:2:67;1119:15;-1:-1:-1;;1115:29:67;1106:39;;;;1147:4;1102:50;;686:472;-1:-1:-1;;686:472:67:o;1841:127::-;1902:10;1897:3;1893:20;1890:1;1883:31;1933:4;1930:1;1923:15;1957:4;1954:1;1947:15;1973:143;2057:1;2050:5;2047:12;2037:46;;2063:18;;:::i;:::-;2092;;1973:143::o;2121:1834::-;2186:47;2229:3;2221:5;2215:12;2186:47;:::i;:::-;2279:4;2272:5;2268:16;2262:23;2294:58;2346:4;2341:3;2337:14;2323:12;2294:58;:::i;:::-;;2400:4;2393:5;2389:16;2383:23;2415:60;2469:4;2464:3;2460:14;2444;2415:60;:::i;:::-;;2523:4;2516:5;2512:16;2506:23;2538:60;2592:4;2587:3;2583:14;2567;2538:60;:::i;:::-;;2646:4;2639:5;2635:16;2629:23;2661:60;2715:4;2710:3;2706:14;2690;2661:60;:::i;:::-;;2769:4;2762:5;2758:16;2752:23;2784:60;2838:4;2833:3;2829:14;2813;2784:60;:::i;:::-;;2892:4;2885:5;2881:16;2875:23;2907:60;2961:4;2956:3;2952:14;2936;2907:60;:::i;:::-;;3015:4;3008:5;3004:16;2998:23;3030:49;3073:4;3068:3;3064:14;3048;1346:10;1335:22;1323:35;;1270:94;3030:49;;3098:6;3152:2;3145:5;3141:14;3135:21;3165:58;3219:2;3214:3;3210:12;3194:14;3165:58;:::i;:::-;;;3242:6;3296:2;3289:5;3285:14;3279:21;3309:58;3363:2;3358:3;3354:12;3338:14;3309:58;:::i;:::-;;;3386:6;3440:2;3433:5;3429:14;3423:21;3453:58;3507:2;3502:3;3498:12;3482:14;3453:58;:::i;:::-;;;3530:6;3585:2;3578:5;3574:14;3568:21;3598:59;3653:2;3648:3;3644:12;3627:15;3598:59;:::i;:::-;;;3676:6;3731:2;3724:5;3720:14;3714:21;3744:59;3799:2;3794:3;3790:12;3773:15;3744:59;:::i;:::-;;;3822:6;3877:2;3870:5;3866:14;3860:21;3890:59;3945:2;3940:3;3936:12;3919:15;3890:59;:::i;:::-;;;2121:1834;;:::o;3960:145::-;4046:1;4039:5;4036:12;4026:46;;4052:18;;:::i;4266:335::-;4369:5;4392:1;4402:193;4416:4;4413:1;4410:11;4402:193;;;4463:48;4507:3;4498:6;4492:13;4186:12;;4174:25;;4248:4;4237:16;;;4231:23;4215:14;;4208:47;4110:151;4463:48;4540:4;4531:14;;;;;4580:4;4568:17;;;;;4436:1;4429:9;4402:193;;4606:1627;4675:49;4720:3;4712:5;4706:12;4675:49;:::i;:::-;4743:4;4793:2;4786:5;4782:14;4776:21;4806:58;4860:2;4855:3;4851:12;4837;4806:58;:::i;:::-;-1:-1:-1;4883:4:67;4924:14;;;4918:21;4989;;5097:1;4958:12;;;5107:195;5121:4;5118:1;5115:11;5107:195;;;5168:50;5212:5;5203:6;5197:13;4186:12;;4174:25;;4248:4;4237:16;;;4231:23;4215:14;;4208:47;4110:151;5168:50;5277:15;;;;5141:1;5134:9;;;;;5240:14;;5107:195;;;-1:-1:-1;;;5339:23:67;;;5333:30;;5372:65;5432:3;5423:13;;5333:30;5372:65;:::i;:::-;5474:23;;;5468:30;4186:12;;5561:4;5552:14;;4174:25;4248:4;4237:16;;;4231:23;4215:14;;;4208:47;5624:4;5604:25;;5598:32;4186:12;;5693:4;5684:14;;4174:25;4237:16;;4231:23;4215:14;;;4208:47;5756:4;5736:25;;5730:32;4186:12;;5825:4;5816:14;;4174:25;4237:16;;4231:23;4215:14;;;4208:47;5888:4;5868:25;;5862:32;4186:12;;5957:4;5948:14;;4174:25;4237:16;;4231:23;4215:14;;;4208:47;6020:4;6000:25;;5994:32;4186:12;;6089:4;6080:14;;4174:25;4237:16;;4231:23;4215:14;;;4208:47;6152:4;6132:25;;;6126:32;4186:12;;6221:4;6212:14;;4174:25;4237:16;4231:23;4215:14;;;;4208:47;;;;-1:-1:-1;;4606:1627:67:o;6238:326::-;6331:5;6354:1;6364:194;6378:4;6375:1;6372:11;6364:194;;;6437:13;;6425:26;;6474:4;6498:12;;;;6533:15;;;;6398:1;6391:9;6364:194;;6569:1166;6677:12;;6624:3;;6652:6;;6711:3;6624;6788:200;6802:4;6799:1;6796:11;6788:200;;;6863:13;;6849:28;;6900:4;6963:15;;;;6926:14;;;;6822:1;6815:9;6788:200;;;6792:3;;;7034:4;7027:5;7023:16;7017:23;7049:65;7106:6;7101:3;7097:16;7083:12;7049:65;:::i;:::-;-1:-1:-1;7162:4:67;7151:16;;7145:23;1346:10;1335:22;7220:6;7211:16;;1323:35;7276:4;7265:16;;7259:23;7291:58;7341:6;7332:16;;7259:23;7291:58;:::i;:::-;-1:-1:-1;7397:4:67;7386:16;;7380:23;1346:10;1335:22;7455:6;7446:16;;1323:35;7511:4;7500:16;;7494:23;481:13;474:21;7567:6;7558:16;;462:34;7623:4;7612:16;;7606:23;7654:6;7645:16;;7638:28;;;7682:47;7716:12;;;7606:23;7682:47;:::i;:::-;7675:54;6569:1166;-1:-1:-1;;;;;6569:1166:67:o;7740:1526::-;7921:2;7903:21;;;7969:13;;590:12;;7984:18;;;578:25;655:16;649:23;642:31;635:39;619:14;;;612:63;8057:2;8049:6;8045:15;8039:22;8034:2;8023:9;8019:18;8012:50;7884:4;8109;8101:6;8097:17;8091:24;8134:6;8177:2;8171:3;8160:9;8156:19;8149:31;8203:52;8250:3;8239:9;8235:19;8221:12;8203:52;:::i;:::-;8189:66;;8304:2;8296:6;8292:15;8286:22;8317:54;8366:3;8355:9;8351:19;8335:14;-1:-1:-1;;;;;1228:30:67;1216:43;;1163:102;8317:54;-1:-1:-1;8420:3:67;8408:16;;8402:23;1346:10;1335:22;;8483:3;8468:19;;1323:35;8434:54;8543:3;8535:6;8531:16;8525:23;8519:3;8508:9;8504:19;8497:52;8598:3;8590:6;8586:16;8580:23;8622:3;8634:71;8701:2;8690:9;8686:18;8670:14;590:12;;578:25;;666:4;655:16;;;649:23;642:31;635:39;619:14;;612:63;507:174;8634:71;8742:3;8730:16;;8724:23;8766:3;8785:18;;;8778:30;;;;8845:15;;;8839:22;1482:12;;-1:-1:-1;;;;;1478:21:67;;;8926:3;8911:19;;1466:34;1546:4;1535:16;;1529:23;1571:10;1613:21;;;1597:14;;;1590:45;1688:4;1677:16;;1671:23;1667:32;;1651:14;;;1644:56;1753:4;1742:16;;1736:23;1732:32;1716:14;;;1709:56;1818:4;1807:16;;;1801:23;1797:32;1781:14;;;1774:56;8980:6;8968:19;;8962:26;;-1:-1:-1;8997:66:67;9058:3;9043:19;;8962:26;8997:66;:::i;:::-;9100:15;;9094:22;9156;;;-1:-1:-1;;9152:36:67;9132:18;;;9125:64;9094:22;-1:-1:-1;9206:54:67;;-1:-1:-1;9160:6:67;9094:22;9206:54;:::i;9271:521::-;9348:4;9354:6;9414:11;9401:25;9508:2;9504:7;9493:8;9477:14;9473:29;9469:43;9449:18;9445:68;9435:96;;9527:1;9524;9517:12;9435:96;9554:33;;9606:20;;;-1:-1:-1;;;;;;9638:30:67;;9635:50;;;9681:1;9678;9671:12;9635:50;9714:4;9702:17;;-1:-1:-1;9745:14:67;9741:27;;;9731:38;;9728:58;;;9782:1;9779;9772:12;9728:58;9271:521;;;;;:::o;9797:331::-;9902:9;9913;9955:8;9943:10;9940:24;9937:44;;;9977:1;9974;9967:12;9937:44;10006:6;9996:8;9993:20;9990:40;;;10026:1;10023;10016:12;9990:40;-1:-1:-1;;10052:23:67;;;10097:25;;;;;-1:-1:-1;9797:331:67:o;10133:271::-;10316:6;10308;10303:3;10290:33;10272:3;10342:16;;10367:13;;;10342:16;10133:271;-1:-1:-1;10133:271:67:o;10409:298::-;10468:6;10521:2;10509:9;10500:7;10496:23;10492:32;10489:52;;;10537:1;10534;10527:12;10489:52;10563:23;;-1:-1:-1;;10615:43:67;;10605:54;;10595:82;;10673:1;10670;10663:12;10712:286;10771:6;10824:2;10812:9;10803:7;10799:23;10795:32;10792:52;;;10840:1;10837;10830:12;10792:52;10866:23;;-1:-1:-1;;;;;10918:31:67;;10908:42;;10898:70;;10964:1;10961;10954:12;11003:997;11319:4;11348:3;11378:6;11367:9;11360:25;11421:6;11416:2;11405:9;11401:18;11394:34;11464:6;11459:2;11448:9;11444:18;11437:34;11523:26;11519:31;11511:6;11507:44;11502:2;11491:9;11487:18;11480:72;11589:6;11583:3;11572:9;11568:19;11561:35;11633:2;11627:3;11616:9;11612:19;11605:31;11672:6;11667:2;11656:9;11652:18;11645:34;;11698:3;11751:6;11743;11738:2;11727:9;11723:18;11710:48;11807:1;11778:22;;;11774:31;;11767:42;11911:3;11896:19;;11889:35;;;;-1:-1:-1;;;;;;11961:32:67;;;;11955:3;11940:19;;11933:61;11870:2;11849:15;;;-1:-1:-1;;11845:29:67;11830:45;;;11826:54;;11003:997;-1:-1:-1;;;;;;11003:997:67:o;12005:118::-;12091:5;12084:13;12077:21;12070:5;12067:32;12057:60;;12113:1;12110;12103:12;12057:60;12005:118;:::o;12128:245::-;12195:6;12248:2;12236:9;12227:7;12223:23;12219:32;12216:52;;;12264:1;12261;12254:12;12216:52;12296:9;12290:16;12315:28;12337:5;12315:28;:::i;12378:127::-;12439:10;12434:3;12430:20;12427:1;12420:31;12470:4;12467:1;12460:15;12494:4;12491:1;12484:15;12510:257;12582:4;12576:11;;;12614:17;;-1:-1:-1;;;;;12646:34:67;;12682:22;;;12643:62;12640:88;;;12708:18;;:::i;:::-;12744:4;12737:24;12510:257;:::o;12772:250::-;12839:2;12833:9;12881:6;12869:19;;-1:-1:-1;;;;;12903:34:67;;12939:22;;;12900:62;12897:88;;;12965:18;;:::i;13027:253::-;13099:2;13093:9;13141:4;13129:17;;-1:-1:-1;;;;;13161:34:67;;13197:22;;;13158:62;13155:88;;;13223:18;;:::i;13285:255::-;13357:2;13351:9;13399:6;13387:19;;-1:-1:-1;;;;;13421:34:67;;13457:22;;;13418:62;13415:88;;;13483:18;;:::i;13545:253::-;13617:2;13611:9;13659:4;13647:17;;-1:-1:-1;;;;;13679:34:67;;13715:22;;;13676:62;13673:88;;;13741:18;;:::i;13803:255::-;13875:2;13869:9;13917:6;13905:19;;-1:-1:-1;;;;;13939:34:67;;13975:22;;;13936:62;13933:88;;;14001:18;;:::i;14063:128::-;14128:20;;14157:28;14128:20;14157:28;:::i;:::-;14063:128;;;:::o;14196:362::-;14260:5;14308:4;14296:9;14291:3;14287:19;14283:30;14280:50;;;14326:1;14323;14316:12;14280:50;14348:22;;:::i;:::-;14339:31;;14406:9;14393:23;14386:5;14379:38;14469:2;14458:9;14454:18;14441:32;14482:30;14504:7;14482:30;:::i;:::-;14539:2;14528:14;;14521:31;14532:5;14196:362;-1:-1:-1;;14196:362:67:o;14563:719::-;14606:5;14659:3;14652:4;14644:6;14640:17;14636:27;14626:55;;14677:1;14674;14667:12;14626:55;14713:6;14700:20;-1:-1:-1;;;;;14776:2:67;14772;14769:10;14766:36;;;14782:18;;:::i;:::-;14857:2;14851:9;14825:2;14911:13;;-1:-1:-1;;14907:22:67;;;14931:2;14903:31;14899:40;14887:53;;;14955:18;;;14975:22;;;14952:46;14949:72;;;15001:18;;:::i;:::-;15041:10;15037:2;15030:22;15076:2;15068:6;15061:18;15122:3;15115:4;15110:2;15102:6;15098:15;15094:26;15091:35;15088:55;;;15139:1;15136;15129:12;15088:55;15203:2;15196:4;15188:6;15184:17;15177:4;15169:6;15165:17;15152:54;15250:1;15243:4;15238:2;15230:6;15226:15;15222:26;15215:37;15270:6;15261:15;;;;;;14563:719;;;;:::o;15287:171::-;15354:20;;-1:-1:-1;;;;;15403:30:67;;15393:41;;15383:69;;15448:1;15445;15438:12;15463:163;15530:20;;15590:10;15579:22;;15569:33;;15559:61;;15616:1;15613;15606:12;15631:696;15684:5;15732:4;15720:9;15715:3;15711:19;15707:30;15704:50;;;15750:1;15747;15740:12;15704:50;15783:2;15777:9;15825:4;15817:6;15813:17;15896:6;15884:10;15881:22;-1:-1:-1;;;;;15848:10:67;15845:34;15842:62;15839:88;;;15907:18;;:::i;:::-;15943:2;15936:22;15976:6;-1:-1:-1;15976:6:67;16006:28;16024:9;16006:28;:::i;:::-;15998:6;15991:44;16068:37;16101:2;16090:9;16086:18;16068:37;:::i;:::-;16063:2;16055:6;16051:15;16044:62;16139:37;16172:2;16161:9;16157:18;16139:37;:::i;:::-;16134:2;16126:6;16122:15;16115:62;16210:37;16243:2;16232:9;16228:18;16210:37;:::i;:::-;16205:2;16197:6;16193:15;16186:62;16282:38;16315:3;16304:9;16300:19;16282:38;:::i;:::-;16276:3;16268:6;16264:16;16257:64;;15631:696;;;;:::o;16332:153::-;16410:20;;16459:1;16449:12;;16439:40;;16475:1;16472;16465:12;16490:1416;16548:5;16596:6;16584:9;16579:3;16575:19;16571:32;16568:52;;;16616:1;16613;16606:12;16568:52;16638:17;;:::i;:::-;16629:26;;16678:39;16707:9;16678:39;:::i;:::-;16671:5;16664:54;16750:48;16794:2;16783:9;16779:18;16750:48;:::i;:::-;16745:2;16738:5;16734:14;16727:72;16831:48;16875:2;16864:9;16860:18;16831:48;:::i;:::-;16826:2;16819:5;16815:14;16808:72;16912:48;16956:2;16945:9;16941:18;16912:48;:::i;:::-;16907:2;16900:5;16896:14;16889:72;16994:49;17038:3;17027:9;17023:19;16994:49;:::i;:::-;16988:3;16981:5;16977:15;16970:74;17077:49;17121:3;17110:9;17106:19;17077:49;:::i;:::-;17071:3;17064:5;17060:15;17053:74;17160:49;17204:3;17193:9;17189:19;17160:49;:::i;:::-;17154:3;17147:5;17143:15;17136:74;17243:38;17276:3;17265:9;17261:19;17243:38;:::i;:::-;17237:3;17230:5;17226:15;17219:63;17301:3;17336:48;17380:2;17369:9;17365:18;17336:48;:::i;:::-;17320:14;;;17313:72;17404:3;17439:48;17468:18;;;17439:48;:::i;:::-;17423:14;;;17416:72;17507:3;17542:48;17571:18;;;17542:48;:::i;:::-;17526:14;;;17519:72;17610:3;17645:48;17674:18;;;17645:48;:::i;:::-;17629:14;;;17622:72;17713:3;17748:48;17777:18;;;17748:48;:::i;:::-;17732:14;;;17725:72;17816:3;17851:48;17880:18;;;17851:48;:::i;:::-;17835:14;;;17828:72;17839:5;16490:1416;-1:-1:-1;;16490:1416:67:o;17911:668::-;17961:5;18014:3;18007:4;17999:6;17995:17;17991:27;17981:55;;18032:1;18029;18022:12;17981:55;18065:2;18059:9;18087:3;18129:2;18121:6;18117:15;18198:6;18186:10;18183:22;-1:-1:-1;;;;;18150:10:67;18147:34;18144:62;18141:88;;;18209:18;;:::i;:::-;18245:2;18238:22;18309:15;;18280:6;18336:15;;;18333:35;;;18364:1;18361;18354:12;18333:35;18388:6;18403:146;18419:6;18414:3;18411:15;18403:146;;;18487:17;;18475:30;;18534:4;18525:14;;;;18436;18403:146;;;-1:-1:-1;18567:6:67;;17911:668;-1:-1:-1;;;;;17911:668:67:o;18584:155::-;18664:20;;18713:1;18703:12;;18693:40;;18729:1;18726;18719:12;18744:285;18801:5;18849:4;18837:9;18832:3;18828:19;18824:30;18821:50;;;18867:1;18864;18857:12;18821:50;18889:22;;:::i;:::-;18880:31;;18947:9;18934:23;18927:5;18920:38;19018:2;19007:9;19003:18;18990:32;18985:2;18978:5;18974:14;18967:56;18744:285;;;;:::o;19034:698::-;19094:5;19147:3;19140:4;19132:6;19128:17;19124:27;19114:55;;19165:1;19162;19155:12;19114:55;19188:2;19219;19213:9;19261:3;19253:6;19249:16;19331:6;19319:10;19316:22;-1:-1:-1;;;;;19283:10:67;19280:34;19277:62;19274:88;;;19342:18;;:::i;:::-;19371:22;;19413:6;19454:3;19442:16;;19470:15;;;19467:35;;;19498:1;19495;19488:12;19467:35;19522:6;19537:165;19553:6;19548:3;19545:15;19537:165;;;19619:38;19653:3;19648;19619:38;:::i;:::-;19607:51;;19687:4;19678:14;;;;19570:12;;19537:165;;;-1:-1:-1;19720:6:67;;19034:698;-1:-1:-1;;;;;;19034:698:67:o;19737:720::-;19819:5;19872:3;19865:4;19857:6;19853:17;19849:27;19839:55;;19890:1;19887;19880:12;19839:55;19913:2;19944;19938:9;19986:3;19978:6;19974:16;20056:6;20044:10;20041:22;-1:-1:-1;;;;;20008:10:67;20005:34;20002:62;19999:88;;;20067:18;;:::i;:::-;20096:22;;20138:6;20179:3;20167:16;;20195:15;;;20192:35;;;20223:1;20220;20213:12;20192:35;20247:6;20262:165;20278:6;20273:3;20270:15;20262:165;;;20344:38;20378:3;20373;20344:38;:::i;:::-;20332:51;;20412:4;20403:14;;;;20295:12;;20262:165;;20462:1264;20524:5;20563:9;20558:3;20554:19;20593:6;20589:2;20585:15;20582:35;;;20613:1;20610;20603:12;20582:35;20635:22;;:::i;:::-;20626:31;;20680:41;20711:9;20680:41;:::i;:::-;20673:5;20666:56;20754:50;20800:2;20789:9;20785:18;20754:50;:::i;:::-;20749:2;20742:5;20738:14;20731:74;20824:6;20864:2;20858;20854:7;20850:2;20846:16;20842:25;20839:45;;;20880:1;20877;20870:12;20839:45;20908:22;;:::i;:::-;20893:37;;20955:59;21010:3;21005:2;20994:9;20990:18;20955:59;:::i;:::-;20946:7;20939:76;21049:82;21127:3;21121;21110:9;21106:19;21049:82;:::i;:::-;21044:2;21035:7;21031:16;21024:108;21166:55;21217:3;21210:4;21199:9;21195:20;21166:55;:::i;:::-;21161:2;21152:7;21148:16;21141:81;21258:55;21309:3;21302:4;21291:9;21287:20;21258:55;:::i;:::-;21251:4;21242:7;21238:18;21231:83;21350:55;21401:3;21394:4;21383:9;21379:20;21350:55;:::i;:::-;21343:4;21334:7;21330:18;21323:83;21442:55;21493:3;21486:4;21475:9;21471:20;21442:55;:::i;:::-;21435:4;21426:7;21422:18;21415:83;21534:55;21585:3;21578:4;21567:9;21563:20;21534:55;:::i;:::-;21527:4;21518:7;21514:18;21507:83;21626:53;21675:3;21670:2;21659:9;21655:18;21626:53;:::i;:::-;21619:4;21606:18;;21599:81;-1:-1:-1;21707:2:67;21696:14;;21689:31;21700:5;20462:1264;-1:-1:-1;;20462:1264:67:o;21731:659::-;21792:5;21845:3;21838:4;21830:6;21826:17;21822:27;21812:55;;21863:1;21860;21853:12;21812:55;21896:2;21890:9;21938:3;21930:6;21926:16;22008:6;21996:10;21993:22;-1:-1:-1;;;;;21960:10:67;21957:34;21954:62;21951:88;;;22019:18;;:::i;:::-;22055:2;22048:22;22090:6;22131:3;22119:16;;22147:15;;;22144:35;;;22175:1;22172;22165:12;22144:35;22199:6;22214:146;22230:6;22225:3;22222:15;22214:146;;;22298:17;;22286:30;;22345:4;22336:14;;;;22247;22214:146;;22395:849;22454:5;22502:6;22490:9;22485:3;22481:19;22477:32;22474:52;;;22522:1;22519;22512:12;22474:52;22544:22;;:::i;:::-;22535:31;;22589:40;22625:3;22614:9;22589:40;:::i;:::-;22582:5;22575:55;22664:59;22719:3;22713;22702:9;22698:19;22664:59;:::i;:::-;22657:4;22650:5;22646:16;22639:85;22758:39;22791:4;22780:9;22776:20;22758:39;:::i;:::-;22751:4;22744:5;22740:16;22733:65;22832:62;22890:3;22883:4;22872:9;22868:20;22832:62;:::i;:::-;22825:4;22818:5;22814:16;22807:88;22929:39;22962:4;22951:9;22947:20;22929:39;:::i;:::-;22922:4;22915:5;22911:16;22904:65;23003:37;23034:4;23023:9;23019:20;23003:37;:::i;:::-;22996:4;22989:5;22985:16;22978:63;23092:4;23081:9;23077:20;23064:34;-1:-1:-1;;;;;23113:6:67;23110:30;23107:50;;;23153:1;23150;23143:12;23107:50;23191:46;23233:3;23224:6;23213:9;23209:22;23191:46;:::i;:::-;23184:4;23177:5;23173:16;23166:72;;22395:849;;;;:::o;23249:1499::-;23334:6;23387:2;23375:9;23366:7;23362:23;23358:32;23355:52;;;23403:1;23400;23393:12;23355:52;23443:9;23430:23;-1:-1:-1;;;;;23513:2:67;23505:6;23502:14;23499:34;;;23529:1;23526;23519:12;23499:34;23552:22;;;;23608:6;23590:16;;;23586:29;23583:49;;;23628:1;23625;23618:12;23583:49;23654:22;;:::i;:::-;23699:48;23739:7;23735:2;23699:48;:::i;:::-;23692:5;23685:63;23801:2;23797;23793:11;23780:25;23775:2;23768:5;23764:14;23757:49;23852:2;23848;23844:11;23831:25;23881:2;23871:8;23868:16;23865:36;;;23897:1;23894;23887:12;23865:36;23933:45;23970:7;23959:8;23955:2;23951:17;23933:45;:::i;:::-;23928:2;23921:5;23917:14;23910:69;;24011:31;24037:3;24033:2;24029:12;24011:31;:::i;:::-;24006:2;23999:5;23995:14;23988:55;24076:31;24102:3;24098:2;24094:12;24076:31;:::i;:::-;24070:3;24063:5;24059:15;24052:56;24162:3;24158:2;24154:12;24141:26;24135:3;24128:5;24124:15;24117:51;24201:58;24251:7;24245:3;24241:2;24237:12;24201:58;:::i;:::-;24195:3;24188:5;24184:15;24177:83;24279:3;24336:2;24332;24328:11;24315:25;24309:3;24302:5;24298:15;24291:50;24360:3;24399:46;24437:7;24432:2;24428;24424:11;24399:46;:::i;:::-;24390:6;24383:5;24379:18;24372:74;24478:52;24522:7;24516:3;24512:2;24508:12;24478:52;:::i;:::-;24473:2;24466:5;24462:14;24455:76;24577:3;24573:2;24569:12;24556:26;24540:42;;24607:2;24597:8;24594:16;24591:36;;;24623:1;24620;24613:12;24591:36;24659:58;24709:7;24698:8;24694:2;24690:17;24659:58;:::i;:::-;24643:14;;;24636:82;-1:-1:-1;24647:5:67;23249:1499;-1:-1:-1;;;;;23249:1499:67: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\":\"batcherPaymentService\",\"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\":\"0x9fcd2cb923e5ef666b1b18a7e2a77d915d5bef119214dfc53cc5c6c044a87bc5\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://f32c8e9002c9a8bd9e23f63d430193e092e6b6cea56a11f839304feff3b333c7\",\"dweb:/ipfs/QmS2o2CeHebjAuviv715FsCNam95qy19qijJz4aw87YRJL\"]},\"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\":\"0x68ef2223020d5b4ce1fb2b0b016fb1f66f6b84edbb0370f96d9c1398146e9409\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://57ba2b7b58fc15cdc9eefd70ad09bf8719ff981eabb64d6fca0da049456b2541\",\"dweb:/ipfs/QmPKZJoGwmBnA4gm1C4VySZr9iscQyLd1MtFVz1RkjctzV\"]},\"src/MinaAccountValidation.sol\":{\"keccak256\":\"0x90ad6c63ccdfaf5ece74b0c5d1be2f5f055af0bac6ad875638c20ada517cad9e\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://0c6935178db6825ed5b3f223965633f264c47e5d6fc7246ed73b75ca5f963dc7\",\"dweb:/ipfs/Qmcx4xD164Z2P3zCAijesowyc5aGbY9G3iUWkP8s64h386\"]}},\"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":"batcherPaymentService","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"},"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":"0x9fcd2cb923e5ef666b1b18a7e2a77d915d5bef119214dfc53cc5c6c044a87bc5","urls":["bzz-raw://f32c8e9002c9a8bd9e23f63d430193e092e6b6cea56a11f839304feff3b333c7","dweb:/ipfs/QmS2o2CeHebjAuviv715FsCNam95qy19qijJz4aw87YRJL"],"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":"0x68ef2223020d5b4ce1fb2b0b016fb1f66f6b84edbb0370f96d9c1398146e9409","urls":["bzz-raw://57ba2b7b58fc15cdc9eefd70ad09bf8719ff981eabb64d6fca0da049456b2541","dweb:/ipfs/QmPKZJoGwmBnA4gm1C4VySZr9iscQyLd1MtFVz1RkjctzV"],"license":"UNLICENSED"},"src/MinaAccountValidation.sol":{"keccak256":"0x90ad6c63ccdfaf5ece74b0c5d1be2f5f055af0bac6ad875638c20ada517cad9e","urls":["bzz-raw://0c6935178db6825ed5b3f223965633f264c47e5d6fc7246ed73b75ca5f963dc7","dweb:/ipfs/Qmcx4xD164Z2P3zCAijesowyc5aGbY9G3iUWkP8s64h386"],"license":"UNLICENSED"}},"version":1},"ast":{"absolutePath":"src/MinaAccountValidation.sol","id":47772,"exportedSymbols":{"AccountIsNotVerified":[47516],"AlignedLayerServiceManager":[8505],"AlignedLayerServiceManagerStorage":[8527],"BLSSignatureChecker":[4846],"IAVSDirectory":[76],"IAlignedLayerServiceManager":[8603],"IPauserRegistry":[1244],"IRegistryCoordinator":[6102],"IRewardsCoordinator":[1584],"IStakeRegistry":[6512],"Merkle":[3209],"MinaAccountValidation":[47771],"Pausable":[3505],"ServiceManagerBase":[5394]},"nodeType":"SourceUnit","src":"39:3564:64","nodes":[{"id":47513,"nodeType":"PragmaDirective","src":"39:24:64","nodes":[],"literals":["solidity","^","0.8",".12"]},{"id":47514,"nodeType":"ImportDirective","src":"65:73:64","nodes":[],"absolutePath":"lib/aligned_layer/contracts/src/core/AlignedLayerServiceManager.sol","file":"aligned_layer/contracts/src/core/AlignedLayerServiceManager.sol","nameLocation":"-1:-1:-1","scope":47772,"sourceUnit":8506,"symbolAliases":[],"unitAlias":""},{"id":47516,"nodeType":"ErrorDefinition","src":"140:29:64","nodes":[],"name":"AccountIsNotVerified","nameLocation":"146:20:64","parameters":{"id":47515,"nodeType":"ParameterList","parameters":[],"src":"166:2:64"}},{"id":47771,"nodeType":"ContractDefinition","src":"171:3431:64","nodes":[{"id":47533,"nodeType":"StructDefinition","src":"208:310:64","nodes":[],"canonicalName":"MinaAccountValidation.AlignedArgs","members":[{"constant":false,"id":47518,"mutability":"mutable","name":"proofCommitment","nameLocation":"245:15:64","nodeType":"VariableDeclaration","scope":47533,"src":"237:23:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47517,"name":"bytes32","nodeType":"ElementaryTypeName","src":"237:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":47520,"mutability":"mutable","name":"provingSystemAuxDataCommitment","nameLocation":"278:30:64","nodeType":"VariableDeclaration","scope":47533,"src":"270:38:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47519,"name":"bytes32","nodeType":"ElementaryTypeName","src":"270:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":47522,"mutability":"mutable","name":"proofGeneratorAddr","nameLocation":"326:18:64","nodeType":"VariableDeclaration","scope":47533,"src":"318:26:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes20","typeString":"bytes20"},"typeName":{"id":47521,"name":"bytes20","nodeType":"ElementaryTypeName","src":"318:7:64","typeDescriptions":{"typeIdentifier":"t_bytes20","typeString":"bytes20"}},"visibility":"internal"},{"constant":false,"id":47524,"mutability":"mutable","name":"batchMerkleRoot","nameLocation":"362:15:64","nodeType":"VariableDeclaration","scope":47533,"src":"354:23:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47523,"name":"bytes32","nodeType":"ElementaryTypeName","src":"354:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":47526,"mutability":"mutable","name":"merkleProof","nameLocation":"393:11:64","nodeType":"VariableDeclaration","scope":47533,"src":"387:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"},"typeName":{"id":47525,"name":"bytes","nodeType":"ElementaryTypeName","src":"387:5:64","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":47528,"mutability":"mutable","name":"verificationDataBatchIndex","nameLocation":"422:26:64","nodeType":"VariableDeclaration","scope":47533,"src":"414:34:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":47527,"name":"uint256","nodeType":"ElementaryTypeName","src":"414:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":47530,"mutability":"mutable","name":"pubInput","nameLocation":"464:8:64","nodeType":"VariableDeclaration","scope":47533,"src":"458:14:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"},"typeName":{"id":47529,"name":"bytes","nodeType":"ElementaryTypeName","src":"458:5:64","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":47532,"mutability":"mutable","name":"batcherPaymentService","nameLocation":"490:21:64","nodeType":"VariableDeclaration","scope":47533,"src":"482:29:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":47531,"name":"address","nodeType":"ElementaryTypeName","src":"482:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"AlignedArgs","nameLocation":"215:11:64","scope":47771,"visibility":"public"},{"id":47537,"nodeType":"VariableDeclaration","src":"594:34:64","nodes":[],"constant":false,"documentation":{"id":47534,"nodeType":"StructuredDocumentation","src":"524:65:64","text":"@notice Reference to the AlignedLayerServiceManager contract."},"mutability":"mutable","name":"aligned","nameLocation":"621:7:64","scope":47771,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_AlignedLayerServiceManager_$8505","typeString":"contract AlignedLayerServiceManager"},"typeName":{"id":47536,"nodeType":"UserDefinedTypeName","pathNode":{"id":47535,"name":"AlignedLayerServiceManager","nodeType":"IdentifierPath","referencedDeclaration":8505,"src":"594:26:64"},"referencedDeclaration":8505,"src":"594:26:64","typeDescriptions":{"typeIdentifier":"t_contract$_AlignedLayerServiceManager_$8505","typeString":"contract AlignedLayerServiceManager"}},"visibility":"internal"},{"id":47549,"nodeType":"FunctionDefinition","src":"635:123:64","nodes":[],"body":{"id":47548,"nodeType":"Block","src":"684:74:64","nodes":[],"statements":[{"expression":{"id":47546,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":47542,"name":"aligned","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47537,"src":"694:7:64","typeDescriptions":{"typeIdentifier":"t_contract$_AlignedLayerServiceManager_$8505","typeString":"contract AlignedLayerServiceManager"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":47544,"name":"_alignedServiceAddr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47539,"src":"731:19:64","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":47543,"name":"AlignedLayerServiceManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8505,"src":"704:26:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_AlignedLayerServiceManager_$8505_$","typeString":"type(contract AlignedLayerServiceManager)"}},"id":47545,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"704:47:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_AlignedLayerServiceManager_$8505","typeString":"contract AlignedLayerServiceManager"}},"src":"694:57:64","typeDescriptions":{"typeIdentifier":"t_contract$_AlignedLayerServiceManager_$8505","typeString":"contract AlignedLayerServiceManager"}},"id":47547,"nodeType":"ExpressionStatement","src":"694:57:64"}]},"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":47540,"nodeType":"ParameterList","parameters":[{"constant":false,"id":47539,"mutability":"mutable","name":"_alignedServiceAddr","nameLocation":"663:19:64","nodeType":"VariableDeclaration","scope":47549,"src":"647:35:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":47538,"name":"address","nodeType":"ElementaryTypeName","src":"647:15:64","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"646:37:64"},"returnParameters":{"id":47541,"nodeType":"ParameterList","parameters":[],"src":"684:0:64"},"scope":47771,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":47610,"nodeType":"FunctionDefinition","src":"764:763:64","nodes":[],"body":{"id":47609,"nodeType":"Block","src":"855:672:64","nodes":[],"statements":[{"assignments":[47559],"declarations":[{"constant":false,"id":47559,"mutability":"mutable","name":"encodedAccount","nameLocation":"880:14:64","nodeType":"VariableDeclaration","scope":47609,"src":"865:29:64","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":47558,"name":"bytes","nodeType":"ElementaryTypeName","src":"865:5:64","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":47566,"initialValue":{"baseExpression":{"expression":{"id":47560,"name":"args","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47552,"src":"897:4:64","typeDescriptions":{"typeIdentifier":"t_struct$_AlignedArgs_$47533_calldata_ptr","typeString":"struct MinaAccountValidation.AlignedArgs calldata"}},"id":47561,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"pubInput","nodeType":"MemberAccess","referencedDeclaration":47530,"src":"897:13:64","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}},"id":47565,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexRangeAccess","src":"897:22:64","startExpression":{"commonType":{"typeIdentifier":"t_rational_40_by_1","typeString":"int_const 40"},"id":47564,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3332","id":47562,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"911:2:64","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"38","id":47563,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"916:1:64","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},"src":"911:6:64","typeDescriptions":{"typeIdentifier":"t_rational_40_by_1","typeString":"int_const 40"}},"typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr_slice","typeString":"bytes calldata slice"}},"nodeType":"VariableDeclarationStatement","src":"865:54:64"},{"assignments":[47568],"declarations":[{"constant":false,"id":47568,"mutability":"mutable","name":"pubInputCommitment","nameLocation":"938:18:64","nodeType":"VariableDeclaration","scope":47609,"src":"930:26:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47567,"name":"bytes32","nodeType":"ElementaryTypeName","src":"930:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":47573,"initialValue":{"arguments":[{"expression":{"id":47570,"name":"args","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47552,"src":"969:4:64","typeDescriptions":{"typeIdentifier":"t_struct$_AlignedArgs_$47533_calldata_ptr","typeString":"struct MinaAccountValidation.AlignedArgs calldata"}},"id":47571,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"pubInput","nodeType":"MemberAccess","referencedDeclaration":47530,"src":"969:13:64","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"id":47569,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"959:9:64","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":47572,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"959:24:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"930:53:64"},{"assignments":[47575],"declarations":[{"constant":false,"id":47575,"mutability":"mutable","name":"isAccountVerified","nameLocation":"999:17:64","nodeType":"VariableDeclaration","scope":47609,"src":"994:22:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":47574,"name":"bool","nodeType":"ElementaryTypeName","src":"994:4:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":47594,"initialValue":{"arguments":[{"expression":{"id":47578,"name":"args","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47552,"src":"1061:4:64","typeDescriptions":{"typeIdentifier":"t_struct$_AlignedArgs_$47533_calldata_ptr","typeString":"struct MinaAccountValidation.AlignedArgs calldata"}},"id":47579,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"proofCommitment","nodeType":"MemberAccess","referencedDeclaration":47518,"src":"1061:20:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":47580,"name":"pubInputCommitment","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47568,"src":"1095:18:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":47581,"name":"args","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47552,"src":"1127:4:64","typeDescriptions":{"typeIdentifier":"t_struct$_AlignedArgs_$47533_calldata_ptr","typeString":"struct MinaAccountValidation.AlignedArgs calldata"}},"id":47582,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"provingSystemAuxDataCommitment","nodeType":"MemberAccess","referencedDeclaration":47520,"src":"1127:35:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":47583,"name":"args","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47552,"src":"1176:4:64","typeDescriptions":{"typeIdentifier":"t_struct$_AlignedArgs_$47533_calldata_ptr","typeString":"struct MinaAccountValidation.AlignedArgs calldata"}},"id":47584,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"proofGeneratorAddr","nodeType":"MemberAccess","referencedDeclaration":47522,"src":"1176:23:64","typeDescriptions":{"typeIdentifier":"t_bytes20","typeString":"bytes20"}},{"expression":{"id":47585,"name":"args","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47552,"src":"1213:4:64","typeDescriptions":{"typeIdentifier":"t_struct$_AlignedArgs_$47533_calldata_ptr","typeString":"struct MinaAccountValidation.AlignedArgs calldata"}},"id":47586,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"batchMerkleRoot","nodeType":"MemberAccess","referencedDeclaration":47524,"src":"1213:20:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":47587,"name":"args","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47552,"src":"1247:4:64","typeDescriptions":{"typeIdentifier":"t_struct$_AlignedArgs_$47533_calldata_ptr","typeString":"struct MinaAccountValidation.AlignedArgs calldata"}},"id":47588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"merkleProof","nodeType":"MemberAccess","referencedDeclaration":47526,"src":"1247:16:64","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}},{"expression":{"id":47589,"name":"args","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47552,"src":"1277:4:64","typeDescriptions":{"typeIdentifier":"t_struct$_AlignedArgs_$47533_calldata_ptr","typeString":"struct MinaAccountValidation.AlignedArgs calldata"}},"id":47590,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"verificationDataBatchIndex","nodeType":"MemberAccess","referencedDeclaration":47528,"src":"1277:31:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":47591,"name":"args","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47552,"src":"1322:4:64","typeDescriptions":{"typeIdentifier":"t_struct$_AlignedArgs_$47533_calldata_ptr","typeString":"struct MinaAccountValidation.AlignedArgs calldata"}},"id":47592,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"batcherPaymentService","nodeType":"MemberAccess","referencedDeclaration":47532,"src":"1322:26:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes20","typeString":"bytes20"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":47576,"name":"aligned","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47537,"src":"1019:7:64","typeDescriptions":{"typeIdentifier":"t_contract$_AlignedLayerServiceManager_$8505","typeString":"contract AlignedLayerServiceManager"}},"id":47577,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"verifyBatchInclusion","nodeType":"MemberAccess","referencedDeclaration":8455,"src":"1019:28:64","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_bytes32_$_t_bytes32_$_t_bytes20_$_t_bytes32_$_t_bytes_memory_ptr_$_t_uint256_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,bytes32,bytes32,bytes20,bytes32,bytes memory,uint256,address) view external returns (bool)"}},"id":47593,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1019:339:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"994:364:64"},{"condition":{"id":47595,"name":"isAccountVerified","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47575,"src":"1373:17:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":47607,"nodeType":"Block","src":"1467:54:64","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":47604,"name":"AccountIsNotVerified","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47516,"src":"1488:20:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":47605,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1488:22:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":47606,"nodeType":"RevertStatement","src":"1481:29:64"}]},"id":47608,"nodeType":"IfStatement","src":"1369:152:64","trueBody":{"id":47603,"nodeType":"Block","src":"1392:69:64","statements":[{"expression":{"arguments":[{"id":47598,"name":"encodedAccount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47559,"src":"1424:14:64","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}},{"components":[{"id":47599,"name":"Account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47638,"src":"1441:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Account_$47638_storage_ptr_$","typeString":"type(struct MinaAccountValidation.Account storage pointer)"}}],"id":47600,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"1440:9:64","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Account_$47638_storage_ptr_$","typeString":"type(struct MinaAccountValidation.Account storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"},{"typeIdentifier":"t_type$_t_struct$_Account_$47638_storage_ptr_$","typeString":"type(struct MinaAccountValidation.Account storage pointer)"}],"expression":{"id":47596,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1413:3:64","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":47597,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"decode","nodeType":"MemberAccess","src":"1413:10:64","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":47601,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1413:37:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Account_$47638_memory_ptr","typeString":"struct MinaAccountValidation.Account memory"}},"functionReturnParameters":47557,"id":47602,"nodeType":"Return","src":"1406:44:64"}]}}]},"functionSelector":"9029ad15","implemented":true,"kind":"function","modifiers":[],"name":"validateAccount","nameLocation":"773:15:64","parameters":{"id":47553,"nodeType":"ParameterList","parameters":[{"constant":false,"id":47552,"mutability":"mutable","name":"args","nameLocation":"810:4:64","nodeType":"VariableDeclaration","scope":47610,"src":"789:25:64","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_struct$_AlignedArgs_$47533_calldata_ptr","typeString":"struct MinaAccountValidation.AlignedArgs"},"typeName":{"id":47551,"nodeType":"UserDefinedTypeName","pathNode":{"id":47550,"name":"AlignedArgs","nodeType":"IdentifierPath","referencedDeclaration":47533,"src":"789:11:64"},"referencedDeclaration":47533,"src":"789:11:64","typeDescriptions":{"typeIdentifier":"t_struct$_AlignedArgs_$47533_storage_ptr","typeString":"struct MinaAccountValidation.AlignedArgs"}},"visibility":"internal"}],"src":"788:27:64"},"returnParameters":{"id":47557,"nodeType":"ParameterList","parameters":[{"constant":false,"id":47556,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":47610,"src":"839:14:64","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Account_$47638_memory_ptr","typeString":"struct MinaAccountValidation.Account"},"typeName":{"id":47555,"nodeType":"UserDefinedTypeName","pathNode":{"id":47554,"name":"Account","nodeType":"IdentifierPath","referencedDeclaration":47638,"src":"839:7:64"},"referencedDeclaration":47638,"src":"839:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_Account_$47638_storage_ptr","typeString":"struct MinaAccountValidation.Account"}},"visibility":"internal"}],"src":"838:16:64"},"scope":47771,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":47638,"nodeType":"StructDefinition","src":"1533:346:64","nodes":[],"canonicalName":"MinaAccountValidation.Account","members":[{"constant":false,"id":47613,"mutability":"mutable","name":"publicKey","nameLocation":"1576:9:64","nodeType":"VariableDeclaration","scope":47638,"src":"1558:27:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CompressedECPoint_$47643_storage_ptr","typeString":"struct MinaAccountValidation.CompressedECPoint"},"typeName":{"id":47612,"nodeType":"UserDefinedTypeName","pathNode":{"id":47611,"name":"CompressedECPoint","nodeType":"IdentifierPath","referencedDeclaration":47643,"src":"1558:17:64"},"referencedDeclaration":47643,"src":"1558:17:64","typeDescriptions":{"typeIdentifier":"t_struct$_CompressedECPoint_$47643_storage_ptr","typeString":"struct MinaAccountValidation.CompressedECPoint"}},"visibility":"internal"},{"constant":false,"id":47615,"mutability":"mutable","name":"tokenIdKeyHash","nameLocation":"1603:14:64","nodeType":"VariableDeclaration","scope":47638,"src":"1595:22:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47614,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1595:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":47617,"mutability":"mutable","name":"tokenSymbol","nameLocation":"1634:11:64","nodeType":"VariableDeclaration","scope":47638,"src":"1627:18:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":47616,"name":"string","nodeType":"ElementaryTypeName","src":"1627:6:64","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":47619,"mutability":"mutable","name":"balance","nameLocation":"1662:7:64","nodeType":"VariableDeclaration","scope":47638,"src":"1655:14:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":47618,"name":"uint64","nodeType":"ElementaryTypeName","src":"1655:6:64","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"},{"constant":false,"id":47621,"mutability":"mutable","name":"nonce","nameLocation":"1686:5:64","nodeType":"VariableDeclaration","scope":47638,"src":"1679:12:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":47620,"name":"uint32","nodeType":"ElementaryTypeName","src":"1679:6:64","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"},{"constant":false,"id":47623,"mutability":"mutable","name":"receiptChainHash","nameLocation":"1709:16:64","nodeType":"VariableDeclaration","scope":47638,"src":"1701:24:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47622,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1701:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":47626,"mutability":"mutable","name":"delegate","nameLocation":"1753:8:64","nodeType":"VariableDeclaration","scope":47638,"src":"1735:26:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CompressedECPoint_$47643_storage_ptr","typeString":"struct MinaAccountValidation.CompressedECPoint"},"typeName":{"id":47625,"nodeType":"UserDefinedTypeName","pathNode":{"id":47624,"name":"CompressedECPoint","nodeType":"IdentifierPath","referencedDeclaration":47643,"src":"1735:17:64"},"referencedDeclaration":47643,"src":"1735:17:64","typeDescriptions":{"typeIdentifier":"t_struct$_CompressedECPoint_$47643_storage_ptr","typeString":"struct MinaAccountValidation.CompressedECPoint"}},"visibility":"internal"},{"constant":false,"id":47628,"mutability":"mutable","name":"votingFor","nameLocation":"1779:9:64","nodeType":"VariableDeclaration","scope":47638,"src":"1771:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47627,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1771:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":47631,"mutability":"mutable","name":"timing","nameLocation":"1805:6:64","nodeType":"VariableDeclaration","scope":47638,"src":"1798:13:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Timing_$47654_storage_ptr","typeString":"struct MinaAccountValidation.Timing"},"typeName":{"id":47630,"nodeType":"UserDefinedTypeName","pathNode":{"id":47629,"name":"Timing","nodeType":"IdentifierPath","referencedDeclaration":47654,"src":"1798:6:64"},"referencedDeclaration":47654,"src":"1798:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_Timing_$47654_storage_ptr","typeString":"struct MinaAccountValidation.Timing"}},"visibility":"internal"},{"constant":false,"id":47634,"mutability":"mutable","name":"permissions","nameLocation":"1833:11:64","nodeType":"VariableDeclaration","scope":47638,"src":"1821:23:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Permissions_$47702_storage_ptr","typeString":"struct MinaAccountValidation.Permissions"},"typeName":{"id":47633,"nodeType":"UserDefinedTypeName","pathNode":{"id":47632,"name":"Permissions","nodeType":"IdentifierPath","referencedDeclaration":47702,"src":"1821:11:64"},"referencedDeclaration":47702,"src":"1821:11:64","typeDescriptions":{"typeIdentifier":"t_struct$_Permissions_$47702_storage_ptr","typeString":"struct MinaAccountValidation.Permissions"}},"visibility":"internal"},{"constant":false,"id":47637,"mutability":"mutable","name":"zkapp","nameLocation":"1867:5:64","nodeType":"VariableDeclaration","scope":47638,"src":"1854:18:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ZkappAccount_$47722_storage_ptr","typeString":"struct MinaAccountValidation.ZkappAccount"},"typeName":{"id":47636,"nodeType":"UserDefinedTypeName","pathNode":{"id":47635,"name":"ZkappAccount","nodeType":"IdentifierPath","referencedDeclaration":47722,"src":"1854:12:64"},"referencedDeclaration":47722,"src":"1854:12:64","typeDescriptions":{"typeIdentifier":"t_struct$_ZkappAccount_$47722_storage_ptr","typeString":"struct MinaAccountValidation.ZkappAccount"}},"visibility":"internal"}],"name":"Account","nameLocation":"1540:7:64","scope":47771,"visibility":"public"},{"id":47643,"nodeType":"StructDefinition","src":"1885:71:64","nodes":[],"canonicalName":"MinaAccountValidation.CompressedECPoint","members":[{"constant":false,"id":47640,"mutability":"mutable","name":"x","nameLocation":"1928:1:64","nodeType":"VariableDeclaration","scope":47643,"src":"1920:9:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47639,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1920:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":47642,"mutability":"mutable","name":"isOdd","nameLocation":"1944:5:64","nodeType":"VariableDeclaration","scope":47643,"src":"1939:10:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":47641,"name":"bool","nodeType":"ElementaryTypeName","src":"1939:4:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CompressedECPoint","nameLocation":"1892:17:64","scope":47771,"visibility":"public"},{"id":47654,"nodeType":"StructDefinition","src":"1962:176:64","nodes":[],"canonicalName":"MinaAccountValidation.Timing","members":[{"constant":false,"id":47645,"mutability":"mutable","name":"initialMinimumBalance","nameLocation":"1993:21:64","nodeType":"VariableDeclaration","scope":47654,"src":"1986:28:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":47644,"name":"uint64","nodeType":"ElementaryTypeName","src":"1986:6:64","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"},{"constant":false,"id":47647,"mutability":"mutable","name":"cliffTime","nameLocation":"2031:9:64","nodeType":"VariableDeclaration","scope":47654,"src":"2024:16:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":47646,"name":"uint32","nodeType":"ElementaryTypeName","src":"2024:6:64","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"},{"constant":false,"id":47649,"mutability":"mutable","name":"cliffAmount","nameLocation":"2057:11:64","nodeType":"VariableDeclaration","scope":47654,"src":"2050:18:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":47648,"name":"uint64","nodeType":"ElementaryTypeName","src":"2050:6:64","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"},{"constant":false,"id":47651,"mutability":"mutable","name":"vestingPeriod","nameLocation":"2085:13:64","nodeType":"VariableDeclaration","scope":47654,"src":"2078:20:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":47650,"name":"uint32","nodeType":"ElementaryTypeName","src":"2078:6:64","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"},{"constant":false,"id":47653,"mutability":"mutable","name":"vestingIncrement","nameLocation":"2115:16:64","nodeType":"VariableDeclaration","scope":47654,"src":"2108:23:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":47652,"name":"uint64","nodeType":"ElementaryTypeName","src":"2108:6:64","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"name":"Timing","nameLocation":"1969:6:64","scope":47771,"visibility":"public"},{"id":47660,"nodeType":"EnumDefinition","src":"2144:108:64","nodes":[],"canonicalName":"MinaAccountValidation.AuthRequired","members":[{"id":47655,"name":"None","nameLocation":"2172:4:64","nodeType":"EnumValue","src":"2172:4:64"},{"id":47656,"name":"Either","nameLocation":"2186:6:64","nodeType":"EnumValue","src":"2186:6:64"},{"id":47657,"name":"Proof","nameLocation":"2202:5:64","nodeType":"EnumValue","src":"2202:5:64"},{"id":47658,"name":"Signature","nameLocation":"2217:9:64","nodeType":"EnumValue","src":"2217:9:64"},{"id":47659,"name":"Impossible","nameLocation":"2236:10:64","nodeType":"EnumValue","src":"2236:10:64"}],"name":"AuthRequired","nameLocation":"2149:12:64"},{"id":47702,"nodeType":"StructDefinition","src":"2258:513:64","nodes":[],"canonicalName":"MinaAccountValidation.Permissions","members":[{"constant":false,"id":47663,"mutability":"mutable","name":"editState","nameLocation":"2300:9:64","nodeType":"VariableDeclaration","scope":47702,"src":"2287:22:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"},"typeName":{"id":47662,"nodeType":"UserDefinedTypeName","pathNode":{"id":47661,"name":"AuthRequired","nodeType":"IdentifierPath","referencedDeclaration":47660,"src":"2287:12:64"},"referencedDeclaration":47660,"src":"2287:12:64","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"}},"visibility":"internal"},{"constant":false,"id":47666,"mutability":"mutable","name":"access","nameLocation":"2332:6:64","nodeType":"VariableDeclaration","scope":47702,"src":"2319:19:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"},"typeName":{"id":47665,"nodeType":"UserDefinedTypeName","pathNode":{"id":47664,"name":"AuthRequired","nodeType":"IdentifierPath","referencedDeclaration":47660,"src":"2319:12:64"},"referencedDeclaration":47660,"src":"2319:12:64","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"}},"visibility":"internal"},{"constant":false,"id":47669,"mutability":"mutable","name":"send","nameLocation":"2361:4:64","nodeType":"VariableDeclaration","scope":47702,"src":"2348:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"},"typeName":{"id":47668,"nodeType":"UserDefinedTypeName","pathNode":{"id":47667,"name":"AuthRequired","nodeType":"IdentifierPath","referencedDeclaration":47660,"src":"2348:12:64"},"referencedDeclaration":47660,"src":"2348:12:64","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"}},"visibility":"internal"},{"constant":false,"id":47672,"mutability":"mutable","name":"rreceive","nameLocation":"2388:8:64","nodeType":"VariableDeclaration","scope":47702,"src":"2375:21:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"},"typeName":{"id":47671,"nodeType":"UserDefinedTypeName","pathNode":{"id":47670,"name":"AuthRequired","nodeType":"IdentifierPath","referencedDeclaration":47660,"src":"2375:12:64"},"referencedDeclaration":47660,"src":"2375:12:64","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"}},"visibility":"internal"},{"constant":false,"id":47675,"mutability":"mutable","name":"setDelegate","nameLocation":"2419:11:64","nodeType":"VariableDeclaration","scope":47702,"src":"2406:24:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"},"typeName":{"id":47674,"nodeType":"UserDefinedTypeName","pathNode":{"id":47673,"name":"AuthRequired","nodeType":"IdentifierPath","referencedDeclaration":47660,"src":"2406:12:64"},"referencedDeclaration":47660,"src":"2406:12:64","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"}},"visibility":"internal"},{"constant":false,"id":47678,"mutability":"mutable","name":"setPermissions","nameLocation":"2453:14:64","nodeType":"VariableDeclaration","scope":47702,"src":"2440:27:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"},"typeName":{"id":47677,"nodeType":"UserDefinedTypeName","pathNode":{"id":47676,"name":"AuthRequired","nodeType":"IdentifierPath","referencedDeclaration":47660,"src":"2440:12:64"},"referencedDeclaration":47660,"src":"2440:12:64","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"}},"visibility":"internal"},{"constant":false,"id":47681,"mutability":"mutable","name":"setVerificationKeyAuth","nameLocation":"2490:22:64","nodeType":"VariableDeclaration","scope":47702,"src":"2477:35:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"},"typeName":{"id":47680,"nodeType":"UserDefinedTypeName","pathNode":{"id":47679,"name":"AuthRequired","nodeType":"IdentifierPath","referencedDeclaration":47660,"src":"2477:12:64"},"referencedDeclaration":47660,"src":"2477:12:64","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"}},"visibility":"internal"},{"constant":false,"id":47683,"mutability":"mutable","name":"setVerificationKeyUint","nameLocation":"2529:22:64","nodeType":"VariableDeclaration","scope":47702,"src":"2522:29:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":47682,"name":"uint32","nodeType":"ElementaryTypeName","src":"2522:6:64","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"},{"constant":false,"id":47686,"mutability":"mutable","name":"setZkappUri","nameLocation":"2574:11:64","nodeType":"VariableDeclaration","scope":47702,"src":"2561:24:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"},"typeName":{"id":47685,"nodeType":"UserDefinedTypeName","pathNode":{"id":47684,"name":"AuthRequired","nodeType":"IdentifierPath","referencedDeclaration":47660,"src":"2561:12:64"},"referencedDeclaration":47660,"src":"2561:12:64","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"}},"visibility":"internal"},{"constant":false,"id":47689,"mutability":"mutable","name":"editActionState","nameLocation":"2608:15:64","nodeType":"VariableDeclaration","scope":47702,"src":"2595:28:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"},"typeName":{"id":47688,"nodeType":"UserDefinedTypeName","pathNode":{"id":47687,"name":"AuthRequired","nodeType":"IdentifierPath","referencedDeclaration":47660,"src":"2595:12:64"},"referencedDeclaration":47660,"src":"2595:12:64","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"}},"visibility":"internal"},{"constant":false,"id":47692,"mutability":"mutable","name":"setTokenSymbol","nameLocation":"2646:14:64","nodeType":"VariableDeclaration","scope":47702,"src":"2633:27:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"},"typeName":{"id":47691,"nodeType":"UserDefinedTypeName","pathNode":{"id":47690,"name":"AuthRequired","nodeType":"IdentifierPath","referencedDeclaration":47660,"src":"2633:12:64"},"referencedDeclaration":47660,"src":"2633:12:64","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"}},"visibility":"internal"},{"constant":false,"id":47695,"mutability":"mutable","name":"incrementNonce","nameLocation":"2683:14:64","nodeType":"VariableDeclaration","scope":47702,"src":"2670:27:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"},"typeName":{"id":47694,"nodeType":"UserDefinedTypeName","pathNode":{"id":47693,"name":"AuthRequired","nodeType":"IdentifierPath","referencedDeclaration":47660,"src":"2670:12:64"},"referencedDeclaration":47660,"src":"2670:12:64","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"}},"visibility":"internal"},{"constant":false,"id":47698,"mutability":"mutable","name":"setVotingFor","nameLocation":"2720:12:64","nodeType":"VariableDeclaration","scope":47702,"src":"2707:25:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"},"typeName":{"id":47697,"nodeType":"UserDefinedTypeName","pathNode":{"id":47696,"name":"AuthRequired","nodeType":"IdentifierPath","referencedDeclaration":47660,"src":"2707:12:64"},"referencedDeclaration":47660,"src":"2707:12:64","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"}},"visibility":"internal"},{"constant":false,"id":47701,"mutability":"mutable","name":"setTiming","nameLocation":"2755:9:64","nodeType":"VariableDeclaration","scope":47702,"src":"2742:22:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"},"typeName":{"id":47700,"nodeType":"UserDefinedTypeName","pathNode":{"id":47699,"name":"AuthRequired","nodeType":"IdentifierPath","referencedDeclaration":47660,"src":"2742:12:64"},"referencedDeclaration":47660,"src":"2742:12:64","typeDescriptions":{"typeIdentifier":"t_enum$_AuthRequired_$47660","typeString":"enum MinaAccountValidation.AuthRequired"}},"visibility":"internal"}],"name":"Permissions","nameLocation":"2265:11:64","scope":47771,"visibility":"public"},{"id":47722,"nodeType":"StructDefinition","src":"2777:239:64","nodes":[],"canonicalName":"MinaAccountValidation.ZkappAccount","members":[{"constant":false,"id":47706,"mutability":"mutable","name":"appState","nameLocation":"2818:8:64","nodeType":"VariableDeclaration","scope":47722,"src":"2807:19:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$8_storage_ptr","typeString":"bytes32[8]"},"typeName":{"baseType":{"id":47703,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2807:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":47705,"length":{"hexValue":"38","id":47704,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2815:1:64","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},"nodeType":"ArrayTypeName","src":"2807:10:64","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$8_storage_ptr","typeString":"bytes32[8]"}},"visibility":"internal"},{"constant":false,"id":47709,"mutability":"mutable","name":"verificationKey","nameLocation":"2852:15:64","nodeType":"VariableDeclaration","scope":47722,"src":"2836:31:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_VerificationKey_$47732_storage_ptr","typeString":"struct MinaAccountValidation.VerificationKey"},"typeName":{"id":47708,"nodeType":"UserDefinedTypeName","pathNode":{"id":47707,"name":"VerificationKey","nodeType":"IdentifierPath","referencedDeclaration":47732,"src":"2836:15:64"},"referencedDeclaration":47732,"src":"2836:15:64","typeDescriptions":{"typeIdentifier":"t_struct$_VerificationKey_$47732_storage_ptr","typeString":"struct MinaAccountValidation.VerificationKey"}},"visibility":"internal"},{"constant":false,"id":47711,"mutability":"mutable","name":"zkappVersion","nameLocation":"2884:12:64","nodeType":"VariableDeclaration","scope":47722,"src":"2877:19:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":47710,"name":"uint32","nodeType":"ElementaryTypeName","src":"2877:6:64","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"},{"constant":false,"id":47715,"mutability":"mutable","name":"actionState","nameLocation":"2917:11:64","nodeType":"VariableDeclaration","scope":47722,"src":"2906:22:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$5_storage_ptr","typeString":"bytes32[5]"},"typeName":{"baseType":{"id":47712,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2906:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":47714,"length":{"hexValue":"35","id":47713,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2914:1:64","typeDescriptions":{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},"value":"5"},"nodeType":"ArrayTypeName","src":"2906:10:64","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$5_storage_ptr","typeString":"bytes32[5]"}},"visibility":"internal"},{"constant":false,"id":47717,"mutability":"mutable","name":"lastActionSlot","nameLocation":"2945:14:64","nodeType":"VariableDeclaration","scope":47722,"src":"2938:21:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":47716,"name":"uint32","nodeType":"ElementaryTypeName","src":"2938:6:64","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"},{"constant":false,"id":47719,"mutability":"mutable","name":"provedState","nameLocation":"2974:11:64","nodeType":"VariableDeclaration","scope":47722,"src":"2969:16:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":47718,"name":"bool","nodeType":"ElementaryTypeName","src":"2969:4:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":47721,"mutability":"mutable","name":"zkappUri","nameLocation":"3001:8:64","nodeType":"VariableDeclaration","scope":47722,"src":"2995:14:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"},"typeName":{"id":47720,"name":"bytes","nodeType":"ElementaryTypeName","src":"2995:5:64","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"name":"ZkappAccount","nameLocation":"2784:12:64","scope":47771,"visibility":"public"},{"id":47732,"nodeType":"StructDefinition","src":"3022:146:64","nodes":[],"canonicalName":"MinaAccountValidation.VerificationKey","members":[{"constant":false,"id":47725,"mutability":"mutable","name":"maxProofsVerified","nameLocation":"3070:17:64","nodeType":"VariableDeclaration","scope":47732,"src":"3055:32:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProofsVerified_$47736","typeString":"enum MinaAccountValidation.ProofsVerified"},"typeName":{"id":47724,"nodeType":"UserDefinedTypeName","pathNode":{"id":47723,"name":"ProofsVerified","nodeType":"IdentifierPath","referencedDeclaration":47736,"src":"3055:14:64"},"referencedDeclaration":47736,"src":"3055:14:64","typeDescriptions":{"typeIdentifier":"t_enum$_ProofsVerified_$47736","typeString":"enum MinaAccountValidation.ProofsVerified"}},"visibility":"internal"},{"constant":false,"id":47728,"mutability":"mutable","name":"actualWrapDomainSize","nameLocation":"3112:20:64","nodeType":"VariableDeclaration","scope":47732,"src":"3097:35:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProofsVerified_$47736","typeString":"enum MinaAccountValidation.ProofsVerified"},"typeName":{"id":47727,"nodeType":"UserDefinedTypeName","pathNode":{"id":47726,"name":"ProofsVerified","nodeType":"IdentifierPath","referencedDeclaration":47736,"src":"3097:14:64"},"referencedDeclaration":47736,"src":"3097:14:64","typeDescriptions":{"typeIdentifier":"t_enum$_ProofsVerified_$47736","typeString":"enum MinaAccountValidation.ProofsVerified"}},"visibility":"internal"},{"constant":false,"id":47731,"mutability":"mutable","name":"wrapIndex","nameLocation":"3152:9:64","nodeType":"VariableDeclaration","scope":47732,"src":"3142:19:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_WrapIndex_$47765_storage_ptr","typeString":"struct MinaAccountValidation.WrapIndex"},"typeName":{"id":47730,"nodeType":"UserDefinedTypeName","pathNode":{"id":47729,"name":"WrapIndex","nodeType":"IdentifierPath","referencedDeclaration":47765,"src":"3142:9:64"},"referencedDeclaration":47765,"src":"3142:9:64","typeDescriptions":{"typeIdentifier":"t_struct$_WrapIndex_$47765_storage_ptr","typeString":"struct MinaAccountValidation.WrapIndex"}},"visibility":"internal"}],"name":"VerificationKey","nameLocation":"3029:15:64","scope":47771,"visibility":"public"},{"id":47736,"nodeType":"EnumDefinition","src":"3174:62:64","nodes":[],"canonicalName":"MinaAccountValidation.ProofsVerified","members":[{"id":47733,"name":"N0","nameLocation":"3204:2:64","nodeType":"EnumValue","src":"3204:2:64"},{"id":47734,"name":"N1","nameLocation":"3216:2:64","nodeType":"EnumValue","src":"3216:2:64"},{"id":47735,"name":"N2","nameLocation":"3228:2:64","nodeType":"EnumValue","src":"3228:2:64"}],"name":"ProofsVerified","nameLocation":"3179:14:64"},{"id":47765,"nodeType":"StructDefinition","src":"3242:289:64","nodes":[],"canonicalName":"MinaAccountValidation.WrapIndex","members":[{"constant":false,"id":47741,"mutability":"mutable","name":"sigmaComm","nameLocation":"3283:9:64","nodeType":"VariableDeclaration","scope":47765,"src":"3269:23:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_Commitment_$47770_storage_$7_storage_ptr","typeString":"struct MinaAccountValidation.Commitment[7]"},"typeName":{"baseType":{"id":47738,"nodeType":"UserDefinedTypeName","pathNode":{"id":47737,"name":"Commitment","nodeType":"IdentifierPath","referencedDeclaration":47770,"src":"3269:10:64"},"referencedDeclaration":47770,"src":"3269:10:64","typeDescriptions":{"typeIdentifier":"t_struct$_Commitment_$47770_storage_ptr","typeString":"struct MinaAccountValidation.Commitment"}},"id":47740,"length":{"hexValue":"37","id":47739,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3280:1:64","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"nodeType":"ArrayTypeName","src":"3269:13:64","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_Commitment_$47770_storage_$7_storage_ptr","typeString":"struct MinaAccountValidation.Commitment[7]"}},"visibility":"internal"},{"constant":false,"id":47746,"mutability":"mutable","name":"coefficientsComm","nameLocation":"3317:16:64","nodeType":"VariableDeclaration","scope":47765,"src":"3302:31:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_Commitment_$47770_storage_$15_storage_ptr","typeString":"struct MinaAccountValidation.Commitment[15]"},"typeName":{"baseType":{"id":47743,"nodeType":"UserDefinedTypeName","pathNode":{"id":47742,"name":"Commitment","nodeType":"IdentifierPath","referencedDeclaration":47770,"src":"3302:10:64"},"referencedDeclaration":47770,"src":"3302:10:64","typeDescriptions":{"typeIdentifier":"t_struct$_Commitment_$47770_storage_ptr","typeString":"struct MinaAccountValidation.Commitment"}},"id":47745,"length":{"hexValue":"3135","id":47744,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3313:2:64","typeDescriptions":{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},"value":"15"},"nodeType":"ArrayTypeName","src":"3302:14:64","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_Commitment_$47770_storage_$15_storage_ptr","typeString":"struct MinaAccountValidation.Commitment[15]"}},"visibility":"internal"},{"constant":false,"id":47749,"mutability":"mutable","name":"genericComm","nameLocation":"3354:11:64","nodeType":"VariableDeclaration","scope":47765,"src":"3343:22:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Commitment_$47770_storage_ptr","typeString":"struct MinaAccountValidation.Commitment"},"typeName":{"id":47748,"nodeType":"UserDefinedTypeName","pathNode":{"id":47747,"name":"Commitment","nodeType":"IdentifierPath","referencedDeclaration":47770,"src":"3343:10:64"},"referencedDeclaration":47770,"src":"3343:10:64","typeDescriptions":{"typeIdentifier":"t_struct$_Commitment_$47770_storage_ptr","typeString":"struct MinaAccountValidation.Commitment"}},"visibility":"internal"},{"constant":false,"id":47752,"mutability":"mutable","name":"psmComm","nameLocation":"3386:7:64","nodeType":"VariableDeclaration","scope":47765,"src":"3375:18:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Commitment_$47770_storage_ptr","typeString":"struct MinaAccountValidation.Commitment"},"typeName":{"id":47751,"nodeType":"UserDefinedTypeName","pathNode":{"id":47750,"name":"Commitment","nodeType":"IdentifierPath","referencedDeclaration":47770,"src":"3375:10:64"},"referencedDeclaration":47770,"src":"3375:10:64","typeDescriptions":{"typeIdentifier":"t_struct$_Commitment_$47770_storage_ptr","typeString":"struct MinaAccountValidation.Commitment"}},"visibility":"internal"},{"constant":false,"id":47755,"mutability":"mutable","name":"completeAddComm","nameLocation":"3414:15:64","nodeType":"VariableDeclaration","scope":47765,"src":"3403:26:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Commitment_$47770_storage_ptr","typeString":"struct MinaAccountValidation.Commitment"},"typeName":{"id":47754,"nodeType":"UserDefinedTypeName","pathNode":{"id":47753,"name":"Commitment","nodeType":"IdentifierPath","referencedDeclaration":47770,"src":"3403:10:64"},"referencedDeclaration":47770,"src":"3403:10:64","typeDescriptions":{"typeIdentifier":"t_struct$_Commitment_$47770_storage_ptr","typeString":"struct MinaAccountValidation.Commitment"}},"visibility":"internal"},{"constant":false,"id":47758,"mutability":"mutable","name":"mulComm","nameLocation":"3450:7:64","nodeType":"VariableDeclaration","scope":47765,"src":"3439:18:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Commitment_$47770_storage_ptr","typeString":"struct MinaAccountValidation.Commitment"},"typeName":{"id":47757,"nodeType":"UserDefinedTypeName","pathNode":{"id":47756,"name":"Commitment","nodeType":"IdentifierPath","referencedDeclaration":47770,"src":"3439:10:64"},"referencedDeclaration":47770,"src":"3439:10:64","typeDescriptions":{"typeIdentifier":"t_struct$_Commitment_$47770_storage_ptr","typeString":"struct MinaAccountValidation.Commitment"}},"visibility":"internal"},{"constant":false,"id":47761,"mutability":"mutable","name":"emulComm","nameLocation":"3478:8:64","nodeType":"VariableDeclaration","scope":47765,"src":"3467:19:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Commitment_$47770_storage_ptr","typeString":"struct MinaAccountValidation.Commitment"},"typeName":{"id":47760,"nodeType":"UserDefinedTypeName","pathNode":{"id":47759,"name":"Commitment","nodeType":"IdentifierPath","referencedDeclaration":47770,"src":"3467:10:64"},"referencedDeclaration":47770,"src":"3467:10:64","typeDescriptions":{"typeIdentifier":"t_struct$_Commitment_$47770_storage_ptr","typeString":"struct MinaAccountValidation.Commitment"}},"visibility":"internal"},{"constant":false,"id":47764,"mutability":"mutable","name":"endomulScalarComm","nameLocation":"3507:17:64","nodeType":"VariableDeclaration","scope":47765,"src":"3496:28:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Commitment_$47770_storage_ptr","typeString":"struct MinaAccountValidation.Commitment"},"typeName":{"id":47763,"nodeType":"UserDefinedTypeName","pathNode":{"id":47762,"name":"Commitment","nodeType":"IdentifierPath","referencedDeclaration":47770,"src":"3496:10:64"},"referencedDeclaration":47770,"src":"3496:10:64","typeDescriptions":{"typeIdentifier":"t_struct$_Commitment_$47770_storage_ptr","typeString":"struct MinaAccountValidation.Commitment"}},"visibility":"internal"}],"name":"WrapIndex","nameLocation":"3249:9:64","scope":47771,"visibility":"public"},{"id":47770,"nodeType":"StructDefinition","src":"3537:63:64","nodes":[],"canonicalName":"MinaAccountValidation.Commitment","members":[{"constant":false,"id":47767,"mutability":"mutable","name":"x","nameLocation":"3573:1:64","nodeType":"VariableDeclaration","scope":47770,"src":"3565:9:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47766,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3565:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":47769,"mutability":"mutable","name":"y","nameLocation":"3592:1:64","nodeType":"VariableDeclaration","scope":47770,"src":"3584:9:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47768,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3584:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"name":"Commitment","nameLocation":"3544:10:64","scope":47771,"visibility":"public"}],"abstract":false,"baseContracts":[],"canonicalName":"MinaAccountValidation","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[47771],"name":"MinaAccountValidation","nameLocation":"180:21:64","scope":47772,"usedErrors":[47516]}],"license":"UNLICENSED"},"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":"batcherPaymentService","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":"0x608060405234801561001057600080fd5b5060405161142d38038061142d83398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b61139a806100936000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80639029ad1514610030575b600080fd5b61004361003e366004610475565b610059565b6040516100509190610857565b60405180910390f35b6100616101a7565b36600061007160c085018561097f565b61007f9160289082906109cc565b9092509050600061009360c086018661097f565b6040516100a19291906109f6565b604080519182900390912060008054919350916001600160a01b03909116906306045a9190883590859060208b0135906100e19060608d01908d01610a06565b60608c01356100f360808e018e61097f565b8e60a001358f60e001602081019061010b9190610a35565b6040518a63ffffffff1660e01b815260040161012f99989796959493929190610a5e565b602060405180830381865afa15801561014c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101709190610aec565b9050801561018e5761018483850185611244565b9695505050505050565b604051634de35c5f60e11b815260040160405180910390fd5b604080516101a081018252600061016082018181526101808301829052825260208083018290526060838501819052808401839052608080850184905260a08086018590528651808801885285815280850186905260c087015260e086018590528651908101875284815292830184905294820183905281018290529283015261010081019190915261012081016102aa604080516101c0810190915280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526000602082018190526040909101908152602001600081526020016000815260200160008152602001600081526020016000905290565b81526020016102b76102bc565b905290565b6040518060e001604052806102cf610309565b81526020016102dc610328565b8152600060208201526040016102f0610347565b8152600060208201819052604082015260609081015290565b6040518061010001604052806008906020820280368337509192915050565b60408051606081018252600080825260208201529081016102b7610365565b6040518060a001604052806005906020820280368337509192915050565b604051806101000160405280610379610410565b8152602001610386610449565b8152604080518082018252600080825260208083018290528085019290925282518084018452818152808301829052838501528251808401845281815280830182905260608501528251808401845281815280830182905260808501528251808401845281815280830182905260a085015282518084019093528083529082015260c09091015290565b6040518060e001604052806007905b604080518082019091526000808252602082015281526020019060019003908161041f5790505090565b60408051610220810190915260006101e082018181526102008301919091528152600e6020820161041f565b60006020828403121561048757600080fd5b81356001600160401b0381111561049d57600080fd5b820161010081850312156104b057600080fd5b9392505050565b6000815180845260005b818110156104dd576020818501810151868301820152016104c1565b818111156104ef576000602083870101525b50601f01601f19169290920160200192915050565b634e487b7160e01b600052602160045260246000fd5b6005811061052a5761052a610504565b9052565b61053982825161051a565b602081015161054b602084018261051a565b50604081015161055e604084018261051a565b506060810151610571606084018261051a565b506080810151610584608084018261051a565b5060a081015161059760a084018261051a565b5060c08101516105aa60c084018261051a565b5060e08101516105c260e084018263ffffffff169052565b50610100808201516105d68285018261051a565b5050610120808201516105eb8285018261051a565b5050610140808201516106008285018261051a565b5050610160808201516106158285018261051a565b50506101808082015161062a8285018261051a565b50506101a08082015161063f8285018261051a565b50505050565b6003811061052a5761052a610504565b8060005b600f81101561063f5761067784835180518252602090810151910152565b6040939093019260209190910190600101610659565b610698828251610645565b6020808201516106aa82850182610645565b50604082810151805160008684015b60078210156106e9576106d781845180518252602090810151910152565b918501916001919091019084016106b9565b50505091820151916106ff610200860184610655565b9081015180516105c08601526020908101516105e0860152606082015180516106008701528101516106208601526080820151805161064087015281015161066086015260a082015180516106808701528101516106a086015260c082015180516106c08701528101516106e086015260e09091015180516107008601520151610720909301929092525050565b8060005b600581101561063f578151845260209384019390910190600101610791565b80516000906109609084835b60088110156107db5782518252602092830192909101906001016107bc565b50505060208301516107f161010086018261068d565b50604083015163ffffffff16610840850152606083015161081661086086018261078d565b50608083015163ffffffff1661090085015260a0830151151561092085015260c0830151610940850182905261084e828601826104b7565b95945050505050565b6020808252825180518383015201511515604082015260208201516060820152600060408301516103c08060808501526108956103e08501836104b7565b915060608501516108b160a08601826001600160401b03169052565b50608085015163ffffffff811660c08601525060a085015160e085015260c08501516101006108ee81870183805182526020908101511515910152565b60e0870151610140878101919091528188015180516001600160401b039081166101608a0152602082015163ffffffff9081166101808b0152604083015182166101a08b01526060830151166101c08a0152608090910151166101e0880152610120880151925061096361020088018461052e565b870151868503601f1901848801529150610184905083826107b0565b6000808335601e1984360301811261099657600080fd5b8301803591506001600160401b038211156109b057600080fd5b6020019150368190038213156109c557600080fd5b9250929050565b600080858511156109dc57600080fd5b838611156109e957600080fd5b5050820193919092039150565b8183823760009101908152919050565b600060208284031215610a1857600080fd5b81356bffffffffffffffffffffffff19811681146104b057600080fd5b600060208284031215610a4757600080fd5b81356001600160a01b03811681146104b057600080fd5b60006101008b83528a60208401528960408401526bffffffffffffffffffffffff19891660608401528760808401528060a0840152858184015250610120858782850137600083870182015260c0830194909452506001600160a01b039190911660e0820152601f909201601f1916909101019695505050505050565b8015158114610ae957600080fd5b50565b600060208284031215610afe57600080fd5b81516104b081610adb565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715610b4157610b41610b09565b60405290565b6040516101c081016001600160401b0381118282101715610b4157610b41610b09565b604051606081016001600160401b0381118282101715610b4157610b41610b09565b60405161010081016001600160401b0381118282101715610b4157610b41610b09565b60405160e081016001600160401b0381118282101715610b4157610b41610b09565b60405161016081016001600160401b0381118282101715610b4157610b41610b09565b8035610bff81610adb565b919050565b600060408284031215610c1657600080fd5b610c1e610b1f565b9050813581526020820135610c3281610adb565b602082015292915050565b600082601f830112610c4e57600080fd5b81356001600160401b0380821115610c6857610c68610b09565b604051601f8301601f19908116603f01168101908282118183101715610c9057610c90610b09565b81604052838152866020858801011115610ca957600080fd5b836020870160208301376000602085830101528094505050505092915050565b80356001600160401b0381168114610bff57600080fd5b803563ffffffff81168114610bff57600080fd5b600060a08284031215610d0657600080fd5b60405160a081018181106001600160401b0382111715610d2857610d28610b09565b604052905080610d3783610cc9565b8152610d4560208401610ce0565b6020820152610d5660408401610cc9565b6040820152610d6760608401610ce0565b6060820152610d7860808401610cc9565b60808201525092915050565b803560058110610bff57600080fd5b60006101c08284031215610da657600080fd5b610dae610b47565b9050610db982610d84565b8152610dc760208301610d84565b6020820152610dd860408301610d84565b6040820152610de960608301610d84565b6060820152610dfa60808301610d84565b6080820152610e0b60a08301610d84565b60a0820152610e1c60c08301610d84565b60c0820152610e2d60e08301610ce0565b60e0820152610100610e40818401610d84565b90820152610120610e52838201610d84565b90820152610140610e64838201610d84565b90820152610160610e76838201610d84565b90820152610180610e88838201610d84565b908201526101a0610e9a838201610d84565b9082015292915050565b600082601f830112610eb557600080fd5b6040516101008082018281106001600160401b0382111715610ed957610ed9610b09565b60405283018185821115610eec57600080fd5b845b82811015610f06578035825260209182019101610eee565b509195945050505050565b803560038110610bff57600080fd5b600060408284031215610f3257600080fd5b610f3a610b1f565b9050813581526020820135602082015292915050565b600082601f830112610f6157600080fd5b6040805160e081018181106001600160401b0382111715610f8457610f84610b09565b8252806101c0850186811115610f9957600080fd5b855b81811015610fbc57610fad8882610f20565b83526020909201918401610f9b565b50919695505050505050565b600082601f830112610fd957600080fd5b604080516101e081018181106001600160401b0382111715610ffd57610ffd610b09565b8252806103c085018681111561101257600080fd5b855b81811015610fbc576110268882610f20565b83526020909201918401611014565b600081830361074081121561104957600080fd5b611051610b6a565b915061105c83610f11565b825261106a60208401610f11565b602083015261070080603f198301121561108357600080fd5b61108b610b8c565b915061109a8560408601610f50565b82526110aa856102008601610fc8565b60208301526110bd856105c08601610f20565b60408301526110d0856106008601610f20565b60608301526110e3856106408601610f20565b60808301526110f6856106808601610f20565b60a0830152611109856106c08601610f20565b60c083015261111a85828601610f20565b60e083015250604082015292915050565b600082601f83011261113c57600080fd5b60405160a081018181106001600160401b038211171561115e5761115e610b09565b6040528060a084018581111561117357600080fd5b845b81811015610f06578035835260209283019201611175565b600061096082840312156111a057600080fd5b6111a8610baf565b90506111b48383610ea4565b81526111c4836101008401611035565b60208201526111d66108408301610ce0565b60408201526111e983610860840161112b565b60608201526111fb6109008301610ce0565b608082015261120d6109208301610bf4565b60a08201526109408201356001600160401b0381111561122c57600080fd5b61123884828501610c3d565b60c08301525092915050565b60006020828403121561125657600080fd5b81356001600160401b038082111561126d57600080fd5b908301906103c0828603121561128257600080fd5b61128a610bd1565b6112948684610c04565b8152604083013560208201526060830135828111156112b257600080fd5b6112be87828601610c3d565b6040830152506112d060808401610cc9565b60608201526112e160a08401610ce0565b608082015260c083013560a08201526112fd8660e08501610c04565b60c08201526101208084013560e083015261014061131d88828701610cf4565b610100840152611331886101e08701610d93565b828401526103a085013591508382111561134a57600080fd5b6113568883870161118d565b90830152509594505050505056fea26469706673582212204ff23779a72342be093c794a101b1afa919b353d8dbd2a9bc7be76ea30eab75864736f6c634300080c0033","sourceMap":"171:3431:64:-:0;;;635:123;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;694:7;:57;;-1:-1:-1;;;;;;694:57:64;-1:-1:-1;;;;;694:57:64;;;;;;;;;;171:3431;;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:3431:64;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c80639029ad1514610030575b600080fd5b61004361003e366004610475565b610059565b6040516100509190610857565b60405180910390f35b6100616101a7565b36600061007160c085018561097f565b61007f9160289082906109cc565b9092509050600061009360c086018661097f565b6040516100a19291906109f6565b604080519182900390912060008054919350916001600160a01b03909116906306045a9190883590859060208b0135906100e19060608d01908d01610a06565b60608c01356100f360808e018e61097f565b8e60a001358f60e001602081019061010b9190610a35565b6040518a63ffffffff1660e01b815260040161012f99989796959493929190610a5e565b602060405180830381865afa15801561014c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101709190610aec565b9050801561018e5761018483850185611244565b9695505050505050565b604051634de35c5f60e11b815260040160405180910390fd5b604080516101a081018252600061016082018181526101808301829052825260208083018290526060838501819052808401839052608080850184905260a08086018590528651808801885285815280850186905260c087015260e086018590528651908101875284815292830184905294820183905281018290529283015261010081019190915261012081016102aa604080516101c0810190915280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526000602082018190526040909101908152602001600081526020016000815260200160008152602001600081526020016000905290565b81526020016102b76102bc565b905290565b6040518060e001604052806102cf610309565b81526020016102dc610328565b8152600060208201526040016102f0610347565b8152600060208201819052604082015260609081015290565b6040518061010001604052806008906020820280368337509192915050565b60408051606081018252600080825260208201529081016102b7610365565b6040518060a001604052806005906020820280368337509192915050565b604051806101000160405280610379610410565b8152602001610386610449565b8152604080518082018252600080825260208083018290528085019290925282518084018452818152808301829052838501528251808401845281815280830182905260608501528251808401845281815280830182905260808501528251808401845281815280830182905260a085015282518084019093528083529082015260c09091015290565b6040518060e001604052806007905b604080518082019091526000808252602082015281526020019060019003908161041f5790505090565b60408051610220810190915260006101e082018181526102008301919091528152600e6020820161041f565b60006020828403121561048757600080fd5b81356001600160401b0381111561049d57600080fd5b820161010081850312156104b057600080fd5b9392505050565b6000815180845260005b818110156104dd576020818501810151868301820152016104c1565b818111156104ef576000602083870101525b50601f01601f19169290920160200192915050565b634e487b7160e01b600052602160045260246000fd5b6005811061052a5761052a610504565b9052565b61053982825161051a565b602081015161054b602084018261051a565b50604081015161055e604084018261051a565b506060810151610571606084018261051a565b506080810151610584608084018261051a565b5060a081015161059760a084018261051a565b5060c08101516105aa60c084018261051a565b5060e08101516105c260e084018263ffffffff169052565b50610100808201516105d68285018261051a565b5050610120808201516105eb8285018261051a565b5050610140808201516106008285018261051a565b5050610160808201516106158285018261051a565b50506101808082015161062a8285018261051a565b50506101a08082015161063f8285018261051a565b50505050565b6003811061052a5761052a610504565b8060005b600f81101561063f5761067784835180518252602090810151910152565b6040939093019260209190910190600101610659565b610698828251610645565b6020808201516106aa82850182610645565b50604082810151805160008684015b60078210156106e9576106d781845180518252602090810151910152565b918501916001919091019084016106b9565b50505091820151916106ff610200860184610655565b9081015180516105c08601526020908101516105e0860152606082015180516106008701528101516106208601526080820151805161064087015281015161066086015260a082015180516106808701528101516106a086015260c082015180516106c08701528101516106e086015260e09091015180516107008601520151610720909301929092525050565b8060005b600581101561063f578151845260209384019390910190600101610791565b80516000906109609084835b60088110156107db5782518252602092830192909101906001016107bc565b50505060208301516107f161010086018261068d565b50604083015163ffffffff16610840850152606083015161081661086086018261078d565b50608083015163ffffffff1661090085015260a0830151151561092085015260c0830151610940850182905261084e828601826104b7565b95945050505050565b6020808252825180518383015201511515604082015260208201516060820152600060408301516103c08060808501526108956103e08501836104b7565b915060608501516108b160a08601826001600160401b03169052565b50608085015163ffffffff811660c08601525060a085015160e085015260c08501516101006108ee81870183805182526020908101511515910152565b60e0870151610140878101919091528188015180516001600160401b039081166101608a0152602082015163ffffffff9081166101808b0152604083015182166101a08b01526060830151166101c08a0152608090910151166101e0880152610120880151925061096361020088018461052e565b870151868503601f1901848801529150610184905083826107b0565b6000808335601e1984360301811261099657600080fd5b8301803591506001600160401b038211156109b057600080fd5b6020019150368190038213156109c557600080fd5b9250929050565b600080858511156109dc57600080fd5b838611156109e957600080fd5b5050820193919092039150565b8183823760009101908152919050565b600060208284031215610a1857600080fd5b81356bffffffffffffffffffffffff19811681146104b057600080fd5b600060208284031215610a4757600080fd5b81356001600160a01b03811681146104b057600080fd5b60006101008b83528a60208401528960408401526bffffffffffffffffffffffff19891660608401528760808401528060a0840152858184015250610120858782850137600083870182015260c0830194909452506001600160a01b039190911660e0820152601f909201601f1916909101019695505050505050565b8015158114610ae957600080fd5b50565b600060208284031215610afe57600080fd5b81516104b081610adb565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715610b4157610b41610b09565b60405290565b6040516101c081016001600160401b0381118282101715610b4157610b41610b09565b604051606081016001600160401b0381118282101715610b4157610b41610b09565b60405161010081016001600160401b0381118282101715610b4157610b41610b09565b60405160e081016001600160401b0381118282101715610b4157610b41610b09565b60405161016081016001600160401b0381118282101715610b4157610b41610b09565b8035610bff81610adb565b919050565b600060408284031215610c1657600080fd5b610c1e610b1f565b9050813581526020820135610c3281610adb565b602082015292915050565b600082601f830112610c4e57600080fd5b81356001600160401b0380821115610c6857610c68610b09565b604051601f8301601f19908116603f01168101908282118183101715610c9057610c90610b09565b81604052838152866020858801011115610ca957600080fd5b836020870160208301376000602085830101528094505050505092915050565b80356001600160401b0381168114610bff57600080fd5b803563ffffffff81168114610bff57600080fd5b600060a08284031215610d0657600080fd5b60405160a081018181106001600160401b0382111715610d2857610d28610b09565b604052905080610d3783610cc9565b8152610d4560208401610ce0565b6020820152610d5660408401610cc9565b6040820152610d6760608401610ce0565b6060820152610d7860808401610cc9565b60808201525092915050565b803560058110610bff57600080fd5b60006101c08284031215610da657600080fd5b610dae610b47565b9050610db982610d84565b8152610dc760208301610d84565b6020820152610dd860408301610d84565b6040820152610de960608301610d84565b6060820152610dfa60808301610d84565b6080820152610e0b60a08301610d84565b60a0820152610e1c60c08301610d84565b60c0820152610e2d60e08301610ce0565b60e0820152610100610e40818401610d84565b90820152610120610e52838201610d84565b90820152610140610e64838201610d84565b90820152610160610e76838201610d84565b90820152610180610e88838201610d84565b908201526101a0610e9a838201610d84565b9082015292915050565b600082601f830112610eb557600080fd5b6040516101008082018281106001600160401b0382111715610ed957610ed9610b09565b60405283018185821115610eec57600080fd5b845b82811015610f06578035825260209182019101610eee565b509195945050505050565b803560038110610bff57600080fd5b600060408284031215610f3257600080fd5b610f3a610b1f565b9050813581526020820135602082015292915050565b600082601f830112610f6157600080fd5b6040805160e081018181106001600160401b0382111715610f8457610f84610b09565b8252806101c0850186811115610f9957600080fd5b855b81811015610fbc57610fad8882610f20565b83526020909201918401610f9b565b50919695505050505050565b600082601f830112610fd957600080fd5b604080516101e081018181106001600160401b0382111715610ffd57610ffd610b09565b8252806103c085018681111561101257600080fd5b855b81811015610fbc576110268882610f20565b83526020909201918401611014565b600081830361074081121561104957600080fd5b611051610b6a565b915061105c83610f11565b825261106a60208401610f11565b602083015261070080603f198301121561108357600080fd5b61108b610b8c565b915061109a8560408601610f50565b82526110aa856102008601610fc8565b60208301526110bd856105c08601610f20565b60408301526110d0856106008601610f20565b60608301526110e3856106408601610f20565b60808301526110f6856106808601610f20565b60a0830152611109856106c08601610f20565b60c083015261111a85828601610f20565b60e083015250604082015292915050565b600082601f83011261113c57600080fd5b60405160a081018181106001600160401b038211171561115e5761115e610b09565b6040528060a084018581111561117357600080fd5b845b81811015610f06578035835260209283019201611175565b600061096082840312156111a057600080fd5b6111a8610baf565b90506111b48383610ea4565b81526111c4836101008401611035565b60208201526111d66108408301610ce0565b60408201526111e983610860840161112b565b60608201526111fb6109008301610ce0565b608082015261120d6109208301610bf4565b60a08201526109408201356001600160401b0381111561122c57600080fd5b61123884828501610c3d565b60c08301525092915050565b60006020828403121561125657600080fd5b81356001600160401b038082111561126d57600080fd5b908301906103c0828603121561128257600080fd5b61128a610bd1565b6112948684610c04565b8152604083013560208201526060830135828111156112b257600080fd5b6112be87828601610c3d565b6040830152506112d060808401610cc9565b60608201526112e160a08401610ce0565b608082015260c083013560a08201526112fd8660e08501610c04565b60c08201526101208084013560e083015261014061131d88828701610cf4565b610100840152611331886101e08701610d93565b828401526103a085013591508382111561134a57600080fd5b6113568883870161118d565b90830152509594505050505056fea26469706673582212204ff23779a72342be093c794a101b1afa919b353d8dbd2a9bc7be76ea30eab75864736f6c634300080c0033","sourceMap":"171:3431:64:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;764:763;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;839:14;;:::i;:::-;865:29;;897:13;;;;:4;:13;:::i;:::-;:22;;911:6;;897:22;;;:::i;:::-;865:54;;-1:-1:-1;865:54:64;-1:-1:-1;930:26:64;969:13;;;;:4;:13;:::i;:::-;959:24;;;;;;;:::i;:::-;;;;;;;;;;;994:22;1019:7;;959:24;;-1:-1:-1;994:22:64;-1:-1:-1;;;;;1019:7:64;;;;:28;;1061:20;;;959:24;;1127:35;;;;;1176:23;;;;;;;;;:::i;:::-;1213:20;;;;1247:16;;;;1213:4;1247:16;:::i;:::-;1277:4;:31;;;1322:4;:26;;;;;;;;;;:::i;:::-;1019:339;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;994:364;;1373:17;1369:152;;;1413:37;;;;1424:14;1413:37;:::i;:::-;1406:44;764:763;-1:-1:-1;;;;;;764:763:64:o;1369:152::-;1488:22;;-1:-1:-1;;;1488:22:64;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:392:67;105:6;158:2;146:9;137:7;133:23;129:32;126:52;;;174:1;171;164:12;126:52;214:9;201:23;-1:-1:-1;;;;;239:6:67;236:30;233:50;;;279:1;276;269:12;233:50;302:22;;358:3;340:16;;;336:26;333:46;;;375:1;372;365:12;333:46;398:2;14:392;-1:-1:-1;;;14:392:67:o;686:472::-;728:3;766:5;760:12;793:6;788:3;781:19;818:1;828:162;842:6;839:1;836:13;828:162;;;904:4;960:13;;;956:22;;950:29;932:11;;;928:20;;921:59;857:12;828:162;;;1008:6;1005:1;1002:13;999:87;;;1074:1;1067:4;1058:6;1053:3;1049:16;1045:27;1038:38;999:87;-1:-1:-1;1140:2:67;1119:15;-1:-1:-1;;1115:29:67;1106:39;;;;1147:4;1102:50;;686:472;-1:-1:-1;;686:472:67:o;1841:127::-;1902:10;1897:3;1893:20;1890:1;1883:31;1933:4;1930:1;1923:15;1957:4;1954:1;1947:15;1973:143;2057:1;2050:5;2047:12;2037:46;;2063:18;;:::i;:::-;2092;;1973:143::o;2121:1834::-;2186:47;2229:3;2221:5;2215:12;2186:47;:::i;:::-;2279:4;2272:5;2268:16;2262:23;2294:58;2346:4;2341:3;2337:14;2323:12;2294:58;:::i;:::-;;2400:4;2393:5;2389:16;2383:23;2415:60;2469:4;2464:3;2460:14;2444;2415:60;:::i;:::-;;2523:4;2516:5;2512:16;2506:23;2538:60;2592:4;2587:3;2583:14;2567;2538:60;:::i;:::-;;2646:4;2639:5;2635:16;2629:23;2661:60;2715:4;2710:3;2706:14;2690;2661:60;:::i;:::-;;2769:4;2762:5;2758:16;2752:23;2784:60;2838:4;2833:3;2829:14;2813;2784:60;:::i;:::-;;2892:4;2885:5;2881:16;2875:23;2907:60;2961:4;2956:3;2952:14;2936;2907:60;:::i;:::-;;3015:4;3008:5;3004:16;2998:23;3030:49;3073:4;3068:3;3064:14;3048;1346:10;1335:22;1323:35;;1270:94;3030:49;;3098:6;3152:2;3145:5;3141:14;3135:21;3165:58;3219:2;3214:3;3210:12;3194:14;3165:58;:::i;:::-;;;3242:6;3296:2;3289:5;3285:14;3279:21;3309:58;3363:2;3358:3;3354:12;3338:14;3309:58;:::i;:::-;;;3386:6;3440:2;3433:5;3429:14;3423:21;3453:58;3507:2;3502:3;3498:12;3482:14;3453:58;:::i;:::-;;;3530:6;3585:2;3578:5;3574:14;3568:21;3598:59;3653:2;3648:3;3644:12;3627:15;3598:59;:::i;:::-;;;3676:6;3731:2;3724:5;3720:14;3714:21;3744:59;3799:2;3794:3;3790:12;3773:15;3744:59;:::i;:::-;;;3822:6;3877:2;3870:5;3866:14;3860:21;3890:59;3945:2;3940:3;3936:12;3919:15;3890:59;:::i;:::-;;;2121:1834;;:::o;3960:145::-;4046:1;4039:5;4036:12;4026:46;;4052:18;;:::i;4266:335::-;4369:5;4392:1;4402:193;4416:4;4413:1;4410:11;4402:193;;;4463:48;4507:3;4498:6;4492:13;4186:12;;4174:25;;4248:4;4237:16;;;4231:23;4215:14;;4208:47;4110:151;4463:48;4540:4;4531:14;;;;;4580:4;4568:17;;;;;4436:1;4429:9;4402:193;;4606:1627;4675:49;4720:3;4712:5;4706:12;4675:49;:::i;:::-;4743:4;4793:2;4786:5;4782:14;4776:21;4806:58;4860:2;4855:3;4851:12;4837;4806:58;:::i;:::-;-1:-1:-1;4883:4:67;4924:14;;;4918:21;4989;;5097:1;4958:12;;;5107:195;5121:4;5118:1;5115:11;5107:195;;;5168:50;5212:5;5203:6;5197:13;4186:12;;4174:25;;4248:4;4237:16;;;4231:23;4215:14;;4208:47;4110:151;5168:50;5277:15;;;;5141:1;5134:9;;;;;5240:14;;5107:195;;;-1:-1:-1;;;5339:23:67;;;5333:30;;5372:65;5432:3;5423:13;;5333:30;5372:65;:::i;:::-;5474:23;;;5468:30;4186:12;;5561:4;5552:14;;4174:25;4248:4;4237:16;;;4231:23;4215:14;;;4208:47;5624:4;5604:25;;5598:32;4186:12;;5693:4;5684:14;;4174:25;4237:16;;4231:23;4215:14;;;4208:47;5756:4;5736:25;;5730:32;4186:12;;5825:4;5816:14;;4174:25;4237:16;;4231:23;4215:14;;;4208:47;5888:4;5868:25;;5862:32;4186:12;;5957:4;5948:14;;4174:25;4237:16;;4231:23;4215:14;;;4208:47;6020:4;6000:25;;5994:32;4186:12;;6089:4;6080:14;;4174:25;4237:16;;4231:23;4215:14;;;4208:47;6152:4;6132:25;;;6126:32;4186:12;;6221:4;6212:14;;4174:25;4237:16;4231:23;4215:14;;;;4208:47;;;;-1:-1:-1;;4606:1627:67:o;6238:326::-;6331:5;6354:1;6364:194;6378:4;6375:1;6372:11;6364:194;;;6437:13;;6425:26;;6474:4;6498:12;;;;6533:15;;;;6398:1;6391:9;6364:194;;6569:1166;6677:12;;6624:3;;6652:6;;6711:3;6624;6788:200;6802:4;6799:1;6796:11;6788:200;;;6863:13;;6849:28;;6900:4;6963:15;;;;6926:14;;;;6822:1;6815:9;6788:200;;;6792:3;;;7034:4;7027:5;7023:16;7017:23;7049:65;7106:6;7101:3;7097:16;7083:12;7049:65;:::i;:::-;-1:-1:-1;7162:4:67;7151:16;;7145:23;1346:10;1335:22;7220:6;7211:16;;1323:35;7276:4;7265:16;;7259:23;7291:58;7341:6;7332:16;;7259:23;7291:58;:::i;:::-;-1:-1:-1;7397:4:67;7386:16;;7380:23;1346:10;1335:22;7455:6;7446:16;;1323:35;7511:4;7500:16;;7494:23;481:13;474:21;7567:6;7558:16;;462:34;7623:4;7612:16;;7606:23;7654:6;7645:16;;7638:28;;;7682:47;7716:12;;;7606:23;7682:47;:::i;:::-;7675:54;6569:1166;-1:-1:-1;;;;;6569:1166:67:o;7740:1526::-;7921:2;7903:21;;;7969:13;;590:12;;7984:18;;;578:25;655:16;649:23;642:31;635:39;619:14;;;612:63;8057:2;8049:6;8045:15;8039:22;8034:2;8023:9;8019:18;8012:50;7884:4;8109;8101:6;8097:17;8091:24;8134:6;8177:2;8171:3;8160:9;8156:19;8149:31;8203:52;8250:3;8239:9;8235:19;8221:12;8203:52;:::i;:::-;8189:66;;8304:2;8296:6;8292:15;8286:22;8317:54;8366:3;8355:9;8351:19;8335:14;-1:-1:-1;;;;;1228:30:67;1216:43;;1163:102;8317:54;-1:-1:-1;8420:3:67;8408:16;;8402:23;1346:10;1335:22;;8483:3;8468:19;;1323:35;8434:54;8543:3;8535:6;8531:16;8525:23;8519:3;8508:9;8504:19;8497:52;8598:3;8590:6;8586:16;8580:23;8622:3;8634:71;8701:2;8690:9;8686:18;8670:14;590:12;;578:25;;666:4;655:16;;;649:23;642:31;635:39;619:14;;612:63;507:174;8634:71;8742:3;8730:16;;8724:23;8766:3;8785:18;;;8778:30;;;;8845:15;;;8839:22;1482:12;;-1:-1:-1;;;;;1478:21:67;;;8926:3;8911:19;;1466:34;1546:4;1535:16;;1529:23;1571:10;1613:21;;;1597:14;;;1590:45;1688:4;1677:16;;1671:23;1667:32;;1651:14;;;1644:56;1753:4;1742:16;;1736:23;1732:32;1716:14;;;1709:56;1818:4;1807:16;;;1801:23;1797:32;1781:14;;;1774:56;8980:6;8968:19;;8962:26;;-1:-1:-1;8997:66:67;9058:3;9043:19;;8962:26;8997:66;:::i;:::-;9100:15;;9094:22;9156;;;-1:-1:-1;;9152:36:67;9132:18;;;9125:64;9094:22;-1:-1:-1;9206:54:67;;-1:-1:-1;9160:6:67;9094:22;9206:54;:::i;9271:521::-;9348:4;9354:6;9414:11;9401:25;9508:2;9504:7;9493:8;9477:14;9473:29;9469:43;9449:18;9445:68;9435:96;;9527:1;9524;9517:12;9435:96;9554:33;;9606:20;;;-1:-1:-1;;;;;;9638:30:67;;9635:50;;;9681:1;9678;9671:12;9635:50;9714:4;9702:17;;-1:-1:-1;9745:14:67;9741:27;;;9731:38;;9728:58;;;9782:1;9779;9772:12;9728:58;9271:521;;;;;:::o;9797:331::-;9902:9;9913;9955:8;9943:10;9940:24;9937:44;;;9977:1;9974;9967:12;9937:44;10006:6;9996:8;9993:20;9990:40;;;10026:1;10023;10016:12;9990:40;-1:-1:-1;;10052:23:67;;;10097:25;;;;;-1:-1:-1;9797:331:67:o;10133:271::-;10316:6;10308;10303:3;10290:33;10272:3;10342:16;;10367:13;;;10342:16;10133:271;-1:-1:-1;10133:271:67:o;10409:298::-;10468:6;10521:2;10509:9;10500:7;10496:23;10492:32;10489:52;;;10537:1;10534;10527:12;10489:52;10563:23;;-1:-1:-1;;10615:43:67;;10605:54;;10595:82;;10673:1;10670;10663:12;10712:286;10771:6;10824:2;10812:9;10803:7;10799:23;10795:32;10792:52;;;10840:1;10837;10830:12;10792:52;10866:23;;-1:-1:-1;;;;;10918:31:67;;10908:42;;10898:70;;10964:1;10961;10954:12;11003:997;11319:4;11348:3;11378:6;11367:9;11360:25;11421:6;11416:2;11405:9;11401:18;11394:34;11464:6;11459:2;11448:9;11444:18;11437:34;11523:26;11519:31;11511:6;11507:44;11502:2;11491:9;11487:18;11480:72;11589:6;11583:3;11572:9;11568:19;11561:35;11633:2;11627:3;11616:9;11612:19;11605:31;11672:6;11667:2;11656:9;11652:18;11645:34;;11698:3;11751:6;11743;11738:2;11727:9;11723:18;11710:48;11807:1;11778:22;;;11774:31;;11767:42;11911:3;11896:19;;11889:35;;;;-1:-1:-1;;;;;;11961:32:67;;;;11955:3;11940:19;;11933:61;11870:2;11849:15;;;-1:-1:-1;;11845:29:67;11830:45;;;11826:54;;11003:997;-1:-1:-1;;;;;;11003:997:67:o;12005:118::-;12091:5;12084:13;12077:21;12070:5;12067:32;12057:60;;12113:1;12110;12103:12;12057:60;12005:118;:::o;12128:245::-;12195:6;12248:2;12236:9;12227:7;12223:23;12219:32;12216:52;;;12264:1;12261;12254:12;12216:52;12296:9;12290:16;12315:28;12337:5;12315:28;:::i;12378:127::-;12439:10;12434:3;12430:20;12427:1;12420:31;12470:4;12467:1;12460:15;12494:4;12491:1;12484:15;12510:257;12582:4;12576:11;;;12614:17;;-1:-1:-1;;;;;12646:34:67;;12682:22;;;12643:62;12640:88;;;12708:18;;:::i;:::-;12744:4;12737:24;12510:257;:::o;12772:250::-;12839:2;12833:9;12881:6;12869:19;;-1:-1:-1;;;;;12903:34:67;;12939:22;;;12900:62;12897:88;;;12965:18;;:::i;13027:253::-;13099:2;13093:9;13141:4;13129:17;;-1:-1:-1;;;;;13161:34:67;;13197:22;;;13158:62;13155:88;;;13223:18;;:::i;13285:255::-;13357:2;13351:9;13399:6;13387:19;;-1:-1:-1;;;;;13421:34:67;;13457:22;;;13418:62;13415:88;;;13483:18;;:::i;13545:253::-;13617:2;13611:9;13659:4;13647:17;;-1:-1:-1;;;;;13679:34:67;;13715:22;;;13676:62;13673:88;;;13741:18;;:::i;13803:255::-;13875:2;13869:9;13917:6;13905:19;;-1:-1:-1;;;;;13939:34:67;;13975:22;;;13936:62;13933:88;;;14001:18;;:::i;14063:128::-;14128:20;;14157:28;14128:20;14157:28;:::i;:::-;14063:128;;;:::o;14196:362::-;14260:5;14308:4;14296:9;14291:3;14287:19;14283:30;14280:50;;;14326:1;14323;14316:12;14280:50;14348:22;;:::i;:::-;14339:31;;14406:9;14393:23;14386:5;14379:38;14469:2;14458:9;14454:18;14441:32;14482:30;14504:7;14482:30;:::i;:::-;14539:2;14528:14;;14521:31;14532:5;14196:362;-1:-1:-1;;14196:362:67:o;14563:719::-;14606:5;14659:3;14652:4;14644:6;14640:17;14636:27;14626:55;;14677:1;14674;14667:12;14626:55;14713:6;14700:20;-1:-1:-1;;;;;14776:2:67;14772;14769:10;14766:36;;;14782:18;;:::i;:::-;14857:2;14851:9;14825:2;14911:13;;-1:-1:-1;;14907:22:67;;;14931:2;14903:31;14899:40;14887:53;;;14955:18;;;14975:22;;;14952:46;14949:72;;;15001:18;;:::i;:::-;15041:10;15037:2;15030:22;15076:2;15068:6;15061:18;15122:3;15115:4;15110:2;15102:6;15098:15;15094:26;15091:35;15088:55;;;15139:1;15136;15129:12;15088:55;15203:2;15196:4;15188:6;15184:17;15177:4;15169:6;15165:17;15152:54;15250:1;15243:4;15238:2;15230:6;15226:15;15222:26;15215:37;15270:6;15261:15;;;;;;14563:719;;;;:::o;15287:171::-;15354:20;;-1:-1:-1;;;;;15403:30:67;;15393:41;;15383:69;;15448:1;15445;15438:12;15463:163;15530:20;;15590:10;15579:22;;15569:33;;15559:61;;15616:1;15613;15606:12;15631:696;15684:5;15732:4;15720:9;15715:3;15711:19;15707:30;15704:50;;;15750:1;15747;15740:12;15704:50;15783:2;15777:9;15825:4;15817:6;15813:17;15896:6;15884:10;15881:22;-1:-1:-1;;;;;15848:10:67;15845:34;15842:62;15839:88;;;15907:18;;:::i;:::-;15943:2;15936:22;15976:6;-1:-1:-1;15976:6:67;16006:28;16024:9;16006:28;:::i;:::-;15998:6;15991:44;16068:37;16101:2;16090:9;16086:18;16068:37;:::i;:::-;16063:2;16055:6;16051:15;16044:62;16139:37;16172:2;16161:9;16157:18;16139:37;:::i;:::-;16134:2;16126:6;16122:15;16115:62;16210:37;16243:2;16232:9;16228:18;16210:37;:::i;:::-;16205:2;16197:6;16193:15;16186:62;16282:38;16315:3;16304:9;16300:19;16282:38;:::i;:::-;16276:3;16268:6;16264:16;16257:64;;15631:696;;;;:::o;16332:153::-;16410:20;;16459:1;16449:12;;16439:40;;16475:1;16472;16465:12;16490:1416;16548:5;16596:6;16584:9;16579:3;16575:19;16571:32;16568:52;;;16616:1;16613;16606:12;16568:52;16638:17;;:::i;:::-;16629:26;;16678:39;16707:9;16678:39;:::i;:::-;16671:5;16664:54;16750:48;16794:2;16783:9;16779:18;16750:48;:::i;:::-;16745:2;16738:5;16734:14;16727:72;16831:48;16875:2;16864:9;16860:18;16831:48;:::i;:::-;16826:2;16819:5;16815:14;16808:72;16912:48;16956:2;16945:9;16941:18;16912:48;:::i;:::-;16907:2;16900:5;16896:14;16889:72;16994:49;17038:3;17027:9;17023:19;16994:49;:::i;:::-;16988:3;16981:5;16977:15;16970:74;17077:49;17121:3;17110:9;17106:19;17077:49;:::i;:::-;17071:3;17064:5;17060:15;17053:74;17160:49;17204:3;17193:9;17189:19;17160:49;:::i;:::-;17154:3;17147:5;17143:15;17136:74;17243:38;17276:3;17265:9;17261:19;17243:38;:::i;:::-;17237:3;17230:5;17226:15;17219:63;17301:3;17336:48;17380:2;17369:9;17365:18;17336:48;:::i;:::-;17320:14;;;17313:72;17404:3;17439:48;17468:18;;;17439:48;:::i;:::-;17423:14;;;17416:72;17507:3;17542:48;17571:18;;;17542:48;:::i;:::-;17526:14;;;17519:72;17610:3;17645:48;17674:18;;;17645:48;:::i;:::-;17629:14;;;17622:72;17713:3;17748:48;17777:18;;;17748:48;:::i;:::-;17732:14;;;17725:72;17816:3;17851:48;17880:18;;;17851:48;:::i;:::-;17835:14;;;17828:72;17839:5;16490:1416;-1:-1:-1;;16490:1416:67:o;17911:668::-;17961:5;18014:3;18007:4;17999:6;17995:17;17991:27;17981:55;;18032:1;18029;18022:12;17981:55;18065:2;18059:9;18087:3;18129:2;18121:6;18117:15;18198:6;18186:10;18183:22;-1:-1:-1;;;;;18150:10:67;18147:34;18144:62;18141:88;;;18209:18;;:::i;:::-;18245:2;18238:22;18309:15;;18280:6;18336:15;;;18333:35;;;18364:1;18361;18354:12;18333:35;18388:6;18403:146;18419:6;18414:3;18411:15;18403:146;;;18487:17;;18475:30;;18534:4;18525:14;;;;18436;18403:146;;;-1:-1:-1;18567:6:67;;17911:668;-1:-1:-1;;;;;17911:668:67:o;18584:155::-;18664:20;;18713:1;18703:12;;18693:40;;18729:1;18726;18719:12;18744:285;18801:5;18849:4;18837:9;18832:3;18828:19;18824:30;18821:50;;;18867:1;18864;18857:12;18821:50;18889:22;;:::i;:::-;18880:31;;18947:9;18934:23;18927:5;18920:38;19018:2;19007:9;19003:18;18990:32;18985:2;18978:5;18974:14;18967:56;18744:285;;;;:::o;19034:698::-;19094:5;19147:3;19140:4;19132:6;19128:17;19124:27;19114:55;;19165:1;19162;19155:12;19114:55;19188:2;19219;19213:9;19261:3;19253:6;19249:16;19331:6;19319:10;19316:22;-1:-1:-1;;;;;19283:10:67;19280:34;19277:62;19274:88;;;19342:18;;:::i;:::-;19371:22;;19413:6;19454:3;19442:16;;19470:15;;;19467:35;;;19498:1;19495;19488:12;19467:35;19522:6;19537:165;19553:6;19548:3;19545:15;19537:165;;;19619:38;19653:3;19648;19619:38;:::i;:::-;19607:51;;19687:4;19678:14;;;;19570:12;;19537:165;;;-1:-1:-1;19720:6:67;;19034:698;-1:-1:-1;;;;;;19034:698:67:o;19737:720::-;19819:5;19872:3;19865:4;19857:6;19853:17;19849:27;19839:55;;19890:1;19887;19880:12;19839:55;19913:2;19944;19938:9;19986:3;19978:6;19974:16;20056:6;20044:10;20041:22;-1:-1:-1;;;;;20008:10:67;20005:34;20002:62;19999:88;;;20067:18;;:::i;:::-;20096:22;;20138:6;20179:3;20167:16;;20195:15;;;20192:35;;;20223:1;20220;20213:12;20192:35;20247:6;20262:165;20278:6;20273:3;20270:15;20262:165;;;20344:38;20378:3;20373;20344:38;:::i;:::-;20332:51;;20412:4;20403:14;;;;20295:12;;20262:165;;20462:1264;20524:5;20563:9;20558:3;20554:19;20593:6;20589:2;20585:15;20582:35;;;20613:1;20610;20603:12;20582:35;20635:22;;:::i;:::-;20626:31;;20680:41;20711:9;20680:41;:::i;:::-;20673:5;20666:56;20754:50;20800:2;20789:9;20785:18;20754:50;:::i;:::-;20749:2;20742:5;20738:14;20731:74;20824:6;20864:2;20858;20854:7;20850:2;20846:16;20842:25;20839:45;;;20880:1;20877;20870:12;20839:45;20908:22;;:::i;:::-;20893:37;;20955:59;21010:3;21005:2;20994:9;20990:18;20955:59;:::i;:::-;20946:7;20939:76;21049:82;21127:3;21121;21110:9;21106:19;21049:82;:::i;:::-;21044:2;21035:7;21031:16;21024:108;21166:55;21217:3;21210:4;21199:9;21195:20;21166:55;:::i;:::-;21161:2;21152:7;21148:16;21141:81;21258:55;21309:3;21302:4;21291:9;21287:20;21258:55;:::i;:::-;21251:4;21242:7;21238:18;21231:83;21350:55;21401:3;21394:4;21383:9;21379:20;21350:55;:::i;:::-;21343:4;21334:7;21330:18;21323:83;21442:55;21493:3;21486:4;21475:9;21471:20;21442:55;:::i;:::-;21435:4;21426:7;21422:18;21415:83;21534:55;21585:3;21578:4;21567:9;21563:20;21534:55;:::i;:::-;21527:4;21518:7;21514:18;21507:83;21626:53;21675:3;21670:2;21659:9;21655:18;21626:53;:::i;:::-;21619:4;21606:18;;21599:81;-1:-1:-1;21707:2:67;21696:14;;21689:31;21700:5;20462:1264;-1:-1:-1;;20462:1264:67:o;21731:659::-;21792:5;21845:3;21838:4;21830:6;21826:17;21822:27;21812:55;;21863:1;21860;21853:12;21812:55;21896:2;21890:9;21938:3;21930:6;21926:16;22008:6;21996:10;21993:22;-1:-1:-1;;;;;21960:10:67;21957:34;21954:62;21951:88;;;22019:18;;:::i;:::-;22055:2;22048:22;22090:6;22131:3;22119:16;;22147:15;;;22144:35;;;22175:1;22172;22165:12;22144:35;22199:6;22214:146;22230:6;22225:3;22222:15;22214:146;;;22298:17;;22286:30;;22345:4;22336:14;;;;22247;22214:146;;22395:849;22454:5;22502:6;22490:9;22485:3;22481:19;22477:32;22474:52;;;22522:1;22519;22512:12;22474:52;22544:22;;:::i;:::-;22535:31;;22589:40;22625:3;22614:9;22589:40;:::i;:::-;22582:5;22575:55;22664:59;22719:3;22713;22702:9;22698:19;22664:59;:::i;:::-;22657:4;22650:5;22646:16;22639:85;22758:39;22791:4;22780:9;22776:20;22758:39;:::i;:::-;22751:4;22744:5;22740:16;22733:65;22832:62;22890:3;22883:4;22872:9;22868:20;22832:62;:::i;:::-;22825:4;22818:5;22814:16;22807:88;22929:39;22962:4;22951:9;22947:20;22929:39;:::i;:::-;22922:4;22915:5;22911:16;22904:65;23003:37;23034:4;23023:9;23019:20;23003:37;:::i;:::-;22996:4;22989:5;22985:16;22978:63;23092:4;23081:9;23077:20;23064:34;-1:-1:-1;;;;;23113:6:67;23110:30;23107:50;;;23153:1;23150;23143:12;23107:50;23191:46;23233:3;23224:6;23213:9;23209:22;23191:46;:::i;:::-;23184:4;23177:5;23173:16;23166:72;;22395:849;;;;:::o;23249:1499::-;23334:6;23387:2;23375:9;23366:7;23362:23;23358:32;23355:52;;;23403:1;23400;23393:12;23355:52;23443:9;23430:23;-1:-1:-1;;;;;23513:2:67;23505:6;23502:14;23499:34;;;23529:1;23526;23519:12;23499:34;23552:22;;;;23608:6;23590:16;;;23586:29;23583:49;;;23628:1;23625;23618:12;23583:49;23654:22;;:::i;:::-;23699:48;23739:7;23735:2;23699:48;:::i;:::-;23692:5;23685:63;23801:2;23797;23793:11;23780:25;23775:2;23768:5;23764:14;23757:49;23852:2;23848;23844:11;23831:25;23881:2;23871:8;23868:16;23865:36;;;23897:1;23894;23887:12;23865:36;23933:45;23970:7;23959:8;23955:2;23951:17;23933:45;:::i;:::-;23928:2;23921:5;23917:14;23910:69;;24011:31;24037:3;24033:2;24029:12;24011:31;:::i;:::-;24006:2;23999:5;23995:14;23988:55;24076:31;24102:3;24098:2;24094:12;24076:31;:::i;:::-;24070:3;24063:5;24059:15;24052:56;24162:3;24158:2;24154:12;24141:26;24135:3;24128:5;24124:15;24117:51;24201:58;24251:7;24245:3;24241:2;24237:12;24201:58;:::i;:::-;24195:3;24188:5;24184:15;24177:83;24279:3;24336:2;24332;24328:11;24315:25;24309:3;24302:5;24298:15;24291:50;24360:3;24399:46;24437:7;24432:2;24428;24424:11;24399:46;:::i;:::-;24390:6;24383:5;24379:18;24372:74;24478:52;24522:7;24516:3;24512:2;24508:12;24478:52;:::i;:::-;24473:2;24466:5;24462:14;24455:76;24577:3;24573:2;24569:12;24556:26;24540:42;;24607:2;24597:8;24594:16;24591:36;;;24623:1;24620;24613:12;24591:36;24659:58;24709:7;24698:8;24694:2;24690:17;24659:58;:::i;:::-;24643:14;;;24636:82;-1:-1:-1;24647:5:67;23249:1499;-1:-1:-1;;;;;23249:1499:67: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\":\"batcherPaymentService\",\"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\":\"0x9fcd2cb923e5ef666b1b18a7e2a77d915d5bef119214dfc53cc5c6c044a87bc5\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://f32c8e9002c9a8bd9e23f63d430193e092e6b6cea56a11f839304feff3b333c7\",\"dweb:/ipfs/QmS2o2CeHebjAuviv715FsCNam95qy19qijJz4aw87YRJL\"]},\"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\":\"0x68ef2223020d5b4ce1fb2b0b016fb1f66f6b84edbb0370f96d9c1398146e9409\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://57ba2b7b58fc15cdc9eefd70ad09bf8719ff981eabb64d6fca0da049456b2541\",\"dweb:/ipfs/QmPKZJoGwmBnA4gm1C4VySZr9iscQyLd1MtFVz1RkjctzV\"]},\"src/MinaAccountValidation.sol\":{\"keccak256\":\"0x90ad6c63ccdfaf5ece74b0c5d1be2f5f055af0bac6ad875638c20ada517cad9e\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://0c6935178db6825ed5b3f223965633f264c47e5d6fc7246ed73b75ca5f963dc7\",\"dweb:/ipfs/Qmcx4xD164Z2P3zCAijesowyc5aGbY9G3iUWkP8s64h386\"]}},\"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":"batcherPaymentService","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":"0x9fcd2cb923e5ef666b1b18a7e2a77d915d5bef119214dfc53cc5c6c044a87bc5","urls":["bzz-raw://f32c8e9002c9a8bd9e23f63d430193e092e6b6cea56a11f839304feff3b333c7","dweb:/ipfs/QmS2o2CeHebjAuviv715FsCNam95qy19qijJz4aw87YRJL"],"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":"0x68ef2223020d5b4ce1fb2b0b016fb1f66f6b84edbb0370f96d9c1398146e9409","urls":["bzz-raw://57ba2b7b58fc15cdc9eefd70ad09bf8719ff981eabb64d6fca0da049456b2541","dweb:/ipfs/QmPKZJoGwmBnA4gm1C4VySZr9iscQyLd1MtFVz1RkjctzV"],"license":"UNLICENSED"},"src/MinaAccountValidation.sol":{"keccak256":"0x90ad6c63ccdfaf5ece74b0c5d1be2f5f055af0bac6ad875638c20ada517cad9e","urls":["bzz-raw://0c6935178db6825ed5b3f223965633f264c47e5d6fc7246ed73b75ca5f963dc7","dweb:/ipfs/Qmcx4xD164Z2P3zCAijesowyc5aGbY9G3iUWkP8s64h386"],"license":"UNLICENSED"}},"version":1},"id":64} \ No newline at end of file diff --git a/core/abi/MinaBridge.json b/core/abi/MinaBridge.json index 54e9c105..ce39d8da 100644 --- a/core/abi/MinaBridge.json +++ b/core/abi/MinaBridge.json @@ -1 +1 @@ -{"abi":[{"type":"constructor","inputs":[{"name":"_alignedServiceAddr","type":"address","internalType":"address payable"},{"name":"_tipStateHash","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"BRIDGE_TRANSITION_FRONTIER_LEN","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getChainLedgerHashes","inputs":[],"outputs":[{"name":"","type":"bytes32[16]","internalType":"bytes32[16]"}],"stateMutability":"view"},{"type":"function","name":"getChainStateHashes","inputs":[],"outputs":[{"name":"","type":"bytes32[16]","internalType":"bytes32[16]"}],"stateMutability":"view"},{"type":"function","name":"getTipLedgerHash","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getTipStateHash","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"updateChain","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"},{"name":"batcherPaymentService","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"error","name":"NewStateIsNotValid","inputs":[]},{"type":"error","name":"TipStateIsWrong","inputs":[{"name":"pubInputTipStateHash","type":"bytes32","internalType":"bytes32"},{"name":"tipStatehash","type":"bytes32","internalType":"bytes32"}]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b506040516106ed3803806106ed83398101604081905261002f91610073565b602080546001600160a01b0319166001600160a01b038416179055806000610059600160106100ad565b60108110610069576100696100d2565b0155506100e89050565b6000806040838503121561008657600080fd5b82516001600160a01b038116811461009d57600080fd5b6020939093015192949293505050565b6000828210156100cd57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b6105f6806100f76000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806303f93e50146100675780632bc4f8d91461008557806337baff0f1461008d5780633886c09b146100a2578063b8184745146100b8578063fb299cd8146100c0575b600080fd5b61006f6100c8565b60405161007c91906102fc565b60405180910390f35b61006f610104565b6100a061009b3660046103ed565b61013a565b005b6100aa6102a8565b60405190815260200161007c565b6100aa6102ce565b6100aa601081565b6100d06102dd565b604080516102008101918290529060009060109082845b8154815260200190600101908083116100e7575050505050905090565b61010c6102dd565b60408051610200810191829052601080548252909181906011602085018083116100e7575050505050905090565b6020820151600061014d600160106104ad565b6010811061015d5761015d6104d2565b015481146101ac57806000610174600160106104ad565b60108110610184576101846104d2565b015460405163177b002560e31b81526004810192909252602482015260440160405180910390fd5b825160208085019190912090546040516306045a9160e01b81526000916001600160a01b0316906306045a91906101f5908e9086908f908f908f908f908f908e906004016104e8565b602060405180830381865afa158015610212573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102369190610597565b905080156102825760006010604087016102408801835b601081101561027857825185558151845560019485019493840193602093840193909201910161024d565b505050505061029b565b604051630114602f60e41b815260040160405180910390fd5b5050505050505050505050565b600060106102b76001826104ad565b601081106102c7576102c76104d2565b0154905090565b6000806102b7600160106104ad565b6040518061020001604052806010906020820280368337509192915050565b6102008101818360005b6010811015610325578151835260209283019290910190600101610306565b50505092915050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261035557600080fd5b813567ffffffffffffffff808211156103705761037061032e565b604051601f8301601f19908116603f011681019082821181831017156103985761039861032e565b816040528381528660208588010111156103b157600080fd5b836020870160208301376000602085830101528094505050505092915050565b80356001600160a01b03811681146103e857600080fd5b919050565b600080600080600080600080610100898b03121561040a57600080fd5b883597506020890135965060408901356bffffffffffffffffffffffff198116811461043557600080fd5b955060608901359450608089013567ffffffffffffffff8082111561045957600080fd5b6104658c838d01610344565b955060a08b0135945060c08b013591508082111561048257600080fd5b5061048f8b828c01610344565b92505061049e60e08a016103d1565b90509295985092959890939650565b6000828210156104cd57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b60006101008a835260208a818501528960408501526bffffffffffffffffffffffff19891660608501528760808501528160a085015286518083860152600092505b808310156105495787830182015185840161012001529181019161052a565b8083111561055c57600061012082870101525b60c08501879052601f01601f1916840161012001925061058a91505060e08301846001600160a01b03169052565b9998505050505050505050565b6000602082840312156105a957600080fd5b815180151581146105b957600080fd5b939250505056fea2646970667358221220f25c704c27d0338d9dcf57842261213ec78d09c5395cf3593f97659450d6a54664736f6c634300080c0033","sourceMap":"369:4106:65:-:0;;;1077:224;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1159:7;:57;;-1:-1:-1;;;;;;1159:57:65;-1:-1:-1;;;;;1159:57:65;;;;;1281:13;-1:-1:-1;1243:34:65;-1:-1:-1;572:2:65;1243:34;:::i;:::-;1226:52;;;;;;;:::i;:::-;;:68;-1:-1:-1;369:4106:65;;-1:-1:-1;369:4106:65;14:359:67;101:6;109;162:2;150:9;141:7;137:23;133:32;130:52;;;178:1;175;168:12;130:52;204:16;;-1:-1:-1;;;;;249:31:67;;239:42;;229:70;;295:1;292;285:12;229:70;363:2;348:18;;;;342:25;318:5;;342:25;;-1:-1:-1;;;14:359:67:o;378:222::-;418:4;446:1;443;440:8;437:131;;;490:10;485:3;481:20;478:1;471:31;525:4;522:1;515:15;553:4;550:1;543:15;437:131;-1:-1:-1;585:9:67;;378:222::o;605:127::-;666:10;661:3;657:20;654:1;647:31;697:4;694:1;687:15;721:4;718:1;711:15;605:127;369:4106:65;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106100625760003560e01c806303f93e50146100675780632bc4f8d91461008557806337baff0f1461008d5780633886c09b146100a2578063b8184745146100b8578063fb299cd8146100c0575b600080fd5b61006f6100c8565b60405161007c91906102fc565b60405180910390f35b61006f610104565b6100a061009b3660046103ed565b61013a565b005b6100aa6102a8565b60405190815260200161007c565b6100aa6102ce565b6100aa601081565b6100d06102dd565b604080516102008101918290529060009060109082845b8154815260200190600101908083116100e7575050505050905090565b61010c6102dd565b60408051610200810191829052601080548252909181906011602085018083116100e7575050505050905090565b6020820151600061014d600160106104ad565b6010811061015d5761015d6104d2565b015481146101ac57806000610174600160106104ad565b60108110610184576101846104d2565b015460405163177b002560e31b81526004810192909252602482015260440160405180910390fd5b825160208085019190912090546040516306045a9160e01b81526000916001600160a01b0316906306045a91906101f5908e9086908f908f908f908f908f908e906004016104e8565b602060405180830381865afa158015610212573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102369190610597565b905080156102825760006010604087016102408801835b601081101561027857825185558151845560019485019493840193602093840193909201910161024d565b505050505061029b565b604051630114602f60e41b815260040160405180910390fd5b5050505050505050505050565b600060106102b76001826104ad565b601081106102c7576102c76104d2565b0154905090565b6000806102b7600160106104ad565b6040518061020001604052806010906020820280368337509192915050565b6102008101818360005b6010811015610325578151835260209283019290910190600101610306565b50505092915050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261035557600080fd5b813567ffffffffffffffff808211156103705761037061032e565b604051601f8301601f19908116603f011681019082821181831017156103985761039861032e565b816040528381528660208588010111156103b157600080fd5b836020870160208301376000602085830101528094505050505092915050565b80356001600160a01b03811681146103e857600080fd5b919050565b600080600080600080600080610100898b03121561040a57600080fd5b883597506020890135965060408901356bffffffffffffffffffffffff198116811461043557600080fd5b955060608901359450608089013567ffffffffffffffff8082111561045957600080fd5b6104658c838d01610344565b955060a08b0135945060c08b013591508082111561048257600080fd5b5061048f8b828c01610344565b92505061049e60e08a016103d1565b90509295985092959890939650565b6000828210156104cd57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b60006101008a835260208a818501528960408501526bffffffffffffffffffffffff19891660608501528760808501528160a085015286518083860152600092505b808310156105495787830182015185840161012001529181019161052a565b8083111561055c57600061012082870101525b60c08501879052601f01601f1916840161012001925061058a91505060e08301846001600160a01b03169052565b9998505050505050505050565b6000602082840312156105a957600080fd5b815180151581146105b957600080fd5b939250505056fea2646970667358221220f25c704c27d0338d9dcf57842261213ec78d09c5395cf3593f97659450d6a54664736f6c634300080c0033","sourceMap":"369:4106:65:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1764:142;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1977:144;;;:::i;2127:2346::-;;;;;;:::i;:::-;;:::i;:::-;;1557:137;;;:::i;:::-;;;2776:25:67;;;2764:2;2749:18;1557:137:65;2630:177:67;1361:135:65;;;:::i;515:59::-;;572:2;515:59;;1764:142;1818:46;;:::i;:::-;1876:23;;;;;;;;;;;-1:-1:-1;;1876:23:65;;-1:-1:-1;1876:23:65;;;;;;;;;;;;;;;;;;;;;;;;1764:142;:::o;1977:144::-;2032:46;;:::i;:::-;2090:24;;;;;;;;;;2097:17;2090:24;;;;;;2097:17;;2090:24;;;;;;;;;;;;;;;;1977:144;:::o;2127:2346::-;2588:4;2574:19;;2568:26;2471:34;2665;2698:1;572:2;2665:34;:::i;:::-;2648:52;;;;;;;:::i;:::-;;;2618:26;:82;2614:217;;2739:26;2767:16;2784:34;2817:1;572:2;2784:34;:::i;:::-;2767:52;;;;;;;:::i;:::-;;;2723:97;;-1:-1:-1;;;2723:97:65;;;;;3527:25:67;;;;3568:18;;;3561:34;3500:18;;2723:97:65;;;;;;;2614:217;2870:19;;;;;;;;;;2926:7;;:304;;-1:-1:-1;;;2926:304:65;;2841:26;;-1:-1:-1;;;;;2926:7:65;;:28;;:304;;2968:15;;2870:19;;3029:30;;3073:18;;3105:15;;3134:11;;3159:26;;3199:21;;2926:304;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2900:330;;3245:18;3241:1226;;;3383:21;3441:22;3731:2;3717:17;;3866:57;;;3383:21;3941:444;3966:30;3963:1;3960:37;3941:444;;;4059:18;;4039:39;;4232:19;;4211:41;;4187:1;4170:19;;;;4347:20;;;;4131:2;4114:20;;;;4289:21;;;;4005:9;3941:444;;;3945:14;;;;;3241:1226;;;4436:20;;-1:-1:-1;;;4436:20:65;;;;;;;;;;;3241:1226;2461:2012;;;2127:2346;;;;;;;;:::o;1557:137::-;1608:7;1634:17;1652:34;1685:1;1634:17;1652:34;:::i;:::-;1634:53;;;;;;;:::i;:::-;;;1627:60;;1557:137;:::o;1361:135::-;1411:7;;1454:34;1487:1;572:2;1454:34;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:497:67:-;196:3;181:19;;185:9;277:6;154:4;311:194;325:4;322:1;319:11;311:194;;;384:13;;372:26;;421:4;445:12;;;;480:15;;;;345:1;338:9;311:194;;;315:3;;;14:497;;;;:::o;516:127::-;577:10;572:3;568:20;565:1;558:31;608:4;605:1;598:15;632:4;629:1;622:15;648:718;690:5;743:3;736:4;728:6;724:17;720:27;710:55;;761:1;758;751:12;710:55;797:6;784:20;823:18;860:2;856;853:10;850:36;;;866:18;;:::i;:::-;941:2;935:9;909:2;995:13;;-1:-1:-1;;991:22:67;;;1015:2;987:31;983:40;971:53;;;1039:18;;;1059:22;;;1036:46;1033:72;;;1085:18;;:::i;:::-;1125:10;1121:2;1114:22;1160:2;1152:6;1145:18;1206:3;1199:4;1194:2;1186:6;1182:15;1178:26;1175:35;1172:55;;;1223:1;1220;1213:12;1172:55;1287:2;1280:4;1272:6;1268:17;1261:4;1253:6;1249:17;1236:54;1334:1;1327:4;1322:2;1314:6;1310:15;1306:26;1299:37;1354:6;1345:15;;;;;;648:718;;;;:::o;1371:173::-;1439:20;;-1:-1:-1;;;;;1488:31:67;;1478:42;;1468:70;;1534:1;1531;1524:12;1468:70;1371:173;;;:::o;1549:1076::-;1689:6;1697;1705;1713;1721;1729;1737;1745;1798:3;1786:9;1777:7;1773:23;1769:33;1766:53;;;1815:1;1812;1805:12;1766:53;1838:23;;;-1:-1:-1;1908:2:67;1893:18;;1880:32;;-1:-1:-1;1962:2:67;1947:18;;1934:32;-1:-1:-1;;1995:43:67;;1985:54;;1975:82;;2053:1;2050;2043:12;1975:82;2076:5;-1:-1:-1;2128:2:67;2113:18;;2100:32;;-1:-1:-1;2183:3:67;2168:19;;2155:33;2207:18;2237:14;;;2234:34;;;2264:1;2261;2254:12;2234:34;2287:49;2328:7;2319:6;2308:9;2304:22;2287:49;:::i;:::-;2277:59;;2383:3;2372:9;2368:19;2355:33;2345:43;;2441:3;2430:9;2426:19;2413:33;2397:49;;2471:2;2461:8;2458:16;2455:36;;;2487:1;2484;2477:12;2455:36;;2510:51;2553:7;2542:8;2531:9;2527:24;2510:51;:::i;:::-;2500:61;;;2580:39;2614:3;2603:9;2599:19;2580:39;:::i;:::-;2570:49;;1549:1076;;;;;;;;;;;:::o;2994:222::-;3034:4;3062:1;3059;3056:8;3053:131;;;3106:10;3101:3;3097:20;3094:1;3087:31;3141:4;3138:1;3131:15;3169:4;3166:1;3159:15;3053:131;-1:-1:-1;3201:9:67;;2994:222::o;3221:127::-;3282:10;3277:3;3273:20;3270:1;3263:31;3313:4;3310:1;3303:15;3337:4;3334:1;3327:15;3715:1171;4021:4;4050:3;4080:6;4069:9;4062:25;4106:2;4144:6;4139:2;4128:9;4124:18;4117:34;4187:6;4182:2;4171:9;4167:18;4160:34;4246:26;4242:31;4234:6;4230:44;4225:2;4214:9;4210:18;4203:72;4312:6;4306:3;4295:9;4291:19;4284:35;4356:2;4350:3;4339:9;4335:19;4328:31;4388:6;4382:13;4431:6;4426:2;4415:9;4411:18;4404:34;4456:1;4447:10;;4466:141;4480:6;4477:1;4474:13;4466:141;;;4576:14;;;4572:23;;4566:30;4541:17;;;4560:3;4537:27;4530:67;4495:10;;;;4466:141;;;4625:6;4622:1;4619:13;4616:92;;;4696:1;4690:3;4681:6;4670:9;4666:22;4662:32;4655:43;4616:92;4811:3;4796:19;;4789:35;;;4769:2;4748:15;-1:-1:-1;;4744:29:67;4729:45;;4776:3;4725:55;;-1:-1:-1;4833:47:67;;-1:-1:-1;;4875:3:67;4860:19;;4852:6;-1:-1:-1;;;;;3672:31:67;3660:44;;3606:104;4833:47;3715:1171;;;;;;;;;;;:::o;4891:277::-;4958:6;5011:2;4999:9;4990:7;4986:23;4982:32;4979:52;;;5027:1;5024;5017:12;4979:52;5059:9;5053:16;5112:5;5105:13;5098:21;5091:5;5088:32;5078:60;;5134:1;5131;5124:12;5078:60;5157:5;4891:277;-1:-1:-1;;;4891:277:67:o","linkReferences":{}},"methodIdentifiers":{"BRIDGE_TRANSITION_FRONTIER_LEN()":"fb299cd8","getChainLedgerHashes()":"2bc4f8d9","getChainStateHashes()":"03f93e50","getTipLedgerHash()":"3886c09b","getTipStateHash()":"b8184745","updateChain(bytes32,bytes32,bytes20,bytes32,bytes,uint256,bytes,address)":"37baff0f"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.12+commit.f00d7308\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_alignedServiceAddr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"_tipStateHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"NewStateIsNotValid\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"pubInputTipStateHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"tipStatehash\",\"type\":\"bytes32\"}],\"name\":\"TipStateIsWrong\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BRIDGE_TRANSITION_FRONTIER_LEN\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getChainLedgerHashes\",\"outputs\":[{\"internalType\":\"bytes32[16]\",\"name\":\"\",\"type\":\"bytes32[16]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getChainStateHashes\",\"outputs\":[{\"internalType\":\"bytes32[16]\",\"name\":\"\",\"type\":\"bytes32[16]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getTipLedgerHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getTipStateHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"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\"},{\"internalType\":\"address\",\"name\":\"batcherPaymentService\",\"type\":\"address\"}],\"name\":\"updateChain\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"title\":\"Mina to Ethereum Bridge's smart contract.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"BRIDGE_TRANSITION_FRONTIER_LEN()\":{\"notice\":\"The length of the verified state chain (also called the bridge's transition frontier) to store.\"},\"getChainLedgerHashes()\":{\"notice\":\"Returns the latest verified chain ledger hashes.\"},\"getChainStateHashes()\":{\"notice\":\"Returns the latest verified chain state hashes.\"},\"getTipLedgerHash()\":{\"notice\":\"Returns the last verified ledger hash.\"},\"getTipStateHash()\":{\"notice\":\"Returns the last verified state hash.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/MinaBridge.sol\":\"MinaBridge\"},\"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\":\"0x9fcd2cb923e5ef666b1b18a7e2a77d915d5bef119214dfc53cc5c6c044a87bc5\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://f32c8e9002c9a8bd9e23f63d430193e092e6b6cea56a11f839304feff3b333c7\",\"dweb:/ipfs/QmS2o2CeHebjAuviv715FsCNam95qy19qijJz4aw87YRJL\"]},\"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\":\"0x68ef2223020d5b4ce1fb2b0b016fb1f66f6b84edbb0370f96d9c1398146e9409\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://57ba2b7b58fc15cdc9eefd70ad09bf8719ff981eabb64d6fca0da049456b2541\",\"dweb:/ipfs/QmPKZJoGwmBnA4gm1C4VySZr9iscQyLd1MtFVz1RkjctzV\"]},\"src/MinaBridge.sol\":{\"keccak256\":\"0x4866bdaf26f08a08a8cedd7d5a21e0ab8daa3762c3916e04214bc2494a2cc362\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://794655d015a266738be278995e1a0e454a25e72e935c5d60e2fce14454215438\",\"dweb:/ipfs/QmYEYQx6AtSxFydEDUnwEWd1n1n5NiANJui5M9KTjn4gWk\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.12+commit.f00d7308"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address payable","name":"_alignedServiceAddr","type":"address"},{"internalType":"bytes32","name":"_tipStateHash","type":"bytes32"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"error","name":"NewStateIsNotValid"},{"inputs":[{"internalType":"bytes32","name":"pubInputTipStateHash","type":"bytes32"},{"internalType":"bytes32","name":"tipStatehash","type":"bytes32"}],"type":"error","name":"TipStateIsWrong"},{"inputs":[],"stateMutability":"view","type":"function","name":"BRIDGE_TRANSITION_FRONTIER_LEN","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getChainLedgerHashes","outputs":[{"internalType":"bytes32[16]","name":"","type":"bytes32[16]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getChainStateHashes","outputs":[{"internalType":"bytes32[16]","name":"","type":"bytes32[16]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getTipLedgerHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getTipStateHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"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"},{"internalType":"address","name":"batcherPaymentService","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"updateChain"}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{"BRIDGE_TRANSITION_FRONTIER_LEN()":{"notice":"The length of the verified state chain (also called the bridge's transition frontier) to store."},"getChainLedgerHashes()":{"notice":"Returns the latest verified chain ledger hashes."},"getChainStateHashes()":{"notice":"Returns the latest verified chain state hashes."},"getTipLedgerHash()":{"notice":"Returns the last verified ledger hash."},"getTipStateHash()":{"notice":"Returns the last verified state hash."}},"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/MinaBridge.sol":"MinaBridge"},"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":"0x9fcd2cb923e5ef666b1b18a7e2a77d915d5bef119214dfc53cc5c6c044a87bc5","urls":["bzz-raw://f32c8e9002c9a8bd9e23f63d430193e092e6b6cea56a11f839304feff3b333c7","dweb:/ipfs/QmS2o2CeHebjAuviv715FsCNam95qy19qijJz4aw87YRJL"],"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":"0x68ef2223020d5b4ce1fb2b0b016fb1f66f6b84edbb0370f96d9c1398146e9409","urls":["bzz-raw://57ba2b7b58fc15cdc9eefd70ad09bf8719ff981eabb64d6fca0da049456b2541","dweb:/ipfs/QmPKZJoGwmBnA4gm1C4VySZr9iscQyLd1MtFVz1RkjctzV"],"license":"UNLICENSED"},"src/MinaBridge.sol":{"keccak256":"0x4866bdaf26f08a08a8cedd7d5a21e0ab8daa3762c3916e04214bc2494a2cc362","urls":["bzz-raw://794655d015a266738be278995e1a0e454a25e72e935c5d60e2fce14454215438","dweb:/ipfs/QmYEYQx6AtSxFydEDUnwEWd1n1n5NiANJui5M9KTjn4gWk"],"license":"UNLICENSED"}},"version":1},"ast":{"absolutePath":"src/MinaBridge.sol","id":47947,"exportedSymbols":{"AccountIsNotValid":[47786],"AlignedLayerServiceManager":[8505],"AlignedLayerServiceManagerStorage":[8527],"BLSSignatureChecker":[4846],"IAVSDirectory":[76],"IAlignedLayerServiceManager":[8603],"IPauserRegistry":[1244],"IRegistryCoordinator":[6102],"IRewardsCoordinator":[1584],"IStakeRegistry":[6512],"Merkle":[3209],"MinaBridge":[47946],"NewStateIsNotValid":[47776],"Pausable":[3505],"ServiceManagerBase":[5394],"TipStateIsWrong":[47782]},"nodeType":"SourceUnit","src":"39:4437:65","nodes":[{"id":47773,"nodeType":"PragmaDirective","src":"39:24:65","nodes":[],"literals":["solidity","^","0.8",".12"]},{"id":47774,"nodeType":"ImportDirective","src":"65:73:65","nodes":[],"absolutePath":"lib/aligned_layer/contracts/src/core/AlignedLayerServiceManager.sol","file":"aligned_layer/contracts/src/core/AlignedLayerServiceManager.sol","nameLocation":"-1:-1:-1","scope":47947,"sourceUnit":8506,"symbolAliases":[],"unitAlias":""},{"id":47776,"nodeType":"ErrorDefinition","src":"140:27:65","nodes":[],"name":"NewStateIsNotValid","nameLocation":"146:18:65","parameters":{"id":47775,"nodeType":"ParameterList","parameters":[],"src":"164:2:65"}},{"id":47782,"nodeType":"ErrorDefinition","src":"180:74:65","nodes":[],"name":"TipStateIsWrong","nameLocation":"186:15:65","parameters":{"id":47781,"nodeType":"ParameterList","parameters":[{"constant":false,"id":47778,"mutability":"mutable","name":"pubInputTipStateHash","nameLocation":"210:20:65","nodeType":"VariableDeclaration","scope":47782,"src":"202:28:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47777,"name":"bytes32","nodeType":"ElementaryTypeName","src":"202:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":47780,"mutability":"mutable","name":"tipStatehash","nameLocation":"240:12:65","nodeType":"VariableDeclaration","scope":47782,"src":"232:20:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47779,"name":"bytes32","nodeType":"ElementaryTypeName","src":"232:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"201:52:65"}},{"id":47786,"nodeType":"ErrorDefinition","src":"267:47:65","nodes":[],"name":"AccountIsNotValid","nameLocation":"273:17:65","parameters":{"id":47785,"nodeType":"ParameterList","parameters":[{"constant":false,"id":47784,"mutability":"mutable","name":"accountIdHash","nameLocation":"299:13:65","nodeType":"VariableDeclaration","scope":47786,"src":"291:21:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47783,"name":"bytes32","nodeType":"ElementaryTypeName","src":"291:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"290:23:65"}},{"id":47946,"nodeType":"ContractDefinition","src":"369:4106:65","nodes":[{"id":47791,"nodeType":"VariableDeclaration","src":"515:59:65","nodes":[],"constant":true,"documentation":{"id":47788,"nodeType":"StructuredDocumentation","src":"395:115:65","text":"@notice The length of the verified state chain (also called the bridge's transition\n frontier) to store."},"functionSelector":"fb299cd8","mutability":"constant","name":"BRIDGE_TRANSITION_FRONTIER_LEN","nameLocation":"539:30:65","scope":47946,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":47789,"name":"uint256","nodeType":"ElementaryTypeName","src":"515:7:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3136","id":47790,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"572:2:65","typeDescriptions":{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"},"value":"16"},"visibility":"public"},{"id":47796,"nodeType":"VariableDeclaration","src":"710:56:65","nodes":[],"constant":false,"documentation":{"id":47792,"nodeType":"StructuredDocumentation","src":"581:124:65","text":"@notice The state hash of the last verified chain of Mina states (also called\n the bridge's transition frontier)."},"mutability":"mutable","name":"chainStateHashes","nameLocation":"750:16:65","scope":47946,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$16_storage","typeString":"bytes32[16]"},"typeName":{"baseType":{"id":47793,"name":"bytes32","nodeType":"ElementaryTypeName","src":"710:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":47795,"length":{"id":47794,"name":"BRIDGE_TRANSITION_FRONTIER_LEN","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47791,"src":"718:30:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"ArrayTypeName","src":"710:39:65","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$16_storage_ptr","typeString":"bytes32[16]"}},"visibility":"internal"},{"id":47801,"nodeType":"VariableDeclaration","src":"902:57:65","nodes":[],"constant":false,"documentation":{"id":47797,"nodeType":"StructuredDocumentation","src":"772:125:65","text":"@notice The ledger hash of the last verified chain of Mina states (also called\n the bridge's transition frontier)."},"mutability":"mutable","name":"chainLedgerHashes","nameLocation":"942:17:65","scope":47946,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$16_storage","typeString":"bytes32[16]"},"typeName":{"baseType":{"id":47798,"name":"bytes32","nodeType":"ElementaryTypeName","src":"902:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":47800,"length":{"id":47799,"name":"BRIDGE_TRANSITION_FRONTIER_LEN","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47791,"src":"910:30:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"ArrayTypeName","src":"902:39:65","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$16_storage_ptr","typeString":"bytes32[16]"}},"visibility":"internal"},{"id":47805,"nodeType":"VariableDeclaration","src":"1036:34:65","nodes":[],"constant":false,"documentation":{"id":47802,"nodeType":"StructuredDocumentation","src":"966:65:65","text":"@notice Reference to the AlignedLayerServiceManager contract."},"mutability":"mutable","name":"aligned","nameLocation":"1063:7:65","scope":47946,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_AlignedLayerServiceManager_$8505","typeString":"contract AlignedLayerServiceManager"},"typeName":{"id":47804,"nodeType":"UserDefinedTypeName","pathNode":{"id":47803,"name":"AlignedLayerServiceManager","nodeType":"IdentifierPath","referencedDeclaration":8505,"src":"1036:26:65"},"referencedDeclaration":8505,"src":"1036:26:65","typeDescriptions":{"typeIdentifier":"t_contract$_AlignedLayerServiceManager_$8505","typeString":"contract AlignedLayerServiceManager"}},"visibility":"internal"},{"id":47827,"nodeType":"FunctionDefinition","src":"1077:224:65","nodes":[],"body":{"id":47826,"nodeType":"Block","src":"1149:152:65","nodes":[],"statements":[{"expression":{"id":47816,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":47812,"name":"aligned","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47805,"src":"1159:7:65","typeDescriptions":{"typeIdentifier":"t_contract$_AlignedLayerServiceManager_$8505","typeString":"contract AlignedLayerServiceManager"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":47814,"name":"_alignedServiceAddr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47807,"src":"1196:19:65","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":47813,"name":"AlignedLayerServiceManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8505,"src":"1169:26:65","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_AlignedLayerServiceManager_$8505_$","typeString":"type(contract AlignedLayerServiceManager)"}},"id":47815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1169:47:65","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_AlignedLayerServiceManager_$8505","typeString":"contract AlignedLayerServiceManager"}},"src":"1159:57:65","typeDescriptions":{"typeIdentifier":"t_contract$_AlignedLayerServiceManager_$8505","typeString":"contract AlignedLayerServiceManager"}},"id":47817,"nodeType":"ExpressionStatement","src":"1159:57:65"},{"expression":{"id":47824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":47818,"name":"chainStateHashes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47796,"src":"1226:16:65","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$16_storage","typeString":"bytes32[16] storage ref"}},"id":47822,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":47821,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"id":47819,"name":"BRIDGE_TRANSITION_FRONTIER_LEN","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47791,"src":"1243:30:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":47820,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1276:1:65","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"1243:34:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"1226:52:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":47823,"name":"_tipStateHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47809,"src":"1281:13:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1226:68:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":47825,"nodeType":"ExpressionStatement","src":"1226:68:65"}]},"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":47810,"nodeType":"ParameterList","parameters":[{"constant":false,"id":47807,"mutability":"mutable","name":"_alignedServiceAddr","nameLocation":"1105:19:65","nodeType":"VariableDeclaration","scope":47827,"src":"1089:35:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":47806,"name":"address","nodeType":"ElementaryTypeName","src":"1089:15:65","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":47809,"mutability":"mutable","name":"_tipStateHash","nameLocation":"1134:13:65","nodeType":"VariableDeclaration","scope":47827,"src":"1126:21:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47808,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1126:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1088:60:65"},"returnParameters":{"id":47811,"nodeType":"ParameterList","parameters":[],"src":"1149:0:65"},"scope":47946,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":47840,"nodeType":"FunctionDefinition","src":"1361:135:65","nodes":[],"body":{"id":47839,"nodeType":"Block","src":"1420:76:65","nodes":[],"statements":[{"expression":{"baseExpression":{"id":47833,"name":"chainStateHashes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47796,"src":"1437:16:65","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$16_storage","typeString":"bytes32[16] storage ref"}},"id":47837,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":47836,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"id":47834,"name":"BRIDGE_TRANSITION_FRONTIER_LEN","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47791,"src":"1454:30:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":47835,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1487:1:65","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"1454:34:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1437:52:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":47832,"id":47838,"nodeType":"Return","src":"1430:59:65"}]},"documentation":{"id":47828,"nodeType":"StructuredDocumentation","src":"1307:49:65","text":"@notice Returns the last verified state hash."},"functionSelector":"b8184745","implemented":true,"kind":"function","modifiers":[],"name":"getTipStateHash","nameLocation":"1370:15:65","parameters":{"id":47829,"nodeType":"ParameterList","parameters":[],"src":"1385:2:65"},"returnParameters":{"id":47832,"nodeType":"ParameterList","parameters":[{"constant":false,"id":47831,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":47840,"src":"1411:7:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47830,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1411:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1410:9:65"},"scope":47946,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":47853,"nodeType":"FunctionDefinition","src":"1557:137:65","nodes":[],"body":{"id":47852,"nodeType":"Block","src":"1617:77:65","nodes":[],"statements":[{"expression":{"baseExpression":{"id":47846,"name":"chainLedgerHashes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47801,"src":"1634:17:65","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$16_storage","typeString":"bytes32[16] storage ref"}},"id":47850,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":47849,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"id":47847,"name":"BRIDGE_TRANSITION_FRONTIER_LEN","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47791,"src":"1652:30:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":47848,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1685:1:65","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"1652:34:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1634:53:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":47845,"id":47851,"nodeType":"Return","src":"1627:60:65"}]},"documentation":{"id":47841,"nodeType":"StructuredDocumentation","src":"1502:50:65","text":"@notice Returns the last verified ledger hash."},"functionSelector":"3886c09b","implemented":true,"kind":"function","modifiers":[],"name":"getTipLedgerHash","nameLocation":"1566:16:65","parameters":{"id":47842,"nodeType":"ParameterList","parameters":[],"src":"1582:2:65"},"returnParameters":{"id":47845,"nodeType":"ParameterList","parameters":[{"constant":false,"id":47844,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":47853,"src":"1608:7:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47843,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1608:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1607:9:65"},"scope":47946,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":47864,"nodeType":"FunctionDefinition","src":"1764:142:65","nodes":[],"body":{"id":47863,"nodeType":"Block","src":"1866:40:65","nodes":[],"statements":[{"expression":{"id":47861,"name":"chainStateHashes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47796,"src":"1883:16:65","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$16_storage","typeString":"bytes32[16] storage ref"}},"functionReturnParameters":47860,"id":47862,"nodeType":"Return","src":"1876:23:65"}]},"documentation":{"id":47854,"nodeType":"StructuredDocumentation","src":"1700:59:65","text":"@notice Returns the latest verified chain state hashes."},"functionSelector":"03f93e50","implemented":true,"kind":"function","modifiers":[],"name":"getChainStateHashes","nameLocation":"1773:19:65","parameters":{"id":47855,"nodeType":"ParameterList","parameters":[],"src":"1792:2:65"},"returnParameters":{"id":47860,"nodeType":"ParameterList","parameters":[{"constant":false,"id":47859,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":47864,"src":"1818:46:65","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$16_memory_ptr","typeString":"bytes32[16]"},"typeName":{"baseType":{"id":47856,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1818:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":47858,"length":{"id":47857,"name":"BRIDGE_TRANSITION_FRONTIER_LEN","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47791,"src":"1826:30:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"ArrayTypeName","src":"1818:39:65","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$16_storage_ptr","typeString":"bytes32[16]"}},"visibility":"internal"}],"src":"1817:48:65"},"scope":47946,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":47875,"nodeType":"FunctionDefinition","src":"1977:144:65","nodes":[],"body":{"id":47874,"nodeType":"Block","src":"2080:41:65","nodes":[],"statements":[{"expression":{"id":47872,"name":"chainLedgerHashes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47801,"src":"2097:17:65","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$16_storage","typeString":"bytes32[16] storage ref"}},"functionReturnParameters":47871,"id":47873,"nodeType":"Return","src":"2090:24:65"}]},"documentation":{"id":47865,"nodeType":"StructuredDocumentation","src":"1912:60:65","text":"@notice Returns the latest verified chain ledger hashes."},"functionSelector":"2bc4f8d9","implemented":true,"kind":"function","modifiers":[],"name":"getChainLedgerHashes","nameLocation":"1986:20:65","parameters":{"id":47866,"nodeType":"ParameterList","parameters":[],"src":"2006:2:65"},"returnParameters":{"id":47871,"nodeType":"ParameterList","parameters":[{"constant":false,"id":47870,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":47875,"src":"2032:46:65","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$16_memory_ptr","typeString":"bytes32[16]"},"typeName":{"baseType":{"id":47867,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2032:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":47869,"length":{"id":47868,"name":"BRIDGE_TRANSITION_FRONTIER_LEN","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47791,"src":"2040:30:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"ArrayTypeName","src":"2032:39:65","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$16_storage_ptr","typeString":"bytes32[16]"}},"visibility":"internal"}],"src":"2031:48:65"},"scope":47946,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":47945,"nodeType":"FunctionDefinition","src":"2127:2346:65","nodes":[],"body":{"id":47944,"nodeType":"Block","src":"2461:2012:65","nodes":[],"statements":[{"assignments":[47895],"declarations":[{"constant":false,"id":47895,"mutability":"mutable","name":"pubInputBridgeTipStateHash","nameLocation":"2479:26:65","nodeType":"VariableDeclaration","scope":47944,"src":"2471:34:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47894,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2471:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":47896,"nodeType":"VariableDeclarationStatement","src":"2471:34:65"},{"AST":{"nodeType":"YulBlock","src":"2524:80:65","statements":[{"nodeType":"YulAssignment","src":"2538:56:65","value":{"arguments":[{"arguments":[{"name":"pubInput","nodeType":"YulIdentifier","src":"2578:8:65"},{"kind":"number","nodeType":"YulLiteral","src":"2588:4:65","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2574:3:65"},"nodeType":"YulFunctionCall","src":"2574:19:65"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"2568:5:65"},"nodeType":"YulFunctionCall","src":"2568:26:65"},"variableNames":[{"name":"pubInputBridgeTipStateHash","nodeType":"YulIdentifier","src":"2538:26:65"}]}]},"evmVersion":"london","externalReferences":[{"declaration":47889,"isOffset":false,"isSlot":false,"src":"2578:8:65","valueSize":1},{"declaration":47895,"isOffset":false,"isSlot":false,"src":"2538:26:65","valueSize":1}],"id":47897,"nodeType":"InlineAssembly","src":"2515:89:65"},{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":47904,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":47898,"name":"pubInputBridgeTipStateHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47895,"src":"2618:26:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"baseExpression":{"id":47899,"name":"chainStateHashes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47796,"src":"2648:16:65","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$16_storage","typeString":"bytes32[16] storage ref"}},"id":47903,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":47902,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"id":47900,"name":"BRIDGE_TRANSITION_FRONTIER_LEN","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47791,"src":"2665:30:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":47901,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2698:1:65","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"2665:34:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2648:52:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"2618:82:65","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":47915,"nodeType":"IfStatement","src":"2614:217:65","trueBody":{"id":47914,"nodeType":"Block","src":"2702:129:65","statements":[{"errorCall":{"arguments":[{"id":47906,"name":"pubInputBridgeTipStateHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47895,"src":"2739:26:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":47907,"name":"chainStateHashes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47796,"src":"2767:16:65","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$16_storage","typeString":"bytes32[16] storage ref"}},"id":47911,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":47910,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"id":47908,"name":"BRIDGE_TRANSITION_FRONTIER_LEN","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47791,"src":"2784:30:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":47909,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2817:1:65","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"2784:34:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2767:52:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":47905,"name":"TipStateIsWrong","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47782,"src":"2723:15:65","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32) pure"}},"id":47912,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2723:97:65","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":47913,"nodeType":"RevertStatement","src":"2716:104:65"}]}},{"assignments":[47917],"declarations":[{"constant":false,"id":47917,"mutability":"mutable","name":"pubInputCommitment","nameLocation":"2849:18:65","nodeType":"VariableDeclaration","scope":47944,"src":"2841:26:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47916,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2841:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":47921,"initialValue":{"arguments":[{"id":47919,"name":"pubInput","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47889,"src":"2880:8:65","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":47918,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"2870:9:65","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":47920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2870:19:65","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"2841:48:65"},{"assignments":[47923],"declarations":[{"constant":false,"id":47923,"mutability":"mutable","name":"isNewStateVerified","nameLocation":"2905:18:65","nodeType":"VariableDeclaration","scope":47944,"src":"2900:23:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":47922,"name":"bool","nodeType":"ElementaryTypeName","src":"2900:4:65","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":47935,"initialValue":{"arguments":[{"id":47926,"name":"proofCommitment","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47877,"src":"2968:15:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":47927,"name":"pubInputCommitment","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47917,"src":"2997:18:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":47928,"name":"provingSystemAuxDataCommitment","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47879,"src":"3029:30:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":47929,"name":"proofGeneratorAddr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47881,"src":"3073:18:65","typeDescriptions":{"typeIdentifier":"t_bytes20","typeString":"bytes20"}},{"id":47930,"name":"batchMerkleRoot","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47883,"src":"3105:15:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":47931,"name":"merkleProof","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47885,"src":"3134:11:65","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":47932,"name":"verificationDataBatchIndex","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47887,"src":"3159:26:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":47933,"name":"batcherPaymentService","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47891,"src":"3199:21:65","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes20","typeString":"bytes20"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":47924,"name":"aligned","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47805,"src":"2926:7:65","typeDescriptions":{"typeIdentifier":"t_contract$_AlignedLayerServiceManager_$8505","typeString":"contract AlignedLayerServiceManager"}},"id":47925,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"verifyBatchInclusion","nodeType":"MemberAccess","referencedDeclaration":8455,"src":"2926:28:65","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_bytes32_$_t_bytes32_$_t_bytes20_$_t_bytes32_$_t_bytes_memory_ptr_$_t_uint256_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,bytes32,bytes32,bytes20,bytes32,bytes memory,uint256,address) view external returns (bool)"}},"id":47934,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2926:304:65","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"2900:330:65"},{"condition":{"id":47936,"name":"isNewStateVerified","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47923,"src":"3245:18:65","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":47942,"nodeType":"Block","src":"4415:52:65","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":47939,"name":"NewStateIsNotValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47776,"src":"4436:18:65","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":47940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4436:20:65","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":47941,"nodeType":"RevertStatement","src":"4429:27:65"}]},"id":47943,"nodeType":"IfStatement","src":"3241:1226:65","trueBody":{"id":47938,"nodeType":"Block","src":"3265:1144:65","statements":[{"AST":{"nodeType":"YulBlock","src":"3346:1053:65","statements":[{"nodeType":"YulVariableDeclaration","src":"3364:40:65","value":{"name":"chainStateHashes.slot","nodeType":"YulIdentifier","src":"3383:21:65"},"variables":[{"name":"slot_states","nodeType":"YulTypedName","src":"3368:11:65","type":""}]},{"nodeType":"YulVariableDeclaration","src":"3421:42:65","value":{"name":"chainLedgerHashes.slot","nodeType":"YulIdentifier","src":"3441:22:65"},"variables":[{"name":"slot_ledgers","nodeType":"YulTypedName","src":"3425:12:65","type":""}]},{"nodeType":"YulVariableDeclaration","src":"3698:36:65","value":{"arguments":[{"name":"pubInput","nodeType":"YulIdentifier","src":"3721:8:65"},{"kind":"number","nodeType":"YulLiteral","src":"3731:2:65","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3717:3:65"},"nodeType":"YulFunctionCall","src":"3717:17:65"},"variables":[{"name":"addr_states","nodeType":"YulTypedName","src":"3702:11:65","type":""}]},{"nodeType":"YulVariableDeclaration","src":"3846:77:65","value":{"arguments":[{"name":"addr_states","nodeType":"YulIdentifier","src":"3870:11:65"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"3887:2:65","type":"","value":"32"},{"name":"BRIDGE_TRANSITION_FRONTIER_LEN","nodeType":"YulIdentifier","src":"3891:30:65"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"3883:3:65"},"nodeType":"YulFunctionCall","src":"3883:39:65"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3866:3:65"},"nodeType":"YulFunctionCall","src":"3866:57:65"},"variables":[{"name":"addr_ledgers","nodeType":"YulTypedName","src":"3850:12:65","type":""}]},{"body":{"nodeType":"YulBlock","src":"4017:368:65","statements":[{"expression":{"arguments":[{"name":"slot_states","nodeType":"YulIdentifier","src":"4046:11:65"},{"arguments":[{"name":"addr_states","nodeType":"YulIdentifier","src":"4065:11:65"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"4059:5:65"},"nodeType":"YulFunctionCall","src":"4059:18:65"}],"functionName":{"name":"sstore","nodeType":"YulIdentifier","src":"4039:6:65"},"nodeType":"YulFunctionCall","src":"4039:39:65"},"nodeType":"YulExpressionStatement","src":"4039:39:65"},{"nodeType":"YulAssignment","src":"4099:35:65","value":{"arguments":[{"name":"addr_states","nodeType":"YulIdentifier","src":"4118:11:65"},{"kind":"number","nodeType":"YulLiteral","src":"4131:2:65","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4114:3:65"},"nodeType":"YulFunctionCall","src":"4114:20:65"},"variableNames":[{"name":"addr_states","nodeType":"YulIdentifier","src":"4099:11:65"}]},{"nodeType":"YulAssignment","src":"4155:34:65","value":{"arguments":[{"name":"slot_states","nodeType":"YulIdentifier","src":"4174:11:65"},{"kind":"number","nodeType":"YulLiteral","src":"4187:1:65","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4170:3:65"},"nodeType":"YulFunctionCall","src":"4170:19:65"},"variableNames":[{"name":"slot_states","nodeType":"YulIdentifier","src":"4155:11:65"}]},{"expression":{"arguments":[{"name":"slot_ledgers","nodeType":"YulIdentifier","src":"4218:12:65"},{"arguments":[{"name":"addr_ledgers","nodeType":"YulIdentifier","src":"4238:12:65"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"4232:5:65"},"nodeType":"YulFunctionCall","src":"4232:19:65"}],"functionName":{"name":"sstore","nodeType":"YulIdentifier","src":"4211:6:65"},"nodeType":"YulFunctionCall","src":"4211:41:65"},"nodeType":"YulExpressionStatement","src":"4211:41:65"},{"nodeType":"YulAssignment","src":"4273:37:65","value":{"arguments":[{"name":"addr_ledgers","nodeType":"YulIdentifier","src":"4293:12:65"},{"kind":"number","nodeType":"YulLiteral","src":"4307:2:65","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4289:3:65"},"nodeType":"YulFunctionCall","src":"4289:21:65"},"variableNames":[{"name":"addr_ledgers","nodeType":"YulIdentifier","src":"4273:12:65"}]},{"nodeType":"YulAssignment","src":"4331:36:65","value":{"arguments":[{"name":"slot_ledgers","nodeType":"YulIdentifier","src":"4351:12:65"},{"kind":"number","nodeType":"YulLiteral","src":"4365:1:65","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4347:3:65"},"nodeType":"YulFunctionCall","src":"4347:20:65"},"variableNames":[{"name":"slot_ledgers","nodeType":"YulIdentifier","src":"4331:12:65"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"3963:1:65"},{"name":"BRIDGE_TRANSITION_FRONTIER_LEN","nodeType":"YulIdentifier","src":"3966:30:65"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"3960:2:65"},"nodeType":"YulFunctionCall","src":"3960:37:65"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"3998:18:65","statements":[{"nodeType":"YulAssignment","src":"4000:14:65","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"4009:1:65"},{"kind":"number","nodeType":"YulLiteral","src":"4012:1:65","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4005:3:65"},"nodeType":"YulFunctionCall","src":"4005:9:65"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"4000:1:65"}]}]},"pre":{"nodeType":"YulBlock","src":"3945:14:65","statements":[{"nodeType":"YulVariableDeclaration","src":"3947:10:65","value":{"kind":"number","nodeType":"YulLiteral","src":"3956:1:65","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"3951:1:65","type":""}]}]},"src":"3941:444:65"}]},"evmVersion":"london","externalReferences":[{"declaration":47791,"isOffset":false,"isSlot":false,"src":"3891:30:65","valueSize":1},{"declaration":47791,"isOffset":false,"isSlot":false,"src":"3966:30:65","valueSize":1},{"declaration":47801,"isOffset":false,"isSlot":true,"src":"3441:22:65","suffix":"slot","valueSize":1},{"declaration":47796,"isOffset":false,"isSlot":true,"src":"3383:21:65","suffix":"slot","valueSize":1},{"declaration":47889,"isOffset":false,"isSlot":false,"src":"3721:8:65","valueSize":1}],"id":47937,"nodeType":"InlineAssembly","src":"3337:1062:65"}]}}]},"functionSelector":"37baff0f","implemented":true,"kind":"function","modifiers":[],"name":"updateChain","nameLocation":"2136:11:65","parameters":{"id":47892,"nodeType":"ParameterList","parameters":[{"constant":false,"id":47877,"mutability":"mutable","name":"proofCommitment","nameLocation":"2165:15:65","nodeType":"VariableDeclaration","scope":47945,"src":"2157:23:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47876,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2157:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":47879,"mutability":"mutable","name":"provingSystemAuxDataCommitment","nameLocation":"2198:30:65","nodeType":"VariableDeclaration","scope":47945,"src":"2190:38:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47878,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2190:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":47881,"mutability":"mutable","name":"proofGeneratorAddr","nameLocation":"2246:18:65","nodeType":"VariableDeclaration","scope":47945,"src":"2238:26:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes20","typeString":"bytes20"},"typeName":{"id":47880,"name":"bytes20","nodeType":"ElementaryTypeName","src":"2238:7:65","typeDescriptions":{"typeIdentifier":"t_bytes20","typeString":"bytes20"}},"visibility":"internal"},{"constant":false,"id":47883,"mutability":"mutable","name":"batchMerkleRoot","nameLocation":"2282:15:65","nodeType":"VariableDeclaration","scope":47945,"src":"2274:23:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":47882,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2274:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":47885,"mutability":"mutable","name":"merkleProof","nameLocation":"2320:11:65","nodeType":"VariableDeclaration","scope":47945,"src":"2307:24:65","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":47884,"name":"bytes","nodeType":"ElementaryTypeName","src":"2307:5:65","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":47887,"mutability":"mutable","name":"verificationDataBatchIndex","nameLocation":"2349:26:65","nodeType":"VariableDeclaration","scope":47945,"src":"2341:34:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":47886,"name":"uint256","nodeType":"ElementaryTypeName","src":"2341:7:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":47889,"mutability":"mutable","name":"pubInput","nameLocation":"2398:8:65","nodeType":"VariableDeclaration","scope":47945,"src":"2385:21:65","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":47888,"name":"bytes","nodeType":"ElementaryTypeName","src":"2385:5:65","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":47891,"mutability":"mutable","name":"batcherPaymentService","nameLocation":"2424:21:65","nodeType":"VariableDeclaration","scope":47945,"src":"2416:29:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":47890,"name":"address","nodeType":"ElementaryTypeName","src":"2416:7:65","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2147:304:65"},"returnParameters":{"id":47893,"nodeType":"ParameterList","parameters":[],"src":"2461:0:65"},"scope":47946,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"MinaBridge","contractDependencies":[],"contractKind":"contract","documentation":{"id":47787,"nodeType":"StructuredDocumentation","src":"316:53:65","text":"@title Mina to Ethereum Bridge's smart contract."},"fullyImplemented":true,"linearizedBaseContracts":[47946],"name":"MinaBridge","nameLocation":"378:10:65","scope":47947,"usedErrors":[47776,47782]}],"license":"UNLICENSED"},"id":65} \ No newline at end of file +{"abi":[{"type":"constructor","inputs":[{"name":"_alignedServiceAddr","type":"address","internalType":"address payable"},{"name":"_tipStateHash","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"BRIDGE_TRANSITION_FRONTIER_LEN","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getChainLedgerHashes","inputs":[],"outputs":[{"name":"","type":"bytes32[16]","internalType":"bytes32[16]"}],"stateMutability":"view"},{"type":"function","name":"getChainStateHashes","inputs":[],"outputs":[{"name":"","type":"bytes32[16]","internalType":"bytes32[16]"}],"stateMutability":"view"},{"type":"function","name":"getTipLedgerHash","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getTipStateHash","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"updateChain","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"},{"name":"batcherPaymentService","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"error","name":"NewStateIsNotValid","inputs":[]},{"type":"error","name":"TipStateIsWrong","inputs":[{"name":"pubInputTipStateHash","type":"bytes32","internalType":"bytes32"},{"name":"tipStatehash","type":"bytes32","internalType":"bytes32"}]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b506040516106ed3803806106ed83398101604081905261002f91610073565b602080546001600160a01b0319166001600160a01b038416179055806000610059600160106100ad565b60108110610069576100696100d2565b0155506100e89050565b6000806040838503121561008657600080fd5b82516001600160a01b038116811461009d57600080fd5b6020939093015192949293505050565b6000828210156100cd57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b6105f6806100f76000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806303f93e50146100675780632bc4f8d91461008557806337baff0f1461008d5780633886c09b146100a2578063b8184745146100b8578063fb299cd8146100c0575b600080fd5b61006f6100c8565b60405161007c91906102fc565b60405180910390f35b61006f610104565b6100a061009b3660046103ed565b61013a565b005b6100aa6102a8565b60405190815260200161007c565b6100aa6102ce565b6100aa601081565b6100d06102dd565b604080516102008101918290529060009060109082845b8154815260200190600101908083116100e7575050505050905090565b61010c6102dd565b60408051610200810191829052601080548252909181906011602085018083116100e7575050505050905090565b6020820151600061014d600160106104ad565b6010811061015d5761015d6104d2565b015481146101ac57806000610174600160106104ad565b60108110610184576101846104d2565b015460405163177b002560e31b81526004810192909252602482015260440160405180910390fd5b825160208085019190912090546040516306045a9160e01b81526000916001600160a01b0316906306045a91906101f5908e9086908f908f908f908f908f908e906004016104e8565b602060405180830381865afa158015610212573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102369190610597565b905080156102825760006010604087016102408801835b601081101561027857825185558151845560019485019493840193602093840193909201910161024d565b505050505061029b565b604051630114602f60e41b815260040160405180910390fd5b5050505050505050505050565b600060106102b76001826104ad565b601081106102c7576102c76104d2565b0154905090565b6000806102b7600160106104ad565b6040518061020001604052806010906020820280368337509192915050565b6102008101818360005b6010811015610325578151835260209283019290910190600101610306565b50505092915050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261035557600080fd5b813567ffffffffffffffff808211156103705761037061032e565b604051601f8301601f19908116603f011681019082821181831017156103985761039861032e565b816040528381528660208588010111156103b157600080fd5b836020870160208301376000602085830101528094505050505092915050565b80356001600160a01b03811681146103e857600080fd5b919050565b600080600080600080600080610100898b03121561040a57600080fd5b883597506020890135965060408901356bffffffffffffffffffffffff198116811461043557600080fd5b955060608901359450608089013567ffffffffffffffff8082111561045957600080fd5b6104658c838d01610344565b955060a08b0135945060c08b013591508082111561048257600080fd5b5061048f8b828c01610344565b92505061049e60e08a016103d1565b90509295985092959890939650565b6000828210156104cd57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b60006101008a835260208a818501528960408501526bffffffffffffffffffffffff19891660608501528760808501528160a085015286518083860152600092505b808310156105495787830182015185840161012001529181019161052a565b8083111561055c57600061012082870101525b60c08501879052601f01601f1916840161012001925061058a91505060e08301846001600160a01b03169052565b9998505050505050505050565b6000602082840312156105a957600080fd5b815180151581146105b957600080fd5b939250505056fea2646970667358221220f25c704c27d0338d9dcf57842261213ec78d09c5395cf3593f97659450d6a54664736f6c634300080c0033","sourceMap":"369:4106:65:-:0;;;1077:224;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1159:7;:57;;-1:-1:-1;;;;;;1159:57:65;-1:-1:-1;;;;;1159:57:65;;;;;1281:13;-1:-1:-1;1243:34:65;-1:-1:-1;572:2:65;1243:34;:::i;:::-;1226:52;;;;;;;:::i;:::-;;:68;-1:-1:-1;369:4106:65;;-1:-1:-1;369:4106:65;14:359:67;101:6;109;162:2;150:9;141:7;137:23;133:32;130:52;;;178:1;175;168:12;130:52;204:16;;-1:-1:-1;;;;;249:31:67;;239:42;;229:70;;295:1;292;285:12;229:70;363:2;348:18;;;;342:25;318:5;;342:25;;-1:-1:-1;;;14:359:67:o;378:222::-;418:4;446:1;443;440:8;437:131;;;490:10;485:3;481:20;478:1;471:31;525:4;522:1;515:15;553:4;550:1;543:15;437:131;-1:-1:-1;585:9:67;;378:222::o;605:127::-;666:10;661:3;657:20;654:1;647:31;697:4;694:1;687:15;721:4;718:1;711:15;605:127;369:4106:65;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106100625760003560e01c806303f93e50146100675780632bc4f8d91461008557806337baff0f1461008d5780633886c09b146100a2578063b8184745146100b8578063fb299cd8146100c0575b600080fd5b61006f6100c8565b60405161007c91906102fc565b60405180910390f35b61006f610104565b6100a061009b3660046103ed565b61013a565b005b6100aa6102a8565b60405190815260200161007c565b6100aa6102ce565b6100aa601081565b6100d06102dd565b604080516102008101918290529060009060109082845b8154815260200190600101908083116100e7575050505050905090565b61010c6102dd565b60408051610200810191829052601080548252909181906011602085018083116100e7575050505050905090565b6020820151600061014d600160106104ad565b6010811061015d5761015d6104d2565b015481146101ac57806000610174600160106104ad565b60108110610184576101846104d2565b015460405163177b002560e31b81526004810192909252602482015260440160405180910390fd5b825160208085019190912090546040516306045a9160e01b81526000916001600160a01b0316906306045a91906101f5908e9086908f908f908f908f908f908e906004016104e8565b602060405180830381865afa158015610212573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102369190610597565b905080156102825760006010604087016102408801835b601081101561027857825185558151845560019485019493840193602093840193909201910161024d565b505050505061029b565b604051630114602f60e41b815260040160405180910390fd5b5050505050505050505050565b600060106102b76001826104ad565b601081106102c7576102c76104d2565b0154905090565b6000806102b7600160106104ad565b6040518061020001604052806010906020820280368337509192915050565b6102008101818360005b6010811015610325578151835260209283019290910190600101610306565b50505092915050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261035557600080fd5b813567ffffffffffffffff808211156103705761037061032e565b604051601f8301601f19908116603f011681019082821181831017156103985761039861032e565b816040528381528660208588010111156103b157600080fd5b836020870160208301376000602085830101528094505050505092915050565b80356001600160a01b03811681146103e857600080fd5b919050565b600080600080600080600080610100898b03121561040a57600080fd5b883597506020890135965060408901356bffffffffffffffffffffffff198116811461043557600080fd5b955060608901359450608089013567ffffffffffffffff8082111561045957600080fd5b6104658c838d01610344565b955060a08b0135945060c08b013591508082111561048257600080fd5b5061048f8b828c01610344565b92505061049e60e08a016103d1565b90509295985092959890939650565b6000828210156104cd57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b60006101008a835260208a818501528960408501526bffffffffffffffffffffffff19891660608501528760808501528160a085015286518083860152600092505b808310156105495787830182015185840161012001529181019161052a565b8083111561055c57600061012082870101525b60c08501879052601f01601f1916840161012001925061058a91505060e08301846001600160a01b03169052565b9998505050505050505050565b6000602082840312156105a957600080fd5b815180151581146105b957600080fd5b939250505056fea2646970667358221220f25c704c27d0338d9dcf57842261213ec78d09c5395cf3593f97659450d6a54664736f6c634300080c0033","sourceMap":"369:4106:65:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1764:142;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1977:144;;;:::i;2127:2346::-;;;;;;:::i;:::-;;:::i;:::-;;1557:137;;;:::i;:::-;;;2776:25:67;;;2764:2;2749:18;1557:137:65;2630:177:67;1361:135:65;;;:::i;515:59::-;;572:2;515:59;;1764:142;1818:46;;:::i;:::-;1876:23;;;;;;;;;;;-1:-1:-1;;1876:23:65;;-1:-1:-1;1876:23:65;;;;;;;;;;;;;;;;;;;;;;;;1764:142;:::o;1977:144::-;2032:46;;:::i;:::-;2090:24;;;;;;;;;;2097:17;2090:24;;;;;;2097:17;;2090:24;;;;;;;;;;;;;;;;1977:144;:::o;2127:2346::-;2588:4;2574:19;;2568:26;2471:34;2665;2698:1;572:2;2665:34;:::i;:::-;2648:52;;;;;;;:::i;:::-;;;2618:26;:82;2614:217;;2739:26;2767:16;2784:34;2817:1;572:2;2784:34;:::i;:::-;2767:52;;;;;;;:::i;:::-;;;2723:97;;-1:-1:-1;;;2723:97:65;;;;;3527:25:67;;;;3568:18;;;3561:34;3500:18;;2723:97:65;;;;;;;2614:217;2870:19;;;;;;;;;;2926:7;;:304;;-1:-1:-1;;;2926:304:65;;2841:26;;-1:-1:-1;;;;;2926:7:65;;:28;;:304;;2968:15;;2870:19;;3029:30;;3073:18;;3105:15;;3134:11;;3159:26;;3199:21;;2926:304;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2900:330;;3245:18;3241:1226;;;3383:21;3441:22;3731:2;3717:17;;3866:57;;;3383:21;3941:444;3966:30;3963:1;3960:37;3941:444;;;4059:18;;4039:39;;4232:19;;4211:41;;4187:1;4170:19;;;;4347:20;;;;4131:2;4114:20;;;;4289:21;;;;4005:9;3941:444;;;3945:14;;;;;3241:1226;;;4436:20;;-1:-1:-1;;;4436:20:65;;;;;;;;;;;3241:1226;2461:2012;;;2127:2346;;;;;;;;:::o;1557:137::-;1608:7;1634:17;1652:34;1685:1;1634:17;1652:34;:::i;:::-;1634:53;;;;;;;:::i;:::-;;;1627:60;;1557:137;:::o;1361:135::-;1411:7;;1454:34;1487:1;572:2;1454:34;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:497:67:-;196:3;181:19;;185:9;277:6;154:4;311:194;325:4;322:1;319:11;311:194;;;384:13;;372:26;;421:4;445:12;;;;480:15;;;;345:1;338:9;311:194;;;315:3;;;14:497;;;;:::o;516:127::-;577:10;572:3;568:20;565:1;558:31;608:4;605:1;598:15;632:4;629:1;622:15;648:718;690:5;743:3;736:4;728:6;724:17;720:27;710:55;;761:1;758;751:12;710:55;797:6;784:20;823:18;860:2;856;853:10;850:36;;;866:18;;:::i;:::-;941:2;935:9;909:2;995:13;;-1:-1:-1;;991:22:67;;;1015:2;987:31;983:40;971:53;;;1039:18;;;1059:22;;;1036:46;1033:72;;;1085:18;;:::i;:::-;1125:10;1121:2;1114:22;1160:2;1152:6;1145:18;1206:3;1199:4;1194:2;1186:6;1182:15;1178:26;1175:35;1172:55;;;1223:1;1220;1213:12;1172:55;1287:2;1280:4;1272:6;1268:17;1261:4;1253:6;1249:17;1236:54;1334:1;1327:4;1322:2;1314:6;1310:15;1306:26;1299:37;1354:6;1345:15;;;;;;648:718;;;;:::o;1371:173::-;1439:20;;-1:-1:-1;;;;;1488:31:67;;1478:42;;1468:70;;1534:1;1531;1524:12;1468:70;1371:173;;;:::o;1549:1076::-;1689:6;1697;1705;1713;1721;1729;1737;1745;1798:3;1786:9;1777:7;1773:23;1769:33;1766:53;;;1815:1;1812;1805:12;1766:53;1838:23;;;-1:-1:-1;1908:2:67;1893:18;;1880:32;;-1:-1:-1;1962:2:67;1947:18;;1934:32;-1:-1:-1;;1995:43:67;;1985:54;;1975:82;;2053:1;2050;2043:12;1975:82;2076:5;-1:-1:-1;2128:2:67;2113:18;;2100:32;;-1:-1:-1;2183:3:67;2168:19;;2155:33;2207:18;2237:14;;;2234:34;;;2264:1;2261;2254:12;2234:34;2287:49;2328:7;2319:6;2308:9;2304:22;2287:49;:::i;:::-;2277:59;;2383:3;2372:9;2368:19;2355:33;2345:43;;2441:3;2430:9;2426:19;2413:33;2397:49;;2471:2;2461:8;2458:16;2455:36;;;2487:1;2484;2477:12;2455:36;;2510:51;2553:7;2542:8;2531:9;2527:24;2510:51;:::i;:::-;2500:61;;;2580:39;2614:3;2603:9;2599:19;2580:39;:::i;:::-;2570:49;;1549:1076;;;;;;;;;;;:::o;2994:222::-;3034:4;3062:1;3059;3056:8;3053:131;;;3106:10;3101:3;3097:20;3094:1;3087:31;3141:4;3138:1;3131:15;3169:4;3166:1;3159:15;3053:131;-1:-1:-1;3201:9:67;;2994:222::o;3221:127::-;3282:10;3277:3;3273:20;3270:1;3263:31;3313:4;3310:1;3303:15;3337:4;3334:1;3327:15;3715:1171;4021:4;4050:3;4080:6;4069:9;4062:25;4106:2;4144:6;4139:2;4128:9;4124:18;4117:34;4187:6;4182:2;4171:9;4167:18;4160:34;4246:26;4242:31;4234:6;4230:44;4225:2;4214:9;4210:18;4203:72;4312:6;4306:3;4295:9;4291:19;4284:35;4356:2;4350:3;4339:9;4335:19;4328:31;4388:6;4382:13;4431:6;4426:2;4415:9;4411:18;4404:34;4456:1;4447:10;;4466:141;4480:6;4477:1;4474:13;4466:141;;;4576:14;;;4572:23;;4566:30;4541:17;;;4560:3;4537:27;4530:67;4495:10;;;;4466:141;;;4625:6;4622:1;4619:13;4616:92;;;4696:1;4690:3;4681:6;4670:9;4666:22;4662:32;4655:43;4616:92;4811:3;4796:19;;4789:35;;;4769:2;4748:15;-1:-1:-1;;4744:29:67;4729:45;;4776:3;4725:55;;-1:-1:-1;4833:47:67;;-1:-1:-1;;4875:3:67;4860:19;;4852:6;-1:-1:-1;;;;;3672:31:67;3660:44;;3606:104;4833:47;3715:1171;;;;;;;;;;;:::o;4891:277::-;4958:6;5011:2;4999:9;4990:7;4986:23;4982:32;4979:52;;;5027:1;5024;5017:12;4979:52;5059:9;5053:16;5112:5;5105:13;5098:21;5091:5;5088:32;5078:60;;5134:1;5131;5124:12;5078:60;5157:5;4891:277;-1:-1:-1;;;4891:277:67:o","linkReferences":{}},"methodIdentifiers":{"BRIDGE_TRANSITION_FRONTIER_LEN()":"fb299cd8","getChainLedgerHashes()":"2bc4f8d9","getChainStateHashes()":"03f93e50","getTipLedgerHash()":"3886c09b","getTipStateHash()":"b8184745","updateChain(bytes32,bytes32,bytes20,bytes32,bytes,uint256,bytes,address)":"37baff0f"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.12+commit.f00d7308\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_alignedServiceAddr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"_tipStateHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"NewStateIsNotValid\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"pubInputTipStateHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"tipStatehash\",\"type\":\"bytes32\"}],\"name\":\"TipStateIsWrong\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BRIDGE_TRANSITION_FRONTIER_LEN\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getChainLedgerHashes\",\"outputs\":[{\"internalType\":\"bytes32[16]\",\"name\":\"\",\"type\":\"bytes32[16]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getChainStateHashes\",\"outputs\":[{\"internalType\":\"bytes32[16]\",\"name\":\"\",\"type\":\"bytes32[16]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getTipLedgerHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getTipStateHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"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\"},{\"internalType\":\"address\",\"name\":\"batcherPaymentService\",\"type\":\"address\"}],\"name\":\"updateChain\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"title\":\"Mina to Ethereum Bridge's smart contract.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"BRIDGE_TRANSITION_FRONTIER_LEN()\":{\"notice\":\"The length of the verified state chain (also called the bridge's transition frontier) to store.\"},\"getChainLedgerHashes()\":{\"notice\":\"Returns the latest verified chain ledger hashes.\"},\"getChainStateHashes()\":{\"notice\":\"Returns the latest verified chain state hashes.\"},\"getTipLedgerHash()\":{\"notice\":\"Returns the last verified ledger hash.\"},\"getTipStateHash()\":{\"notice\":\"Returns the last verified state hash.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/MinaBridge.sol\":\"MinaBridge\"},\"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\":\"0x9fcd2cb923e5ef666b1b18a7e2a77d915d5bef119214dfc53cc5c6c044a87bc5\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://f32c8e9002c9a8bd9e23f63d430193e092e6b6cea56a11f839304feff3b333c7\",\"dweb:/ipfs/QmS2o2CeHebjAuviv715FsCNam95qy19qijJz4aw87YRJL\"]},\"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\":\"0x68ef2223020d5b4ce1fb2b0b016fb1f66f6b84edbb0370f96d9c1398146e9409\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://57ba2b7b58fc15cdc9eefd70ad09bf8719ff981eabb64d6fca0da049456b2541\",\"dweb:/ipfs/QmPKZJoGwmBnA4gm1C4VySZr9iscQyLd1MtFVz1RkjctzV\"]},\"src/MinaBridge.sol\":{\"keccak256\":\"0x4866bdaf26f08a08a8cedd7d5a21e0ab8daa3762c3916e04214bc2494a2cc362\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://794655d015a266738be278995e1a0e454a25e72e935c5d60e2fce14454215438\",\"dweb:/ipfs/QmYEYQx6AtSxFydEDUnwEWd1n1n5NiANJui5M9KTjn4gWk\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.12+commit.f00d7308"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address payable","name":"_alignedServiceAddr","type":"address"},{"internalType":"bytes32","name":"_tipStateHash","type":"bytes32"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"error","name":"NewStateIsNotValid"},{"inputs":[{"internalType":"bytes32","name":"pubInputTipStateHash","type":"bytes32"},{"internalType":"bytes32","name":"tipStatehash","type":"bytes32"}],"type":"error","name":"TipStateIsWrong"},{"inputs":[],"stateMutability":"view","type":"function","name":"BRIDGE_TRANSITION_FRONTIER_LEN","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getChainLedgerHashes","outputs":[{"internalType":"bytes32[16]","name":"","type":"bytes32[16]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getChainStateHashes","outputs":[{"internalType":"bytes32[16]","name":"","type":"bytes32[16]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getTipLedgerHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getTipStateHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"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"},{"internalType":"address","name":"batcherPaymentService","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"updateChain"}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{"BRIDGE_TRANSITION_FRONTIER_LEN()":{"notice":"The length of the verified state chain (also called the bridge's transition frontier) to store."},"getChainLedgerHashes()":{"notice":"Returns the latest verified chain ledger hashes."},"getChainStateHashes()":{"notice":"Returns the latest verified chain state hashes."},"getTipLedgerHash()":{"notice":"Returns the last verified ledger hash."},"getTipStateHash()":{"notice":"Returns the last verified state hash."}},"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/MinaBridge.sol":"MinaBridge"},"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":"0x9fcd2cb923e5ef666b1b18a7e2a77d915d5bef119214dfc53cc5c6c044a87bc5","urls":["bzz-raw://f32c8e9002c9a8bd9e23f63d430193e092e6b6cea56a11f839304feff3b333c7","dweb:/ipfs/QmS2o2CeHebjAuviv715FsCNam95qy19qijJz4aw87YRJL"],"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":"0x68ef2223020d5b4ce1fb2b0b016fb1f66f6b84edbb0370f96d9c1398146e9409","urls":["bzz-raw://57ba2b7b58fc15cdc9eefd70ad09bf8719ff981eabb64d6fca0da049456b2541","dweb:/ipfs/QmPKZJoGwmBnA4gm1C4VySZr9iscQyLd1MtFVz1RkjctzV"],"license":"UNLICENSED"},"src/MinaBridge.sol":{"keccak256":"0x4866bdaf26f08a08a8cedd7d5a21e0ab8daa3762c3916e04214bc2494a2cc362","urls":["bzz-raw://794655d015a266738be278995e1a0e454a25e72e935c5d60e2fce14454215438","dweb:/ipfs/QmYEYQx6AtSxFydEDUnwEWd1n1n5NiANJui5M9KTjn4gWk"],"license":"UNLICENSED"}},"version":1},"id":65} \ No newline at end of file diff --git a/core/src/smart_contract_utility.rs b/core/src/smart_contract_utility.rs index 359d8edd..0aa98fa7 100644 --- a/core/src/smart_contract_utility.rs +++ b/core/src/smart_contract_utility.rs @@ -7,7 +7,7 @@ use alloy::providers::ProviderBuilder; use alloy::sol; use ethers::{abi::AbiEncode, prelude::*}; use k256::ecdsa::SigningKey; -use log::{debug, error, info}; +use log::{debug, info}; use mina_p2p_messages::v2::StateHash; use serde::{Deserialize, Serialize}; use serde_with::serde_as; @@ -15,10 +15,9 @@ use serde_with::serde_as; use crate::{ proof::{account_proof::MinaAccountPubInputs, state_proof::MinaStatePubInputs}, sol::serialization::SolSerialize, - utils::constants::{ - ANVIL_CHAIN_ID, BRIDGE_ACCOUNT_DEVNET_ETH_ADDR, BRIDGE_ACCOUNT_HOLESKY_ETH_ADDR, - BRIDGE_DEVNET_ETH_ADDR, BRIDGE_HOLESKY_ETH_ADDR, BRIDGE_TRANSITION_FRONTIER_LEN, - HOLESKY_CHAIN_ID, + utils::{ + constants::{ANVIL_CHAIN_ID, BRIDGE_TRANSITION_FRONTIER_LEN, HOLESKY_CHAIN_ID}, + contract::{get_account_validation_contract_addr, get_bridge_contract_addr}, }, }; @@ -97,15 +96,8 @@ pub async fn update_chain( wallet: Wallet, batcher_payment_service: &str, ) -> Result<(), String> { - let bridge_eth_addr = Address::from_str(match chain { - Chain::Devnet => BRIDGE_DEVNET_ETH_ADDR, - Chain::Holesky => BRIDGE_HOLESKY_ETH_ADDR, - _ => { - error!("Unimplemented Ethereum contract on selected chain"); - unimplemented!() - } - }) - .map_err(|err| err.to_string())?; + let bridge_eth_addr = + Address::from_str(&get_bridge_contract_addr(chain)?).map_err(|err| err.to_string())?; let serialized_pub_input = bincode::serialize(pub_input) .map_err(|err| format!("Failed to serialize public inputs: {err}"))?; @@ -196,15 +188,8 @@ pub async fn update_chain( } pub async fn get_bridge_tip_hash(chain: &Chain, eth_rpc_url: &str) -> Result { - let bridge_eth_addr = Address::from_str(match chain { - Chain::Devnet => BRIDGE_DEVNET_ETH_ADDR, - Chain::Holesky => BRIDGE_HOLESKY_ETH_ADDR, - _ => { - error!("Unimplemented Ethereum contract on selected chain"); - unimplemented!() - } - }) - .map_err(|err| err.to_string())?; + let bridge_eth_addr = + Address::from_str(&get_bridge_contract_addr(chain)?).map_err(|err| err.to_string())?; debug!("Creating contract instance"); let mina_bridge_contract = mina_bridge_contract_call_only(eth_rpc_url, bridge_eth_addr)?; @@ -225,15 +210,8 @@ pub async fn get_bridge_chain_state_hashes( chain: &Chain, eth_rpc_url: &str, ) -> Result<[StateHash; BRIDGE_TRANSITION_FRONTIER_LEN], String> { - let bridge_eth_addr = Address::from_str(match chain { - Chain::Devnet => BRIDGE_DEVNET_ETH_ADDR, - Chain::Holesky => BRIDGE_HOLESKY_ETH_ADDR, - _ => { - error!("Unimplemented Ethereum contract on selected chain"); - unimplemented!() - } - }) - .map_err(|err| err.to_string())?; + let bridge_eth_addr = + Address::from_str(&get_bridge_contract_addr(chain)?).map_err(|err| err.to_string())?; debug!("Creating contract instance"); let mina_bridge_contract = mina_bridge_contract_call_only(eth_rpc_url, bridge_eth_addr)?; @@ -266,15 +244,8 @@ pub async fn validate_account( eth_rpc_url: &str, batcher_payment_service: &str, ) -> Result { - let bridge_eth_addr = Address::from_str(match chain { - Chain::Devnet => BRIDGE_ACCOUNT_DEVNET_ETH_ADDR, - Chain::Holesky => BRIDGE_ACCOUNT_HOLESKY_ETH_ADDR, - _ => { - error!("Unimplemented Ethereum contract on selected chain"); - unimplemented!() - } - }) - .map_err(|err| err.to_string())?; + let bridge_eth_addr = Address::from_str(&get_account_validation_contract_addr(chain)?) + .map_err(|err| err.to_string())?; debug!("Creating contract instance"); diff --git a/core/src/utils/constants.rs b/core/src/utils/constants.rs index 9bb16134..cf73c4de 100644 --- a/core/src/utils/constants.rs +++ b/core/src/utils/constants.rs @@ -18,10 +18,8 @@ pub const MINA_HASH_SIZE: usize = 32; // Bridge related constants pub const BRIDGE_DEVNET_ETH_ADDR: &str = "0x700b6A60ce7EaaEA56F065753d8dcB9653dbAD35"; -pub const BRIDGE_HOLESKY_ETH_ADDR: &str = "0x8aED2F71774a98354091F8a885a19fA9C8659169"; pub const BRIDGE_TRANSITION_FRONTIER_LEN: usize = 16; pub const BRIDGE_ACCOUNT_DEVNET_ETH_ADDR: &str = "0xA15BB66138824a1c7167f5E85b957d04Dd34E468"; -pub const BRIDGE_ACCOUNT_HOLESKY_ETH_ADDR: &str = "0x9Cbb0439EB42FBda982851068D52b1871F72Bea9"; // Aligned related constants pub const PROOF_GENERATOR_ADDR: &str = "0x66f9664f97F2b50F62D13eA064982f936dE76657"; diff --git a/core/src/utils/contract.rs b/core/src/utils/contract.rs new file mode 100644 index 00000000..d555d217 --- /dev/null +++ b/core/src/utils/contract.rs @@ -0,0 +1,32 @@ +use aligned_sdk::core::types::Chain; + +use super::constants::{ + ALIGNED_SM_DEVNET_ETH_ADDR, BRIDGE_ACCOUNT_DEVNET_ETH_ADDR, BRIDGE_DEVNET_ETH_ADDR, +}; + +pub fn get_bridge_contract_addr(chain: &Chain) -> Result { + match chain { + Chain::Devnet => Ok(BRIDGE_DEVNET_ETH_ADDR.to_owned()), + Chain::Holesky => std::env::var("BRIDGE_HOLESKY_ETH_ADDR") + .map_err(|err| format!("Error getting Bridge contract address: {err}")), + _ => Err("Unimplemented Ethereum contract on selected chain".to_owned()), + } +} + +pub fn get_account_validation_contract_addr(chain: &Chain) -> Result { + match chain { + Chain::Devnet => Ok(BRIDGE_ACCOUNT_DEVNET_ETH_ADDR.to_owned()), + Chain::Holesky => std::env::var("BRIDGE_ACCOUNT_HOLESKY_ETH_ADDR") + .map_err(|err| format!("Error getting Account validation contract address: {err}")), + _ => Err("Unimplemented Ethereum contract on selected chain".to_owned()), + } +} + +pub fn get_aligned_sm_contract_addr(chain: &Chain) -> Result { + match chain { + Chain::Devnet => Ok(ALIGNED_SM_DEVNET_ETH_ADDR.to_owned()), + Chain::Holesky => std::env::var("ALIGNED_SM_HOLESKY_ETH_ADDR") + .map_err(|err| format!("Error getting Aligned SM contract address: {err}")), + _ => Err("Unimplemented Ethereum contract on selected chain".to_owned()), + } +} diff --git a/core/src/utils/mod.rs b/core/src/utils/mod.rs index 6e24fa03..698644a5 100644 --- a/core/src/utils/mod.rs +++ b/core/src/utils/mod.rs @@ -1,4 +1,5 @@ pub mod constants; +pub mod contract; pub mod env; pub mod wallet; pub mod wallet_alloy;