-
Notifications
You must be signed in to change notification settings - Fork 396
Expand file tree
/
Copy pathAlignedProofAggregationService.json
More file actions
1 lines (1 loc) · 69.1 KB
/
AlignedProofAggregationService.json
File metadata and controls
1 lines (1 loc) · 69.1 KB
1
{"abi":[{"type":"constructor","inputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"VERIFIER_MOCK_ADDRESS","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"aggregatedProofs","inputs":[{"name":"","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"status","type":"uint8","internalType":"enum IAlignedProofAggregationService.AggregatedProofStatus"},{"name":"blobHash","type":"bytes32","internalType":"bytes32"},{"name":"merkleRoot","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"alignedAggregatorAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"currentAggregatedProofNumber","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"getAggregatedProof","inputs":[{"name":"proofNumber","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"","type":"uint8","internalType":"uint8"},{"name":"blobHash","type":"bytes32","internalType":"bytes32"},{"name":"merkleRoot","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"newOwner","type":"address","internalType":"address"},{"name":"_alignedAggregatorAddress","type":"address","internalType":"address"},{"name":"_sp1VerifierAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"markCurrentAggregatedProofAsMissed","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"sp1VerifierAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"verify","inputs":[{"name":"blobVersionedHash","type":"bytes32","internalType":"bytes32"},{"name":"sp1ProgramVKey","type":"bytes32","internalType":"bytes32"},{"name":"sp1PublicValues","type":"bytes","internalType":"bytes"},{"name":"sp1ProofBytes","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"NewAggregatedProof","inputs":[{"name":"proofNumber","type":"uint64","indexed":true,"internalType":"uint64"},{"name":"status","type":"uint8","indexed":false,"internalType":"enum IAlignedProofAggregationService.AggregatedProofStatus"},{"name":"merkleRoot","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"blobVersionedHash","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"OnlyAlignedAggregator","inputs":[{"name":"sender","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5061001d610022565b6100e2565b600054610100900460ff161561008e5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100e0576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b60805161150e610119600039600081816103330152818161037c0152818161041b0152818161045b01526104ee015261150e6000f3fe6080604052600436106100e85760003560e01c806383501b211161008a578063b5825bdd11610059578063b5825bdd1461028a578063c0c53b8b146102c9578063f2fde38b146102e9578063fc2b42711461030957600080fd5b806383501b211461020a57806389909c4d1461021f5780638da5cb5b14610257578063ae1517df1461027557600080fd5b80634c46688c116100c65780634c46688c1461019f5780634f1ef286146101bf57806352d1902d146101d2578063715018a6146101f557600080fd5b80631853e99a146100ed578063294e3ccb146101455780633659cfe61461017d575b600080fd5b3480156100f957600080fd5b5061012d610108366004610fd5565b60ca6020526000908152604090208054600182015460029092015460ff909116919083565b60405161013c93929190611036565b60405180910390f35b34801561015157600080fd5b5060cb54610165906001600160a01b031681565b6040516001600160a01b03909116815260200161013c565b34801561018957600080fd5b5061019d610198366004611071565b610329565b005b3480156101ab57600080fd5b5060cc54610165906001600160a01b031681565b61019d6101cd3660046110a2565b610411565b3480156101de57600080fd5b506101e76104e1565b60405190815260200161013c565b34801561020157600080fd5b5061019d610594565b34801561021657600080fd5b5061016560ff81565b34801561022b57600080fd5b5060c95461023f906001600160401b031681565b6040516001600160401b03909116815260200161013c565b34801561026357600080fd5b506033546001600160a01b0316610165565b34801561028157600080fd5b5061019d6105a8565b34801561029657600080fd5b506102aa6102a5366004610fd5565b610687565b6040805160ff909416845260208401929092529082015260600161013c565b3480156102d557600080fd5b5061019d6102e4366004611169565b6106d0565b3480156102f557600080fd5b5061019d610304366004611071565b610825565b34801561031557600080fd5b5061019d6103243660046111f4565b61089b565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361037a5760405162461bcd60e51b81526004016103719061127a565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166103c3600080516020611492833981519152546001600160a01b031690565b6001600160a01b0316146103e95760405162461bcd60e51b8152600401610371906112c6565b6103f281610a3a565b6040805160008082526020820190925261040e91839190610a42565b50565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036104595760405162461bcd60e51b81526004016103719061127a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166104a2600080516020611492833981519152546001600160a01b031690565b6001600160a01b0316146104c85760405162461bcd60e51b8152600401610371906112c6565b6104d182610a3a565b6104dd82826001610a42565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146105815760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152608401610371565b5060008051602061149283398151915290565b61059c610bb2565b6105a66000610c0c565b565b60cc546001600160a01b031633146105d55760405163921f325560e01b8152336004820152602401610371565b60c980546001600160401b03908116600090815260ca6020526040808220805460ff19166002908117825594549151909491909316927f50830ba16d4a336ba668f1b236b66733def7d0033d3428770cfad6f2fa5e3e199261063992918190611036565b60405180910390a260c98054600191906000906106609084906001600160401b0316611312565b92506101000a8154816001600160401b0302191690836001600160401b0316021790555050565b6001600160401b038116600090815260ca6020526040812080548291829160ff1660028111156106b9576106b9610ffe565b600182015460029092015490969195509350915050565b600054610100900460ff16158080156106f05750600054600160ff909116105b8061070a5750303b15801561070a575060005460ff166001145b61076d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610371565b6000805460ff191660011790558015610790576000805461ff0019166101001790555b610798610c5e565b6107a0610c8d565b6107a984610c0c565b60cc80546001600160a01b038086166001600160a01b03199283161790925560cb805492851692909116919091179055801561081f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b61082d610bb2565b6001600160a01b0381166108925760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610371565b61040e81610c0c565b60cc546001600160a01b031633146108c85760405163921f325560e01b8152336004820152602401610371565b60cb546001600160a01b031660fe19016108fc5760006108ea8486018661133f565b90506108f68188610cb4565b50610a32565b60cb5460405163020a49e360e51b81526001600160a01b03909116906341493c60906109349088908890889088908890600401611381565b60006040518083038186803b15801561094c57600080fd5b505afa92505050801561095d575060015b610a165760c980546001600160401b03908116600090815260ca6020526040808220805460ff19166001908117825594549151909491909316927f50830ba16d4a336ba668f1b236b66733def7d0033d3428770cfad6f2fa5e3e19926109c592918190611036565b60405180910390a260c98054600191906000906109ec9084906001600160401b0316611312565b92506101000a8154816001600160401b0302191690836001600160401b0316021790555050610a32565b6000610a248486018661133f565b9050610a308188610cb4565b505b505050505050565b61040e610bb2565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615610a7a57610a7583610d6e565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610ad4575060408051601f3d908101601f19168201909252610ad1918101906113ba565b60015b610b375760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610371565b6000805160206114928339815191528114610ba65760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610371565b50610a75838383610e0a565b6033546001600160a01b031633146105a65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610371565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16610c855760405162461bcd60e51b8152600401610371906113d3565b6105a6610e2f565b600054610100900460ff166105a65760405162461bcd60e51b8152600401610371906113d3565b60c980546001600160401b03908116600090815260ca60205260408082206002810187905560018101869055805460ff19168155935490519216917f50830ba16d4a336ba668f1b236b66733def7d0033d3428770cfad6f2fa5e3e1991610d1e9187908790611036565b60405180910390a260c9805460019190600090610d459084906001600160401b0316611312565b92506101000a8154816001600160401b0302191690836001600160401b03160217905550505050565b6001600160a01b0381163b610ddb5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610371565b60008051602061149283398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b610e1383610e5f565b600082511180610e205750805b15610a755761081f8383610e9f565b600054610100900460ff16610e565760405162461bcd60e51b8152600401610371906113d3565b6105a633610c0c565b610e6881610d6e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606001600160a01b0383163b610f075760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610371565b600080846001600160a01b031684604051610f229190611442565b600060405180830381855af49150503d8060008114610f5d576040519150601f19603f3d011682016040523d82523d6000602084013e610f62565b606091505b5091509150610f8a82826040518060600160405280602781526020016114b260279139610f95565b925050505b92915050565b60608315610fa4575081610fce565b825115610fb45782518084602001fd5b8160405162461bcd60e51b8152600401610371919061145e565b9392505050565b600060208284031215610fe757600080fd5b81356001600160401b0381168114610fce57600080fd5b634e487b7160e01b600052602160045260246000fd5b6003811061103257634e487b7160e01b600052602160045260246000fd5b9052565b606081016110448286611014565b602082019390935260400152919050565b80356001600160a01b038116811461106c57600080fd5b919050565b60006020828403121561108357600080fd5b610fce82611055565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156110b557600080fd5b6110be83611055565b915060208301356001600160401b038111156110d957600080fd5b8301601f810185136110ea57600080fd5b80356001600160401b038111156111035761110361108c565b604051601f8201601f19908116603f011681016001600160401b03811182821017156111315761113161108c565b60405281815282820160200187101561114957600080fd5b816020840160208301376000602083830101528093505050509250929050565b60008060006060848603121561117e57600080fd5b61118784611055565b925061119560208501611055565b91506111a360408501611055565b90509250925092565b60008083601f8401126111be57600080fd5b5081356001600160401b038111156111d557600080fd5b6020830191508360208285010111156111ed57600080fd5b9250929050565b6000806000806000806080878903121561120d57600080fd5b863595506020870135945060408701356001600160401b0381111561123157600080fd5b61123d89828a016111ac565b90955093505060608701356001600160401b0381111561125c57600080fd5b61126889828a016111ac565b979a9699509497509295939492505050565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b6001600160401b038181168382160190811115610f8f57634e487b7160e01b600052601160045260246000fd5b60006020828403121561135157600080fd5b5035919050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b85815260606020820152600061139b606083018688611358565b82810360408401526113ae818587611358565b98975050505050505050565b6000602082840312156113cc57600080fd5b5051919050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60005b83811015611439578181015183820152602001611421565b50506000910152565b6000825161145481846020870161141e565b9190910192915050565b602081526000825180602084015261147d81604085016020870161141e565b601f01601f1916919091016040019291505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122075d6a636273c4a7083ed378dbd952bf02ebc24e1575532f01f2adafbc39362db64736f6c634300081c0033","sourceMap":"506:4010:73:-:0;;;1332:4:22;1289:48;;1558:53:73;;;;;;;;;-1:-1:-1;1582:22:73;:20;:22::i;:::-;506:4010;;5388:279:21;5456:13;;;;;;;5455:14;5447:66;;;;-1:-1:-1;;;5447:66:21;;216:2:79;5447:66:21;;;198:21:79;255:2;235:18;;;228:30;294:34;274:18;;;267:62;-1:-1:-1;;;345:18:79;;;338:37;392:19;;5447:66:21;;;;;;;;5527:12;;5542:15;5527:12;;;:30;5523:138;;;5573:12;:30;;-1:-1:-1;;5573:30:21;5588:15;5573:30;;;;;;5622:28;;564:36:79;;;5622:28:21;;552:2:79;537:18;5622:28:21;;;;;;;5523:138;5388:279::o;422:184:79:-;506:4010:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106100e85760003560e01c806383501b211161008a578063b5825bdd11610059578063b5825bdd1461028a578063c0c53b8b146102c9578063f2fde38b146102e9578063fc2b42711461030957600080fd5b806383501b211461020a57806389909c4d1461021f5780638da5cb5b14610257578063ae1517df1461027557600080fd5b80634c46688c116100c65780634c46688c1461019f5780634f1ef286146101bf57806352d1902d146101d2578063715018a6146101f557600080fd5b80631853e99a146100ed578063294e3ccb146101455780633659cfe61461017d575b600080fd5b3480156100f957600080fd5b5061012d610108366004610fd5565b60ca6020526000908152604090208054600182015460029092015460ff909116919083565b60405161013c93929190611036565b60405180910390f35b34801561015157600080fd5b5060cb54610165906001600160a01b031681565b6040516001600160a01b03909116815260200161013c565b34801561018957600080fd5b5061019d610198366004611071565b610329565b005b3480156101ab57600080fd5b5060cc54610165906001600160a01b031681565b61019d6101cd3660046110a2565b610411565b3480156101de57600080fd5b506101e76104e1565b60405190815260200161013c565b34801561020157600080fd5b5061019d610594565b34801561021657600080fd5b5061016560ff81565b34801561022b57600080fd5b5060c95461023f906001600160401b031681565b6040516001600160401b03909116815260200161013c565b34801561026357600080fd5b506033546001600160a01b0316610165565b34801561028157600080fd5b5061019d6105a8565b34801561029657600080fd5b506102aa6102a5366004610fd5565b610687565b6040805160ff909416845260208401929092529082015260600161013c565b3480156102d557600080fd5b5061019d6102e4366004611169565b6106d0565b3480156102f557600080fd5b5061019d610304366004611071565b610825565b34801561031557600080fd5b5061019d6103243660046111f4565b61089b565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361037a5760405162461bcd60e51b81526004016103719061127a565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166103c3600080516020611492833981519152546001600160a01b031690565b6001600160a01b0316146103e95760405162461bcd60e51b8152600401610371906112c6565b6103f281610a3a565b6040805160008082526020820190925261040e91839190610a42565b50565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036104595760405162461bcd60e51b81526004016103719061127a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166104a2600080516020611492833981519152546001600160a01b031690565b6001600160a01b0316146104c85760405162461bcd60e51b8152600401610371906112c6565b6104d182610a3a565b6104dd82826001610a42565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146105815760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152608401610371565b5060008051602061149283398151915290565b61059c610bb2565b6105a66000610c0c565b565b60cc546001600160a01b031633146105d55760405163921f325560e01b8152336004820152602401610371565b60c980546001600160401b03908116600090815260ca6020526040808220805460ff19166002908117825594549151909491909316927f50830ba16d4a336ba668f1b236b66733def7d0033d3428770cfad6f2fa5e3e199261063992918190611036565b60405180910390a260c98054600191906000906106609084906001600160401b0316611312565b92506101000a8154816001600160401b0302191690836001600160401b0316021790555050565b6001600160401b038116600090815260ca6020526040812080548291829160ff1660028111156106b9576106b9610ffe565b600182015460029092015490969195509350915050565b600054610100900460ff16158080156106f05750600054600160ff909116105b8061070a5750303b15801561070a575060005460ff166001145b61076d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610371565b6000805460ff191660011790558015610790576000805461ff0019166101001790555b610798610c5e565b6107a0610c8d565b6107a984610c0c565b60cc80546001600160a01b038086166001600160a01b03199283161790925560cb805492851692909116919091179055801561081f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b61082d610bb2565b6001600160a01b0381166108925760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610371565b61040e81610c0c565b60cc546001600160a01b031633146108c85760405163921f325560e01b8152336004820152602401610371565b60cb546001600160a01b031660fe19016108fc5760006108ea8486018661133f565b90506108f68188610cb4565b50610a32565b60cb5460405163020a49e360e51b81526001600160a01b03909116906341493c60906109349088908890889088908890600401611381565b60006040518083038186803b15801561094c57600080fd5b505afa92505050801561095d575060015b610a165760c980546001600160401b03908116600090815260ca6020526040808220805460ff19166001908117825594549151909491909316927f50830ba16d4a336ba668f1b236b66733def7d0033d3428770cfad6f2fa5e3e19926109c592918190611036565b60405180910390a260c98054600191906000906109ec9084906001600160401b0316611312565b92506101000a8154816001600160401b0302191690836001600160401b0316021790555050610a32565b6000610a248486018661133f565b9050610a308188610cb4565b505b505050505050565b61040e610bb2565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615610a7a57610a7583610d6e565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610ad4575060408051601f3d908101601f19168201909252610ad1918101906113ba565b60015b610b375760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610371565b6000805160206114928339815191528114610ba65760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610371565b50610a75838383610e0a565b6033546001600160a01b031633146105a65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610371565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16610c855760405162461bcd60e51b8152600401610371906113d3565b6105a6610e2f565b600054610100900460ff166105a65760405162461bcd60e51b8152600401610371906113d3565b60c980546001600160401b03908116600090815260ca60205260408082206002810187905560018101869055805460ff19168155935490519216917f50830ba16d4a336ba668f1b236b66733def7d0033d3428770cfad6f2fa5e3e1991610d1e9187908790611036565b60405180910390a260c9805460019190600090610d459084906001600160401b0316611312565b92506101000a8154816001600160401b0302191690836001600160401b03160217905550505050565b6001600160a01b0381163b610ddb5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610371565b60008051602061149283398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b610e1383610e5f565b600082511180610e205750805b15610a755761081f8383610e9f565b600054610100900460ff16610e565760405162461bcd60e51b8152600401610371906113d3565b6105a633610c0c565b610e6881610d6e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606001600160a01b0383163b610f075760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610371565b600080846001600160a01b031684604051610f229190611442565b600060405180830381855af49150503d8060008114610f5d576040519150601f19603f3d011682016040523d82523d6000602084013e610f62565b606091505b5091509150610f8a82826040518060600160405280602781526020016114b260279139610f95565b925050505b92915050565b60608315610fa4575081610fce565b825115610fb45782518084602001fd5b8160405162461bcd60e51b8152600401610371919061145e565b9392505050565b600060208284031215610fe757600080fd5b81356001600160401b0381168114610fce57600080fd5b634e487b7160e01b600052602160045260246000fd5b6003811061103257634e487b7160e01b600052602160045260246000fd5b9052565b606081016110448286611014565b602082019390935260400152919050565b80356001600160a01b038116811461106c57600080fd5b919050565b60006020828403121561108357600080fd5b610fce82611055565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156110b557600080fd5b6110be83611055565b915060208301356001600160401b038111156110d957600080fd5b8301601f810185136110ea57600080fd5b80356001600160401b038111156111035761110361108c565b604051601f8201601f19908116603f011681016001600160401b03811182821017156111315761113161108c565b60405281815282820160200187101561114957600080fd5b816020840160208301376000602083830101528093505050509250929050565b60008060006060848603121561117e57600080fd5b61118784611055565b925061119560208501611055565b91506111a360408501611055565b90509250925092565b60008083601f8401126111be57600080fd5b5081356001600160401b038111156111d557600080fd5b6020830191508360208285010111156111ed57600080fd5b9250929050565b6000806000806000806080878903121561120d57600080fd5b863595506020870135945060408701356001600160401b0381111561123157600080fd5b61123d89828a016111ac565b90955093505060608701356001600160401b0381111561125c57600080fd5b61126889828a016111ac565b979a9699509497509295939492505050565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b6001600160401b038181168382160190811115610f8f57634e487b7160e01b600052601160045260246000fd5b60006020828403121561135157600080fd5b5035919050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b85815260606020820152600061139b606083018688611358565b82810360408401526113ae818587611358565b98975050505050505050565b6000602082840312156113cc57600080fd5b5051919050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60005b83811015611439578181015183820152602001611421565b50506000910152565b6000825161145481846020870161141e565b9190910192915050565b602081526000825180602084015261147d81604085016020870161141e565b601f01601f1916919091016040019291505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122075d6a636273c4a7083ed378dbd952bf02ebc24e1575532f01f2adafbc39362db64736f6c634300081c0033","sourceMap":"506:4010:73:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;820:58;;;;;;;;;;-1:-1:-1;820:58:73;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;1268:33;;;;;;;;;;-1:-1:-1;1268:33:73;;;;-1:-1:-1;;;;;1268:33:73;;;;;;-1:-1:-1;;;;;1233:32:79;;;1215:51;;1203:2;1188:18;1268:33:73;1069:203:79;3315:197:22;;;;;;;;;;-1:-1:-1;3315:197:22;;;;;:::i;:::-;;:::i;:::-;;1308:39:73;;;;;;;;;;-1:-1:-1;1308:39:73;;;;-1:-1:-1;;;;;1308:39:73;;;3761:222:22;;;;;;:::i;:::-;;:::i;3004:131::-;;;;;;;;;;;;;:::i;:::-;;;2947:25:79;;;2935:2;2920:18;3004:131:22;2801:177:79;2071:101:17;;;;;;;;;;;;;:::i;1490:61:73:-;;;;;;;;;;;;1546:4;1490:61;;772:42;;;;;;;;;;-1:-1:-1;772:42:73;;;;-1:-1:-1;;;;;772:42:73;;;;;;-1:-1:-1;;;;;3145:31:79;;;3127:50;;3115:2;3100:18;772:42:73;2983:200:79;1441:85:17;;;;;;;;;;-1:-1:-1;1513:6:17;;-1:-1:-1;;;;;1513:6:17;1441:85;;3071:369:73;;;;;;;;;;;;;:::i;3912:264::-;;;;;;;;;;-1:-1:-1;3912:264:73;;;;;:::i;:::-;;:::i;:::-;;;;3416:4:79;3404:17;;;3386:36;;3453:2;3438:18;;3431:34;;;;3481:18;;;3474:34;3374:2;3359:18;3912:264:73;3188:326:79;1617:358:73;;;;;;;;;;-1:-1:-1;1617:358:73;;;;;:::i;:::-;;:::i;2321:198:17:-;;;;;;;;;;-1:-1:-1;2321:198:17;;;;;:::i;:::-;;:::i;1981:1084:73:-;;;;;;;;;;-1:-1:-1;1981:1084:73;;;;;:::i;:::-;;:::i;3315:197:22:-;-1:-1:-1;;;;;1898:6:22;1881:23;1889:4;1881:23;1873:80;;;;-1:-1:-1;;;1873:80:22;;;;;;;:::i;:::-;;;;;;;;;1995:6;-1:-1:-1;;;;;1971:30:22;:20;-1:-1:-1;;;;;;;;;;;1642:65:19;-1:-1:-1;;;;;1642:65:19;;1563:151;1971:20:22;-1:-1:-1;;;;;1971:30:22;;1963:87;;;;-1:-1:-1;;;1963:87:22;;;;;;;:::i;:::-;3398:36:::1;3416:17;3398;:36::i;:::-;3485:12;::::0;;3495:1:::1;3485:12:::0;;;::::1;::::0;::::1;::::0;;;3444:61:::1;::::0;3466:17;;3485:12;3444:21:::1;:61::i;:::-;3315:197:::0;:::o;3761:222::-;-1:-1:-1;;;;;1898:6:22;1881:23;1889:4;1881:23;1873:80;;;;-1:-1:-1;;;1873:80:22;;;;;;;:::i;:::-;1995:6;-1:-1:-1;;;;;1971:30:22;:20;-1:-1:-1;;;;;;;;;;;1642:65:19;-1:-1:-1;;;;;1642:65:19;;1563:151;1971:20:22;-1:-1:-1;;;;;1971:30:22;;1963:87;;;;-1:-1:-1;;;1963:87:22;;;;;;;:::i;:::-;3878:36:::1;3896:17;3878;:36::i;:::-;3924:52;3946:17;3965:4;3971;3924:21;:52::i;:::-;3761:222:::0;;:::o;3004:131::-;3082:7;2324:4;-1:-1:-1;;;;;2333:6:22;2316:23;;2308:92;;;;-1:-1:-1;;;2308:92:22;;6190:2:79;2308:92:22;;;6172:21:79;6229:2;6209:18;;;6202:30;6268:34;6248:18;;;6241:62;6339:26;6319:18;;;6312:54;6383:19;;2308:92:22;5988:420:79;2308:92:22;-1:-1:-1;;;;;;;;;;;;3004:131:22;:::o;2071:101:17:-;1334:13;:11;:13::i;:::-;2135:30:::1;2162:1;2135:18;:30::i;:::-;2071:101::o:0;3071:369:73:-;4406:24;;-1:-1:-1;;;;;4406:24:73;4392:10;:38;4388:109;;4453:33;;-1:-1:-1;;;4453:33:73;;4475:10;4453:33;;;1215:51:79;1188:18;;4453:33:73;1069:203:79;4388:109:73;3205:28:::1;::::0;;-1:-1:-1;;;;;3205:28:73;;::::1;3156:29;3188:46:::0;;;:16:::1;:46;::::0;;;;;3244:43;;-1:-1:-1;;3244:43:73::1;3259:28;3244:43:::0;;::::1;::::0;;3321:28;;3302:88;;3188:46;;3321:28;;;::::1;::::0;3302:88:::1;::::0;::::1;::::0;3259:28;3156:29;;3302:88:::1;:::i;:::-;;;;;;;;3400:28;:33:::0;;3432:1:::1;::::0;3400:28;::::1;::::0;:33:::1;::::0;3432:1;;-1:-1:-1;;;;;3400:33:73::1;;:::i;:::-;;;;;;;;-1:-1:-1::0;;;;;3400:33:73::1;;;;;-1:-1:-1::0;;;;;3400:33:73::1;;;;;;3146:294;3071:369::o:0;3912:264::-;-1:-1:-1;;;;;4068:29:73;;3981:5;4068:29;;;:16;:29;;;;;4121:12;;3981:5;;;;4121:12;;4115:19;;;;;;;;:::i;:::-;4136:14;;;;4152:16;;;;;4107:62;;4136:14;;-1:-1:-1;4152:16:73;-1:-1:-1;3912:264:73;-1:-1:-1;;3912:264:73:o;1617:358::-;3111:19:21;3134:13;;;;;;3133:14;;3179:34;;;;-1:-1:-1;3197:12:21;;3212:1;3197:12;;;;:16;3179:34;3178:108;;;-1:-1:-1;3258:4:21;1476:19:24;:23;;;3219:66:21;;-1:-1:-1;3268:12:21;;;;;:17;3219:66;3157:201;;;;-1:-1:-1;;;3157:201:21;;7304:2:79;3157:201:21;;;7286:21:79;7343:2;7323:18;;;7316:30;7382:34;7362:18;;;7355:62;-1:-1:-1;;;7433:18:79;;;7426:44;7487:19;;3157:201:21;7102:410:79;3157:201:21;3368:12;:16;;-1:-1:-1;;3368:16:21;3383:1;3368:16;;;3394:65;;;;3428:13;:20;;-1:-1:-1;;3428:20:21;;;;;3394:65;1768:16:73::1;:14;:16::i;:::-;1794:24;:22;:24::i;:::-;1828:28;1847:8;1828:18;:28::i;:::-;1866:24;:52:::0;;-1:-1:-1;;;;;1866:52:73;;::::1;-1:-1:-1::0;;;;;;1866:52:73;;::::1;;::::0;;;1928:18:::1;:40:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;3479:99:21;;;;3529:5;3513:21;;-1:-1:-1;;3513:21:21;;;3553:14;;-1:-1:-1;7669:36:79;;3553:14:21;;7657:2:79;7642:18;3553:14:21;;;;;;;3479:99;3101:483;1617:358:73;;;:::o;2321:198:17:-;1334:13;:11;:13::i;:::-;-1:-1:-1;;;;;2409:22:17;::::1;2401:73;;;::::0;-1:-1:-1;;;2401:73:17;;7918:2:79;2401:73:17::1;::::0;::::1;7900:21:79::0;7957:2;7937:18;;;7930:30;7996:34;7976:18;;;7969:62;-1:-1:-1;;;8047:18:79;;;8040:36;8093:19;;2401:73:17::1;7716:402:79::0;2401:73:17::1;2484:28;2503:8;2484:18;:28::i;1981:1084:73:-:0;4406:24;;-1:-1:-1;;;;;4406:24:73;4392:10;:38;4388:109;;4453:33;;-1:-1:-1;;;4453:33:73;;4475:10;4453:33;;;1215:51:79;1188:18;;4453:33:73;1069:203:79;4388:109:73;2266:18:::1;::::0;-1:-1:-1;;;;;2266:18:73::1;-1:-1:-1::0;;2266:43:73;2262:219:::1;;2326:18;2348:38;::::0;;::::1;2359:15:::0;2348:38:::1;:::i;:::-;2325:61;;2400:50;2420:10;2432:17;2400:19;:50::i;:::-;2464:7;;;2262:219;2508:18;::::0;2495:92:::1;::::0;-1:-1:-1;;;2495:92:73;;-1:-1:-1;;;;;2508:18:73;;::::1;::::0;2495:44:::1;::::0;:92:::1;::::0;2540:14;;2556:15;;;;2573:13;;;;2495:92:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;2491:568;;2808:28;::::0;;-1:-1:-1;;;;;2808:28:73;;::::1;2759:29;2791:46:::0;;;:16:::1;:46;::::0;;;;;2851:43;;-1:-1:-1;;2851:43:73::1;2808:28:::0;2851:43;;::::1;::::0;;2932:28;;2913:88;;2791:46;;2932:28;;;::::1;::::0;2913:88:::1;::::0;::::1;::::0;2808:28;2759:29;;2913:88:::1;:::i;:::-;;;;;;;;3015:28;:33:::0;;3047:1:::1;::::0;3015:28;::::1;::::0;:33:::1;::::0;3047:1;;-1:-1:-1;;;;;3015:33:73::1;;:::i;:::-;;;;;;;;-1:-1:-1::0;;;;;3015:33:73::1;;;;;-1:-1:-1::0;;;;;3015:33:73::1;;;;;;2745:314;2491:568;;;2603:18;2625:38;::::0;;::::1;2636:15:::0;2625:38:::1;:::i;:::-;2602:61;;2677:50;2697:10;2709:17;2677:19;:50::i;:::-;2588:150;2491:568;1981:1084:::0;;;;;;:::o;4182:157::-;1334:13:17;:11;:13::i;2938:974:19:-;951:66;3384:59;;;3380:526;;;3459:37;3478:17;3459:18;:37::i;:::-;2938:974;;;:::o;3380:526::-;3560:17;-1:-1:-1;;;;;3531:61:19;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3531:63:19;;;;;;;;-1:-1:-1;;3531:63:19;;;;;;;;;;;;:::i;:::-;;;3527:302;;3758:56;;-1:-1:-1;;;3758:56:19;;9523:2:79;3758:56:19;;;9505:21:79;9562:2;9542:18;;;9535:30;9601:34;9581:18;;;9574:62;-1:-1:-1;;;9652:18:79;;;9645:44;9706:19;;3758:56:19;9321:410:79;3527:302:19;-1:-1:-1;;;;;;;;;;;3644:28:19;;3636:82;;;;-1:-1:-1;;;3636:82:19;;9938:2:79;3636:82:19;;;9920:21:79;9977:2;9957:18;;;9950:30;10016:34;9996:18;;;9989:62;-1:-1:-1;;;10067:18:79;;;10060:39;10116:19;;3636:82:19;9736:405:79;3636:82:19;3595:138;3842:53;3860:17;3879:4;3885:9;3842:17;:53::i;1599:130:17:-;1513:6;;-1:-1:-1;;;;;1513:6:17;929:10:25;1662:23:17;1654:68;;;;-1:-1:-1;;;1654:68:17;;10348:2:79;1654:68:17;;;10330:21:79;;;10367:18;;;10360:30;10426:34;10406:18;;;10399:62;10478:18;;1654:68:17;10146:356:79;2673:187:17;2765:6;;;-1:-1:-1;;;;;2781:17:17;;;-1:-1:-1;;;;;;2781:17:17;;;;;;;2813:40;;2765:6;;;2781:17;2765:6;;2813:40;;2746:16;;2813:40;2736:124;2673:187;:::o;1003:95::-;4910:13:21;;;;;;;4902:69;;;;-1:-1:-1;;;4902:69:21;;;;;;;:::i;:::-;1065:26:17::1;:24;:26::i;1042:67:22:-:0;4910:13:21;;;;;;;4902:69;;;;-1:-1:-1;;;4902:69:21;;;;;;;:::i;3446:460:73:-;3581:28;;;-1:-1:-1;;;;;3581:28:73;;;3532:29;3564:46;;;:16;:46;;;;;;3620:16;;;:29;;;3581:28;3659:14;;:25;;;3694:45;;-1:-1:-1;;3694:45:73;;;3773:28;;3754:102;;3773:28;;;3754:102;;;;3620:29;;3659:25;;3754:102;:::i;:::-;;;;;;;;3866:28;:33;;3898:1;;3866:28;;;:33;;3898:1;;-1:-1:-1;;;;;3866:33:73;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;3866:33:73;;;;;-1:-1:-1;;;;;3866:33:73;;;;;;3522:384;3446:460;;:::o;1805:281:19:-;-1:-1:-1;;;;;1476:19:24;;;1878:106:19;;;;-1:-1:-1;;;1878:106:19;;11121:2:79;1878:106:19;;;11103:21:79;11160:2;11140:18;;;11133:30;11199:34;11179:18;;;11172:62;-1:-1:-1;;;11250:18:79;;;11243:43;11303:19;;1878:106:19;10919:409:79;1878:106:19;-1:-1:-1;;;;;;;;;;;1994:85:19;;-1:-1:-1;;;;;;1994:85:19;-1:-1:-1;;;;;1994:85:19;;;;;;;;;;1805:281::o;2478:288::-;2616:29;2627:17;2616:10;:29::i;:::-;2673:1;2659:4;:11;:15;:28;;;;2678:9;2659:28;2655:105;;;2703:46;2725:17;2744:4;2703:21;:46::i;1104:111:17:-;4910:13:21;;;;;;;4902:69;;;;-1:-1:-1;;;4902:69:21;;;;;;;:::i;:::-;1176:32:17::1;929:10:25::0;1176:18:17::1;:32::i;2192:152:19:-:0;2258:37;2277:17;2258:18;:37::i;:::-;2310:27;;-1:-1:-1;;;;;2310:27:19;;;;;;;;2192:152;:::o;7088:455::-;7171:12;-1:-1:-1;;;;;1476:19:24;;;7195:88:19;;;;-1:-1:-1;;;7195:88:19;;11535:2:79;7195:88:19;;;11517:21:79;11574:2;11554:18;;;11547:30;11613:34;11593:18;;;11586:62;-1:-1:-1;;;11664:18:79;;;11657:36;11710:19;;7195:88:19;11333:402:79;7195:88:19;7354:12;7368:23;7395:6;-1:-1:-1;;;;;7395:19:19;7415:4;7395:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7353:67;;;;7437:99;7473:7;7482:10;7437:99;;;;;;;;;;;;;;;;;:35;:99::i;:::-;7430:106;;;;7088:455;;;;;:::o;6622:742:24:-;6768:12;6796:7;6792:566;;;-1:-1:-1;6826:10:24;6819:17;;6792:566;6937:17;;:21;6933:415;;7181:10;7175:17;7241:15;7228:10;7224:2;7220:19;7213:44;6933:415;7320:12;7313:20;;-1:-1:-1;;;7313:20:24;;;;;;;;:::i;6933:415::-;6622:742;;;;;:::o;14:284:79:-;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;180:9;167:23;-1:-1:-1;;;;;223:5:79;219:30;212:5;209:41;199:69;;264:1;261;254:12;303:127;364:10;359:3;355:20;352:1;345:31;395:4;392:1;385:15;419:4;416:1;409:15;435:249;528:1;521:5;518:12;508:143;;573:10;568:3;564:20;561:1;554:31;608:4;605:1;598:15;636:4;633:1;626:15;508:143;660:18;;435:249::o;689:375::-;904:2;889:18;;916:56;893:9;954:6;916:56;:::i;:::-;1003:2;988:18;;981:34;;;;1046:2;1031:18;1024:34;689:375;;-1:-1:-1;689:375:79:o;1277:173::-;1345:20;;-1:-1:-1;;;;;1394:31:79;;1384:42;;1374:70;;1440:1;1437;1430:12;1374:70;1277:173;;;:::o;1455:186::-;1514:6;1567:2;1555:9;1546:7;1542:23;1538:32;1535:52;;;1583:1;1580;1573:12;1535:52;1606:29;1625:9;1606:29;:::i;1646:127::-;1707:10;1702:3;1698:20;1695:1;1688:31;1738:4;1735:1;1728:15;1762:4;1759:1;1752:15;1778:1018;1855:6;1863;1916:2;1904:9;1895:7;1891:23;1887:32;1884:52;;;1932:1;1929;1922:12;1884:52;1955:29;1974:9;1955:29;:::i;:::-;1945:39;;2035:2;2024:9;2020:18;2007:32;-1:-1:-1;;;;;2054:6:79;2051:30;2048:50;;;2094:1;2091;2084:12;2048:50;2117:22;;2170:4;2162:13;;2158:27;-1:-1:-1;2148:55:79;;2199:1;2196;2189:12;2148:55;2239:2;2226:16;-1:-1:-1;;;;;2257:6:79;2254:30;2251:56;;;2287:18;;:::i;:::-;2336:2;2330:9;2428:2;2390:17;;-1:-1:-1;;2386:31:79;;;2419:2;2382:40;2378:54;2366:67;;-1:-1:-1;;;;;2448:34:79;;2484:22;;;2445:62;2442:88;;;2510:18;;:::i;:::-;2546:2;2539:22;2570;;;2611:15;;;2628:2;2607:24;2604:37;-1:-1:-1;2601:57:79;;;2654:1;2651;2644:12;2601:57;2710:6;2705:2;2701;2697:11;2692:2;2684:6;2680:15;2667:50;2763:1;2758:2;2749:6;2741;2737:19;2733:28;2726:39;2784:6;2774:16;;;;;1778:1018;;;;;:::o;3519:334::-;3596:6;3604;3612;3665:2;3653:9;3644:7;3640:23;3636:32;3633:52;;;3681:1;3678;3671:12;3633:52;3704:29;3723:9;3704:29;:::i;:::-;3694:39;;3752:38;3786:2;3775:9;3771:18;3752:38;:::i;:::-;3742:48;;3809:38;3843:2;3832:9;3828:18;3809:38;:::i;:::-;3799:48;;3519:334;;;;;:::o;3858:347::-;3909:8;3919:6;3973:3;3966:4;3958:6;3954:17;3950:27;3940:55;;3991:1;3988;3981:12;3940:55;-1:-1:-1;4014:20:79;;-1:-1:-1;;;;;4046:30:79;;4043:50;;;4089:1;4086;4079:12;4043:50;4126:4;4118:6;4114:17;4102:29;;4178:3;4171:4;4162:6;4154;4150:19;4146:30;4143:39;4140:59;;;4195:1;4192;4185:12;4140:59;3858:347;;;;;:::o;4210:947::-;4318:6;4326;4334;4342;4350;4358;4411:3;4399:9;4390:7;4386:23;4382:33;4379:53;;;4428:1;4425;4418:12;4379:53;4473:23;;;-1:-1:-1;4593:2:79;4578:18;;4565:32;;-1:-1:-1;4674:2:79;4659:18;;4646:32;-1:-1:-1;;;;;4690:30:79;;4687:50;;;4733:1;4730;4723:12;4687:50;4772:58;4822:7;4813:6;4802:9;4798:22;4772:58;:::i;:::-;4849:8;;-1:-1:-1;4746:84:79;-1:-1:-1;;4937:2:79;4922:18;;4909:32;-1:-1:-1;;;;;4953:32:79;;4950:52;;;4998:1;4995;4988:12;4950:52;5037:60;5089:7;5078:8;5067:9;5063:24;5037:60;:::i;:::-;4210:947;;;;-1:-1:-1;4210:947:79;;-1:-1:-1;4210:947:79;;5116:8;;4210:947;-1:-1:-1;;;4210:947:79:o;5162:408::-;5364:2;5346:21;;;5403:2;5383:18;;;5376:30;5442:34;5437:2;5422:18;;5415:62;-1:-1:-1;;;5508:2:79;5493:18;;5486:42;5560:3;5545:19;;5162:408::o;5575:::-;5777:2;5759:21;;;5816:2;5796:18;;;5789:30;5855:34;5850:2;5835:18;;5828:62;-1:-1:-1;;;5921:2:79;5906:18;;5899:42;5973:3;5958:19;;5575:408::o;6809:288::-;-1:-1:-1;;;;;6877:26:79;;;6905;;;6873:59;;6944:27;;6941:150;;;7013:10;7008:3;7004:20;7001:1;6994:31;7048:4;7045:1;7038:15;7076:4;7073:1;7066:15;8123:226;8182:6;8235:2;8223:9;8214:7;8210:23;8206:32;8203:52;;;8251:1;8248;8241:12;8203:52;-1:-1:-1;8296:23:79;;8123:226;-1:-1:-1;8123:226:79:o;8354:266::-;8442:6;8437:3;8430:19;8494:6;8487:5;8480:4;8475:3;8471:14;8458:43;-1:-1:-1;8546:1:79;8521:16;;;8539:4;8517:27;;;8510:38;;;;8602:2;8581:15;;;-1:-1:-1;;8577:29:79;8568:39;;;8564:50;;8354:266::o;8625:502::-;8866:6;8855:9;8848:25;8909:2;8904;8893:9;8889:18;8882:30;8829:4;8935:61;8992:2;8981:9;8977:18;8969:6;8961;8935:61;:::i;:::-;9044:9;9036:6;9032:22;9027:2;9016:9;9012:18;9005:50;9072:49;9114:6;9106;9098;9072:49;:::i;:::-;9064:57;8625:502;-1:-1:-1;;;;;;;;8625:502:79:o;9132:184::-;9202:6;9255:2;9243:9;9234:7;9230:23;9226:32;9223:52;;;9271:1;9268;9261:12;9223:52;-1:-1:-1;9294:16:79;;9132:184;-1:-1:-1;9132:184:79:o;10507:407::-;10709:2;10691:21;;;10748:2;10728:18;;;10721:30;10787:34;10782:2;10767:18;;10760:62;-1:-1:-1;;;10853:2:79;10838:18;;10831:41;10904:3;10889:19;;10507:407::o;11740:250::-;11825:1;11835:113;11849:6;11846:1;11843:13;11835:113;;;11925:11;;;11919:18;11906:11;;;11899:39;11871:2;11864:10;11835:113;;;-1:-1:-1;;11982:1:79;11964:16;;11957:27;11740:250::o;11995:287::-;12124:3;12162:6;12156:13;12178:66;12237:6;12232:3;12225:4;12217:6;12213:17;12178:66;:::i;:::-;12260:16;;;;;11995:287;-1:-1:-1;;11995:287:79:o;12287:396::-;12436:2;12425:9;12418:21;12399:4;12468:6;12462:13;12511:6;12506:2;12495:9;12491:18;12484:34;12527:79;12599:6;12594:2;12583:9;12579:18;12574:2;12566:6;12562:15;12527:79;:::i;:::-;12667:2;12646:15;-1:-1:-1;;12642:29:79;12627:45;;;;12674:2;12623:54;;12287:396;-1:-1:-1;;12287:396:79:o","linkReferences":{},"immutableReferences":{"4221":[{"start":819,"length":32},{"start":892,"length":32},{"start":1051,"length":32},{"start":1115,"length":32},{"start":1262,"length":32}]}},"methodIdentifiers":{"VERIFIER_MOCK_ADDRESS()":"83501b21","aggregatedProofs(uint64)":"1853e99a","alignedAggregatorAddress()":"4c46688c","currentAggregatedProofNumber()":"89909c4d","getAggregatedProof(uint64)":"b5825bdd","initialize(address,address,address)":"c0c53b8b","markCurrentAggregatedProofAsMissed()":"ae1517df","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","renounceOwnership()":"715018a6","sp1VerifierAddress()":"294e3ccb","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286","verify(bytes32,bytes32,bytes,bytes)":"fc2b4271"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.28+commit.7893614a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"OnlyAlignedAggregator\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint64\",\"name\":\"proofNumber\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"enum IAlignedProofAggregationService.AggregatedProofStatus\",\"name\":\"status\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"merkleRoot\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"blobVersionedHash\",\"type\":\"bytes32\"}],\"name\":\"NewAggregatedProof\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"VERIFIER_MOCK_ADDRESS\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"aggregatedProofs\",\"outputs\":[{\"internalType\":\"enum IAlignedProofAggregationService.AggregatedProofStatus\",\"name\":\"status\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"blobHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"merkleRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"alignedAggregatorAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currentAggregatedProofNumber\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"proofNumber\",\"type\":\"uint64\"}],\"name\":\"getAggregatedProof\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"blobHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"merkleRoot\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_alignedAggregatorAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_sp1VerifierAddress\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"markCurrentAggregatedProofAsMissed\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"sp1VerifierAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"blobVersionedHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"sp1ProgramVKey\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"sp1PublicValues\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"sp1ProofBytes\",\"type\":\"bytes\"}],\"name\":\"verify\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is upgraded.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate that the this implementation remains valid after an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"verify(bytes32,bytes32,bytes,bytes)\":{\"details\":\"This function is called by the aligned proof aggregator after collecting the proofs and aggregating them to be verified on-chain. We expect the blobTransactionHash to be called before\",\"params\":{\"blobVersionedHash\":\"the versioned hash of the blob transaction that contains the leaves that compose the merkle root.\",\"sp1ProgramVKey\":\"Public verifying key\",\"sp1ProofBytes\":\"Groth16 proof\",\"sp1PublicValues\":\"Values used to perform the execution\"}}},\"stateVariables\":{\"sp1VerifierAddress\":{\"details\":\"This can either be a specific SP1Verifier for a specific version, or the SP1VerifierGateway which can be used to verify proofs for any version of SP1. For the list of supported verifiers on each chain, see: https://docs.succinct.xyz/onchain-verification/contract-addresses\"}},\"version\":1},\"userdoc\":{\"events\":{\"NewAggregatedProof(uint64,uint8,bytes32,bytes32)\":{\"notice\":\"event that gets emitted after a successful aggregated proof verification\"}},\"kind\":\"user\",\"methods\":{\"VERIFIER_MOCK_ADDRESS()\":{\"notice\":\"whether we are in dev mode or not if the sp1 verifier address is set to this address, then we skip verification\"},\"currentAggregatedProofNumber()\":{\"notice\":\"Maps the aggregated verification merkle root with the blob transaction hash that contains the leaves\"},\"sp1VerifierAddress()\":{\"notice\":\"The address of the SP1 verifier contract.\"},\"verify(bytes32,bytes32,bytes,bytes)\":{\"notice\":\"Method to verify an aggregated proof from aligned\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/core/AlignedProofAggregationService.sol\":\"AlignedProofAggregationService\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin-upgrades-v4.9.0/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-upgradeable-v4.9.0/\",\":@openzeppelin-upgrades/contracts/=lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin-v4.9.0/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-v4.9.0/\",\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/eigenlayer-middleware/lib/openzeppelin-contracts/contracts/\",\":@sp1-contracts/=lib/sp1-contracts/contracts/src/\",\":ds-test/=lib/eigenlayer-middleware/lib/ds-test/src/\",\":eigenlayer-contracts/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/\",\":eigenlayer-core-contracts/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/core/\",\":eigenlayer-core/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/\",\":eigenlayer-middleware/=lib/eigenlayer-middleware/src/\",\":eigenlayer-scripts/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/script/\",\":erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":openzeppelin-contracts-upgradeable-v4.9.0/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-upgradeable-v4.9.0/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts-v4.9.0/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-v4.9.0/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-upgradeable-v4.9.0/contracts/\",\":sp1-contracts/=lib/sp1-contracts/contracts/\"]},\"sources\":{\"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x247c62047745915c0af6b955470a72d1696ebad4352d7d3011aef1a2463cd888\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d7fc8396619de513c96b6e00301b88dd790e83542aab918425633a5f7297a15a\",\"dweb:/ipfs/QmXbP4kiZyp7guuS7xe8KaybnwkRPGrBc2Kbi3vhcTfpxb\"]},\"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/draft-IERC1822Upgradeable.sol\":{\"keccak256\":\"0x77c89f893e403efc6929ba842b7ccf6534d4ffe03afe31670b4a528c0ad78c0f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://496bd9b3df2455d571018c09f0c6badd29713fdeb907c6aa09d8d28cb603f053\",\"dweb:/ipfs/QmXdJDyYs6WMwMh21dez2BYPxhSUaUYFMDtVNcn2cgFR79\"]},\"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol\":{\"keccak256\":\"0x315887e846f1e5f8d8fa535a229d318bb9290aaa69485117f1ee8a9a6b3be823\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://29dda00da6d269685b555e710e4abf1c3eb6d00c15b888a7880a2f8dd3c4fdc2\",\"dweb:/ipfs/QmSqcjtdECygtT1Gy7uEo42x8542srpgGEeKKHfcnQqXgn\"]},\"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/proxy/beacon/IBeaconUpgradeable.sol\":{\"keccak256\":\"0x24b86ac8c005b8c654fbf6ac34a5a4f61580d7273541e83e013e89d66fbf0908\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4dbfe1a3b3b3fb64294ce41fd2ad362e7b7012208117864f42c1a67620a6d5c1\",\"dweb:/ipfs/QmVMU5tWt7zBQMmf5cpMX8UMHV86T3kFeTxBTBjFqVWfoJ\"]},\"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x0203dcadc5737d9ef2c211d6fa15d18ebc3b30dfa51903b64870b01a062b0b4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6eb2fd1e9894dbe778f4b8131adecebe570689e63cf892f4e21257bfe1252497\",\"dweb:/ipfs/QmXgUGNfZvrn6N2miv3nooSs7Jm34A41qz94fu2GtDFcx8\"]},\"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0x6e36e9b4b71de699c2f3f0d4e4d1aa0b35da99a26e8d5b91ef09ba234b4ef270\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://abfa467c53a0d60b4d09bf04aa952b1d1d44e5766fcc053aace078d7859b8419\",\"dweb:/ipfs/QmebVTZpyNxYfKYTuLMywzEJTdc1Ca8ME4xm3kR9gQgToG\"]},\"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x611aa3f23e59cfdd1863c536776407b3e33d695152a266fa7cfb34440a29a8a3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b4b2110b7f2b3eb32951bc08046fa90feccffa594e1176cb91cdfb0e94726b4\",\"dweb:/ipfs/QmSxLwYjicf9zWFuieRc8WQwE4FisA1Um5jp1iSa731TGt\"]},\"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x963ea7f0b48b032eef72fe3a7582edf78408d6f834115b9feadd673a4d5bd149\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d6520943ea55fdf5f0bafb39ed909f64de17051bc954ff3e88c9e5621412c79c\",\"dweb:/ipfs/QmWZ4rAKTQbNG2HxGs46AcTXShsVytKeLs7CUCdCSv5N7a\"]},\"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/utils/StorageSlotUpgradeable.sol\":{\"keccak256\":\"0x09864aea84f01e39313375b5610c73a3c1c68abbdc51e5ccdd25ff977fdadf9a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://aedb48081190fa828d243529ce25c708202c7d4ccfe99f0e4ecd6bc0cfcd03f3\",\"dweb:/ipfs/QmWyiDQHPZA56iqsAwTmiJoxvNeRQLUVr4gTfzpdpXivpo\"]},\"lib/sp1-contracts/contracts/src/ISP1Verifier.sol\":{\"keccak256\":\"0x9e3ba64860bea920772dcf16be7946de2a2900d80bd51e9c0771184138f4f4d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0ec7230ca1fdd74edc6ab597d80bb345282aed3f0db4788ed96b4cc373ff46a3\",\"dweb:/ipfs/QmXPuSS5gzxMhFKWr1gsxBVu6WHh53ZZEvWkGgzrkM6Y7Q\"]},\"src/core/AlignedProofAggregationService.sol\":{\"keccak256\":\"0xf9bdc2f3bf96f250ef9dc5567c8f2beb1ad66b626f9b5be6b101d062a5bc612d\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://3a8d4bbb2e61c3251b3dcc2e266d09755662d642025140b00164c6c83df91466\",\"dweb:/ipfs/QmYsAUKPM7TLYWnzH9bXA3zhsmR8vh2xQkrfH3cNDJxQUx\"]},\"src/core/IAlignedProofAggregationService.sol\":{\"keccak256\":\"0x774439933df95363210910b4ebce36ecece5947811733ded1fdfc2a55ea1ebf5\",\"urls\":[\"bzz-raw://9c73ded51b1e6be2dd466c764b48ca687add7b9530f166aad58c799179c037af\",\"dweb:/ipfs/QmRHhMPWSGK9kdGMQkBPL6ELoKsc63oEAr7BbGwH1pp6FH\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.28+commit.7893614a"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"type":"error","name":"OnlyAlignedAggregator"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint64","name":"proofNumber","type":"uint64","indexed":true},{"internalType":"enum IAlignedProofAggregationService.AggregatedProofStatus","name":"status","type":"uint8","indexed":false},{"internalType":"bytes32","name":"merkleRoot","type":"bytes32","indexed":false},{"internalType":"bytes32","name":"blobVersionedHash","type":"bytes32","indexed":false}],"type":"event","name":"NewAggregatedProof","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"VERIFIER_MOCK_ADDRESS","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"view","type":"function","name":"aggregatedProofs","outputs":[{"internalType":"enum IAlignedProofAggregationService.AggregatedProofStatus","name":"status","type":"uint8"},{"internalType":"bytes32","name":"blobHash","type":"bytes32"},{"internalType":"bytes32","name":"merkleRoot","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"alignedAggregatorAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"currentAggregatedProofNumber","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[{"internalType":"uint64","name":"proofNumber","type":"uint64"}],"stateMutability":"view","type":"function","name":"getAggregatedProof","outputs":[{"internalType":"uint8","name":"","type":"uint8"},{"internalType":"bytes32","name":"blobHash","type":"bytes32"},{"internalType":"bytes32","name":"merkleRoot","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"},{"internalType":"address","name":"_alignedAggregatorAddress","type":"address"},{"internalType":"address","name":"_sp1VerifierAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"markCurrentAggregatedProofAsMissed"},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[],"stateMutability":"view","type":"function","name":"sp1VerifierAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"},{"inputs":[{"internalType":"bytes32","name":"blobVersionedHash","type":"bytes32"},{"internalType":"bytes32","name":"sp1ProgramVKey","type":"bytes32"},{"internalType":"bytes","name":"sp1PublicValues","type":"bytes"},{"internalType":"bytes","name":"sp1ProofBytes","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"verify"}],"devdoc":{"kind":"dev","methods":{"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate that the this implementation remains valid after an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"verify(bytes32,bytes32,bytes,bytes)":{"details":"This function is called by the aligned proof aggregator after collecting the proofs and aggregating them to be verified on-chain. We expect the blobTransactionHash to be called before","params":{"blobVersionedHash":"the versioned hash of the blob transaction that contains the leaves that compose the merkle root.","sp1ProgramVKey":"Public verifying key","sp1ProofBytes":"Groth16 proof","sp1PublicValues":"Values used to perform the execution"}}},"version":1},"userdoc":{"kind":"user","methods":{"VERIFIER_MOCK_ADDRESS()":{"notice":"whether we are in dev mode or not if the sp1 verifier address is set to this address, then we skip verification"},"currentAggregatedProofNumber()":{"notice":"Maps the aggregated verification merkle root with the blob transaction hash that contains the leaves"},"sp1VerifierAddress()":{"notice":"The address of the SP1 verifier contract."},"verify(bytes32,bytes32,bytes,bytes)":{"notice":"Method to verify an aggregated proof from aligned"}},"version":1}},"settings":{"remappings":["@openzeppelin-upgrades-v4.9.0/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-upgradeable-v4.9.0/","@openzeppelin-upgrades/contracts/=lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin-v4.9.0/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-v4.9.0/","@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/eigenlayer-middleware/lib/openzeppelin-contracts/contracts/","@sp1-contracts/=lib/sp1-contracts/contracts/src/","ds-test/=lib/eigenlayer-middleware/lib/ds-test/src/","eigenlayer-contracts/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/","eigenlayer-core-contracts/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/core/","eigenlayer-core/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/","eigenlayer-middleware/=lib/eigenlayer-middleware/src/","eigenlayer-scripts/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/script/","erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","openzeppelin-contracts-upgradeable-v4.9.0/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-upgradeable-v4.9.0/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts-v4.9.0/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-v4.9.0/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin/=lib/eigenlayer-middleware/lib/eigenlayer-contracts/lib/openzeppelin-contracts-upgradeable-v4.9.0/contracts/","sp1-contracts/=lib/sp1-contracts/contracts/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/core/AlignedProofAggregationService.sol":"AlignedProofAggregationService"},"evmVersion":"paris","libraries":{}},"sources":{"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x247c62047745915c0af6b955470a72d1696ebad4352d7d3011aef1a2463cd888","urls":["bzz-raw://d7fc8396619de513c96b6e00301b88dd790e83542aab918425633a5f7297a15a","dweb:/ipfs/QmXbP4kiZyp7guuS7xe8KaybnwkRPGrBc2Kbi3vhcTfpxb"],"license":"MIT"},"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/draft-IERC1822Upgradeable.sol":{"keccak256":"0x77c89f893e403efc6929ba842b7ccf6534d4ffe03afe31670b4a528c0ad78c0f","urls":["bzz-raw://496bd9b3df2455d571018c09f0c6badd29713fdeb907c6aa09d8d28cb603f053","dweb:/ipfs/QmXdJDyYs6WMwMh21dez2BYPxhSUaUYFMDtVNcn2cgFR79"],"license":"MIT"},"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol":{"keccak256":"0x315887e846f1e5f8d8fa535a229d318bb9290aaa69485117f1ee8a9a6b3be823","urls":["bzz-raw://29dda00da6d269685b555e710e4abf1c3eb6d00c15b888a7880a2f8dd3c4fdc2","dweb:/ipfs/QmSqcjtdECygtT1Gy7uEo42x8542srpgGEeKKHfcnQqXgn"],"license":"MIT"},"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/proxy/beacon/IBeaconUpgradeable.sol":{"keccak256":"0x24b86ac8c005b8c654fbf6ac34a5a4f61580d7273541e83e013e89d66fbf0908","urls":["bzz-raw://4dbfe1a3b3b3fb64294ce41fd2ad362e7b7012208117864f42c1a67620a6d5c1","dweb:/ipfs/QmVMU5tWt7zBQMmf5cpMX8UMHV86T3kFeTxBTBjFqVWfoJ"],"license":"MIT"},"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x0203dcadc5737d9ef2c211d6fa15d18ebc3b30dfa51903b64870b01a062b0b4e","urls":["bzz-raw://6eb2fd1e9894dbe778f4b8131adecebe570689e63cf892f4e21257bfe1252497","dweb:/ipfs/QmXgUGNfZvrn6N2miv3nooSs7Jm34A41qz94fu2GtDFcx8"],"license":"MIT"},"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0x6e36e9b4b71de699c2f3f0d4e4d1aa0b35da99a26e8d5b91ef09ba234b4ef270","urls":["bzz-raw://abfa467c53a0d60b4d09bf04aa952b1d1d44e5766fcc053aace078d7859b8419","dweb:/ipfs/QmebVTZpyNxYfKYTuLMywzEJTdc1Ca8ME4xm3kR9gQgToG"],"license":"MIT"},"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x611aa3f23e59cfdd1863c536776407b3e33d695152a266fa7cfb34440a29a8a3","urls":["bzz-raw://9b4b2110b7f2b3eb32951bc08046fa90feccffa594e1176cb91cdfb0e94726b4","dweb:/ipfs/QmSxLwYjicf9zWFuieRc8WQwE4FisA1Um5jp1iSa731TGt"],"license":"MIT"},"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x963ea7f0b48b032eef72fe3a7582edf78408d6f834115b9feadd673a4d5bd149","urls":["bzz-raw://d6520943ea55fdf5f0bafb39ed909f64de17051bc954ff3e88c9e5621412c79c","dweb:/ipfs/QmWZ4rAKTQbNG2HxGs46AcTXShsVytKeLs7CUCdCSv5N7a"],"license":"MIT"},"lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/utils/StorageSlotUpgradeable.sol":{"keccak256":"0x09864aea84f01e39313375b5610c73a3c1c68abbdc51e5ccdd25ff977fdadf9a","urls":["bzz-raw://aedb48081190fa828d243529ce25c708202c7d4ccfe99f0e4ecd6bc0cfcd03f3","dweb:/ipfs/QmWyiDQHPZA56iqsAwTmiJoxvNeRQLUVr4gTfzpdpXivpo"],"license":"MIT"},"lib/sp1-contracts/contracts/src/ISP1Verifier.sol":{"keccak256":"0x9e3ba64860bea920772dcf16be7946de2a2900d80bd51e9c0771184138f4f4d3","urls":["bzz-raw://0ec7230ca1fdd74edc6ab597d80bb345282aed3f0db4788ed96b4cc373ff46a3","dweb:/ipfs/QmXPuSS5gzxMhFKWr1gsxBVu6WHh53ZZEvWkGgzrkM6Y7Q"],"license":"MIT"},"src/core/AlignedProofAggregationService.sol":{"keccak256":"0xf9bdc2f3bf96f250ef9dc5567c8f2beb1ad66b626f9b5be6b101d062a5bc612d","urls":["bzz-raw://3a8d4bbb2e61c3251b3dcc2e266d09755662d642025140b00164c6c83df91466","dweb:/ipfs/QmYsAUKPM7TLYWnzH9bXA3zhsmR8vh2xQkrfH3cNDJxQUx"],"license":"UNLICENSED"},"src/core/IAlignedProofAggregationService.sol":{"keccak256":"0x774439933df95363210910b4ebce36ecece5947811733ded1fdfc2a55ea1ebf5","urls":["bzz-raw://9c73ded51b1e6be2dd466c764b48ca687add7b9530f166aad58c799179c037af","dweb:/ipfs/QmRHhMPWSGK9kdGMQkBPL6ELoKsc63oEAr7BbGwH1pp6FH"],"license":null}},"version":1},"id":73}