@aztec-foundation/l1-artifacts 6.0.0-rc.4 → 6.0.0-rc.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (357) hide show
  1. package/dest/AttesterExitExtLibAbi.d.ts +12 -0
  2. package/dest/AttesterExitExtLibAbi.d.ts.map +1 -1
  3. package/dest/AttesterExitExtLibAbi.js +16 -0
  4. package/dest/AttesterExitExtLibAbi.js.map +1 -1
  5. package/dest/AttesterExitExtLibBytecode.d.ts +1 -1
  6. package/dest/AttesterExitExtLibBytecode.js +1 -1
  7. package/dest/CoinIssuerAbi.d.ts +12 -0
  8. package/dest/CoinIssuerAbi.d.ts.map +1 -1
  9. package/dest/CoinIssuerAbi.js +16 -0
  10. package/dest/CoinIssuerAbi.js.map +1 -1
  11. package/dest/DateGatedRelayerAbi.d.ts +12 -0
  12. package/dest/DateGatedRelayerAbi.d.ts.map +1 -1
  13. package/dest/DateGatedRelayerAbi.js +16 -0
  14. package/dest/DateGatedRelayerAbi.js.map +1 -1
  15. package/dest/EmpireBaseAbi.d.ts +12 -0
  16. package/dest/EmpireBaseAbi.d.ts.map +1 -1
  17. package/dest/EmpireBaseAbi.js +16 -0
  18. package/dest/EmpireBaseAbi.js.map +1 -1
  19. package/dest/EpochProofExtLibAbi.d.ts +12 -0
  20. package/dest/EpochProofExtLibAbi.d.ts.map +1 -1
  21. package/dest/EpochProofExtLibAbi.js +16 -0
  22. package/dest/EpochProofExtLibAbi.js.map +1 -1
  23. package/dest/EpochProofExtLibBytecode.d.ts +1 -1
  24. package/dest/EpochProofExtLibBytecode.js +1 -1
  25. package/dest/ErrorsAbi.d.ts +12 -0
  26. package/dest/ErrorsAbi.d.ts.map +1 -1
  27. package/dest/ErrorsAbi.js +16 -0
  28. package/dest/ErrorsAbi.js.map +1 -1
  29. package/dest/EscapeHatchAbi.d.ts +22 -0
  30. package/dest/EscapeHatchAbi.d.ts.map +1 -1
  31. package/dest/EscapeHatchAbi.js +29 -0
  32. package/dest/EscapeHatchAbi.js.map +1 -1
  33. package/dest/EscapeHatchBytecode.d.ts +1 -1
  34. package/dest/EscapeHatchBytecode.d.ts.map +1 -1
  35. package/dest/EscapeHatchBytecode.js +1 -1
  36. package/dest/EscapeHatchBytecode.js.map +1 -1
  37. package/dest/EscapeHatchStorage.d.ts +8 -8
  38. package/dest/EscapeHatchStorage.js +8 -8
  39. package/dest/FeeAssetHandlerAbi.d.ts +12 -0
  40. package/dest/FeeAssetHandlerAbi.d.ts.map +1 -1
  41. package/dest/FeeAssetHandlerAbi.js +16 -0
  42. package/dest/FeeAssetHandlerAbi.js.map +1 -1
  43. package/dest/FeeJuicePortalAbi.d.ts +12 -0
  44. package/dest/FeeJuicePortalAbi.d.ts.map +1 -1
  45. package/dest/FeeJuicePortalAbi.js +16 -0
  46. package/dest/FeeJuicePortalAbi.js.map +1 -1
  47. package/dest/FeeJuicePortalBytecode.d.ts +1 -1
  48. package/dest/FeeJuicePortalBytecode.js +1 -1
  49. package/dest/GSEAbi.d.ts +12 -0
  50. package/dest/GSEAbi.d.ts.map +1 -1
  51. package/dest/GSEAbi.js +16 -0
  52. package/dest/GSEAbi.js.map +1 -1
  53. package/dest/GovernanceAbi.d.ts +12 -0
  54. package/dest/GovernanceAbi.d.ts.map +1 -1
  55. package/dest/GovernanceAbi.js +16 -0
  56. package/dest/GovernanceAbi.js.map +1 -1
  57. package/dest/GovernanceProposerAbi.d.ts +12 -0
  58. package/dest/GovernanceProposerAbi.d.ts.map +1 -1
  59. package/dest/GovernanceProposerAbi.js +16 -0
  60. package/dest/GovernanceProposerAbi.js.map +1 -1
  61. package/dest/HonkVerifierAbi.d.ts +12 -0
  62. package/dest/HonkVerifierAbi.d.ts.map +1 -1
  63. package/dest/HonkVerifierAbi.js +16 -0
  64. package/dest/HonkVerifierAbi.js.map +1 -1
  65. package/dest/IERC20Abi.d.ts +12 -0
  66. package/dest/IERC20Abi.d.ts.map +1 -1
  67. package/dest/IERC20Abi.js +16 -0
  68. package/dest/IERC20Abi.js.map +1 -1
  69. package/dest/ISequencerRewardCalculatorAbi.d.ts +12 -0
  70. package/dest/ISequencerRewardCalculatorAbi.d.ts.map +1 -1
  71. package/dest/ISequencerRewardCalculatorAbi.js +16 -0
  72. package/dest/ISequencerRewardCalculatorAbi.js.map +1 -1
  73. package/dest/IVerifierAbi.d.ts +12 -0
  74. package/dest/IVerifierAbi.d.ts.map +1 -1
  75. package/dest/IVerifierAbi.js +16 -0
  76. package/dest/IVerifierAbi.js.map +1 -1
  77. package/dest/InboxAbi.d.ts +12 -0
  78. package/dest/InboxAbi.d.ts.map +1 -1
  79. package/dest/InboxAbi.js +16 -0
  80. package/dest/InboxAbi.js.map +1 -1
  81. package/dest/InboxBytecode.d.ts +1 -1
  82. package/dest/InboxBytecode.js +1 -1
  83. package/dest/MockVerifierAbi.d.ts +12 -0
  84. package/dest/MockVerifierAbi.d.ts.map +1 -1
  85. package/dest/MockVerifierAbi.js +16 -0
  86. package/dest/MockVerifierAbi.js.map +1 -1
  87. package/dest/MockZKPassportVerifierAbi.d.ts +12 -0
  88. package/dest/MockZKPassportVerifierAbi.d.ts.map +1 -1
  89. package/dest/MockZKPassportVerifierAbi.js +16 -0
  90. package/dest/MockZKPassportVerifierAbi.js.map +1 -1
  91. package/dest/MultiAdderAbi.d.ts +12 -0
  92. package/dest/MultiAdderAbi.d.ts.map +1 -1
  93. package/dest/MultiAdderAbi.js +16 -0
  94. package/dest/MultiAdderAbi.js.map +1 -1
  95. package/dest/MultiAdderBytecode.d.ts +1 -1
  96. package/dest/MultiAdderBytecode.js +1 -1
  97. package/dest/NewGovernanceProposerPayloadAbi.d.ts +12 -0
  98. package/dest/NewGovernanceProposerPayloadAbi.d.ts.map +1 -1
  99. package/dest/NewGovernanceProposerPayloadAbi.js +16 -0
  100. package/dest/NewGovernanceProposerPayloadAbi.js.map +1 -1
  101. package/dest/OutboxAbi.d.ts +12 -0
  102. package/dest/OutboxAbi.d.ts.map +1 -1
  103. package/dest/OutboxAbi.js +16 -0
  104. package/dest/OutboxAbi.js.map +1 -1
  105. package/dest/OutboxBytecode.d.ts +1 -1
  106. package/dest/OutboxBytecode.js +1 -1
  107. package/dest/RegisterNewRollupVersionPayloadAbi.d.ts +40 -0
  108. package/dest/RegisterNewRollupVersionPayloadAbi.d.ts.map +1 -1
  109. package/dest/RegisterNewRollupVersionPayloadAbi.js +52 -0
  110. package/dest/RegisterNewRollupVersionPayloadAbi.js.map +1 -1
  111. package/dest/RegisterNewRollupVersionPayloadBytecode.d.ts +1 -1
  112. package/dest/RegisterNewRollupVersionPayloadBytecode.d.ts.map +1 -1
  113. package/dest/RegisterNewRollupVersionPayloadBytecode.js +1 -1
  114. package/dest/RegisterNewRollupVersionPayloadBytecode.js.map +1 -1
  115. package/dest/RegistryAbi.d.ts +12 -0
  116. package/dest/RegistryAbi.d.ts.map +1 -1
  117. package/dest/RegistryAbi.js +16 -0
  118. package/dest/RegistryAbi.js.map +1 -1
  119. package/dest/RewardDistributorAbi.d.ts +12 -0
  120. package/dest/RewardDistributorAbi.d.ts.map +1 -1
  121. package/dest/RewardDistributorAbi.js +16 -0
  122. package/dest/RewardDistributorAbi.js.map +1 -1
  123. package/dest/RewardExtLibAbi.d.ts +12 -0
  124. package/dest/RewardExtLibAbi.d.ts.map +1 -1
  125. package/dest/RewardExtLibAbi.js +16 -0
  126. package/dest/RewardExtLibAbi.js.map +1 -1
  127. package/dest/RewardExtLibBytecode.d.ts +1 -1
  128. package/dest/RewardExtLibBytecode.js +1 -1
  129. package/dest/RollupAbi.d.ts +12 -0
  130. package/dest/RollupAbi.d.ts.map +1 -1
  131. package/dest/RollupAbi.js +16 -0
  132. package/dest/RollupAbi.js.map +1 -1
  133. package/dest/RollupBytecode.d.ts +1 -1
  134. package/dest/RollupBytecode.js +1 -1
  135. package/dest/RollupOperationsExtLibAbi.d.ts +12 -0
  136. package/dest/RollupOperationsExtLibAbi.d.ts.map +1 -1
  137. package/dest/RollupOperationsExtLibAbi.js +16 -0
  138. package/dest/RollupOperationsExtLibAbi.js.map +1 -1
  139. package/dest/RollupOperationsExtLibBytecode.d.ts +1 -1
  140. package/dest/RollupOperationsExtLibBytecode.js +1 -1
  141. package/dest/SlasherAbi.d.ts +12 -0
  142. package/dest/SlasherAbi.d.ts.map +1 -1
  143. package/dest/SlasherAbi.js +16 -0
  144. package/dest/SlasherAbi.js.map +1 -1
  145. package/dest/SlasherDeploymentExtLibAbi.d.ts +12 -0
  146. package/dest/SlasherDeploymentExtLibAbi.d.ts.map +1 -1
  147. package/dest/SlasherDeploymentExtLibAbi.js +16 -0
  148. package/dest/SlasherDeploymentExtLibAbi.js.map +1 -1
  149. package/dest/SlasherDeploymentExtLibBytecode.d.ts +1 -1
  150. package/dest/SlasherDeploymentExtLibBytecode.js +1 -1
  151. package/dest/SlashingProposerAbi.d.ts +12 -0
  152. package/dest/SlashingProposerAbi.d.ts.map +1 -1
  153. package/dest/SlashingProposerAbi.js +16 -0
  154. package/dest/SlashingProposerAbi.js.map +1 -1
  155. package/dest/SlashingProposerBytecode.d.ts +1 -1
  156. package/dest/SlashingProposerBytecode.js +1 -1
  157. package/dest/StakingAssetHandlerAbi.d.ts +12 -0
  158. package/dest/StakingAssetHandlerAbi.d.ts.map +1 -1
  159. package/dest/StakingAssetHandlerAbi.js +16 -0
  160. package/dest/StakingAssetHandlerAbi.js.map +1 -1
  161. package/dest/TestERC20Abi.d.ts +12 -0
  162. package/dest/TestERC20Abi.d.ts.map +1 -1
  163. package/dest/TestERC20Abi.js +16 -0
  164. package/dest/TestERC20Abi.js.map +1 -1
  165. package/dest/TokenPortalAbi.d.ts +12 -0
  166. package/dest/TokenPortalAbi.d.ts.map +1 -1
  167. package/dest/TokenPortalAbi.js +16 -0
  168. package/dest/TokenPortalAbi.js.map +1 -1
  169. package/dest/TokenPortalBytecode.d.ts +1 -1
  170. package/dest/TokenPortalBytecode.js +1 -1
  171. package/dest/UniswapPortalAbi.d.ts +12 -0
  172. package/dest/UniswapPortalAbi.d.ts.map +1 -1
  173. package/dest/UniswapPortalAbi.js +16 -0
  174. package/dest/UniswapPortalAbi.js.map +1 -1
  175. package/dest/UniswapPortalBytecode.d.ts +1 -1
  176. package/dest/UniswapPortalBytecode.js +1 -1
  177. package/dest/ValidatorOperationsExtLibAbi.d.ts +12 -0
  178. package/dest/ValidatorOperationsExtLibAbi.d.ts.map +1 -1
  179. package/dest/ValidatorOperationsExtLibAbi.js +16 -0
  180. package/dest/ValidatorOperationsExtLibAbi.js.map +1 -1
  181. package/dest/ValidatorOperationsExtLibBytecode.d.ts +1 -1
  182. package/dest/ValidatorOperationsExtLibBytecode.d.ts.map +1 -1
  183. package/dest/ValidatorOperationsExtLibBytecode.js +1 -1
  184. package/dest/ValidatorOperationsExtLibBytecode.js.map +1 -1
  185. package/dest/ValidatorSelectionLibAbi.d.ts +12 -0
  186. package/dest/ValidatorSelectionLibAbi.d.ts.map +1 -1
  187. package/dest/ValidatorSelectionLibAbi.js +16 -0
  188. package/dest/ValidatorSelectionLibAbi.js.map +1 -1
  189. package/dest/ValidatorSelectionLibBytecode.d.ts +1 -1
  190. package/dest/ValidatorSelectionLibBytecode.js +1 -1
  191. package/dest/checksum.d.ts +1 -1
  192. package/dest/checksum.js +1 -1
  193. package/l1-contracts/cache/solidity-files-cache.json +1 -1
  194. package/l1-contracts/foundry.toml +1 -0
  195. package/l1-contracts/out/AddressSnapshotLib.sol/AddressSnapshotLib.json +1 -1
  196. package/l1-contracts/out/AttestationLib.sol/AttestationLib.json +1 -1
  197. package/l1-contracts/out/AttesterExitExtLib.sol/AttesterExitExtLib.json +1 -1
  198. package/l1-contracts/out/BN254Lib.sol/BN254Lib.json +1 -1
  199. package/l1-contracts/out/Ballot.sol/BallotLib.json +1 -1
  200. package/l1-contracts/out/BlobLib.sol/BlobLib.json +1 -1
  201. package/l1-contracts/out/Bn254LibWrapper.sol/Bn254LibWrapper.json +1 -1
  202. package/l1-contracts/out/CheckpointLog.sol/CompressedTempCheckpointLogLib.json +1 -1
  203. package/l1-contracts/out/CheckpointedUintLib.sol/CheckpointedUintLib.json +1 -1
  204. package/l1-contracts/out/CoinIssuer.sol/CoinIssuer.json +1 -1
  205. package/l1-contracts/out/CompressedTimeMath.sol/CompressedTimeMath.json +1 -1
  206. package/l1-contracts/out/Configuration.sol/CompressedConfigurationLib.json +1 -1
  207. package/l1-contracts/out/ConfigurationLib.sol/ConfigurationLib.json +1 -1
  208. package/l1-contracts/out/ConstantsGen.sol/Constants.json +1 -1
  209. package/l1-contracts/out/CoordinationSignatureLib.sol/CoordinationSignatureLib.json +1 -1
  210. package/l1-contracts/out/DataStructures.sol/DataStructures.json +1 -1
  211. package/l1-contracts/out/DateGatedRelayer.sol/DateGatedRelayer.json +1 -1
  212. package/l1-contracts/out/DeployAztecL1Contracts.s.sol/DeployAztecL1Contracts.json +1 -1
  213. package/l1-contracts/out/DeployRollupForUpgrade.s.sol/DeployRollupForUpgrade.json +1 -1
  214. package/l1-contracts/out/DeployRollupLib.sol/DeployRollupLib.json +1 -1
  215. package/l1-contracts/out/DeploymentConfiguration.sol/DeploymentConfiguration.json +1 -1
  216. package/l1-contracts/out/DeploymentConfiguration.sol/IDeploymentConfiguration.json +1 -1
  217. package/l1-contracts/out/DepositDelegationLib.sol/DepositDelegationLib.json +1 -1
  218. package/l1-contracts/out/EmpireBase.sol/EmpireBase.json +1 -1
  219. package/l1-contracts/out/EpochProofExtLib.sol/EpochProofExtLib.json +1 -1
  220. package/l1-contracts/out/EpochProofLib.sol/EpochProofLib.json +1 -1
  221. package/l1-contracts/out/Errors.sol/Errors.json +1 -1
  222. package/l1-contracts/out/EscapeHatch.sol/EscapeHatch.json +1 -1
  223. package/l1-contracts/out/FeeAssetHandler.sol/FeeAssetHandler.json +1 -1
  224. package/l1-contracts/out/FeeAssetHandler.sol/IFeeAssetHandler.json +1 -1
  225. package/l1-contracts/out/FeeConfig.sol/FeeConfigLib.json +1 -1
  226. package/l1-contracts/out/FeeConfig.sol/PriceLib.json +1 -1
  227. package/l1-contracts/out/FeeJuicePortal.sol/FeeJuicePortal.json +1 -1
  228. package/l1-contracts/out/FeeLib.sol/FeeLib.json +1 -1
  229. package/l1-contracts/out/FeeStructs.sol/FeeHeaderLib.json +1 -1
  230. package/l1-contracts/out/FeeStructs.sol/FeeStructsLib.json +1 -1
  231. package/l1-contracts/out/FieldLib.sol/FieldLib.json +1 -1
  232. package/l1-contracts/out/FlushEntryQueue.s.sol/FlushEntryQueue.json +1 -0
  233. package/l1-contracts/out/FlushRewarder.sol/FlushRewarder.json +1 -1
  234. package/l1-contracts/out/GSE.sol/GSE.json +1 -1
  235. package/l1-contracts/out/GSE.sol/GSECore.json +1 -1
  236. package/l1-contracts/out/GSE.sol/IGSE.json +1 -1
  237. package/l1-contracts/out/GSE.sol/IGSECore.json +1 -1
  238. package/l1-contracts/out/GSEPayload.sol/GSEPayload.json +1 -1
  239. package/l1-contracts/out/Governance.sol/Governance.json +1 -1
  240. package/l1-contracts/out/GovernanceProposer.sol/GovernanceProposer.json +1 -1
  241. package/l1-contracts/out/Hash.sol/Hash.json +1 -1
  242. package/l1-contracts/out/HonkVerifier.sol/HonkVerifier.json +1 -1
  243. package/l1-contracts/out/IBn254LibWrapper.sol/IBn254LibWrapper.json +1 -1
  244. package/l1-contracts/out/ICoinIssuer.sol/ICoinIssuer.json +1 -1
  245. package/l1-contracts/out/IDateGatedRelayer.sol/IDateGatedRelayer.json +1 -1
  246. package/l1-contracts/out/IEmpire.sol/IEmperor.json +1 -1
  247. package/l1-contracts/out/IEmpire.sol/IEmpire.json +1 -1
  248. package/l1-contracts/out/IEscapeHatch.sol/IEscapeHatch.json +1 -1
  249. package/l1-contracts/out/IEscapeHatch.sol/IEscapeHatchCore.json +1 -1
  250. package/l1-contracts/out/IFeeJuicePortal.sol/IFeeJuicePortal.json +1 -1
  251. package/l1-contracts/out/IFlushRewarder.sol/IFlushRewarder.json +1 -1
  252. package/l1-contracts/out/IGovernance.sol/IGovernance.json +1 -1
  253. package/l1-contracts/out/IGovernanceProposer.sol/IGovernanceProposer.json +1 -1
  254. package/l1-contracts/out/IInbox.sol/IInbox.json +1 -1
  255. package/l1-contracts/out/IInstance.sol/IInstance.json +1 -1
  256. package/l1-contracts/out/IMintableERC20.sol/IMintableERC20.json +1 -1
  257. package/l1-contracts/out/IOutbox.sol/IOutbox.json +1 -1
  258. package/l1-contracts/out/IPayload.sol/IPayload.json +1 -1
  259. package/l1-contracts/out/IProposerPayload.sol/IProposerPayload.json +1 -1
  260. package/l1-contracts/out/IRegistry.sol/IHaveVersion.json +1 -1
  261. package/l1-contracts/out/IRegistry.sol/IRegistry.json +1 -1
  262. package/l1-contracts/out/IRewardDistributor.sol/IRewardDistributor.json +1 -1
  263. package/l1-contracts/out/IRollup.sol/IRollup.json +1 -1
  264. package/l1-contracts/out/IRollup.sol/IRollupCore.json +1 -1
  265. package/l1-contracts/out/IRootRegistry.sol/IRootRegistry.json +1 -1
  266. package/l1-contracts/out/ISequencerRewardCalculator.sol/ISequencerRewardCalculator.json +1 -1
  267. package/l1-contracts/out/ISlasher.sol/ISlasher.json +1 -1
  268. package/l1-contracts/out/IStaking.sol/IStaking.json +1 -1
  269. package/l1-contracts/out/IStaking.sol/IStakingCore.json +1 -1
  270. package/l1-contracts/out/IValidatorSelection.sol/IValidatorSelection.json +1 -1
  271. package/l1-contracts/out/IValidatorSelection.sol/IValidatorSelectionCore.json +1 -1
  272. package/l1-contracts/out/IVerifier.sol/IVerifier.json +1 -1
  273. package/l1-contracts/out/Inbox.sol/Inbox.json +1 -1
  274. package/l1-contracts/out/InputsExtractor.sol/InputsExtractor.json +1 -1
  275. package/l1-contracts/out/InvalidateLib.sol/InvalidateLib.json +1 -1
  276. package/l1-contracts/out/MerkleLib.sol/MerkleLib.json +1 -1
  277. package/l1-contracts/out/MockERC20.sol/MockERC20.json +1 -1
  278. package/l1-contracts/out/MockERC721.sol/MockERC721.json +1 -1
  279. package/l1-contracts/out/MockFeeJuicePortal.sol/MockFeeJuicePortal.json +1 -1
  280. package/l1-contracts/out/MockVerifier.sol/MockVerifier.json +1 -1
  281. package/l1-contracts/out/MockZKPassportVerifier.sol/IZKPassportVerifier.json +1 -1
  282. package/l1-contracts/out/MockZKPassportVerifier.sol/MockZKPassportVerifier.json +1 -1
  283. package/l1-contracts/out/MultiAdder.sol/IMultiAdder.json +1 -1
  284. package/l1-contracts/out/MultiAdder.sol/MultiAdder.json +1 -1
  285. package/l1-contracts/out/Outbox.sol/Outbox.json +1 -1
  286. package/l1-contracts/out/OuterCount8.sol/HonkVerifier.json +1 -1
  287. package/l1-contracts/out/Proposal.sol/CompressedProposalLib.json +1 -1
  288. package/l1-contracts/out/ProposalLib.sol/ProposalLib.json +1 -1
  289. package/l1-contracts/out/ProposeLib.sol/ProposeLib.json +1 -1
  290. package/l1-contracts/out/ProposedHeaderLib.sol/ProposedHeaderLib.json +1 -1
  291. package/l1-contracts/out/RegisterNewRollupVersionPayload.sol/RegisterNewRollupVersionPayload.json +1 -1
  292. package/l1-contracts/out/Registry.sol/Registry.json +1 -1
  293. package/l1-contracts/out/RewardBooster.sol/IBooster.json +1 -1
  294. package/l1-contracts/out/RewardBooster.sol/IBoosterCore.json +1 -1
  295. package/l1-contracts/out/RewardBooster.sol/RewardBooster.json +1 -1
  296. package/l1-contracts/out/RewardDistributor.sol/RewardDistributor.json +1 -1
  297. package/l1-contracts/out/RewardExtLib.sol/RewardExtLib.json +1 -1
  298. package/l1-contracts/out/RewardLib.sol/BpsLib.json +1 -1
  299. package/l1-contracts/out/RewardLib.sol/RewardLib.json +1 -1
  300. package/l1-contracts/out/Rollup.sol/Rollup.json +1 -1
  301. package/l1-contracts/out/RollupConfiguration.sol/IRollupConfiguration.json +1 -1
  302. package/l1-contracts/out/RollupConfiguration.sol/RollupConfiguration.json +1 -1
  303. package/l1-contracts/out/RollupCore.sol/RollupCore.json +1 -1
  304. package/l1-contracts/out/RollupOperationsExtLib.sol/RollupOperationsExtLib.json +1 -1
  305. package/l1-contracts/out/STFLib.sol/STFLib.json +1 -1
  306. package/l1-contracts/out/SampleLib.sol/SampleLib.json +1 -1
  307. package/l1-contracts/out/SequencerRewardCalculatorLib.sol/SequencerRewardCalculatorLib.json +1 -1
  308. package/l1-contracts/out/SignatureLib.sol/SignatureLib.json +1 -1
  309. package/l1-contracts/out/SlashPayload.sol/SlashPayload.json +1 -1
  310. package/l1-contracts/out/SlashPayloadCloneable.sol/SlashPayloadCloneable.json +1 -1
  311. package/l1-contracts/out/SlashPayloadLib.sol/SlashPayloadLib.json +1 -1
  312. package/l1-contracts/out/SlashRoundLib.sol/CompressedSlashRoundMath.json +1 -1
  313. package/l1-contracts/out/Slasher.sol/Slasher.json +1 -1
  314. package/l1-contracts/out/SlasherDeploymentExtLib.sol/SlasherDeploymentExtLib.json +1 -1
  315. package/l1-contracts/out/SlashingProposer.sol/SlashingProposer.json +1 -1
  316. package/l1-contracts/out/StakingAssetHandler.sol/IStakingAssetHandler.json +1 -1
  317. package/l1-contracts/out/StakingAssetHandler.sol/StakingAssetHandler.json +1 -1
  318. package/l1-contracts/out/StakingLib.sol/StakingLib.json +1 -1
  319. package/l1-contracts/out/StakingQueue.sol/StakingQueueLib.json +1 -1
  320. package/l1-contracts/out/StakingQueueConfig.sol/StakingQueueConfigLib.json +1 -1
  321. package/l1-contracts/out/StdError.sol/stdError.json +1 -1
  322. package/l1-contracts/out/TestERC20.sol/TestERC20.json +1 -1
  323. package/l1-contracts/out/TestPayloads.sol/CallAssetPayload.json +1 -1
  324. package/l1-contracts/out/TestPayloads.sol/CallRevertingPayload.json +1 -1
  325. package/l1-contracts/out/TestPayloads.sol/EmptyPayload.json +1 -1
  326. package/l1-contracts/out/TestPayloads.sol/FakeRollup.json +1 -1
  327. package/l1-contracts/out/TestPayloads.sol/RevertingCall.json +1 -1
  328. package/l1-contracts/out/TestPayloads.sol/UpgradePayload.json +1 -1
  329. package/l1-contracts/out/TimeLib.sol/TimeLib.json +1 -1
  330. package/l1-contracts/out/Tips.sol/ChainTipsLib.json +1 -1
  331. package/l1-contracts/out/ValidatorOperationsExtLib.sol/ValidatorOperationsExtLib.json +1 -1
  332. package/l1-contracts/out/ValidatorSelectionLib.sol/ValidatorSelectionLib.json +1 -1
  333. package/l1-contracts/out/ZKPassportHelper.sol/ZKPassportHelper.json +1 -1
  334. package/l1-contracts/out/ZKPassportRootVerifier.sol/ZKPassportRootVerifier.json +1 -1
  335. package/l1-contracts/out/ZKPassportSubVerifier.sol/ZKPassportSubVerifier.json +1 -1
  336. package/l1-contracts/out/build-info/018c24616ac5aeef.json +1 -0
  337. package/l1-contracts/out/generated/HonkVerifier.sol/HonkVerifier.json +1 -1
  338. package/l1-contracts/out/libraries/Errors.sol/Errors.json +1 -1
  339. package/l1-contracts/out/rollup/BlobLib.sol/BlobLib.json +1 -1
  340. package/l1-contracts/out/src/ZKPassportHelper.sol/ZKPassportHelper.json +1 -1
  341. package/l1-contracts/out/src/ZKPassportRootVerifier.sol/ZKPassportRootVerifier.json +1 -1
  342. package/l1-contracts/out/src/ZKPassportSubVerifier.sol/ZKPassportSubVerifier.json +1 -1
  343. package/l1-contracts/script/deploy/DeployRollupLib.sol +5 -12
  344. package/l1-contracts/script/deploy/FlushEntryQueue.s.sol +32 -0
  345. package/l1-contracts/scripts/forge_broadcast.js +104 -34
  346. package/l1-contracts/scripts/network-defaults.json +1 -1
  347. package/l1-contracts/src/core/EscapeHatch.sol +56 -12
  348. package/l1-contracts/src/core/interfaces/IEscapeHatch.sol +1 -0
  349. package/l1-contracts/src/core/interfaces/IStaking.sol +11 -0
  350. package/l1-contracts/src/core/libraries/ConstantsGen.sol +1 -1
  351. package/l1-contracts/src/core/libraries/Errors.sol +1 -0
  352. package/l1-contracts/src/core/libraries/rollup/FeeLib.sol +7 -12
  353. package/l1-contracts/src/core/libraries/rollup/StakingLib.sol +117 -12
  354. package/l1-contracts/src/core/libraries/rollup/ValidatorSelectionLib.sol +8 -6
  355. package/l1-contracts/src/periphery/RegisterNewRollupVersionPayload.sol +30 -10
  356. package/package.json +1 -1
  357. package/l1-contracts/out/build-info/4cb7b5442b848dcc.json +0 -1
@@ -1 +1 @@
1
- {"abi":[{"type":"constructor","inputs":[{"name":"_feeAsset","type":"address","internalType":"contract IERC20"},{"name":"_stakingAsset","type":"address","internalType":"contract IERC20"},{"name":"_gse","type":"address","internalType":"contract GSE"},{"name":"_epochProofVerifier","type":"address","internalType":"contract IVerifier"},{"name":"_governance","type":"address","internalType":"address"},{"name":"_genesisState","type":"tuple","internalType":"struct GenesisState","components":[{"name":"vkTreeRoot","type":"bytes32","internalType":"bytes32"},{"name":"protocolContractsHash","type":"bytes32","internalType":"bytes32"},{"name":"genesisArchiveRoot","type":"bytes32","internalType":"bytes32"}]},{"name":"_config","type":"tuple","internalType":"struct RollupConfigInput","components":[{"name":"aztecSlotDuration","type":"uint256","internalType":"uint256"},{"name":"aztecEpochDuration","type":"uint256","internalType":"uint256"},{"name":"targetCommitteeSize","type":"uint256","internalType":"uint256"},{"name":"lagInEpochsForValidatorSet","type":"uint256","internalType":"uint256"},{"name":"lagInEpochsForRandao","type":"uint256","internalType":"uint256"},{"name":"aztecProofSubmissionEpochs","type":"uint256","internalType":"uint256"},{"name":"slashingQuorum","type":"uint256","internalType":"uint256"},{"name":"slashingRoundSize","type":"uint256","internalType":"uint256"},{"name":"slashingLifetimeInRounds","type":"uint256","internalType":"uint256"},{"name":"slashingExecutionDelayInRounds","type":"uint256","internalType":"uint256"},{"name":"slashAmounts","type":"uint256[3]","internalType":"uint256[3]"},{"name":"slashingOffsetInRounds","type":"uint256","internalType":"uint256"},{"name":"slasherEnabled","type":"bool","internalType":"bool"},{"name":"slashingVetoer","type":"address","internalType":"address"},{"name":"slashingDisableDuration","type":"uint256","internalType":"uint256"},{"name":"manaTarget","type":"uint256","internalType":"uint256"},{"name":"exitDelaySeconds","type":"uint256","internalType":"uint256"},{"name":"version","type":"uint32","internalType":"uint32"},{"name":"provingCostPerMana","type":"uint256","internalType":"EthValue"},{"name":"initialEthPerFeeAsset","type":"uint256","internalType":"EthPerFeeAssetE12"},{"name":"rewardConfig","type":"tuple","internalType":"struct RewardConfig","components":[{"name":"rewardDistributor","type":"address","internalType":"contract IRewardDistributor"},{"name":"sequencerBps","type":"uint32","internalType":"Bps"},{"name":"booster","type":"address","internalType":"contract IBoosterCore"},{"name":"checkpointReward","type":"uint96","internalType":"uint96"}]},{"name":"rewardBoostConfig","type":"tuple","internalType":"struct RewardBoostConfig","components":[{"name":"increment","type":"uint32","internalType":"uint32"},{"name":"maxScore","type":"uint32","internalType":"uint32"},{"name":"a","type":"uint32","internalType":"uint32"},{"name":"minimum","type":"uint32","internalType":"uint32"},{"name":"k","type":"uint32","internalType":"uint32"}]},{"name":"stakingQueueConfig","type":"tuple","internalType":"struct StakingQueueConfig","components":[{"name":"bootstrapValidatorSetSize","type":"uint256","internalType":"uint256"},{"name":"bootstrapFlushSize","type":"uint256","internalType":"uint256"},{"name":"normalFlushSizeMin","type":"uint256","internalType":"uint256"},{"name":"normalFlushSizeQuotient","type":"uint256","internalType":"uint256"},{"name":"maxQueueFlushSize","type":"uint256","internalType":"uint256"}]},{"name":"localEjectionThreshold","type":"uint256","internalType":"uint256"},{"name":"ethereumSlotDuration","type":"uint256","internalType":"uint256"},{"name":"sequencerRewardCalculator","type":"address","internalType":"address"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"L1_BLOCK_AT_GENESIS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"cancelSetSlasher","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"checkBlob","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"checkpointRandao","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"claimProverRewards","inputs":[{"name":"_coinbase","type":"address","internalType":"address"},{"name":"_epochs","type":"uint256[]","internalType":"Epoch[]"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"claimSequencerRewards","inputs":[{"name":"_coinbase","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"deposit","inputs":[{"name":"_attester","type":"address","internalType":"address"},{"name":"_withdrawer","type":"address","internalType":"address"},{"name":"_publicKeyInG1","type":"tuple","internalType":"struct G1Point","components":[{"name":"x","type":"uint256","internalType":"uint256"},{"name":"y","type":"uint256","internalType":"uint256"}]},{"name":"_publicKeyInG2","type":"tuple","internalType":"struct G2Point","components":[{"name":"x0","type":"uint256","internalType":"uint256"},{"name":"x1","type":"uint256","internalType":"uint256"},{"name":"y0","type":"uint256","internalType":"uint256"},{"name":"y1","type":"uint256","internalType":"uint256"}]},{"name":"_proofOfPossession","type":"tuple","internalType":"struct G1Point","components":[{"name":"x","type":"uint256","internalType":"uint256"},{"name":"y","type":"uint256","internalType":"uint256"}]},{"name":"_moveWithLatestRollup","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"eip712Domain","inputs":[],"outputs":[{"name":"fields","type":"bytes1","internalType":"bytes1"},{"name":"name","type":"string","internalType":"string"},{"name":"version","type":"string","internalType":"string"},{"name":"chainId","type":"uint256","internalType":"uint256"},{"name":"verifyingContract","type":"address","internalType":"address"},{"name":"salt","type":"bytes32","internalType":"bytes32"},{"name":"extensions","type":"uint256[]","internalType":"uint256[]"}],"stateMutability":"view"},{"type":"function","name":"finalizeSetSlasher","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"finalizeWithdraw","inputs":[{"name":"_attester","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"flushEntryQueue","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"flushEntryQueue","inputs":[{"name":"_toAdd","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getActiveAttesterCount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getEntryQueueFlushSize","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"initiateWithdraw","inputs":[{"name":"_attester","type":"address","internalType":"address"},{"name":"_recipient","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"initiateWithdrawByAttester","inputs":[{"name":"_attester","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initiateWithdrawByAttesterBatch","inputs":[{"name":"_authorizations","type":"tuple[]","internalType":"struct AttesterExitAuthorization[]","components":[{"name":"attester","type":"address","internalType":"address"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"signature","type":"tuple","internalType":"struct Signature","components":[{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}]}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initiateWithdrawByAttesterBatchUpToLimit","inputs":[{"name":"_authorizations","type":"tuple[]","internalType":"struct AttesterExitAuthorization[]","components":[{"name":"attester","type":"address","internalType":"address"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"signature","type":"tuple","internalType":"struct Signature","components":[{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}]}]}],"outputs":[{"name":"exitedCount","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"initiateWithdrawByAttesterWithSignature","inputs":[{"name":"_authorization","type":"tuple","internalType":"struct AttesterExitAuthorization","components":[{"name":"attester","type":"address","internalType":"address"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"signature","type":"tuple","internalType":"struct Signature","components":[{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}]}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"invalidateBadAttestation","inputs":[{"name":"_checkpointNumber","type":"uint256","internalType":"uint256"},{"name":"_attestations","type":"tuple","internalType":"struct CommitteeAttestations","components":[{"name":"signatureIndices","type":"bytes","internalType":"bytes"},{"name":"signaturesOrAddresses","type":"bytes","internalType":"bytes"}]},{"name":"_committee","type":"address[]","internalType":"address[]"},{"name":"_invalidIndex","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"invalidateInsufficientAttestations","inputs":[{"name":"_checkpointNumber","type":"uint256","internalType":"uint256"},{"name":"_attestations","type":"tuple","internalType":"struct CommitteeAttestations","components":[{"name":"signatureIndices","type":"bytes","internalType":"bytes"},{"name":"signaturesOrAddresses","type":"bytes","internalType":"bytes"}]},{"name":"_committee","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"propose","inputs":[{"name":"_args","type":"tuple","internalType":"struct ProposeArgs","components":[{"name":"archive","type":"bytes32","internalType":"bytes32"},{"name":"oracleInput","type":"tuple","internalType":"struct OracleInput","components":[{"name":"feeAssetPriceModifier","type":"int256","internalType":"int256"}]},{"name":"header","type":"tuple","internalType":"struct ProposedHeader","components":[{"name":"lastArchiveRoot","type":"bytes32","internalType":"bytes32"},{"name":"blockHeadersHash","type":"bytes32","internalType":"bytes32"},{"name":"blobsHash","type":"bytes32","internalType":"bytes32"},{"name":"inboxRollingHash","type":"bytes32","internalType":"bytes32"},{"name":"outHash","type":"bytes32","internalType":"bytes32"},{"name":"slotNumber","type":"uint256","internalType":"Slot"},{"name":"timestamp","type":"uint256","internalType":"Timestamp"},{"name":"coinbase","type":"address","internalType":"address"},{"name":"feeRecipient","type":"bytes32","internalType":"bytes32"},{"name":"gasFees","type":"tuple","internalType":"struct GasFees","components":[{"name":"feePerDaGas","type":"uint128","internalType":"uint128"},{"name":"feePerL2Gas","type":"uint128","internalType":"uint128"}]},{"name":"totalManaUsed","type":"uint256","internalType":"uint256"},{"name":"accumulatedFees","type":"uint256","internalType":"uint256"}]},{"name":"bucketHint","type":"uint256","internalType":"uint256"}]},{"name":"_attestations","type":"tuple","internalType":"struct CommitteeAttestations","components":[{"name":"signatureIndices","type":"bytes","internalType":"bytes"},{"name":"signaturesOrAddresses","type":"bytes","internalType":"bytes"}]},{"name":"_signers","type":"address[]","internalType":"address[]"},{"name":"_attestationsAndSignersSignature","type":"tuple","internalType":"struct Signature","components":[{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}]},{"name":"_blobInput","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"prune","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"queueSetSlasher","inputs":[{"name":"_slasher","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setEscapeHatch","inputs":[{"name":"_escapeHatch","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFeeMargin","inputs":[{"name":"_protocolFeeMarginBps","type":"uint16","internalType":"uint16"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFeeRecipient","inputs":[{"name":"_recipient","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProvingCostPerMana","inputs":[{"name":"_provingCostPerMana","type":"uint256","internalType":"EthValue"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRewardConfig","inputs":[{"name":"_config","type":"tuple","internalType":"struct MutableRewardConfig","components":[{"name":"sequencerBps","type":"uint32","internalType":"Bps"},{"name":"checkpointReward","type":"uint96","internalType":"uint96"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSequencerRewardCalculator","inputs":[{"name":"_calculator","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setupEpoch","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"slash","inputs":[{"name":"_attester","type":"address","internalType":"address"},{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"submitEpochRootProof","inputs":[{"name":"_args","type":"tuple","internalType":"struct SubmitEpochRootProofArgs","components":[{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"},{"name":"args","type":"tuple","internalType":"struct PublicInputArgs","components":[{"name":"previousArchive","type":"bytes32","internalType":"bytes32"},{"name":"endArchive","type":"bytes32","internalType":"bytes32"},{"name":"outHash","type":"bytes32","internalType":"bytes32"},{"name":"previousInboxRollingHash","type":"bytes32","internalType":"bytes32"},{"name":"endInboxRollingHash","type":"bytes32","internalType":"bytes32"},{"name":"proverId","type":"address","internalType":"address"}]},{"name":"provenCheckpointFees","type":"tuple[]","internalType":"struct ProvenCheckpointFees[]","components":[{"name":"coinbase","type":"address","internalType":"address"},{"name":"accumulatedFees","type":"uint256","internalType":"uint256"}]},{"name":"headers","type":"tuple[]","internalType":"struct ProposedHeader[]","components":[{"name":"lastArchiveRoot","type":"bytes32","internalType":"bytes32"},{"name":"blockHeadersHash","type":"bytes32","internalType":"bytes32"},{"name":"blobsHash","type":"bytes32","internalType":"bytes32"},{"name":"inboxRollingHash","type":"bytes32","internalType":"bytes32"},{"name":"outHash","type":"bytes32","internalType":"bytes32"},{"name":"slotNumber","type":"uint256","internalType":"Slot"},{"name":"timestamp","type":"uint256","internalType":"Timestamp"},{"name":"coinbase","type":"address","internalType":"address"},{"name":"feeRecipient","type":"bytes32","internalType":"bytes32"},{"name":"gasFees","type":"tuple","internalType":"struct GasFees","components":[{"name":"feePerDaGas","type":"uint128","internalType":"uint128"},{"name":"feePerL2Gas","type":"uint128","internalType":"uint128"}]},{"name":"totalManaUsed","type":"uint256","internalType":"uint256"},{"name":"accumulatedFees","type":"uint256","internalType":"uint256"}]},{"name":"attestations","type":"tuple","internalType":"struct CommitteeAttestations","components":[{"name":"signatureIndices","type":"bytes","internalType":"bytes"},{"name":"signaturesOrAddresses","type":"bytes","internalType":"bytes"}]},{"name":"blobInputs","type":"bytes","internalType":"bytes"},{"name":"proof","type":"bytes","internalType":"bytes"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateL1GasFeeOracle","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateManaTarget","inputs":[{"name":"_manaTarget","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateStakingQueueConfig","inputs":[{"name":"_config","type":"tuple","internalType":"struct StakingQueueConfig","components":[{"name":"bootstrapValidatorSetSize","type":"uint256","internalType":"uint256"},{"name":"bootstrapFlushSize","type":"uint256","internalType":"uint256"},{"name":"normalFlushSizeMin","type":"uint256","internalType":"uint256"},{"name":"normalFlushSizeQuotient","type":"uint256","internalType":"uint256"},{"name":"maxQueueFlushSize","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"vote","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"CheckpointInvalidated","inputs":[{"name":"checkpointNumber","type":"uint256","indexed":true,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CheckpointProposed","inputs":[{"name":"checkpointNumber","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"archive","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"versionedBlobHashes","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"payloadDigest","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"attestationsHash","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"Deposit","inputs":[{"name":"attester","type":"address","indexed":true,"internalType":"address"},{"name":"withdrawer","type":"address","indexed":true,"internalType":"address"},{"name":"publicKeyInG1","type":"tuple","indexed":false,"internalType":"struct G1Point","components":[{"name":"x","type":"uint256","internalType":"uint256"},{"name":"y","type":"uint256","internalType":"uint256"}]},{"name":"publicKeyInG2","type":"tuple","indexed":false,"internalType":"struct G2Point","components":[{"name":"x0","type":"uint256","internalType":"uint256"},{"name":"x1","type":"uint256","internalType":"uint256"},{"name":"y0","type":"uint256","internalType":"uint256"},{"name":"y1","type":"uint256","internalType":"uint256"}]},{"name":"proofOfPossession","type":"tuple","indexed":false,"internalType":"struct G1Point","components":[{"name":"x","type":"uint256","internalType":"uint256"},{"name":"y","type":"uint256","internalType":"uint256"}]},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"EIP712DomainChanged","inputs":[],"anonymous":false},{"type":"event","name":"EscapeHatchSet","inputs":[{"name":"escapeHatch","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"FailedDeposit","inputs":[{"name":"attester","type":"address","indexed":true,"internalType":"address"},{"name":"withdrawer","type":"address","indexed":true,"internalType":"address"},{"name":"publicKeyInG1","type":"tuple","indexed":false,"internalType":"struct G1Point","components":[{"name":"x","type":"uint256","internalType":"uint256"},{"name":"y","type":"uint256","internalType":"uint256"}]},{"name":"publicKeyInG2","type":"tuple","indexed":false,"internalType":"struct G2Point","components":[{"name":"x0","type":"uint256","internalType":"uint256"},{"name":"x1","type":"uint256","internalType":"uint256"},{"name":"y0","type":"uint256","internalType":"uint256"},{"name":"y1","type":"uint256","internalType":"uint256"}]},{"name":"proofOfPossession","type":"tuple","indexed":false,"internalType":"struct G1Point","components":[{"name":"x","type":"uint256","internalType":"uint256"},{"name":"y","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"L2ProofVerified","inputs":[{"name":"checkpointNumber","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"proverId","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"LegacySlasherAuthorized","inputs":[{"name":"legacySlasher","type":"address","indexed":true,"internalType":"address"},{"name":"authorizedUntil","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ManaTargetUpdated","inputs":[{"name":"manaTarget","type":"uint256","indexed":true,"internalType":"uint256"}],"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":"PendingSlasherCancelled","inputs":[{"name":"slasher","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PendingSlasherQueued","inputs":[{"name":"slasher","type":"address","indexed":true,"internalType":"address"},{"name":"readyAt","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProtocolFeeMarginUpdated","inputs":[{"name":"oldBps","type":"uint16","indexed":false,"internalType":"uint16"},{"name":"newBps","type":"uint16","indexed":false,"internalType":"uint16"}],"anonymous":false},{"type":"event","name":"ProtocolFeeRecipientUpdated","inputs":[{"name":"oldRecipient","type":"address","indexed":false,"internalType":"address"},{"name":"newRecipient","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PrunedPending","inputs":[{"name":"provenCheckpointNumber","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pendingCheckpointNumber","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"RewardConfigUpdated","inputs":[{"name":"rewardConfig","type":"tuple","indexed":false,"internalType":"struct MutableRewardConfig","components":[{"name":"sequencerBps","type":"uint32","internalType":"Bps"},{"name":"checkpointReward","type":"uint96","internalType":"uint96"}]}],"anonymous":false},{"type":"event","name":"SequencerRewardCalculatorUpdated","inputs":[{"name":"oldCalculator","type":"address","indexed":false,"internalType":"address"},{"name":"newCalculator","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Slashed","inputs":[{"name":"attester","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SlasherUpdated","inputs":[{"name":"oldSlasher","type":"address","indexed":true,"internalType":"address"},{"name":"newSlasher","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StakingQueueConfigUpdated","inputs":[{"name":"config","type":"tuple","indexed":false,"internalType":"struct StakingQueueConfig","components":[{"name":"bootstrapValidatorSetSize","type":"uint256","internalType":"uint256"},{"name":"bootstrapFlushSize","type":"uint256","internalType":"uint256"},{"name":"normalFlushSizeMin","type":"uint256","internalType":"uint256"},{"name":"normalFlushSizeQuotient","type":"uint256","internalType":"uint256"},{"name":"maxQueueFlushSize","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"ValidatorQueued","inputs":[{"name":"attester","type":"address","indexed":true,"internalType":"address"},{"name":"withdrawer","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"WithdrawFinalized","inputs":[{"name":"attester","type":"address","indexed":true,"internalType":"address"},{"name":"recipient","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"WithdrawInitiated","inputs":[{"name":"attester","type":"address","indexed":true,"internalType":"address"},{"name":"recipient","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"WithdrawInitiatedByAttester","inputs":[{"name":"attester","type":"address","indexed":true,"internalType":"address"},{"name":"withdrawer","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"withdrawalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"error","name":"FeeLib__InvalidInitialEthPerFeeAsset","inputs":[{"name":"provided","type":"uint256","internalType":"uint256"},{"name":"minimum","type":"uint256","internalType":"uint256"},{"name":"maximum","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__InvalidManaLimit","inputs":[{"name":"maximum","type":"uint256","internalType":"uint256"},{"name":"provided","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__InvalidManaTarget","inputs":[{"name":"minimum","type":"uint256","internalType":"uint256"},{"name":"provided","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__ProvingCostAboveCeiling","inputs":[{"name":"provided","type":"uint256","internalType":"uint256"},{"name":"maximum","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__ProvingCostBelowFloor","inputs":[{"name":"provided","type":"uint256","internalType":"uint256"},{"name":"minimum","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidShortString","inputs":[]},{"type":"error","name":"OwnableInvalidOwner","inputs":[{"name":"owner","type":"address","internalType":"address"}]},{"type":"error","name":"OwnableUnauthorizedAccount","inputs":[{"name":"account","type":"address","internalType":"address"}]},{"type":"error","name":"Rollup__FieldElementOutOfRange","inputs":[{"name":"value","type":"bytes32","internalType":"bytes32"}]},{"type":"error","name":"Rollup__InvalidProofSubmissionEpochs","inputs":[{"name":"minimum","type":"uint256","internalType":"uint256"},{"name":"provided","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SafeCastOverflowedUintDowncast","inputs":[{"name":"bits","type":"uint8","internalType":"uint8"},{"name":"value","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Staking__BootstrapFlushSizeAboveMax","inputs":[{"name":"bootstrapFlushSize","type":"uint256","internalType":"uint256"},{"name":"maxQueueFlushSize","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Staking__ExitDelayAboveSlasherDelay","inputs":[{"name":"exitDelaySeconds","type":"uint256","internalType":"uint256"},{"name":"slasherExecutionDelay","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Staking__InvalidBootstrapFlushSize","inputs":[]},{"type":"error","name":"Staking__InvalidMaxQueueFlushSize","inputs":[]},{"type":"error","name":"Staking__InvalidNormalFlushSizeQuotient","inputs":[]},{"type":"error","name":"Staking__InvalidStakingQueueConfig","inputs":[]},{"type":"error","name":"StringTooLong","inputs":[{"name":"str","type":"string","internalType":"string"}]}],"bytecode":{"object":"0x6102806040525f6003556004805460ff19166001179055348015610021575f5ffd5b50604051616ecd380380616ecd8339810160408190526100409161182d565b604080518082018252600c81526b0417a74656320526f6c6c75760a41b602080830191909152825180840190935260018352603160f81b908301528491610087825f610464565b61012052610096816001610464565b61014052815160208084019190912060e052815190820120610100524660a05261012260e05161010051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b60805250503060c0526001600160a01b03811661015957604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b61016281610496565b506102c0810151610172906104e7565b610200810151624f1a00808211156101a6576040516301ce283360e41b815260048101929092526024820152604401610150565b505060a0810151600190806101d757604051637d58cc9960e01b815260048101929092526024820152604401610150565b50506101fc42825f015183602001518460a001518561030001516105bb60201b60201c565b5f61020782856106aa565b905061022c878784610200015184866102c00151876102e0015161074d60201b60201c565b6040808301516060840151608085015192516360047aed60e11b815260048101929092526024820152604481019190915273__$2f4de12ba25591d19e66da7de316af4ec1$__9063c008f5da906064015f6040518083038186803b158015610292575f5ffd5b505af41580156102a4573d5f5f3e3d5ffd5b505050506102b78261086460201b60201c565b436101605282516101805260208301516101a052610220808301805163ffffffff166101c0526001600160a01b03808b166101e0528716909152516040515f9130918b9190611000906103099061141e565b6001600160a01b03948516815293909216602084015263ffffffff1660408301526060820152608001604051809103905ff08015801561034b573d5f5f3e3d5ffd5b506001600160a01b0381166102405261022084015160405191925030916103719061142b565b6001600160a01b03909216825263ffffffff166020820152604001604051809103905ff0801580156103a5573d5f5f3e3d5ffd5b506001600160a01b0316610260816001600160a01b031681525050806001600160a01b0316638ccf6b956040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103fc573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061042091906118e9565b6001600160a01b031661020052610436846109b0565b610456836101e001518461024001518561026001516109e560201b60201c565b505050505050505050611dae565b5f60208351101561047f5761047883610bf8565b9050610490565b8161048a8482611987565b5060ff90505b92915050565b600280546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f81604001511161050b57604051632c171d3d60e01b815260040160405180910390fd5b5f81606001511161052f5760405163087d960960e41b815260040160405180910390fd5b5f816080015111610553576040516366ab021160e01b815260040160405180910390fd5b8051158061056457505f8160200151115b61058157604051638b9f9f0160e01b815260040160405180910390fd5b6080810151602082015190808211156105b65760405163dda88d2d60e01b815260048101929092526024820152604401610150565b505050565b7fcc2bde3d21ba778aa5c156bb6fc47381978b0054c8a1ef73f44234164324cbe06105e586610c35565b81546001600160801b0319166001600160801b039190911617815561060985610c6c565b815463ffffffff91909116600160801b0263ffffffff60801b1990911617815561063284610c6c565b815463ffffffff91909116600160a01b0263ffffffff60a01b1990911617815561065b83610c6c565b815463ffffffff91909116600160c01b0263ffffffff60c01b1990911617815561068482610c6c565b815463ffffffff91909116600160e01b026001600160e01b039091161790555050505050565b5f82604001515f14806106c05750826101800151155b156106cc57505f610490565b60405163730542f960e01b815273__$31521dbd7567dc03b4ab4c4cc849a55f1a$__9063730542f99061070790309086908890600401611a69565b602060405180830381865af4158015610722573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074691906118e9565b9392505050565b7fbba4a4d3c3eeb229c4f06863ce3d3d8cddab9e4dee538d785fc67e2ed9d68cad80546001600160a01b038881166001600160a01b03199283161783557fbba4a4d3c3eeb229c4f06863ce3d3d8cddab9e4dee538d785fc67e2ed9d68cb08054918916919092161790556107c085610c9c565b60038201805463ffffffff60a01b1916600160a01b63ffffffff93909316929092029190911790556001810180546001600160a01b0319166001600160a01b03861617905561080e83610ca6565b6005820155700100000000000000000000000000000001600782015561083382610d48565b8160010160146101000a8154816001600160601b0302191690836001600160601b0316021790555050505050505050565b61028081015160408101516001600160a01b0316610906576102a0820151604051632f3f868760e21b815273__$026f237c3e389f77c9869c62a75f74ed46$__9163bcfe1a1c916108b89190600401611c90565b602060405180830381865af41580156108d3573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108f791906118e9565b6001600160a01b031660408201525b610320820151604080516375bcc8fd60e11b815283516001600160a01b039081166004830152602085015163ffffffff166024830152918401518216604482015260608401516001600160601b031660648201529116608482015273__$026f237c3e389f77c9869c62a75f74ed46$__9063eb7991fa9060a4015f6040518083038186803b158015610996575f5ffd5b505af41580156109a8573d5f5f3e3d5ffd5b505050505050565b60408101515f516020616ead5f395f51905f52906109cd90610d7b565b6040918201515f808052600190920160205291902055565b7f2e57d696f4035f6dfbf369d367f6b4aaf23baac5f6ee9a3a5207d71c56de652c610a0f84610dc3565b508280600280821015610a3e57604051631ad480f960e11b815260048101929092526024820152604401610150565b50819050630bebc20080821115610a715760405163df3a972160e01b815260048101929092526024820152604401610150565b5083905060648110801590610a8c5750655af3107a40008111155b816064655af3107a4000909192610ac757604051635ffe7f0d60e01b8152600481019390935260248301919091526044820152606401610150565b505050610b1260405180608001604052808881526020016305f5e1006332f1b3368a610af39190611ce7565b610afd9190611d0a565b8152602081018890525f604090910152610e3d565b83556040805160a08101909152633b9aca0060608201908152600160808301528190610b3d90610ec2565b6001600160701b03168152602001610b746040518060400160405280488152602001610b6d610f0e60201b60201c565b9052610ec2565b6001600160701b03168152602001610b8c6005610c9c565b63ffffffff90811690915281516001860180546020850151604090950151909316600160e01b026001600160e01b036001600160701b03958616600160701b026001600160e01b031990951695909316949094179290921781169290921790556109a890859061100a16565b5f5f829050601f81511115610c22578260405163305a27a960e01b81526004016101509190611d29565b8051610c2d82611d5e565b179392505050565b5f6001600160801b03821115610c68576040516306dfcc6560e41b81526080600482015260248101839052604401610150565b5090565b5f63ffffffff821115610c68576040516306dfcc6560e41b81526020600482015260248101839052604401610150565b5f61049082610c6c565b60808101515f908190610cb890610c6c565b63ffffffff16811790506020610cd78460600151610c6c60201b60201c565b63ffffffff16901b811790506040610cf88460400151610c6c60201b60201c565b63ffffffff16901b811790506060610d198460200151610c6c60201b60201c565b63ffffffff16901b811790506080610d39845f0151610c6c60201b60201c565b63ffffffff16901b1792915050565b5f6001600160601b03821115610c68576040516306dfcc6560e41b81526060600482015260248101839052604401610150565b807f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f00000018110610dbf5760405163733fc21760e01b815260040161015091815260200190565b5050565b5f60018280610dee576040516372e1574f60e01b815260048101929092526024820152604401610150565b505f9050610dfd836002611ce7565b905063ffffffff8181811115610e34576040516303fd5c0b60e41b815263ffffffff90921660048301526024820152604401610150565b50909392505050565b60408101515f908190610e4f90611157565b6001600160401b0316811790506040610e718460200151610c3560201b60201c565b6001600160801b0316901b8117905060c0610e94845f0151610c6c60201b60201c565b63ffffffff16901b8117905060e0610eb5846060015161118c60201b60201c565b61ffff16901b1792915050565b60208101515f9081908190610ed6906111ba565b66ffffffffffffff16901b811790506038610ef9845f01516111ba60201b60201c565b66ffffffffffffff16901b17610746816111ed565b5f617a694614808015610f355750737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15155b156110035760408051600481526024810182526020810180516001600160e01b0316631f6d6ef760e01b17905290515f918291737109709ecfa91a80626ff3989d68f67f5b1dd12d91610f8791611d81565b5f60405180830381855afa9150503d805f8114610fbf576040519150601f19603f3d011682016040523d82523d5f602084013e610fc4565b606091505b5091509150818015610fd857506020815110155b15610ff95780806020019051810190610ff19190611d97565b935050505090565b6001935050505090565b4a91505090565b60408051610140810182525f80825260208083018290528284018290526060808401839052608080850184905260a080860185905260c0860185905260e086018590528651908101875284815292830184905294820186905281018290529283018190526101008201929092526101208101919091525f516020616ead5f395f51905f529061109890611220565b5f80805260029283016020908152604091829020835181559083015160018201559082015192810192909255606081015160038301556080810151600483015560a081015160058301805460c084015160e085015163ffffffff9094166001600160601b0319909216919091176401000000006001600160401b039283160217600160601b600160a01b0319166c0100000000000000000000000091909316029190911790556101008101516006830155610120015160079091015550565b5f6001600160401b03821115610c6857604080516306dfcc6560e41b8152600481019190915260248101839052604401610150565b5f61ffff821115610c68576040516306dfcc6560e41b81526010600482015260248101839052604401610150565b5f66ffffffffffffff821115610c68576040516306dfcc6560e41b81526038600482015260248101839052604401610150565b5f6001600160701b03821115610c68576040516306dfcc6560e41b81526070600482015260248101839052604401610150565b6112846040518061014001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f63ffffffff1681526020015f6001600160401b031681526020015f6001600160401b031681526020015f81526020015f81525090565b604051806101400160405280835f01518152602001836020015181526020018360400151815260200183606001518152602001836080015181526020016112d48460a00151610c9c60201b60201c565b63ffffffff1681526020018360c001516001600160401b031681526020018360e001516001600160401b0316815260200161131984610100015161132e60201b60201c565b81526020018361012001518152509050919050565b60208101515f90819061134090610c6c565b63ffffffff16811790506020611365845f015165ffffffffffff6113dd60201b60201c565b901b81179050605061138084604001516113ec60201b60201c565b65ffffffffffff16901b8117905060806113ab84606001516001600160401b036113dd60201b60201c565b901b8117905060c06113ce846080015160016001603f1b036113dd60201b60201c565b901b17600160ff1b1792915050565b5f828218828410028218610746565b5f65ffffffffffff821115610c68576040516306dfcc6560e41b81526030600482015260248101839052604401610150565b611e5f8061446b83390190565b610be3806162ca83390190565b6001600160a01b038116811461144c575f5ffd5b50565b805161145a81611438565b919050565b634e487b7160e01b5f52604160045260245ffd5b604051606081016001600160401b03811182821017156114955761149561145f565b60405290565b60405160a081016001600160401b03811182821017156114955761149561145f565b60405161034081016001600160401b03811182821017156114955761149561145f565b5f82601f8301126114ef575f5ffd5b6114f7611473565b806060840185811115611508575f5ffd5b845b8181101561152257805184526020938401930161150a565b509095945050505050565b8051801515811461145a575f5ffd5b63ffffffff8116811461144c575f5ffd5b805161145a8161153c565b5f60808284031215611568575f5ffd5b604051608081016001600160401b038111828210171561158a5761158a61145f565b8060405250809150825161159d81611438565b815260208301516115ad8161153c565b602082015260408301516115c081611438565b604082015260608301516001600160601b03811681146115de575f5ffd5b6060919091015292915050565b5f60a082840312156115fb575f5ffd5b61160361149b565b905081516116108161153c565b815260208201516116208161153c565b602082015260408201516116338161153c565b604082015260608201516116468161153c565b606082015260808201516116598161153c565b608082015292915050565b5f60a08284031215611674575f5ffd5b61167c61149b565b825181526020808401519082015260408084015190820152606080840151908201526080928301519281019290925250919050565b5f6104e082840312156116c2575f5ffd5b6116ca6114bd565b825181526020808401519082015260408084015190820152606080840151908201526080808401519082015260a0808401519082015260c0808401519082015260e0808401519082015261010080840151908201526101208084015190820152905061173a8361014084016114e0565b6101408201526101a08201516101608201526117596101c0830161152d565b61018082015261176c6101e0830161144f565b6101a0820152610200828101516101c08301526102208301516101e0830152610240830151908201526117a2610260830161154d565b6102208201526102808201516102408201526102a08201516102608201526117ce836102c08401611558565b6102808201526117e28361034084016115eb565b6102a08201526117f6836103e08401611664565b6102c08201526104808201516102e08201526104a08201516103008201526118216104c0830161144f565b61032082015292915050565b5f5f5f5f5f5f5f8789036105e0811215611845575f5ffd5b885161185081611438565b60208a015190985061186181611438565b60408a015190975061187281611438565b60608a015190965061188381611438565b60808a015190955061189481611438565b93506060609f19820112156118a7575f5ffd5b506118b0611473565b60a0890151815260c0890151602082015260e0890151604082015291506118db896101008a016116b1565b905092959891949750929550565b5f602082840312156118f9575f5ffd5b815161074681611438565b600181811c9082168061191857607f821691505b60208210810361193657634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156105b657805f5260205f20601f840160051c810160208510156119615750805b601f840160051c820191505b81811015611980575f815560010161196d565b5050505050565b81516001600160401b038111156119a0576119a061145f565b6119b4816119ae8454611904565b8461193c565b6020601f8211600181146119e6575f83156119cf5750848201515b5f19600385901b1c1916600184901b178455611980565b5f84815260208120601f198516915b82811015611a1557878501518255602094850194600190920191016119f5565b5084821015611a3257868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b805f5b6003811015611a63578151845260209384019390910190600101611a44565b50505050565b5f6105208201905060018060a01b038516825260018060a01b0384166020830152825160408301526020830151606083015260408301516080830152606083015160a0830152608083015160c083015260a083015160e083015260c083015161010083015260e0830151610120830152610100830151610140830152610120830151610160830152610140830151611b05610180840182611a41565b506101608301516101e0830152610180830151801515610200840152506101a08301516001600160a01b038116610220840152506101c08301516102408301526101e083015161026083015261020083015161028083015261022083015163ffffffff81166102a0840152506102408301516102c08301526102608301516102e083015261028083015180516001600160a01b03908116610300850152602082015163ffffffff1661032085015260408201511661034084015260608101516001600160601b0316610360840152506102a0830151805163ffffffff908116610380850152602082015181166103a0850152604082015181166103c0850152606082015181166103e0850152608082015116610400840152506102c0830151805161042084015260208101516104408401526040810151610460840152606081015161048084015260808101516104a0840152506102e08301516104c08301526103008301516104e08301526103208301516001600160a01b03811661050084015250949350505050565b60a08101610490828463ffffffff815116825263ffffffff602082015116602083015263ffffffff604082015116604083015263ffffffff606082015116606083015263ffffffff60808201511660808301525050565b808202811582820484141761049057634e487b7160e01b5f52601160045260245ffd5b5f82611d2457634e487b7160e01b5f52601260045260245ffd5b500490565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b80516020808301519190811015611936575f1960209190910360031b1b16919050565b5f82518060208501845e5f920191825250919050565b5f60208284031215611da7575f5ffd5b5051919050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e0516102005161022051610240516102605161260c611e5f5f395f610bd101525f81816106450152610ba201525f610b7301525f610b4401525f8181610b1501528181610f5b015261101501525f610ae901525f610ac301525f610a9d01525f61038e01525f61132301525f6112f701525f50505f50505f50505f50505f505061260c5ff3fe608060405234801561000f575f5ffd5b506004361061023f575f3560e01c806384b0196e11610135578063d768df6e116100b4578063e6e2844011610079578063e6e28440146104af578063eb80a094146104c2578063ee3b8dc2146104d5578063f2fde38b146104e8578063f85494de146104fb575f5ffd5b8063d768df6e1461045b578063e199c0591461046e578063e3380b7914610481578063e521cb9214610489578063e6208d151461049c575f5ffd5b8063ae8655c4116100fa578063ae8655c414610407578063ae8955811461041a578063af584dd31461042d578063c2cac49d14610440578063c7523d7914610448575f5ffd5b806384b0196e146103b05780638da5cb5b146103cb57806390a3b386146103e45780639f2b3154146103ec578063a2429e88146103f4575f5ffd5b806345e2dc40116101c157806365e50a3e1161018657806365e50a3e1461034e5780636902c67b14610361578063715018a6146103745780637468582f1461037c57806379ed8ead14610389575f5ffd5b806345e2dc40146102fa57806348b5de181461030d578063508ac49b146103205780635c8a32f6146103285780635de4c42e1461033b575f5ffd5b80631b34c564116102075780631b34c564146102b15780631d934975146102c4578063214c0693146102cc57806323f4448f146102df5780632eb5af0a146102f2575f5ffd5b80630121b93f1461024357806302fb4d85146102585780630a883a991461028057806310073ff01461029357806310a2aa55146102a9575b5f5ffd5b6102566102513660046114c6565b61050e565b005b61026b6102663660046114f8565b610571565b60405190151581526020015b60405180910390f35b61025661028e3660046116e1565b6105fe565b61029b6106a0565b604051908152602001610277565b610256610711565b6102566102bf3660046117d7565b61076b565b6102566107c4565b61029b6102da36600461182b565b61080d565b6102566102ed36600461189a565b610887565b6102566108c6565b6102566103083660046118b3565b610910565b61025661031b36600461189a565b610947565b610256610986565b61025661033636600461182b565b6109c8565b6102566103493660046118cc565b610a31565b61025661035c36600461190a565b610c1e565b61025661036f3660046119bd565b610c86565b610256610cfb565b60045461026b9060ff1681565b61029b7f000000000000000000000000000000000000000000000000000000000000000081565b6103b8610d0e565b6040516102779796959493929190611a94565b6002546001600160a01b03166040516102779190611b2a565b61029b610d50565b610256610d5a565b6102566104023660046114c6565b610d9c565b610256610415366004611b3e565b610ddc565b610256610428366004611bf2565b610e1f565b61025661043b366004611c65565b610e8e565b610256610efa565b61029b61045636600461189a565b610f3c565b61029b610469366004611cd0565b610fe0565b61025661047c3660046114c6565b61103d565b610256611075565b61025661049736600461189a565b6110b7565b6102566104aa36600461189a565b6110f5565b6102566104bd3660046114c6565b61112c565b6102566104d036600461189a565b61116c565b61026b6104e3366004611d73565b6111ab565b6102566104f636600461189a565b6111f5565b61025661050936600461189a565b61123b565b604051630121b93f60e01b81526004810182905273__$2f4de12ba25591d19e66da7de316af4ec1$__90630121b93f906024015b5f6040518083038186803b158015610558575f5ffd5b505af415801561056a573d5f5f3e3d5ffd5b5050505050565b6040516302fb4d8560e01b81526001600160a01b0383166004820152602481018290525f9073__$2f4de12ba25591d19e66da7de316af4ec1$__906302fb4d85906044015b602060405180830381865af41580156105d1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105f59190611da4565b90505b92915050565b60048054604051634abd1af560e01b815273__$ff9fdf790a39e6d4e381889ed2aba2987d$__92634abd1af59261066b928c928c928c928c928c928c928c9260ff909216917f00000000000000000000000000000000000000000000000000000000000000009101611f1b565b5f6040518083038186803b158015610681575f5ffd5b505af4158015610693573d5f5f3e3d5ffd5b5050505050505050505050565b5f73__$2f4de12ba25591d19e66da7de316af4ec1$__6310073ff06040518163ffffffff1660e01b8152600401602060405180830381865af41580156106e8573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070c9190611ff4565b905090565b73__$2f4de12ba25591d19e66da7de316af4ec1$__6310a2aa556040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b505af4158015610765573d5f5f3e3d5ffd5b50505050565b610773611272565b604051638841c46760e01b8152815163ffffffff16600482015260208201516001600160601b0316602482015273__$026f237c3e389f77c9869c62a75f74ed46$__90638841c46790604401610542565b60405163e199c05960e01b81525f19600482015273__$2f4de12ba25591d19e66da7de316af4ec1$__9063e199c059906024015f6040518083038186803b158015610753575f5ffd5b60405163069a2ae160e11b81525f9073__$54376d545bb0cf37abaed04a5a4768fa07$__90630d3455c290610848908690869060040161203d565b602060405180830381865af4158015610863573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105f59190611ff4565b61088f611272565b60405163d400325360e01b815273__$026f237c3e389f77c9869c62a75f74ed46$__9063d400325390610542908490600401611b2a565b6108ce611272565b73__$2f4de12ba25591d19e66da7de316af4ec1$__632eb5af0a6040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b60405163d306a97560e01b815273__$54376d545bb0cf37abaed04a5a4768fa07$__9063d306a97590610542908490600401612074565b61094f611272565b604051630916bbc360e31b815273__$2f4de12ba25591d19e66da7de316af4ec1$__906348b5de1890610542908490600401611b2a565b73__$026f237c3e389f77c9869c62a75f74ed46$__63508ac49b6040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b6040516319d947ab60e31b815273__$54376d545bb0cf37abaed04a5a4768fa07$__9063ceca3d5890610a01908590859060040161203d565b5f6040518083038186803b158015610a17575f5ffd5b505af4158015610a29573d5f5f3e3d5ffd5b505050505050565b73__$908808037e8813018a35142aa945c7c277$__63d25e9de382610c0160408051610100810182525f80825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e08101919091526040518061010001604052807f000000000000000000000000000000000000000000000000000000000000000081526020017f000000000000000000000000000000000000000000000000000000000000000081526020017f000000000000000000000000000000000000000000000000000000000000000063ffffffff1681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316815250905090565b6040518363ffffffff1660e01b8152600401610542929190612316565b610c26611272565b604080516347817b3960e11b81528251600482015260208301516024820152908201516044820152606082015160648201526080820151608482015273__$2f4de12ba25591d19e66da7de316af4ec1$__90638f02f6729060a401610542565b604051630f0ec5ad60e41b815273__$2f4de12ba25591d19e66da7de316af4ec1$__9063f0ec5ad090610cc790899089908990899089908990600401612420565b5f6040518083038186803b158015610cdd575f5ffd5b505af4158015610cef573d5f5f3e3d5ffd5b50505050505050505050565b610d03611272565b610d0c5f61129f565b565b5f6060805f5f5f6060610d1f6112f0565b610d2761131c565b604080515f80825260208201909252600f60f81b9b939a50919850469750309650945092509050565b5f61070c42611349565b73__$ff9fdf790a39e6d4e381889ed2aba2987d$__639f2b31546040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b610da4611272565b604051633b45d94560e21b81526004810182905273__$026f237c3e389f77c9869c62a75f74ed46$__9063ed17651490602401610542565b610de4611272565b60405163a4f40ee960e01b815261ffff8216600482015273__$026f237c3e389f77c9869c62a75f74ed46$__9063a4f40ee990602401610542565b60405163029553b560e21b815273__$2f4de12ba25591d19e66da7de316af4ec1$__90630a554ed490610e5c9087908790879087906004016124d4565b5f6040518083038186803b158015610e72575f5ffd5b505af4158015610e84573d5f5f3e3d5ffd5b5050505050505050565b6040516333ab76ab60e01b815273__$2f4de12ba25591d19e66da7de316af4ec1$__906333ab76ab90610ec990869086908690600401612510565b5f6040518083038186803b158015610edf575f5ffd5b505af4158015610ef1573d5f5f3e3d5ffd5b50505050505050565b73__$2f4de12ba25591d19e66da7de316af4ec1$__63c2cac49d6040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b604051635e5fafb360e01b81526001600160a01b0380831660048301527f00000000000000000000000000000000000000000000000000000000000000001660248201525f9073__$026f237c3e389f77c9869c62a75f74ed46$__90635e5fafb390604401602060405180830381865af4158015610fbc573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105f89190611ff4565b604051631c2dc80960e11b81525f9073__$026f237c3e389f77c9869c62a75f74ed46$__9063385b90129061084890869086907f00000000000000000000000000000000000000000000000000000000000000009060040161253a565b60405163e199c05960e01b81526004810182905273__$2f4de12ba25591d19e66da7de316af4ec1$__9063e199c05990602401610542565b73__$2f4de12ba25591d19e66da7de316af4ec1$__63e3380b796040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b6110bf611272565b604051623be8ff60e71b815273__$026f237c3e389f77c9869c62a75f74ed46$__90631df47f8090610542908490600401611b2a565b60405163e6208d1560e01b815273__$54376d545bb0cf37abaed04a5a4768fa07$__9063e6208d1590610542908490600401611b2a565b611134611272565b60405163039b8a1160e61b81526004810182905273__$026f237c3e389f77c9869c62a75f74ed46$__9063e6e2844090602401610542565b611174611272565b604051633ae0282560e21b815273__$2f4de12ba25591d19e66da7de316af4ec1$__9063eb80a09490610542908490600401611b2a565b60405163771dc6e160e11b81526001600160a01b038084166004830152821660248201525f9073__$2f4de12ba25591d19e66da7de316af4ec1$__9063ee3b8dc2906044016105b6565b6111fd611272565b6001600160a01b03811661122f575f604051631e4fbdf760e01b81526004016112269190611b2a565b60405180910390fd5b6112388161129f565b50565b604051637c2a4a6f60e11b815273__$2f4de12ba25591d19e66da7de316af4ec1$__9063f85494de90610542908490600401611b2a565b6002546001600160a01b03163314610d0c573360405163118cdaa760e01b81526004016112269190611b2a565b600280546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b606061070c7f00000000000000000000000000000000000000000000000000000000000000005f6113b9565b606061070c7f000000000000000000000000000000000000000000000000000000000000000060016113b9565b5f7fbba4a4d3c3eeb229c4f06863ce3d3d8cddab9e4dee538d785fc67e2ed9d68cad6003015460405163ec6e69db60e01b8152306004820152602481018490526001600160a01b039091169063ec6e69db90604401602060405180830381865afa158015610fbc573d5f5f3e3d5ffd5b606060ff83146113d3576113cc83611462565b90506105f8565b8180546113df906125a4565b80601f016020809104026020016040519081016040528092919081815260200182805461140b906125a4565b80156114565780601f1061142d57610100808354040283529160200191611456565b820191905f5260205f20905b81548152906001019060200180831161143957829003601f168201915b505050505090506105f8565b60605f61146e8361149f565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f60ff8216601f8111156105f857604051632cd44ac360e21b815260040160405180910390fd5b5f602082840312156114d6575f5ffd5b5035919050565b80356001600160a01b03811681146114f3575f5ffd5b919050565b5f5f60408385031215611509575f5ffd5b611512836114dd565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b604080519081016001600160401b038111828210171561155657611556611520565b60405290565b604051608081016001600160401b038111828210171561155657611556611520565b604051601f8201601f191681016001600160401b03811182821017156115a6576115a6611520565b604052919050565b5f82601f8301126115bd575f5ffd5b81356001600160401b038111156115d6576115d6611520565b6115e9601f8201601f191660200161157e565b8181528460208386010111156115fd575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f60408284031215611629575f5ffd5b611631611534565b905081356001600160401b03811115611648575f5ffd5b611654848285016115ae565b82525060208201356001600160401b0381111561166f575f5ffd5b61167b848285016115ae565b60208301525092915050565b5f60608284031215611697575f5ffd5b50919050565b5f5f83601f8401126116ad575f5ffd5b5081356001600160401b038111156116c3575f5ffd5b6020830191508360208285010111156116da575f5ffd5b9250929050565b5f5f5f5f5f5f5f8789036102c08112156116f9575f5ffd5b610200811215611707575f5ffd5b508796506102008801356001600160401b03811115611724575f5ffd5b6117308a828b01611619565b9650506102208801356001600160401b0381111561174c575f5ffd5b8801601f81018a1361175c575f5ffd5b80356001600160401b03811115611771575f5ffd5b8a60208260051b8401011115611785575f5ffd5b6020919091019550935061179d896102408a01611687565b92506102a08801356001600160401b038111156117b8575f5ffd5b6117c48a828b0161169d565b989b979a50959850939692959293505050565b5f60408284031280156117e8575f5ffd5b506117f1611534565b823563ffffffff81168114611804575f5ffd5b815260208301356001600160601b038116811461181f575f5ffd5b60208201529392505050565b5f5f6020838503121561183c575f5ffd5b82356001600160401b03811115611851575f5ffd5b8301601f81018513611861575f5ffd5b80356001600160401b03811115611876575f5ffd5b85602060a08302840101111561188a575f5ffd5b6020919091019590945092505050565b5f602082840312156118aa575f5ffd5b6105f5826114dd565b5f60a08284031280156118c4575f5ffd5b509092915050565b5f602082840312156118dc575f5ffd5b81356001600160401b038111156118f1575f5ffd5b82016101a08185031215611903575f5ffd5b9392505050565b5f60a082840312801561191b575f5ffd5b5060405160a081016001600160401b038111828210171561193e5761193e611520565b604090815283358252602080850135908301528381013590820152606080840135908201526080928301359281019290925250919050565b5f60408284031215611986575f5ffd5b61198e611534565b823581526020928301359281019290925250919050565b8015158114611238575f5ffd5b80356114f3816119a5565b5f5f5f5f5f5f8688036101608112156119d4575f5ffd5b6119dd886114dd565b96506119eb602089016114dd565b95506119fa8960408a01611976565b94506080607f1982011215611a0d575f5ffd5b50611a1661155c565b6080880135815260a0880135602082015260c0880135604082015260e088013560608201529250611a4b886101008901611976565b9150611a5a61014088016119b2565b90509295509295509295565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b60ff60f81b8816815260e060208201525f611ab260e0830189611a66565b8281036040840152611ac48189611a66565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b81811015611b19578351835260209384019390920191600101611afb565b50909b9a5050505050505050505050565b6001600160a01b0391909116815260200190565b5f60208284031215611b4e575f5ffd5b813561ffff81168114611903575f5ffd5b5f6001600160401b03821115611b7757611b77611520565b5060051b60200190565b5f82601f830112611b90575f5ffd5b8135611ba3611b9e82611b5f565b61157e565b8082825260208201915060208360051b860101925085831115611bc4575f5ffd5b602085015b83811015611be857611bda816114dd565b835260209283019201611bc9565b5095945050505050565b5f5f5f5f60808587031215611c05575f5ffd5b8435935060208501356001600160401b03811115611c21575f5ffd5b611c2d87828801611619565b93505060408501356001600160401b03811115611c48575f5ffd5b611c5487828801611b81565b949793965093946060013593505050565b5f5f5f60608486031215611c77575f5ffd5b8335925060208401356001600160401b03811115611c93575f5ffd5b611c9f86828701611619565b92505060408401356001600160401b03811115611cba575f5ffd5b611cc686828701611b81565b9150509250925092565b5f5f60408385031215611ce1575f5ffd5b611cea836114dd565b915060208301356001600160401b03811115611d04575f5ffd5b8301601f81018513611d14575f5ffd5b8035611d22611b9e82611b5f565b8082825260208201915060208360051b850101925087831115611d43575f5ffd5b6020840193505b82841015611d65578335825260209384019390910190611d4a565b809450505050509250929050565b5f5f60408385031215611d84575f5ffd5b611d8d836114dd565b9150611d9b602084016114dd565b90509250929050565b5f60208284031215611db4575f5ffd5b8151611903816119a5565b80356001600160801b03811681146114f3575f5ffd5b6001600160801b03611de682611dbf565b1682526001600160801b03611dfd60208301611dbf565b1660208301525050565b803582526020808201359083015260408082013590830152606080820135908301526080808201359083015260a0808201359083015260c08082013590830152611e5360e082016114dd565b6001600160a01b031660e08301526101008181013590830152611e7d610120808401908301611dd5565b610160818101359083015261018090810135910152565b5f815160408452611ea86040850182611a66565b905060208301518482036020860152611ec18282611a66565b95945050505050565b803560ff8116808214611edb575f5ffd5b83525060208181013590830152604090810135910152565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b893581526020808b0135908201525f611f3a6040808401908d01611e07565b6101e08b810135908301526103006102008301819052611f5c9083018b611e94565b82810361022084015288815289906020015f805b8b811015611f9e576001600160a01b03611f89856114dd565b16835260209384019390920191600101611f70565b50611faf905061024085018a611eca565b8381036102a0850152611fc381888a611ef3565b92505050611fd66102c083018515159052565b6001600160a01b0383166102e08301529a9950505050505050505050565b5f60208284031215612004575f5ffd5b5051919050565b6001600160a01b0361201c826114dd565b168252602081810135908301526120396040808401908301611eca565b5050565b602080825281018290525f8360408301825b85811015611be857612061828461200b565b60a092830192919091019060010161204f565b60a081016105f8828461200b565b80358252602080820135908301526040808201359083015260608082013590830152608080820135908301526001600160a01b036120c260a083016114dd565b1660a08301525050565b5f5f8335601e198436030181126120e1575f5ffd5b83016020810192503590506001600160401b038111156120ff575f5ffd5b8060061b36038213156116da575f5ffd5b8183526020830192505f815f5b84811015612155576001600160a01b03612136836114dd565b168652602082810135908701526040958601959091019060010161211d565b5093949350505050565b5f5f8335601e19843603018112612174575f5ffd5b83016020810192503590506001600160401b03811115612192575f5ffd5b6101a0810236038213156116da575f5ffd5b8183526020830192505f815f5b84811015612155576121c38683611e07565b6101a09586019591909101906001016121b1565b5f8235603e198336030181126121eb575f5ffd5b90910192915050565b5f5f8335601e19843603018112612209575f5ffd5b83016020810192503590506001600160401b03811115612227575f5ffd5b8036038213156116da575f5ffd5b5f61224082836121f4565b60408552612252604086018284611ef3565b91505061226260208401846121f4565b8583036020870152612275838284611ef3565b9695505050505050565b805182526020810151602083015263ffffffff604082015116604083015260018060a01b03606082015116606083015260018060a01b03608082015116608083015260a08101516122db60a08401826001600160a01b03169052565b5060c08101516122f660c08401826001600160a01b03169052565b5060e081015161231160e08401826001600160a01b03169052565b505050565b61012080825283359082015260208301356101408201525f61233f610160830160408601612082565b61234d6101008501856120cc565b6101a06102208501526123656102c085018284612110565b91505061237661012086018661215f565b84830361011f190161024086015261238f8382846121a4565b925050506123a16101408601866121d7565b83820361011f19016102608501526123b98282612235565b9150506123ca6101608601866121f4565b84830361011f19016102808601526123e3838284611ef3565b925050506123f56101808601866121f4565b84830361011f19016102a086015261240e838284611ef3565b9350505050611903602083018461227f565b6001600160a01b038781168252861660208201526101608101612450604083018780518252602090810151910152565b8451608083015260208086015160a0840152604086015160c0840152606086015160e08401528451610100840152840151610120830152821515610140830152979650505050505050565b5f8151808452602084019350602083015f5b828110156121555781516001600160a01b03168652602095860195909101906001016124ad565b848152608060208201525f6124ec6080830186611e94565b82810360408401526124fe818661249b565b91505082606083015295945050505050565b838152606060208201525f6125286060830185611e94565b8281036040840152612275818561249b565b6001600160a01b03841681526060602080830182905284519183018290525f91908501906080840190835b81811015612583578351835260209384019390920191600101612565565b50506001600160a01b03949094166040939093019290925250909392505050565b600181811c908216806125b857607f821691505b60208210810361169757634e487b7160e01b5f52602260045260245ffdfea2646970667358221220ae673b042a419c17549c5d6a2c2c028d46412038630a60e3fd6711ff138849d764736f6c634300081e0033610100604052348015610010575f5ffd5b50604051611e5f380380611e5f83398101604081905261002f9161023a565b6001600160a01b03841660805260a08290526102008110156100985760405162461bcd60e51b815260206004820152601560248201527f4255434b45542052494e4720544f4f20534d414c4c000000000000000000000060448201526064015b60405180910390fd5b60e0819052604080516080810182525f80825260208201529081016100bc426101dd565b6001600160401b0390811682525f6020928301819052808052825282517fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb555908201517fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb6805460408581015160609096015163ffffffff16600160801b0263ffffffff60801b1996861668010000000000000000026001600160801b0319909316949095169390931717939093169190911790915560a05190518591859130919061018690610216565b6001600160a01b0394851681529284166020840152921660408201526060810191909152608001604051809103905ff0801580156101c6573d5f5f3e3d5ffd5b506001600160a01b031660c0525061027f92505050565b5f6001600160401b0382111561021257604080516306dfcc6560e41b815260048101919091526024810183905260440161008f565b5090565b6107e98061167683390190565b6001600160a01b0381168114610237575f5ffd5b50565b5f5f5f5f6080858703121561024d575f5ffd5b845161025881610223565b602086015190945061026981610223565b6040860151606090960151949790965092505050565b60805160a05160c05160e05161133861033e5f395f8181610260015281816102ee015281816105e00152818161063f015281816107030152818161075801528181610782015281816107c90152818161082601528181610908015281816109be01528181610a3001528181610ba601528181610c9501528181610d5901528181610d900152610ecd01525f8181610138015281816101d1015261047001525f818161029c015261039f01525f81816102020152610aca01526113385ff3fe608060405234801561000f575f5ffd5b50600436106100c7575f3560e01c80639500ac30116100795780639500ac30146101f55780639611c5c2146101fd5780639953c8ec14610224578063af16b0391461023a578063db179be61461025b578063e80f895114610282578063ffa1ad7414610297575f5ffd5b80631865c57d146100cb5780631f6d510b1461010b5780632fb131c814610133578063620f27241461017257806365fe45ed1461019e5780638afaa215146101be5780638ccf6b95146101cf575b5f5ffd5b6100d36102be565b60408051825181526020808401516001600160401b039081169183019190915292820151909216908201526060015b60405180910390f35b61011e61011936600461107a565b610357565b60408051928352602083019190915201610102565b61015a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610102565b600154600160401b90046001600160401b03165b6040516001600160401b039091168152602001610102565b6101b16101ac3660046110f1565b6105a4565b6040516101029190611146565b6001546001600160401b0316610186565b7f000000000000000000000000000000000000000000000000000000000000000061015a565b6101866106c5565b61015a7f000000000000000000000000000000000000000000000000000000000000000081565b61022c6106d3565b604051908152602001610102565b61024d610248366004611154565b610727565b60405161010292919061117a565b61022c7f000000000000000000000000000000000000000000000000000000000000000081565b610295610290366004611154565b610abf565b005b61022c7f000000000000000000000000000000000000000000000000000000000000000081565b604080516060810182525f80825260208201819052918101919091526001546001600160401b03165f80806103137f0000000000000000000000000000000000000000000000000000000000000000856111ab565b815260208082019290925260409081015f208151606081018352815481526001909101546001600160401b0390811693820193909352939091169083015250919050565b82515f9081905f5160206112e35f395f51905f52811115610397576040516353bb503760e11b815260040161038e91815260200190565b60405180910390fd5b5060208501517f00000000000000000000000000000000000000000000000000000000000000008181146103e757604051632e26721160e21b81526004810192909252602482015260440161038e565b508490505f5160206112e35f395f51905f5281111561041c576040516311d1480560e21b815260040161038e91815260200190565b50825f5160206112e35f395f51905f5281111561044f57604051633b379f8b60e21b815260040161038e91815260200190565b505f610459610b97565b6001600160401b031690505f336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461049b573361049e565b60035b6040805160e0810182526001600160a01b03831660a082019081524660c08301528152602081018a905290810188905260608101879052608081018490529091505f6104e982610bf5565b90505f5f6104f683610c7d565b604080518281526001600160401b038416602080830191909152885180516001600160a01b03168385015281015160608084019190915289820151805160808086019190915292015160a08401528984015160c084015289015160e0830152880151610100820152905192945090925084917f6406de2408cbb641d69139ebf977ffd682d709ede2d7b1009509ca5e7426a02e918190036101200190a2509099939850929650505050505050565b604080516080810182525f8082526020820181905291810182905260608101919091526001546001600160401b031680831180159061060b57507f000000000000000000000000000000000000000000000000000000000000000061060984836111d2565b105b838290916106355760405163fee255b760e01b81526004810192909252602482015260440161038e565b505f9050806106647f0000000000000000000000000000000000000000000000000000000000000000866111ab565b815260208082019290925260409081015f208151608081018352815481526001909101546001600160401b0380821694830194909452600160401b810490931691810191909152600160801b90910463ffffffff1660608201529392505050565b5f6106ce610b97565b905090565b6001545f906106f4906001600160401b03600160401b8204811691166111e5565b6106ce906001600160401b03167f00000000000000000000000000000000000000000000000000000000000000006111d2565b604080516080810182525f80825260208201819052918101829052606081018290526001546001600160401b03165f7f000000000000000000000000000000000000000000000000000000000000000082106107b5576107a77f0000000000000000000000000000000000000000000000000000000000000000836111d2565b6107b2906001611204565b90505b815f5b60048110156108fd575f80806107ee7f0000000000000000000000000000000000000000000000000000000000000000866111ab565b815260208101919091526040015f20600101546001600160401b039081169150881681116108b45761081f83610f79565b5f8061084b7f0000000000000000000000000000000000000000000000000000000000000000876111ab565b815260208082019290925260409081015f208151608081018352815481526001909101546001600160401b0380821694830194909452600160401b810490931691810191909152600160801b90910463ffffffff16606082015290999098509650505050505050565b8383036108e7576040516389a5fcf560e01b81526001600160401b03808a1660048301528216602482015260440161038e565b6108f26001846111d2565b9250506001016107b8565b5081815f808061092d7f0000000000000000000000000000000000000000000000000000000000000000866111ab565b815260208101919091526040015f20600101546001600160401b0390811691508916811115610982576040516389a5fcf560e01b81526001600160401b03808b1660048301528216602482015260440161038e565b81831015610a20575f600261099785856111d2565b6109a19190611217565b6109ab90846111d2565b90506001600160401b038a165f806109e37f0000000000000000000000000000000000000000000000000000000000000000856111ab565b815260208101919091526040015f20600101546001600160401b031611610a0c57809350610a1a565b610a176001826111d2565b92505b50610982565b610a2983610f79565b5f80610a557f0000000000000000000000000000000000000000000000000000000000000000876111ab565b815260208082019290925260409081015f208151608081018352815481526001909101546001600160401b0380821694830194909452600160401b810490931691810191909152600160801b90910463ffffffff166060820152909a909950975050505050505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610b085760405163e5336a6b60e01b815260040160405180910390fd5b60015481906001600160401b03908116908216811015610b4e5760405163fee255b760e01b81526001600160401b0392831660048201529116602482015260440161038e565b50506001546001600160401b03600160401b90910481169082161115610b94576001805467ffffffffffffffff60401b1916600160401b6001600160401b038416021790555b50565b6001545f9081908190610bd4907f0000000000000000000000000000000000000000000000000000000000000000906001600160401b03166111ab565b815260208101919091526040015f20600101546001600160401b0316919050565b5f610c77825f01518360200151846040015185606001518660800151604051602001610c6395949392919085516001600160a01b03168152602095860151868201528451604082015293909401516060840152608083019190915260a082015260c081019190915260e00190565b604051602081830303815290604052610fb2565b92915050565b6001545f9081906001600160401b0316818080610cba7f0000000000000000000000000000000000000000000000000000000000000000856111ab565b815260208082019290925260409081015f208151608081018352815481526001909101546001600160401b0380821694830194909452600160401b8104841692820192909252600160801b90910463ffffffff166060820152915082161580610d2f57504281604001516001600160401b0316105b80610d455750610100816060015163ffffffff16145b15610e7857610d5560018361122a565b91507f0000000000000000000000000000000000000000000000000000000000000000826001600160401b031610610e0d575f610dc3610dbe7f00000000000000000000000000000000000000000000000000000000000000006001600160401b0386166111d2565b610f79565b60015490915081906001600160401b03808316600160401b909204161015610e0a57604051632eb49c6d60e01b81526001600160401b03909116600482015260240161038e565b50505b8160015f6101000a8154816001600160401b0302191690836001600160401b031602179055506040518060800160405280825f0151815260200182602001516001600160401b03168152602001610e6342610f79565b6001600160401b031681525f60209091015290505b8051610e849086611047565b815260208101805160019190610e9b90839061122a565b6001600160401b031690525060608101805160019190610ebc908390611249565b63ffffffff16905250805f80610efb7f00000000000000000000000000000000000000000000000000000000000000006001600160401b0387166111ab565b815260208082019290925260409081015f208351815591830151600190920180549184015160609094015163ffffffff16600160801b0263ffffffff60801b196001600160401b03958616600160401b026001600160801b031990941695909416949094179190911791909116919091179055519094909350915050565b5f6001600160401b03821115610fae57604080516306dfcc6560e41b815260048101919091526024810183905260440161038e565b5090565b6040805160018082528183019092525f9160208201818036833701905050600283604051610fe0919061127c565b602060405180830381855afa158015610ffb573d5f5f3e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061101e9190611287565b60405160200161102f92919061129e565b604051602081830303815290604052610c77906112bc565b60405163dec1650960e01b602082015260248101839052604481018290525f9061107390606401610c63565b9392505050565b5f5f5f838503608081121561108d575f5ffd5b604081121561109a575f5ffd5b50604051604081018181106001600160401b03821117156110c957634e487b7160e01b5f52604160045260245ffd5b6040908152853582526020808701359083015290969085013595506060909401359392505050565b5f60208284031215611101575f5ffd5b5035919050565b805182526001600160401b0360208201511660208301526001600160401b03604082015116604083015263ffffffff60608201511660608301525050565b60808101610c778284611108565b5f60208284031215611164575f5ffd5b81356001600160401b0381168114611073575f5ffd5b6001600160401b038316815260a081016110736020830184611108565b634e487b7160e01b5f52601260045260245ffd5b5f826111b9576111b9611197565b500690565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610c7757610c776111be565b6001600160401b038281168282160390811115610c7757610c776111be565b80820180821115610c7757610c776111be565b5f8261122557611225611197565b500490565b6001600160401b038181168382160190811115610c7757610c776111be565b63ffffffff8181168382160190811115610c7757610c776111be565b5f81518060208401855e5f93019283525090919050565b5f6110738284611265565b5f60208284031215611297575f5ffd5b5051919050565b5f6112a98285611265565b60ff199390931683525050601f01919050565b805160208083015191908110156112dc575f198160200360031b1b821691505b5091905056fe30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000000a264697066735822122066a4b61d8414aadeb26f791cfaf36a5e6da783fdb685eb44ca16d9bf129ca6af64736f6c634300081e0033610100604052348015610010575f5ffd5b506040516107e93803806107e983398101604081905261002f91610067565b6001600160a01b0393841660805290831660a052911660c05260e0526100b7565b6001600160a01b0381168114610064575f5ffd5b50565b5f5f5f5f6080858703121561007a575f5ffd5b845161008581610050565b602086015190945061009681610050565b60408601519093506100a781610050565b6060959095015193969295505050565b60805160a05160c05160e0516106dd61010c5f395f8181610159015261018a01525f818161013201528181610209015261038701525f818161010b015261026b01525f818160cc015261033c01526106dd5ff3fe608060405234801561000f575f5ffd5b506004361061006b575f3560e01c8063284b5dc61461006f5780632dc81c621461009c57806348fef595146100b25780639611c5c2146100c7578063b701069714610106578063c5d664c61461012d578063ffa1ad7414610154575b5f5ffd5b61008261007d3660046105a3565b61017b565b604080519283526020830191909152015b60405180910390f35b6100a4600381565b604051908152602001610093565b6100c56100c03660046105cc565b610331565b005b6100ee7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610093565b6100ee7f000000000000000000000000000000000000000000000000000000000000000081565b6100ee7f000000000000000000000000000000000000000000000000000000000000000081565b6100a47f000000000000000000000000000000000000000000000000000000000000000081565b604080518082018252600381527f00000000000000000000000000000000000000000000000000000000000000006020820152905160248101859052604481018490525f91829182906101fa9060640160408051601f198184030181529190526020810180516001600160e01b0316630c7e892d60e31b1790526103f5565b90506102316001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016333089610490565b604051631f6d510b60e01b8152825160048201526020830151602482015260448101829052606481018690525f9081906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631f6d510b9060840160408051808303815f875af11580156102b0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102d49190610601565b604080518b8152602081018b905290810183905260608101829052919350915089907fcb43dda0de11e57048e9d074ae7474446335afc906a0e5789d624fa5422629e39060800160405180910390a2909890975095505050505050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461037a576040516333f1b48f60e11b815260040160405180910390fd5b6103ae6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001683836104fd565b816001600160a01b03167f63be20cc905d5ba0cf65db405c4999f99f2575e521875f13a8009d6eed7a09d9826040516103e991815260200190565b60405180910390a25050565b6040805160018082528183019092525f9160208201818036833701905050600283604051610423919061063a565b602060405180830381855afa15801561043e573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610461919061064c565b604051602001610472929190610663565b60405160208183030381529060405261048a90610681565b92915050565b6040516001600160a01b0384811660248301528381166044830152606482018390526104f79186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050610533565b50505050565b6040516001600160a01b0383811660248301526044820183905261052e91859182169063a9059cbb906064016104c5565b505050565b5f5f60205f8451602086015f885af180610552576040513d5f823e3d81fd5b50505f513d91508115610569578060011415610576565b6001600160a01b0384163b155b156104f757604051635274afe760e01b81526001600160a01b038516600482015260240160405180910390fd5b5f5f5f606084860312156105b5575f5ffd5b505081359360208301359350604090920135919050565b5f5f604083850312156105dd575f5ffd5b82356001600160a01b03811681146105f3575f5ffd5b946020939093013593505050565b5f5f60408385031215610612575f5ffd5b505080516020909101519092909150565b5f81518060208401855e5f93019283525090919050565b5f6106458284610623565b9392505050565b5f6020828403121561065c575f5ffd5b5051919050565b5f61066e8285610623565b60ff199390931683525050601f01919050565b805160208083015191908110156106a1575f198160200360031b1b821691505b5091905056fea2646970667358221220a43289334f540df07fba90ae2dc80928d62c4da5e80d6e3c07ad7e192dd7451564736f6c634300081e003360c060405234801561000f575f5ffd5b50604051610be3380380610be383398101604081905261002e91610044565b6001600160a01b0390911660805260a05261007b565b5f5f60408385031215610055575f5ffd5b82516001600160a01b038116811461006b575f5ffd5b6020939093015192949293505050565b60805160a051610b3a6100a95f395f8181610148015261034701525f818160d301526101750152610b3a5ff3fe608060405234801561000f575f5ffd5b506004361061006b575f3560e01c80631538a6ff1461006f57806336f2412714610084578063765a2b33146100ad5780639611c5c2146100ce578063b977477c1461010d578063d70bd71b14610120578063ffa1ad7414610143575b5f5ffd5b61008261007d3660046107dc565b61016a565b005b610097610092366004610805565b610259565b6040516100a4919061081c565b60405180910390f35b6100c06100bb36600461084d565b6102a1565b6040519081526020016100a4565b6100f57f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100a4565b61008261011b36600461086d565b6102ee565b61013361012e36600461084d565b610590565b60405190151581526020016100a4565b6100c07f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146101b35760405163164a486160e11b815260040160405180910390fd5b600182101580156101c5575060208211155b82906101f0576040516343bb062f60e11b81526004016101e791815260200190565b60405180910390fd5b505f838152602081905260409020819061020b600185610927565b6020811061021b5761021b61093a565b0155604051818152829084907ff68b504483a6a4f9626a6282bc5165a8c1e04b5c5869ef1e70ecd9a16e0e2e6e9060200160405180910390a3505050565b6102616107bd565b5f828152602081815260409182902082516104008101938490529290919082845b8154815260200190600101908083116102825750505050509050919050565b5f8115806102af5750602082115b156102bb57505f6102e8565b5f8381526020819052604090206102d3600184610927565b602081106102e3576102e361093a565b015490505b92915050565b61010081106103105760405163879f16c160e01b815260040160405180910390fd5b82816001811b821061033e5760405163d49140f560e01b8152600481019290925260248201526044016101e7565b505060208601357f000000000000000000000000000000000000000000000000000000000000000081811461038f5760405163deae896760e01b8152600481019290925260248201526044016101e7565b506103a290506060870160408801610969565b6001600160a01b031633146103bd6060880160408901610969565b3390916103f0576040516357aad58160e01b81526001600160a01b039283166004820152911660248201526044016101e7565b505046606087013514610416576040516315dfb1f160e21b815260040160405180910390fd5b60018410158015610428575060208411155b859061044a57604051632f1e996760e11b81526004016101e791815260200190565b505f8581526020819052604081209081610465600188610927565b602081106104755761047561093a565b01549050868161049b57604051632f1e996760e11b81526004016101e791815260200190565b505f6104aa866001861b610982565b600881901c5f90815260208581019052604090205490915088908290600160ff83161b16156104f557604051633f5c70b560e21b8152600481019290925260248201526044016101e7565b505f905061051061050b368c90038c018c6109f9565b6105bf565b905061051f8686838a87610628565b600882901c5f90815260208581019052604090208054600160ff85161b17905580838a7fc1c65655a37473261705e23636f14fa004a0c32fc70c6db4df69192dd97292b8858c60405161057c929190918252602082015260400190565b60405180910390a450505050505050505050565b5f82815260208181526040808320600885901c84528201909152812054600160ff84161b1615155b9392505050565b80518051602091820151828401518051908401516040808701518151968701959095528501929092526bffffffffffffffffffffffff19606091821b1690840152607483015260948201525f906102e89060b4015b604051602081830303815290604052610728565b82825f5b868110156106c1576001808316148061067b57610676848a8a858181106106555761065561093a565b90506020020135604051602001610614929190918252602082015260400190565b6106b2565b6106b28989848181106106905761069061093a565b9050602002013585604051602001610614929190918252602082015260400190565b935050600191821c910161062c565b5080156106e1576040516398e37ec960e01b815260040160405180910390fd5b8282868682841461071b57604051635f216bf160e01b815260048101949094526024840192909252604483015260648201526084016101e7565b5050505050505050505050565b6040805160018082528183019092525f91602082018180368337019050506002836040516107569190610a9e565b602060405180830381855afa158015610771573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906107949190610aa9565b6040516020016107a5929190610ac0565b6040516020818303038152906040526102e890610ade565b6040518061040001604052806020906020820280368337509192915050565b5f5f5f606084860312156107ee575f5ffd5b505081359360208301359350604090920135919050565b5f60208284031215610815575f5ffd5b5035919050565b610400810181835f5b6020811015610844578151835260209283019290910190600101610825565b50505092915050565b5f5f6040838503121561085e575f5ffd5b50508035926020909101359150565b5f5f5f5f5f5f868803610120811215610884575f5ffd5b60a0811215610891575f5ffd5b5086955060a0860135945060c0860135935060e0860135925061010086013567ffffffffffffffff8111156108c4575f5ffd5b8701601f810189136108d4575f5ffd5b803567ffffffffffffffff8111156108ea575f5ffd5b8960208260051b84010111156108fe575f5ffd5b60208201935080925050509295509295509295565b634e487b7160e01b5f52601160045260245ffd5b818103818111156102e8576102e8610913565b634e487b7160e01b5f52603260045260245ffd5b80356001600160a01b0381168114610964575f5ffd5b919050565b5f60208284031215610979575f5ffd5b6105b88261094e565b808201808211156102e8576102e8610913565b6040516060810167ffffffffffffffff811182821017156109c457634e487b7160e01b5f52604160045260245ffd5b60405290565b6040805190810167ffffffffffffffff811182821017156109c457634e487b7160e01b5f52604160045260245ffd5b5f81830360a081128015610a0b575f5ffd5b50610a14610995565b6040821215610a21575f5ffd5b610a296109ca565b843581526020808601359082015281526040603f1983011215610a4a575f5ffd5b610a526109ca565b9150610a606040850161094e565b82526060840135602080840191909152810191909152608090920135604083015250919050565b5f81518060208401855e5f93019283525090919050565b5f6105b88284610a87565b5f60208284031215610ab9575f5ffd5b5051919050565b5f610acb8285610a87565b60ff199390931683525050601f01919050565b80516020808301519190811015610afe575f198160200360031b1b821691505b5091905056fea2646970667358221220ef7b92cb77822b0b48554c47bc151ab88f4dd74387402f8f8de7daa1191c360764736f6c634300081e00330958201b72d64259285941dffd868dac55267471fcc73e8a06e1fd9cf8706361","sourceMap":"11940:25754:74:-:0;;;13138:1;13116:23;;13328:28;;;-1:-1:-1;;13328:28:74;13352:4;13328:28;;;14193:2680;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3328:431:58;;;;;;;;;;;-1:-1:-1;;;3328:431:58;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3328:431:58;;;;14416:11:74;;3401:45:58;3328:431;-1:-1:-1;3401:30:58;:45::i;:::-;3393:53;;3467:51;:7;3501:16;3467:33;:51::i;:::-;3456:62;;3542:22;;;;;;;;;;3528:36;;3591:25;;;;;;3574:42;;3644:13;3627:30;;3692:23;4226:11;;4239:14;;4204:80;;;2079:95;4204:80;;;14331:25:184;14372:18;;;14365:34;;;;14415:18;;;14408:34;4255:13:58;14458:18:184;;;14451:34;4278:4:58;14501:19:184;;;14494:61;4168:7:58;;14303:19:184;;4204:80:58;;;;;;;;;;;;4194:91;;;;;;4187:98;;4113:179;;3692:23;3667:48;;-1:-1:-1;;3747:4:58;3725:27;;-1:-1:-1;;;;;1273:26:35;;1269:95;;1322:31;;-1:-1:-1;;;1322:31:35;;1350:1;1322:31;;;9517:51:184;9490:18;;1322:31:35;;;;;;;;1269:95;1373:32;1392:12;1373:18;:32::i;:::-;-1:-1:-1;14469:26:74::1;::::0;::::1;::::0;14435:61:::1;::::0;:33:::1;:61::i;:::-;14874:24;::::0;::::1;::::0;6105:7:119::1;14874:62:74::0;;::::1;;14859:195;;;::::0;-1:-1:-1;;;14859:195:74;;::::1;::::0;::::1;9753:25:184::0;;;;9794:18;;;9787:34;9726:18;;14859:195:74::1;9579:248:184::0;14859:195:74::1;-1:-1:-1::0;;15209:34:74::1;::::0;::::1;::::0;15299:1:::1;::::0;15209:38;15194:149:::1;;;::::0;-1:-1:-1;;;15194:149:74;;::::1;::::0;::::1;9753:25:184::0;;;;9794:18;;;9787:34;9726:18;;15194:149:74::1;9579:248:184::0;15194:149:74::1;;;15350:192;15376:15;15399:7;:25;;;15432:7;:26;;;15466:7;:34;;;15508:7;:28;;;15350:18;;;:192;;:::i;:::-;15549:16;15568:36;15583:7:::0;15592:11;15568:14:::1;:36::i;:::-;15549:55;;15611:204;15640:13;15661:4;15688:7;:24;;;15729:7;15745;:26;;;15779:7;:30;;;15611:21;;;:204;;:::i;:::-;15883:27;::::0;;::::1;::::0;15912:34:::1;::::0;::::1;::::0;15948:28:::1;::::0;::::1;::::0;15821:161;;-1:-1:-1;;;15821:161:74;;::::1;::::0;::::1;10303:25:184::0;;;;10344:18;;;10337:34;10387:18;;;10380:34;;;;15821:25:74::1;::::0;:54:::1;::::0;10276:18:184;;15821:161:74::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15989:27;16008:7;15989:18;;;:27;;:::i;:::-;16045:12;16023:34;::::0;16253:24;;16238:39:::1;::::0;16309:35:::1;::::0;::::1;::::0;16283:61:::1;::::0;16360:15:::1;::::0;;::::1;::::0;;16350:25:::1;;;::::0;-1:-1:-1;;;;;16381:21:74;;::::1;;::::0;16408:42;::::1;::::0;;;16523:15;16487:76:::1;::::0;16253:24:::1;::::0;16505:4:::1;::::0;16393:9;;16523:15;1349:4:123::1;::::0;16487:76:74::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;;;;;10788:32:184;;;10770:51;;10857:32;;;;10852:2;10837:18;;10830:60;10938:10;10926:23;10921:2;10906:18;;10899:51;10981:2;10966:18;;10959:34;10757:3;10742:19;16487:76:74::1;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;;16571:13:74;::::1;;::::0;16641:15:::1;::::0;::::1;::::0;16615:42:::1;::::0;16457:108;;-1:-1:-1;16634:4:74::1;::::0;16615:42:::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;;;;;11195:32:184;;;11177:51;;11276:10;11264:23;11259:2;11244:18;;11237:51;11165:2;11150:18;16615:42:74::1;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;16590:69:74::1;;;-1:-1:-1::0;;;;;16590:69:74::1;;;::::0;::::1;16700:5;-1:-1:-1::0;;;;;16700:23:74::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;16665:61:74::1;;::::0;16733:32:::1;16751:13:::0;16733:17:::1;:32::i;:::-;16772:96;16790:7;:18;;;16810:7;:26;;;16838:7;:29;;;16772:17;;;:96;;:::i;:::-;14429:2444;;14193:2680:::0;;;;;;;11940:25754;;2887:340:52;2983:11;3032:2;3016:5;3010:19;:24;3006:215;;;3057:20;3071:5;3057:13;:20::i;:::-;3050:27;;;;3006:215;3134:5;3108:46;3149:5;3134;3108:46;:::i;:::-;-1:-1:-1;1390:66:52;;-1:-1:-1;3006:215:52;2887:340;;;;:::o;2912:187:35:-;3004:6;;;-1:-1:-1;;;;;3020:17:35;;;-1:-1:-1;;;;;;3020:17:35;;;;;;;3052:40;;3004:6;;;3020:17;3004:6;;3052:40;;2985:16;;3052:40;2975:124;2912:187;:::o;38108:701:119:-;38232:1;38203:7;:26;;;:30;38195:84;;;;-1:-1:-1;;;38195:84:119;;;;;;;;;;;;38327:1;38293:7;:31;;;:35;38285:94;;;;-1:-1:-1;;;38285:94:119;;;;;;;;;;;;38421:1;38393:7;:25;;;:29;38385:82;;;;-1:-1:-1;;;38385:82:119;;;;;;;;;;;;38488:33;;:38;;:72;;;38559:1;38530:7;:26;;;:30;38488:72;38473:144;;;;-1:-1:-1;;;38473:144:119;;;;;;;;;;;;38668:25;;;;38638:26;;;;;:55;;;;38623:181;;;;-1:-1:-1;;;38623:181:119;;;;;9753:25:184;;;;9794:18;;;9787:34;9726:18;;38623:181:119;9579:248:184;38623:181:119;;;38108:701;:::o;973:526:93:-;937:31;1230:24;:12;:22;:24::i;:::-;1210:44;;-1:-1:-1;;;;;;1210:44:93;-1:-1:-1;;;;;1210:44:93;;;;;;;1281:24;:13;:22;:24::i;:::-;1260:45;;;;;;;-1:-1:-1;;;1260:45:93;-1:-1:-1;;;;1260:45:93;;;;;;1333:25;:14;:23;:25::i;:::-;1311:47;;;;;;;-1:-1:-1;;;1311:47:93;-1:-1:-1;;;;1311:47:93;;;;;;1394:33;:22;:31;:33::i;:::-;1364:63;;;;;;;-1:-1:-1;;;1364:63:93;-1:-1:-1;;;;1364:63:93;;;;;;1462:32;:21;:30;:32::i;:::-;1433:61;;;;;;;-1:-1:-1;;;1433:61:93;-1:-1:-1;;;;;1433:61:93;;;;;;-1:-1:-1;;;;;973:526:93:o;36519:320:74:-;36616:16;36644:7;:27;;;36675:1;36644:32;:59;;;;36681:7;:22;;;36680:23;36644:59;36640:107;;;-1:-1:-1;36737:1:74;36713:27;;36640:107;36760:74;;-1:-1:-1;;;36760:74:74;;:23;;:37;;:74;;36806:4;;36813:11;;36826:7;;36760:74;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;36753:81;36519:320;-1:-1:-1;;;36519:320:74:o;6788:532:119:-;5862:39;7040:34;;-1:-1:-1;;;;;7040:34:119;;;-1:-1:-1;;;;;;7040:34:119;;;;;;7080:9;:16;;;;;;;;;;;;7120:21;:10;:19;:21::i;:::-;7102:15;;;:39;;-1:-1:-1;;;;7102:39:119;-1:-1:-1;;;7102:39:119;;;;;;;;;;;;;;;-1:-1:-1;7147:13:119;;:24;;-1:-1:-1;;;;;;7147:24:119;-1:-1:-1;;;;;7147:24:119;;;;;7197:18;:7;:16;:18::i;:::-;7177:17;;;:38;1099:13:92;1079:10;;;1099:13;7281:34:119;:23;:32;:34::i;:::-;7250:5;:28;;;:65;;;;;-1:-1:-1;;;;;7250:65:119;;;;;-1:-1:-1;;;;;7250:65:119;;;;;;6985:335;6788:532;;;;;;:::o;36843:460:74:-;36955:20;;;;36994;;;;-1:-1:-1;;;;;36986:43:74;36982:146;;37095:25;;;;37062:59;;-1:-1:-1;;;37062:59:74;;:12;;:32;;:59;;37095:25;37062:59;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;37039:82:74;:20;;;:82;36982:146;37264:33;;;;37220:78;;;-1:-1:-1;;;37220:78:74;;15052:12:184;;-1:-1:-1;;;;;15048:38:184;;;37220:78:74;;;15036:51:184;15140:4;15129:16;;15123:23;15148:10;15119:40;15103:14;;;15096:64;15202:16;;;15196:23;15192:49;;15176:14;;;15169:73;15311:2;15284:16;;15278:23;-1:-1:-1;;;;;15274:48:184;15258:14;;;15251:72;19773:32;;19752:19;;;19745:61;37220:12:74;;:29;;19659:19:184;;37220:78:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36914:389;36843:460;:::o;6133:428:116:-;6459:32;;;;-1:-1:-1;;;;;;;;;;;5747:30:116;6425:67;;:33;:67::i;:::-;6524:32;;;;;6498:23;;;;:20;;;;:23;;;;;:58;6133:428::o;6883:2173:108:-;6848:30;7125:29;7142:11;7125:16;:29::i;:::-;-1:-1:-1;7372:19:108;;4712:1;7413:40;;;;7398:145;;;;-1:-1:-1;;;7398:145:108;;;;;9753:25:184;;;;9794:18;;;9787:34;9726:18;;7398:145:108;9579:248:184;7398:145:108;-1:-1:-1;7849:11:108;;-1:-1:-1;5001:3:108;7849:48;;;;7834:163;;;;-1:-1:-1;;;7834:163:108;;;;;9753:25:184;;;;9794:18;;;9787:34;9726:18;;7834:163:108;9579:248:184;7834:163:108;-1:-1:-1;8111:22:108;;-1:-1:-1;1866:3:108;8155:37;;;;;:78;;;1959:4;8196:12;:37;;8155:78;8285:12;1866:3;1959:4;8140:210;;;;;;;-1:-1:-1;;;8140:210:108;;;;;10303:25:184;;;;10344:18;;;10337:34;;;;10387:18;;;10380:34;10276:18;;8140:210:108;10093:327:184;8140:210:108;;;;8375:261;:250;;;;;;;;8407:11;8375:250;;;;3599:3;3657:11;8454;:47;;;;:::i;:::-;:80;;;;:::i;:::-;8375:250;;;;;;;;-1:-1:-1;8375:250:108;;;;;:259;:261::i;:::-;8357:279;;8672:225;;;8703:40;;;;;;8723:6;8672:225;;;8703:40;;;8740:1;8703:40;;;;8672:225;;8703:51;;:49;:51::i;:::-;-1:-1:-1;;;;;8672:225:108;;;;;8768:81;:70;;;;;;;;8788:13;8768:70;;;;8812:24;:22;;;:24;;:::i;:::-;8768:70;;:79;:81::i;:::-;-1:-1:-1;;;;;8672:225:108;;;;;8871:19;6750:1;8871:17;:19::i;:::-;8672:225;;;;;;;8643:254;;:26;;;:254;;;;;;;;;;;;;;-1:-1:-1;;;8643:254:108;-1:-1:-1;;;;;;;;;;8643:254:108;;;-1:-1:-1;;;8643:254:108;-1:-1:-1;;;;;;8643:254:108;;;;;;;;;;;;;;;;;;;;;;;8973:78;;9027:22;;8973:28;:78;:::i;1708:286:52:-;1773:11;1796:17;1822:3;1796:30;;1854:2;1840:4;:11;:16;1836:72;;;1893:3;1879:18;;-1:-1:-1;;;1879:18:52;;;;;;;;:::i;1836:72::-;1974:11;;1957:13;1974:4;1957:13;:::i;:::-;1949:36;;1708:286;-1:-1:-1;;;1708:286:52:o;9264:218:62:-;9321:7;-1:-1:-1;;;;;9344:25:62;;9340:105;;;9392:42;;-1:-1:-1;;;9392:42:62;;9423:3;9392:42;;;21540:36:184;21592:18;;;21585:34;;;21513:18;;9392:42:62;21358:267:184;9340:105:62;-1:-1:-1;9469:5:62;9264:218::o;15296:213::-;15352:6;15382:16;15374:24;;15370:103;;;15421:41;;-1:-1:-1;;;15421:41:62;;15452:2;15421:41;;;21540:36:184;21592:18;;;21585:34;;;21513:18;;15421:41:62;21358:267:184;339:175:180;402:19;461:47;496:10;461:17;:47::i;1804:529:95:-;1956:25;;;;1880:28;;;;1956:36;;:34;:36::i;:::-;1948:45;;1939:54;;;;2063:2;2016:42;:7;:31;;;:40;;;:42;;:::i;:::-;2008:51;;:57;;1999:66;;;;2130:2;2088:37;:7;:26;;;:35;;;:37;;:::i;:::-;2080:46;;:52;;2071:61;;;;2197:2;2155:37;:7;:26;;;:35;;;:37;;:::i;:::-;2147:46;;:52;;2138:61;;;;2271:3;2222:44;:7;:33;;;:42;;;:44;;:::i;:::-;2214:53;;:60;;2205:69;;1804:529;-1:-1:-1;;1804:529:95:o;11296:213:62:-;11352:6;-1:-1:-1;;;;;11374:24:62;;11370:103;;;11421:41;;-1:-1:-1;;;11421:41:62;;11452:2;11421:41;;;21540:36:184;21592:18;;;21585:34;;;21513:18;;11421:41:62;21358:267:184;726:160:109;812:6;345:102:86;804:29:109;;796:85;;;;-1:-1:-1;;;796:85:109;;;;;;22318:25:184;;22306:2;22291:18;;22172:177;796:85:109;;726:160;:::o;18427:403:108:-;18497:7;18570:1;18520:11;:15;18512:74;;;;-1:-1:-1;;;18512:74:108;;;;;9753:25:184;;;;9794:18;;;9787:34;9726:18;;18512:74:108;9579:248:184;18512:74:108;-1:-1:-1;18592:17:108;;-1:-1:-1;18612:15:108;:11;18626:1;18612:15;:::i;:::-;18592:35;-1:-1:-1;18723:16:108;18592:35;18710:29;;;;18702:100;;;;-1:-1:-1;;;18702:100:108;;22557:10:184;22545:23;;;18702:100:108;;;22527:42:184;22585:18;;;22578:34;22500:18;;18702:100:108;22354:264:184;18702:100:108;-1:-1:-1;18816:9:108;;18427:403;-1:-1:-1;;;18427:403:108:o;4293:443:97:-;4443:26;;;;4360:19;;;;4427:54;;:52;:54::i;:::-;-1:-1:-1;;;;;4419:63:97;4410:72;;;;4554:2;4505:44;:7;:32;;;:42;;;:44;;:::i;:::-;-1:-1:-1;;;;;4497:53:97;:59;;4488:68;;;;4613:3;4579:29;:7;:18;;;:27;;;:29;;:::i;:::-;4571:38;;:45;;4562:54;;;;4683:3;4639:39;:7;:28;;;:37;;;:39;;:::i;:::-;4631:48;;:55;;4622:64;;4293:443;-1:-1:-1;;4293:443:97:o;1685:277:98:-;1817:13;;;;1750:19;;;;;;1817:24;;:22;:24::i;:::-;1809:33;;:38;;1800:47;;;;1899:2;1870:24;:5;:13;;;:22;;;:24;;:::i;:::-;1862:33;;:39;;1853:48;1939:17;1853:48;1939:15;:17::i;2466:989:169:-;2515:7;2947:6;2930:13;:23;;2963:46;;;;-1:-1:-1;2983:22:169;;:26;;2963:46;2959:451;;;3152:43;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3152:43:169;-1:-1:-1;;;3152:43:169;;;3130:66;;3095:12;;;;3130:21;;:66;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3094:102;;;;3208:7;:28;;;;;3234:2;3219:4;:11;:17;;3208:28;3204:87;;;3266:4;3255:27;;;;;;;;;;;;:::i;:::-;3248:34;;;;;2466:989;:::o;3204:87::-;3402:1;3395:8;;;;;2466:989;:::o;2959:451::-;2425:17:104;3415:35:169;;;2466:989;:::o;6909:902:116:-;7141:654;;;;;;;;6987:31;7141:654;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7389:130;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7141:654;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;5747:30:116;7141:665;;:663;:665::i;:::-;7105:33;;;;:30;;;;:33;;;;;;;;;:701;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;7105:701:116;;;;;;;;-1:-1:-1;;;;;7105:701:116;;;;;-1:-1:-1;;;;;;;;7105:701:116;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6909:902:116:o;13296:213:62:-;13352:6;-1:-1:-1;;;;;13374:24:62;;13370:103;;;13452:2;13421:41;;-1:-1:-1;;;13421:41:62;;;;;21540:36:184;;;;21592:18;;;21585:34;;;21513:18;;13421:41:62;21358:267:184;16296:213:62;16352:6;16382:16;16374:24;;16370:103;;;16421:41;;-1:-1:-1;;;16421:41:62;;16452:2;16421:41;;;21540:36:184;21592:18;;;21585:34;;;21513:18;;16421:41:62;21358:267:184;13796:213:62;13852:6;13882:16;13874:24;;13870:103;;;13921:41;;-1:-1:-1;;;13921:41:62;;13952:2;13921:41;;;21540:36:184;21592:18;;;21585:34;;;21513:18;;13921:41:62;21358:267:184;10282:218:62;10339:7;-1:-1:-1;;;;;10362:25:62;;10358:105;;;10410:42;;-1:-1:-1;;;10410:42:62;;10441:3;10410:42;;;21540:36:184;21592:18;;;21585:34;;;21513:18;;10410:42:62;21358:267:184;2676:674:94;2755:34;11940:25754:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11940:25754:74;;;;;;-1:-1:-1;;;;;11940:25754:74;;;;;;;;;;;;;;;;2755:34:94;2804:541;;;;;;;;2852:11;:22;;;2804:541;;;;2903:11;:31;;;2804:541;;;;2951:11;:19;;;2804:541;;;;2996:11;:28;;;2804:541;;;;3047:11;:25;;;2804:541;;;;3092:33;:11;:22;;;:31;;;:33;;:::i;:::-;2804:541;;;;;;3148:11;:25;;;-1:-1:-1;;;;;2804:541:94;;;;;3202:11;:31;;;-1:-1:-1;;;;;2804:541:94;;;;;3252:32;:11;:21;;;:30;;;:32;;:::i;:::-;2804:541;;;;3310:11;:28;;;2804:541;;;2797:548;;2676:674;;;:::o;3607:840:98:-;3744:19;;;;3677;;;;3744:30;;:28;:30::i;:::-;3736:39;;3727:48;;;;3915:2;3866:45;3875:10;:21;;;2444:14;3866:8;;;:45;;:::i;:::-;:51;;3857:60;;;;3981:2;3940:36;:10;:25;;;:34;;;:36;;:::i;:::-;3932:45;;:51;;3923:60;;;;4212:3;4162:46;4171:10;:22;;;-1:-1:-1;;;;;4162:8:98;;;:46;;:::i;:::-;:53;;4153:62;;;;4355:3;4306:45;4315:10;:21;;;-1:-1:-1;;;;;4306:8:98;;;:45;;:::i;:::-;:52;;4297:61;-1:-1:-1;;;4380:17:98;;;-1:-1:-1;;3607:840:98:o;3371:111:61:-;3429:7;3066:5;;;3463;;;3065:36;3060:42;;3455:20;2825:294;14296:213:62;14352:6;14382:16;14374:24;;14370:103;;;14421:41;;-1:-1:-1;;;14421:41:62;;14452:2;14421:41;;;21540:36:184;21592:18;;;21585:34;;;21513:18;;14421:41:62;21358:267:184;11940:25754:74;;;;;;;;:::o;:::-;;;;;;;;:::o;14:139:184:-;-1:-1:-1;;;;;97:31:184;;87:42;;77:70;;143:1;140;133:12;77:70;14:139;:::o;158:146::-;237:13;;259:39;237:13;259:39;:::i;:::-;158:146;;;:::o;309:127::-;370:10;365:3;361:20;358:1;351:31;401:4;398:1;391:15;425:4;422:1;415:15;441:246;508:2;502:9;550:2;538:15;;-1:-1:-1;;;;;568:34:184;;604:22;;;565:62;562:88;;;630:18;;:::i;:::-;666:2;659:22;441:246;:::o;692:253::-;764:2;758:9;806:4;794:17;;-1:-1:-1;;;;;826:34:184;;862:22;;;823:62;820:88;;;888:18;;:::i;950:255::-;1022:2;1016:9;1064:6;1052:19;;-1:-1:-1;;;;;1086:34:184;;1122:22;;;1083:62;1080:88;;;1148:18;;:::i;1210:541::-;1271:5;1324:3;1317:4;1309:6;1305:17;1301:27;1291:55;;1342:1;1339;1332:12;1291:55;1366:17;;:::i;:::-;1407:3;1445:2;1437:6;1433:15;1471:3;1463:6;1460:15;1457:35;;;1488:1;1485;1478:12;1457:35;1512:6;1527:193;1543:6;1538:3;1535:15;1527:193;;;1635:10;;1658:18;;1705:4;1696:14;;;;1560;1527:193;;;-1:-1:-1;1738:7:184;;1210:541;-1:-1:-1;;;;;1210:541:184:o;1756:164::-;1832:13;;1881;;1874:21;1864:32;;1854:60;;1910:1;1907;1900:12;1925:121;2010:10;2003:5;1999:22;1992:5;1989:33;1979:61;;2036:1;2033;2026:12;2051:136;2129:13;;2151:30;2129:13;2151:30;:::i;2192:959::-;2262:5;2310:4;2298:9;2293:3;2289:19;2285:30;2282:50;;;2328:1;2325;2318:12;2282:50;2381:2;2375:9;2423:4;2411:17;;-1:-1:-1;;;;;2443:34:184;;2479:22;;;2440:62;2437:88;;;2505:18;;:::i;:::-;2545:10;2541:2;2534:22;;2574:6;2565:15;;2610:9;2604:16;2629:41;2662:7;2629:41;:::i;:::-;2679:23;;2747:2;2732:18;;2726:25;2760:32;2726:25;2760:32;:::i;:::-;2820:2;2808:15;;2801:32;2878:2;2863:18;;2857:25;2891:41;2857:25;2891:41;:::i;:::-;2960:2;2948:15;;2941:32;3018:2;3003:18;;2997:25;-1:-1:-1;;;;;3053:32:184;;3041:45;;3031:73;;3100:1;3097;3090:12;3031:73;3132:2;3120:15;;;;3113:32;2192:959;;-1:-1:-1;;2192:959:184:o;3156:825::-;3231:5;3279:4;3267:9;3262:3;3258:19;3254:30;3251:50;;;3297:1;3294;3287:12;3251:50;3319:22;;:::i;:::-;3310:31;;3371:9;3365:16;3390:32;3414:7;3390:32;:::i;:::-;3431:22;;3498:2;3483:18;;3477:25;3511:32;3477:25;3511:32;:::i;:::-;3570:2;3559:14;;3552:31;3628:2;3613:18;;3607:25;3641:32;3607:25;3641:32;:::i;:::-;3700:2;3689:14;;3682:31;3758:2;3743:18;;3737:25;3771:32;3737:25;3771:32;:::i;:::-;3830:2;3819:14;;3812:31;3888:3;3873:19;;3867:26;3902:32;3867:26;3902:32;:::i;:::-;3961:3;3950:15;;3943:32;3954:5;3156:825;-1:-1:-1;;3156:825:184:o;3986:726::-;4062:5;4110:4;4098:9;4093:3;4089:19;4085:30;4082:50;;;4128:1;4125;4118:12;4082:50;4150:22;;:::i;:::-;4217:16;;4242:22;;4330:2;4315:18;;;4309:25;4350:14;;;4343:31;4440:2;4425:18;;;4419:25;4460:14;;;4453:31;4550:2;4535:18;;;4529:25;4570:14;;;4563:31;4660:3;4645:19;;;4639:26;4681:15;;;4674:32;;;;-1:-1:-1;4141:31:184;3986:726;-1:-1:-1;3986:726:184:o;4717:2972::-;4792:5;4840:6;4828:9;4823:3;4819:19;4815:32;4812:52;;;4860:1;4857;4850:12;4812:52;4882:22;;:::i;:::-;4949:16;;4974:22;;5062:2;5047:18;;;5041:25;5082:14;;;5075:31;5172:2;5157:18;;;5151:25;5192:14;;;5185:31;5282:2;5267:18;;;5261:25;5302:14;;;5295:31;5392:3;5377:19;;;5371:26;5413:15;;;5406:32;5504:3;5489:19;;;5483:26;5525:15;;;5518:32;5616:3;5601:19;;;5595:26;5637:15;;;5630:32;5728:3;5713:19;;;5707:26;5749:15;;;5742:32;5840:3;5825:19;;;5819:26;5861:15;;;5854:32;5954:3;5939:19;;;5933:26;5975:15;;;5968:33;4873:31;-1:-1:-1;6034:61:184;6091:3;6085;6070:19;;6034:61;:::i;:::-;6028:3;6017:15;;6010:86;6164:3;6149:19;;6143:26;6196:6;6185:18;;6178:36;6250:47;6292:3;6277:19;;6250:47;:::i;:::-;6241:6;6234:5;6230:18;6223:75;6331:50;6376:3;6365:9;6361:19;6331:50;:::i;:::-;6325:3;6314:15;;6307:75;6450:3;6435:19;;;6429:26;6482:3;6471:15;;6464:33;6565:3;6550:19;;6544:26;6597:3;6586:15;;6579:33;6680:3;6665:19;;6659:26;6701:15;;;6694:33;6760:49;6804:3;6789:19;;6760:49;:::i;:::-;6754:3;6743:15;;6736:74;6878:3;6863:19;;6857:26;6910:3;6899:15;;6892:33;6993:3;6978:19;;6972:26;7025:3;7014:15;;7007:33;7073:67;7136:3;7130;7115:19;;7073:67;:::i;:::-;7067:3;7060:5;7056:15;7049:92;7174:75;7245:3;7236:6;7225:9;7221:22;7174:75;:::i;:::-;7168:3;7161:5;7157:15;7150:100;7283:73;7352:3;7346;7335:9;7331:19;7283:73;:::i;:::-;7277:3;7266:15;;7259:98;7425:4;7410:20;;7404:27;7458:6;7447:18;;7440:36;7544:4;7529:20;;7523:27;7577:6;7566:18;;7559:36;7631:51;7676:4;7661:20;;7631:51;:::i;:::-;7622:6;7615:5;7611:18;7604:79;4717:2972;;;;:::o;7694:1563::-;7949:6;7957;7965;7973;7981;7989;7997;8041:9;8032:7;8028:23;8071:4;8067:2;8063:13;8060:33;;;8089:1;8086;8079:12;8060:33;8121:9;8115:16;8140:39;8173:5;8140:39;:::i;:::-;8248:2;8233:18;;8227:25;8198:5;;-1:-1:-1;8261:41:184;8227:25;8261:41;:::i;:::-;8373:2;8358:18;;8352:25;8321:7;;-1:-1:-1;8386:41:184;8352:25;8386:41;:::i;:::-;8498:2;8483:18;;8477:25;8446:7;;-1:-1:-1;8511:41:184;8477:25;8511:41;:::i;:::-;8623:3;8608:19;;8602:26;8571:7;;-1:-1:-1;8637:41:184;8602:26;8637:41;:::i;:::-;8697:7;-1:-1:-1;8739:2:184;-1:-1:-1;;8720:17:184;;8716:26;8713:46;;;8755:1;8752;8745:12;8713:46;;8783:17;;:::i;:::-;8866:3;8851:19;;8845:26;8880:24;;8970:3;8955:19;;8949:26;9004:2;8991:16;;8984:33;9083:3;9068:19;;9062:26;9117:2;9104:16;;9097:33;8887:7;-1:-1:-1;9175:76:184;9243:7;9237:3;9222:19;;9175:76;:::i;:::-;9165:86;;7694:1563;;;;;;;;;;:::o;11299:259::-;11369:6;11422:2;11410:9;11401:7;11397:23;11393:32;11390:52;;;11438:1;11435;11428:12;11390:52;11470:9;11464:16;11489:39;11522:5;11489:39;:::i;11563:380::-;11642:1;11638:12;;;;11685;;;11706:61;;11760:4;11752:6;11748:17;11738:27;;11706:61;11813:2;11805:6;11802:14;11782:18;11779:38;11776:161;;11859:10;11854:3;11850:20;11847:1;11840:31;11894:4;11891:1;11884:15;11922:4;11919:1;11912:15;11776:161;;11563:380;;;:::o;12074:518::-;12176:2;12171:3;12168:11;12165:421;;;12212:5;12209:1;12202:16;12256:4;12253:1;12243:18;12326:2;12314:10;12310:19;12307:1;12303:27;12297:4;12293:38;12362:4;12350:10;12347:20;12344:47;;;-1:-1:-1;12385:4:184;12344:47;12440:2;12435:3;12431:12;12428:1;12424:20;12418:4;12414:31;12404:41;;12495:81;12513:2;12506:5;12503:13;12495:81;;;12572:1;12558:16;;12539:1;12528:13;12495:81;;;12499:3;;12074:518;;;:::o;12768:1299::-;12888:10;;-1:-1:-1;;;;;12910:30:184;;12907:56;;;12943:18;;:::i;:::-;12972:97;13062:6;13022:38;13054:4;13048:11;13022:38;:::i;:::-;13016:4;12972:97;:::i;:::-;13118:4;13149:2;13138:14;;13166:1;13161:649;;;;13854:1;13871:6;13868:89;;;-1:-1:-1;13923:19:184;;;13917:26;13868:89;-1:-1:-1;;12725:1:184;12721:11;;;12717:24;12713:29;12703:40;12749:1;12745:11;;;12700:57;13970:81;;13131:930;;13161:649;12021:1;12014:14;;;12058:4;12045:18;;-1:-1:-1;;13197:20:184;;;13315:222;13329:7;13326:1;13323:14;13315:222;;;13411:19;;;13405:26;13390:42;;13518:4;13503:20;;;;13471:1;13459:14;;;;13345:12;13315:222;;;13319:3;13565:6;13556:7;13553:19;13550:201;;;13626:19;;;13620:26;-1:-1:-1;;13709:1:184;13705:14;;;13721:3;13701:24;13697:37;13693:42;13678:58;13663:74;;13550:201;-1:-1:-1;;;;13797:1:184;13781:14;;;13777:22;13764:36;;-1:-1:-1;12768:1299:184:o;14566:303::-;14659:5;14682:1;14692:171;14706:4;14703:1;14700:11;14692:171;;;14765:13;;14753:26;;14808:4;14799:14;;;;14836:17;;;;14726:1;14719:9;14692:171;;;14696:3;;14566:303;;:::o;16082:2495::-;16310:4;16352;16341:9;16337:20;16329:28;;16413:1;16409;16404:3;16400:11;16396:19;16388:6;16384:32;16373:9;16366:51;16482:1;16478;16473:3;16469:11;16465:19;16457:6;16453:32;16448:2;16437:9;16433:18;16426:60;16528:6;16522:13;16517:2;16506:9;16502:18;16495:41;16590:2;16582:6;16578:15;16572:22;16567:2;16556:9;16552:18;16545:50;16650:2;16642:6;16638:15;16632:22;16626:3;16615:9;16611:19;16604:51;16710:2;16702:6;16698:15;16692:22;16686:3;16675:9;16671:19;16664:51;16770:3;16762:6;16758:16;16752:23;16746:3;16735:9;16731:19;16724:52;16831:3;16823:6;16819:16;16813:23;16807:3;16796:9;16792:19;16785:52;16892:3;16884:6;16880:16;16874:23;16868:3;16857:9;16853:19;16846:52;16953:3;16945:6;16941:16;16935:23;16929:3;16918:9;16914:19;16907:52;17014:3;17006:6;17002:16;16996:23;16990:3;16979:9;16975:19;16968:52;17075:3;17067:6;17063:16;17057:23;17051:3;17040:9;17036:19;17029:52;17128:3;17120:6;17116:16;17110:23;17142:59;17196:3;17185:9;17181:19;17167:12;17142:59;:::i;:::-;-1:-1:-1;17256:3:184;17244:16;;17238:23;17232:3;17217:19;;17210:52;17311:3;17299:16;;17293:23;14944:13;;14937:21;17372:3;17357:19;;14925:34;-1:-1:-1;17426:6:184;17414:19;;17408:26;-1:-1:-1;;;;;9328:31:184;;17493:3;17478:19;;9316:44;-1:-1:-1;17553:6:184;17541:19;;17535:26;17529:3;17514:19;;17507:55;17617:3;17605:16;;17599:23;17593:3;17578:19;;17571:52;17678:3;17666:16;;17660:23;17654:3;17639:19;;17632:52;17733:3;17721:16;;17715:23;10501:10;10490:22;;17796:3;17781:19;;10478:35;-1:-1:-1;17856:3:184;17844:16;;17838:23;17832:3;17817:19;;17810:52;17917:3;17905:16;;17899:23;17893:3;17878:19;;17871:52;17972:3;17960:16;;17954:23;15052:12;;-1:-1:-1;;;;;15048:38:184;;;18048:3;18033:19;;15036:51;15140:4;15129:16;;15123:23;15148:10;15119:40;15103:14;;;15096:64;15213:4;15202:16;;15196:23;15192:49;15176:14;;;15169:73;15311:2;15284:16;;15278:23;-1:-1:-1;;;;;15274:48:184;15258:14;;;15251:72;-1:-1:-1;18102:3:184;18090:16;;18084:23;15421:12;;15435:10;15417:29;;;18183:3;18168:19;;15405:42;15500:4;15489:16;;15483:23;15479:40;;15463:14;;;15456:64;15573:4;15562:16;;15556:23;15552:40;;15536:14;;;15529:64;15646:4;15635:16;;15629:23;15625:40;;15609:14;;;15602:64;15719:4;15708:16;;15702:23;15698:40;15682:14;;;15675:64;-1:-1:-1;18237:3:184;18225:16;;18219:23;15834:12;;18319:4;18304:20;;15822:25;15896:4;15885:16;;15879:23;15863:14;;;15856:47;15952:4;15941:16;;15935:23;15919:14;;;15912:47;16008:4;15997:16;;15991:23;15975:14;;;15968:47;16064:4;16053:16;;16047:23;16031:14;;;16024:47;-1:-1:-1;18381:3:184;18369:16;;18363:23;18356:4;18341:20;;18334:53;18443:3;18431:16;;18425:23;18418:4;18403:20;;18396:53;18498:6;18486:19;;18480:26;-1:-1:-1;;;;;9328:31:184;;18565:4;18550:20;;9316:44;18515:56;16082:2495;;;;;;:::o;18864:287::-;19078:3;19063:19;;19091:54;19067:9;19127:6;15435:10;15427:5;15421:12;15417:29;15412:3;15405:42;15508:10;15500:4;15493:5;15489:16;15483:23;15479:40;15472:4;15467:3;15463:14;15456:64;15581:10;15573:4;15566:5;15562:16;15556:23;15552:40;15545:4;15540:3;15536:14;15529:64;15654:10;15646:4;15639:5;15635:16;15629:23;15625:40;15618:4;15613:3;15609:14;15602:64;15727:10;15719:4;15712:5;15708:16;15702:23;15698:40;15691:4;15686:3;15682:14;15675:64;;;15334:411;20141:265;20214:9;;;20245;;20262:15;;;20256:22;;20242:37;20232:168;;20322:10;20317:3;20313:20;20310:1;20303:31;20357:4;20354:1;20347:15;20385:4;20382:1;20375:15;20411:217;20451:1;20477;20467:132;;20521:10;20516:3;20512:20;20509:1;20502:31;20556:4;20553:1;20546:15;20584:4;20581:1;20574:15;20467:132;-1:-1:-1;20613:9:184;;20411:217::o;20633:418::-;20782:2;20771:9;20764:21;20745:4;20814:6;20808:13;20857:6;20852:2;20841:9;20837:18;20830:34;20916:6;20911:2;20903:6;20899:15;20894:2;20883:9;20879:18;20873:50;20972:1;20967:2;20958:6;20947:9;20943:22;20939:31;20932:42;21042:2;21035;21031:7;21026:2;21018:6;21014:15;21010:29;20999:9;20995:45;20991:54;20983:62;;;20633:418;;;;:::o;21056:297::-;21174:12;;21221:4;21210:16;;;21204:23;;21174:12;21239:16;;21236:111;;;-1:-1:-1;;21313:4:184;21309:17;;;;21306:1;21302:25;21298:38;21287:50;;21056:297;-1:-1:-1;21056:297:184:o;22623:301::-;22752:3;22790:6;22784:13;22836:6;22829:4;22821:6;22817:17;22812:3;22806:37;22898:1;22862:16;;22887:13;;;-1:-1:-1;22862:16:184;22623:301;-1:-1:-1;22623:301:184:o;22929:230::-;22999:6;23052:2;23040:9;23031:7;23027:23;23023:32;23020:52;;;23068:1;23065;23058:12;23020:52;-1:-1:-1;23113:16:184;;22929:230;-1:-1:-1;22929:230:184:o;24249:266::-;11940:25754:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{"src/core/libraries/rollup/AttesterExitExtLib.sol":{"AttesterExitExtLib":[{"start":9853,"length":20},{"start":10110,"length":20},{"start":10294,"length":20},{"start":12131,"length":20}]},"src/core/libraries/rollup/EpochProofExtLib.sol":{"EpochProofExtLib":[{"start":10386,"length":20}]},"src/core/libraries/rollup/RewardExtLib.sol":{"RewardExtLib":[{"start":2193,"length":20},{"start":2403,"length":20},{"start":9729,"length":20},{"start":9981,"length":20},{"start":10215,"length":20},{"start":11289,"length":20},{"start":11356,"length":20},{"start":11747,"length":20},{"start":11856,"length":20},{"start":12076,"length":20},{"start":12201,"length":20}]},"src/core/libraries/rollup/RollupOperationsExtLib.sol":{"RollupOperationsExtLib":[{"start":9328,"length":20},{"start":11195,"length":20}]},"src/core/libraries/rollup/SlasherDeploymentExtLib.sol":{"SlasherDeploymentExtLib":[{"start":1755,"length":20}]},"src/core/libraries/rollup/ValidatorOperationsExtLib.sol":{"ValidatorOperationsExtLib":[{"start":607,"length":20},{"start":9091,"length":20},{"start":9207,"length":20},{"start":9474,"length":20},{"start":9586,"length":20},{"start":9785,"length":20},{"start":10031,"length":20},{"start":10173,"length":20},{"start":10947,"length":20},{"start":10996,"length":20},{"start":11405,"length":20},{"start":11516,"length":20},{"start":11611,"length":20},{"start":11954,"length":20},{"start":11990,"length":20},{"start":12258,"length":20},{"start":12338,"length":20},{"start":12457,"length":20}]}}},"deployedBytecode":{"object":"0x608060405234801561000f575f5ffd5b506004361061023f575f3560e01c806384b0196e11610135578063d768df6e116100b4578063e6e2844011610079578063e6e28440146104af578063eb80a094146104c2578063ee3b8dc2146104d5578063f2fde38b146104e8578063f85494de146104fb575f5ffd5b8063d768df6e1461045b578063e199c0591461046e578063e3380b7914610481578063e521cb9214610489578063e6208d151461049c575f5ffd5b8063ae8655c4116100fa578063ae8655c414610407578063ae8955811461041a578063af584dd31461042d578063c2cac49d14610440578063c7523d7914610448575f5ffd5b806384b0196e146103b05780638da5cb5b146103cb57806390a3b386146103e45780639f2b3154146103ec578063a2429e88146103f4575f5ffd5b806345e2dc40116101c157806365e50a3e1161018657806365e50a3e1461034e5780636902c67b14610361578063715018a6146103745780637468582f1461037c57806379ed8ead14610389575f5ffd5b806345e2dc40146102fa57806348b5de181461030d578063508ac49b146103205780635c8a32f6146103285780635de4c42e1461033b575f5ffd5b80631b34c564116102075780631b34c564146102b15780631d934975146102c4578063214c0693146102cc57806323f4448f146102df5780632eb5af0a146102f2575f5ffd5b80630121b93f1461024357806302fb4d85146102585780630a883a991461028057806310073ff01461029357806310a2aa55146102a9575b5f5ffd5b6102566102513660046114c6565b61050e565b005b61026b6102663660046114f8565b610571565b60405190151581526020015b60405180910390f35b61025661028e3660046116e1565b6105fe565b61029b6106a0565b604051908152602001610277565b610256610711565b6102566102bf3660046117d7565b61076b565b6102566107c4565b61029b6102da36600461182b565b61080d565b6102566102ed36600461189a565b610887565b6102566108c6565b6102566103083660046118b3565b610910565b61025661031b36600461189a565b610947565b610256610986565b61025661033636600461182b565b6109c8565b6102566103493660046118cc565b610a31565b61025661035c36600461190a565b610c1e565b61025661036f3660046119bd565b610c86565b610256610cfb565b60045461026b9060ff1681565b61029b7f000000000000000000000000000000000000000000000000000000000000000081565b6103b8610d0e565b6040516102779796959493929190611a94565b6002546001600160a01b03166040516102779190611b2a565b61029b610d50565b610256610d5a565b6102566104023660046114c6565b610d9c565b610256610415366004611b3e565b610ddc565b610256610428366004611bf2565b610e1f565b61025661043b366004611c65565b610e8e565b610256610efa565b61029b61045636600461189a565b610f3c565b61029b610469366004611cd0565b610fe0565b61025661047c3660046114c6565b61103d565b610256611075565b61025661049736600461189a565b6110b7565b6102566104aa36600461189a565b6110f5565b6102566104bd3660046114c6565b61112c565b6102566104d036600461189a565b61116c565b61026b6104e3366004611d73565b6111ab565b6102566104f636600461189a565b6111f5565b61025661050936600461189a565b61123b565b604051630121b93f60e01b81526004810182905273__$2f4de12ba25591d19e66da7de316af4ec1$__90630121b93f906024015b5f6040518083038186803b158015610558575f5ffd5b505af415801561056a573d5f5f3e3d5ffd5b5050505050565b6040516302fb4d8560e01b81526001600160a01b0383166004820152602481018290525f9073__$2f4de12ba25591d19e66da7de316af4ec1$__906302fb4d85906044015b602060405180830381865af41580156105d1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105f59190611da4565b90505b92915050565b60048054604051634abd1af560e01b815273__$ff9fdf790a39e6d4e381889ed2aba2987d$__92634abd1af59261066b928c928c928c928c928c928c928c9260ff909216917f00000000000000000000000000000000000000000000000000000000000000009101611f1b565b5f6040518083038186803b158015610681575f5ffd5b505af4158015610693573d5f5f3e3d5ffd5b5050505050505050505050565b5f73__$2f4de12ba25591d19e66da7de316af4ec1$__6310073ff06040518163ffffffff1660e01b8152600401602060405180830381865af41580156106e8573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070c9190611ff4565b905090565b73__$2f4de12ba25591d19e66da7de316af4ec1$__6310a2aa556040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b505af4158015610765573d5f5f3e3d5ffd5b50505050565b610773611272565b604051638841c46760e01b8152815163ffffffff16600482015260208201516001600160601b0316602482015273__$026f237c3e389f77c9869c62a75f74ed46$__90638841c46790604401610542565b60405163e199c05960e01b81525f19600482015273__$2f4de12ba25591d19e66da7de316af4ec1$__9063e199c059906024015f6040518083038186803b158015610753575f5ffd5b60405163069a2ae160e11b81525f9073__$54376d545bb0cf37abaed04a5a4768fa07$__90630d3455c290610848908690869060040161203d565b602060405180830381865af4158015610863573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105f59190611ff4565b61088f611272565b60405163d400325360e01b815273__$026f237c3e389f77c9869c62a75f74ed46$__9063d400325390610542908490600401611b2a565b6108ce611272565b73__$2f4de12ba25591d19e66da7de316af4ec1$__632eb5af0a6040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b60405163d306a97560e01b815273__$54376d545bb0cf37abaed04a5a4768fa07$__9063d306a97590610542908490600401612074565b61094f611272565b604051630916bbc360e31b815273__$2f4de12ba25591d19e66da7de316af4ec1$__906348b5de1890610542908490600401611b2a565b73__$026f237c3e389f77c9869c62a75f74ed46$__63508ac49b6040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b6040516319d947ab60e31b815273__$54376d545bb0cf37abaed04a5a4768fa07$__9063ceca3d5890610a01908590859060040161203d565b5f6040518083038186803b158015610a17575f5ffd5b505af4158015610a29573d5f5f3e3d5ffd5b505050505050565b73__$908808037e8813018a35142aa945c7c277$__63d25e9de382610c0160408051610100810182525f80825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e08101919091526040518061010001604052807f000000000000000000000000000000000000000000000000000000000000000081526020017f000000000000000000000000000000000000000000000000000000000000000081526020017f000000000000000000000000000000000000000000000000000000000000000063ffffffff1681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316815250905090565b6040518363ffffffff1660e01b8152600401610542929190612316565b610c26611272565b604080516347817b3960e11b81528251600482015260208301516024820152908201516044820152606082015160648201526080820151608482015273__$2f4de12ba25591d19e66da7de316af4ec1$__90638f02f6729060a401610542565b604051630f0ec5ad60e41b815273__$2f4de12ba25591d19e66da7de316af4ec1$__9063f0ec5ad090610cc790899089908990899089908990600401612420565b5f6040518083038186803b158015610cdd575f5ffd5b505af4158015610cef573d5f5f3e3d5ffd5b50505050505050505050565b610d03611272565b610d0c5f61129f565b565b5f6060805f5f5f6060610d1f6112f0565b610d2761131c565b604080515f80825260208201909252600f60f81b9b939a50919850469750309650945092509050565b5f61070c42611349565b73__$ff9fdf790a39e6d4e381889ed2aba2987d$__639f2b31546040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b610da4611272565b604051633b45d94560e21b81526004810182905273__$026f237c3e389f77c9869c62a75f74ed46$__9063ed17651490602401610542565b610de4611272565b60405163a4f40ee960e01b815261ffff8216600482015273__$026f237c3e389f77c9869c62a75f74ed46$__9063a4f40ee990602401610542565b60405163029553b560e21b815273__$2f4de12ba25591d19e66da7de316af4ec1$__90630a554ed490610e5c9087908790879087906004016124d4565b5f6040518083038186803b158015610e72575f5ffd5b505af4158015610e84573d5f5f3e3d5ffd5b5050505050505050565b6040516333ab76ab60e01b815273__$2f4de12ba25591d19e66da7de316af4ec1$__906333ab76ab90610ec990869086908690600401612510565b5f6040518083038186803b158015610edf575f5ffd5b505af4158015610ef1573d5f5f3e3d5ffd5b50505050505050565b73__$2f4de12ba25591d19e66da7de316af4ec1$__63c2cac49d6040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b604051635e5fafb360e01b81526001600160a01b0380831660048301527f00000000000000000000000000000000000000000000000000000000000000001660248201525f9073__$026f237c3e389f77c9869c62a75f74ed46$__90635e5fafb390604401602060405180830381865af4158015610fbc573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105f89190611ff4565b604051631c2dc80960e11b81525f9073__$026f237c3e389f77c9869c62a75f74ed46$__9063385b90129061084890869086907f00000000000000000000000000000000000000000000000000000000000000009060040161253a565b60405163e199c05960e01b81526004810182905273__$2f4de12ba25591d19e66da7de316af4ec1$__9063e199c05990602401610542565b73__$2f4de12ba25591d19e66da7de316af4ec1$__63e3380b796040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b6110bf611272565b604051623be8ff60e71b815273__$026f237c3e389f77c9869c62a75f74ed46$__90631df47f8090610542908490600401611b2a565b60405163e6208d1560e01b815273__$54376d545bb0cf37abaed04a5a4768fa07$__9063e6208d1590610542908490600401611b2a565b611134611272565b60405163039b8a1160e61b81526004810182905273__$026f237c3e389f77c9869c62a75f74ed46$__9063e6e2844090602401610542565b611174611272565b604051633ae0282560e21b815273__$2f4de12ba25591d19e66da7de316af4ec1$__9063eb80a09490610542908490600401611b2a565b60405163771dc6e160e11b81526001600160a01b038084166004830152821660248201525f9073__$2f4de12ba25591d19e66da7de316af4ec1$__9063ee3b8dc2906044016105b6565b6111fd611272565b6001600160a01b03811661122f575f604051631e4fbdf760e01b81526004016112269190611b2a565b60405180910390fd5b6112388161129f565b50565b604051637c2a4a6f60e11b815273__$2f4de12ba25591d19e66da7de316af4ec1$__9063f85494de90610542908490600401611b2a565b6002546001600160a01b03163314610d0c573360405163118cdaa760e01b81526004016112269190611b2a565b600280546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b606061070c7f00000000000000000000000000000000000000000000000000000000000000005f6113b9565b606061070c7f000000000000000000000000000000000000000000000000000000000000000060016113b9565b5f7fbba4a4d3c3eeb229c4f06863ce3d3d8cddab9e4dee538d785fc67e2ed9d68cad6003015460405163ec6e69db60e01b8152306004820152602481018490526001600160a01b039091169063ec6e69db90604401602060405180830381865afa158015610fbc573d5f5f3e3d5ffd5b606060ff83146113d3576113cc83611462565b90506105f8565b8180546113df906125a4565b80601f016020809104026020016040519081016040528092919081815260200182805461140b906125a4565b80156114565780601f1061142d57610100808354040283529160200191611456565b820191905f5260205f20905b81548152906001019060200180831161143957829003601f168201915b505050505090506105f8565b60605f61146e8361149f565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f60ff8216601f8111156105f857604051632cd44ac360e21b815260040160405180910390fd5b5f602082840312156114d6575f5ffd5b5035919050565b80356001600160a01b03811681146114f3575f5ffd5b919050565b5f5f60408385031215611509575f5ffd5b611512836114dd565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b604080519081016001600160401b038111828210171561155657611556611520565b60405290565b604051608081016001600160401b038111828210171561155657611556611520565b604051601f8201601f191681016001600160401b03811182821017156115a6576115a6611520565b604052919050565b5f82601f8301126115bd575f5ffd5b81356001600160401b038111156115d6576115d6611520565b6115e9601f8201601f191660200161157e565b8181528460208386010111156115fd575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f60408284031215611629575f5ffd5b611631611534565b905081356001600160401b03811115611648575f5ffd5b611654848285016115ae565b82525060208201356001600160401b0381111561166f575f5ffd5b61167b848285016115ae565b60208301525092915050565b5f60608284031215611697575f5ffd5b50919050565b5f5f83601f8401126116ad575f5ffd5b5081356001600160401b038111156116c3575f5ffd5b6020830191508360208285010111156116da575f5ffd5b9250929050565b5f5f5f5f5f5f5f8789036102c08112156116f9575f5ffd5b610200811215611707575f5ffd5b508796506102008801356001600160401b03811115611724575f5ffd5b6117308a828b01611619565b9650506102208801356001600160401b0381111561174c575f5ffd5b8801601f81018a1361175c575f5ffd5b80356001600160401b03811115611771575f5ffd5b8a60208260051b8401011115611785575f5ffd5b6020919091019550935061179d896102408a01611687565b92506102a08801356001600160401b038111156117b8575f5ffd5b6117c48a828b0161169d565b989b979a50959850939692959293505050565b5f60408284031280156117e8575f5ffd5b506117f1611534565b823563ffffffff81168114611804575f5ffd5b815260208301356001600160601b038116811461181f575f5ffd5b60208201529392505050565b5f5f6020838503121561183c575f5ffd5b82356001600160401b03811115611851575f5ffd5b8301601f81018513611861575f5ffd5b80356001600160401b03811115611876575f5ffd5b85602060a08302840101111561188a575f5ffd5b6020919091019590945092505050565b5f602082840312156118aa575f5ffd5b6105f5826114dd565b5f60a08284031280156118c4575f5ffd5b509092915050565b5f602082840312156118dc575f5ffd5b81356001600160401b038111156118f1575f5ffd5b82016101a08185031215611903575f5ffd5b9392505050565b5f60a082840312801561191b575f5ffd5b5060405160a081016001600160401b038111828210171561193e5761193e611520565b604090815283358252602080850135908301528381013590820152606080840135908201526080928301359281019290925250919050565b5f60408284031215611986575f5ffd5b61198e611534565b823581526020928301359281019290925250919050565b8015158114611238575f5ffd5b80356114f3816119a5565b5f5f5f5f5f5f8688036101608112156119d4575f5ffd5b6119dd886114dd565b96506119eb602089016114dd565b95506119fa8960408a01611976565b94506080607f1982011215611a0d575f5ffd5b50611a1661155c565b6080880135815260a0880135602082015260c0880135604082015260e088013560608201529250611a4b886101008901611976565b9150611a5a61014088016119b2565b90509295509295509295565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b60ff60f81b8816815260e060208201525f611ab260e0830189611a66565b8281036040840152611ac48189611a66565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b81811015611b19578351835260209384019390920191600101611afb565b50909b9a5050505050505050505050565b6001600160a01b0391909116815260200190565b5f60208284031215611b4e575f5ffd5b813561ffff81168114611903575f5ffd5b5f6001600160401b03821115611b7757611b77611520565b5060051b60200190565b5f82601f830112611b90575f5ffd5b8135611ba3611b9e82611b5f565b61157e565b8082825260208201915060208360051b860101925085831115611bc4575f5ffd5b602085015b83811015611be857611bda816114dd565b835260209283019201611bc9565b5095945050505050565b5f5f5f5f60808587031215611c05575f5ffd5b8435935060208501356001600160401b03811115611c21575f5ffd5b611c2d87828801611619565b93505060408501356001600160401b03811115611c48575f5ffd5b611c5487828801611b81565b949793965093946060013593505050565b5f5f5f60608486031215611c77575f5ffd5b8335925060208401356001600160401b03811115611c93575f5ffd5b611c9f86828701611619565b92505060408401356001600160401b03811115611cba575f5ffd5b611cc686828701611b81565b9150509250925092565b5f5f60408385031215611ce1575f5ffd5b611cea836114dd565b915060208301356001600160401b03811115611d04575f5ffd5b8301601f81018513611d14575f5ffd5b8035611d22611b9e82611b5f565b8082825260208201915060208360051b850101925087831115611d43575f5ffd5b6020840193505b82841015611d65578335825260209384019390910190611d4a565b809450505050509250929050565b5f5f60408385031215611d84575f5ffd5b611d8d836114dd565b9150611d9b602084016114dd565b90509250929050565b5f60208284031215611db4575f5ffd5b8151611903816119a5565b80356001600160801b03811681146114f3575f5ffd5b6001600160801b03611de682611dbf565b1682526001600160801b03611dfd60208301611dbf565b1660208301525050565b803582526020808201359083015260408082013590830152606080820135908301526080808201359083015260a0808201359083015260c08082013590830152611e5360e082016114dd565b6001600160a01b031660e08301526101008181013590830152611e7d610120808401908301611dd5565b610160818101359083015261018090810135910152565b5f815160408452611ea86040850182611a66565b905060208301518482036020860152611ec18282611a66565b95945050505050565b803560ff8116808214611edb575f5ffd5b83525060208181013590830152604090810135910152565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b893581526020808b0135908201525f611f3a6040808401908d01611e07565b6101e08b810135908301526103006102008301819052611f5c9083018b611e94565b82810361022084015288815289906020015f805b8b811015611f9e576001600160a01b03611f89856114dd565b16835260209384019390920191600101611f70565b50611faf905061024085018a611eca565b8381036102a0850152611fc381888a611ef3565b92505050611fd66102c083018515159052565b6001600160a01b0383166102e08301529a9950505050505050505050565b5f60208284031215612004575f5ffd5b5051919050565b6001600160a01b0361201c826114dd565b168252602081810135908301526120396040808401908301611eca565b5050565b602080825281018290525f8360408301825b85811015611be857612061828461200b565b60a092830192919091019060010161204f565b60a081016105f8828461200b565b80358252602080820135908301526040808201359083015260608082013590830152608080820135908301526001600160a01b036120c260a083016114dd565b1660a08301525050565b5f5f8335601e198436030181126120e1575f5ffd5b83016020810192503590506001600160401b038111156120ff575f5ffd5b8060061b36038213156116da575f5ffd5b8183526020830192505f815f5b84811015612155576001600160a01b03612136836114dd565b168652602082810135908701526040958601959091019060010161211d565b5093949350505050565b5f5f8335601e19843603018112612174575f5ffd5b83016020810192503590506001600160401b03811115612192575f5ffd5b6101a0810236038213156116da575f5ffd5b8183526020830192505f815f5b84811015612155576121c38683611e07565b6101a09586019591909101906001016121b1565b5f8235603e198336030181126121eb575f5ffd5b90910192915050565b5f5f8335601e19843603018112612209575f5ffd5b83016020810192503590506001600160401b03811115612227575f5ffd5b8036038213156116da575f5ffd5b5f61224082836121f4565b60408552612252604086018284611ef3565b91505061226260208401846121f4565b8583036020870152612275838284611ef3565b9695505050505050565b805182526020810151602083015263ffffffff604082015116604083015260018060a01b03606082015116606083015260018060a01b03608082015116608083015260a08101516122db60a08401826001600160a01b03169052565b5060c08101516122f660c08401826001600160a01b03169052565b5060e081015161231160e08401826001600160a01b03169052565b505050565b61012080825283359082015260208301356101408201525f61233f610160830160408601612082565b61234d6101008501856120cc565b6101a06102208501526123656102c085018284612110565b91505061237661012086018661215f565b84830361011f190161024086015261238f8382846121a4565b925050506123a16101408601866121d7565b83820361011f19016102608501526123b98282612235565b9150506123ca6101608601866121f4565b84830361011f19016102808601526123e3838284611ef3565b925050506123f56101808601866121f4565b84830361011f19016102a086015261240e838284611ef3565b9350505050611903602083018461227f565b6001600160a01b038781168252861660208201526101608101612450604083018780518252602090810151910152565b8451608083015260208086015160a0840152604086015160c0840152606086015160e08401528451610100840152840151610120830152821515610140830152979650505050505050565b5f8151808452602084019350602083015f5b828110156121555781516001600160a01b03168652602095860195909101906001016124ad565b848152608060208201525f6124ec6080830186611e94565b82810360408401526124fe818661249b565b91505082606083015295945050505050565b838152606060208201525f6125286060830185611e94565b8281036040840152612275818561249b565b6001600160a01b03841681526060602080830182905284519183018290525f91908501906080840190835b81811015612583578351835260209384019390920191600101612565565b50506001600160a01b03949094166040939093019290925250909392505050565b600181811c908216806125b857607f821691505b60208210810361169757634e487b7160e01b5f52602260045260245ffdfea2646970667358221220ae673b042a419c17549c5d6a2c2c028d46412038630a60e3fd6711ff138849d764736f6c634300081e0033","sourceMap":"11940:25754:74:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23856:121;;;;;;:::i;:::-;;:::i;:::-;;29086:167;;;;;;:::i;:::-;;:::i;:::-;;;989:14:184;;982:22;964:41;;952:2;937:18;29086:167:74;;;;;;;;31219:402;;;;;;:::i;:::-;;:::i;35975:155::-;;;:::i;:::-;;;5206:25:184;;;5194:2;5179:18;35975:155:74;5060:177:184;19858:119:74;;;:::i;17398:147::-;;;;;;:::i;:::-;;:::i;25630:130::-;;;:::i;28127:274::-;;;;;;:::i;:::-;;:::i;18073:168::-;;;;;;:::i;:::-;;:::i;19497:125::-;;;:::i;27056:227::-;;;;;;:::i;:::-;;:::i;22289:164::-;;;;;;:::i;:::-;;:::i;35589:107::-;;;:::i;27552:215::-;;;;;;:::i;:::-;;:::i;30152:177::-;;;;;;:::i;:::-;;:::i;21586:181::-;;;;;;:::i;:::-;;:::i;24750:397::-;;;;;;:::i;:::-;;:::i;2293:101:35:-;;;:::i;13328:28:74:-;;;;;;;;;12383:44;;;;;5144:557:58;;;:::i;:::-;;;;;;;;;;;;;:::i;1638:85:35:-;1710:6;;-1:-1:-1;;;;;1710:6:35;1638:85;;;;;;:::i;36344:171:74:-;;;:::i;29616:89::-;;;:::i;20226:171::-;;;;;;:::i;:::-;;:::i;20791:::-;;;;;;:::i;:::-;;:::i;32215:330::-;;;;;;:::i;:::-;;:::i;33079:308::-;;;;;;:::i;:::-;;:::i;35137:124::-;;;:::i;22754:173::-;;;;;;:::i;:::-;;:::i;23340:214::-;;;;;;:::i;:::-;;:::i;25493:133::-;;;;;;:::i;:::-;;:::i;34661:114::-;;;:::i;21179:156::-;;;;;;:::i;:::-;;:::i;26608:154::-;;;;;;:::i;:::-;;:::i;18626:141::-;;;;;;:::i;:::-;;:::i;19260:147::-;;;;;;:::i;:::-;;:::i;26193:195::-;;;;;;:::i;:::-;;:::i;2543:215:35:-;;;;;;:::i;:::-;;:::i;28642:141:74:-;;;;;;:::i;:::-;;:::i;23856:121::-;23929:43;;-1:-1:-1;;;23929:43:74;;;;;5206:25:184;;;23929::74;;:30;;5179:18:184;;23929:43:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23856:121;:::o;29086:167::-;29197:51;;-1:-1:-1;;;29197:51:74;;-1:-1:-1;;;;;16842:32:184;;29197:51:74;;;16824::184;16891:18;;;16884:34;;;29178:4:74;;29197:25;;:31;;16797:18:184;;29197:51:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;29190:58;;29086:167;;;;;:::o;31219:402::-;31594:9;;;31478:138;;-1:-1:-1;;;31478:138:74;;:22;;:30;;:138;;31516:5;;31523:13;;31538:8;;;;31548:32;;31582:10;;;;31594:9;;;;;31605:5;;31478:138;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;31219:402;;;;;;;:::o;35975:155::-;36053:7;36075:25;:48;:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;36068:57;;35975:155;:::o;19858:119::-;19926:25;:44;:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19858:119::o;17398:147::-;1531:13:35;:11;:13::i;:::-;17506:34:74::1;::::0;-1:-1:-1;;;17506:34:74;;22433:13:184;;22448:10;22429:30;17506:34:74::1;::::0;::::1;22411:49:184::0;22520:4;22508:17;;22502:24;-1:-1:-1;;;;;22498:57:184;22476:20;;;22469:87;17506:12:74::1;::::0;:25:::1;::::0;22384:18:184;;17506:34:74::1;22181:381:184::0;25630:130:74;25695:60;;-1:-1:-1;;;25695:60:74;;-1:-1:-1;;25695:60:74;;;5206:25:184;25695::74;;:41;;5179:18:184;;25695:60:74;;;;;;;;;;;;;;;;;;28127:274;28320:76;;-1:-1:-1;;;28320:76:74;;28284:19;;28320:18;;:59;;:76;;28380:15;;;;28320:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;18073:168::-;1531:13:35;:11;:13::i;:::-;18179:57:74::1;::::0;-1:-1:-1;;;18179:57:74;;:12:::1;::::0;:44:::1;::::0;:57:::1;::::0;18224:11;;18179:57:::1;;;:::i;19497:125::-:0;1531:13:35;:11;:13::i;:::-;19573:25:74::1;:42;:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27056:227:::0;27204:74;;-1:-1:-1;;;27204:74:74;;:18;;:58;;:74;;27263:14;;27204:74;;;:::i;22289:164::-;1531:13:35;:11;:13::i;:::-;22394:54:74::1;::::0;-1:-1:-1;;;22394:54:74;;:25:::1;::::0;:40:::1;::::0;:54:::1;::::0;22435:12;;22394:54:::1;;;:::i;35589:107::-:0;35656:12;:33;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27552:215;27695:67;;-1:-1:-1;;;27695:67:74;;:18;;:50;;:67;;27746:15;;;;27695:67;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27552:215;;:::o;30152:177::-;30260:16;:37;30298:5;30305:18;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;37400:287:74;;;;;;;;37433:12;37400:287;;;;37476:23;37400:287;;;;37516:7;37400:287;;;;;;37541:9;-1:-1:-1;;;;;37400:287:74;;;;;37574:16;-1:-1:-1;;;;;37400:287:74;;;;;37618:20;-1:-1:-1;;;;;37400:287:74;;;;;37653:5;-1:-1:-1;;;;;37400:287:74;;;;;37674:6;-1:-1:-1;;;;;37400:287:74;;;;37393:294;;37307:385;;30305:18;30260:64;;;;;;;;;;;;;;;;:::i;21586:181::-;1531:13:35;:11;:13::i;:::-;21703:59:74::1;::::0;;-1:-1:-1;;;21703:59:74;;31569:13:184;;21703:59:74::1;::::0;::::1;31551:32:184::0;31639:4;31627:17;;31621:24;31599:20;;;31592:54;31690:17;;;31684:24;31662:20;;;31655:54;31765:4;31753:17;;31747:24;31725:20;;;31718:54;31828:4;31816:17;;31810:24;31788:20;;;31781:54;21703:25:74::1;::::0;:50:::1;::::0;31523:19:184;;21703:59:74::1;31322:519:184::0;24750:397:74;24998:144;;-1:-1:-1;;;24998:144:74;;:25;;:33;;:144;;25039:9;;25050:11;;25063:14;;25079;;25095:18;;25115:21;;24998:144;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24750:397;;;;;;:::o;2293:101:35:-;1531:13;:11;:13::i;:::-;2357:30:::1;2384:1;2357:18;:30::i;:::-;2293:101::o:0;5144:557:58:-;5242:13;5269:18;5301:21;5336:15;5365:25;5404:12;5430:27;5533:13;:11;:13::i;:::-;5560:16;:14;:16::i;:::-;5668;;;5652:1;5668:16;;;;;;;;;-1:-1:-1;;;5482:212:58;;;-1:-1:-1;5482:212:58;;-1:-1:-1;5590:13:58;;-1:-1:-1;5625:4:58;;-1:-1:-1;5652:1:58;-1:-1:-1;5668:16:58;-1:-1:-1;5482:212:58;-1:-1:-1;5144:557:58:o;36344:171:74:-;36422:7;36444:66;36493:15;36444:33;:66::i;29616:89::-;29670:22;:28;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20226:171;1531:13:35;:11;:13::i;:::-;20334:58:74::1;::::0;-1:-1:-1;;;20334:58:74;;::::1;::::0;::::1;5206:25:184::0;;;20334:12:74::1;::::0;:37:::1;::::0;5179:18:184;;20334:58:74::1;5060:177:184::0;20791:171:74;1531:13:35;:11;:13::i;:::-;20898:59:74::1;::::0;-1:-1:-1;;;20898:59:74;;33401:6:184;33389:19;;20898:59:74::1;::::0;::::1;33371:38:184::0;20898:12:74::1;::::0;:36:::1;::::0;33344:18:184;;20898:59:74::1;33219:196:184::0;32215:330:74;32429:111;;-1:-1:-1;;;32429:111:74;;:25;;:50;;:111;;32480:17;;32499:13;;32514:10;;32526:13;;32429:111;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;32215:330;;;;:::o;33079:308::-;33276:106;;-1:-1:-1;;;33276:106:74;;:25;;:60;;:106;;33337:17;;33356:13;;33371:10;;33276:106;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;33079:308;;;:::o;35137:124::-;35212:25;:42;:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22754:173;22866:56;;-1:-1:-1;;;22866:56:74;;-1:-1:-1;;;;;35340:32:184;;;22866:56:74;;;35322:51:184;22912:9:74;35409:32:184;35389:18;;;35382:60;22844:7:74;;22866:12;;:34;;35295:18:184;;22866:56:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;23340:214::-;23487:62;;-1:-1:-1;;;23487:62:74;;23463:7;;23487:12;;:31;;:62;;23519:9;;23530:7;;23539:9;;23487:62;;;:::i;25493:133::-;25572:49;;-1:-1:-1;;;25572:49:74;;;;;5206:25:184;;;25572::74;;:41;;5179:18:184;;25572:49:74;5060:177:184;34661:114:74;34732:25;:36;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21179:156;1531:13:35;:11;:13::i;:::-;21279:51:74::1;::::0;-1:-1:-1;;;21279:51:74;;:12:::1;::::0;:39:::1;::::0;:51:::1;::::0;21319:10;;21279:51:::1;;;:::i;26608:154::-:0;26701:56;;-1:-1:-1;;;26701:56:74;;:18;;:45;;:56;;26747:9;;26701:56;;;:::i;18626:141::-;1531:13:35;:11;:13::i;:::-;18720:42:74::1;::::0;-1:-1:-1;;;18720:42:74;;::::1;::::0;::::1;5206:25:184::0;;;18720:12:74::1;::::0;:29:::1;::::0;5179:18:184;;18720:42:74::1;5060:177:184::0;19260:147:74;1531:13:35;:11;:13::i;:::-;19351:51:74::1;::::0;-1:-1:-1;;;19351:51:74;;:25:::1;::::0;:41:::1;::::0;:51:::1;::::0;19393:8;;19351:51:::1;;;:::i;26193:195::-:0;26318:65;;-1:-1:-1;;;26318:65:74;;-1:-1:-1;;;;;35340:32:184;;;26318:65:74;;;35322:51:184;35409:32;;35389:18;;;35382:60;26299:4:74;;26318:25;;:42;;35295:18:184;;26318:65:74;35124:324:184;2543:215:35;1531:13;:11;:13::i;:::-;-1:-1:-1;;;;;2627:22:35;::::1;2623:91;;2700:1;2672:31;;-1:-1:-1::0;;;2672:31:35::1;;;;;;;;:::i;:::-;;;;;;;;2623:91;2723:28;2742:8;2723:18;:28::i;:::-;2543:215:::0;:::o;28642:141:74:-;28725:53;;-1:-1:-1;;;28725:53:74;;:25;;:42;;:53;;28768:9;;28725:53;;;:::i;1796:162:35:-;1710:6;;-1:-1:-1;;;;;1710:6:35;735:10:48;1855:23:35;1851:101;;735:10:48;1901:40:35;;-1:-1:-1;;;1901:40:35;;;;;;;;:::i;2912:187::-;3004:6;;;-1:-1:-1;;;;;3020:17:35;;;-1:-1:-1;;;;;;3020:17:35;;;;;;;3052:40;;3004:6;;;3020:17;3004:6;;3052:40;;2985:16;;3052:40;2975:124;2912:187;:::o;6021:126:58:-;6067:13;6099:41;:5;6126:13;6099:26;:41::i;6473:135::-;6522:13;6554:47;:8;6584:16;6554:29;:47::i;31805:170:119:-;31882:7;5862:39;31904:16;;;:66;;-1:-1:-1;;;31904:66:119;;31952:4;31904:66;;;16824:51:184;16891:18;;;16884:34;;;-1:-1:-1;;;;;31904:16:119;;;;:39;;16797:18:184;;31904:66:119;;;;;;;;;;;;;;;;;;;;;;3358:267:52;3452:13;1390:66;3481:46;;3477:142;;3550:15;3559:5;3550:8;:15::i;:::-;3543:22;;;;3477:142;3603:5;3596:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2078:378;2137:13;2162:11;2176:16;2187:4;2176:10;:16::i;:::-;2300:14;;;2311:2;2300:14;;;;;;;;;2162:30;;-1:-1:-1;2280:17:52;;2300:14;;;;;;;;;-1:-1:-1;;;2363:16:52;;;-1:-1:-1;2408:4:52;2399:14;;2392:28;;;;-1:-1:-1;2363:16:52;2078:378::o;2528:245::-;2589:7;2661:4;2625:40;;2688:2;2679:11;;2675:69;;;2713:20;;-1:-1:-1;;;2713:20:52;;;;;;;;;;;14:226:184;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;187:23:184;;14:226;-1:-1:-1;14:226:184:o;245:173::-;313:20;;-1:-1:-1;;;;;362:31:184;;352:42;;342:70;;408:1;405;398:12;342:70;245:173;;;:::o;423:300::-;491:6;499;552:2;540:9;531:7;527:23;523:32;520:52;;;568:1;565;558:12;520:52;591:29;610:9;591:29;:::i;:::-;581:39;689:2;674:18;;;;661:32;;-1:-1:-1;;;423:300:184:o;1016:127::-;1077:10;1072:3;1068:20;1065:1;1058:31;1108:4;1105:1;1098:15;1132:4;1129:1;1122:15;1148:257;1220:4;1214:11;;;1252:17;;-1:-1:-1;;;;;1284:34:184;;1320:22;;;1281:62;1278:88;;;1346:18;;:::i;:::-;1382:4;1375:24;1148:257;:::o;1410:252::-;1482:2;1476:9;1524:3;1512:16;;-1:-1:-1;;;;;1543:34:184;;1579:22;;;1540:62;1537:88;;;1605:18;;:::i;1667:275::-;1738:2;1732:9;1803:2;1784:13;;-1:-1:-1;;1780:27:184;1768:40;;-1:-1:-1;;;;;1823:34:184;;1859:22;;;1820:62;1817:88;;;1885:18;;:::i;:::-;1921:2;1914:22;1667:275;;-1:-1:-1;1667:275:184:o;1947:558::-;1989:5;2042:3;2035:4;2027:6;2023:17;2019:27;2009:55;;2060:1;2057;2050:12;2009:55;2100:6;2087:20;-1:-1:-1;;;;;2122:6:184;2119:30;2116:56;;;2152:18;;:::i;:::-;2196:59;2243:2;2220:17;;-1:-1:-1;;2216:31:184;2249:4;2212:42;2196:59;:::i;:::-;2280:6;2271:7;2264:23;2334:3;2327:4;2318:6;2310;2306:19;2302:30;2299:39;2296:59;;;2351:1;2348;2341:12;2296:59;2416:6;2409:4;2401:6;2397:17;2390:4;2381:7;2377:18;2364:59;2472:1;2443:20;;;2465:4;2439:31;2432:42;;;;2447:7;1947:558;-1:-1:-1;;;1947:558:184:o;2510:556::-;2578:5;2626:4;2614:9;2609:3;2605:19;2601:30;2598:50;;;2644:1;2641;2634:12;2598:50;2666:22;;:::i;:::-;2657:31;;2724:9;2711:23;-1:-1:-1;;;;;2749:6:184;2746:30;2743:50;;;2789:1;2786;2779:12;2743:50;2816:45;2857:3;2848:6;2837:9;2833:22;2816:45;:::i;:::-;2809:5;2802:60;;2915:2;2904:9;2900:18;2887:32;-1:-1:-1;;;;;2934:8:184;2931:32;2928:52;;;2976:1;2973;2966:12;2928:52;3012:47;3055:3;3044:8;3033:9;3029:24;3012:47;:::i;:::-;3007:2;3000:5;2996:14;2989:71;;2510:556;;;;:::o;3071:157::-;3133:5;3178:2;3169:6;3164:3;3160:16;3156:25;3153:45;;;3194:1;3191;3184:12;3153:45;-1:-1:-1;3216:6:184;3071:157;-1:-1:-1;3071:157:184:o;3233:347::-;3284:8;3294:6;3348:3;3341:4;3333:6;3329:17;3325:27;3315:55;;3366:1;3363;3356:12;3315:55;-1:-1:-1;3389:20:184;;-1:-1:-1;;;;;3421:30:184;;3418:50;;;3464:1;3461;3454:12;3418:50;3501:4;3493:6;3489:17;3477:29;;3553:3;3546:4;3537:6;3529;3525:19;3521:30;3518:39;3515:59;;;3570:1;3567;3560:12;3515:59;3233:347;;;;;:::o;3585:1470::-;3821:6;3829;3837;3845;3853;3861;3869;3913:9;3904:7;3900:23;3943:3;3939:2;3935:12;3932:32;;;3960:1;3957;3950:12;3932:32;3984:3;3980:2;3976:12;3973:32;;;4001:1;3998;3991:12;3973:32;;4024:9;4014:19;;4084:3;4073:9;4069:19;4056:33;-1:-1:-1;;;;;4104:6:184;4101:30;4098:50;;;4144:1;4141;4134:12;4098:50;4167:72;4231:7;4222:6;4211:9;4207:22;4167:72;:::i;:::-;4157:82;;;4292:3;4281:9;4277:19;4264:33;-1:-1:-1;;;;;4312:8:184;4309:32;4306:52;;;4354:1;4351;4344:12;4306:52;4377:24;;4432:4;4424:13;;4420:27;-1:-1:-1;4410:55:184;;4461:1;4458;4451:12;4410:55;4501:2;4488:16;-1:-1:-1;;;;;4519:6:184;4516:30;4513:50;;;4559:1;4556;4549:12;4513:50;4614:7;4607:4;4597:6;4594:1;4590:14;4586:2;4582:23;4578:34;4575:47;4572:67;;;4635:1;4632;4625:12;4572:67;4666:4;4658:13;;;;;-1:-1:-1;4690:6:184;-1:-1:-1;4715:66:184;4773:7;4767:3;4752:19;;4715:66;:::i;:::-;4705:76;;4834:3;4823:9;4819:19;4806:33;-1:-1:-1;;;;;4854:8:184;4851:32;4848:52;;;4896:1;4893;4886:12;4848:52;4935:60;4987:7;4976:8;4965:9;4961:24;4935:60;:::i;:::-;3585:1470;;;;-1:-1:-1;3585:1470:184;;-1:-1:-1;3585:1470:184;;;;4909:86;;-1:-1:-1;;;3585:1470:184:o;5242:619::-;5339:6;5399:2;5387:9;5378:7;5374:23;5370:32;5414:2;5411:22;;;5429:1;5426;5419:12;5411:22;-1:-1:-1;5471:22:184;;:::i;:::-;5530:9;5517:23;5584:10;5575:7;5571:24;5562:7;5559:37;5549:65;;5610:1;5607;5600:12;5549:65;5623:22;;5697:2;5682:18;;5669:32;-1:-1:-1;;;;;5732:40:184;;5720:53;;5710:81;;5787:1;5784;5777:12;5710:81;5818:2;5807:14;;5800:31;5811:5;5242:619;-1:-1:-1;;;5242:619:184:o;5866:659::-;5998:6;6006;6059:2;6047:9;6038:7;6034:23;6030:32;6027:52;;;6075:1;6072;6065:12;6027:52;6115:9;6102:23;-1:-1:-1;;;;;6140:6:184;6137:30;6134:50;;;6180:1;6177;6170:12;6134:50;6203:22;;6256:4;6248:13;;6244:27;-1:-1:-1;6234:55:184;;6285:1;6282;6275:12;6234:55;6325:2;6312:16;-1:-1:-1;;;;;6343:6:184;6340:30;6337:50;;;6383:1;6380;6373:12;6337:50;6439:7;6434:2;6426:4;6418:6;6414:17;6410:2;6406:26;6402:35;6399:48;6396:68;;;6460:1;6457;6450:12;6396:68;6491:2;6483:11;;;;;6513:6;;-1:-1:-1;5866:659:184;-1:-1:-1;;;5866:659:184:o;6530:186::-;6589:6;6642:2;6630:9;6621:7;6617:23;6613:32;6610:52;;;6658:1;6655;6648:12;6610:52;6681:29;6700:9;6681:29;:::i;6721:250::-;6826:6;6886:3;6874:9;6865:7;6861:23;6857:33;6902:2;6899:22;;;6917:1;6914;6907:12;6899:22;-1:-1:-1;6956:9:184;;6721:250;-1:-1:-1;;6721:250:184:o;6976:405::-;7080:6;7133:2;7121:9;7112:7;7108:23;7104:32;7101:52;;;7149:1;7146;7139:12;7101:52;7189:9;7176:23;-1:-1:-1;;;;;7214:6:184;7211:30;7208:50;;;7254:1;7251;7244:12;7208:50;7277:22;;7333:3;7315:16;;;7311:26;7308:46;;;7350:1;7347;7340:12;7308:46;7373:2;6976:405;-1:-1:-1;;;6976:405:184:o;7386:1029::-;7482:6;7542:3;7530:9;7521:7;7517:23;7513:33;7558:2;7555:22;;;7573:1;7570;7563:12;7555:22;-1:-1:-1;7642:2:184;7636:9;7684:3;7672:16;;-1:-1:-1;;;;;7703:34:184;;7739:22;;;7700:62;7697:88;;;7765:18;;:::i;:::-;7801:2;7794:22;;;7857:23;;7889:21;;7983:2;7968:18;;;7955:32;8003:15;;;7996:32;8086:18;;;8073:32;8121:15;;;8114:32;8219:2;8204:18;;;8191:32;8239:15;;;8232:32;8337:3;8322:19;;;8309:33;8358:16;;;8351:33;;;;-1:-1:-1;7896:6:184;7386:1029;-1:-1:-1;7386:1029:184:o;8420:386::-;8474:5;8522:4;8510:9;8505:3;8501:19;8497:30;8494:50;;;8540:1;8537;8530:12;8494:50;8562:22;;:::i;:::-;8629:23;;8661:22;;8756:2;8741:18;;;8728:32;8776:14;;;8769:31;;;;-1:-1:-1;8553:31:184;8420:386;-1:-1:-1;8420:386:184:o;8811:118::-;8897:5;8890:13;8883:21;8876:5;8873:32;8863:60;;8919:1;8916;8909:12;8934:128;8999:20;;9028:28;8999:20;9028:28;:::i;9067:1217::-;9249:6;9257;9265;9273;9281;9289;9333:9;9324:7;9320:23;9363:3;9359:2;9355:12;9352:32;;;9380:1;9377;9370:12;9352:32;9403:29;9422:9;9403:29;:::i;:::-;9393:39;;9451:38;9485:2;9474:9;9470:18;9451:38;:::i;:::-;9441:48;;9508:54;9554:7;9549:2;9538:9;9534:18;9508:54;:::i;:::-;9498:64;-1:-1:-1;9597:3:184;-1:-1:-1;;9578:17:184;;9574:27;9571:47;;;9614:1;9611;9604:12;9571:47;;9640:22;;:::i;:::-;9735:3;9720:19;;9707:33;9749:22;;9844:3;9829:19;;9816:33;9876:2;9865:14;;9858:31;9962:3;9947:19;;9934:33;9994:2;9983:14;;9976:31;10080:3;10065:19;;10052:33;10112:2;10101:14;;10094:31;9756:5;-1:-1:-1;10168:55:184;10215:7;10209:3;10194:19;;10168:55;:::i;:::-;10158:65;;10242:36;10273:3;10262:9;10258:19;10242:36;:::i;:::-;10232:46;;9067:1217;;;;;;;;:::o;10289:289::-;10331:3;10369:5;10363:12;10396:6;10391:3;10384:19;10452:6;10445:4;10438:5;10434:16;10427:4;10422:3;10418:14;10412:47;10504:1;10497:4;10488:6;10483:3;10479:16;10475:27;10468:38;10567:4;10560:2;10556:7;10551:2;10543:6;10539:15;10535:29;10530:3;10526:39;10522:50;10515:57;;;10289:289;;;;:::o;10692:1238::-;11098:3;11093;11089:13;11081:6;11077:26;11066:9;11059:45;11140:3;11135:2;11124:9;11120:18;11113:31;11040:4;11167:46;11208:3;11197:9;11193:19;11185:6;11167:46;:::i;:::-;11261:9;11253:6;11249:22;11244:2;11233:9;11229:18;11222:50;11295:33;11321:6;11313;11295:33;:::i;:::-;11359:2;11344:18;;11337:34;;;-1:-1:-1;;;;;11408:32:184;;11402:3;11387:19;;11380:61;11428:3;11457:19;;11450:35;;;11522:22;;;11516:3;11501:19;;11494:51;11594:13;;11616:22;;;11666:2;11692:15;;;;-1:-1:-1;11654:15:184;;;;-1:-1:-1;11735:169:184;11749:6;11746:1;11743:13;11735:169;;;11810:13;;11798:26;;11853:2;11879:15;;;;11844:12;;;;11771:1;11764:9;11735:169;;;-1:-1:-1;11921:3:184;;10692:1238;-1:-1:-1;;;;;;;;;;;10692:1238:184:o;11935:203::-;-1:-1:-1;;;;;12099:32:184;;;;12081:51;;12069:2;12054:18;;11935:203::o;12404:272::-;12462:6;12515:2;12503:9;12494:7;12490:23;12486:32;12483:52;;;12531:1;12528;12521:12;12483:52;12570:9;12557:23;12620:6;12613:5;12609:18;12602:5;12599:29;12589:57;;12642:1;12639;12632:12;12681:183;12741:4;-1:-1:-1;;;;;12766:6:184;12763:30;12760:56;;;12796:18;;:::i;:::-;-1:-1:-1;12841:1:184;12837:14;12853:4;12833:25;;12681:183::o;12869:675::-;12923:5;12976:3;12969:4;12961:6;12957:17;12953:27;12943:55;;12994:1;12991;12984:12;12943:55;13034:6;13021:20;13061:64;13077:47;13117:6;13077:47;:::i;:::-;13061:64;:::i;:::-;13149:3;13173:6;13168:3;13161:19;13205:4;13200:3;13196:14;13189:21;;13266:4;13256:6;13253:1;13249:14;13241:6;13237:27;13233:38;13219:52;;13294:3;13286:6;13283:15;13280:35;;;13311:1;13308;13301:12;13280:35;13347:4;13339:6;13335:17;13361:152;13377:6;13372:3;13369:15;13361:152;;;13445:23;13464:3;13445:23;:::i;:::-;13433:36;;13498:4;13489:14;;;;13394;13361:152;;;-1:-1:-1;13531:7:184;12869:675;-1:-1:-1;;;;;12869:675:184:o;13549:851::-;13700:6;13708;13716;13724;13777:3;13765:9;13756:7;13752:23;13748:33;13745:53;;;13794:1;13791;13784:12;13745:53;13839:23;;;-1:-1:-1;13937:2:184;13922:18;;13909:32;-1:-1:-1;;;;;13953:30:184;;13950:50;;;13996:1;13993;13986:12;13950:50;14019:72;14083:7;14074:6;14063:9;14059:22;14019:72;:::i;:::-;14009:82;;;14144:2;14133:9;14129:18;14116:32;-1:-1:-1;;;;;14163:8:184;14160:32;14157:52;;;14205:1;14202;14195:12;14157:52;14228:63;14283:7;14272:8;14261:9;14257:24;14228:63;:::i;:::-;13549:851;;;;-1:-1:-1;14218:73:184;;14364:2;14349:18;14336:32;;-1:-1:-1;;;13549:851:184:o;14405:730::-;14547:6;14555;14563;14616:2;14604:9;14595:7;14591:23;14587:32;14584:52;;;14632:1;14629;14622:12;14584:52;14677:23;;;-1:-1:-1;14775:2:184;14760:18;;14747:32;-1:-1:-1;;;;;14791:30:184;;14788:50;;;14834:1;14831;14824:12;14788:50;14857:72;14921:7;14912:6;14901:9;14897:22;14857:72;:::i;:::-;14847:82;;;14982:2;14971:9;14967:18;14954:32;-1:-1:-1;;;;;15001:8:184;14998:32;14995:52;;;15043:1;15040;15033:12;14995:52;15066:63;15121:7;15110:8;15099:9;15095:24;15066:63;:::i;:::-;15056:73;;;14405:730;;;;;:::o;15140:1042::-;15261:6;15269;15322:2;15310:9;15301:7;15297:23;15293:32;15290:52;;;15338:1;15335;15328:12;15290:52;15361:29;15380:9;15361:29;:::i;:::-;15351:39;;15441:2;15430:9;15426:18;15413:32;-1:-1:-1;;;;;15460:6:184;15457:30;15454:50;;;15500:1;15497;15490:12;15454:50;15523:22;;15576:4;15568:13;;15564:27;-1:-1:-1;15554:55:184;;15605:1;15602;15595:12;15554:55;15645:2;15632:16;15668:64;15684:47;15724:6;15684:47;:::i;15668:64::-;15754:3;15778:6;15773:3;15766:19;15810:2;15805:3;15801:12;15794:19;;15865:2;15855:6;15852:1;15848:14;15844:2;15840:23;15836:32;15822:46;;15891:7;15883:6;15880:19;15877:39;;;15912:1;15909;15902:12;15877:39;15944:2;15940;15936:11;15925:22;;15956:196;15972:6;15967:3;15964:15;15956:196;;;16062:17;;16092:18;;16139:2;15989:12;;;;16130;;;;15956:196;;;16171:5;16161:15;;;;;;15140:1042;;;;;:::o;16187:260::-;16255:6;16263;16316:2;16304:9;16295:7;16291:23;16287:32;16284:52;;;16332:1;16329;16322:12;16284:52;16355:29;16374:9;16355:29;:::i;:::-;16345:39;;16403:38;16437:2;16426:9;16422:18;16403:38;:::i;:::-;16393:48;;16187:260;;;;;:::o;16929:245::-;16996:6;17049:2;17037:9;17028:7;17024:23;17020:32;17017:52;;;17065:1;17062;17055:12;17017:52;17097:9;17091:16;17116:28;17138:5;17116:28;:::i;17179:173::-;17247:20;;-1:-1:-1;;;;;17296:31:184;;17286:42;;17276:70;;17342:1;17339;17332:12;17357:235;-1:-1:-1;;;;;17443:25:184;17462:5;17443:25;:::i;:::-;17439:51;17427:64;;-1:-1:-1;;;;;17527:36:184;17557:4;17546:16;;17527:36;:::i;:::-;17523:62;17516:4;17511:3;17507:14;17500:86;;;17357:235::o;17597:1420::-;17710:19;;17738:20;;17827:4;17816:16;;;17803:30;17849:14;;;17842:31;17942:4;17931:16;;;17918:30;17964:14;;;17957:31;18057:4;18046:16;;;18033:30;18079:14;;;18072:31;18172:4;18161:16;;;18148:30;18194:14;;;18187:31;18287:4;18276:16;;;18263:30;18309:14;;;18302:31;18402:4;18391:16;;;18378:30;18424:14;;;18417:31;18477:36;18507:4;18496:16;;18477:36;:::i;:::-;-1:-1:-1;;;;;10649:31:184;18564:4;18555:14;;10637:44;18639:6;18628:18;;;18615:32;18663:16;;;18656:33;18698:72;18762:6;18753:16;;;;18733:18;;18698:72;:::i;:::-;18839:6;18828:18;;;18815:32;18863:16;;;18856:33;18960:6;18949:18;;;18936:32;18984:16;;18977:34;17597:1420::o;19022:370::-;19086:3;19130:5;19124:12;19157:4;19152:3;19145:17;19183:47;19224:4;19219:3;19215:14;19201:12;19183:47;:::i;:::-;19171:59;;19278:4;19271:5;19267:16;19261:23;19326:3;19320:4;19316:14;19309:4;19304:3;19300:14;19293:38;19347:39;19381:4;19365:14;19347:39;:::i;:::-;19340:46;19022:370;-1:-1:-1;;;;;19022:370:184:o;19397:455::-;19497:5;19484:19;19535:4;19526:7;19522:18;19571:2;19562:7;19559:15;19549:43;;19588:1;19585;19578:12;19549:43;19601:15;;-1:-1:-1;19685:4:184;19674:16;;;19661:30;19707:14;;;19700:31;19800:4;19789:16;;;19776:30;19822:14;;19815:31;19397:455::o;19857:266::-;19945:6;19940:3;19933:19;19997:6;19990:5;19983:4;19978:3;19974:14;19961:43;-1:-1:-1;20049:1:184;20024:16;;;20042:4;20020:27;;;20013:38;;;;20105:2;20084:15;;;-1:-1:-1;;20080:29:184;20071:39;;;20067:50;;19857:266::o;20128:1859::-;20747:20;;20776:24;;20863:4;20851:17;;;20838:31;20816:20;;;20809:61;20696:4;20879:82;20955:4;20940:20;;;;20921:17;;20879:82;:::i;:::-;21031:6;21019:19;;;21006:33;21055:22;;;21048:39;21124:3;21118;21103:19;;21096:32;;;21151:68;;21199:19;;21191:6;21151:68;:::i;:::-;21256:22;;;21250:3;21235:19;;21228:51;21335:22;;;21413:6;;21385:4;21373:17;21325:1;;21447:212;21461:6;21458:1;21455:13;21447:212;;;-1:-1:-1;;;;;21526:26:184;21545:6;21526:26;:::i;:::-;21522:52;21510:65;;21604:4;21632:17;;;;21595:14;;;;21483:1;21476:9;21447:212;;;-1:-1:-1;21687:65:184;;-1:-1:-1;21747:3:184;21732:19;;21724:6;21687:65;:::i;:::-;21798:9;21793:3;21789:19;21783:3;21772:9;21768:19;21761:48;21826:46;21868:3;21860:6;21852;21826:46;:::i;:::-;21818:54;;;;21881:44;21920:3;21909:9;21905:19;21897:6;798:13;791:21;779:34;;728:91;21881:44;-1:-1:-1;;;;;10649:31:184;;21976:3;21961:19;;10637:44;20128:1859;;;;;;;;;;;;:::o;21992:184::-;22062:6;22115:2;22103:9;22094:7;22090:23;22086:32;22083:52;;;22131:1;22128;22121:12;22083:52;-1:-1:-1;22154:16:184;;21992:184;-1:-1:-1;21992:184:184:o;22567:352::-;-1:-1:-1;;;;;22671:25:184;22690:5;22671:25;:::i;:::-;22667:51;22655:64;;22788:4;22777:16;;;22764:30;22810:14;;;22803:31;22843:70;22907:4;22898:14;;;;22880:16;;22843:70;:::i;:::-;22567:352;;:::o;22924:717::-;23222:2;23234:21;;;23207:18;;23290:22;;;23174:4;23369:6;23343:2;23328:18;;23174:4;23403:212;23417:6;23414:1;23411:13;23403:212;;;23466:65;23527:3;23519:6;23466:65;:::i;:::-;23560:4;23588:17;;;;23551:14;;;;;23439:1;23432:9;23403:212;;23862:322;24094:3;24079:19;;24107:71;24083:9;24160:6;24107:71;:::i;24189:723::-;24303:19;;24331:20;;24420:4;24409:16;;;24396:30;24442:14;;;24435:31;24535:4;24524:16;;;24511:30;24557:14;;;24550:31;24650:4;24639:16;;;24626:30;24672:14;;;24665:31;24765:4;24754:16;;;24741:30;24787:14;;;24780:31;-1:-1:-1;;;;;24847:36:184;24893:3;24866:16;;24847:36;:::i;:::-;24843:62;24836:4;24831:3;24827:14;24820:86;24189:723;;:::o;24917:549::-;25016:5;25023:6;25083:3;25070:17;25169:2;25165:7;25154:8;25138:14;25134:29;25130:43;25110:18;25106:68;25096:96;;25188:1;25185;25178:12;25096:96;25216:33;;25320:4;25307:18;;;-1:-1:-1;25268:21:184;;-1:-1:-1;;;;;;25337:30:184;;25334:50;;;25380:1;25377;25370:12;25334:50;25434:6;25431:1;25427:14;25411;25407:35;25400:5;25396:47;25393:67;;;25456:1;25453;25446:12;25471:587;25600:6;25595:3;25588:19;25632:4;25627:3;25623:14;25616:21;;25570:3;25660:5;25683:1;25693:340;25707:6;25704:1;25701:13;25693:340;;;-1:-1:-1;;;;;25772:26:184;25791:6;25772:26;:::i;:::-;25768:52;25756:65;;25899:4;25887:17;;;25874:31;25925:14;;;25918:31;25978:4;25969:14;;;;26006:17;;;;25729:1;25722:9;25693:340;;;-1:-1:-1;26049:3:184;;25471:587;-1:-1:-1;;;;25471:587:184:o;26063:548::-;26156:5;26163:6;26223:3;26210:17;26309:2;26305:7;26294:8;26278:14;26274:29;26270:43;26250:18;26246:68;26236:96;;26328:1;26325;26318:12;26236:96;26356:33;;26460:4;26447:18;;;-1:-1:-1;26408:21:184;;-1:-1:-1;;;;;;26477:30:184;;26474:50;;;26520:1;26517;26510:12;26474:50;26579:6;26571;26567:19;26551:14;26547:40;26540:5;26536:52;26533:72;;;26601:1;26598;26591:12;26616:446;26739:6;26734:3;26727:19;26771:4;26766:3;26762:14;26755:21;;26709:3;26799:5;26822:1;26832:205;26846:6;26843:1;26840:13;26832:205;;;26895:54;26945:3;26937:6;26895:54;:::i;:::-;26978:6;26969:16;;;;27008:19;;;;;26868:1;26861:9;26832:205;;27067:306;27148:5;27207:3;27194:17;27293:2;27289:7;27278:8;27262:14;27258:29;27254:43;27234:18;27230:68;27220:96;;27312:1;27309;27302:12;27220:96;27334:33;;;;27067:306;-1:-1:-1;;27067:306:184:o;27378:500::-;27436:5;27443:6;27503:3;27490:17;27589:2;27585:7;27574:8;27558:14;27554:29;27550:43;27530:18;27526:68;27516:96;;27608:1;27605;27598:12;27516:96;27636:33;;27740:4;27727:18;;;-1:-1:-1;27688:21:184;;-1:-1:-1;;;;;;27757:30:184;;27754:50;;;27800:1;27797;27790:12;27754:50;27847:6;27831:14;27827:27;27820:5;27816:39;27813:59;;;27868:1;27865;27858:12;27883:519;27956:3;28008:44;28046:5;28039;28008:44;:::i;:::-;28073:4;28068:3;28061:17;28099:69;28162:4;28157:3;28153:14;28139:12;28125;28099:69;:::i;:::-;28087:81;;;28215:55;28264:4;28257:5;28253:16;28246:5;28215:55;:::i;:::-;28312:3;28306:4;28302:14;28295:4;28290:3;28286:14;28279:38;28333:63;28391:4;28375:14;28359;28333:63;:::i;:::-;28326:70;27883:519;-1:-1:-1;;;;;;27883:519:184:o;28407:725::-;28491:5;28485:12;28480:3;28473:25;28547:4;28540:5;28536:16;28530:23;28523:4;28518:3;28514:14;28507:47;28615:10;28607:4;28600:5;28596:16;28590:23;28586:40;28579:4;28574:3;28570:14;28563:64;28705:1;28701;28696:3;28692:11;28688:19;28680:4;28673:5;28669:16;28663:23;28659:49;28652:4;28647:3;28643:14;28636:73;28787:1;28783;28778:3;28774:11;28770:19;28762:4;28755:5;28751:16;28745:23;28741:49;28734:4;28729:3;28725:14;28718:73;28837:4;28830:5;28826:16;28820:23;28852:48;28894:4;28889:3;28885:14;28871:12;-1:-1:-1;;;;;10649:31:184;10637:44;;10583:104;28852:48;;28948:4;28941:5;28937:16;28931:23;28963:50;29007:4;29002:3;28998:14;28982;-1:-1:-1;;;;;10649:31:184;10637:44;;10583:104;28963:50;;29061:4;29054:5;29050:16;29044:23;29076:50;29120:4;29115:3;29111:14;29095;-1:-1:-1;;;;;10649:31:184;10637:44;;10583:104;29076:50;;28407:725;;:::o;29137:2180::-;29452:3;29434:22;;;29497:20;;29533:19;;;29526:34;29630:4;29618:17;;29605:31;29667:3;29652:19;;29645:36;29415:4;29690:82;29767:3;29752:19;;29745:4;29733:17;;29690:82;:::i;:::-;29815:100;29907:6;29899;29895:19;29887:6;29815:100;:::i;:::-;29952:6;29946:3;29935:9;29931:19;29924:35;29982:115;30092:3;30081:9;30077:19;30063:12;30049;29982:115;:::i;:::-;29968:129;;;30144:91;30230:3;30222:6;30218:16;30210:6;30144:91;:::i;:::-;30276:22;;;-1:-1:-1;;30272:37:184;30266:3;30251:19;;30244:66;30333:100;30280:6;30410:14;30394;30333:100;:::i;:::-;30319:114;;;;30464:79;30538:3;30530:6;30526:16;30518:6;30464:79;:::i;:::-;30584:22;;;-1:-1:-1;;30580:37:184;30574:3;30559:19;;30552:66;30641:72;30588:6;30690:14;30641:72;:::i;:::-;30627:86;;;30760:56;30811:3;30803:6;30799:16;30791:6;30760:56;:::i;:::-;30857:22;;;-1:-1:-1;;30853:37:184;30847:3;30832:19;;30825:66;30914:65;30861:6;30956:14;30940;30914:65;:::i;:::-;30900:79;;;;31026:59;31077:6;31069;31065:19;31057:6;31026:59;:::i;:::-;31126:22;;;-1:-1:-1;;31122:37:184;31116:3;31101:19;;31094:66;31177:65;31130:6;31219:14;31203;31177:65;:::i;:::-;31169:73;;;;;31251:60;31305:4;31294:9;31290:20;31282:6;31251:60;:::i;31999:995::-;-1:-1:-1;;;;;32468:32:184;;;32450:51;;32537:32;;32532:2;32517:18;;32510:60;32437:3;32422:19;;32579:53;32628:2;32613:18;;32605:6;31919:12;;31907:25;;31981:4;31970:16;;;31964:23;31948:14;;31941:47;31846:148;32579:53;32669:13;;32663:3;32648:19;;32641:42;32738:2;32726:15;;;32720:22;32714:3;32699:19;;32692:51;32798:2;32786:15;;32780:22;32774:3;32759:19;;32752:51;32858:4;32846:17;;32840:24;32834:3;32819:19;;32812:53;31919:12;;32923:3;32908:19;;31907:25;31970:16;;31964:23;31948:14;;;31941:47;32979:6;32972:14;32965:22;32959:3;32948:9;32944:19;32937:51;31999:995;;;;;;;;;:::o;33420:446::-;33473:3;33511:5;33505:12;33538:6;33533:3;33526:19;33570:4;33565:3;33561:14;33554:21;;33609:4;33602:5;33598:16;33632:1;33642:199;33656:6;33653:1;33650:13;33642:199;;;33721:13;;-1:-1:-1;;;;;33717:39:184;33705:52;;33786:4;33777:14;;;;33814:17;;;;33753:1;33671:9;33642:199;;33871:658;34222:6;34211:9;34204:25;34265:3;34260:2;34249:9;34245:18;34238:31;34185:4;34292:68;34355:3;34344:9;34340:19;34332:6;34292:68;:::i;:::-;34408:9;34400:6;34396:22;34391:2;34380:9;34376:18;34369:50;34436:44;34473:6;34465;34436:44;:::i;:::-;34428:52;;;34516:6;34511:2;34500:9;34496:18;34489:34;33871:658;;;;;;;:::o;34534:585::-;34857:6;34846:9;34839:25;34900:2;34895;34884:9;34880:18;34873:30;34820:4;34926:67;34989:2;34978:9;34974:18;34966:6;34926:67;:::i;:::-;35041:9;35033:6;35029:22;35024:2;35013:9;35009:18;35002:50;35069:44;35106:6;35098;35069:44;:::i;35453:858::-;-1:-1:-1;;;;;35781:32:184;;35763:51;;35751:2;35845;35830:18;;;35823:30;;;35902:13;;35736:18;;;35924:22;;;35703:4;;36004:15;;;;35977:3;35962:19;;;35703:4;36047:169;36061:6;36058:1;36055:13;36047:169;;;36122:13;;36110:26;;36165:2;36191:15;;;;36156:12;;;;36083:1;36076:9;36047:169;;;-1:-1:-1;;;;;;;36272:32:184;;;;36267:2;36252:18;;;;36245:60;;;;-1:-1:-1;36233:3:184;;35453:858;-1:-1:-1;;;35453:858:184:o;36940:380::-;37019:1;37015:12;;;;37062;;;37083:61;;37137:4;37129:6;37125:17;37115:27;;37083:61;37190:2;37182:6;37179:14;37159:18;37156:38;37153:161;;37236:10;37231:3;37227:20;37224:1;37217:31;37271:4;37268:1;37261:15;37299:4;37296:1;37289:15","linkReferences":{"src/core/libraries/rollup/AttesterExitExtLib.sol":{"AttesterExitExtLib":[{"start":2078,"length":20},{"start":2335,"length":20},{"start":2519,"length":20},{"start":4356,"length":20}]},"src/core/libraries/rollup/EpochProofExtLib.sol":{"EpochProofExtLib":[{"start":2611,"length":20}]},"src/core/libraries/rollup/RewardExtLib.sol":{"RewardExtLib":[{"start":1954,"length":20},{"start":2206,"length":20},{"start":2440,"length":20},{"start":3514,"length":20},{"start":3581,"length":20},{"start":3972,"length":20},{"start":4081,"length":20},{"start":4301,"length":20},{"start":4426,"length":20}]},"src/core/libraries/rollup/RollupOperationsExtLib.sol":{"RollupOperationsExtLib":[{"start":1553,"length":20},{"start":3420,"length":20}]},"src/core/libraries/rollup/ValidatorOperationsExtLib.sol":{"ValidatorOperationsExtLib":[{"start":1316,"length":20},{"start":1432,"length":20},{"start":1699,"length":20},{"start":1811,"length":20},{"start":2010,"length":20},{"start":2256,"length":20},{"start":2398,"length":20},{"start":3172,"length":20},{"start":3221,"length":20},{"start":3630,"length":20},{"start":3741,"length":20},{"start":3836,"length":20},{"start":4179,"length":20},{"start":4215,"length":20},{"start":4483,"length":20},{"start":4563,"length":20},{"start":4682,"length":20}]}},"immutableReferences":{"53365":[{"start":4855,"length":32}],"53368":[{"start":4899,"length":32}],"66706":[{"start":910,"length":32}],"66708":[{"start":2717,"length":32}],"66710":[{"start":2755,"length":32}],"66712":[{"start":2793,"length":32}],"66715":[{"start":2837,"length":32},{"start":3931,"length":32},{"start":4117,"length":32}],"66718":[{"start":2884,"length":32}],"66721":[{"start":2931,"length":32}],"66724":[{"start":1605,"length":32},{"start":2978,"length":32}],"66727":[{"start":3025,"length":32}]}},"methodIdentifiers":{"L1_BLOCK_AT_GENESIS()":"79ed8ead","cancelSetSlasher()":"2eb5af0a","checkBlob()":"7468582f","checkpointRandao()":"c2cac49d","claimProverRewards(address,uint256[])":"d768df6e","claimSequencerRewards(address)":"c7523d79","deposit(address,address,(uint256,uint256),(uint256,uint256,uint256,uint256),(uint256,uint256),bool)":"6902c67b","eip712Domain()":"84b0196e","finalizeSetSlasher()":"10a2aa55","finalizeWithdraw(address)":"f85494de","flushEntryQueue()":"1d934975","flushEntryQueue(uint256)":"e199c059","getActiveAttesterCount()":"90a3b386","getEntryQueueFlushSize()":"10073ff0","initiateWithdraw(address,address)":"ee3b8dc2","initiateWithdrawByAttester(address)":"e6208d15","initiateWithdrawByAttesterBatch((address,uint256,(uint8,bytes32,bytes32))[])":"5c8a32f6","initiateWithdrawByAttesterBatchUpToLimit((address,uint256,(uint8,bytes32,bytes32))[])":"214c0693","initiateWithdrawByAttesterWithSignature((address,uint256,(uint8,bytes32,bytes32)))":"45e2dc40","invalidateBadAttestation(uint256,(bytes,bytes),address[],uint256)":"ae895581","invalidateInsufficientAttestations(uint256,(bytes,bytes),address[])":"af584dd3","owner()":"8da5cb5b","propose((bytes32,(int256),(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256),uint256),(bytes,bytes),address[],(uint8,bytes32,bytes32),bytes)":"0a883a99","prune()":"9f2b3154","queueSetSlasher(address)":"eb80a094","renounceOwnership()":"715018a6","setEscapeHatch(address)":"48b5de18","setProtocolFeeMargin(uint16)":"ae8655c4","setProtocolFeeRecipient(address)":"e521cb92","setProvingCostPerMana(uint256)":"a2429e88","setRewardConfig((uint32,uint96))":"1b34c564","setSequencerRewardCalculator(address)":"23f4448f","setupEpoch()":"e3380b79","slash(address,uint256)":"02fb4d85","submitEpochRootProof((uint256,uint256,(bytes32,bytes32,bytes32,bytes32,bytes32,address),(address,uint256)[],(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256)[],(bytes,bytes),bytes,bytes))":"5de4c42e","transferOwnership(address)":"f2fde38b","updateL1GasFeeOracle()":"508ac49b","updateManaTarget(uint256)":"e6e28440","updateStakingQueueConfig((uint256,uint256,uint256,uint256,uint256))":"65e50a3e","vote(uint256)":"0121b93f"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"_feeAsset\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_stakingAsset\",\"type\":\"address\"},{\"internalType\":\"contract GSE\",\"name\":\"_gse\",\"type\":\"address\"},{\"internalType\":\"contract IVerifier\",\"name\":\"_epochProofVerifier\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_governance\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"vkTreeRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"protocolContractsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"genesisArchiveRoot\",\"type\":\"bytes32\"}],\"internalType\":\"struct GenesisState\",\"name\":\"_genesisState\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"aztecSlotDuration\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"aztecEpochDuration\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"targetCommitteeSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"lagInEpochsForValidatorSet\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"lagInEpochsForRandao\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"aztecProofSubmissionEpochs\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"slashingQuorum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"slashingRoundSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"slashingLifetimeInRounds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"slashingExecutionDelayInRounds\",\"type\":\"uint256\"},{\"internalType\":\"uint256[3]\",\"name\":\"slashAmounts\",\"type\":\"uint256[3]\"},{\"internalType\":\"uint256\",\"name\":\"slashingOffsetInRounds\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"slasherEnabled\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"slashingVetoer\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"slashingDisableDuration\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"manaTarget\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"exitDelaySeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"version\",\"type\":\"uint32\"},{\"internalType\":\"EthValue\",\"name\":\"provingCostPerMana\",\"type\":\"uint256\"},{\"internalType\":\"EthPerFeeAssetE12\",\"name\":\"initialEthPerFeeAsset\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"contract IRewardDistributor\",\"name\":\"rewardDistributor\",\"type\":\"address\"},{\"internalType\":\"Bps\",\"name\":\"sequencerBps\",\"type\":\"uint32\"},{\"internalType\":\"contract IBoosterCore\",\"name\":\"booster\",\"type\":\"address\"},{\"internalType\":\"uint96\",\"name\":\"checkpointReward\",\"type\":\"uint96\"}],\"internalType\":\"struct RewardConfig\",\"name\":\"rewardConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"increment\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"maxScore\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"a\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"minimum\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"k\",\"type\":\"uint32\"}],\"internalType\":\"struct RewardBoostConfig\",\"name\":\"rewardBoostConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"bootstrapValidatorSetSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"bootstrapFlushSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"normalFlushSizeMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"normalFlushSizeQuotient\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxQueueFlushSize\",\"type\":\"uint256\"}],\"internalType\":\"struct StakingQueueConfig\",\"name\":\"stakingQueueConfig\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"localEjectionThreshold\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"ethereumSlotDuration\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"sequencerRewardCalculator\",\"type\":\"address\"}],\"internalType\":\"struct RollupConfigInput\",\"name\":\"_config\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minimum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maximum\",\"type\":\"uint256\"}],\"name\":\"FeeLib__InvalidInitialEthPerFeeAsset\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"maximum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"}],\"name\":\"FeeLib__InvalidManaLimit\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"minimum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"}],\"name\":\"FeeLib__InvalidManaTarget\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maximum\",\"type\":\"uint256\"}],\"name\":\"FeeLib__ProvingCostAboveCeiling\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minimum\",\"type\":\"uint256\"}],\"name\":\"FeeLib__ProvingCostBelowFloor\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidShortString\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"OwnableInvalidOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"OwnableUnauthorizedAccount\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"name\":\"Rollup__FieldElementOutOfRange\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"minimum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"}],\"name\":\"Rollup__InvalidProofSubmissionEpochs\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"bits\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"SafeCastOverflowedUintDowncast\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bootstrapFlushSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxQueueFlushSize\",\"type\":\"uint256\"}],\"name\":\"Staking__BootstrapFlushSizeAboveMax\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"exitDelaySeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"slasherExecutionDelay\",\"type\":\"uint256\"}],\"name\":\"Staking__ExitDelayAboveSlasherDelay\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Staking__InvalidBootstrapFlushSize\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Staking__InvalidMaxQueueFlushSize\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Staking__InvalidNormalFlushSizeQuotient\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Staking__InvalidStakingQueueConfig\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"str\",\"type\":\"string\"}],\"name\":\"StringTooLong\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"checkpointNumber\",\"type\":\"uint256\"}],\"name\":\"CheckpointInvalidated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"checkpointNumber\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"archive\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"versionedBlobHashes\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"payloadDigest\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"attestationsHash\",\"type\":\"bytes32\"}],\"name\":\"CheckpointProposed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"withdrawer\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct G1Point\",\"name\":\"publicKeyInG1\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"x1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y1\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct G2Point\",\"name\":\"publicKeyInG2\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct G1Point\",\"name\":\"proofOfPossession\",\"type\":\"tuple\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Deposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"EIP712DomainChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"escapeHatch\",\"type\":\"address\"}],\"name\":\"EscapeHatchSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"withdrawer\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct G1Point\",\"name\":\"publicKeyInG1\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"x1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y1\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct G2Point\",\"name\":\"publicKeyInG2\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct G1Point\",\"name\":\"proofOfPossession\",\"type\":\"tuple\"}],\"name\":\"FailedDeposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"checkpointNumber\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"proverId\",\"type\":\"address\"}],\"name\":\"L2ProofVerified\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"legacySlasher\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"authorizedUntil\",\"type\":\"uint256\"}],\"name\":\"LegacySlasherAuthorized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"manaTarget\",\"type\":\"uint256\"}],\"name\":\"ManaTargetUpdated\",\"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\":\"slasher\",\"type\":\"address\"}],\"name\":\"PendingSlasherCancelled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"slasher\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"readyAt\",\"type\":\"uint256\"}],\"name\":\"PendingSlasherQueued\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"oldBps\",\"type\":\"uint16\"},{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"newBps\",\"type\":\"uint16\"}],\"name\":\"ProtocolFeeMarginUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"oldRecipient\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newRecipient\",\"type\":\"address\"}],\"name\":\"ProtocolFeeRecipientUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"provenCheckpointNumber\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pendingCheckpointNumber\",\"type\":\"uint256\"}],\"name\":\"PrunedPending\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"Bps\",\"name\":\"sequencerBps\",\"type\":\"uint32\"},{\"internalType\":\"uint96\",\"name\":\"checkpointReward\",\"type\":\"uint96\"}],\"indexed\":false,\"internalType\":\"struct MutableRewardConfig\",\"name\":\"rewardConfig\",\"type\":\"tuple\"}],\"name\":\"RewardConfigUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"oldCalculator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newCalculator\",\"type\":\"address\"}],\"name\":\"SequencerRewardCalculatorUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Slashed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldSlasher\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newSlasher\",\"type\":\"address\"}],\"name\":\"SlasherUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"bootstrapValidatorSetSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"bootstrapFlushSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"normalFlushSizeMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"normalFlushSizeQuotient\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxQueueFlushSize\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct StakingQueueConfig\",\"name\":\"config\",\"type\":\"tuple\"}],\"name\":\"StakingQueueConfigUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"withdrawer\",\"type\":\"address\"}],\"name\":\"ValidatorQueued\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"WithdrawFinalized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"WithdrawInitiated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"withdrawer\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"withdrawalId\",\"type\":\"uint256\"}],\"name\":\"WithdrawInitiatedByAttester\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"L1_BLOCK_AT_GENESIS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cancelSetSlasher\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"checkBlob\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"checkpointRandao\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_coinbase\",\"type\":\"address\"},{\"internalType\":\"Epoch[]\",\"name\":\"_epochs\",\"type\":\"uint256[]\"}],\"name\":\"claimProverRewards\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_coinbase\",\"type\":\"address\"}],\"name\":\"claimSequencerRewards\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_attester\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_withdrawer\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\"}],\"internalType\":\"struct G1Point\",\"name\":\"_publicKeyInG1\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"x1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y1\",\"type\":\"uint256\"}],\"internalType\":\"struct G2Point\",\"name\":\"_publicKeyInG2\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\"}],\"internalType\":\"struct G1Point\",\"name\":\"_proofOfPossession\",\"type\":\"tuple\"},{\"internalType\":\"bool\",\"name\":\"_moveWithLatestRollup\",\"type\":\"bool\"}],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"eip712Domain\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"fields\",\"type\":\"bytes1\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"version\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"verifyingContract\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"salt\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[]\",\"name\":\"extensions\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizeSetSlasher\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_attester\",\"type\":\"address\"}],\"name\":\"finalizeWithdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"flushEntryQueue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_toAdd\",\"type\":\"uint256\"}],\"name\":\"flushEntryQueue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActiveAttesterCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getEntryQueueFlushSize\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_attester\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_recipient\",\"type\":\"address\"}],\"name\":\"initiateWithdraw\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_attester\",\"type\":\"address\"}],\"name\":\"initiateWithdrawByAttester\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"internalType\":\"struct Signature\",\"name\":\"signature\",\"type\":\"tuple\"}],\"internalType\":\"struct AttesterExitAuthorization[]\",\"name\":\"_authorizations\",\"type\":\"tuple[]\"}],\"name\":\"initiateWithdrawByAttesterBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"internalType\":\"struct Signature\",\"name\":\"signature\",\"type\":\"tuple\"}],\"internalType\":\"struct AttesterExitAuthorization[]\",\"name\":\"_authorizations\",\"type\":\"tuple[]\"}],\"name\":\"initiateWithdrawByAttesterBatchUpToLimit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"exitedCount\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"internalType\":\"struct Signature\",\"name\":\"signature\",\"type\":\"tuple\"}],\"internalType\":\"struct AttesterExitAuthorization\",\"name\":\"_authorization\",\"type\":\"tuple\"}],\"name\":\"initiateWithdrawByAttesterWithSignature\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_checkpointNumber\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"bytes\",\"name\":\"signatureIndices\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signaturesOrAddresses\",\"type\":\"bytes\"}],\"internalType\":\"struct CommitteeAttestations\",\"name\":\"_attestations\",\"type\":\"tuple\"},{\"internalType\":\"address[]\",\"name\":\"_committee\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_invalidIndex\",\"type\":\"uint256\"}],\"name\":\"invalidateBadAttestation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_checkpointNumber\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"bytes\",\"name\":\"signatureIndices\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signaturesOrAddresses\",\"type\":\"bytes\"}],\"internalType\":\"struct CommitteeAttestations\",\"name\":\"_attestations\",\"type\":\"tuple\"},{\"internalType\":\"address[]\",\"name\":\"_committee\",\"type\":\"address[]\"}],\"name\":\"invalidateInsufficientAttestations\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"archive\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"int256\",\"name\":\"feeAssetPriceModifier\",\"type\":\"int256\"}],\"internalType\":\"struct OracleInput\",\"name\":\"oracleInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"lastArchiveRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"blockHeadersHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"blobsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"inboxRollingHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"outHash\",\"type\":\"bytes32\"},{\"internalType\":\"Slot\",\"name\":\"slotNumber\",\"type\":\"uint256\"},{\"internalType\":\"Timestamp\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"coinbase\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"feeRecipient\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"uint128\",\"name\":\"feePerDaGas\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"feePerL2Gas\",\"type\":\"uint128\"}],\"internalType\":\"struct GasFees\",\"name\":\"gasFees\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"totalManaUsed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accumulatedFees\",\"type\":\"uint256\"}],\"internalType\":\"struct ProposedHeader\",\"name\":\"header\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"bucketHint\",\"type\":\"uint256\"}],\"internalType\":\"struct ProposeArgs\",\"name\":\"_args\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes\",\"name\":\"signatureIndices\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signaturesOrAddresses\",\"type\":\"bytes\"}],\"internalType\":\"struct CommitteeAttestations\",\"name\":\"_attestations\",\"type\":\"tuple\"},{\"internalType\":\"address[]\",\"name\":\"_signers\",\"type\":\"address[]\"},{\"components\":[{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"internalType\":\"struct Signature\",\"name\":\"_attestationsAndSignersSignature\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"_blobInput\",\"type\":\"bytes\"}],\"name\":\"propose\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"prune\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_slasher\",\"type\":\"address\"}],\"name\":\"queueSetSlasher\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_escapeHatch\",\"type\":\"address\"}],\"name\":\"setEscapeHatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint16\",\"name\":\"_protocolFeeMarginBps\",\"type\":\"uint16\"}],\"name\":\"setProtocolFeeMargin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_recipient\",\"type\":\"address\"}],\"name\":\"setProtocolFeeRecipient\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"EthValue\",\"name\":\"_provingCostPerMana\",\"type\":\"uint256\"}],\"name\":\"setProvingCostPerMana\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"Bps\",\"name\":\"sequencerBps\",\"type\":\"uint32\"},{\"internalType\":\"uint96\",\"name\":\"checkpointReward\",\"type\":\"uint96\"}],\"internalType\":\"struct MutableRewardConfig\",\"name\":\"_config\",\"type\":\"tuple\"}],\"name\":\"setRewardConfig\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_calculator\",\"type\":\"address\"}],\"name\":\"setSequencerRewardCalculator\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setupEpoch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_attester\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"slash\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"previousArchive\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"endArchive\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"outHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"previousInboxRollingHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"endInboxRollingHash\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"proverId\",\"type\":\"address\"}],\"internalType\":\"struct PublicInputArgs\",\"name\":\"args\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"coinbase\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"accumulatedFees\",\"type\":\"uint256\"}],\"internalType\":\"struct ProvenCheckpointFees[]\",\"name\":\"provenCheckpointFees\",\"type\":\"tuple[]\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"lastArchiveRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"blockHeadersHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"blobsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"inboxRollingHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"outHash\",\"type\":\"bytes32\"},{\"internalType\":\"Slot\",\"name\":\"slotNumber\",\"type\":\"uint256\"},{\"internalType\":\"Timestamp\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"coinbase\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"feeRecipient\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"uint128\",\"name\":\"feePerDaGas\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"feePerL2Gas\",\"type\":\"uint128\"}],\"internalType\":\"struct GasFees\",\"name\":\"gasFees\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"totalManaUsed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accumulatedFees\",\"type\":\"uint256\"}],\"internalType\":\"struct ProposedHeader[]\",\"name\":\"headers\",\"type\":\"tuple[]\"},{\"components\":[{\"internalType\":\"bytes\",\"name\":\"signatureIndices\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signaturesOrAddresses\",\"type\":\"bytes\"}],\"internalType\":\"struct CommitteeAttestations\",\"name\":\"attestations\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"blobInputs\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"proof\",\"type\":\"bytes\"}],\"internalType\":\"struct SubmitEpochRootProofArgs\",\"name\":\"_args\",\"type\":\"tuple\"}],\"name\":\"submitEpochRootProof\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"updateL1GasFeeOracle\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_manaTarget\",\"type\":\"uint256\"}],\"name\":\"updateManaTarget\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"bootstrapValidatorSetSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"bootstrapFlushSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"normalFlushSizeMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"normalFlushSizeQuotient\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxQueueFlushSize\",\"type\":\"uint256\"}],\"internalType\":\"struct StakingQueueConfig\",\"name\":\"_config\",\"type\":\"tuple\"}],\"name\":\"updateStakingQueueConfig\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"vote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"Aztec Labs\",\"details\":\"This is the main contract in the Aztec system that handles: - Checkpoint proposals from sequencers/proposers - Epoch proof submission and verification - Chain pruning and invalidation mechanisms - Validator and committee management - Fee collection and reward distribution The rollup operates on a time-based model: - Time is divided into slots (configurable duration, e.g., 12 seconds) - Slots are grouped into epochs (configurable size, e.g., 32 slots) - Each slot has one designated proposer from the validator set - Each checkpoint is expected to include attestations from committee members - There is one committee per epoch Key invariants: - The L2 chain is linear (no forks) but can be rolled back - New checkpoints must build on the state of the current pending checkpoint - Checkpoints with invalid attestations can be removed via the invalidation mechanism - Unproven checkpoints are pruned if no proof is submitted in timeDue to contract size limitations, not all functionality can be implemented in a single contract, so features are split across multiple ExtRollup external libraries.System Roles 1) Validators: Node operators who have staked the staking asset and actively participate in checkpoint building. They form the pool from which committee members and proposers are selected. 2) Committee Members: Drafted from the validator set and remain stable throughout an epoch. A checkpoint requires >2/3rds of the committee for the epoch to be considered valid. These attestations serve two purposes: - Attest to data availability for transaction data not posted on L1, which is required by provers to generate epoch proofs - Re-execute everything and attest to the resulting state root, acting as training wheels for the public part of the system (proving systems used in public and AVM) 3) Proposers: Drafted from the validator set (currently proposers are part of the committee for the epoch, though this may change). They have exclusive rights to propose a checkpoint at a given slot, ensuring orderly checkpoint production without competition. 4) Provers: Generate validity proofs for the state transitions of checkpoints in an epoch. No need to stake to be a prover. They have access to large amounts of compute.Checkpoint Building Flow Relevant functions: - `propose`: Called by the proposer to submit a new checkpoint - `submitEpochRootProof`: Called by the prover to submit a proof of the epoch's state transitions - `invalidateBadAttestation`: Called to remove checkpoints with invalid attestations - `invalidateInsufficientAttestations`: Called to remove checkpoints with insufficient valid attestations - `prune`: Called to remove unproven checkpoints after the proof submission window has expired - `setupEpoch`: Called to initialize the validator selection for the next epoch The checkpoint building flow is as follows: - At each L2 slot a single proposer is chosen from the validator set who assembles a checkpoint that: - Builds on top of the last pending checkpoint (tips.pending) in the rollup - Includes state transitions, messages, and fee calculations - Is attested by >2/3 of the committee members - The checkpoint is posted to L1 via the `propose` function - The pending chain tip advances to the new checkpoint - State is updated (message trees, archives, etc.) - After the epoch has ended, a prover generates a proof of the valid state transition for a prefix of checkpoints in the epoch - Most often the prefix will be all the checkpoints, but \\\"partial epochs\\\" can also be proven for faster message transmission - The proof is submitted via `submitEpochRootProof` and must be submitted within the configured proof submission window - Upon successful proof submission the proven chain tip advances to the last checkpoint in the proven prefix if it is past the current proven tip, otherwise the tip remain unchanged - It is possible to submit multiple proofs for the same epoch (or prefixes of it) - Provers of longest prefix shares the proving rewards - Proving a checkpoint makes it finalized from the perspective of L1 - This triggers reward and fee accounting for the sequencers and provers of the epoch - And pushes messages to the outbox for L1 processing Unhappy path for invalid attestations: - Attestations in checkpoints are not validated onchain to save gas. Since attestations are still posted to L1, nodes are expected to verify them offchain, and skip a checkpoint if its attestations are invalid. - If a checkpoint has invalid attestation signatures, anyone can call `invalidateBadAttestation()` - If a checkpoint has insufficient valid attestations (<= 2/3 of committee), anyone can call `invalidateInsufficientAttestations()` - While anyone can call invalidation functions, it is expected that the next proposer will do so, and if they fail to do so, then other committee members do, and if they fail to do so, then any validator will do so. - Upon invalidation, the invalid checkpoint and all subsequent checkpoints are removed from the chain, so the pending chain tip reverts to the checkpoint immediately before the invalid one. - Note that only unproven checkpoints can be invalidated, as proven checkpoints are final and cannot be reverted. Unhappy path for missing proofs: - Each epoch has a proof submission window (configured via aztecProofSubmissionEpochs). - If no proof is submitted within the window, it is assumed that the epoch cannot be proven due to missing data, so the entire pending chain all the way back to the last proven checkpoint is pruned. This is done by calling `prune()` manually, or automatically on the next proposal. - The committee for the epoch is expected to disseminate transaction data to allow proving, so a prune is considered a slashable offense, that causes validators to vote for slashing the committee of the unproven epoch. - When the pending chain is pruned, all unproven checkpoints are removed from the pending chain, and the chain resumes from the last proven checkpoint.Slashing Mechanism Slashing is a critical security mechanism that penalizes validators who misbehave or fail to fulfill their duties. Slashing occurs for both safety violations (e.g., invalid attestations) and liveness failures (e.g., missing proofs). The slashing process is governance-based and operates through a signalling mechanism: - When nodes detect validator misbehavior, they create a payload for slashing the offending validators - The payload is submitted to the SlashingProposer contract, which keeps track of signalling rounds - Each checkpoint proposer signals on a slashing payload during their assigned slot - If the payload receives sufficient signals (reaches the configured quorum) within a round, it may be submitted for execution by the Slasher after a configured delay. - The Slasher has a Vetoer specified in the constructor, which can veto the payload if it is deemed to be invalid. - Once submitted to the Slasher, if the payload is not Vetoed, the offending validators are slashed, meaning their staked assets are reduced by the slashing amount - If a validator's stake falls below the minimum required amount due to slashing, they are automatically removed from the validator set Conditions that cause nodes to vote for slashing a validator: 1. Validators that fail to fulfill their duties: - Committee members who fail to attest to checkpoints when required 2. Committee members of an unproven epoch where either: - The data for the epoch is not available - The epoch was provable but no proof was submitted 3. Proposers of invalid checkpoints or committee members who attest to checkpoints built on top of invalid ones: - Proposing checkpoints with invalid state transitions - Proposing checkpoints with invalid attestations - Attesting to checkpoints that build upon known invalid checkpoints (e.g. invalid attestations) - This ensures the integrity of the chain by penalizing those who contribute to invalid checkpoints\",\"errors\":{\"OwnableInvalidOwner(address)\":[{\"details\":\"The owner is not a valid owner account. (eg. `address(0)`)\"}],\"OwnableUnauthorizedAccount(address)\":[{\"details\":\"The caller account is not authorized to perform an operation.\"}],\"SafeCastOverflowedUintDowncast(uint8,uint256)\":[{\"details\":\"Value doesn't fit in an uint of `bits` size.\"}]},\"events\":{\"EIP712DomainChanged()\":{\"details\":\"MAY be emitted to signal that the domain could have changed.\"}},\"kind\":\"dev\",\"methods\":{\"checkpointRandao()\":{\"details\":\"Can be called by anyone. Takes a snapshot of the current randao to ensure unpredictable but deterministic validator selection. Automatically called from setupEpoch. Can be used as a cheaper alternative to `setupEpoch` to update the randao checkpoints.\"},\"claimProverRewards(address,uint256[])\":{\"details\":\"Provers earn rewards for successfully proving epoch transitions. Each epoch can only be claimed once per prover.\",\"params\":{\"_coinbase\":\"The address that has accumulated the rewards - rewards are sent to this address\",\"_epochs\":\"Array of epochs to claim rewards for\"},\"returns\":{\"_0\":\"The total amount of rewards claimed\"}},\"claimSequencerRewards(address)\":{\"details\":\"Transfers all accumulated rewards to the recipient.\",\"params\":{\"_coinbase\":\"The address that has accumulated the rewards - rewards are sent to this address\"},\"returns\":{\"_0\":\"The amount of rewards claimed\"}},\"constructor\":{\"details\":\"Sets up time parameters, deploys auxiliary contracts (slasher, reward booster), initializes staking, validator selection, and creates inbox/outbox contracts\",\"params\":{\"_config\":\"Comprehensive configuration including timing, staking, slashing, reward parameters, and unlock timestamp\",\"_epochProofVerifier\":\"The honk verifier contract for root epoch proofs\",\"_feeAsset\":\"The ERC20 token used for transaction fees\",\"_genesisState\":\"Initial state containing VK tree root, protocol contracts hash, and genesis archive\",\"_governance\":\"The address with owner privileges\",\"_gse\":\"The Governance Staking Escrow contract\",\"_stakingAsset\":\"The ERC20 token used for validator staking\"}},\"deposit(address,address,(uint256,uint256),(uint256,uint256,uint256,uint256),(uint256,uint256),bool)\":{\"details\":\"The caller must have approved the staking asset. Validators enter a queue before becoming active.\",\"params\":{\"_attester\":\"The address that will act as the validator (sign attestations)\",\"_moveWithLatestRollup\":\"Whether to follow the chain if governance migrates to a new rollup version\",\"_proofOfPossession\":\"The proof of possession to show that the keys in G1 and G2 share secret key\",\"_publicKeyInG1\":\"The G1 point for the BLS public key (used for efficient signature verification in GSE)\",\"_publicKeyInG2\":\"The G2 point for the BLS public key (used for BLS aggregation and pairing operations in GSE)\",\"_withdrawer\":\"The address that can withdraw the stake\"}},\"eip712Domain()\":{\"details\":\"See {IERC-5267}.\"},\"finalizeSetSlasher()\":{\"details\":\"Permissionless: the queued payload and the elapsed delay are the authorization. Anyone may poke the transaction through.\"},\"finalizeWithdraw(address)\":{\"details\":\"Can be called by anyone. Transfers the stake to the designated recipient.\",\"params\":{\"_attester\":\"The validator address whose withdrawal to finalize\"}},\"flushEntryQueue(uint256)\":{\"details\":\"Can be called by anyone. The number of validators added is limited by queue configuration. This helps maintain a controlled growth rate of the validator set.\",\"params\":{\"_toAdd\":\"- The max number the caller will try to add\"}},\"getActiveAttesterCount()\":{\"details\":\"Active validators can propose checkpoints and participate in committees\",\"returns\":{\"_0\":\"The count of validators in the active set\"}},\"getEntryQueueFlushSize()\":{\"details\":\"Based on queue configuration and current validator set size. Used by flushEntryQueue.\",\"returns\":{\"_0\":\"The number of validators that can be added in the next flush\"}},\"initiateWithdraw(address,address)\":{\"details\":\"Starts the exit delay period. The validator is immediately removed from the active set. Only the registered withdrawer can initiate withdrawal.\",\"params\":{\"_attester\":\"The validator address to withdraw\",\"_recipient\":\"The address to receive the withdrawn stake\"},\"returns\":{\"_0\":\"True if withdrawal was initiated, false if already initiated\"}},\"initiateWithdrawByAttester(address)\":{\"details\":\"The registered withdrawer retains control of the payout recipient.\",\"params\":{\"_attester\":\"The validator position to exit.\"}},\"initiateWithdrawByAttesterBatch((address,uint256,(uint8,bytes32,bytes32))[])\":{\"details\":\"Shared instance and exit-limit checks are performed once for the whole batch.\",\"params\":{\"_authorizations\":\"The signed exit authorizations to execute atomically.\"}},\"initiateWithdrawByAttesterBatchUpToLimit((address,uint256,(uint8,bytes32,bytes32))[])\":{\"details\":\"Processes a prefix of the array and returns zero when no capacity remains.\",\"params\":{\"_authorizations\":\"The ordered signed exit authorizations.\"},\"returns\":{\"exitedCount\":\"The number of authorizations processed from the start of the array.\"}},\"initiateWithdrawByAttesterWithSignature((address,uint256,(uint8,bytes32,bytes32)))\":{\"details\":\"Anyone may relay the authorization. The registered withdrawer retains control of the payout recipient.\",\"params\":{\"_authorization\":\"The attester, deadline, and signature authorizing the exit.\"}},\"invalidateBadAttestation(uint256,(bytes,bytes),address[],uint256)\":{\"details\":\"Anyone can call this if they detect an invalid signature. This removes the checkpoint and all subsequent checkpoints from the pending chain. Used to maintain pending chain integrity.\",\"params\":{\"_attestations\":\"The attestations that were submitted with the checkpoint\",\"_checkpointNumber\":\"The checkpoint number to invalidate\",\"_committee\":\"The committee members for the checkpoint's epoch\",\"_invalidIndex\":\"The index of the invalid signature in the attestations\"}},\"invalidateInsufficientAttestations(uint256,(bytes,bytes),address[])\":{\"details\":\"Anyone can call this if a checkpoint doesn't meet the required attestation threshold. Even if all signatures are valid, checkpoints need a minimum number of attestations.\",\"params\":{\"_attestations\":\"The attestations that were submitted with the checkpoint\",\"_checkpointNumber\":\"The checkpoint number to invalidate\",\"_committee\":\"The committee members for the checkpoint's epoch\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"propose((bytes32,(int256),(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256),uint256),(bytes,bytes),address[],(uint8,bytes32,bytes32),bytes)\":{\"details\":\"Core function for checkpoint production. The attestations must include a signature from designated proposer to be accepted. The checkpoint must build on the previous checkpoint and include valid attestations from committee members. Failed proposals revert; successful ones emit CheckpointProposed and advance the chain state. See ProposeLib#propose for more details.\",\"params\":{\"_args\":\"checkpoint data including header, state updates, oracle inputs, and archive\",\"_attestations\":\"Aggregated signatures from committee members attesting to checkpoint validity\",\"_blobInput\":\"Blob commitment data for data availability (format: [numBlobs][48-byte commitments...])\",\"_signers\":\"Addresses of committee members who signed (must match attestations)\"}},\"prune()\":{\"details\":\"Can only be called after the proof submission window has expired for an epoch. This maintains liveness by preventing the chain from being stuck on unproven checkpoints. Pruning occurs at epoch boundaries and removes all checkpoints in unproven epochs.\"},\"queueSetSlasher(address)\":{\"details\":\"The zero address is permissible. Setting to this would imply that the rollup has at least temporarily relinquished their ability to slash.\",\"params\":{\"_slasher\":\"The address of the new slasher contract\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"setEscapeHatch(address)\":{\"details\":\"Only callable by owner. The escape hatch provides an alternative block production path when the committee is unavailable. Once set, the address is immutable for the life of the rollup -- there is no replacement path. To launch without an escape hatch, simply never call this function.\",\"params\":{\"_escapeHatch\":\"The address of the EscapeHatch contract (must be non-zero)\"}},\"setProtocolFeeMargin(uint16)\":{\"details\":\"Only callable by owner. Increases are rate-limited (30-day cooldown, x3/2 step on the fee multiplier); decreases are immediate. Setting the current value is a no-op and emits no event.\",\"params\":{\"_protocolFeeMarginBps\":\"The new margin in basis points\"}},\"setProtocolFeeRecipient(address)\":{\"details\":\"Only callable by owner. Rejects the zero address.\",\"params\":{\"_recipient\":\"The new protocol fee recipient\"}},\"setProvingCostPerMana(uint256)\":{\"details\":\"Only callable by owner. This affects how proving costs are calculated in the fee model.\",\"params\":{\"_provingCostPerMana\":\"The cost in ETH per unit of mana for proving\"}},\"setRewardConfig((uint32,uint96))\":{\"details\":\"Only callable by the contract owner. The `rewardDistributor` and `booster` addresses are deliberately NOT exposed by this setter -- they are written exactly once at construction by {_initializeRewards} and immutable thereafter. Rotating either address requires redeploying the rollup via `Registry.addRollup`.\",\"params\":{\"_config\":\"The new mutable reward configuration\"}},\"setSequencerRewardCalculator(address)\":{\"details\":\"Only callable by the contract owner. Any address is accepted: zero disables the calculator, and an address that does not answer like an {ISequencerRewardCalculator} makes every checkpoint receive the default sequencer reward. Emits {IRollupCore.SequencerRewardCalculatorUpdated} with the previous and new addresses.\",\"params\":{\"_calculator\":\"The new calculator, or zero for none\"}},\"setupEpoch()\":{\"details\":\"Can be called by anyone at the start of an epoch. Samples the committee and determines proposers for all slots in the epoch. Also stores a seed that is used for future sampling. The corresponding library functionality is automatically called when `RollupCore.propose(...)` is called (via the `RollupOperationsExtLib.propose(...)` -> `ProposeLib.propose(...)` -> `ValidatorSelectionLib.setupEpoch(...)`). If there are missed proposals then setupEpoch does not get called automatically. Since the next committee selection is computed based on the stored randao and the epoch number, failing to update the randao stored will keep the committee predictable longer into the future. We would only fail to get a fresh randao if: 1. All the proposals in the epoch were missed 2. Nobody called setupEpoch on the Rollup contract While an attacker might theoretically benefit from preventing a fresh seed (e.g. by DoSing all proposers), preventing anyone from calling this function directly is not really feasible. This makes attacks on seed generation impractical.\"},\"slash(address,uint256)\":{\"details\":\"Only callable by the authorized slasher contract. Reduces the validator's stake.\",\"params\":{\"_amount\":\"The amount of stake to slash\",\"_attester\":\"The validator to slash\"},\"returns\":{\"_0\":\"True if slashing was successful\"}},\"submitEpochRootProof((uint256,uint256,(bytes32,bytes32,bytes32,bytes32,bytes32,address),(address,uint256)[],(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256)[],(bytes,bytes),bytes,bytes))\":{\"details\":\"Proves the validity of a prefix of the checkpoints in an epoch. Once proven, checkpoints become final and cannot be pruned. The proof must be submitted within the submission window. Successful submission triggers prover rewards.\",\"params\":{\"_args\":\"Contains the epoch range, public inputs, fees, attestations, and the ZK proof\"}},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"updateL1GasFeeOracle()\":{\"details\":\"Automatically called during checkpoint proposal but can be called manually. Updates the fee model's view of L1 costs to ensure accurate L2 fee pricing. Uses current L1 gas price and blob gas price for calculations.\"},\"updateManaTarget(uint256)\":{\"details\":\"Only callable by owner. The new target must be greater than or equal to the current target to avoid the ability for governance to use it directly to kill an old rollup. Mana is the unit of computational work in Aztec.\",\"params\":{\"_manaTarget\":\"The new target mana per slot\"}},\"updateStakingQueueConfig((uint256,uint256,uint256,uint256,uint256))\":{\"details\":\"Only callable by owner. Controls how validators enter the active set.\",\"params\":{\"_config\":\"New configuration including queue size limits and timing parameters\"}},\"vote(uint256)\":{\"details\":\"This enables the rollup to participate in governance by voting on proposals. See StakingLib.sol for more details on the voting mechanism.\",\"params\":{\"_proposalId\":\"The ID of the proposal to vote on\"}}},\"stateVariables\":{\"L1_BLOCK_AT_GENESIS\":{\"details\":\"Used when synching the node as starting block for event watching\"},\"checkBlob\":{\"details\":\"Always true, gets unset only via state overrides during offchain simulations or in tests\"},\"gap\":{\"details\":\"Storage gap to ensure checkBlob is in its own storage slot\"}},\"title\":\"RollupCore\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"L1_BLOCK_AT_GENESIS()\":{\"notice\":\"The L1 block number when this rollup was deployed\"},\"cancelSetSlasher()\":{\"notice\":\"Cancels the pending slasher replacement. Reverts if nothing is pending.\"},\"checkBlob()\":{\"notice\":\"Flag to enable/disable blob verification during simulations\"},\"checkpointRandao()\":{\"notice\":\"Captures the randao for future validator selection\"},\"claimProverRewards(address,uint256[])\":{\"notice\":\"Claims prover rewards for specified epochs\"},\"claimSequencerRewards(address)\":{\"notice\":\"Claims accumulated rewards for a sequencer (checkpoint proposer)\"},\"constructor\":{\"notice\":\"Initializes the Aztec rollup with all required configurations\"},\"deposit(address,address,(uint256,uint256),(uint256,uint256,uint256,uint256),(uint256,uint256),bool)\":{\"notice\":\"Deposits stake to become a validator\"},\"finalizeSetSlasher()\":{\"notice\":\"Applies the pending slasher replacement once the 60-day delay has elapsed.\"},\"finalizeWithdraw(address)\":{\"notice\":\"Completes a withdrawal after the exit delay has passed\"},\"flushEntryQueue(uint256)\":{\"notice\":\"Processes the validator entry queue to add new validators to the active set\"},\"getActiveAttesterCount()\":{\"notice\":\"Returns the current number of active validators\"},\"getEntryQueueFlushSize()\":{\"notice\":\"Returns the maximum number of validators that can be added from the entry queue\"},\"initiateWithdraw(address,address)\":{\"notice\":\"Initiates withdrawal of a validator's stake\"},\"initiateWithdrawByAttester(address)\":{\"notice\":\"Initiates withdrawal of a validator's stake by the attester\"},\"initiateWithdrawByAttesterBatch((address,uint256,(uint8,bytes32,bytes32))[])\":{\"notice\":\"Initiates multiple attester withdrawals using EIP-712 authorizations.\"},\"initiateWithdrawByAttesterBatchUpToLimit((address,uint256,(uint8,bytes32,bytes32))[])\":{\"notice\":\"Initiates as many authorized attester withdrawals as the current exit limit permits.\"},\"initiateWithdrawByAttesterWithSignature((address,uint256,(uint8,bytes32,bytes32)))\":{\"notice\":\"Initiates an attester withdrawal using an EIP-712 authorization.\"},\"invalidateBadAttestation(uint256,(bytes,bytes),address[],uint256)\":{\"notice\":\"Invalidates a checkpoint due to a bad attestation signature\"},\"invalidateInsufficientAttestations(uint256,(bytes,bytes),address[])\":{\"notice\":\"Invalidates a checkpoint due to insufficient valid attestations (>2/3 of committee required)\"},\"propose((bytes32,(int256),(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256),uint256),(bytes,bytes),address[],(uint8,bytes32,bytes32),bytes)\":{\"notice\":\"Proposes a new checkpoint to extend the chain\"},\"prune()\":{\"notice\":\"Removes unproven checkpoints from the pending chain\"},\"queueSetSlasher(address)\":{\"notice\":\"Queues a slasher replacement. Takes effect only after a 60-day delay via {finalizeSetSlasher}. Validators who object to the change have time to exit before it lands. Overwrites any pending change, resetting the timer.\"},\"setEscapeHatch(address)\":{\"notice\":\"Sets the escape hatch contract address. One-shot: callable at most once per rollup.\"},\"setProtocolFeeMargin(uint16)\":{\"notice\":\"Updates the protocol fee margin applied on top of operator cost in the mana base fee\"},\"setProtocolFeeRecipient(address)\":{\"notice\":\"Updates the recipient of the protocol fee tranche of the reward waterfall\"},\"setProvingCostPerMana(uint256)\":{\"notice\":\"Updates the cost of proving per unit of mana\"},\"setRewardConfig((uint32,uint96))\":{\"notice\":\"Updates the mutable reward configuration (sequencer/prover split and checkpoint reward).\"},\"setSequencerRewardCalculator(address)\":{\"notice\":\"Replaces the sequencer reward calculator consulted when epoch proofs pay checkpoint rewards\"},\"setupEpoch()\":{\"notice\":\"Sets up validator selection for the current epoch\"},\"slash(address,uint256)\":{\"notice\":\"Slashes a validator's stake for misbehavior\"},\"submitEpochRootProof((uint256,uint256,(bytes32,bytes32,bytes32,bytes32,bytes32,address),(address,uint256)[],(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256)[],(bytes,bytes),bytes,bytes))\":{\"notice\":\"Submits a zero-knowledge proof for an epoch's state transition\"},\"updateL1GasFeeOracle()\":{\"notice\":\"Updates the L1 gas fee oracle with current gas prices\"},\"updateManaTarget(uint256)\":{\"notice\":\"Updates the target mana (computational units) per slot\"},\"updateStakingQueueConfig((uint256,uint256,uint256,uint256,uint256))\":{\"notice\":\"Updates the configuration for the staking entry queue\"},\"vote(uint256)\":{\"notice\":\"Allows the rollup itself to vote on governance proposals\"}},\"notice\":\"Core Aztec rollup contract that manages the L2 blockchain state, validator selection, and proof verification.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/core/RollupCore.sol\":\"RollupCore\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":100},\"remappings\":[\":@aztec-blob-lib/=src/mock/libraries/\",\":@aztec/=src/\",\":@generated/=generated/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@oz/=lib/openzeppelin-contracts/contracts/\",\":@test/=test/\",\":@zkpassport-test/=lib/circuits/src/solidity/test/\",\":@zkpassport/=lib/circuits/src/solidity/src/\",\":circuits/=lib/circuits/src/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":halmos-cheatcodes/=lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\"]},\"sources\":{\"lib/openzeppelin-contracts/contracts/access/Ownable.sol\":{\"keccak256\":\"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6\",\"dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1363.sol\":{\"keccak256\":\"0x9b6b3e7803bc5f2f8cd7ad57db8ac1def61a9930a5a3107df4882e028a9605d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://da62d6be1f5c6edf577f0cb45666a8aa9c2086a4bac87d95d65f02e2f4c36a4b\",\"dweb:/ipfs/QmNkpvBpoCMvX8JwAFNSc5XxJ2q5BXJpL5L1txb4QkqVFF\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol\":{\"keccak256\":\"0xde7e9fd9aee8d4f40772f96bb3b58836cbc6dfc0227014a061947f8821ea9724\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://11fea9f8bc98949ac6709f0c1699db7430d2948137aa94d5a9e95a91f61a710a\",\"dweb:/ipfs/QmQdfRXxQjwP6yn3DVo1GHPpriKNcFghSPi94Z1oKEFUNS\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol\":{\"keccak256\":\"0xce41876e78d1badc0512229b4d14e4daf83bc1003d7f83978d18e0e56f965b9c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a2608291cb038b388d80b79a06b6118a42f7894ff67b7da10ec0dbbf5b2973ba\",\"dweb:/ipfs/QmWohqcBLbcxmA4eGPhZDXe5RYMMEEpFq22nfkaUMvTfw1\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC5267.sol\":{\"keccak256\":\"0x92aa1df62dc3d33f1656d63bede0923e0df0b706ad4137c8b10b0a8fe549fd92\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c5c0f29195ad64cbe556da8e257dac8f05f78c53f90323c0d2accf8e6922d33a\",\"dweb:/ipfs/QmQ61TED8uaCZwcbh8KkgRSsCav7x7HbcGHwHts3U4DmUP\"]},\"lib/openzeppelin-contracts/contracts/proxy/Clones.sol\":{\"keccak256\":\"0x1206c89e10de6977cbeda13f01c7956c1159cf9f8565aa56b8f05f7c838429bf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1d3b3da61df7796a528ec9abfbb63288cf3ac63e3c736407ae4eed2bca018695\",\"dweb:/ipfs/QmYgttRpNJeRgjzL2rwMEHjFuVXABxPGApe5bpmsHtdfjE\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xe06a3f08a987af6ad2e1c1e774405d4fe08f1694b67517438b467cecf0da0ef7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://df6f0c459663c9858b6cba2cda1d14a7d05a985bed6d2de72bd8e78c25ee79db\",\"dweb:/ipfs/QmeTTxZ7qVk9rjEv2R4CpCwdf8UMCcRqDNMvzNxHc3Fnn9\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x4251fed1ac036ad28996501522371736318527d7bf2bf7d66fbd2769d6c4771b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b2df261bd4de240f54c5829faeaf0ffc919a01f1497cf7ffd8a9a544bdec8fca\",\"dweb:/ipfs/Qmb9ndUuv9RZPKJXZGzjVuhmNuoizxuGRn4QMBmdmLcxS3\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12\",\"dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF\"]},\"lib/openzeppelin-contracts/contracts/utils/Create2.sol\":{\"keccak256\":\"0xbb7e8401583d26268ea9103013bcdcd90866a7718bd91105ebd21c9bf11f4f06\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://866a11ad89c93ee918078f7a46ae31e17d89216ce64603f0d34be7ed0a5c520e\",\"dweb:/ipfs/QmW3ckLEJg2v2NzuVLNJFmRuerGSipw6Dzg6ntbmqbAGoC\"]},\"lib/openzeppelin-contracts/contracts/utils/Errors.sol\":{\"keccak256\":\"0x6afa713bfd42cf0f7656efa91201007ac465e42049d7de1d50753a373648c123\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ba1d02f4847670a1b83dec9f7d37f0b0418d6043447b69f3a29a5f9efc547fcf\",\"dweb:/ipfs/QmQ7iH2keLNUKgq2xSWcRmuBE5eZ3F5whYAkAGzCNNoEWB\"]},\"lib/openzeppelin-contracts/contracts/utils/Panic.sol\":{\"keccak256\":\"0xf7fe324703a64fc51702311dc51562d5cb1497734f074e4f483bfb6717572d7a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c6a5ff4f9fd8649b7ee20800b7fa387d3465bd77cf20c2d1068cd5c98e1ed57a\",\"dweb:/ipfs/QmVSaVJf9FXFhdYEYeCEfjMVHrxDh5qL4CGkxdMWpQCrqG\"]},\"lib/openzeppelin-contracts/contracts/utils/ShortStrings.sol\":{\"keccak256\":\"0x7d94fa0af099a2172eb01f9c8a8a443cbe7e0e43654841563e4e09968efdb549\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://65e38fb76b6add407d4557753ae83dd1268e8261195dbe5c19a580d5ba6e4e9a\",\"dweb:/ipfs/QmTkGSJtaQrqjcyWM4AgemeEmKgtDydKPPVRajsUJRQSrK\"]},\"lib/openzeppelin-contracts/contracts/utils/SlotDerivation.sol\":{\"keccak256\":\"0x8447b57b63810fe2e367c09496a966f143ec0e825d71ddb9fce2506cff84b618\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://996cb48f793bf151555045b37138e36b3cdb31d6bc6552d3149285260be00cfb\",\"dweb:/ipfs/QmcLaTTMNVbkMx58xhkp6GeFt4V3GtSyupZuaKG3vYW2Zc\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xcf74f855663ce2ae00ed8352666b7935f6cddea2932fdf2c3ecd30a9b1cd0e97\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9f660b1f351b757dfe01438e59888f31f33ded3afcf5cb5b0d9bf9aa6f320a8b\",\"dweb:/ipfs/QmarDJ5hZEgBtCmmrVzEZWjub9769eD686jmzb2XpSU1cM\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x9e82c00fb176503860139c6bbf593b1a954ee7ff97ab2969656571382b9b58a2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://34b4eb157b44d4441315db65561ba7cf0fe909dc598c2cfd7080d203077d5b57\",\"dweb:/ipfs/QmcNdvK3kDUAUr48urHxoeHd1TqVDya4YfZTM66i4goEJn\"]},\"lib/openzeppelin-contracts/contracts/utils/TransientSlot.sol\":{\"keccak256\":\"0x9303ef5a2beb555e52ce56598de205ce07ca8988fc67d073687c06cb8fc973d1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b2e48fb42844c25e6cb38e7cfa1d91dcdc054613fd10f608833dbc677acf889\",\"dweb:/ipfs/QmT4HQxbgpWA3fZnK4dY3eXHNCoyBvpvzNq5k7eSt5mR5t\"]},\"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol\":{\"keccak256\":\"0x69f54c02b7d81d505910ec198c11ed4c6a728418a868b906b4a0cf29946fda84\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8e25e4bdb7ae1f21d23bfee996e22736fc0ab44cfabedac82a757b1edc5623b9\",\"dweb:/ipfs/QmQdWQvB6JCP9ZMbzi8EvQ1PTETqkcTWrbcVurS7DKpa5n\"]},\"lib/openzeppelin-contracts/contracts/utils/cryptography/EIP712.sol\":{\"keccak256\":\"0x10eb97d047f8d84fe263a02bb4a656ac6674f6679d74532cc37546289e073a9d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e41287d40b0c46982f1083d40d32de2761f009c5c51627fe79a7feb0ab1cf5c\",\"dweb:/ipfs/Qme7dbh6HX3ZvUJdbQAcVqXkmyXyfcLiUZRhhon3cU6K8p\"]},\"lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol\":{\"keccak256\":\"0x4515543bc4c78561f6bea83ecfdfc3dead55bd59858287d682045b11de1ae575\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://60601f91440125727244fffd2ba84da7caafecaae0fd887c7ccfec678e02b61e\",\"dweb:/ipfs/QmZnKPBtVDiQS9Dp8gZ4sa3ZeTrWVfqF7yuUd6Y8hwm1Rs\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621\",\"dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0x2c33f654cefbbe80a9b436b5792cfe8bda2e87f139f110073c99762558db252f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://dc7ebd80046a52f28978cf46a24ff3e4c8568264ab6bb138038951c75d576167\",\"dweb:/ipfs/QmQQjXVr4CbDR3DXd8GHEqn3JSJYTnbBHMJp9tvc29yXrc\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol\":{\"keccak256\":\"0x195533c86d0ef72bcc06456a4f66a9b941f38eb403739b00f21fd7c1abd1ae54\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1d578337048cad08c1c03041cca5978eff5428aa130c781b271ad9e5566e1f8\",\"dweb:/ipfs/QmPFKL2r9CBsMwmUqqdcFPfHZB2qcs9g1HDrPxzWSxomvy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xb1970fac7b64e6c09611e6691791e848d5e3fe410fa5899e7df2e0afd77a99e3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://db5fbb3dddd8b7047465b62575d96231ba8a2774d37fb4737fbf23340fabbb03\",\"dweb:/ipfs/QmVUSvooZKEdEdap619tcJjTLcAuH6QBdZqAzWwnAXZAWJ\"]},\"lib/openzeppelin-contracts/contracts/utils/structs/BitMaps.sol\":{\"keccak256\":\"0x3616f1b0d0a9ee1ca8f0953ecaceb9230e36f691c7974d30f964212acff52d2b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d4bebdd07b31ac28e3e596ac6f0333da90a4e332405aa7d65f3a3a7e0b4cf15e\",\"dweb:/ipfs/QmckoDU5bBnye2UtPcrfJNahLD2FbxrnPP9nrREMWPpnug\"]},\"lib/openzeppelin-contracts/contracts/utils/structs/Checkpoints.sol\":{\"keccak256\":\"0x66364cd3247ea71cdb58f080f5d5ed6732433a8001413139661841535494692f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f87914c6645b58eaf75f00a156037a7da91129f3a56aec44aebfc715b19ea44\",\"dweb:/ipfs/QmNX7NLSMXyWuogvf8wfCwjUGwLhLBZrGktWPSdoHtERGp\"]},\"lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol\":{\"keccak256\":\"0x9b161e97b8967d4bc0c08d25741889a30692cdda4b71910bf1b0e315f1962212\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://821500c39d095eaa25b06f46e65f1d0e97c4c96b39227f79077dee7d9e84051f\",\"dweb:/ipfs/QmSTeGorKzSWF6HAmxo32uCZiEuKNvreQdUiX1AaYtUMTz\"]},\"src/core/RollupCore.sol\":{\"keccak256\":\"0xb721b488eaaf1b5bf5a42bc8c8eb48bbe00f243692c417a37a4c794de509186c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e71cd88eeb2d569af6f82bc94ebeea1125d440437b0bac9ac892289a58366f01\",\"dweb:/ipfs/QmSn73ArQVUy6VKWfxGLhBhBpD7kXkBaMGLwbJALiDNHBs\"]},\"src/core/interfaces/IEscapeHatch.sol\":{\"keccak256\":\"0x1a499acad8813b56e7d9cdcff3152e36196482794e62302e95a28603f5915747\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://18da3711ad1fbc413336c252709e1ad32d51092336fbe6c2428b48768f58352c\",\"dweb:/ipfs/QmdkMJiH1pdcuoLe5zPHeMtnFhZ1k7PLZJtoWQUcpcm4bJ\"]},\"src/core/interfaces/IFeeJuicePortal.sol\":{\"keccak256\":\"0xce84c8907395b4c11cc6dd8035d8e14560153450f9d88340cfb8abb914c66639\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f5eb389f1a6e9adbb2f24dad7a6c0bc706d49decad82ba9b582c288e12eddda6\",\"dweb:/ipfs/QmNM3uQmJYn9B6RAHSMUT3TZMR6R75okjJErUEsuRjxGXt\"]},\"src/core/interfaces/IRollup.sol\":{\"keccak256\":\"0x4885f9bbf279f63143fa0ccd21ce4918fd34eef9ce4ba871c78c22ae6c174f8b\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://c3eac7f06a1db468466f6e977fc204b4106808d0293ca57d336004ed33cc0add\",\"dweb:/ipfs/QmUzzFrVi15V2WRFsgpSmDQBfPUbbA4ochmZD55VhovJBR\"]},\"src/core/interfaces/ISequencerRewardCalculator.sol\":{\"keccak256\":\"0xb7fb4ad1c171762783aecdd5e85036e71990438fc11e1121842b31c431ff0c67\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://15bf6fea8074c7a5f71860b325786d2dd5b625cbfb5b0bd4d0fc4f1a5f566d5a\",\"dweb:/ipfs/QmTH4XovGivVCs4Hp6PT3UVKLrSCPPtv1mmtvUeALVCnAZ\"]},\"src/core/interfaces/ISlasher.sol\":{\"keccak256\":\"0xf7dc3b2795b2806dbec7c94c33665abcf00a35ee65802a47f6222faf8641d302\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://d7c9283746c66f04df5a133145b3196fc176e06e2fe6b3285056ffac68a09e9b\",\"dweb:/ipfs/QmPxTkM1eMNFny3yibc69p1GqWvPkno5fzBjyju89h7CNk\"]},\"src/core/interfaces/IStaking.sol\":{\"keccak256\":\"0x81ddf8fa0cf8a213d690845fd4d3e31e45c543e5876612e94607cdb753804f1d\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://7e0ae2a10903274cca7231306660dd6d5d1e5632238618b390aa7f4dfa5422f3\",\"dweb:/ipfs/QmTMXRYdNGnmecbUdREFfgsLwnMsRjDseLVXsvPqQoiago\"]},\"src/core/interfaces/IValidatorSelection.sol\":{\"keccak256\":\"0xe22dc335f3fd5f5cbf10928fa7e9e945ea8a04fa99362ec6e2022c862d7baca4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e26be09d3c823c545a2252467e13b68d366f3e711e15085be09f565ac436acc9\",\"dweb:/ipfs/QmS1ddcZteAjeojaJJz1ZgRPdynzpNu1HSSPbmEjJNe99G\"]},\"src/core/interfaces/IVerifier.sol\":{\"keccak256\":\"0xf5b6025ff3d59b8922bb45fb05786764e74109b4a349d206b8a7979f46484c55\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://98ec47ac3e15b1d8f2c80854ed6fd83e655e9e96341bb827f3be8e6b47f4c7fb\",\"dweb:/ipfs/QmcmUkLgM7fb7mEaJTiWJWrZTW2kAWtRcYS6imBfmueALe\"]},\"src/core/interfaces/messagebridge/IInbox.sol\":{\"keccak256\":\"0x1149c904c8b3bd2942628fbab5480cdc044e831d51963f9e6946f1974cc162bd\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://af2f1f49feba389b0bdbf427c4a85fac2908699585e5babd75f77cf14416ed5f\",\"dweb:/ipfs/QmZYjZyhicCpTcwPuWTjTTUxnaBnfv5bTMWDgxyDGqy8Gm\"]},\"src/core/interfaces/messagebridge/IOutbox.sol\":{\"keccak256\":\"0xf66d0bb4f6d978acf91a036737cd4326bfab16a4030d10510d2976e4218ed8ad\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e796eea21d552b2ca4d0446bb096e2c980ab84816d9dd1398113293ae8128b30\",\"dweb:/ipfs/QmNuGgRtPFgRe3asa68vDMcWpyfDFqQ5w5j5U7yWD1EsyZ\"]},\"src/core/libraries/ConstantsGen.sol\":{\"keccak256\":\"0xe328f94338f5563669e04618c3ec21ec38b9f21ab24d5de698d80cf38f977dfa\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://3d9872c9a78d7241053e9ce3eadf192d18a9cb4b95c0ac120470d92435b7216e\",\"dweb:/ipfs/QmcRnfbW8sNWwRHPik4wvkA7CTY1BTjuf2ydu3jN5otQJT\"]},\"src/core/libraries/DataStructures.sol\":{\"keccak256\":\"0x5ea9d1097f0b53eafbd72332d4c5c517307e5a056266befe5b46f5f43ee3d83c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1a742311dc3c5ead2d5361549f017d20f46c40a4e74e879823ac168cf5b572d4\",\"dweb:/ipfs/QmTNDc1fiPti41QqJTJQoV9uduB6eXaQhbfq1hfVVjVNvS\"]},\"src/core/libraries/Errors.sol\":{\"keccak256\":\"0x282e22d0eb9cd8f22f7bfaef3c3e3cad5461734d6e421f392b372a146c83d467\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5c250d031a44b257109f81417bb89c0e5b99d44bb17a55379695061afa9d3ef1\",\"dweb:/ipfs/QmenxQJyukQT7KkCsfXV6by3VU6qumEUnK4EH4mqHAw6iK\"]},\"src/core/libraries/HatchMath.sol\":{\"keccak256\":\"0xca787b2889e281c8db132043312aa9513315669782981689824344c910833fe4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://77ec2f6b5919d53d3a7128f6006155f2566a84e7a56cd26e9d5e6d1514ccd7a2\",\"dweb:/ipfs/Qmc3Z2quujEwxQU1JBfrxhkiULaczspBsTMjXibqXCjFyd\"]},\"src/core/libraries/SlashPayloadLib.sol\":{\"keccak256\":\"0xb9322072eea0036dec74a9222a92a7fcb2518db4491764125eedb63f90f9c830\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://7b7ea317d170f1667e921f8957ea1de4452280f5274bfd9391b6efd6db2e64c8\",\"dweb:/ipfs/QmQs5H78G9LxEzHmYNLDqipgVn1n8Txc94Whc4dLbB25u6\"]},\"src/core/libraries/SlashRoundLib.sol\":{\"keccak256\":\"0x6773eea1fa593e5c1e16fcd3a8341b537bf5ed7ee2f10472649dfd542e3ade8e\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://756bdaa3facd4034149eeb3553ae99777b646c3e16abf8d41f9558e74249baa6\",\"dweb:/ipfs/QmNpb62diGKNKf5pcynejjhNex9c6PTkZnVUeuLvJ2qCZ9\"]},\"src/core/libraries/StakingQueue.sol\":{\"keccak256\":\"0xbbeafda1659a92be14ec5b77838952a089f075cc1d0c5f348b6ff336ea6a1a98\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f3c8bdb1de77dab697ef4442f72fa4830c757059f8d948d2f3aeb7f6983aa64f\",\"dweb:/ipfs/QmSDYdTnFo8nx34q3fdJCKpy8DCnKBQ4isxr49o4sY5T6T\"]},\"src/core/libraries/TimeLib.sol\":{\"keccak256\":\"0x865b760fe681ee74a93b49491d897a98091432ebc2923ff17717ddb6d26d31ab\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4ccdfb80464d8e58a95a68314fe2dd33f4a1634ab0695a9a4e9c180a50cc592b\",\"dweb:/ipfs/QmNUUFN7RTjiicZCkci6eEnfromVTPS2MVE4CkbqoneV6P\"]},\"src/core/libraries/compressed-data/CheckpointLog.sol\":{\"keccak256\":\"0x613513b7eb7855ff619c9eb3f1589fcfb0d7675e15c5261034ac353a62c5cabf\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://110e7cc1eae76116a6682a9044cf9031744a7a8c46164987e246923169618d5e\",\"dweb:/ipfs/QmcuhMXiGWjAbYGYYXKrTCLNYguQZpgxpWVWteJezYKVzQ\"]},\"src/core/libraries/compressed-data/StakingQueueConfig.sol\":{\"keccak256\":\"0x32b00fd08e1754d9d9c9b377ae0a0ea887ace519db0ec6d252e1b2216891068e\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4ecea0a1ff8536819d37d3800b2915249b5c854d9dc611e91aae81df6acf7d76\",\"dweb:/ipfs/Qmf3FgXCf1MP78p5B76kQnwx8yXFXncutVzQhV2fteBvVn\"]},\"src/core/libraries/compressed-data/Tips.sol\":{\"keccak256\":\"0xdf872f54470e59b86349871e2c12075e8daaad85894f90e64f92538daf5f4008\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://493e4bc02c6e9acbb5bfaa68f19bf4defb409211b701784e43d2ca6cbc11ccd1\",\"dweb:/ipfs/QmSUahndZ78LBx6WdozXWL6QkqxZXzrXpHna2kGwCqgy34\"]},\"src/core/libraries/compressed-data/fees/FeeConfig.sol\":{\"keccak256\":\"0xd5593d342fd9e75cf10d9c126d5aa46eab6707221111d81757e0f5c3473c23fd\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5cdfdfa94ea9d7b93cb80bdbd9e81c80fc7d71de890d88bb957960d0d5734298\",\"dweb:/ipfs/QmQ2VjHtpja19AxDnGg2Q5hCck678PUrfLDuwUNvcyo4YS\"]},\"src/core/libraries/compressed-data/fees/FeeStructs.sol\":{\"keccak256\":\"0x23304769b5d5098b6d6b1092be483f34c0c901d7e14667404e8c5335dad8b501\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://9ef5000b6a27a338f60dad80f73ea03d6560afc46c063d8d52932574d82cf157\",\"dweb:/ipfs/QmSzdqmERrrCqdfqy4jXhdiyokyNRLvi4qLp85iw8rR9iJ\"]},\"src/core/libraries/crypto/Hash.sol\":{\"keccak256\":\"0x0e2bad615ee34b98ffdc7b81558e78ad3701cf8e02dc0fa4721555b4cdb861cb\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://8f69943a9ad3fba8a12ae34b3d60815c4339ea66a5ec75beb781d22a872c2d4d\",\"dweb:/ipfs/QmTfjRk9vBaxfziFgwYzWgTWFEvbB8EEudkcYupPw6qLXW\"]},\"src/core/libraries/crypto/MerkleLib.sol\":{\"keccak256\":\"0xb41c737e197cf6979d9fde0e4317f5feabb17530b72a191098e4bb802e9bbcc4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f2312f38220afc045e3335e520ab15f34c90a2fbf660faac7f35a36e0a7abe60\",\"dweb:/ipfs/QmcVJdTNtZnej3w4hAcoDHCjPUcLAsVQvcEGWN7N7UwLKz\"]},\"src/core/libraries/crypto/SampleLib.sol\":{\"keccak256\":\"0x59e87e7d6a1e966c0f73bd919825ff7d81dc898625fe9fd20e6786e10b43783e\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://a931d31192faf6d9d9c82fc7099a776b5886d90dd0a2a9ee8093cc680dfdef70\",\"dweb:/ipfs/QmbQjTTf96tr2WSiuoWK8k984dGuXKooZWZ5o9EL7wEPhv\"]},\"src/core/libraries/rollup/AttestationLib.sol\":{\"keccak256\":\"0xf2111c30dc0d6c81d4f990990dfa37813932180e2b94739050356c5942f316e3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://fc4d8c42797fa58646094be9e108a60a278f2c2beea06bd7b06b00933b00c5b9\",\"dweb:/ipfs/QmdNPs36gak9y4YoCQq2ttv1nj8ALyab6f9P7SoozECrfN\"]},\"src/core/libraries/rollup/AttesterExitExtLib.sol\":{\"keccak256\":\"0x8fb7d49566291d6a7ddc8e3eb8193c99a3531f199a6092e5bc9d0340b9933893\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://7b30e850ce2226dfd54b4e29b2889f2cc1f2b4029be703b8aa93db14c569cb04\",\"dweb:/ipfs/QmYcrycdjUp9B4KPHAD8cUmWdc1qjiGMyCuZrBUQiTw9CT\"]},\"src/core/libraries/rollup/BlobLib.sol\":{\"keccak256\":\"0x5b0d454bd38592154954f1da4cc59f50a036d0a28a169401abd9b5fdb88a4fe1\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://68cf3a3fa979a6cfdc618e66621a0233263a83c259b17f6193fb0339796bee9d\",\"dweb:/ipfs/QmcRKQmFf8mZxWKUT7Vgg3LnTxVsCen5f8TnMqCQMGi2j6\"]},\"src/core/libraries/rollup/CoordinationSignatureLib.sol\":{\"keccak256\":\"0x939c2aa29f536822f1f35db30af3b783986612bb35a210c583247f764c39dfae\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://6f5e71fe318f83063eda2027992740e7be7e0274887b4c11ab00ef3199398729\",\"dweb:/ipfs/QmPGkRVfkoLj8bi95vyySrtFeTaUGf62qcWoBy1nZRjZQc\"]},\"src/core/libraries/rollup/EpochProofExtLib.sol\":{\"keccak256\":\"0x448e42586ecb687b7a62afb6b48ddef666b963856aa4af4f2a8c391ade29532b\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://848711298ec768e174750b3dc30167252a98eba8b82ccfc283bff063afdf8434\",\"dweb:/ipfs/QmZBEU7Hk2Xmw8L7bpWLCTw9saDfQuQTVMRnU8A6aAwNms\"]},\"src/core/libraries/rollup/EpochProofLib.sol\":{\"keccak256\":\"0x5e64ec4ed2646b18c30650245a148648cf348b99077f0355452b61e967f28811\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://405f0a75293f577bb1528a2603941baf086e6e5f464aae02d46e0fbf467a9926\",\"dweb:/ipfs/QmSSybtZapD55JC5Ey5SyuyCBqi7MgCS5UBJRKF5KKs5yA\"]},\"src/core/libraries/rollup/FeeLib.sol\":{\"keccak256\":\"0x78cccc8618137ebda0ca1cb68071a6458eff5c1e4eecce22de77c7479cb2f917\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://eb96d87ba3229de5d5a8e8cd9e1c29438789e578f915d787f2f7c0788f380679\",\"dweb:/ipfs/Qma3VYid6EyGtNCLertDyViT1Z8Ma1vNnc7EAEmJfxf8t9\"]},\"src/core/libraries/rollup/FieldLib.sol\":{\"keccak256\":\"0xd09f77d3aa6d7efc844e99bd496a145171613825bc45d35e1518889098f91e95\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://499d0aeb3c7b6801e49f7554110a194ebeca73bec4ddf4b00ea8dd64fcc4b2ac\",\"dweb:/ipfs/QmQf7EeP4kwTGPR2xfDK2MpNAqqcAY4vWZ3faEKn6JEW8R\"]},\"src/core/libraries/rollup/InvalidateLib.sol\":{\"keccak256\":\"0x2d88d0176cb9c5bcf449b4062d2fb334d7ea124b801bd43eeeb53c5edf1fcd0e\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://0b4fe49115aec50f7113ba8bd20550089fac6569d1ed5e4a7e8189529a4ff82d\",\"dweb:/ipfs/QmQ3GJ53AocunyjaaBRQvsczuGNvp4JV73qksdt8Y55cNx\"]},\"src/core/libraries/rollup/ProposeLib.sol\":{\"keccak256\":\"0x90d4fff721a1bcdbb555aad73a040ac1f0c3a61e286b0f291f47248129d8a777\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://988c7390ba413ae25939df5a9f8850649106627ddf453a60b472e31c32a97156\",\"dweb:/ipfs/QmXNPKm6y3bgTmjfeTMrY4sfBUFT4fLxZsMBBSC13Nt6oy\"]},\"src/core/libraries/rollup/ProposedHeaderLib.sol\":{\"keccak256\":\"0x43a9fa530b7cb948c1d7c436bddafdd8ddd8c022c67e25045372bc68b9e5018c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://904e4aa94b322f68c605dd34ea38bb77343437e2f2203c3e650cf7a7bb3aa19e\",\"dweb:/ipfs/QmX3H4PMwh57L5Zv3LFrHjkNmgVZiik4FmzSyJhnTJcqPD\"]},\"src/core/libraries/rollup/RewardExtLib.sol\":{\"keccak256\":\"0x258e1b7ebfa2c5cecc4d5bcecacfda7e6398b0191a08d6f2a9f775724ab7fd5d\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://9d1d38d938a44dd27419cb656a7726609da2dc074fef9c54e35909d5e304915b\",\"dweb:/ipfs/QmSZ6VVTYYBXQra114KmdZyVXVSh6J8MLKRjwEF9EmE3fp\"]},\"src/core/libraries/rollup/RewardLib.sol\":{\"keccak256\":\"0x3a73a07577c713179be2de8df601445e79c606afb42f74bed33d1000c6f14ff8\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e432e402f6721bf70849ae3d731dcc669abeeb7df8399c878cc946fea0657a1a\",\"dweb:/ipfs/QmYuGKQvN9iFhQpKLo6Rd7oTkMZx6VfdrJFh6tVgLEDg5M\"]},\"src/core/libraries/rollup/RollupOperationsExtLib.sol\":{\"keccak256\":\"0x21451f575ac7e42628576c961ff34072132511a2ec8cf3e794cc397a87553ad6\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5fd0643d9febd79148ceacb0006860b80fabe42aa9ff97faabe5a9a170aef604\",\"dweb:/ipfs/QmXr9Lb7WdCebnVdte2vDZnFNxe6gW8MWY5HuSqtZCtNTE\"]},\"src/core/libraries/rollup/STFLib.sol\":{\"keccak256\":\"0xcb2ae0566bd5b0834f8ec2f73d78037f25d4d65894bff1ab8abcb9f8c65c7bc0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://35689b10ee3d4fff126625efa170fe77c617441fd7902d7376488af5061a79e0\",\"dweb:/ipfs/QmUzDZoMrpJAuhVYVGSruX4mj9jTJmSZncvoTHbsyZL7eM\"]},\"src/core/libraries/rollup/SequencerRewardCalculatorLib.sol\":{\"keccak256\":\"0x2d5e8efc5a87bec1d50a8c9df0696a8248e0905ab62dcd7ec6a51527ad33b604\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://15d4a7d1f265fc1a248762702373534fcae9d85df5150e5e1a45f79b94736ed4\",\"dweb:/ipfs/QmdAT5Aw6JSg5GJnTikfDtJHnJZuMib7L8GB3yQ4jMuiFr\"]},\"src/core/libraries/rollup/SlasherDeploymentExtLib.sol\":{\"keccak256\":\"0x438eef52411afac7db0fbe0a4b976ce50a9b424ed4fe262ace0d19f724e9d540\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://593460e554bd030c282ac532146a4c08495595814931f6eb65ba5df1234513b5\",\"dweb:/ipfs/QmS99z9JWufE7roRfx9a1453J8TVJXpREJDKLcY3gaSuKn\"]},\"src/core/libraries/rollup/StakingLib.sol\":{\"keccak256\":\"0x6e3c96f937701c67570d902aca8d2f9a1ee35942e17b1e5a375b264582a6fe8c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://ddb78c290af17a9574b89104177d2f1079c5abeb462446722b8fb09e03659ea6\",\"dweb:/ipfs/QmURXaGC2SRKZc36NQZ4SXqNtgY5MpYQRamS3Shn2GMAoe\"]},\"src/core/libraries/rollup/ValidatorOperationsExtLib.sol\":{\"keccak256\":\"0x6cfa5dd1e3b5fbb9118a727311f1121d87089a54744c61c30d431c2ecbdca200\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://40e2425b4aa022398847b57da1bea1290418b855b5312d1e24c9e1113aa05c1f\",\"dweb:/ipfs/QmaCiBGFciNUUecE9axtgoQqiQsSHc2ZQHzHWiiWMCn2ML\"]},\"src/core/libraries/rollup/ValidatorSelectionLib.sol\":{\"keccak256\":\"0xea94ff99c5e47c51bbd4ffe8282447c7aae23065e255ec2d2806a11901ab1752\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4e5c466c3c0ca5834c41714ddd64e7e5a34e6c37a5d57ddbed40b567582746bb\",\"dweb:/ipfs/QmUYZ4KgwoUhxQCMtazUgj8tN6wkRHcakZ5rg5EjQq1XuU\"]},\"src/core/messagebridge/FeeJuicePortal.sol\":{\"keccak256\":\"0x587faf2741b0cd58ea207f2337bc80964ff784d0e6f2de8e7d6e226a3dd9d187\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f10d4355ddeba853507d93038804972904ca61f47b9ff0c7272c87881445869d\",\"dweb:/ipfs/QmYfUZ9xgbWpwrP8kXUQTEa3P2G56iFFikNb6UyKctbi7j\"]},\"src/core/messagebridge/Inbox.sol\":{\"keccak256\":\"0xe5c09dfe6cdbc047470a48630d62366219d59d5d82a57ba230f053ab058088c4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e88076e7cbbf9f4f1886762dc62e4cec2323ebc7e8bfa8ce7030f739194271a6\",\"dweb:/ipfs/QmRHXcbCYEGUU4zCy84LrXykDQt8jY7YHZXpcSwMNatZyv\"]},\"src/core/messagebridge/Outbox.sol\":{\"keccak256\":\"0x1a78d6755a0f604a8f75a3059a2b8e5b6eb2a01540c39bf43bbfb56aaf063cf4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://bfffb428824b7e8d01070b639fb4b5696619c3205c89d8614c45f2e97aa1f24e\",\"dweb:/ipfs/QmfVTDZRszShpqhn42zBjGGBkLvAub746yj4n6L2dzNSsj\"]},\"src/core/reward-boost/RewardBooster.sol\":{\"keccak256\":\"0x1cffe0dcbc06775ad415b06cd3591f74331bad3b154a3305ea6c5a081915fce0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://a2fcdbdcc260b3330bae0bc61227f652f9cb68e175fbc7d4173bf1d2dfaa92d1\",\"dweb:/ipfs/QmddUmciRbznTTfBpbZf2p3R9sC1oePRF9C3Swnq8qU3Xb\"]},\"src/core/slashing/Slasher.sol\":{\"keccak256\":\"0xc3040cd1813a6064a6afda9ca8b1f65f5cba2e7359050c48507d2f71d3606786\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://73f73fac9ffe650304c68a49635604806b86b0a5baadbf59ef36931e7937bc51\",\"dweb:/ipfs/QmaMMMXycUeybJyf2ZowJgQ1Wo4ZC7g5kyp1BHWfj8dkD9\"]},\"src/core/slashing/SlashingProposer.sol\":{\"keccak256\":\"0x83021af7c9ea602728d0ea0c3a01b222bdfee96af341537473d81f6e1e70d32c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://65b80e908621361c40178ea2255d096f2ca323201b117de24bf561b5e7ca698f\",\"dweb:/ipfs/QmdKMw2sLn16jGZs9RjQnmxwkdsUrRzjJ3PLdZMPv8JceW\"]},\"src/governance/Bn254LibWrapper.sol\":{\"keccak256\":\"0xea39571de45fe0fec82d9e760998677eb2432e08c6cdb00c41efa58caf56e607\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1e470b821f3d87fa0c988c5f23a8deed3849bffd2527b3b4ee137a90e0c1264c\",\"dweb:/ipfs/QmW3M4HyRLDruV5AYXCKicFCiiczmwnSTtnwVKUnQSm7a8\"]},\"src/governance/GSE.sol\":{\"keccak256\":\"0xc19fa4868d78030e2411dd5cef6d0da09645ade1d1ea0c4374b284a89feb722a\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://d06396c249566d0e9de5d34eade2bf27c4d583005c0129787bf6c413dcd9e273\",\"dweb:/ipfs/QmcimKKiV9KqobS5wzPsKYzyYu5WezCF3gyHkekf5tjrUU\"]},\"src/governance/GSEPayload.sol\":{\"keccak256\":\"0x40e5385b008f0335b50e066c647bb906685511c9fef206ce90a3391468558bae\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://a129e87e1d57cf0813b14108cbdbcdd4c114b20f3f2d67477302d6d050120c7e\",\"dweb:/ipfs/QmRcQQkeDhkrmQha3nkA8qvXnGmF6nLhZMKAhMx61A7a5y\"]},\"src/governance/Governance.sol\":{\"keccak256\":\"0x07770c3d80369adae51be8e361f63a2aa5ec489b354b10c8590be1e294dfe2e5\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://7219becf3467ea8368dba0bd093ba932b165cf3f214e7286f652e2730bf42eaf\",\"dweb:/ipfs/QmTSCDhSQBTKhzGUk12phxhqohSba6yopYMzF5T5XPFUWw\"]},\"src/governance/interfaces/IBn254LibWrapper.sol\":{\"keccak256\":\"0xdd0a3de8b8ff67cf2bf090d04b4a37aa6d604f402db3328387d2466d2354464a\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://daef0234547509cd7ae3a7babf0e50a8d1ca2894f1817e3e2409a50fd32947b9\",\"dweb:/ipfs/QmbwSedqnBfsqRnUq8XcXzoeoyhZTXJWJ9rpJn61BAJfej\"]},\"src/governance/interfaces/IEmpire.sol\":{\"keccak256\":\"0xe6a8a8c3fef8e6f9f5118bd40c63e951b13a59d5f885bbb979d38745ef760ed3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://940c1fe4138d7364ccdb7d5635ea90bafa1da274f680039b0b54ee8c2a275a9a\",\"dweb:/ipfs/QmX2EeoVyES18BMgcbKVDb36MCq8ooDVR98m2RmnmZjEAo\"]},\"src/governance/interfaces/IGovernance.sol\":{\"keccak256\":\"0xe420d305fbe7c35f4620cd1e0f05f9f4c5a91532621d21a64ea553a3d9a3c005\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1900ac41f945aa692d5228f134ae63840081d284bf89fdd2a06b45424fe359ff\",\"dweb:/ipfs/QmePFZ1xv5qfftJVDLc98XUVFsrpuKAbKZiro7MoMDTpoa\"]},\"src/governance/interfaces/IGovernanceProposer.sol\":{\"keccak256\":\"0x2be820a5452c481ffd329d68c46d0af6a286934963f26b36d363cd34fb0e5817\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f58839d1504e11e7da42b7f5a03fb9b9d8cc39ab4c16cfb86fa44c4de08df76f\",\"dweb:/ipfs/QmR6jUJozP9tfpZuSduk66E8n7WuL3zzsR3WHZ7BR2ZBX2\"]},\"src/governance/interfaces/IPayload.sol\":{\"keccak256\":\"0x5844ea725ce56ac8adeb20b2d37aa431ca087f68a65a7ca91f981be7458737c3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5ea670db51b2ccfac05a684b95458ecc015c9d12a6567c3f73d473386533f58c\",\"dweb:/ipfs/QmRUB8mckkGQ4nNsErRhnKMsD9SSkokRSpnr5XZC9dZdin\"]},\"src/governance/interfaces/IProposerPayload.sol\":{\"keccak256\":\"0x89068dd464c0bfb7d447c0e99728277e03c7c4b864208ead20321f0590187248\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4d1d9ba5f8b7da374d773acde9514ca6607ad31a3e83950caa097bdb8b0f9167\",\"dweb:/ipfs/Qmd7tWAD2Ubz434zZPJvuyAGsHYpXBHvVhVefLFzUudD2o\"]},\"src/governance/interfaces/IRegistry.sol\":{\"keccak256\":\"0xc3678c04c0945d3dc1d8007df3dc7f8b25d8108b0b25134842ffc5169f996ce8\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://71e4e401f1a6f561262755cc2e1c347cd3aa79e67d2e52ca547864f49de01724\",\"dweb:/ipfs/QmPvoKFEDTb41DSC3MmDMqtM3trj5oZb1Jj2jtQSnNfHBn\"]},\"src/governance/interfaces/IRewardDistributor.sol\":{\"keccak256\":\"0xf263f75be83d0b0e3c8f17ec7fc2558d3543df788dcb2db6f1ee158208134f14\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://b2b65819a5f9ecd2237957e987bb69160d3076ccaf9f76f925a936e574d63d76\",\"dweb:/ipfs/QmNgWESeo6UUvgW7rCMP3d4o8mUqSSbKrwbicH4kaUrm7h\"]},\"src/governance/libraries/AddressSnapshotLib.sol\":{\"keccak256\":\"0x1006e58059e0a1f0fef102f2f11f5649dffc7f2eb066fce51845e65a064f4210\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://de385ab9eb3bb66d7be1218b49ae9bba7d88797bcb375b9a7481a209d303a402\",\"dweb:/ipfs/QmZe6DTv3cACfdXNSMhbMhoefg31LW3uLxHLDC7nZhb4Yp\"]},\"src/governance/libraries/CheckpointedUintLib.sol\":{\"keccak256\":\"0xcd73cf7a62e4ac5cc79f7f8df8b35d5c5e4df5b8a3478bcbc2b29c9aa89ea4b4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f56f37060d39d3c9276f23c96be7f6b1ea44676312dbaa1ab16ab3bff6acebf1\",\"dweb:/ipfs/QmPDUEEgdbpTTs9r3fvdMYJo9akCRsWcJXyarBhQgcKb5q\"]},\"src/governance/libraries/ConfigurationLib.sol\":{\"keccak256\":\"0x7cb65bdbd8d077f3cfc01b065fb3a57628db36cd46f68885c74b9131198c2149\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e37bde50f5f739f479feb95fbe81ed24ee47f841b99f066ecf6782e758d1978a\",\"dweb:/ipfs/QmebPE5REUpYRB8dikUebcGtyk9uy44G9mbchKJtHxJAgy\"]},\"src/governance/libraries/DepositDelegationLib.sol\":{\"keccak256\":\"0x37fbca65ccabec9d901bd71d684dceec7c59fa5a05438fd209ea0d5e16e764c0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e42f2622978abc3ac84223a6b206201898d0269d20bf81539636c0999a0db9eb\",\"dweb:/ipfs/QmW4BgTjR6BuPxwxreKarUeK1u8gx3p9yFdDD4EsC5hkyb\"]},\"src/governance/libraries/Errors.sol\":{\"keccak256\":\"0x8861ea7508138c83e89f186ce17accb42a6eee7d1d2e52841975d4ba676daae4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://b0d5b01c2b0a20c3c70a7ab2b8405d083a063bf5758beb87a4d488bda76078fa\",\"dweb:/ipfs/QmfGH6CTCPA6nVA6KidcTSvaJ6MQZkv6KiuDVBTARGBTRv\"]},\"src/governance/libraries/ProposalLib.sol\":{\"keccak256\":\"0x616ffbb24c4454ca9e223e85ff01e8dca139723d5cd312d5d6f6111d79782a90\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://192f9be3355a7a94d19ae4e5b397e5db19dde64ccc671e149da06dfaa2577192\",\"dweb:/ipfs/QmTDcm7XEFLe7o5cXUmuu5wQDyprU78AVMymiWvrmP4tHT\"]},\"src/governance/libraries/compressed-data/Ballot.sol\":{\"keccak256\":\"0xca07dc8cf36ac2beae7674804af144b34b3c5848153351c17d996e9b3293cd5d\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://6911cc49f1d6977c12f652063c14891697c1ffe49fdf36903c32a8ad73cbd012\",\"dweb:/ipfs/QmQBEZARCAAj1ZLcswkH6FwP1RP8uuNjYTHqthmE9Z5RnM\"]},\"src/governance/libraries/compressed-data/Configuration.sol\":{\"keccak256\":\"0x40744f275af22d33c38fd9c6a7b822292c9c87b17ac2c78abbef4eb8356fd9f9\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://73c685be7e934516207827a59cbbeb7fc1164e7659dd3ec857a91cfea765b482\",\"dweb:/ipfs/QmQfudRpSSQnG9u4XV8iA2UAyDzQPFqWzpZy5NZbaD6htv\"]},\"src/governance/libraries/compressed-data/Proposal.sol\":{\"keccak256\":\"0x72cf619a21c8e95875c63d4361cbe1a815d9d67f36f3fe32b6c9ca4d9ab0d33a\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://d80f47beb3f91da3cc68264c86fc8fb8f0e4abaf9d92243ab3206407fceed5c6\",\"dweb:/ipfs/QmYyrBTDMfkTBu6EcKcSMR7JyfphZ5xH1VCQ8EHMQUvsoN\"]},\"src/governance/proposer/EmpireBase.sol\":{\"keccak256\":\"0x747b20e201dab632a831c12f1fee9ee52cc80a2098c77e8b6c7b09b0f3ba2bc0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://b7d4a0475ca364f75aa2a1d17ed9e6970f0be605126f2efe26d53c791d4a5209\",\"dweb:/ipfs/Qma5tkTcy94PqE9vtQybQSyH9LWaHR8V3ubwDPZwiUNT35\"]},\"src/governance/proposer/GovernanceProposer.sol\":{\"keccak256\":\"0xa2829df5b65856c9f1d6bf490fb50616f14402ff8eece2e32b63828b8b9337c3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://8ad52830a7a3aed3477bf55f92c3d68cb1c16a5cf1d636227ab76a306c846607\",\"dweb:/ipfs/QmRonyZQZj5D1e2g4Y6Tmj2AEUnekL4pGmgdMT4ycRAM8m\"]},\"src/mock/libraries/BlobLib.sol\":{\"keccak256\":\"0xa1b19239c5c64ba1b0c9f83ec0a30059f10ded12bf40d5d7c3f65974752b3121\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5cbce7d0dd0096232d60ec5c6920f211ffcaa46c8675b1129c1f939a1ee84837\",\"dweb:/ipfs/QmSS2qUhzUuZY1qHDjWUGvHuMqMG3cjHoHeDVvgWsjMdA9\"]},\"src/periphery/SlashPayloadCloneable.sol\":{\"keccak256\":\"0xf3957502df4ba01cd0c05d5cd49488dbe38f4e182718013b3fef075da95a9e3f\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1bd7cdf387e137d007f53388748fd12cbfd016127f78455e617fb55bc4a66b21\",\"dweb:/ipfs/QmVLHJ7hyuuSSLRmv3meDcRKiT42Duq4sEweBTmWMfSfk8\"]},\"src/shared/libraries/BN254Lib.sol\":{\"keccak256\":\"0x0c3a5b7dabde2f5c81f19e1a4a212308a8636b5bb4a16bb1a518d58ef4feb6f5\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://870be6219c7081ed081cee2fa9ad1e7f3efff623ae1a59aed966f2bdcee65b7a\",\"dweb:/ipfs/QmNzohb1TazCgaT1e55CMDuuG7AHdGrGA6jvT4wzxdAM52\"]},\"src/shared/libraries/CompressedTimeMath.sol\":{\"keccak256\":\"0x361023cf30593e7e27417c91af3702e75235fcab251e4ad5ac2e47306a730ec1\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://9b192242472b3126c97a4a4e4fa792809a6bf20b548a57e677f5260c0dbf3ad3\",\"dweb:/ipfs/QmfK4WAucepcqzMLu11rs68HJazwfegVsgK5tTco82SooB\"]},\"src/shared/libraries/SignatureLib.sol\":{\"keccak256\":\"0xb69989f57384383341d1bb4693fb1e6ce31a2ab6c0fadb48bf088078a332a56a\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f199be27853a14d746c567c5e3a473f474e84cfd3d119a6404e6ceff4e986e5c\",\"dweb:/ipfs/QmWsLozeiKLQbTSEUDVZK2ASEX3EodKxT4DdA9BA6bD6N2\"]},\"src/shared/libraries/TimeMath.sol\":{\"keccak256\":\"0x8da20dc8b4ce296b7c11f117a3381bfe5cd611a3512a74a500e2e54e0353417f\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://18c74be98a4e31e8a16356e573514f639a8fc43928e741f6ead81dd755e9a914\",\"dweb:/ipfs/QmPDEdYYEj3DhXjrCDPuudJbhsBaNj1sK6hH94Z86168Q3\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.30+commit.73712a01"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"contract IERC20","name":"_feeAsset","type":"address"},{"internalType":"contract IERC20","name":"_stakingAsset","type":"address"},{"internalType":"contract GSE","name":"_gse","type":"address"},{"internalType":"contract IVerifier","name":"_epochProofVerifier","type":"address"},{"internalType":"address","name":"_governance","type":"address"},{"internalType":"struct GenesisState","name":"_genesisState","type":"tuple","components":[{"internalType":"bytes32","name":"vkTreeRoot","type":"bytes32"},{"internalType":"bytes32","name":"protocolContractsHash","type":"bytes32"},{"internalType":"bytes32","name":"genesisArchiveRoot","type":"bytes32"}]},{"internalType":"struct RollupConfigInput","name":"_config","type":"tuple","components":[{"internalType":"uint256","name":"aztecSlotDuration","type":"uint256"},{"internalType":"uint256","name":"aztecEpochDuration","type":"uint256"},{"internalType":"uint256","name":"targetCommitteeSize","type":"uint256"},{"internalType":"uint256","name":"lagInEpochsForValidatorSet","type":"uint256"},{"internalType":"uint256","name":"lagInEpochsForRandao","type":"uint256"},{"internalType":"uint256","name":"aztecProofSubmissionEpochs","type":"uint256"},{"internalType":"uint256","name":"slashingQuorum","type":"uint256"},{"internalType":"uint256","name":"slashingRoundSize","type":"uint256"},{"internalType":"uint256","name":"slashingLifetimeInRounds","type":"uint256"},{"internalType":"uint256","name":"slashingExecutionDelayInRounds","type":"uint256"},{"internalType":"uint256[3]","name":"slashAmounts","type":"uint256[3]"},{"internalType":"uint256","name":"slashingOffsetInRounds","type":"uint256"},{"internalType":"bool","name":"slasherEnabled","type":"bool"},{"internalType":"address","name":"slashingVetoer","type":"address"},{"internalType":"uint256","name":"slashingDisableDuration","type":"uint256"},{"internalType":"uint256","name":"manaTarget","type":"uint256"},{"internalType":"uint256","name":"exitDelaySeconds","type":"uint256"},{"internalType":"uint32","name":"version","type":"uint32"},{"internalType":"EthValue","name":"provingCostPerMana","type":"uint256"},{"internalType":"EthPerFeeAssetE12","name":"initialEthPerFeeAsset","type":"uint256"},{"internalType":"struct RewardConfig","name":"rewardConfig","type":"tuple","components":[{"internalType":"contract IRewardDistributor","name":"rewardDistributor","type":"address"},{"internalType":"Bps","name":"sequencerBps","type":"uint32"},{"internalType":"contract IBoosterCore","name":"booster","type":"address"},{"internalType":"uint96","name":"checkpointReward","type":"uint96"}]},{"internalType":"struct RewardBoostConfig","name":"rewardBoostConfig","type":"tuple","components":[{"internalType":"uint32","name":"increment","type":"uint32"},{"internalType":"uint32","name":"maxScore","type":"uint32"},{"internalType":"uint32","name":"a","type":"uint32"},{"internalType":"uint32","name":"minimum","type":"uint32"},{"internalType":"uint32","name":"k","type":"uint32"}]},{"internalType":"struct StakingQueueConfig","name":"stakingQueueConfig","type":"tuple","components":[{"internalType":"uint256","name":"bootstrapValidatorSetSize","type":"uint256"},{"internalType":"uint256","name":"bootstrapFlushSize","type":"uint256"},{"internalType":"uint256","name":"normalFlushSizeMin","type":"uint256"},{"internalType":"uint256","name":"normalFlushSizeQuotient","type":"uint256"},{"internalType":"uint256","name":"maxQueueFlushSize","type":"uint256"}]},{"internalType":"uint256","name":"localEjectionThreshold","type":"uint256"},{"internalType":"uint256","name":"ethereumSlotDuration","type":"uint256"},{"internalType":"address","name":"sequencerRewardCalculator","type":"address"}]}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"provided","type":"uint256"},{"internalType":"uint256","name":"minimum","type":"uint256"},{"internalType":"uint256","name":"maximum","type":"uint256"}],"type":"error","name":"FeeLib__InvalidInitialEthPerFeeAsset"},{"inputs":[{"internalType":"uint256","name":"maximum","type":"uint256"},{"internalType":"uint256","name":"provided","type":"uint256"}],"type":"error","name":"FeeLib__InvalidManaLimit"},{"inputs":[{"internalType":"uint256","name":"minimum","type":"uint256"},{"internalType":"uint256","name":"provided","type":"uint256"}],"type":"error","name":"FeeLib__InvalidManaTarget"},{"inputs":[{"internalType":"uint256","name":"provided","type":"uint256"},{"internalType":"uint256","name":"maximum","type":"uint256"}],"type":"error","name":"FeeLib__ProvingCostAboveCeiling"},{"inputs":[{"internalType":"uint256","name":"provided","type":"uint256"},{"internalType":"uint256","name":"minimum","type":"uint256"}],"type":"error","name":"FeeLib__ProvingCostBelowFloor"},{"inputs":[],"type":"error","name":"InvalidShortString"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"type":"error","name":"OwnableInvalidOwner"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"type":"error","name":"OwnableUnauthorizedAccount"},{"inputs":[{"internalType":"bytes32","name":"value","type":"bytes32"}],"type":"error","name":"Rollup__FieldElementOutOfRange"},{"inputs":[{"internalType":"uint256","name":"minimum","type":"uint256"},{"internalType":"uint256","name":"provided","type":"uint256"}],"type":"error","name":"Rollup__InvalidProofSubmissionEpochs"},{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"type":"error","name":"SafeCastOverflowedUintDowncast"},{"inputs":[{"internalType":"uint256","name":"bootstrapFlushSize","type":"uint256"},{"internalType":"uint256","name":"maxQueueFlushSize","type":"uint256"}],"type":"error","name":"Staking__BootstrapFlushSizeAboveMax"},{"inputs":[{"internalType":"uint256","name":"exitDelaySeconds","type":"uint256"},{"internalType":"uint256","name":"slasherExecutionDelay","type":"uint256"}],"type":"error","name":"Staking__ExitDelayAboveSlasherDelay"},{"inputs":[],"type":"error","name":"Staking__InvalidBootstrapFlushSize"},{"inputs":[],"type":"error","name":"Staking__InvalidMaxQueueFlushSize"},{"inputs":[],"type":"error","name":"Staking__InvalidNormalFlushSizeQuotient"},{"inputs":[],"type":"error","name":"Staking__InvalidStakingQueueConfig"},{"inputs":[{"internalType":"string","name":"str","type":"string"}],"type":"error","name":"StringTooLong"},{"inputs":[{"internalType":"uint256","name":"checkpointNumber","type":"uint256","indexed":true}],"type":"event","name":"CheckpointInvalidated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"checkpointNumber","type":"uint256","indexed":true},{"internalType":"bytes32","name":"archive","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"versionedBlobHashes","type":"bytes32[]","indexed":false},{"internalType":"bytes32","name":"payloadDigest","type":"bytes32","indexed":false},{"internalType":"bytes32","name":"attestationsHash","type":"bytes32","indexed":false}],"type":"event","name":"CheckpointProposed","anonymous":false},{"inputs":[{"internalType":"address","name":"attester","type":"address","indexed":true},{"internalType":"address","name":"withdrawer","type":"address","indexed":true},{"internalType":"struct G1Point","name":"publicKeyInG1","type":"tuple","components":[{"internalType":"uint256","name":"x","type":"uint256"},{"internalType":"uint256","name":"y","type":"uint256"}],"indexed":false},{"internalType":"struct G2Point","name":"publicKeyInG2","type":"tuple","components":[{"internalType":"uint256","name":"x0","type":"uint256"},{"internalType":"uint256","name":"x1","type":"uint256"},{"internalType":"uint256","name":"y0","type":"uint256"},{"internalType":"uint256","name":"y1","type":"uint256"}],"indexed":false},{"internalType":"struct G1Point","name":"proofOfPossession","type":"tuple","components":[{"internalType":"uint256","name":"x","type":"uint256"},{"internalType":"uint256","name":"y","type":"uint256"}],"indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Deposit","anonymous":false},{"inputs":[],"type":"event","name":"EIP712DomainChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"escapeHatch","type":"address","indexed":false}],"type":"event","name":"EscapeHatchSet","anonymous":false},{"inputs":[{"internalType":"address","name":"attester","type":"address","indexed":true},{"internalType":"address","name":"withdrawer","type":"address","indexed":true},{"internalType":"struct G1Point","name":"publicKeyInG1","type":"tuple","components":[{"internalType":"uint256","name":"x","type":"uint256"},{"internalType":"uint256","name":"y","type":"uint256"}],"indexed":false},{"internalType":"struct G2Point","name":"publicKeyInG2","type":"tuple","components":[{"internalType":"uint256","name":"x0","type":"uint256"},{"internalType":"uint256","name":"x1","type":"uint256"},{"internalType":"uint256","name":"y0","type":"uint256"},{"internalType":"uint256","name":"y1","type":"uint256"}],"indexed":false},{"internalType":"struct G1Point","name":"proofOfPossession","type":"tuple","components":[{"internalType":"uint256","name":"x","type":"uint256"},{"internalType":"uint256","name":"y","type":"uint256"}],"indexed":false}],"type":"event","name":"FailedDeposit","anonymous":false},{"inputs":[{"internalType":"uint256","name":"checkpointNumber","type":"uint256","indexed":true},{"internalType":"address","name":"proverId","type":"address","indexed":true}],"type":"event","name":"L2ProofVerified","anonymous":false},{"inputs":[{"internalType":"address","name":"legacySlasher","type":"address","indexed":true},{"internalType":"uint256","name":"authorizedUntil","type":"uint256","indexed":false}],"type":"event","name":"LegacySlasherAuthorized","anonymous":false},{"inputs":[{"internalType":"uint256","name":"manaTarget","type":"uint256","indexed":true}],"type":"event","name":"ManaTargetUpdated","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":"slasher","type":"address","indexed":true}],"type":"event","name":"PendingSlasherCancelled","anonymous":false},{"inputs":[{"internalType":"address","name":"slasher","type":"address","indexed":true},{"internalType":"uint256","name":"readyAt","type":"uint256","indexed":false}],"type":"event","name":"PendingSlasherQueued","anonymous":false},{"inputs":[{"internalType":"uint16","name":"oldBps","type":"uint16","indexed":false},{"internalType":"uint16","name":"newBps","type":"uint16","indexed":false}],"type":"event","name":"ProtocolFeeMarginUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"oldRecipient","type":"address","indexed":false},{"internalType":"address","name":"newRecipient","type":"address","indexed":false}],"type":"event","name":"ProtocolFeeRecipientUpdated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"provenCheckpointNumber","type":"uint256","indexed":false},{"internalType":"uint256","name":"pendingCheckpointNumber","type":"uint256","indexed":false}],"type":"event","name":"PrunedPending","anonymous":false},{"inputs":[{"internalType":"struct MutableRewardConfig","name":"rewardConfig","type":"tuple","components":[{"internalType":"Bps","name":"sequencerBps","type":"uint32"},{"internalType":"uint96","name":"checkpointReward","type":"uint96"}],"indexed":false}],"type":"event","name":"RewardConfigUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"oldCalculator","type":"address","indexed":false},{"internalType":"address","name":"newCalculator","type":"address","indexed":false}],"type":"event","name":"SequencerRewardCalculatorUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"attester","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Slashed","anonymous":false},{"inputs":[{"internalType":"address","name":"oldSlasher","type":"address","indexed":true},{"internalType":"address","name":"newSlasher","type":"address","indexed":true}],"type":"event","name":"SlasherUpdated","anonymous":false},{"inputs":[{"internalType":"struct StakingQueueConfig","name":"config","type":"tuple","components":[{"internalType":"uint256","name":"bootstrapValidatorSetSize","type":"uint256"},{"internalType":"uint256","name":"bootstrapFlushSize","type":"uint256"},{"internalType":"uint256","name":"normalFlushSizeMin","type":"uint256"},{"internalType":"uint256","name":"normalFlushSizeQuotient","type":"uint256"},{"internalType":"uint256","name":"maxQueueFlushSize","type":"uint256"}],"indexed":false}],"type":"event","name":"StakingQueueConfigUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"attester","type":"address","indexed":true},{"internalType":"address","name":"withdrawer","type":"address","indexed":true}],"type":"event","name":"ValidatorQueued","anonymous":false},{"inputs":[{"internalType":"address","name":"attester","type":"address","indexed":true},{"internalType":"address","name":"recipient","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"WithdrawFinalized","anonymous":false},{"inputs":[{"internalType":"address","name":"attester","type":"address","indexed":true},{"internalType":"address","name":"recipient","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"WithdrawInitiated","anonymous":false},{"inputs":[{"internalType":"address","name":"attester","type":"address","indexed":true},{"internalType":"address","name":"withdrawer","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"uint256","name":"withdrawalId","type":"uint256","indexed":false}],"type":"event","name":"WithdrawInitiatedByAttester","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"L1_BLOCK_AT_GENESIS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"cancelSetSlasher"},{"inputs":[],"stateMutability":"view","type":"function","name":"checkBlob","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"checkpointRandao"},{"inputs":[{"internalType":"address","name":"_coinbase","type":"address"},{"internalType":"Epoch[]","name":"_epochs","type":"uint256[]"}],"stateMutability":"nonpayable","type":"function","name":"claimProverRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_coinbase","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"claimSequencerRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_attester","type":"address"},{"internalType":"address","name":"_withdrawer","type":"address"},{"internalType":"struct G1Point","name":"_publicKeyInG1","type":"tuple","components":[{"internalType":"uint256","name":"x","type":"uint256"},{"internalType":"uint256","name":"y","type":"uint256"}]},{"internalType":"struct G2Point","name":"_publicKeyInG2","type":"tuple","components":[{"internalType":"uint256","name":"x0","type":"uint256"},{"internalType":"uint256","name":"x1","type":"uint256"},{"internalType":"uint256","name":"y0","type":"uint256"},{"internalType":"uint256","name":"y1","type":"uint256"}]},{"internalType":"struct G1Point","name":"_proofOfPossession","type":"tuple","components":[{"internalType":"uint256","name":"x","type":"uint256"},{"internalType":"uint256","name":"y","type":"uint256"}]},{"internalType":"bool","name":"_moveWithLatestRollup","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"deposit"},{"inputs":[],"stateMutability":"view","type":"function","name":"eip712Domain","outputs":[{"internalType":"bytes1","name":"fields","type":"bytes1"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"version","type":"string"},{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"verifyingContract","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"uint256[]","name":"extensions","type":"uint256[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"finalizeSetSlasher"},{"inputs":[{"internalType":"address","name":"_attester","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"finalizeWithdraw"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"flushEntryQueue"},{"inputs":[{"internalType":"uint256","name":"_toAdd","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"flushEntryQueue"},{"inputs":[],"stateMutability":"view","type":"function","name":"getActiveAttesterCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getEntryQueueFlushSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_attester","type":"address"},{"internalType":"address","name":"_recipient","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initiateWithdraw","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_attester","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initiateWithdrawByAttester"},{"inputs":[{"internalType":"struct AttesterExitAuthorization[]","name":"_authorizations","type":"tuple[]","components":[{"internalType":"address","name":"attester","type":"address"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"struct Signature","name":"signature","type":"tuple","components":[{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}]}]}],"stateMutability":"nonpayable","type":"function","name":"initiateWithdrawByAttesterBatch"},{"inputs":[{"internalType":"struct AttesterExitAuthorization[]","name":"_authorizations","type":"tuple[]","components":[{"internalType":"address","name":"attester","type":"address"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"struct Signature","name":"signature","type":"tuple","components":[{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}]}]}],"stateMutability":"nonpayable","type":"function","name":"initiateWithdrawByAttesterBatchUpToLimit","outputs":[{"internalType":"uint256","name":"exitedCount","type":"uint256"}]},{"inputs":[{"internalType":"struct AttesterExitAuthorization","name":"_authorization","type":"tuple","components":[{"internalType":"address","name":"attester","type":"address"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"struct Signature","name":"signature","type":"tuple","components":[{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}]}]}],"stateMutability":"nonpayable","type":"function","name":"initiateWithdrawByAttesterWithSignature"},{"inputs":[{"internalType":"uint256","name":"_checkpointNumber","type":"uint256"},{"internalType":"struct CommitteeAttestations","name":"_attestations","type":"tuple","components":[{"internalType":"bytes","name":"signatureIndices","type":"bytes"},{"internalType":"bytes","name":"signaturesOrAddresses","type":"bytes"}]},{"internalType":"address[]","name":"_committee","type":"address[]"},{"internalType":"uint256","name":"_invalidIndex","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"invalidateBadAttestation"},{"inputs":[{"internalType":"uint256","name":"_checkpointNumber","type":"uint256"},{"internalType":"struct CommitteeAttestations","name":"_attestations","type":"tuple","components":[{"internalType":"bytes","name":"signatureIndices","type":"bytes"},{"internalType":"bytes","name":"signaturesOrAddresses","type":"bytes"}]},{"internalType":"address[]","name":"_committee","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"invalidateInsufficientAttestations"},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct ProposeArgs","name":"_args","type":"tuple","components":[{"internalType":"bytes32","name":"archive","type":"bytes32"},{"internalType":"struct OracleInput","name":"oracleInput","type":"tuple","components":[{"internalType":"int256","name":"feeAssetPriceModifier","type":"int256"}]},{"internalType":"struct ProposedHeader","name":"header","type":"tuple","components":[{"internalType":"bytes32","name":"lastArchiveRoot","type":"bytes32"},{"internalType":"bytes32","name":"blockHeadersHash","type":"bytes32"},{"internalType":"bytes32","name":"blobsHash","type":"bytes32"},{"internalType":"bytes32","name":"inboxRollingHash","type":"bytes32"},{"internalType":"bytes32","name":"outHash","type":"bytes32"},{"internalType":"Slot","name":"slotNumber","type":"uint256"},{"internalType":"Timestamp","name":"timestamp","type":"uint256"},{"internalType":"address","name":"coinbase","type":"address"},{"internalType":"bytes32","name":"feeRecipient","type":"bytes32"},{"internalType":"struct GasFees","name":"gasFees","type":"tuple","components":[{"internalType":"uint128","name":"feePerDaGas","type":"uint128"},{"internalType":"uint128","name":"feePerL2Gas","type":"uint128"}]},{"internalType":"uint256","name":"totalManaUsed","type":"uint256"},{"internalType":"uint256","name":"accumulatedFees","type":"uint256"}]},{"internalType":"uint256","name":"bucketHint","type":"uint256"}]},{"internalType":"struct CommitteeAttestations","name":"_attestations","type":"tuple","components":[{"internalType":"bytes","name":"signatureIndices","type":"bytes"},{"internalType":"bytes","name":"signaturesOrAddresses","type":"bytes"}]},{"internalType":"address[]","name":"_signers","type":"address[]"},{"internalType":"struct Signature","name":"_attestationsAndSignersSignature","type":"tuple","components":[{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}]},{"internalType":"bytes","name":"_blobInput","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"propose"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"prune"},{"inputs":[{"internalType":"address","name":"_slasher","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"queueSetSlasher"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"_escapeHatch","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setEscapeHatch"},{"inputs":[{"internalType":"uint16","name":"_protocolFeeMarginBps","type":"uint16"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFeeMargin"},{"inputs":[{"internalType":"address","name":"_recipient","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFeeRecipient"},{"inputs":[{"internalType":"EthValue","name":"_provingCostPerMana","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setProvingCostPerMana"},{"inputs":[{"internalType":"struct MutableRewardConfig","name":"_config","type":"tuple","components":[{"internalType":"Bps","name":"sequencerBps","type":"uint32"},{"internalType":"uint96","name":"checkpointReward","type":"uint96"}]}],"stateMutability":"nonpayable","type":"function","name":"setRewardConfig"},{"inputs":[{"internalType":"address","name":"_calculator","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setSequencerRewardCalculator"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"setupEpoch"},{"inputs":[{"internalType":"address","name":"_attester","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"slash","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"struct SubmitEpochRootProofArgs","name":"_args","type":"tuple","components":[{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"},{"internalType":"struct PublicInputArgs","name":"args","type":"tuple","components":[{"internalType":"bytes32","name":"previousArchive","type":"bytes32"},{"internalType":"bytes32","name":"endArchive","type":"bytes32"},{"internalType":"bytes32","name":"outHash","type":"bytes32"},{"internalType":"bytes32","name":"previousInboxRollingHash","type":"bytes32"},{"internalType":"bytes32","name":"endInboxRollingHash","type":"bytes32"},{"internalType":"address","name":"proverId","type":"address"}]},{"internalType":"struct ProvenCheckpointFees[]","name":"provenCheckpointFees","type":"tuple[]","components":[{"internalType":"address","name":"coinbase","type":"address"},{"internalType":"uint256","name":"accumulatedFees","type":"uint256"}]},{"internalType":"struct ProposedHeader[]","name":"headers","type":"tuple[]","components":[{"internalType":"bytes32","name":"lastArchiveRoot","type":"bytes32"},{"internalType":"bytes32","name":"blockHeadersHash","type":"bytes32"},{"internalType":"bytes32","name":"blobsHash","type":"bytes32"},{"internalType":"bytes32","name":"inboxRollingHash","type":"bytes32"},{"internalType":"bytes32","name":"outHash","type":"bytes32"},{"internalType":"Slot","name":"slotNumber","type":"uint256"},{"internalType":"Timestamp","name":"timestamp","type":"uint256"},{"internalType":"address","name":"coinbase","type":"address"},{"internalType":"bytes32","name":"feeRecipient","type":"bytes32"},{"internalType":"struct GasFees","name":"gasFees","type":"tuple","components":[{"internalType":"uint128","name":"feePerDaGas","type":"uint128"},{"internalType":"uint128","name":"feePerL2Gas","type":"uint128"}]},{"internalType":"uint256","name":"totalManaUsed","type":"uint256"},{"internalType":"uint256","name":"accumulatedFees","type":"uint256"}]},{"internalType":"struct CommitteeAttestations","name":"attestations","type":"tuple","components":[{"internalType":"bytes","name":"signatureIndices","type":"bytes"},{"internalType":"bytes","name":"signaturesOrAddresses","type":"bytes"}]},{"internalType":"bytes","name":"blobInputs","type":"bytes"},{"internalType":"bytes","name":"proof","type":"bytes"}]}],"stateMutability":"nonpayable","type":"function","name":"submitEpochRootProof"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"updateL1GasFeeOracle"},{"inputs":[{"internalType":"uint256","name":"_manaTarget","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"updateManaTarget"},{"inputs":[{"internalType":"struct StakingQueueConfig","name":"_config","type":"tuple","components":[{"internalType":"uint256","name":"bootstrapValidatorSetSize","type":"uint256"},{"internalType":"uint256","name":"bootstrapFlushSize","type":"uint256"},{"internalType":"uint256","name":"normalFlushSizeMin","type":"uint256"},{"internalType":"uint256","name":"normalFlushSizeQuotient","type":"uint256"},{"internalType":"uint256","name":"maxQueueFlushSize","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"updateStakingQueueConfig"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"vote"}],"devdoc":{"kind":"dev","methods":{"checkpointRandao()":{"details":"Can be called by anyone. Takes a snapshot of the current randao to ensure unpredictable but deterministic validator selection. Automatically called from setupEpoch. Can be used as a cheaper alternative to `setupEpoch` to update the randao checkpoints."},"claimProverRewards(address,uint256[])":{"details":"Provers earn rewards for successfully proving epoch transitions. Each epoch can only be claimed once per prover.","params":{"_coinbase":"The address that has accumulated the rewards - rewards are sent to this address","_epochs":"Array of epochs to claim rewards for"},"returns":{"_0":"The total amount of rewards claimed"}},"claimSequencerRewards(address)":{"details":"Transfers all accumulated rewards to the recipient.","params":{"_coinbase":"The address that has accumulated the rewards - rewards are sent to this address"},"returns":{"_0":"The amount of rewards claimed"}},"constructor":{"details":"Sets up time parameters, deploys auxiliary contracts (slasher, reward booster), initializes staking, validator selection, and creates inbox/outbox contracts","params":{"_config":"Comprehensive configuration including timing, staking, slashing, reward parameters, and unlock timestamp","_epochProofVerifier":"The honk verifier contract for root epoch proofs","_feeAsset":"The ERC20 token used for transaction fees","_genesisState":"Initial state containing VK tree root, protocol contracts hash, and genesis archive","_governance":"The address with owner privileges","_gse":"The Governance Staking Escrow contract","_stakingAsset":"The ERC20 token used for validator staking"}},"deposit(address,address,(uint256,uint256),(uint256,uint256,uint256,uint256),(uint256,uint256),bool)":{"details":"The caller must have approved the staking asset. Validators enter a queue before becoming active.","params":{"_attester":"The address that will act as the validator (sign attestations)","_moveWithLatestRollup":"Whether to follow the chain if governance migrates to a new rollup version","_proofOfPossession":"The proof of possession to show that the keys in G1 and G2 share secret key","_publicKeyInG1":"The G1 point for the BLS public key (used for efficient signature verification in GSE)","_publicKeyInG2":"The G2 point for the BLS public key (used for BLS aggregation and pairing operations in GSE)","_withdrawer":"The address that can withdraw the stake"}},"eip712Domain()":{"details":"See {IERC-5267}."},"finalizeSetSlasher()":{"details":"Permissionless: the queued payload and the elapsed delay are the authorization. Anyone may poke the transaction through."},"finalizeWithdraw(address)":{"details":"Can be called by anyone. Transfers the stake to the designated recipient.","params":{"_attester":"The validator address whose withdrawal to finalize"}},"flushEntryQueue(uint256)":{"details":"Can be called by anyone. The number of validators added is limited by queue configuration. This helps maintain a controlled growth rate of the validator set.","params":{"_toAdd":"- The max number the caller will try to add"}},"getActiveAttesterCount()":{"details":"Active validators can propose checkpoints and participate in committees","returns":{"_0":"The count of validators in the active set"}},"getEntryQueueFlushSize()":{"details":"Based on queue configuration and current validator set size. Used by flushEntryQueue.","returns":{"_0":"The number of validators that can be added in the next flush"}},"initiateWithdraw(address,address)":{"details":"Starts the exit delay period. The validator is immediately removed from the active set. Only the registered withdrawer can initiate withdrawal.","params":{"_attester":"The validator address to withdraw","_recipient":"The address to receive the withdrawn stake"},"returns":{"_0":"True if withdrawal was initiated, false if already initiated"}},"initiateWithdrawByAttester(address)":{"details":"The registered withdrawer retains control of the payout recipient.","params":{"_attester":"The validator position to exit."}},"initiateWithdrawByAttesterBatch((address,uint256,(uint8,bytes32,bytes32))[])":{"details":"Shared instance and exit-limit checks are performed once for the whole batch.","params":{"_authorizations":"The signed exit authorizations to execute atomically."}},"initiateWithdrawByAttesterBatchUpToLimit((address,uint256,(uint8,bytes32,bytes32))[])":{"details":"Processes a prefix of the array and returns zero when no capacity remains.","params":{"_authorizations":"The ordered signed exit authorizations."},"returns":{"exitedCount":"The number of authorizations processed from the start of the array."}},"initiateWithdrawByAttesterWithSignature((address,uint256,(uint8,bytes32,bytes32)))":{"details":"Anyone may relay the authorization. The registered withdrawer retains control of the payout recipient.","params":{"_authorization":"The attester, deadline, and signature authorizing the exit."}},"invalidateBadAttestation(uint256,(bytes,bytes),address[],uint256)":{"details":"Anyone can call this if they detect an invalid signature. This removes the checkpoint and all subsequent checkpoints from the pending chain. Used to maintain pending chain integrity.","params":{"_attestations":"The attestations that were submitted with the checkpoint","_checkpointNumber":"The checkpoint number to invalidate","_committee":"The committee members for the checkpoint's epoch","_invalidIndex":"The index of the invalid signature in the attestations"}},"invalidateInsufficientAttestations(uint256,(bytes,bytes),address[])":{"details":"Anyone can call this if a checkpoint doesn't meet the required attestation threshold. Even if all signatures are valid, checkpoints need a minimum number of attestations.","params":{"_attestations":"The attestations that were submitted with the checkpoint","_checkpointNumber":"The checkpoint number to invalidate","_committee":"The committee members for the checkpoint's epoch"}},"owner()":{"details":"Returns the address of the current owner."},"propose((bytes32,(int256),(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256),uint256),(bytes,bytes),address[],(uint8,bytes32,bytes32),bytes)":{"details":"Core function for checkpoint production. The attestations must include a signature from designated proposer to be accepted. The checkpoint must build on the previous checkpoint and include valid attestations from committee members. Failed proposals revert; successful ones emit CheckpointProposed and advance the chain state. See ProposeLib#propose for more details.","params":{"_args":"checkpoint data including header, state updates, oracle inputs, and archive","_attestations":"Aggregated signatures from committee members attesting to checkpoint validity","_blobInput":"Blob commitment data for data availability (format: [numBlobs][48-byte commitments...])","_signers":"Addresses of committee members who signed (must match attestations)"}},"prune()":{"details":"Can only be called after the proof submission window has expired for an epoch. This maintains liveness by preventing the chain from being stuck on unproven checkpoints. Pruning occurs at epoch boundaries and removes all checkpoints in unproven epochs."},"queueSetSlasher(address)":{"details":"The zero address is permissible. Setting to this would imply that the rollup has at least temporarily relinquished their ability to slash.","params":{"_slasher":"The address of the new slasher contract"}},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"setEscapeHatch(address)":{"details":"Only callable by owner. The escape hatch provides an alternative block production path when the committee is unavailable. Once set, the address is immutable for the life of the rollup -- there is no replacement path. To launch without an escape hatch, simply never call this function.","params":{"_escapeHatch":"The address of the EscapeHatch contract (must be non-zero)"}},"setProtocolFeeMargin(uint16)":{"details":"Only callable by owner. Increases are rate-limited (30-day cooldown, x3/2 step on the fee multiplier); decreases are immediate. Setting the current value is a no-op and emits no event.","params":{"_protocolFeeMarginBps":"The new margin in basis points"}},"setProtocolFeeRecipient(address)":{"details":"Only callable by owner. Rejects the zero address.","params":{"_recipient":"The new protocol fee recipient"}},"setProvingCostPerMana(uint256)":{"details":"Only callable by owner. This affects how proving costs are calculated in the fee model.","params":{"_provingCostPerMana":"The cost in ETH per unit of mana for proving"}},"setRewardConfig((uint32,uint96))":{"details":"Only callable by the contract owner. The `rewardDistributor` and `booster` addresses are deliberately NOT exposed by this setter -- they are written exactly once at construction by {_initializeRewards} and immutable thereafter. Rotating either address requires redeploying the rollup via `Registry.addRollup`.","params":{"_config":"The new mutable reward configuration"}},"setSequencerRewardCalculator(address)":{"details":"Only callable by the contract owner. Any address is accepted: zero disables the calculator, and an address that does not answer like an {ISequencerRewardCalculator} makes every checkpoint receive the default sequencer reward. Emits {IRollupCore.SequencerRewardCalculatorUpdated} with the previous and new addresses.","params":{"_calculator":"The new calculator, or zero for none"}},"setupEpoch()":{"details":"Can be called by anyone at the start of an epoch. Samples the committee and determines proposers for all slots in the epoch. Also stores a seed that is used for future sampling. The corresponding library functionality is automatically called when `RollupCore.propose(...)` is called (via the `RollupOperationsExtLib.propose(...)` -> `ProposeLib.propose(...)` -> `ValidatorSelectionLib.setupEpoch(...)`). If there are missed proposals then setupEpoch does not get called automatically. Since the next committee selection is computed based on the stored randao and the epoch number, failing to update the randao stored will keep the committee predictable longer into the future. We would only fail to get a fresh randao if: 1. All the proposals in the epoch were missed 2. Nobody called setupEpoch on the Rollup contract While an attacker might theoretically benefit from preventing a fresh seed (e.g. by DoSing all proposers), preventing anyone from calling this function directly is not really feasible. This makes attacks on seed generation impractical."},"slash(address,uint256)":{"details":"Only callable by the authorized slasher contract. Reduces the validator's stake.","params":{"_amount":"The amount of stake to slash","_attester":"The validator to slash"},"returns":{"_0":"True if slashing was successful"}},"submitEpochRootProof((uint256,uint256,(bytes32,bytes32,bytes32,bytes32,bytes32,address),(address,uint256)[],(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256)[],(bytes,bytes),bytes,bytes))":{"details":"Proves the validity of a prefix of the checkpoints in an epoch. Once proven, checkpoints become final and cannot be pruned. The proof must be submitted within the submission window. Successful submission triggers prover rewards.","params":{"_args":"Contains the epoch range, public inputs, fees, attestations, and the ZK proof"}},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"updateL1GasFeeOracle()":{"details":"Automatically called during checkpoint proposal but can be called manually. Updates the fee model's view of L1 costs to ensure accurate L2 fee pricing. Uses current L1 gas price and blob gas price for calculations."},"updateManaTarget(uint256)":{"details":"Only callable by owner. The new target must be greater than or equal to the current target to avoid the ability for governance to use it directly to kill an old rollup. Mana is the unit of computational work in Aztec.","params":{"_manaTarget":"The new target mana per slot"}},"updateStakingQueueConfig((uint256,uint256,uint256,uint256,uint256))":{"details":"Only callable by owner. Controls how validators enter the active set.","params":{"_config":"New configuration including queue size limits and timing parameters"}},"vote(uint256)":{"details":"This enables the rollup to participate in governance by voting on proposals. See StakingLib.sol for more details on the voting mechanism.","params":{"_proposalId":"The ID of the proposal to vote on"}}},"version":1},"userdoc":{"kind":"user","methods":{"L1_BLOCK_AT_GENESIS()":{"notice":"The L1 block number when this rollup was deployed"},"cancelSetSlasher()":{"notice":"Cancels the pending slasher replacement. Reverts if nothing is pending."},"checkBlob()":{"notice":"Flag to enable/disable blob verification during simulations"},"checkpointRandao()":{"notice":"Captures the randao for future validator selection"},"claimProverRewards(address,uint256[])":{"notice":"Claims prover rewards for specified epochs"},"claimSequencerRewards(address)":{"notice":"Claims accumulated rewards for a sequencer (checkpoint proposer)"},"constructor":{"notice":"Initializes the Aztec rollup with all required configurations"},"deposit(address,address,(uint256,uint256),(uint256,uint256,uint256,uint256),(uint256,uint256),bool)":{"notice":"Deposits stake to become a validator"},"finalizeSetSlasher()":{"notice":"Applies the pending slasher replacement once the 60-day delay has elapsed."},"finalizeWithdraw(address)":{"notice":"Completes a withdrawal after the exit delay has passed"},"flushEntryQueue(uint256)":{"notice":"Processes the validator entry queue to add new validators to the active set"},"getActiveAttesterCount()":{"notice":"Returns the current number of active validators"},"getEntryQueueFlushSize()":{"notice":"Returns the maximum number of validators that can be added from the entry queue"},"initiateWithdraw(address,address)":{"notice":"Initiates withdrawal of a validator's stake"},"initiateWithdrawByAttester(address)":{"notice":"Initiates withdrawal of a validator's stake by the attester"},"initiateWithdrawByAttesterBatch((address,uint256,(uint8,bytes32,bytes32))[])":{"notice":"Initiates multiple attester withdrawals using EIP-712 authorizations."},"initiateWithdrawByAttesterBatchUpToLimit((address,uint256,(uint8,bytes32,bytes32))[])":{"notice":"Initiates as many authorized attester withdrawals as the current exit limit permits."},"initiateWithdrawByAttesterWithSignature((address,uint256,(uint8,bytes32,bytes32)))":{"notice":"Initiates an attester withdrawal using an EIP-712 authorization."},"invalidateBadAttestation(uint256,(bytes,bytes),address[],uint256)":{"notice":"Invalidates a checkpoint due to a bad attestation signature"},"invalidateInsufficientAttestations(uint256,(bytes,bytes),address[])":{"notice":"Invalidates a checkpoint due to insufficient valid attestations (>2/3 of committee required)"},"propose((bytes32,(int256),(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256),uint256),(bytes,bytes),address[],(uint8,bytes32,bytes32),bytes)":{"notice":"Proposes a new checkpoint to extend the chain"},"prune()":{"notice":"Removes unproven checkpoints from the pending chain"},"queueSetSlasher(address)":{"notice":"Queues a slasher replacement. Takes effect only after a 60-day delay via {finalizeSetSlasher}. Validators who object to the change have time to exit before it lands. Overwrites any pending change, resetting the timer."},"setEscapeHatch(address)":{"notice":"Sets the escape hatch contract address. One-shot: callable at most once per rollup."},"setProtocolFeeMargin(uint16)":{"notice":"Updates the protocol fee margin applied on top of operator cost in the mana base fee"},"setProtocolFeeRecipient(address)":{"notice":"Updates the recipient of the protocol fee tranche of the reward waterfall"},"setProvingCostPerMana(uint256)":{"notice":"Updates the cost of proving per unit of mana"},"setRewardConfig((uint32,uint96))":{"notice":"Updates the mutable reward configuration (sequencer/prover split and checkpoint reward)."},"setSequencerRewardCalculator(address)":{"notice":"Replaces the sequencer reward calculator consulted when epoch proofs pay checkpoint rewards"},"setupEpoch()":{"notice":"Sets up validator selection for the current epoch"},"slash(address,uint256)":{"notice":"Slashes a validator's stake for misbehavior"},"submitEpochRootProof((uint256,uint256,(bytes32,bytes32,bytes32,bytes32,bytes32,address),(address,uint256)[],(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256)[],(bytes,bytes),bytes,bytes))":{"notice":"Submits a zero-knowledge proof for an epoch's state transition"},"updateL1GasFeeOracle()":{"notice":"Updates the L1 gas fee oracle with current gas prices"},"updateManaTarget(uint256)":{"notice":"Updates the target mana (computational units) per slot"},"updateStakingQueueConfig((uint256,uint256,uint256,uint256,uint256))":{"notice":"Updates the configuration for the staking entry queue"},"vote(uint256)":{"notice":"Allows the rollup itself to vote on governance proposals"}},"version":1}},"settings":{"remappings":["@aztec-blob-lib/=src/mock/libraries/","@aztec/=src/","@generated/=generated/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@oz/=lib/openzeppelin-contracts/contracts/","@test/=test/","@zkpassport-test/=lib/circuits/src/solidity/test/","@zkpassport/=lib/circuits/src/solidity/src/","circuits/=lib/circuits/src/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","halmos-cheatcodes/=lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/","openzeppelin-contracts/=lib/openzeppelin-contracts/"],"optimizer":{"enabled":true,"runs":100},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/core/RollupCore.sol":"RollupCore"},"evmVersion":"prague","libraries":{}},"sources":{"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"keccak256":"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb","urls":["bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6","dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1363.sol":{"keccak256":"0x9b6b3e7803bc5f2f8cd7ad57db8ac1def61a9930a5a3107df4882e028a9605d7","urls":["bzz-raw://da62d6be1f5c6edf577f0cb45666a8aa9c2086a4bac87d95d65f02e2f4c36a4b","dweb:/ipfs/QmNkpvBpoCMvX8JwAFNSc5XxJ2q5BXJpL5L1txb4QkqVFF"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol":{"keccak256":"0xde7e9fd9aee8d4f40772f96bb3b58836cbc6dfc0227014a061947f8821ea9724","urls":["bzz-raw://11fea9f8bc98949ac6709f0c1699db7430d2948137aa94d5a9e95a91f61a710a","dweb:/ipfs/QmQdfRXxQjwP6yn3DVo1GHPpriKNcFghSPi94Z1oKEFUNS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol":{"keccak256":"0xce41876e78d1badc0512229b4d14e4daf83bc1003d7f83978d18e0e56f965b9c","urls":["bzz-raw://a2608291cb038b388d80b79a06b6118a42f7894ff67b7da10ec0dbbf5b2973ba","dweb:/ipfs/QmWohqcBLbcxmA4eGPhZDXe5RYMMEEpFq22nfkaUMvTfw1"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC5267.sol":{"keccak256":"0x92aa1df62dc3d33f1656d63bede0923e0df0b706ad4137c8b10b0a8fe549fd92","urls":["bzz-raw://c5c0f29195ad64cbe556da8e257dac8f05f78c53f90323c0d2accf8e6922d33a","dweb:/ipfs/QmQ61TED8uaCZwcbh8KkgRSsCav7x7HbcGHwHts3U4DmUP"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Clones.sol":{"keccak256":"0x1206c89e10de6977cbeda13f01c7956c1159cf9f8565aa56b8f05f7c838429bf","urls":["bzz-raw://1d3b3da61df7796a528ec9abfbb63288cf3ac63e3c736407ae4eed2bca018695","dweb:/ipfs/QmYgttRpNJeRgjzL2rwMEHjFuVXABxPGApe5bpmsHtdfjE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0xe06a3f08a987af6ad2e1c1e774405d4fe08f1694b67517438b467cecf0da0ef7","urls":["bzz-raw://df6f0c459663c9858b6cba2cda1d14a7d05a985bed6d2de72bd8e78c25ee79db","dweb:/ipfs/QmeTTxZ7qVk9rjEv2R4CpCwdf8UMCcRqDNMvzNxHc3Fnn9"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x4251fed1ac036ad28996501522371736318527d7bf2bf7d66fbd2769d6c4771b","urls":["bzz-raw://b2df261bd4de240f54c5829faeaf0ffc919a01f1497cf7ffd8a9a544bdec8fca","dweb:/ipfs/Qmb9ndUuv9RZPKJXZGzjVuhmNuoizxuGRn4QMBmdmLcxS3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2","urls":["bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12","dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Create2.sol":{"keccak256":"0xbb7e8401583d26268ea9103013bcdcd90866a7718bd91105ebd21c9bf11f4f06","urls":["bzz-raw://866a11ad89c93ee918078f7a46ae31e17d89216ce64603f0d34be7ed0a5c520e","dweb:/ipfs/QmW3ckLEJg2v2NzuVLNJFmRuerGSipw6Dzg6ntbmqbAGoC"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Errors.sol":{"keccak256":"0x6afa713bfd42cf0f7656efa91201007ac465e42049d7de1d50753a373648c123","urls":["bzz-raw://ba1d02f4847670a1b83dec9f7d37f0b0418d6043447b69f3a29a5f9efc547fcf","dweb:/ipfs/QmQ7iH2keLNUKgq2xSWcRmuBE5eZ3F5whYAkAGzCNNoEWB"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Panic.sol":{"keccak256":"0xf7fe324703a64fc51702311dc51562d5cb1497734f074e4f483bfb6717572d7a","urls":["bzz-raw://c6a5ff4f9fd8649b7ee20800b7fa387d3465bd77cf20c2d1068cd5c98e1ed57a","dweb:/ipfs/QmVSaVJf9FXFhdYEYeCEfjMVHrxDh5qL4CGkxdMWpQCrqG"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/ShortStrings.sol":{"keccak256":"0x7d94fa0af099a2172eb01f9c8a8a443cbe7e0e43654841563e4e09968efdb549","urls":["bzz-raw://65e38fb76b6add407d4557753ae83dd1268e8261195dbe5c19a580d5ba6e4e9a","dweb:/ipfs/QmTkGSJtaQrqjcyWM4AgemeEmKgtDydKPPVRajsUJRQSrK"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/SlotDerivation.sol":{"keccak256":"0x8447b57b63810fe2e367c09496a966f143ec0e825d71ddb9fce2506cff84b618","urls":["bzz-raw://996cb48f793bf151555045b37138e36b3cdb31d6bc6552d3149285260be00cfb","dweb:/ipfs/QmcLaTTMNVbkMx58xhkp6GeFt4V3GtSyupZuaKG3vYW2Zc"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xcf74f855663ce2ae00ed8352666b7935f6cddea2932fdf2c3ecd30a9b1cd0e97","urls":["bzz-raw://9f660b1f351b757dfe01438e59888f31f33ded3afcf5cb5b0d9bf9aa6f320a8b","dweb:/ipfs/QmarDJ5hZEgBtCmmrVzEZWjub9769eD686jmzb2XpSU1cM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x9e82c00fb176503860139c6bbf593b1a954ee7ff97ab2969656571382b9b58a2","urls":["bzz-raw://34b4eb157b44d4441315db65561ba7cf0fe909dc598c2cfd7080d203077d5b57","dweb:/ipfs/QmcNdvK3kDUAUr48urHxoeHd1TqVDya4YfZTM66i4goEJn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/TransientSlot.sol":{"keccak256":"0x9303ef5a2beb555e52ce56598de205ce07ca8988fc67d073687c06cb8fc973d1","urls":["bzz-raw://8b2e48fb42844c25e6cb38e7cfa1d91dcdc054613fd10f608833dbc677acf889","dweb:/ipfs/QmT4HQxbgpWA3fZnK4dY3eXHNCoyBvpvzNq5k7eSt5mR5t"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"keccak256":"0x69f54c02b7d81d505910ec198c11ed4c6a728418a868b906b4a0cf29946fda84","urls":["bzz-raw://8e25e4bdb7ae1f21d23bfee996e22736fc0ab44cfabedac82a757b1edc5623b9","dweb:/ipfs/QmQdWQvB6JCP9ZMbzi8EvQ1PTETqkcTWrbcVurS7DKpa5n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/cryptography/EIP712.sol":{"keccak256":"0x10eb97d047f8d84fe263a02bb4a656ac6674f6679d74532cc37546289e073a9d","urls":["bzz-raw://3e41287d40b0c46982f1083d40d32de2761f009c5c51627fe79a7feb0ab1cf5c","dweb:/ipfs/Qme7dbh6HX3ZvUJdbQAcVqXkmyXyfcLiUZRhhon3cU6K8p"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol":{"keccak256":"0x4515543bc4c78561f6bea83ecfdfc3dead55bd59858287d682045b11de1ae575","urls":["bzz-raw://60601f91440125727244fffd2ba84da7caafecaae0fd887c7ccfec678e02b61e","dweb:/ipfs/QmZnKPBtVDiQS9Dp8gZ4sa3ZeTrWVfqF7yuUd6Y8hwm1Rs"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8","urls":["bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621","dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0x2c33f654cefbbe80a9b436b5792cfe8bda2e87f139f110073c99762558db252f","urls":["bzz-raw://dc7ebd80046a52f28978cf46a24ff3e4c8568264ab6bb138038951c75d576167","dweb:/ipfs/QmQQjXVr4CbDR3DXd8GHEqn3JSJYTnbBHMJp9tvc29yXrc"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"keccak256":"0x195533c86d0ef72bcc06456a4f66a9b941f38eb403739b00f21fd7c1abd1ae54","urls":["bzz-raw://b1d578337048cad08c1c03041cca5978eff5428aa130c781b271ad9e5566e1f8","dweb:/ipfs/QmPFKL2r9CBsMwmUqqdcFPfHZB2qcs9g1HDrPxzWSxomvy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xb1970fac7b64e6c09611e6691791e848d5e3fe410fa5899e7df2e0afd77a99e3","urls":["bzz-raw://db5fbb3dddd8b7047465b62575d96231ba8a2774d37fb4737fbf23340fabbb03","dweb:/ipfs/QmVUSvooZKEdEdap619tcJjTLcAuH6QBdZqAzWwnAXZAWJ"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/structs/BitMaps.sol":{"keccak256":"0x3616f1b0d0a9ee1ca8f0953ecaceb9230e36f691c7974d30f964212acff52d2b","urls":["bzz-raw://d4bebdd07b31ac28e3e596ac6f0333da90a4e332405aa7d65f3a3a7e0b4cf15e","dweb:/ipfs/QmckoDU5bBnye2UtPcrfJNahLD2FbxrnPP9nrREMWPpnug"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/structs/Checkpoints.sol":{"keccak256":"0x66364cd3247ea71cdb58f080f5d5ed6732433a8001413139661841535494692f","urls":["bzz-raw://0f87914c6645b58eaf75f00a156037a7da91129f3a56aec44aebfc715b19ea44","dweb:/ipfs/QmNX7NLSMXyWuogvf8wfCwjUGwLhLBZrGktWPSdoHtERGp"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol":{"keccak256":"0x9b161e97b8967d4bc0c08d25741889a30692cdda4b71910bf1b0e315f1962212","urls":["bzz-raw://821500c39d095eaa25b06f46e65f1d0e97c4c96b39227f79077dee7d9e84051f","dweb:/ipfs/QmSTeGorKzSWF6HAmxo32uCZiEuKNvreQdUiX1AaYtUMTz"],"license":"MIT"},"src/core/RollupCore.sol":{"keccak256":"0xb721b488eaaf1b5bf5a42bc8c8eb48bbe00f243692c417a37a4c794de509186c","urls":["bzz-raw://e71cd88eeb2d569af6f82bc94ebeea1125d440437b0bac9ac892289a58366f01","dweb:/ipfs/QmSn73ArQVUy6VKWfxGLhBhBpD7kXkBaMGLwbJALiDNHBs"],"license":"Apache-2.0"},"src/core/interfaces/IEscapeHatch.sol":{"keccak256":"0x1a499acad8813b56e7d9cdcff3152e36196482794e62302e95a28603f5915747","urls":["bzz-raw://18da3711ad1fbc413336c252709e1ad32d51092336fbe6c2428b48768f58352c","dweb:/ipfs/QmdkMJiH1pdcuoLe5zPHeMtnFhZ1k7PLZJtoWQUcpcm4bJ"],"license":"Apache-2.0"},"src/core/interfaces/IFeeJuicePortal.sol":{"keccak256":"0xce84c8907395b4c11cc6dd8035d8e14560153450f9d88340cfb8abb914c66639","urls":["bzz-raw://f5eb389f1a6e9adbb2f24dad7a6c0bc706d49decad82ba9b582c288e12eddda6","dweb:/ipfs/QmNM3uQmJYn9B6RAHSMUT3TZMR6R75okjJErUEsuRjxGXt"],"license":"Apache-2.0"},"src/core/interfaces/IRollup.sol":{"keccak256":"0x4885f9bbf279f63143fa0ccd21ce4918fd34eef9ce4ba871c78c22ae6c174f8b","urls":["bzz-raw://c3eac7f06a1db468466f6e977fc204b4106808d0293ca57d336004ed33cc0add","dweb:/ipfs/QmUzzFrVi15V2WRFsgpSmDQBfPUbbA4ochmZD55VhovJBR"],"license":"Apache-2.0"},"src/core/interfaces/ISequencerRewardCalculator.sol":{"keccak256":"0xb7fb4ad1c171762783aecdd5e85036e71990438fc11e1121842b31c431ff0c67","urls":["bzz-raw://15bf6fea8074c7a5f71860b325786d2dd5b625cbfb5b0bd4d0fc4f1a5f566d5a","dweb:/ipfs/QmTH4XovGivVCs4Hp6PT3UVKLrSCPPtv1mmtvUeALVCnAZ"],"license":"Apache-2.0"},"src/core/interfaces/ISlasher.sol":{"keccak256":"0xf7dc3b2795b2806dbec7c94c33665abcf00a35ee65802a47f6222faf8641d302","urls":["bzz-raw://d7c9283746c66f04df5a133145b3196fc176e06e2fe6b3285056ffac68a09e9b","dweb:/ipfs/QmPxTkM1eMNFny3yibc69p1GqWvPkno5fzBjyju89h7CNk"],"license":"Apache-2.0"},"src/core/interfaces/IStaking.sol":{"keccak256":"0x81ddf8fa0cf8a213d690845fd4d3e31e45c543e5876612e94607cdb753804f1d","urls":["bzz-raw://7e0ae2a10903274cca7231306660dd6d5d1e5632238618b390aa7f4dfa5422f3","dweb:/ipfs/QmTMXRYdNGnmecbUdREFfgsLwnMsRjDseLVXsvPqQoiago"],"license":"Apache-2.0"},"src/core/interfaces/IValidatorSelection.sol":{"keccak256":"0xe22dc335f3fd5f5cbf10928fa7e9e945ea8a04fa99362ec6e2022c862d7baca4","urls":["bzz-raw://e26be09d3c823c545a2252467e13b68d366f3e711e15085be09f565ac436acc9","dweb:/ipfs/QmS1ddcZteAjeojaJJz1ZgRPdynzpNu1HSSPbmEjJNe99G"],"license":"Apache-2.0"},"src/core/interfaces/IVerifier.sol":{"keccak256":"0xf5b6025ff3d59b8922bb45fb05786764e74109b4a349d206b8a7979f46484c55","urls":["bzz-raw://98ec47ac3e15b1d8f2c80854ed6fd83e655e9e96341bb827f3be8e6b47f4c7fb","dweb:/ipfs/QmcmUkLgM7fb7mEaJTiWJWrZTW2kAWtRcYS6imBfmueALe"],"license":"Apache-2.0"},"src/core/interfaces/messagebridge/IInbox.sol":{"keccak256":"0x1149c904c8b3bd2942628fbab5480cdc044e831d51963f9e6946f1974cc162bd","urls":["bzz-raw://af2f1f49feba389b0bdbf427c4a85fac2908699585e5babd75f77cf14416ed5f","dweb:/ipfs/QmZYjZyhicCpTcwPuWTjTTUxnaBnfv5bTMWDgxyDGqy8Gm"],"license":"Apache-2.0"},"src/core/interfaces/messagebridge/IOutbox.sol":{"keccak256":"0xf66d0bb4f6d978acf91a036737cd4326bfab16a4030d10510d2976e4218ed8ad","urls":["bzz-raw://e796eea21d552b2ca4d0446bb096e2c980ab84816d9dd1398113293ae8128b30","dweb:/ipfs/QmNuGgRtPFgRe3asa68vDMcWpyfDFqQ5w5j5U7yWD1EsyZ"],"license":"Apache-2.0"},"src/core/libraries/ConstantsGen.sol":{"keccak256":"0xe328f94338f5563669e04618c3ec21ec38b9f21ab24d5de698d80cf38f977dfa","urls":["bzz-raw://3d9872c9a78d7241053e9ce3eadf192d18a9cb4b95c0ac120470d92435b7216e","dweb:/ipfs/QmcRnfbW8sNWwRHPik4wvkA7CTY1BTjuf2ydu3jN5otQJT"],"license":"Apache-2.0"},"src/core/libraries/DataStructures.sol":{"keccak256":"0x5ea9d1097f0b53eafbd72332d4c5c517307e5a056266befe5b46f5f43ee3d83c","urls":["bzz-raw://1a742311dc3c5ead2d5361549f017d20f46c40a4e74e879823ac168cf5b572d4","dweb:/ipfs/QmTNDc1fiPti41QqJTJQoV9uduB6eXaQhbfq1hfVVjVNvS"],"license":"Apache-2.0"},"src/core/libraries/Errors.sol":{"keccak256":"0x282e22d0eb9cd8f22f7bfaef3c3e3cad5461734d6e421f392b372a146c83d467","urls":["bzz-raw://5c250d031a44b257109f81417bb89c0e5b99d44bb17a55379695061afa9d3ef1","dweb:/ipfs/QmenxQJyukQT7KkCsfXV6by3VU6qumEUnK4EH4mqHAw6iK"],"license":"Apache-2.0"},"src/core/libraries/HatchMath.sol":{"keccak256":"0xca787b2889e281c8db132043312aa9513315669782981689824344c910833fe4","urls":["bzz-raw://77ec2f6b5919d53d3a7128f6006155f2566a84e7a56cd26e9d5e6d1514ccd7a2","dweb:/ipfs/Qmc3Z2quujEwxQU1JBfrxhkiULaczspBsTMjXibqXCjFyd"],"license":"Apache-2.0"},"src/core/libraries/SlashPayloadLib.sol":{"keccak256":"0xb9322072eea0036dec74a9222a92a7fcb2518db4491764125eedb63f90f9c830","urls":["bzz-raw://7b7ea317d170f1667e921f8957ea1de4452280f5274bfd9391b6efd6db2e64c8","dweb:/ipfs/QmQs5H78G9LxEzHmYNLDqipgVn1n8Txc94Whc4dLbB25u6"],"license":"Apache-2.0"},"src/core/libraries/SlashRoundLib.sol":{"keccak256":"0x6773eea1fa593e5c1e16fcd3a8341b537bf5ed7ee2f10472649dfd542e3ade8e","urls":["bzz-raw://756bdaa3facd4034149eeb3553ae99777b646c3e16abf8d41f9558e74249baa6","dweb:/ipfs/QmNpb62diGKNKf5pcynejjhNex9c6PTkZnVUeuLvJ2qCZ9"],"license":"Apache-2.0"},"src/core/libraries/StakingQueue.sol":{"keccak256":"0xbbeafda1659a92be14ec5b77838952a089f075cc1d0c5f348b6ff336ea6a1a98","urls":["bzz-raw://f3c8bdb1de77dab697ef4442f72fa4830c757059f8d948d2f3aeb7f6983aa64f","dweb:/ipfs/QmSDYdTnFo8nx34q3fdJCKpy8DCnKBQ4isxr49o4sY5T6T"],"license":"Apache-2.0"},"src/core/libraries/TimeLib.sol":{"keccak256":"0x865b760fe681ee74a93b49491d897a98091432ebc2923ff17717ddb6d26d31ab","urls":["bzz-raw://4ccdfb80464d8e58a95a68314fe2dd33f4a1634ab0695a9a4e9c180a50cc592b","dweb:/ipfs/QmNUUFN7RTjiicZCkci6eEnfromVTPS2MVE4CkbqoneV6P"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/CheckpointLog.sol":{"keccak256":"0x613513b7eb7855ff619c9eb3f1589fcfb0d7675e15c5261034ac353a62c5cabf","urls":["bzz-raw://110e7cc1eae76116a6682a9044cf9031744a7a8c46164987e246923169618d5e","dweb:/ipfs/QmcuhMXiGWjAbYGYYXKrTCLNYguQZpgxpWVWteJezYKVzQ"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/StakingQueueConfig.sol":{"keccak256":"0x32b00fd08e1754d9d9c9b377ae0a0ea887ace519db0ec6d252e1b2216891068e","urls":["bzz-raw://4ecea0a1ff8536819d37d3800b2915249b5c854d9dc611e91aae81df6acf7d76","dweb:/ipfs/Qmf3FgXCf1MP78p5B76kQnwx8yXFXncutVzQhV2fteBvVn"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/Tips.sol":{"keccak256":"0xdf872f54470e59b86349871e2c12075e8daaad85894f90e64f92538daf5f4008","urls":["bzz-raw://493e4bc02c6e9acbb5bfaa68f19bf4defb409211b701784e43d2ca6cbc11ccd1","dweb:/ipfs/QmSUahndZ78LBx6WdozXWL6QkqxZXzrXpHna2kGwCqgy34"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/fees/FeeConfig.sol":{"keccak256":"0xd5593d342fd9e75cf10d9c126d5aa46eab6707221111d81757e0f5c3473c23fd","urls":["bzz-raw://5cdfdfa94ea9d7b93cb80bdbd9e81c80fc7d71de890d88bb957960d0d5734298","dweb:/ipfs/QmQ2VjHtpja19AxDnGg2Q5hCck678PUrfLDuwUNvcyo4YS"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/fees/FeeStructs.sol":{"keccak256":"0x23304769b5d5098b6d6b1092be483f34c0c901d7e14667404e8c5335dad8b501","urls":["bzz-raw://9ef5000b6a27a338f60dad80f73ea03d6560afc46c063d8d52932574d82cf157","dweb:/ipfs/QmSzdqmERrrCqdfqy4jXhdiyokyNRLvi4qLp85iw8rR9iJ"],"license":"Apache-2.0"},"src/core/libraries/crypto/Hash.sol":{"keccak256":"0x0e2bad615ee34b98ffdc7b81558e78ad3701cf8e02dc0fa4721555b4cdb861cb","urls":["bzz-raw://8f69943a9ad3fba8a12ae34b3d60815c4339ea66a5ec75beb781d22a872c2d4d","dweb:/ipfs/QmTfjRk9vBaxfziFgwYzWgTWFEvbB8EEudkcYupPw6qLXW"],"license":"Apache-2.0"},"src/core/libraries/crypto/MerkleLib.sol":{"keccak256":"0xb41c737e197cf6979d9fde0e4317f5feabb17530b72a191098e4bb802e9bbcc4","urls":["bzz-raw://f2312f38220afc045e3335e520ab15f34c90a2fbf660faac7f35a36e0a7abe60","dweb:/ipfs/QmcVJdTNtZnej3w4hAcoDHCjPUcLAsVQvcEGWN7N7UwLKz"],"license":"Apache-2.0"},"src/core/libraries/crypto/SampleLib.sol":{"keccak256":"0x59e87e7d6a1e966c0f73bd919825ff7d81dc898625fe9fd20e6786e10b43783e","urls":["bzz-raw://a931d31192faf6d9d9c82fc7099a776b5886d90dd0a2a9ee8093cc680dfdef70","dweb:/ipfs/QmbQjTTf96tr2WSiuoWK8k984dGuXKooZWZ5o9EL7wEPhv"],"license":"Apache-2.0"},"src/core/libraries/rollup/AttestationLib.sol":{"keccak256":"0xf2111c30dc0d6c81d4f990990dfa37813932180e2b94739050356c5942f316e3","urls":["bzz-raw://fc4d8c42797fa58646094be9e108a60a278f2c2beea06bd7b06b00933b00c5b9","dweb:/ipfs/QmdNPs36gak9y4YoCQq2ttv1nj8ALyab6f9P7SoozECrfN"],"license":"Apache-2.0"},"src/core/libraries/rollup/AttesterExitExtLib.sol":{"keccak256":"0x8fb7d49566291d6a7ddc8e3eb8193c99a3531f199a6092e5bc9d0340b9933893","urls":["bzz-raw://7b30e850ce2226dfd54b4e29b2889f2cc1f2b4029be703b8aa93db14c569cb04","dweb:/ipfs/QmYcrycdjUp9B4KPHAD8cUmWdc1qjiGMyCuZrBUQiTw9CT"],"license":"Apache-2.0"},"src/core/libraries/rollup/BlobLib.sol":{"keccak256":"0x5b0d454bd38592154954f1da4cc59f50a036d0a28a169401abd9b5fdb88a4fe1","urls":["bzz-raw://68cf3a3fa979a6cfdc618e66621a0233263a83c259b17f6193fb0339796bee9d","dweb:/ipfs/QmcRKQmFf8mZxWKUT7Vgg3LnTxVsCen5f8TnMqCQMGi2j6"],"license":"Apache-2.0"},"src/core/libraries/rollup/CoordinationSignatureLib.sol":{"keccak256":"0x939c2aa29f536822f1f35db30af3b783986612bb35a210c583247f764c39dfae","urls":["bzz-raw://6f5e71fe318f83063eda2027992740e7be7e0274887b4c11ab00ef3199398729","dweb:/ipfs/QmPGkRVfkoLj8bi95vyySrtFeTaUGf62qcWoBy1nZRjZQc"],"license":"Apache-2.0"},"src/core/libraries/rollup/EpochProofExtLib.sol":{"keccak256":"0x448e42586ecb687b7a62afb6b48ddef666b963856aa4af4f2a8c391ade29532b","urls":["bzz-raw://848711298ec768e174750b3dc30167252a98eba8b82ccfc283bff063afdf8434","dweb:/ipfs/QmZBEU7Hk2Xmw8L7bpWLCTw9saDfQuQTVMRnU8A6aAwNms"],"license":"Apache-2.0"},"src/core/libraries/rollup/EpochProofLib.sol":{"keccak256":"0x5e64ec4ed2646b18c30650245a148648cf348b99077f0355452b61e967f28811","urls":["bzz-raw://405f0a75293f577bb1528a2603941baf086e6e5f464aae02d46e0fbf467a9926","dweb:/ipfs/QmSSybtZapD55JC5Ey5SyuyCBqi7MgCS5UBJRKF5KKs5yA"],"license":"Apache-2.0"},"src/core/libraries/rollup/FeeLib.sol":{"keccak256":"0x78cccc8618137ebda0ca1cb68071a6458eff5c1e4eecce22de77c7479cb2f917","urls":["bzz-raw://eb96d87ba3229de5d5a8e8cd9e1c29438789e578f915d787f2f7c0788f380679","dweb:/ipfs/Qma3VYid6EyGtNCLertDyViT1Z8Ma1vNnc7EAEmJfxf8t9"],"license":"Apache-2.0"},"src/core/libraries/rollup/FieldLib.sol":{"keccak256":"0xd09f77d3aa6d7efc844e99bd496a145171613825bc45d35e1518889098f91e95","urls":["bzz-raw://499d0aeb3c7b6801e49f7554110a194ebeca73bec4ddf4b00ea8dd64fcc4b2ac","dweb:/ipfs/QmQf7EeP4kwTGPR2xfDK2MpNAqqcAY4vWZ3faEKn6JEW8R"],"license":"Apache-2.0"},"src/core/libraries/rollup/InvalidateLib.sol":{"keccak256":"0x2d88d0176cb9c5bcf449b4062d2fb334d7ea124b801bd43eeeb53c5edf1fcd0e","urls":["bzz-raw://0b4fe49115aec50f7113ba8bd20550089fac6569d1ed5e4a7e8189529a4ff82d","dweb:/ipfs/QmQ3GJ53AocunyjaaBRQvsczuGNvp4JV73qksdt8Y55cNx"],"license":"Apache-2.0"},"src/core/libraries/rollup/ProposeLib.sol":{"keccak256":"0x90d4fff721a1bcdbb555aad73a040ac1f0c3a61e286b0f291f47248129d8a777","urls":["bzz-raw://988c7390ba413ae25939df5a9f8850649106627ddf453a60b472e31c32a97156","dweb:/ipfs/QmXNPKm6y3bgTmjfeTMrY4sfBUFT4fLxZsMBBSC13Nt6oy"],"license":"Apache-2.0"},"src/core/libraries/rollup/ProposedHeaderLib.sol":{"keccak256":"0x43a9fa530b7cb948c1d7c436bddafdd8ddd8c022c67e25045372bc68b9e5018c","urls":["bzz-raw://904e4aa94b322f68c605dd34ea38bb77343437e2f2203c3e650cf7a7bb3aa19e","dweb:/ipfs/QmX3H4PMwh57L5Zv3LFrHjkNmgVZiik4FmzSyJhnTJcqPD"],"license":"Apache-2.0"},"src/core/libraries/rollup/RewardExtLib.sol":{"keccak256":"0x258e1b7ebfa2c5cecc4d5bcecacfda7e6398b0191a08d6f2a9f775724ab7fd5d","urls":["bzz-raw://9d1d38d938a44dd27419cb656a7726609da2dc074fef9c54e35909d5e304915b","dweb:/ipfs/QmSZ6VVTYYBXQra114KmdZyVXVSh6J8MLKRjwEF9EmE3fp"],"license":"Apache-2.0"},"src/core/libraries/rollup/RewardLib.sol":{"keccak256":"0x3a73a07577c713179be2de8df601445e79c606afb42f74bed33d1000c6f14ff8","urls":["bzz-raw://e432e402f6721bf70849ae3d731dcc669abeeb7df8399c878cc946fea0657a1a","dweb:/ipfs/QmYuGKQvN9iFhQpKLo6Rd7oTkMZx6VfdrJFh6tVgLEDg5M"],"license":"Apache-2.0"},"src/core/libraries/rollup/RollupOperationsExtLib.sol":{"keccak256":"0x21451f575ac7e42628576c961ff34072132511a2ec8cf3e794cc397a87553ad6","urls":["bzz-raw://5fd0643d9febd79148ceacb0006860b80fabe42aa9ff97faabe5a9a170aef604","dweb:/ipfs/QmXr9Lb7WdCebnVdte2vDZnFNxe6gW8MWY5HuSqtZCtNTE"],"license":"Apache-2.0"},"src/core/libraries/rollup/STFLib.sol":{"keccak256":"0xcb2ae0566bd5b0834f8ec2f73d78037f25d4d65894bff1ab8abcb9f8c65c7bc0","urls":["bzz-raw://35689b10ee3d4fff126625efa170fe77c617441fd7902d7376488af5061a79e0","dweb:/ipfs/QmUzDZoMrpJAuhVYVGSruX4mj9jTJmSZncvoTHbsyZL7eM"],"license":"Apache-2.0"},"src/core/libraries/rollup/SequencerRewardCalculatorLib.sol":{"keccak256":"0x2d5e8efc5a87bec1d50a8c9df0696a8248e0905ab62dcd7ec6a51527ad33b604","urls":["bzz-raw://15d4a7d1f265fc1a248762702373534fcae9d85df5150e5e1a45f79b94736ed4","dweb:/ipfs/QmdAT5Aw6JSg5GJnTikfDtJHnJZuMib7L8GB3yQ4jMuiFr"],"license":"Apache-2.0"},"src/core/libraries/rollup/SlasherDeploymentExtLib.sol":{"keccak256":"0x438eef52411afac7db0fbe0a4b976ce50a9b424ed4fe262ace0d19f724e9d540","urls":["bzz-raw://593460e554bd030c282ac532146a4c08495595814931f6eb65ba5df1234513b5","dweb:/ipfs/QmS99z9JWufE7roRfx9a1453J8TVJXpREJDKLcY3gaSuKn"],"license":"Apache-2.0"},"src/core/libraries/rollup/StakingLib.sol":{"keccak256":"0x6e3c96f937701c67570d902aca8d2f9a1ee35942e17b1e5a375b264582a6fe8c","urls":["bzz-raw://ddb78c290af17a9574b89104177d2f1079c5abeb462446722b8fb09e03659ea6","dweb:/ipfs/QmURXaGC2SRKZc36NQZ4SXqNtgY5MpYQRamS3Shn2GMAoe"],"license":"Apache-2.0"},"src/core/libraries/rollup/ValidatorOperationsExtLib.sol":{"keccak256":"0x6cfa5dd1e3b5fbb9118a727311f1121d87089a54744c61c30d431c2ecbdca200","urls":["bzz-raw://40e2425b4aa022398847b57da1bea1290418b855b5312d1e24c9e1113aa05c1f","dweb:/ipfs/QmaCiBGFciNUUecE9axtgoQqiQsSHc2ZQHzHWiiWMCn2ML"],"license":"Apache-2.0"},"src/core/libraries/rollup/ValidatorSelectionLib.sol":{"keccak256":"0xea94ff99c5e47c51bbd4ffe8282447c7aae23065e255ec2d2806a11901ab1752","urls":["bzz-raw://4e5c466c3c0ca5834c41714ddd64e7e5a34e6c37a5d57ddbed40b567582746bb","dweb:/ipfs/QmUYZ4KgwoUhxQCMtazUgj8tN6wkRHcakZ5rg5EjQq1XuU"],"license":"Apache-2.0"},"src/core/messagebridge/FeeJuicePortal.sol":{"keccak256":"0x587faf2741b0cd58ea207f2337bc80964ff784d0e6f2de8e7d6e226a3dd9d187","urls":["bzz-raw://f10d4355ddeba853507d93038804972904ca61f47b9ff0c7272c87881445869d","dweb:/ipfs/QmYfUZ9xgbWpwrP8kXUQTEa3P2G56iFFikNb6UyKctbi7j"],"license":"Apache-2.0"},"src/core/messagebridge/Inbox.sol":{"keccak256":"0xe5c09dfe6cdbc047470a48630d62366219d59d5d82a57ba230f053ab058088c4","urls":["bzz-raw://e88076e7cbbf9f4f1886762dc62e4cec2323ebc7e8bfa8ce7030f739194271a6","dweb:/ipfs/QmRHXcbCYEGUU4zCy84LrXykDQt8jY7YHZXpcSwMNatZyv"],"license":"Apache-2.0"},"src/core/messagebridge/Outbox.sol":{"keccak256":"0x1a78d6755a0f604a8f75a3059a2b8e5b6eb2a01540c39bf43bbfb56aaf063cf4","urls":["bzz-raw://bfffb428824b7e8d01070b639fb4b5696619c3205c89d8614c45f2e97aa1f24e","dweb:/ipfs/QmfVTDZRszShpqhn42zBjGGBkLvAub746yj4n6L2dzNSsj"],"license":"Apache-2.0"},"src/core/reward-boost/RewardBooster.sol":{"keccak256":"0x1cffe0dcbc06775ad415b06cd3591f74331bad3b154a3305ea6c5a081915fce0","urls":["bzz-raw://a2fcdbdcc260b3330bae0bc61227f652f9cb68e175fbc7d4173bf1d2dfaa92d1","dweb:/ipfs/QmddUmciRbznTTfBpbZf2p3R9sC1oePRF9C3Swnq8qU3Xb"],"license":"Apache-2.0"},"src/core/slashing/Slasher.sol":{"keccak256":"0xc3040cd1813a6064a6afda9ca8b1f65f5cba2e7359050c48507d2f71d3606786","urls":["bzz-raw://73f73fac9ffe650304c68a49635604806b86b0a5baadbf59ef36931e7937bc51","dweb:/ipfs/QmaMMMXycUeybJyf2ZowJgQ1Wo4ZC7g5kyp1BHWfj8dkD9"],"license":"Apache-2.0"},"src/core/slashing/SlashingProposer.sol":{"keccak256":"0x83021af7c9ea602728d0ea0c3a01b222bdfee96af341537473d81f6e1e70d32c","urls":["bzz-raw://65b80e908621361c40178ea2255d096f2ca323201b117de24bf561b5e7ca698f","dweb:/ipfs/QmdKMw2sLn16jGZs9RjQnmxwkdsUrRzjJ3PLdZMPv8JceW"],"license":"Apache-2.0"},"src/governance/Bn254LibWrapper.sol":{"keccak256":"0xea39571de45fe0fec82d9e760998677eb2432e08c6cdb00c41efa58caf56e607","urls":["bzz-raw://1e470b821f3d87fa0c988c5f23a8deed3849bffd2527b3b4ee137a90e0c1264c","dweb:/ipfs/QmW3M4HyRLDruV5AYXCKicFCiiczmwnSTtnwVKUnQSm7a8"],"license":"Apache-2.0"},"src/governance/GSE.sol":{"keccak256":"0xc19fa4868d78030e2411dd5cef6d0da09645ade1d1ea0c4374b284a89feb722a","urls":["bzz-raw://d06396c249566d0e9de5d34eade2bf27c4d583005c0129787bf6c413dcd9e273","dweb:/ipfs/QmcimKKiV9KqobS5wzPsKYzyYu5WezCF3gyHkekf5tjrUU"],"license":"Apache-2.0"},"src/governance/GSEPayload.sol":{"keccak256":"0x40e5385b008f0335b50e066c647bb906685511c9fef206ce90a3391468558bae","urls":["bzz-raw://a129e87e1d57cf0813b14108cbdbcdd4c114b20f3f2d67477302d6d050120c7e","dweb:/ipfs/QmRcQQkeDhkrmQha3nkA8qvXnGmF6nLhZMKAhMx61A7a5y"],"license":"Apache-2.0"},"src/governance/Governance.sol":{"keccak256":"0x07770c3d80369adae51be8e361f63a2aa5ec489b354b10c8590be1e294dfe2e5","urls":["bzz-raw://7219becf3467ea8368dba0bd093ba932b165cf3f214e7286f652e2730bf42eaf","dweb:/ipfs/QmTSCDhSQBTKhzGUk12phxhqohSba6yopYMzF5T5XPFUWw"],"license":"Apache-2.0"},"src/governance/interfaces/IBn254LibWrapper.sol":{"keccak256":"0xdd0a3de8b8ff67cf2bf090d04b4a37aa6d604f402db3328387d2466d2354464a","urls":["bzz-raw://daef0234547509cd7ae3a7babf0e50a8d1ca2894f1817e3e2409a50fd32947b9","dweb:/ipfs/QmbwSedqnBfsqRnUq8XcXzoeoyhZTXJWJ9rpJn61BAJfej"],"license":"Apache-2.0"},"src/governance/interfaces/IEmpire.sol":{"keccak256":"0xe6a8a8c3fef8e6f9f5118bd40c63e951b13a59d5f885bbb979d38745ef760ed3","urls":["bzz-raw://940c1fe4138d7364ccdb7d5635ea90bafa1da274f680039b0b54ee8c2a275a9a","dweb:/ipfs/QmX2EeoVyES18BMgcbKVDb36MCq8ooDVR98m2RmnmZjEAo"],"license":"Apache-2.0"},"src/governance/interfaces/IGovernance.sol":{"keccak256":"0xe420d305fbe7c35f4620cd1e0f05f9f4c5a91532621d21a64ea553a3d9a3c005","urls":["bzz-raw://1900ac41f945aa692d5228f134ae63840081d284bf89fdd2a06b45424fe359ff","dweb:/ipfs/QmePFZ1xv5qfftJVDLc98XUVFsrpuKAbKZiro7MoMDTpoa"],"license":"Apache-2.0"},"src/governance/interfaces/IGovernanceProposer.sol":{"keccak256":"0x2be820a5452c481ffd329d68c46d0af6a286934963f26b36d363cd34fb0e5817","urls":["bzz-raw://f58839d1504e11e7da42b7f5a03fb9b9d8cc39ab4c16cfb86fa44c4de08df76f","dweb:/ipfs/QmR6jUJozP9tfpZuSduk66E8n7WuL3zzsR3WHZ7BR2ZBX2"],"license":"Apache-2.0"},"src/governance/interfaces/IPayload.sol":{"keccak256":"0x5844ea725ce56ac8adeb20b2d37aa431ca087f68a65a7ca91f981be7458737c3","urls":["bzz-raw://5ea670db51b2ccfac05a684b95458ecc015c9d12a6567c3f73d473386533f58c","dweb:/ipfs/QmRUB8mckkGQ4nNsErRhnKMsD9SSkokRSpnr5XZC9dZdin"],"license":"Apache-2.0"},"src/governance/interfaces/IProposerPayload.sol":{"keccak256":"0x89068dd464c0bfb7d447c0e99728277e03c7c4b864208ead20321f0590187248","urls":["bzz-raw://4d1d9ba5f8b7da374d773acde9514ca6607ad31a3e83950caa097bdb8b0f9167","dweb:/ipfs/Qmd7tWAD2Ubz434zZPJvuyAGsHYpXBHvVhVefLFzUudD2o"],"license":"Apache-2.0"},"src/governance/interfaces/IRegistry.sol":{"keccak256":"0xc3678c04c0945d3dc1d8007df3dc7f8b25d8108b0b25134842ffc5169f996ce8","urls":["bzz-raw://71e4e401f1a6f561262755cc2e1c347cd3aa79e67d2e52ca547864f49de01724","dweb:/ipfs/QmPvoKFEDTb41DSC3MmDMqtM3trj5oZb1Jj2jtQSnNfHBn"],"license":"Apache-2.0"},"src/governance/interfaces/IRewardDistributor.sol":{"keccak256":"0xf263f75be83d0b0e3c8f17ec7fc2558d3543df788dcb2db6f1ee158208134f14","urls":["bzz-raw://b2b65819a5f9ecd2237957e987bb69160d3076ccaf9f76f925a936e574d63d76","dweb:/ipfs/QmNgWESeo6UUvgW7rCMP3d4o8mUqSSbKrwbicH4kaUrm7h"],"license":"Apache-2.0"},"src/governance/libraries/AddressSnapshotLib.sol":{"keccak256":"0x1006e58059e0a1f0fef102f2f11f5649dffc7f2eb066fce51845e65a064f4210","urls":["bzz-raw://de385ab9eb3bb66d7be1218b49ae9bba7d88797bcb375b9a7481a209d303a402","dweb:/ipfs/QmZe6DTv3cACfdXNSMhbMhoefg31LW3uLxHLDC7nZhb4Yp"],"license":"Apache-2.0"},"src/governance/libraries/CheckpointedUintLib.sol":{"keccak256":"0xcd73cf7a62e4ac5cc79f7f8df8b35d5c5e4df5b8a3478bcbc2b29c9aa89ea4b4","urls":["bzz-raw://f56f37060d39d3c9276f23c96be7f6b1ea44676312dbaa1ab16ab3bff6acebf1","dweb:/ipfs/QmPDUEEgdbpTTs9r3fvdMYJo9akCRsWcJXyarBhQgcKb5q"],"license":"Apache-2.0"},"src/governance/libraries/ConfigurationLib.sol":{"keccak256":"0x7cb65bdbd8d077f3cfc01b065fb3a57628db36cd46f68885c74b9131198c2149","urls":["bzz-raw://e37bde50f5f739f479feb95fbe81ed24ee47f841b99f066ecf6782e758d1978a","dweb:/ipfs/QmebPE5REUpYRB8dikUebcGtyk9uy44G9mbchKJtHxJAgy"],"license":"Apache-2.0"},"src/governance/libraries/DepositDelegationLib.sol":{"keccak256":"0x37fbca65ccabec9d901bd71d684dceec7c59fa5a05438fd209ea0d5e16e764c0","urls":["bzz-raw://e42f2622978abc3ac84223a6b206201898d0269d20bf81539636c0999a0db9eb","dweb:/ipfs/QmW4BgTjR6BuPxwxreKarUeK1u8gx3p9yFdDD4EsC5hkyb"],"license":"Apache-2.0"},"src/governance/libraries/Errors.sol":{"keccak256":"0x8861ea7508138c83e89f186ce17accb42a6eee7d1d2e52841975d4ba676daae4","urls":["bzz-raw://b0d5b01c2b0a20c3c70a7ab2b8405d083a063bf5758beb87a4d488bda76078fa","dweb:/ipfs/QmfGH6CTCPA6nVA6KidcTSvaJ6MQZkv6KiuDVBTARGBTRv"],"license":"Apache-2.0"},"src/governance/libraries/ProposalLib.sol":{"keccak256":"0x616ffbb24c4454ca9e223e85ff01e8dca139723d5cd312d5d6f6111d79782a90","urls":["bzz-raw://192f9be3355a7a94d19ae4e5b397e5db19dde64ccc671e149da06dfaa2577192","dweb:/ipfs/QmTDcm7XEFLe7o5cXUmuu5wQDyprU78AVMymiWvrmP4tHT"],"license":"Apache-2.0"},"src/governance/libraries/compressed-data/Ballot.sol":{"keccak256":"0xca07dc8cf36ac2beae7674804af144b34b3c5848153351c17d996e9b3293cd5d","urls":["bzz-raw://6911cc49f1d6977c12f652063c14891697c1ffe49fdf36903c32a8ad73cbd012","dweb:/ipfs/QmQBEZARCAAj1ZLcswkH6FwP1RP8uuNjYTHqthmE9Z5RnM"],"license":"Apache-2.0"},"src/governance/libraries/compressed-data/Configuration.sol":{"keccak256":"0x40744f275af22d33c38fd9c6a7b822292c9c87b17ac2c78abbef4eb8356fd9f9","urls":["bzz-raw://73c685be7e934516207827a59cbbeb7fc1164e7659dd3ec857a91cfea765b482","dweb:/ipfs/QmQfudRpSSQnG9u4XV8iA2UAyDzQPFqWzpZy5NZbaD6htv"],"license":"Apache-2.0"},"src/governance/libraries/compressed-data/Proposal.sol":{"keccak256":"0x72cf619a21c8e95875c63d4361cbe1a815d9d67f36f3fe32b6c9ca4d9ab0d33a","urls":["bzz-raw://d80f47beb3f91da3cc68264c86fc8fb8f0e4abaf9d92243ab3206407fceed5c6","dweb:/ipfs/QmYyrBTDMfkTBu6EcKcSMR7JyfphZ5xH1VCQ8EHMQUvsoN"],"license":"Apache-2.0"},"src/governance/proposer/EmpireBase.sol":{"keccak256":"0x747b20e201dab632a831c12f1fee9ee52cc80a2098c77e8b6c7b09b0f3ba2bc0","urls":["bzz-raw://b7d4a0475ca364f75aa2a1d17ed9e6970f0be605126f2efe26d53c791d4a5209","dweb:/ipfs/Qma5tkTcy94PqE9vtQybQSyH9LWaHR8V3ubwDPZwiUNT35"],"license":"Apache-2.0"},"src/governance/proposer/GovernanceProposer.sol":{"keccak256":"0xa2829df5b65856c9f1d6bf490fb50616f14402ff8eece2e32b63828b8b9337c3","urls":["bzz-raw://8ad52830a7a3aed3477bf55f92c3d68cb1c16a5cf1d636227ab76a306c846607","dweb:/ipfs/QmRonyZQZj5D1e2g4Y6Tmj2AEUnekL4pGmgdMT4ycRAM8m"],"license":"Apache-2.0"},"src/mock/libraries/BlobLib.sol":{"keccak256":"0xa1b19239c5c64ba1b0c9f83ec0a30059f10ded12bf40d5d7c3f65974752b3121","urls":["bzz-raw://5cbce7d0dd0096232d60ec5c6920f211ffcaa46c8675b1129c1f939a1ee84837","dweb:/ipfs/QmSS2qUhzUuZY1qHDjWUGvHuMqMG3cjHoHeDVvgWsjMdA9"],"license":"Apache-2.0"},"src/periphery/SlashPayloadCloneable.sol":{"keccak256":"0xf3957502df4ba01cd0c05d5cd49488dbe38f4e182718013b3fef075da95a9e3f","urls":["bzz-raw://1bd7cdf387e137d007f53388748fd12cbfd016127f78455e617fb55bc4a66b21","dweb:/ipfs/QmVLHJ7hyuuSSLRmv3meDcRKiT42Duq4sEweBTmWMfSfk8"],"license":"Apache-2.0"},"src/shared/libraries/BN254Lib.sol":{"keccak256":"0x0c3a5b7dabde2f5c81f19e1a4a212308a8636b5bb4a16bb1a518d58ef4feb6f5","urls":["bzz-raw://870be6219c7081ed081cee2fa9ad1e7f3efff623ae1a59aed966f2bdcee65b7a","dweb:/ipfs/QmNzohb1TazCgaT1e55CMDuuG7AHdGrGA6jvT4wzxdAM52"],"license":"Apache-2.0"},"src/shared/libraries/CompressedTimeMath.sol":{"keccak256":"0x361023cf30593e7e27417c91af3702e75235fcab251e4ad5ac2e47306a730ec1","urls":["bzz-raw://9b192242472b3126c97a4a4e4fa792809a6bf20b548a57e677f5260c0dbf3ad3","dweb:/ipfs/QmfK4WAucepcqzMLu11rs68HJazwfegVsgK5tTco82SooB"],"license":"Apache-2.0"},"src/shared/libraries/SignatureLib.sol":{"keccak256":"0xb69989f57384383341d1bb4693fb1e6ce31a2ab6c0fadb48bf088078a332a56a","urls":["bzz-raw://f199be27853a14d746c567c5e3a473f474e84cfd3d119a6404e6ceff4e986e5c","dweb:/ipfs/QmWsLozeiKLQbTSEUDVZK2ASEX3EodKxT4DdA9BA6bD6N2"],"license":"Apache-2.0"},"src/shared/libraries/TimeMath.sol":{"keccak256":"0x8da20dc8b4ce296b7c11f117a3381bfe5cd611a3512a74a500e2e54e0353417f","urls":["bzz-raw://18c74be98a4e31e8a16356e573514f639a8fc43928e741f6ead81dd755e9a914","dweb:/ipfs/QmPDEdYYEj3DhXjrCDPuudJbhsBaNj1sK6hH94Z86168Q3"],"license":"Apache-2.0"}},"version":1},"id":74}
1
+ {"abi":[{"type":"constructor","inputs":[{"name":"_feeAsset","type":"address","internalType":"contract IERC20"},{"name":"_stakingAsset","type":"address","internalType":"contract IERC20"},{"name":"_gse","type":"address","internalType":"contract GSE"},{"name":"_epochProofVerifier","type":"address","internalType":"contract IVerifier"},{"name":"_governance","type":"address","internalType":"address"},{"name":"_genesisState","type":"tuple","internalType":"struct GenesisState","components":[{"name":"vkTreeRoot","type":"bytes32","internalType":"bytes32"},{"name":"protocolContractsHash","type":"bytes32","internalType":"bytes32"},{"name":"genesisArchiveRoot","type":"bytes32","internalType":"bytes32"}]},{"name":"_config","type":"tuple","internalType":"struct RollupConfigInput","components":[{"name":"aztecSlotDuration","type":"uint256","internalType":"uint256"},{"name":"aztecEpochDuration","type":"uint256","internalType":"uint256"},{"name":"targetCommitteeSize","type":"uint256","internalType":"uint256"},{"name":"lagInEpochsForValidatorSet","type":"uint256","internalType":"uint256"},{"name":"lagInEpochsForRandao","type":"uint256","internalType":"uint256"},{"name":"aztecProofSubmissionEpochs","type":"uint256","internalType":"uint256"},{"name":"slashingQuorum","type":"uint256","internalType":"uint256"},{"name":"slashingRoundSize","type":"uint256","internalType":"uint256"},{"name":"slashingLifetimeInRounds","type":"uint256","internalType":"uint256"},{"name":"slashingExecutionDelayInRounds","type":"uint256","internalType":"uint256"},{"name":"slashAmounts","type":"uint256[3]","internalType":"uint256[3]"},{"name":"slashingOffsetInRounds","type":"uint256","internalType":"uint256"},{"name":"slasherEnabled","type":"bool","internalType":"bool"},{"name":"slashingVetoer","type":"address","internalType":"address"},{"name":"slashingDisableDuration","type":"uint256","internalType":"uint256"},{"name":"manaTarget","type":"uint256","internalType":"uint256"},{"name":"exitDelaySeconds","type":"uint256","internalType":"uint256"},{"name":"version","type":"uint32","internalType":"uint32"},{"name":"provingCostPerMana","type":"uint256","internalType":"EthValue"},{"name":"initialEthPerFeeAsset","type":"uint256","internalType":"EthPerFeeAssetE12"},{"name":"rewardConfig","type":"tuple","internalType":"struct RewardConfig","components":[{"name":"rewardDistributor","type":"address","internalType":"contract IRewardDistributor"},{"name":"sequencerBps","type":"uint32","internalType":"Bps"},{"name":"booster","type":"address","internalType":"contract IBoosterCore"},{"name":"checkpointReward","type":"uint96","internalType":"uint96"}]},{"name":"rewardBoostConfig","type":"tuple","internalType":"struct RewardBoostConfig","components":[{"name":"increment","type":"uint32","internalType":"uint32"},{"name":"maxScore","type":"uint32","internalType":"uint32"},{"name":"a","type":"uint32","internalType":"uint32"},{"name":"minimum","type":"uint32","internalType":"uint32"},{"name":"k","type":"uint32","internalType":"uint32"}]},{"name":"stakingQueueConfig","type":"tuple","internalType":"struct StakingQueueConfig","components":[{"name":"bootstrapValidatorSetSize","type":"uint256","internalType":"uint256"},{"name":"bootstrapFlushSize","type":"uint256","internalType":"uint256"},{"name":"normalFlushSizeMin","type":"uint256","internalType":"uint256"},{"name":"normalFlushSizeQuotient","type":"uint256","internalType":"uint256"},{"name":"maxQueueFlushSize","type":"uint256","internalType":"uint256"}]},{"name":"localEjectionThreshold","type":"uint256","internalType":"uint256"},{"name":"ethereumSlotDuration","type":"uint256","internalType":"uint256"},{"name":"sequencerRewardCalculator","type":"address","internalType":"address"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"L1_BLOCK_AT_GENESIS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"cancelSetSlasher","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"checkBlob","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"checkpointRandao","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"claimProverRewards","inputs":[{"name":"_coinbase","type":"address","internalType":"address"},{"name":"_epochs","type":"uint256[]","internalType":"Epoch[]"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"claimSequencerRewards","inputs":[{"name":"_coinbase","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"deposit","inputs":[{"name":"_attester","type":"address","internalType":"address"},{"name":"_withdrawer","type":"address","internalType":"address"},{"name":"_publicKeyInG1","type":"tuple","internalType":"struct G1Point","components":[{"name":"x","type":"uint256","internalType":"uint256"},{"name":"y","type":"uint256","internalType":"uint256"}]},{"name":"_publicKeyInG2","type":"tuple","internalType":"struct G2Point","components":[{"name":"x0","type":"uint256","internalType":"uint256"},{"name":"x1","type":"uint256","internalType":"uint256"},{"name":"y0","type":"uint256","internalType":"uint256"},{"name":"y1","type":"uint256","internalType":"uint256"}]},{"name":"_proofOfPossession","type":"tuple","internalType":"struct G1Point","components":[{"name":"x","type":"uint256","internalType":"uint256"},{"name":"y","type":"uint256","internalType":"uint256"}]},{"name":"_moveWithLatestRollup","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"eip712Domain","inputs":[],"outputs":[{"name":"fields","type":"bytes1","internalType":"bytes1"},{"name":"name","type":"string","internalType":"string"},{"name":"version","type":"string","internalType":"string"},{"name":"chainId","type":"uint256","internalType":"uint256"},{"name":"verifyingContract","type":"address","internalType":"address"},{"name":"salt","type":"bytes32","internalType":"bytes32"},{"name":"extensions","type":"uint256[]","internalType":"uint256[]"}],"stateMutability":"view"},{"type":"function","name":"finalizeSetSlasher","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"finalizeWithdraw","inputs":[{"name":"_attester","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"flushEntryQueue","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"flushEntryQueue","inputs":[{"name":"_toAdd","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getActiveAttesterCount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getEntryQueueFlushSize","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"initiateWithdraw","inputs":[{"name":"_attester","type":"address","internalType":"address"},{"name":"_recipient","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"initiateWithdrawByAttester","inputs":[{"name":"_attester","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initiateWithdrawByAttesterBatch","inputs":[{"name":"_authorizations","type":"tuple[]","internalType":"struct AttesterExitAuthorization[]","components":[{"name":"attester","type":"address","internalType":"address"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"signature","type":"tuple","internalType":"struct Signature","components":[{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}]}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initiateWithdrawByAttesterBatchUpToLimit","inputs":[{"name":"_authorizations","type":"tuple[]","internalType":"struct AttesterExitAuthorization[]","components":[{"name":"attester","type":"address","internalType":"address"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"signature","type":"tuple","internalType":"struct Signature","components":[{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}]}]}],"outputs":[{"name":"exitedCount","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"initiateWithdrawByAttesterWithSignature","inputs":[{"name":"_authorization","type":"tuple","internalType":"struct AttesterExitAuthorization","components":[{"name":"attester","type":"address","internalType":"address"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"signature","type":"tuple","internalType":"struct Signature","components":[{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}]}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"invalidateBadAttestation","inputs":[{"name":"_checkpointNumber","type":"uint256","internalType":"uint256"},{"name":"_attestations","type":"tuple","internalType":"struct CommitteeAttestations","components":[{"name":"signatureIndices","type":"bytes","internalType":"bytes"},{"name":"signaturesOrAddresses","type":"bytes","internalType":"bytes"}]},{"name":"_committee","type":"address[]","internalType":"address[]"},{"name":"_invalidIndex","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"invalidateInsufficientAttestations","inputs":[{"name":"_checkpointNumber","type":"uint256","internalType":"uint256"},{"name":"_attestations","type":"tuple","internalType":"struct CommitteeAttestations","components":[{"name":"signatureIndices","type":"bytes","internalType":"bytes"},{"name":"signaturesOrAddresses","type":"bytes","internalType":"bytes"}]},{"name":"_committee","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"propose","inputs":[{"name":"_args","type":"tuple","internalType":"struct ProposeArgs","components":[{"name":"archive","type":"bytes32","internalType":"bytes32"},{"name":"oracleInput","type":"tuple","internalType":"struct OracleInput","components":[{"name":"feeAssetPriceModifier","type":"int256","internalType":"int256"}]},{"name":"header","type":"tuple","internalType":"struct ProposedHeader","components":[{"name":"lastArchiveRoot","type":"bytes32","internalType":"bytes32"},{"name":"blockHeadersHash","type":"bytes32","internalType":"bytes32"},{"name":"blobsHash","type":"bytes32","internalType":"bytes32"},{"name":"inboxRollingHash","type":"bytes32","internalType":"bytes32"},{"name":"outHash","type":"bytes32","internalType":"bytes32"},{"name":"slotNumber","type":"uint256","internalType":"Slot"},{"name":"timestamp","type":"uint256","internalType":"Timestamp"},{"name":"coinbase","type":"address","internalType":"address"},{"name":"feeRecipient","type":"bytes32","internalType":"bytes32"},{"name":"gasFees","type":"tuple","internalType":"struct GasFees","components":[{"name":"feePerDaGas","type":"uint128","internalType":"uint128"},{"name":"feePerL2Gas","type":"uint128","internalType":"uint128"}]},{"name":"totalManaUsed","type":"uint256","internalType":"uint256"},{"name":"accumulatedFees","type":"uint256","internalType":"uint256"}]},{"name":"bucketHint","type":"uint256","internalType":"uint256"}]},{"name":"_attestations","type":"tuple","internalType":"struct CommitteeAttestations","components":[{"name":"signatureIndices","type":"bytes","internalType":"bytes"},{"name":"signaturesOrAddresses","type":"bytes","internalType":"bytes"}]},{"name":"_signers","type":"address[]","internalType":"address[]"},{"name":"_attestationsAndSignersSignature","type":"tuple","internalType":"struct Signature","components":[{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}]},{"name":"_blobInput","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"prune","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"queueSetSlasher","inputs":[{"name":"_slasher","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setEscapeHatch","inputs":[{"name":"_escapeHatch","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFeeMargin","inputs":[{"name":"_protocolFeeMarginBps","type":"uint16","internalType":"uint16"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFeeRecipient","inputs":[{"name":"_recipient","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProvingCostPerMana","inputs":[{"name":"_provingCostPerMana","type":"uint256","internalType":"EthValue"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRewardConfig","inputs":[{"name":"_config","type":"tuple","internalType":"struct MutableRewardConfig","components":[{"name":"sequencerBps","type":"uint32","internalType":"Bps"},{"name":"checkpointReward","type":"uint96","internalType":"uint96"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSequencerRewardCalculator","inputs":[{"name":"_calculator","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setupEpoch","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"slash","inputs":[{"name":"_attester","type":"address","internalType":"address"},{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"submitEpochRootProof","inputs":[{"name":"_args","type":"tuple","internalType":"struct SubmitEpochRootProofArgs","components":[{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"},{"name":"args","type":"tuple","internalType":"struct PublicInputArgs","components":[{"name":"previousArchive","type":"bytes32","internalType":"bytes32"},{"name":"endArchive","type":"bytes32","internalType":"bytes32"},{"name":"outHash","type":"bytes32","internalType":"bytes32"},{"name":"previousInboxRollingHash","type":"bytes32","internalType":"bytes32"},{"name":"endInboxRollingHash","type":"bytes32","internalType":"bytes32"},{"name":"proverId","type":"address","internalType":"address"}]},{"name":"provenCheckpointFees","type":"tuple[]","internalType":"struct ProvenCheckpointFees[]","components":[{"name":"coinbase","type":"address","internalType":"address"},{"name":"accumulatedFees","type":"uint256","internalType":"uint256"}]},{"name":"headers","type":"tuple[]","internalType":"struct ProposedHeader[]","components":[{"name":"lastArchiveRoot","type":"bytes32","internalType":"bytes32"},{"name":"blockHeadersHash","type":"bytes32","internalType":"bytes32"},{"name":"blobsHash","type":"bytes32","internalType":"bytes32"},{"name":"inboxRollingHash","type":"bytes32","internalType":"bytes32"},{"name":"outHash","type":"bytes32","internalType":"bytes32"},{"name":"slotNumber","type":"uint256","internalType":"Slot"},{"name":"timestamp","type":"uint256","internalType":"Timestamp"},{"name":"coinbase","type":"address","internalType":"address"},{"name":"feeRecipient","type":"bytes32","internalType":"bytes32"},{"name":"gasFees","type":"tuple","internalType":"struct GasFees","components":[{"name":"feePerDaGas","type":"uint128","internalType":"uint128"},{"name":"feePerL2Gas","type":"uint128","internalType":"uint128"}]},{"name":"totalManaUsed","type":"uint256","internalType":"uint256"},{"name":"accumulatedFees","type":"uint256","internalType":"uint256"}]},{"name":"attestations","type":"tuple","internalType":"struct CommitteeAttestations","components":[{"name":"signatureIndices","type":"bytes","internalType":"bytes"},{"name":"signaturesOrAddresses","type":"bytes","internalType":"bytes"}]},{"name":"blobInputs","type":"bytes","internalType":"bytes"},{"name":"proof","type":"bytes","internalType":"bytes"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateL1GasFeeOracle","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateManaTarget","inputs":[{"name":"_manaTarget","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateStakingQueueConfig","inputs":[{"name":"_config","type":"tuple","internalType":"struct StakingQueueConfig","components":[{"name":"bootstrapValidatorSetSize","type":"uint256","internalType":"uint256"},{"name":"bootstrapFlushSize","type":"uint256","internalType":"uint256"},{"name":"normalFlushSizeMin","type":"uint256","internalType":"uint256"},{"name":"normalFlushSizeQuotient","type":"uint256","internalType":"uint256"},{"name":"maxQueueFlushSize","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"vote","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"CheckpointInvalidated","inputs":[{"name":"checkpointNumber","type":"uint256","indexed":true,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CheckpointProposed","inputs":[{"name":"checkpointNumber","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"archive","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"versionedBlobHashes","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"payloadDigest","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"attestationsHash","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"Deposit","inputs":[{"name":"attester","type":"address","indexed":true,"internalType":"address"},{"name":"withdrawer","type":"address","indexed":true,"internalType":"address"},{"name":"publicKeyInG1","type":"tuple","indexed":false,"internalType":"struct G1Point","components":[{"name":"x","type":"uint256","internalType":"uint256"},{"name":"y","type":"uint256","internalType":"uint256"}]},{"name":"publicKeyInG2","type":"tuple","indexed":false,"internalType":"struct G2Point","components":[{"name":"x0","type":"uint256","internalType":"uint256"},{"name":"x1","type":"uint256","internalType":"uint256"},{"name":"y0","type":"uint256","internalType":"uint256"},{"name":"y1","type":"uint256","internalType":"uint256"}]},{"name":"proofOfPossession","type":"tuple","indexed":false,"internalType":"struct G1Point","components":[{"name":"x","type":"uint256","internalType":"uint256"},{"name":"y","type":"uint256","internalType":"uint256"}]},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"EIP712DomainChanged","inputs":[],"anonymous":false},{"type":"event","name":"EscapeHatchSet","inputs":[{"name":"escapeHatch","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"FailedDeposit","inputs":[{"name":"attester","type":"address","indexed":true,"internalType":"address"},{"name":"withdrawer","type":"address","indexed":true,"internalType":"address"},{"name":"publicKeyInG1","type":"tuple","indexed":false,"internalType":"struct G1Point","components":[{"name":"x","type":"uint256","internalType":"uint256"},{"name":"y","type":"uint256","internalType":"uint256"}]},{"name":"publicKeyInG2","type":"tuple","indexed":false,"internalType":"struct G2Point","components":[{"name":"x0","type":"uint256","internalType":"uint256"},{"name":"x1","type":"uint256","internalType":"uint256"},{"name":"y0","type":"uint256","internalType":"uint256"},{"name":"y1","type":"uint256","internalType":"uint256"}]},{"name":"proofOfPossession","type":"tuple","indexed":false,"internalType":"struct G1Point","components":[{"name":"x","type":"uint256","internalType":"uint256"},{"name":"y","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"L2ProofVerified","inputs":[{"name":"checkpointNumber","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"proverId","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"LegacySlasherAuthorized","inputs":[{"name":"legacySlasher","type":"address","indexed":true,"internalType":"address"},{"name":"authorizedUntil","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ManaTargetUpdated","inputs":[{"name":"manaTarget","type":"uint256","indexed":true,"internalType":"uint256"}],"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":"PendingSlasherCancelled","inputs":[{"name":"slasher","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PendingSlasherQueued","inputs":[{"name":"slasher","type":"address","indexed":true,"internalType":"address"},{"name":"readyAt","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProtocolFeeMarginUpdated","inputs":[{"name":"oldBps","type":"uint16","indexed":false,"internalType":"uint16"},{"name":"newBps","type":"uint16","indexed":false,"internalType":"uint16"}],"anonymous":false},{"type":"event","name":"ProtocolFeeRecipientUpdated","inputs":[{"name":"oldRecipient","type":"address","indexed":false,"internalType":"address"},{"name":"newRecipient","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PrunedPending","inputs":[{"name":"provenCheckpointNumber","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pendingCheckpointNumber","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"RewardConfigUpdated","inputs":[{"name":"rewardConfig","type":"tuple","indexed":false,"internalType":"struct MutableRewardConfig","components":[{"name":"sequencerBps","type":"uint32","internalType":"Bps"},{"name":"checkpointReward","type":"uint96","internalType":"uint96"}]}],"anonymous":false},{"type":"event","name":"SequencerRewardCalculatorUpdated","inputs":[{"name":"oldCalculator","type":"address","indexed":false,"internalType":"address"},{"name":"newCalculator","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Slashed","inputs":[{"name":"attester","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SlasherUpdated","inputs":[{"name":"oldSlasher","type":"address","indexed":true,"internalType":"address"},{"name":"newSlasher","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StakingQueueConfigUpdated","inputs":[{"name":"config","type":"tuple","indexed":false,"internalType":"struct StakingQueueConfig","components":[{"name":"bootstrapValidatorSetSize","type":"uint256","internalType":"uint256"},{"name":"bootstrapFlushSize","type":"uint256","internalType":"uint256"},{"name":"normalFlushSizeMin","type":"uint256","internalType":"uint256"},{"name":"normalFlushSizeQuotient","type":"uint256","internalType":"uint256"},{"name":"maxQueueFlushSize","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"ValidatorQueued","inputs":[{"name":"attester","type":"address","indexed":true,"internalType":"address"},{"name":"withdrawer","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"WithdrawFinalized","inputs":[{"name":"attester","type":"address","indexed":true,"internalType":"address"},{"name":"recipient","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"WithdrawInitiated","inputs":[{"name":"attester","type":"address","indexed":true,"internalType":"address"},{"name":"recipient","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"WithdrawInitiatedByAttester","inputs":[{"name":"attester","type":"address","indexed":true,"internalType":"address"},{"name":"withdrawer","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"withdrawalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"error","name":"FeeLib__InvalidInitialEthPerFeeAsset","inputs":[{"name":"provided","type":"uint256","internalType":"uint256"},{"name":"minimum","type":"uint256","internalType":"uint256"},{"name":"maximum","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__InvalidManaLimit","inputs":[{"name":"maximum","type":"uint256","internalType":"uint256"},{"name":"provided","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__InvalidManaTarget","inputs":[{"name":"minimum","type":"uint256","internalType":"uint256"},{"name":"provided","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__ProvingCostAboveCeiling","inputs":[{"name":"provided","type":"uint256","internalType":"uint256"},{"name":"maximum","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__ProvingCostBelowFloor","inputs":[{"name":"provided","type":"uint256","internalType":"uint256"},{"name":"minimum","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidShortString","inputs":[]},{"type":"error","name":"OwnableInvalidOwner","inputs":[{"name":"owner","type":"address","internalType":"address"}]},{"type":"error","name":"OwnableUnauthorizedAccount","inputs":[{"name":"account","type":"address","internalType":"address"}]},{"type":"error","name":"Rollup__FieldElementOutOfRange","inputs":[{"name":"value","type":"bytes32","internalType":"bytes32"}]},{"type":"error","name":"Rollup__InvalidProofSubmissionEpochs","inputs":[{"name":"minimum","type":"uint256","internalType":"uint256"},{"name":"provided","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SafeCastOverflowedUintDowncast","inputs":[{"name":"bits","type":"uint8","internalType":"uint8"},{"name":"value","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Staking__BootstrapFlushSizeAboveMax","inputs":[{"name":"bootstrapFlushSize","type":"uint256","internalType":"uint256"},{"name":"maxQueueFlushSize","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Staking__ExitDelayAboveSlasherDelay","inputs":[{"name":"exitDelaySeconds","type":"uint256","internalType":"uint256"},{"name":"slasherExecutionDelay","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Staking__InvalidBootstrapFlushSize","inputs":[]},{"type":"error","name":"Staking__InvalidMaxQueueFlushSize","inputs":[]},{"type":"error","name":"Staking__InvalidNormalFlushSizeQuotient","inputs":[]},{"type":"error","name":"Staking__InvalidStakingQueueConfig","inputs":[]},{"type":"error","name":"StringTooLong","inputs":[{"name":"str","type":"string","internalType":"string"}]}],"bytecode":{"object":"0x6102806040525f6003556004805460ff19166001179055348015610021575f5ffd5b50604051616ecd380380616ecd8339810160408190526100409161182d565b604080518082018252600c81526b0417a74656320526f6c6c75760a41b602080830191909152825180840190935260018352603160f81b908301528491610087825f610464565b61012052610096816001610464565b61014052815160208084019190912060e052815190820120610100524660a05261012260e05161010051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b60805250503060c0526001600160a01b03811661015957604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b61016281610496565b506102c0810151610172906104e7565b610200810151624f1a00808211156101a6576040516301ce283360e41b815260048101929092526024820152604401610150565b505060a0810151600190806101d757604051637d58cc9960e01b815260048101929092526024820152604401610150565b50506101fc42825f015183602001518460a001518561030001516105bb60201b60201c565b5f61020782856106aa565b905061022c878784610200015184866102c00151876102e0015161074d60201b60201c565b6040808301516060840151608085015192516360047aed60e11b815260048101929092526024820152604481019190915273__$2f4de12ba25591d19e66da7de316af4ec1$__9063c008f5da906064015f6040518083038186803b158015610292575f5ffd5b505af41580156102a4573d5f5f3e3d5ffd5b505050506102b78261086460201b60201c565b436101605282516101805260208301516101a052610220808301805163ffffffff166101c0526001600160a01b03808b166101e0528716909152516040515f9130918b9190611000906103099061141e565b6001600160a01b03948516815293909216602084015263ffffffff1660408301526060820152608001604051809103905ff08015801561034b573d5f5f3e3d5ffd5b506001600160a01b0381166102405261022084015160405191925030916103719061142b565b6001600160a01b03909216825263ffffffff166020820152604001604051809103905ff0801580156103a5573d5f5f3e3d5ffd5b506001600160a01b0316610260816001600160a01b031681525050806001600160a01b0316638ccf6b956040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103fc573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061042091906118e9565b6001600160a01b031661020052610436846109b0565b610456836101e001518461024001518561026001516109e560201b60201c565b505050505050505050611dae565b5f60208351101561047f5761047883610bf8565b9050610490565b8161048a8482611987565b5060ff90505b92915050565b600280546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f81604001511161050b57604051632c171d3d60e01b815260040160405180910390fd5b5f81606001511161052f5760405163087d960960e41b815260040160405180910390fd5b5f816080015111610553576040516366ab021160e01b815260040160405180910390fd5b8051158061056457505f8160200151115b61058157604051638b9f9f0160e01b815260040160405180910390fd5b6080810151602082015190808211156105b65760405163dda88d2d60e01b815260048101929092526024820152604401610150565b505050565b7fcc2bde3d21ba778aa5c156bb6fc47381978b0054c8a1ef73f44234164324cbe06105e586610c35565b81546001600160801b0319166001600160801b039190911617815561060985610c6c565b815463ffffffff91909116600160801b0263ffffffff60801b1990911617815561063284610c6c565b815463ffffffff91909116600160a01b0263ffffffff60a01b1990911617815561065b83610c6c565b815463ffffffff91909116600160c01b0263ffffffff60c01b1990911617815561068482610c6c565b815463ffffffff91909116600160e01b026001600160e01b039091161790555050505050565b5f82604001515f14806106c05750826101800151155b156106cc57505f610490565b60405163730542f960e01b815273__$31521dbd7567dc03b4ab4c4cc849a55f1a$__9063730542f99061070790309086908890600401611a69565b602060405180830381865af4158015610722573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074691906118e9565b9392505050565b7fbba4a4d3c3eeb229c4f06863ce3d3d8cddab9e4dee538d785fc67e2ed9d68cad80546001600160a01b038881166001600160a01b03199283161783557fbba4a4d3c3eeb229c4f06863ce3d3d8cddab9e4dee538d785fc67e2ed9d68cb08054918916919092161790556107c085610c9c565b60038201805463ffffffff60a01b1916600160a01b63ffffffff93909316929092029190911790556001810180546001600160a01b0319166001600160a01b03861617905561080e83610ca6565b6005820155700100000000000000000000000000000001600782015561083382610d48565b8160010160146101000a8154816001600160601b0302191690836001600160601b0316021790555050505050505050565b61028081015160408101516001600160a01b0316610906576102a0820151604051632f3f868760e21b815273__$026f237c3e389f77c9869c62a75f74ed46$__9163bcfe1a1c916108b89190600401611c90565b602060405180830381865af41580156108d3573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108f791906118e9565b6001600160a01b031660408201525b610320820151604080516375bcc8fd60e11b815283516001600160a01b039081166004830152602085015163ffffffff166024830152918401518216604482015260608401516001600160601b031660648201529116608482015273__$026f237c3e389f77c9869c62a75f74ed46$__9063eb7991fa9060a4015f6040518083038186803b158015610996575f5ffd5b505af41580156109a8573d5f5f3e3d5ffd5b505050505050565b60408101515f516020616ead5f395f51905f52906109cd90610d7b565b6040918201515f808052600190920160205291902055565b7f2e57d696f4035f6dfbf369d367f6b4aaf23baac5f6ee9a3a5207d71c56de652c610a0f84610dc3565b508280600280821015610a3e57604051631ad480f960e11b815260048101929092526024820152604401610150565b50819050630bebc20080821115610a715760405163df3a972160e01b815260048101929092526024820152604401610150565b5083905060648110801590610a8c5750655af3107a40008111155b816064655af3107a4000909192610ac757604051635ffe7f0d60e01b8152600481019390935260248301919091526044820152606401610150565b505050610b1260405180608001604052808881526020016305f5e1006332f1b3368a610af39190611ce7565b610afd9190611d0a565b8152602081018890525f604090910152610e3d565b83556040805160a08101909152633b9aca0060608201908152600160808301528190610b3d90610ec2565b6001600160701b03168152602001610b746040518060400160405280488152602001610b6d610f0e60201b60201c565b9052610ec2565b6001600160701b03168152602001610b8c6005610c9c565b63ffffffff90811690915281516001860180546020850151604090950151909316600160e01b026001600160e01b036001600160701b03958616600160701b026001600160e01b031990951695909316949094179290921781169290921790556109a890859061100a16565b5f5f829050601f81511115610c22578260405163305a27a960e01b81526004016101509190611d29565b8051610c2d82611d5e565b179392505050565b5f6001600160801b03821115610c68576040516306dfcc6560e41b81526080600482015260248101839052604401610150565b5090565b5f63ffffffff821115610c68576040516306dfcc6560e41b81526020600482015260248101839052604401610150565b5f61049082610c6c565b60808101515f908190610cb890610c6c565b63ffffffff16811790506020610cd78460600151610c6c60201b60201c565b63ffffffff16901b811790506040610cf88460400151610c6c60201b60201c565b63ffffffff16901b811790506060610d198460200151610c6c60201b60201c565b63ffffffff16901b811790506080610d39845f0151610c6c60201b60201c565b63ffffffff16901b1792915050565b5f6001600160601b03821115610c68576040516306dfcc6560e41b81526060600482015260248101839052604401610150565b807f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f00000018110610dbf5760405163733fc21760e01b815260040161015091815260200190565b5050565b5f60018280610dee576040516372e1574f60e01b815260048101929092526024820152604401610150565b505f9050610dfd836002611ce7565b905063ffffffff8181811115610e34576040516303fd5c0b60e41b815263ffffffff90921660048301526024820152604401610150565b50909392505050565b60408101515f908190610e4f90611157565b6001600160401b0316811790506040610e718460200151610c3560201b60201c565b6001600160801b0316901b8117905060c0610e94845f0151610c6c60201b60201c565b63ffffffff16901b8117905060e0610eb5846060015161118c60201b60201c565b61ffff16901b1792915050565b60208101515f9081908190610ed6906111ba565b66ffffffffffffff16901b811790506038610ef9845f01516111ba60201b60201c565b66ffffffffffffff16901b17610746816111ed565b5f617a694614808015610f355750737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15155b156110035760408051600481526024810182526020810180516001600160e01b0316631f6d6ef760e01b17905290515f918291737109709ecfa91a80626ff3989d68f67f5b1dd12d91610f8791611d81565b5f60405180830381855afa9150503d805f8114610fbf576040519150601f19603f3d011682016040523d82523d5f602084013e610fc4565b606091505b5091509150818015610fd857506020815110155b15610ff95780806020019051810190610ff19190611d97565b935050505090565b6001935050505090565b4a91505090565b60408051610140810182525f80825260208083018290528284018290526060808401839052608080850184905260a080860185905260c0860185905260e086018590528651908101875284815292830184905294820186905281018290529283018190526101008201929092526101208101919091525f516020616ead5f395f51905f529061109890611220565b5f80805260029283016020908152604091829020835181559083015160018201559082015192810192909255606081015160038301556080810151600483015560a081015160058301805460c084015160e085015163ffffffff9094166001600160601b0319909216919091176401000000006001600160401b039283160217600160601b600160a01b0319166c0100000000000000000000000091909316029190911790556101008101516006830155610120015160079091015550565b5f6001600160401b03821115610c6857604080516306dfcc6560e41b8152600481019190915260248101839052604401610150565b5f61ffff821115610c68576040516306dfcc6560e41b81526010600482015260248101839052604401610150565b5f66ffffffffffffff821115610c68576040516306dfcc6560e41b81526038600482015260248101839052604401610150565b5f6001600160701b03821115610c68576040516306dfcc6560e41b81526070600482015260248101839052604401610150565b6112846040518061014001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f63ffffffff1681526020015f6001600160401b031681526020015f6001600160401b031681526020015f81526020015f81525090565b604051806101400160405280835f01518152602001836020015181526020018360400151815260200183606001518152602001836080015181526020016112d48460a00151610c9c60201b60201c565b63ffffffff1681526020018360c001516001600160401b031681526020018360e001516001600160401b0316815260200161131984610100015161132e60201b60201c565b81526020018361012001518152509050919050565b60208101515f90819061134090610c6c565b63ffffffff16811790506020611365845f015165ffffffffffff6113dd60201b60201c565b901b81179050605061138084604001516113ec60201b60201c565b65ffffffffffff16901b8117905060806113ab84606001516001600160401b036113dd60201b60201c565b901b8117905060c06113ce846080015160016001603f1b036113dd60201b60201c565b901b17600160ff1b1792915050565b5f828218828410028218610746565b5f65ffffffffffff821115610c68576040516306dfcc6560e41b81526030600482015260248101839052604401610150565b611e5f8061446b83390190565b610be3806162ca83390190565b6001600160a01b038116811461144c575f5ffd5b50565b805161145a81611438565b919050565b634e487b7160e01b5f52604160045260245ffd5b604051606081016001600160401b03811182821017156114955761149561145f565b60405290565b60405160a081016001600160401b03811182821017156114955761149561145f565b60405161034081016001600160401b03811182821017156114955761149561145f565b5f82601f8301126114ef575f5ffd5b6114f7611473565b806060840185811115611508575f5ffd5b845b8181101561152257805184526020938401930161150a565b509095945050505050565b8051801515811461145a575f5ffd5b63ffffffff8116811461144c575f5ffd5b805161145a8161153c565b5f60808284031215611568575f5ffd5b604051608081016001600160401b038111828210171561158a5761158a61145f565b8060405250809150825161159d81611438565b815260208301516115ad8161153c565b602082015260408301516115c081611438565b604082015260608301516001600160601b03811681146115de575f5ffd5b6060919091015292915050565b5f60a082840312156115fb575f5ffd5b61160361149b565b905081516116108161153c565b815260208201516116208161153c565b602082015260408201516116338161153c565b604082015260608201516116468161153c565b606082015260808201516116598161153c565b608082015292915050565b5f60a08284031215611674575f5ffd5b61167c61149b565b825181526020808401519082015260408084015190820152606080840151908201526080928301519281019290925250919050565b5f6104e082840312156116c2575f5ffd5b6116ca6114bd565b825181526020808401519082015260408084015190820152606080840151908201526080808401519082015260a0808401519082015260c0808401519082015260e0808401519082015261010080840151908201526101208084015190820152905061173a8361014084016114e0565b6101408201526101a08201516101608201526117596101c0830161152d565b61018082015261176c6101e0830161144f565b6101a0820152610200828101516101c08301526102208301516101e0830152610240830151908201526117a2610260830161154d565b6102208201526102808201516102408201526102a08201516102608201526117ce836102c08401611558565b6102808201526117e28361034084016115eb565b6102a08201526117f6836103e08401611664565b6102c08201526104808201516102e08201526104a08201516103008201526118216104c0830161144f565b61032082015292915050565b5f5f5f5f5f5f5f8789036105e0811215611845575f5ffd5b885161185081611438565b60208a015190985061186181611438565b60408a015190975061187281611438565b60608a015190965061188381611438565b60808a015190955061189481611438565b93506060609f19820112156118a7575f5ffd5b506118b0611473565b60a0890151815260c0890151602082015260e0890151604082015291506118db896101008a016116b1565b905092959891949750929550565b5f602082840312156118f9575f5ffd5b815161074681611438565b600181811c9082168061191857607f821691505b60208210810361193657634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156105b657805f5260205f20601f840160051c810160208510156119615750805b601f840160051c820191505b81811015611980575f815560010161196d565b5050505050565b81516001600160401b038111156119a0576119a061145f565b6119b4816119ae8454611904565b8461193c565b6020601f8211600181146119e6575f83156119cf5750848201515b5f19600385901b1c1916600184901b178455611980565b5f84815260208120601f198516915b82811015611a1557878501518255602094850194600190920191016119f5565b5084821015611a3257868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b805f5b6003811015611a63578151845260209384019390910190600101611a44565b50505050565b5f6105208201905060018060a01b038516825260018060a01b0384166020830152825160408301526020830151606083015260408301516080830152606083015160a0830152608083015160c083015260a083015160e083015260c083015161010083015260e0830151610120830152610100830151610140830152610120830151610160830152610140830151611b05610180840182611a41565b506101608301516101e0830152610180830151801515610200840152506101a08301516001600160a01b038116610220840152506101c08301516102408301526101e083015161026083015261020083015161028083015261022083015163ffffffff81166102a0840152506102408301516102c08301526102608301516102e083015261028083015180516001600160a01b03908116610300850152602082015163ffffffff1661032085015260408201511661034084015260608101516001600160601b0316610360840152506102a0830151805163ffffffff908116610380850152602082015181166103a0850152604082015181166103c0850152606082015181166103e0850152608082015116610400840152506102c0830151805161042084015260208101516104408401526040810151610460840152606081015161048084015260808101516104a0840152506102e08301516104c08301526103008301516104e08301526103208301516001600160a01b03811661050084015250949350505050565b60a08101610490828463ffffffff815116825263ffffffff602082015116602083015263ffffffff604082015116604083015263ffffffff606082015116606083015263ffffffff60808201511660808301525050565b808202811582820484141761049057634e487b7160e01b5f52601160045260245ffd5b5f82611d2457634e487b7160e01b5f52601260045260245ffd5b500490565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b80516020808301519190811015611936575f1960209190910360031b1b16919050565b5f82518060208501845e5f920191825250919050565b5f60208284031215611da7575f5ffd5b5051919050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e0516102005161022051610240516102605161260c611e5f5f395f610bd101525f81816106450152610ba201525f610b7301525f610b4401525f8181610b1501528181610f5b015261101501525f610ae901525f610ac301525f610a9d01525f61038e01525f61132301525f6112f701525f50505f50505f50505f50505f505061260c5ff3fe608060405234801561000f575f5ffd5b506004361061023f575f3560e01c806384b0196e11610135578063d768df6e116100b4578063e6e2844011610079578063e6e28440146104af578063eb80a094146104c2578063ee3b8dc2146104d5578063f2fde38b146104e8578063f85494de146104fb575f5ffd5b8063d768df6e1461045b578063e199c0591461046e578063e3380b7914610481578063e521cb9214610489578063e6208d151461049c575f5ffd5b8063ae8655c4116100fa578063ae8655c414610407578063ae8955811461041a578063af584dd31461042d578063c2cac49d14610440578063c7523d7914610448575f5ffd5b806384b0196e146103b05780638da5cb5b146103cb57806390a3b386146103e45780639f2b3154146103ec578063a2429e88146103f4575f5ffd5b806345e2dc40116101c157806365e50a3e1161018657806365e50a3e1461034e5780636902c67b14610361578063715018a6146103745780637468582f1461037c57806379ed8ead14610389575f5ffd5b806345e2dc40146102fa57806348b5de181461030d578063508ac49b146103205780635c8a32f6146103285780635de4c42e1461033b575f5ffd5b80631b34c564116102075780631b34c564146102b15780631d934975146102c4578063214c0693146102cc57806323f4448f146102df5780632eb5af0a146102f2575f5ffd5b80630121b93f1461024357806302fb4d85146102585780630a883a991461028057806310073ff01461029357806310a2aa55146102a9575b5f5ffd5b6102566102513660046114c6565b61050e565b005b61026b6102663660046114f8565b610571565b60405190151581526020015b60405180910390f35b61025661028e3660046116e1565b6105fe565b61029b6106a0565b604051908152602001610277565b610256610711565b6102566102bf3660046117d7565b61076b565b6102566107c4565b61029b6102da36600461182b565b61080d565b6102566102ed36600461189a565b610887565b6102566108c6565b6102566103083660046118b3565b610910565b61025661031b36600461189a565b610947565b610256610986565b61025661033636600461182b565b6109c8565b6102566103493660046118cc565b610a31565b61025661035c36600461190a565b610c1e565b61025661036f3660046119bd565b610c86565b610256610cfb565b60045461026b9060ff1681565b61029b7f000000000000000000000000000000000000000000000000000000000000000081565b6103b8610d0e565b6040516102779796959493929190611a94565b6002546001600160a01b03166040516102779190611b2a565b61029b610d50565b610256610d5a565b6102566104023660046114c6565b610d9c565b610256610415366004611b3e565b610ddc565b610256610428366004611bf2565b610e1f565b61025661043b366004611c65565b610e8e565b610256610efa565b61029b61045636600461189a565b610f3c565b61029b610469366004611cd0565b610fe0565b61025661047c3660046114c6565b61103d565b610256611075565b61025661049736600461189a565b6110b7565b6102566104aa36600461189a565b6110f5565b6102566104bd3660046114c6565b61112c565b6102566104d036600461189a565b61116c565b61026b6104e3366004611d73565b6111ab565b6102566104f636600461189a565b6111f5565b61025661050936600461189a565b61123b565b604051630121b93f60e01b81526004810182905273__$2f4de12ba25591d19e66da7de316af4ec1$__90630121b93f906024015b5f6040518083038186803b158015610558575f5ffd5b505af415801561056a573d5f5f3e3d5ffd5b5050505050565b6040516302fb4d8560e01b81526001600160a01b0383166004820152602481018290525f9073__$2f4de12ba25591d19e66da7de316af4ec1$__906302fb4d85906044015b602060405180830381865af41580156105d1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105f59190611da4565b90505b92915050565b60048054604051634abd1af560e01b815273__$ff9fdf790a39e6d4e381889ed2aba2987d$__92634abd1af59261066b928c928c928c928c928c928c928c9260ff909216917f00000000000000000000000000000000000000000000000000000000000000009101611f1b565b5f6040518083038186803b158015610681575f5ffd5b505af4158015610693573d5f5f3e3d5ffd5b5050505050505050505050565b5f73__$2f4de12ba25591d19e66da7de316af4ec1$__6310073ff06040518163ffffffff1660e01b8152600401602060405180830381865af41580156106e8573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070c9190611ff4565b905090565b73__$2f4de12ba25591d19e66da7de316af4ec1$__6310a2aa556040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b505af4158015610765573d5f5f3e3d5ffd5b50505050565b610773611272565b604051638841c46760e01b8152815163ffffffff16600482015260208201516001600160601b0316602482015273__$026f237c3e389f77c9869c62a75f74ed46$__90638841c46790604401610542565b60405163e199c05960e01b81525f19600482015273__$2f4de12ba25591d19e66da7de316af4ec1$__9063e199c059906024015f6040518083038186803b158015610753575f5ffd5b60405163069a2ae160e11b81525f9073__$54376d545bb0cf37abaed04a5a4768fa07$__90630d3455c290610848908690869060040161203d565b602060405180830381865af4158015610863573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105f59190611ff4565b61088f611272565b60405163d400325360e01b815273__$026f237c3e389f77c9869c62a75f74ed46$__9063d400325390610542908490600401611b2a565b6108ce611272565b73__$2f4de12ba25591d19e66da7de316af4ec1$__632eb5af0a6040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b60405163d306a97560e01b815273__$54376d545bb0cf37abaed04a5a4768fa07$__9063d306a97590610542908490600401612074565b61094f611272565b604051630916bbc360e31b815273__$2f4de12ba25591d19e66da7de316af4ec1$__906348b5de1890610542908490600401611b2a565b73__$026f237c3e389f77c9869c62a75f74ed46$__63508ac49b6040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b6040516319d947ab60e31b815273__$54376d545bb0cf37abaed04a5a4768fa07$__9063ceca3d5890610a01908590859060040161203d565b5f6040518083038186803b158015610a17575f5ffd5b505af4158015610a29573d5f5f3e3d5ffd5b505050505050565b73__$908808037e8813018a35142aa945c7c277$__63d25e9de382610c0160408051610100810182525f80825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e08101919091526040518061010001604052807f000000000000000000000000000000000000000000000000000000000000000081526020017f000000000000000000000000000000000000000000000000000000000000000081526020017f000000000000000000000000000000000000000000000000000000000000000063ffffffff1681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316815250905090565b6040518363ffffffff1660e01b8152600401610542929190612316565b610c26611272565b604080516347817b3960e11b81528251600482015260208301516024820152908201516044820152606082015160648201526080820151608482015273__$2f4de12ba25591d19e66da7de316af4ec1$__90638f02f6729060a401610542565b604051630f0ec5ad60e41b815273__$2f4de12ba25591d19e66da7de316af4ec1$__9063f0ec5ad090610cc790899089908990899089908990600401612420565b5f6040518083038186803b158015610cdd575f5ffd5b505af4158015610cef573d5f5f3e3d5ffd5b50505050505050505050565b610d03611272565b610d0c5f61129f565b565b5f6060805f5f5f6060610d1f6112f0565b610d2761131c565b604080515f80825260208201909252600f60f81b9b939a50919850469750309650945092509050565b5f61070c42611349565b73__$ff9fdf790a39e6d4e381889ed2aba2987d$__639f2b31546040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b610da4611272565b604051633b45d94560e21b81526004810182905273__$026f237c3e389f77c9869c62a75f74ed46$__9063ed17651490602401610542565b610de4611272565b60405163a4f40ee960e01b815261ffff8216600482015273__$026f237c3e389f77c9869c62a75f74ed46$__9063a4f40ee990602401610542565b60405163029553b560e21b815273__$2f4de12ba25591d19e66da7de316af4ec1$__90630a554ed490610e5c9087908790879087906004016124d4565b5f6040518083038186803b158015610e72575f5ffd5b505af4158015610e84573d5f5f3e3d5ffd5b5050505050505050565b6040516333ab76ab60e01b815273__$2f4de12ba25591d19e66da7de316af4ec1$__906333ab76ab90610ec990869086908690600401612510565b5f6040518083038186803b158015610edf575f5ffd5b505af4158015610ef1573d5f5f3e3d5ffd5b50505050505050565b73__$2f4de12ba25591d19e66da7de316af4ec1$__63c2cac49d6040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b604051635e5fafb360e01b81526001600160a01b0380831660048301527f00000000000000000000000000000000000000000000000000000000000000001660248201525f9073__$026f237c3e389f77c9869c62a75f74ed46$__90635e5fafb390604401602060405180830381865af4158015610fbc573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105f89190611ff4565b604051631c2dc80960e11b81525f9073__$026f237c3e389f77c9869c62a75f74ed46$__9063385b90129061084890869086907f00000000000000000000000000000000000000000000000000000000000000009060040161253a565b60405163e199c05960e01b81526004810182905273__$2f4de12ba25591d19e66da7de316af4ec1$__9063e199c05990602401610542565b73__$2f4de12ba25591d19e66da7de316af4ec1$__63e3380b796040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b6110bf611272565b604051623be8ff60e71b815273__$026f237c3e389f77c9869c62a75f74ed46$__90631df47f8090610542908490600401611b2a565b60405163e6208d1560e01b815273__$54376d545bb0cf37abaed04a5a4768fa07$__9063e6208d1590610542908490600401611b2a565b611134611272565b60405163039b8a1160e61b81526004810182905273__$026f237c3e389f77c9869c62a75f74ed46$__9063e6e2844090602401610542565b611174611272565b604051633ae0282560e21b815273__$2f4de12ba25591d19e66da7de316af4ec1$__9063eb80a09490610542908490600401611b2a565b60405163771dc6e160e11b81526001600160a01b038084166004830152821660248201525f9073__$2f4de12ba25591d19e66da7de316af4ec1$__9063ee3b8dc2906044016105b6565b6111fd611272565b6001600160a01b03811661122f575f604051631e4fbdf760e01b81526004016112269190611b2a565b60405180910390fd5b6112388161129f565b50565b604051637c2a4a6f60e11b815273__$2f4de12ba25591d19e66da7de316af4ec1$__9063f85494de90610542908490600401611b2a565b6002546001600160a01b03163314610d0c573360405163118cdaa760e01b81526004016112269190611b2a565b600280546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b606061070c7f00000000000000000000000000000000000000000000000000000000000000005f6113b9565b606061070c7f000000000000000000000000000000000000000000000000000000000000000060016113b9565b5f7fbba4a4d3c3eeb229c4f06863ce3d3d8cddab9e4dee538d785fc67e2ed9d68cad6003015460405163ec6e69db60e01b8152306004820152602481018490526001600160a01b039091169063ec6e69db90604401602060405180830381865afa158015610fbc573d5f5f3e3d5ffd5b606060ff83146113d3576113cc83611462565b90506105f8565b8180546113df906125a4565b80601f016020809104026020016040519081016040528092919081815260200182805461140b906125a4565b80156114565780601f1061142d57610100808354040283529160200191611456565b820191905f5260205f20905b81548152906001019060200180831161143957829003601f168201915b505050505090506105f8565b60605f61146e8361149f565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f60ff8216601f8111156105f857604051632cd44ac360e21b815260040160405180910390fd5b5f602082840312156114d6575f5ffd5b5035919050565b80356001600160a01b03811681146114f3575f5ffd5b919050565b5f5f60408385031215611509575f5ffd5b611512836114dd565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b604080519081016001600160401b038111828210171561155657611556611520565b60405290565b604051608081016001600160401b038111828210171561155657611556611520565b604051601f8201601f191681016001600160401b03811182821017156115a6576115a6611520565b604052919050565b5f82601f8301126115bd575f5ffd5b81356001600160401b038111156115d6576115d6611520565b6115e9601f8201601f191660200161157e565b8181528460208386010111156115fd575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f60408284031215611629575f5ffd5b611631611534565b905081356001600160401b03811115611648575f5ffd5b611654848285016115ae565b82525060208201356001600160401b0381111561166f575f5ffd5b61167b848285016115ae565b60208301525092915050565b5f60608284031215611697575f5ffd5b50919050565b5f5f83601f8401126116ad575f5ffd5b5081356001600160401b038111156116c3575f5ffd5b6020830191508360208285010111156116da575f5ffd5b9250929050565b5f5f5f5f5f5f5f8789036102c08112156116f9575f5ffd5b610200811215611707575f5ffd5b508796506102008801356001600160401b03811115611724575f5ffd5b6117308a828b01611619565b9650506102208801356001600160401b0381111561174c575f5ffd5b8801601f81018a1361175c575f5ffd5b80356001600160401b03811115611771575f5ffd5b8a60208260051b8401011115611785575f5ffd5b6020919091019550935061179d896102408a01611687565b92506102a08801356001600160401b038111156117b8575f5ffd5b6117c48a828b0161169d565b989b979a50959850939692959293505050565b5f60408284031280156117e8575f5ffd5b506117f1611534565b823563ffffffff81168114611804575f5ffd5b815260208301356001600160601b038116811461181f575f5ffd5b60208201529392505050565b5f5f6020838503121561183c575f5ffd5b82356001600160401b03811115611851575f5ffd5b8301601f81018513611861575f5ffd5b80356001600160401b03811115611876575f5ffd5b85602060a08302840101111561188a575f5ffd5b6020919091019590945092505050565b5f602082840312156118aa575f5ffd5b6105f5826114dd565b5f60a08284031280156118c4575f5ffd5b509092915050565b5f602082840312156118dc575f5ffd5b81356001600160401b038111156118f1575f5ffd5b82016101a08185031215611903575f5ffd5b9392505050565b5f60a082840312801561191b575f5ffd5b5060405160a081016001600160401b038111828210171561193e5761193e611520565b604090815283358252602080850135908301528381013590820152606080840135908201526080928301359281019290925250919050565b5f60408284031215611986575f5ffd5b61198e611534565b823581526020928301359281019290925250919050565b8015158114611238575f5ffd5b80356114f3816119a5565b5f5f5f5f5f5f8688036101608112156119d4575f5ffd5b6119dd886114dd565b96506119eb602089016114dd565b95506119fa8960408a01611976565b94506080607f1982011215611a0d575f5ffd5b50611a1661155c565b6080880135815260a0880135602082015260c0880135604082015260e088013560608201529250611a4b886101008901611976565b9150611a5a61014088016119b2565b90509295509295509295565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b60ff60f81b8816815260e060208201525f611ab260e0830189611a66565b8281036040840152611ac48189611a66565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b81811015611b19578351835260209384019390920191600101611afb565b50909b9a5050505050505050505050565b6001600160a01b0391909116815260200190565b5f60208284031215611b4e575f5ffd5b813561ffff81168114611903575f5ffd5b5f6001600160401b03821115611b7757611b77611520565b5060051b60200190565b5f82601f830112611b90575f5ffd5b8135611ba3611b9e82611b5f565b61157e565b8082825260208201915060208360051b860101925085831115611bc4575f5ffd5b602085015b83811015611be857611bda816114dd565b835260209283019201611bc9565b5095945050505050565b5f5f5f5f60808587031215611c05575f5ffd5b8435935060208501356001600160401b03811115611c21575f5ffd5b611c2d87828801611619565b93505060408501356001600160401b03811115611c48575f5ffd5b611c5487828801611b81565b949793965093946060013593505050565b5f5f5f60608486031215611c77575f5ffd5b8335925060208401356001600160401b03811115611c93575f5ffd5b611c9f86828701611619565b92505060408401356001600160401b03811115611cba575f5ffd5b611cc686828701611b81565b9150509250925092565b5f5f60408385031215611ce1575f5ffd5b611cea836114dd565b915060208301356001600160401b03811115611d04575f5ffd5b8301601f81018513611d14575f5ffd5b8035611d22611b9e82611b5f565b8082825260208201915060208360051b850101925087831115611d43575f5ffd5b6020840193505b82841015611d65578335825260209384019390910190611d4a565b809450505050509250929050565b5f5f60408385031215611d84575f5ffd5b611d8d836114dd565b9150611d9b602084016114dd565b90509250929050565b5f60208284031215611db4575f5ffd5b8151611903816119a5565b80356001600160801b03811681146114f3575f5ffd5b6001600160801b03611de682611dbf565b1682526001600160801b03611dfd60208301611dbf565b1660208301525050565b803582526020808201359083015260408082013590830152606080820135908301526080808201359083015260a0808201359083015260c08082013590830152611e5360e082016114dd565b6001600160a01b031660e08301526101008181013590830152611e7d610120808401908301611dd5565b610160818101359083015261018090810135910152565b5f815160408452611ea86040850182611a66565b905060208301518482036020860152611ec18282611a66565b95945050505050565b803560ff8116808214611edb575f5ffd5b83525060208181013590830152604090810135910152565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b893581526020808b0135908201525f611f3a6040808401908d01611e07565b6101e08b810135908301526103006102008301819052611f5c9083018b611e94565b82810361022084015288815289906020015f805b8b811015611f9e576001600160a01b03611f89856114dd565b16835260209384019390920191600101611f70565b50611faf905061024085018a611eca565b8381036102a0850152611fc381888a611ef3565b92505050611fd66102c083018515159052565b6001600160a01b0383166102e08301529a9950505050505050505050565b5f60208284031215612004575f5ffd5b5051919050565b6001600160a01b0361201c826114dd565b168252602081810135908301526120396040808401908301611eca565b5050565b602080825281018290525f8360408301825b85811015611be857612061828461200b565b60a092830192919091019060010161204f565b60a081016105f8828461200b565b80358252602080820135908301526040808201359083015260608082013590830152608080820135908301526001600160a01b036120c260a083016114dd565b1660a08301525050565b5f5f8335601e198436030181126120e1575f5ffd5b83016020810192503590506001600160401b038111156120ff575f5ffd5b8060061b36038213156116da575f5ffd5b8183526020830192505f815f5b84811015612155576001600160a01b03612136836114dd565b168652602082810135908701526040958601959091019060010161211d565b5093949350505050565b5f5f8335601e19843603018112612174575f5ffd5b83016020810192503590506001600160401b03811115612192575f5ffd5b6101a0810236038213156116da575f5ffd5b8183526020830192505f815f5b84811015612155576121c38683611e07565b6101a09586019591909101906001016121b1565b5f8235603e198336030181126121eb575f5ffd5b90910192915050565b5f5f8335601e19843603018112612209575f5ffd5b83016020810192503590506001600160401b03811115612227575f5ffd5b8036038213156116da575f5ffd5b5f61224082836121f4565b60408552612252604086018284611ef3565b91505061226260208401846121f4565b8583036020870152612275838284611ef3565b9695505050505050565b805182526020810151602083015263ffffffff604082015116604083015260018060a01b03606082015116606083015260018060a01b03608082015116608083015260a08101516122db60a08401826001600160a01b03169052565b5060c08101516122f660c08401826001600160a01b03169052565b5060e081015161231160e08401826001600160a01b03169052565b505050565b61012080825283359082015260208301356101408201525f61233f610160830160408601612082565b61234d6101008501856120cc565b6101a06102208501526123656102c085018284612110565b91505061237661012086018661215f565b84830361011f190161024086015261238f8382846121a4565b925050506123a16101408601866121d7565b83820361011f19016102608501526123b98282612235565b9150506123ca6101608601866121f4565b84830361011f19016102808601526123e3838284611ef3565b925050506123f56101808601866121f4565b84830361011f19016102a086015261240e838284611ef3565b9350505050611903602083018461227f565b6001600160a01b038781168252861660208201526101608101612450604083018780518252602090810151910152565b8451608083015260208086015160a0840152604086015160c0840152606086015160e08401528451610100840152840151610120830152821515610140830152979650505050505050565b5f8151808452602084019350602083015f5b828110156121555781516001600160a01b03168652602095860195909101906001016124ad565b848152608060208201525f6124ec6080830186611e94565b82810360408401526124fe818661249b565b91505082606083015295945050505050565b838152606060208201525f6125286060830185611e94565b8281036040840152612275818561249b565b6001600160a01b03841681526060602080830182905284519183018290525f91908501906080840190835b81811015612583578351835260209384019390920191600101612565565b50506001600160a01b03949094166040939093019290925250909392505050565b600181811c908216806125b857607f821691505b60208210810361169757634e487b7160e01b5f52602260045260245ffdfea2646970667358221220f570403971268098bbeb55e0ddb2140c5c91caf8ff8dcbf99467453ff3c1a3a764736f6c634300081e0033610100604052348015610010575f5ffd5b50604051611e5f380380611e5f83398101604081905261002f9161023a565b6001600160a01b03841660805260a08290526102008110156100985760405162461bcd60e51b815260206004820152601560248201527f4255434b45542052494e4720544f4f20534d414c4c000000000000000000000060448201526064015b60405180910390fd5b60e0819052604080516080810182525f80825260208201529081016100bc426101dd565b6001600160401b0390811682525f6020928301819052808052825282517fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb555908201517fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb6805460408581015160609096015163ffffffff16600160801b0263ffffffff60801b1996861668010000000000000000026001600160801b0319909316949095169390931717939093169190911790915560a05190518591859130919061018690610216565b6001600160a01b0394851681529284166020840152921660408201526060810191909152608001604051809103905ff0801580156101c6573d5f5f3e3d5ffd5b506001600160a01b031660c0525061027f92505050565b5f6001600160401b0382111561021257604080516306dfcc6560e41b815260048101919091526024810183905260440161008f565b5090565b6107e98061167683390190565b6001600160a01b0381168114610237575f5ffd5b50565b5f5f5f5f6080858703121561024d575f5ffd5b845161025881610223565b602086015190945061026981610223565b6040860151606090960151949790965092505050565b60805160a05160c05160e05161133861033e5f395f8181610260015281816102ee015281816105e00152818161063f015281816107030152818161075801528181610782015281816107c90152818161082601528181610908015281816109be01528181610a3001528181610ba601528181610c9501528181610d5901528181610d900152610ecd01525f8181610138015281816101d1015261047001525f818161029c015261039f01525f81816102020152610aca01526113385ff3fe608060405234801561000f575f5ffd5b50600436106100c7575f3560e01c80639500ac30116100795780639500ac30146101f55780639611c5c2146101fd5780639953c8ec14610224578063af16b0391461023a578063db179be61461025b578063e80f895114610282578063ffa1ad7414610297575f5ffd5b80631865c57d146100cb5780631f6d510b1461010b5780632fb131c814610133578063620f27241461017257806365fe45ed1461019e5780638afaa215146101be5780638ccf6b95146101cf575b5f5ffd5b6100d36102be565b60408051825181526020808401516001600160401b039081169183019190915292820151909216908201526060015b60405180910390f35b61011e61011936600461107a565b610357565b60408051928352602083019190915201610102565b61015a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610102565b600154600160401b90046001600160401b03165b6040516001600160401b039091168152602001610102565b6101b16101ac3660046110f1565b6105a4565b6040516101029190611146565b6001546001600160401b0316610186565b7f000000000000000000000000000000000000000000000000000000000000000061015a565b6101866106c5565b61015a7f000000000000000000000000000000000000000000000000000000000000000081565b61022c6106d3565b604051908152602001610102565b61024d610248366004611154565b610727565b60405161010292919061117a565b61022c7f000000000000000000000000000000000000000000000000000000000000000081565b610295610290366004611154565b610abf565b005b61022c7f000000000000000000000000000000000000000000000000000000000000000081565b604080516060810182525f80825260208201819052918101919091526001546001600160401b03165f80806103137f0000000000000000000000000000000000000000000000000000000000000000856111ab565b815260208082019290925260409081015f208151606081018352815481526001909101546001600160401b0390811693820193909352939091169083015250919050565b82515f9081905f5160206112e35f395f51905f52811115610397576040516353bb503760e11b815260040161038e91815260200190565b60405180910390fd5b5060208501517f00000000000000000000000000000000000000000000000000000000000000008181146103e757604051632e26721160e21b81526004810192909252602482015260440161038e565b508490505f5160206112e35f395f51905f5281111561041c576040516311d1480560e21b815260040161038e91815260200190565b50825f5160206112e35f395f51905f5281111561044f57604051633b379f8b60e21b815260040161038e91815260200190565b505f610459610b97565b6001600160401b031690505f336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461049b573361049e565b60035b6040805160e0810182526001600160a01b03831660a082019081524660c08301528152602081018a905290810188905260608101879052608081018490529091505f6104e982610bf5565b90505f5f6104f683610c7d565b604080518281526001600160401b038416602080830191909152885180516001600160a01b03168385015281015160608084019190915289820151805160808086019190915292015160a08401528984015160c084015289015160e0830152880151610100820152905192945090925084917f6406de2408cbb641d69139ebf977ffd682d709ede2d7b1009509ca5e7426a02e918190036101200190a2509099939850929650505050505050565b604080516080810182525f8082526020820181905291810182905260608101919091526001546001600160401b031680831180159061060b57507f000000000000000000000000000000000000000000000000000000000000000061060984836111d2565b105b838290916106355760405163fee255b760e01b81526004810192909252602482015260440161038e565b505f9050806106647f0000000000000000000000000000000000000000000000000000000000000000866111ab565b815260208082019290925260409081015f208151608081018352815481526001909101546001600160401b0380821694830194909452600160401b810490931691810191909152600160801b90910463ffffffff1660608201529392505050565b5f6106ce610b97565b905090565b6001545f906106f4906001600160401b03600160401b8204811691166111e5565b6106ce906001600160401b03167f00000000000000000000000000000000000000000000000000000000000000006111d2565b604080516080810182525f80825260208201819052918101829052606081018290526001546001600160401b03165f7f000000000000000000000000000000000000000000000000000000000000000082106107b5576107a77f0000000000000000000000000000000000000000000000000000000000000000836111d2565b6107b2906001611204565b90505b815f5b60048110156108fd575f80806107ee7f0000000000000000000000000000000000000000000000000000000000000000866111ab565b815260208101919091526040015f20600101546001600160401b039081169150881681116108b45761081f83610f79565b5f8061084b7f0000000000000000000000000000000000000000000000000000000000000000876111ab565b815260208082019290925260409081015f208151608081018352815481526001909101546001600160401b0380821694830194909452600160401b810490931691810191909152600160801b90910463ffffffff16606082015290999098509650505050505050565b8383036108e7576040516389a5fcf560e01b81526001600160401b03808a1660048301528216602482015260440161038e565b6108f26001846111d2565b9250506001016107b8565b5081815f808061092d7f0000000000000000000000000000000000000000000000000000000000000000866111ab565b815260208101919091526040015f20600101546001600160401b0390811691508916811115610982576040516389a5fcf560e01b81526001600160401b03808b1660048301528216602482015260440161038e565b81831015610a20575f600261099785856111d2565b6109a19190611217565b6109ab90846111d2565b90506001600160401b038a165f806109e37f0000000000000000000000000000000000000000000000000000000000000000856111ab565b815260208101919091526040015f20600101546001600160401b031611610a0c57809350610a1a565b610a176001826111d2565b92505b50610982565b610a2983610f79565b5f80610a557f0000000000000000000000000000000000000000000000000000000000000000876111ab565b815260208082019290925260409081015f208151608081018352815481526001909101546001600160401b0380821694830194909452600160401b810490931691810191909152600160801b90910463ffffffff166060820152909a909950975050505050505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610b085760405163e5336a6b60e01b815260040160405180910390fd5b60015481906001600160401b03908116908216811015610b4e5760405163fee255b760e01b81526001600160401b0392831660048201529116602482015260440161038e565b50506001546001600160401b03600160401b90910481169082161115610b94576001805467ffffffffffffffff60401b1916600160401b6001600160401b038416021790555b50565b6001545f9081908190610bd4907f0000000000000000000000000000000000000000000000000000000000000000906001600160401b03166111ab565b815260208101919091526040015f20600101546001600160401b0316919050565b5f610c77825f01518360200151846040015185606001518660800151604051602001610c6395949392919085516001600160a01b03168152602095860151868201528451604082015293909401516060840152608083019190915260a082015260c081019190915260e00190565b604051602081830303815290604052610fb2565b92915050565b6001545f9081906001600160401b0316818080610cba7f0000000000000000000000000000000000000000000000000000000000000000856111ab565b815260208082019290925260409081015f208151608081018352815481526001909101546001600160401b0380821694830194909452600160401b8104841692820192909252600160801b90910463ffffffff166060820152915082161580610d2f57504281604001516001600160401b0316105b80610d455750610100816060015163ffffffff16145b15610e7857610d5560018361122a565b91507f0000000000000000000000000000000000000000000000000000000000000000826001600160401b031610610e0d575f610dc3610dbe7f00000000000000000000000000000000000000000000000000000000000000006001600160401b0386166111d2565b610f79565b60015490915081906001600160401b03808316600160401b909204161015610e0a57604051632eb49c6d60e01b81526001600160401b03909116600482015260240161038e565b50505b8160015f6101000a8154816001600160401b0302191690836001600160401b031602179055506040518060800160405280825f0151815260200182602001516001600160401b03168152602001610e6342610f79565b6001600160401b031681525f60209091015290505b8051610e849086611047565b815260208101805160019190610e9b90839061122a565b6001600160401b031690525060608101805160019190610ebc908390611249565b63ffffffff16905250805f80610efb7f00000000000000000000000000000000000000000000000000000000000000006001600160401b0387166111ab565b815260208082019290925260409081015f208351815591830151600190920180549184015160609094015163ffffffff16600160801b0263ffffffff60801b196001600160401b03958616600160401b026001600160801b031990941695909416949094179190911791909116919091179055519094909350915050565b5f6001600160401b03821115610fae57604080516306dfcc6560e41b815260048101919091526024810183905260440161038e565b5090565b6040805160018082528183019092525f9160208201818036833701905050600283604051610fe0919061127c565b602060405180830381855afa158015610ffb573d5f5f3e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061101e9190611287565b60405160200161102f92919061129e565b604051602081830303815290604052610c77906112bc565b60405163dec1650960e01b602082015260248101839052604481018290525f9061107390606401610c63565b9392505050565b5f5f5f838503608081121561108d575f5ffd5b604081121561109a575f5ffd5b50604051604081018181106001600160401b03821117156110c957634e487b7160e01b5f52604160045260245ffd5b6040908152853582526020808701359083015290969085013595506060909401359392505050565b5f60208284031215611101575f5ffd5b5035919050565b805182526001600160401b0360208201511660208301526001600160401b03604082015116604083015263ffffffff60608201511660608301525050565b60808101610c778284611108565b5f60208284031215611164575f5ffd5b81356001600160401b0381168114611073575f5ffd5b6001600160401b038316815260a081016110736020830184611108565b634e487b7160e01b5f52601260045260245ffd5b5f826111b9576111b9611197565b500690565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610c7757610c776111be565b6001600160401b038281168282160390811115610c7757610c776111be565b80820180821115610c7757610c776111be565b5f8261122557611225611197565b500490565b6001600160401b038181168382160190811115610c7757610c776111be565b63ffffffff8181168382160190811115610c7757610c776111be565b5f81518060208401855e5f93019283525090919050565b5f6110738284611265565b5f60208284031215611297575f5ffd5b5051919050565b5f6112a98285611265565b60ff199390931683525050601f01919050565b805160208083015191908110156112dc575f198160200360031b1b821691505b5091905056fe30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000000a26469706673582212208e42b533fffbd422b0b7a1ebd6c1340c11a492053086b7846524bd99b2f9765a64736f6c634300081e0033610100604052348015610010575f5ffd5b506040516107e93803806107e983398101604081905261002f91610067565b6001600160a01b0393841660805290831660a052911660c05260e0526100b7565b6001600160a01b0381168114610064575f5ffd5b50565b5f5f5f5f6080858703121561007a575f5ffd5b845161008581610050565b602086015190945061009681610050565b60408601519093506100a781610050565b6060959095015193969295505050565b60805160a05160c05160e0516106dd61010c5f395f8181610159015261018a01525f818161013201528181610209015261038701525f818161010b015261026b01525f818160cc015261033c01526106dd5ff3fe608060405234801561000f575f5ffd5b506004361061006b575f3560e01c8063284b5dc61461006f5780632dc81c621461009c57806348fef595146100b25780639611c5c2146100c7578063b701069714610106578063c5d664c61461012d578063ffa1ad7414610154575b5f5ffd5b61008261007d3660046105a3565b61017b565b604080519283526020830191909152015b60405180910390f35b6100a4600381565b604051908152602001610093565b6100c56100c03660046105cc565b610331565b005b6100ee7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610093565b6100ee7f000000000000000000000000000000000000000000000000000000000000000081565b6100ee7f000000000000000000000000000000000000000000000000000000000000000081565b6100a47f000000000000000000000000000000000000000000000000000000000000000081565b604080518082018252600381527f00000000000000000000000000000000000000000000000000000000000000006020820152905160248101859052604481018490525f91829182906101fa9060640160408051601f198184030181529190526020810180516001600160e01b0316630c7e892d60e31b1790526103f5565b90506102316001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016333089610490565b604051631f6d510b60e01b8152825160048201526020830151602482015260448101829052606481018690525f9081906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631f6d510b9060840160408051808303815f875af11580156102b0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102d49190610601565b604080518b8152602081018b905290810183905260608101829052919350915089907fcb43dda0de11e57048e9d074ae7474446335afc906a0e5789d624fa5422629e39060800160405180910390a2909890975095505050505050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461037a576040516333f1b48f60e11b815260040160405180910390fd5b6103ae6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001683836104fd565b816001600160a01b03167f63be20cc905d5ba0cf65db405c4999f99f2575e521875f13a8009d6eed7a09d9826040516103e991815260200190565b60405180910390a25050565b6040805160018082528183019092525f9160208201818036833701905050600283604051610423919061063a565b602060405180830381855afa15801561043e573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610461919061064c565b604051602001610472929190610663565b60405160208183030381529060405261048a90610681565b92915050565b6040516001600160a01b0384811660248301528381166044830152606482018390526104f79186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050610533565b50505050565b6040516001600160a01b0383811660248301526044820183905261052e91859182169063a9059cbb906064016104c5565b505050565b5f5f60205f8451602086015f885af180610552576040513d5f823e3d81fd5b50505f513d91508115610569578060011415610576565b6001600160a01b0384163b155b156104f757604051635274afe760e01b81526001600160a01b038516600482015260240160405180910390fd5b5f5f5f606084860312156105b5575f5ffd5b505081359360208301359350604090920135919050565b5f5f604083850312156105dd575f5ffd5b82356001600160a01b03811681146105f3575f5ffd5b946020939093013593505050565b5f5f60408385031215610612575f5ffd5b505080516020909101519092909150565b5f81518060208401855e5f93019283525090919050565b5f6106458284610623565b9392505050565b5f6020828403121561065c575f5ffd5b5051919050565b5f61066e8285610623565b60ff199390931683525050601f01919050565b805160208083015191908110156106a1575f198160200360031b1b821691505b5091905056fea2646970667358221220ffa7a66afb7e63ecaab6f46cad99c1164d1ca142558dacacfda3c9fc01a6defc64736f6c634300081e003360c060405234801561000f575f5ffd5b50604051610be3380380610be383398101604081905261002e91610044565b6001600160a01b0390911660805260a05261007b565b5f5f60408385031215610055575f5ffd5b82516001600160a01b038116811461006b575f5ffd5b6020939093015192949293505050565b60805160a051610b3a6100a95f395f8181610148015261034701525f818160d301526101750152610b3a5ff3fe608060405234801561000f575f5ffd5b506004361061006b575f3560e01c80631538a6ff1461006f57806336f2412714610084578063765a2b33146100ad5780639611c5c2146100ce578063b977477c1461010d578063d70bd71b14610120578063ffa1ad7414610143575b5f5ffd5b61008261007d3660046107dc565b61016a565b005b610097610092366004610805565b610259565b6040516100a4919061081c565b60405180910390f35b6100c06100bb36600461084d565b6102a1565b6040519081526020016100a4565b6100f57f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100a4565b61008261011b36600461086d565b6102ee565b61013361012e36600461084d565b610590565b60405190151581526020016100a4565b6100c07f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146101b35760405163164a486160e11b815260040160405180910390fd5b600182101580156101c5575060208211155b82906101f0576040516343bb062f60e11b81526004016101e791815260200190565b60405180910390fd5b505f838152602081905260409020819061020b600185610927565b6020811061021b5761021b61093a565b0155604051818152829084907ff68b504483a6a4f9626a6282bc5165a8c1e04b5c5869ef1e70ecd9a16e0e2e6e9060200160405180910390a3505050565b6102616107bd565b5f828152602081815260409182902082516104008101938490529290919082845b8154815260200190600101908083116102825750505050509050919050565b5f8115806102af5750602082115b156102bb57505f6102e8565b5f8381526020819052604090206102d3600184610927565b602081106102e3576102e361093a565b015490505b92915050565b61010081106103105760405163879f16c160e01b815260040160405180910390fd5b82816001811b821061033e5760405163d49140f560e01b8152600481019290925260248201526044016101e7565b505060208601357f000000000000000000000000000000000000000000000000000000000000000081811461038f5760405163deae896760e01b8152600481019290925260248201526044016101e7565b506103a290506060870160408801610969565b6001600160a01b031633146103bd6060880160408901610969565b3390916103f0576040516357aad58160e01b81526001600160a01b039283166004820152911660248201526044016101e7565b505046606087013514610416576040516315dfb1f160e21b815260040160405180910390fd5b60018410158015610428575060208411155b859061044a57604051632f1e996760e11b81526004016101e791815260200190565b505f8581526020819052604081209081610465600188610927565b602081106104755761047561093a565b01549050868161049b57604051632f1e996760e11b81526004016101e791815260200190565b505f6104aa866001861b610982565b600881901c5f90815260208581019052604090205490915088908290600160ff83161b16156104f557604051633f5c70b560e21b8152600481019290925260248201526044016101e7565b505f905061051061050b368c90038c018c6109f9565b6105bf565b905061051f8686838a87610628565b600882901c5f90815260208581019052604090208054600160ff85161b17905580838a7fc1c65655a37473261705e23636f14fa004a0c32fc70c6db4df69192dd97292b8858c60405161057c929190918252602082015260400190565b60405180910390a450505050505050505050565b5f82815260208181526040808320600885901c84528201909152812054600160ff84161b1615155b9392505050565b80518051602091820151828401518051908401516040808701518151968701959095528501929092526bffffffffffffffffffffffff19606091821b1690840152607483015260948201525f906102e89060b4015b604051602081830303815290604052610728565b82825f5b868110156106c1576001808316148061067b57610676848a8a858181106106555761065561093a565b90506020020135604051602001610614929190918252602082015260400190565b6106b2565b6106b28989848181106106905761069061093a565b9050602002013585604051602001610614929190918252602082015260400190565b935050600191821c910161062c565b5080156106e1576040516398e37ec960e01b815260040160405180910390fd5b8282868682841461071b57604051635f216bf160e01b815260048101949094526024840192909252604483015260648201526084016101e7565b5050505050505050505050565b6040805160018082528183019092525f91602082018180368337019050506002836040516107569190610a9e565b602060405180830381855afa158015610771573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906107949190610aa9565b6040516020016107a5929190610ac0565b6040516020818303038152906040526102e890610ade565b6040518061040001604052806020906020820280368337509192915050565b5f5f5f606084860312156107ee575f5ffd5b505081359360208301359350604090920135919050565b5f60208284031215610815575f5ffd5b5035919050565b610400810181835f5b6020811015610844578151835260209283019290910190600101610825565b50505092915050565b5f5f6040838503121561085e575f5ffd5b50508035926020909101359150565b5f5f5f5f5f5f868803610120811215610884575f5ffd5b60a0811215610891575f5ffd5b5086955060a0860135945060c0860135935060e0860135925061010086013567ffffffffffffffff8111156108c4575f5ffd5b8701601f810189136108d4575f5ffd5b803567ffffffffffffffff8111156108ea575f5ffd5b8960208260051b84010111156108fe575f5ffd5b60208201935080925050509295509295509295565b634e487b7160e01b5f52601160045260245ffd5b818103818111156102e8576102e8610913565b634e487b7160e01b5f52603260045260245ffd5b80356001600160a01b0381168114610964575f5ffd5b919050565b5f60208284031215610979575f5ffd5b6105b88261094e565b808201808211156102e8576102e8610913565b6040516060810167ffffffffffffffff811182821017156109c457634e487b7160e01b5f52604160045260245ffd5b60405290565b6040805190810167ffffffffffffffff811182821017156109c457634e487b7160e01b5f52604160045260245ffd5b5f81830360a081128015610a0b575f5ffd5b50610a14610995565b6040821215610a21575f5ffd5b610a296109ca565b843581526020808601359082015281526040603f1983011215610a4a575f5ffd5b610a526109ca565b9150610a606040850161094e565b82526060840135602080840191909152810191909152608090920135604083015250919050565b5f81518060208401855e5f93019283525090919050565b5f6105b88284610a87565b5f60208284031215610ab9575f5ffd5b5051919050565b5f610acb8285610a87565b60ff199390931683525050601f01919050565b80516020808301519190811015610afe575f198160200360031b1b821691505b5091905056fea26469706673582212207c6137800dddcf37c027f0025e0f6eec1ddc71f73bf848886989f740622219ff64736f6c634300081e00330958201b72d64259285941dffd868dac55267471fcc73e8a06e1fd9cf8706361","sourceMap":"11940:25754:75:-:0;;;13138:1;13116:23;;13328:28;;;-1:-1:-1;;13328:28:75;13352:4;13328:28;;;14193:2680;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3328:431:58;;;;;;;;;;;-1:-1:-1;;;3328:431:58;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3328:431:58;;;;14416:11:75;;3401:45:58;3328:431;-1:-1:-1;3401:30:58;:45::i;:::-;3393:53;;3467:51;:7;3501:16;3467:33;:51::i;:::-;3456:62;;3542:22;;;;;;;;;;3528:36;;3591:25;;;;;;3574:42;;3644:13;3627:30;;3692:23;4226:11;;4239:14;;4204:80;;;2079:95;4204:80;;;14331:25:185;14372:18;;;14365:34;;;;14415:18;;;14408:34;4255:13:58;14458:18:185;;;14451:34;4278:4:58;14501:19:185;;;14494:61;4168:7:58;;14303:19:185;;4204:80:58;;;;;;;;;;;;4194:91;;;;;;4187:98;;4113:179;;3692:23;3667:48;;-1:-1:-1;;3747:4:58;3725:27;;-1:-1:-1;;;;;1273:26:35;;1269:95;;1322:31;;-1:-1:-1;;;1322:31:35;;1350:1;1322:31;;;9517:51:185;9490:18;;1322:31:35;;;;;;;;1269:95;1373:32;1392:12;1373:18;:32::i;:::-;-1:-1:-1;14469:26:75::1;::::0;::::1;::::0;14435:61:::1;::::0;:33:::1;:61::i;:::-;14874:24;::::0;::::1;::::0;10175:7:120::1;14874:62:75::0;;::::1;;14859:195;;;::::0;-1:-1:-1;;;14859:195:75;;::::1;::::0;::::1;9753:25:185::0;;;;9794:18;;;9787:34;9726:18;;14859:195:75::1;9579:248:185::0;14859:195:75::1;-1:-1:-1::0;;15209:34:75::1;::::0;::::1;::::0;15299:1:::1;::::0;15209:38;15194:149:::1;;;::::0;-1:-1:-1;;;15194:149:75;;::::1;::::0;::::1;9753:25:185::0;;;;9794:18;;;9787:34;9726:18;;15194:149:75::1;9579:248:185::0;15194:149:75::1;;;15350:192;15376:15;15399:7;:25;;;15432:7;:26;;;15466:7;:34;;;15508:7;:28;;;15350:18;;;:192;;:::i;:::-;15549:16;15568:36;15583:7:::0;15592:11;15568:14:::1;:36::i;:::-;15549:55;;15611:204;15640:13;15661:4;15688:7;:24;;;15729:7;15745;:26;;;15779:7;:30;;;15611:21;;;:204;;:::i;:::-;15883:27;::::0;;::::1;::::0;15912:34:::1;::::0;::::1;::::0;15948:28:::1;::::0;::::1;::::0;15821:161;;-1:-1:-1;;;15821:161:75;;::::1;::::0;::::1;10303:25:185::0;;;;10344:18;;;10337:34;10387:18;;;10380:34;;;;15821:25:75::1;::::0;:54:::1;::::0;10276:18:185;;15821:161:75::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15989:27;16008:7;15989:18;;;:27;;:::i;:::-;16045:12;16023:34;::::0;16253:24;;16238:39:::1;::::0;16309:35:::1;::::0;::::1;::::0;16283:61:::1;::::0;16360:15:::1;::::0;;::::1;::::0;;16350:25:::1;;;::::0;-1:-1:-1;;;;;16381:21:75;;::::1;;::::0;16408:42;::::1;::::0;;;16523:15;16487:76:::1;::::0;16253:24:::1;::::0;16505:4:::1;::::0;16393:9;;16523:15;1349:4:124::1;::::0;16487:76:75::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;;;;;10788:32:185;;;10770:51;;10857:32;;;;10852:2;10837:18;;10830:60;10938:10;10926:23;10921:2;10906:18;;10899:51;10981:2;10966:18;;10959:34;10757:3;10742:19;16487:76:75::1;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;;16571:13:75;::::1;;::::0;16641:15:::1;::::0;::::1;::::0;16615:42:::1;::::0;16457:108;;-1:-1:-1;16634:4:75::1;::::0;16615:42:::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;;;;;11195:32:185;;;11177:51;;11276:10;11264:23;11259:2;11244:18;;11237:51;11165:2;11150:18;16615:42:75::1;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;16590:69:75::1;;;-1:-1:-1::0;;;;;16590:69:75::1;;;::::0;::::1;16700:5;-1:-1:-1::0;;;;;16700:23:75::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;16665:61:75::1;;::::0;16733:32:::1;16751:13:::0;16733:17:::1;:32::i;:::-;16772:96;16790:7;:18;;;16810:7;:26;;;16838:7;:29;;;16772:17;;;:96;;:::i;:::-;14429:2444;;14193:2680:::0;;;;;;;11940:25754;;2887:340:52;2983:11;3032:2;3016:5;3010:19;:24;3006:215;;;3057:20;3071:5;3057:13;:20::i;:::-;3050:27;;;;3006:215;3134:5;3108:46;3149:5;3134;3108:46;:::i;:::-;-1:-1:-1;1390:66:52;;-1:-1:-1;3006:215:52;2887:340;;;;:::o;2912:187:35:-;3004:6;;;-1:-1:-1;;;;;3020:17:35;;;-1:-1:-1;;;;;;3020:17:35;;;;;;;3052:40;;3004:6;;;3020:17;3004:6;;3052:40;;2985:16;;3052:40;2975:124;2912:187;:::o;46966:701:120:-;47090:1;47061:7;:26;;;:30;47053:84;;;;-1:-1:-1;;;47053:84:120;;;;;;;;;;;;47185:1;47151:7;:31;;;:35;47143:94;;;;-1:-1:-1;;;47143:94:120;;;;;;;;;;;;47279:1;47251:7;:25;;;:29;47243:82;;;;-1:-1:-1;;;47243:82:120;;;;;;;;;;;;47346:33;;:38;;:72;;;47417:1;47388:7;:26;;;:30;47346:72;47331:144;;;;-1:-1:-1;;;47331:144:120;;;;;;;;;;;;47526:25;;;;47496:26;;;;;:55;;;;47481:181;;;;-1:-1:-1;;;47481:181:120;;;;;9753:25:185;;;;9794:18;;;9787:34;9726:18;;47481:181:120;9579:248:185;47481:181:120;;;46966:701;:::o;973:526:94:-;937:31;1230:24;:12;:22;:24::i;:::-;1210:44;;-1:-1:-1;;;;;;1210:44:94;-1:-1:-1;;;;;1210:44:94;;;;;;;1281:24;:13;:22;:24::i;:::-;1260:45;;;;;;;-1:-1:-1;;;1260:45:94;-1:-1:-1;;;;1260:45:94;;;;;;1333:25;:14;:23;:25::i;:::-;1311:47;;;;;;;-1:-1:-1;;;1311:47:94;-1:-1:-1;;;;1311:47:94;;;;;;1394:33;:22;:31;:33::i;:::-;1364:63;;;;;;;-1:-1:-1;;;1364:63:94;-1:-1:-1;;;;1364:63:94;;;;;;1462:32;:21;:30;:32::i;:::-;1433:61;;;;;;;-1:-1:-1;;;1433:61:94;-1:-1:-1;;;;;1433:61:94;;;;;;-1:-1:-1;;;;;973:526:94:o;36519:320:75:-;36616:16;36644:7;:27;;;36675:1;36644:32;:59;;;;36681:7;:22;;;36680:23;36644:59;36640:107;;;-1:-1:-1;36737:1:75;36713:27;;36640:107;36760:74;;-1:-1:-1;;;36760:74:75;;:23;;:37;;:74;;36806:4;;36813:11;;36826:7;;36760:74;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;36753:81;36519:320;-1:-1:-1;;;36519:320:75:o;10858:532:120:-;9932:39;11110:34;;-1:-1:-1;;;;;11110:34:120;;;-1:-1:-1;;;;;;11110:34:120;;;;;;11150:9;:16;;;;;;;;;;;;11190:21;:10;:19;:21::i;:::-;11172:15;;;:39;;-1:-1:-1;;;;11172:39:120;-1:-1:-1;;;11172:39:120;;;;;;;;;;;;;;;-1:-1:-1;11217:13:120;;:24;;-1:-1:-1;;;;;;11217:24:120;-1:-1:-1;;;;;11217:24:120;;;;;11267:18;:7;:16;:18::i;:::-;11247:17;;;:38;1099:13:93;1079:10;;;1099:13;11351:34:120;:23;:32;:34::i;:::-;11320:5;:28;;;:65;;;;;-1:-1:-1;;;;;11320:65:120;;;;;-1:-1:-1;;;;;11320:65:120;;;;;;11055:335;10858:532;;;;;;:::o;36843:460:75:-;36955:20;;;;36994;;;;-1:-1:-1;;;;;36986:43:75;36982:146;;37095:25;;;;37062:59;;-1:-1:-1;;;37062:59:75;;:12;;:32;;:59;;37095:25;37062:59;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;37039:82:75;:20;;;:82;36982:146;37264:33;;;;37220:78;;;-1:-1:-1;;;37220:78:75;;15052:12:185;;-1:-1:-1;;;;;15048:38:185;;;37220:78:75;;;15036:51:185;15140:4;15129:16;;15123:23;15148:10;15119:40;15103:14;;;15096:64;15202:16;;;15196:23;15192:49;;15176:14;;;15169:73;15311:2;15284:16;;15278:23;-1:-1:-1;;;;;15274:48:185;15258:14;;;15251:72;19773:32;;19752:19;;;19745:61;37220:12:75;;:29;;19659:19:185;;37220:78:75;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36914:389;36843:460;:::o;6133:428:117:-;6459:32;;;;-1:-1:-1;;;;;;;;;;;5747:30:117;6425:67;;:33;:67::i;:::-;6524:32;;;;;6498:23;;;;:20;;;;:23;;;;;:58;6133:428::o;6624:2173:109:-;6589:30;6866:29;6883:11;6866:16;:29::i;:::-;-1:-1:-1;7113:19:109;;4453:1;7154:40;;;;7139:145;;;;-1:-1:-1;;;7139:145:109;;;;;9753:25:185;;;;9794:18;;;9787:34;9726:18;;7139:145:109;9579:248:185;7139:145:109;-1:-1:-1;7590:11:109;;-1:-1:-1;4742:3:109;7590:48;;;;7575:163;;;;-1:-1:-1;;;7575:163:109;;;;;9753:25:185;;;;9794:18;;;9787:34;9726:18;;7575:163:109;9579:248:185;7575:163:109;-1:-1:-1;7852:22:109;;-1:-1:-1;1866:3:109;7896:37;;;;;:78;;;1959:4;7937:12;:37;;7896:78;8026:12;1866:3;1959:4;7881:210;;;;;;;-1:-1:-1;;;7881:210:109;;;;;10303:25:185;;;;10344:18;;;10337:34;;;;10387:18;;;10380:34;10276:18;;7881:210:109;10093:327:185;7881:210:109;;;;8116:261;:250;;;;;;;;8148:11;8116:250;;;;3340:3;3398:11;8195;:47;;;;:::i;:::-;:80;;;;:::i;:::-;8116:250;;;;;;;;-1:-1:-1;8116:250:109;;;;;:259;:261::i;:::-;8098:279;;8413:225;;;8444:40;;;;;;8464:6;8413:225;;;8444:40;;;8481:1;8444:40;;;;8413:225;;8444:51;;:49;:51::i;:::-;-1:-1:-1;;;;;8413:225:109;;;;;8509:81;:70;;;;;;;;8529:13;8509:70;;;;8553:24;:22;;;:24;;:::i;:::-;8509:70;;:79;:81::i;:::-;-1:-1:-1;;;;;8413:225:109;;;;;8612:19;6491:1;8612:17;:19::i;:::-;8413:225;;;;;;;8384:254;;:26;;;:254;;;;;;;;;;;;;;-1:-1:-1;;;8384:254:109;-1:-1:-1;;;;;;;;;;8384:254:109;;;-1:-1:-1;;;8384:254:109;-1:-1:-1;;;;;;8384:254:109;;;;;;;;;;;;;;;;;;;;;;;8714:78;;8768:22;;8714:28;:78;:::i;1708:286:52:-;1773:11;1796:17;1822:3;1796:30;;1854:2;1840:4;:11;:16;1836:72;;;1893:3;1879:18;;-1:-1:-1;;;1879:18:52;;;;;;;;:::i;1836:72::-;1974:11;;1957:13;1974:4;1957:13;:::i;:::-;1949:36;;1708:286;-1:-1:-1;;;1708:286:52:o;9264:218:62:-;9321:7;-1:-1:-1;;;;;9344:25:62;;9340:105;;;9392:42;;-1:-1:-1;;;9392:42:62;;9423:3;9392:42;;;21540:36:185;21592:18;;;21585:34;;;21513:18;;9392:42:62;21358:267:185;9340:105:62;-1:-1:-1;9469:5:62;9264:218::o;15296:213::-;15352:6;15382:16;15374:24;;15370:103;;;15421:41;;-1:-1:-1;;;15421:41:62;;15452:2;15421:41;;;21540:36:185;21592:18;;;21585:34;;;21513:18;;15421:41:62;21358:267:185;339:175:181;402:19;461:47;496:10;461:17;:47::i;1804:529:96:-;1956:25;;;;1880:28;;;;1956:36;;:34;:36::i;:::-;1948:45;;1939:54;;;;2063:2;2016:42;:7;:31;;;:40;;;:42;;:::i;:::-;2008:51;;:57;;1999:66;;;;2130:2;2088:37;:7;:26;;;:35;;;:37;;:::i;:::-;2080:46;;:52;;2071:61;;;;2197:2;2155:37;:7;:26;;;:35;;;:37;;:::i;:::-;2147:46;;:52;;2138:61;;;;2271:3;2222:44;:7;:33;;;:42;;;:44;;:::i;:::-;2214:53;;:60;;2205:69;;1804:529;-1:-1:-1;;1804:529:96:o;11296:213:62:-;11352:6;-1:-1:-1;;;;;11374:24:62;;11370:103;;;11421:41;;-1:-1:-1;;;11421:41:62;;11452:2;11421:41;;;21540:36:185;21592:18;;;21585:34;;;21513:18;;11421:41:62;21358:267:185;726:160:110;812:6;345:102:87;804:29:110;;796:85;;;;-1:-1:-1;;;796:85:110;;;;;;22318:25:185;;22306:2;22291:18;;22172:177;796:85:110;;726:160;:::o;18168:403:109:-;18238:7;18311:1;18261:11;:15;18253:74;;;;-1:-1:-1;;;18253:74:109;;;;;9753:25:185;;;;9794:18;;;9787:34;9726:18;;18253:74:109;9579:248:185;18253:74:109;-1:-1:-1;18333:17:109;;-1:-1:-1;18353:15:109;:11;18367:1;18353:15;:::i;:::-;18333:35;-1:-1:-1;18464:16:109;18333:35;18451:29;;;;18443:100;;;;-1:-1:-1;;;18443:100:109;;22557:10:185;22545:23;;;18443:100:109;;;22527:42:185;22585:18;;;22578:34;22500:18;;18443:100:109;22354:264:185;18443:100:109;-1:-1:-1;18557:9:109;;18168:403;-1:-1:-1;;;18168:403:109:o;4293:443:98:-;4443:26;;;;4360:19;;;;4427:54;;:52;:54::i;:::-;-1:-1:-1;;;;;4419:63:98;4410:72;;;;4554:2;4505:44;:7;:32;;;:42;;;:44;;:::i;:::-;-1:-1:-1;;;;;4497:53:98;:59;;4488:68;;;;4613:3;4579:29;:7;:18;;;:27;;;:29;;:::i;:::-;4571:38;;:45;;4562:54;;;;4683:3;4639:39;:7;:28;;;:37;;;:39;;:::i;:::-;4631:48;;:55;;4622:64;;4293:443;-1:-1:-1;;4293:443:98:o;1685:277:99:-;1817:13;;;;1750:19;;;;;;1817:24;;:22;:24::i;:::-;1809:33;;:38;;1800:47;;;;1899:2;1870:24;:5;:13;;;:22;;;:24;;:::i;:::-;1862:33;;:39;;1853:48;1939:17;1853:48;1939:15;:17::i;2466:989:170:-;2515:7;2947:6;2930:13;:23;;2963:46;;;;-1:-1:-1;2983:22:170;;:26;;2963:46;2959:451;;;3152:43;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3152:43:170;-1:-1:-1;;;3152:43:170;;;3130:66;;3095:12;;;;3130:21;;:66;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3094:102;;;;3208:7;:28;;;;;3234:2;3219:4;:11;:17;;3208:28;3204:87;;;3266:4;3255:27;;;;;;;;;;;;:::i;:::-;3248:34;;;;;2466:989;:::o;3204:87::-;3402:1;3395:8;;;;;2466:989;:::o;2959:451::-;2425:17:105;3415:35:170;;;2466:989;:::o;6909:902:117:-;7141:654;;;;;;;;6987:31;7141:654;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7389:130;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7141:654;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;5747:30:117;7141:665;;:663;:665::i;:::-;7105:33;;;;:30;;;;:33;;;;;;;;;:701;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;7105:701:117;;;;;;;;-1:-1:-1;;;;;7105:701:117;;;;;-1:-1:-1;;;;;;;;7105:701:117;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6909:902:117:o;13296:213:62:-;13352:6;-1:-1:-1;;;;;13374:24:62;;13370:103;;;13452:2;13421:41;;-1:-1:-1;;;13421:41:62;;;;;21540:36:185;;;;21592:18;;;21585:34;;;21513:18;;13421:41:62;21358:267:185;16296:213:62;16352:6;16382:16;16374:24;;16370:103;;;16421:41;;-1:-1:-1;;;16421:41:62;;16452:2;16421:41;;;21540:36:185;21592:18;;;21585:34;;;21513:18;;16421:41:62;21358:267:185;13796:213:62;13852:6;13882:16;13874:24;;13870:103;;;13921:41;;-1:-1:-1;;;13921:41:62;;13952:2;13921:41;;;21540:36:185;21592:18;;;21585:34;;;21513:18;;13921:41:62;21358:267:185;10282:218:62;10339:7;-1:-1:-1;;;;;10362:25:62;;10358:105;;;10410:42;;-1:-1:-1;;;10410:42:62;;10441:3;10410:42;;;21540:36:185;21592:18;;;21585:34;;;21513:18;;10410:42:62;21358:267:185;2676:674:95;2755:34;11940:25754:75;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11940:25754:75;;;;;;-1:-1:-1;;;;;11940:25754:75;;;;;;;;;;;;;;;;2755:34:95;2804:541;;;;;;;;2852:11;:22;;;2804:541;;;;2903:11;:31;;;2804:541;;;;2951:11;:19;;;2804:541;;;;2996:11;:28;;;2804:541;;;;3047:11;:25;;;2804:541;;;;3092:33;:11;:22;;;:31;;;:33;;:::i;:::-;2804:541;;;;;;3148:11;:25;;;-1:-1:-1;;;;;2804:541:95;;;;;3202:11;:31;;;-1:-1:-1;;;;;2804:541:95;;;;;3252:32;:11;:21;;;:30;;;:32;;:::i;:::-;2804:541;;;;3310:11;:28;;;2804:541;;;2797:548;;2676:674;;;:::o;3607:840:99:-;3744:19;;;;3677;;;;3744:30;;:28;:30::i;:::-;3736:39;;3727:48;;;;3915:2;3866:45;3875:10;:21;;;2444:14;3866:8;;;:45;;:::i;:::-;:51;;3857:60;;;;3981:2;3940:36;:10;:25;;;:34;;;:36;;:::i;:::-;3932:45;;:51;;3923:60;;;;4212:3;4162:46;4171:10;:22;;;-1:-1:-1;;;;;4162:8:99;;;:46;;:::i;:::-;:53;;4153:62;;;;4355:3;4306:45;4315:10;:21;;;-1:-1:-1;;;;;4306:8:99;;;:45;;:::i;:::-;:52;;4297:61;-1:-1:-1;;;4380:17:99;;;-1:-1:-1;;3607:840:99:o;3371:111:61:-;3429:7;3066:5;;;3463;;;3065:36;3060:42;;3455:20;2825:294;14296:213:62;14352:6;14382:16;14374:24;;14370:103;;;14421:41;;-1:-1:-1;;;14421:41:62;;14452:2;14421:41;;;21540:36:185;21592:18;;;21585:34;;;21513:18;;14421:41:62;21358:267:185;11940:25754:75;;;;;;;;:::o;:::-;;;;;;;;:::o;14:139:185:-;-1:-1:-1;;;;;97:31:185;;87:42;;77:70;;143:1;140;133:12;77:70;14:139;:::o;158:146::-;237:13;;259:39;237:13;259:39;:::i;:::-;158:146;;;:::o;309:127::-;370:10;365:3;361:20;358:1;351:31;401:4;398:1;391:15;425:4;422:1;415:15;441:246;508:2;502:9;550:2;538:15;;-1:-1:-1;;;;;568:34:185;;604:22;;;565:62;562:88;;;630:18;;:::i;:::-;666:2;659:22;441:246;:::o;692:253::-;764:2;758:9;806:4;794:17;;-1:-1:-1;;;;;826:34:185;;862:22;;;823:62;820:88;;;888:18;;:::i;950:255::-;1022:2;1016:9;1064:6;1052:19;;-1:-1:-1;;;;;1086:34:185;;1122:22;;;1083:62;1080:88;;;1148:18;;:::i;1210:541::-;1271:5;1324:3;1317:4;1309:6;1305:17;1301:27;1291:55;;1342:1;1339;1332:12;1291:55;1366:17;;:::i;:::-;1407:3;1445:2;1437:6;1433:15;1471:3;1463:6;1460:15;1457:35;;;1488:1;1485;1478:12;1457:35;1512:6;1527:193;1543:6;1538:3;1535:15;1527:193;;;1635:10;;1658:18;;1705:4;1696:14;;;;1560;1527:193;;;-1:-1:-1;1738:7:185;;1210:541;-1:-1:-1;;;;;1210:541:185:o;1756:164::-;1832:13;;1881;;1874:21;1864:32;;1854:60;;1910:1;1907;1900:12;1925:121;2010:10;2003:5;1999:22;1992:5;1989:33;1979:61;;2036:1;2033;2026:12;2051:136;2129:13;;2151:30;2129:13;2151:30;:::i;2192:959::-;2262:5;2310:4;2298:9;2293:3;2289:19;2285:30;2282:50;;;2328:1;2325;2318:12;2282:50;2381:2;2375:9;2423:4;2411:17;;-1:-1:-1;;;;;2443:34:185;;2479:22;;;2440:62;2437:88;;;2505:18;;:::i;:::-;2545:10;2541:2;2534:22;;2574:6;2565:15;;2610:9;2604:16;2629:41;2662:7;2629:41;:::i;:::-;2679:23;;2747:2;2732:18;;2726:25;2760:32;2726:25;2760:32;:::i;:::-;2820:2;2808:15;;2801:32;2878:2;2863:18;;2857:25;2891:41;2857:25;2891:41;:::i;:::-;2960:2;2948:15;;2941:32;3018:2;3003:18;;2997:25;-1:-1:-1;;;;;3053:32:185;;3041:45;;3031:73;;3100:1;3097;3090:12;3031:73;3132:2;3120:15;;;;3113:32;2192:959;;-1:-1:-1;;2192:959:185:o;3156:825::-;3231:5;3279:4;3267:9;3262:3;3258:19;3254:30;3251:50;;;3297:1;3294;3287:12;3251:50;3319:22;;:::i;:::-;3310:31;;3371:9;3365:16;3390:32;3414:7;3390:32;:::i;:::-;3431:22;;3498:2;3483:18;;3477:25;3511:32;3477:25;3511:32;:::i;:::-;3570:2;3559:14;;3552:31;3628:2;3613:18;;3607:25;3641:32;3607:25;3641:32;:::i;:::-;3700:2;3689:14;;3682:31;3758:2;3743:18;;3737:25;3771:32;3737:25;3771:32;:::i;:::-;3830:2;3819:14;;3812:31;3888:3;3873:19;;3867:26;3902:32;3867:26;3902:32;:::i;:::-;3961:3;3950:15;;3943:32;3954:5;3156:825;-1:-1:-1;;3156:825:185:o;3986:726::-;4062:5;4110:4;4098:9;4093:3;4089:19;4085:30;4082:50;;;4128:1;4125;4118:12;4082:50;4150:22;;:::i;:::-;4217:16;;4242:22;;4330:2;4315:18;;;4309:25;4350:14;;;4343:31;4440:2;4425:18;;;4419:25;4460:14;;;4453:31;4550:2;4535:18;;;4529:25;4570:14;;;4563:31;4660:3;4645:19;;;4639:26;4681:15;;;4674:32;;;;-1:-1:-1;4141:31:185;3986:726;-1:-1:-1;3986:726:185:o;4717:2972::-;4792:5;4840:6;4828:9;4823:3;4819:19;4815:32;4812:52;;;4860:1;4857;4850:12;4812:52;4882:22;;:::i;:::-;4949:16;;4974:22;;5062:2;5047:18;;;5041:25;5082:14;;;5075:31;5172:2;5157:18;;;5151:25;5192:14;;;5185:31;5282:2;5267:18;;;5261:25;5302:14;;;5295:31;5392:3;5377:19;;;5371:26;5413:15;;;5406:32;5504:3;5489:19;;;5483:26;5525:15;;;5518:32;5616:3;5601:19;;;5595:26;5637:15;;;5630:32;5728:3;5713:19;;;5707:26;5749:15;;;5742:32;5840:3;5825:19;;;5819:26;5861:15;;;5854:32;5954:3;5939:19;;;5933:26;5975:15;;;5968:33;4873:31;-1:-1:-1;6034:61:185;6091:3;6085;6070:19;;6034:61;:::i;:::-;6028:3;6017:15;;6010:86;6164:3;6149:19;;6143:26;6196:6;6185:18;;6178:36;6250:47;6292:3;6277:19;;6250:47;:::i;:::-;6241:6;6234:5;6230:18;6223:75;6331:50;6376:3;6365:9;6361:19;6331:50;:::i;:::-;6325:3;6314:15;;6307:75;6450:3;6435:19;;;6429:26;6482:3;6471:15;;6464:33;6565:3;6550:19;;6544:26;6597:3;6586:15;;6579:33;6680:3;6665:19;;6659:26;6701:15;;;6694:33;6760:49;6804:3;6789:19;;6760:49;:::i;:::-;6754:3;6743:15;;6736:74;6878:3;6863:19;;6857:26;6910:3;6899:15;;6892:33;6993:3;6978:19;;6972:26;7025:3;7014:15;;7007:33;7073:67;7136:3;7130;7115:19;;7073:67;:::i;:::-;7067:3;7060:5;7056:15;7049:92;7174:75;7245:3;7236:6;7225:9;7221:22;7174:75;:::i;:::-;7168:3;7161:5;7157:15;7150:100;7283:73;7352:3;7346;7335:9;7331:19;7283:73;:::i;:::-;7277:3;7266:15;;7259:98;7425:4;7410:20;;7404:27;7458:6;7447:18;;7440:36;7544:4;7529:20;;7523:27;7577:6;7566:18;;7559:36;7631:51;7676:4;7661:20;;7631:51;:::i;:::-;7622:6;7615:5;7611:18;7604:79;4717:2972;;;;:::o;7694:1563::-;7949:6;7957;7965;7973;7981;7989;7997;8041:9;8032:7;8028:23;8071:4;8067:2;8063:13;8060:33;;;8089:1;8086;8079:12;8060:33;8121:9;8115:16;8140:39;8173:5;8140:39;:::i;:::-;8248:2;8233:18;;8227:25;8198:5;;-1:-1:-1;8261:41:185;8227:25;8261:41;:::i;:::-;8373:2;8358:18;;8352:25;8321:7;;-1:-1:-1;8386:41:185;8352:25;8386:41;:::i;:::-;8498:2;8483:18;;8477:25;8446:7;;-1:-1:-1;8511:41:185;8477:25;8511:41;:::i;:::-;8623:3;8608:19;;8602:26;8571:7;;-1:-1:-1;8637:41:185;8602:26;8637:41;:::i;:::-;8697:7;-1:-1:-1;8739:2:185;-1:-1:-1;;8720:17:185;;8716:26;8713:46;;;8755:1;8752;8745:12;8713:46;;8783:17;;:::i;:::-;8866:3;8851:19;;8845:26;8880:24;;8970:3;8955:19;;8949:26;9004:2;8991:16;;8984:33;9083:3;9068:19;;9062:26;9117:2;9104:16;;9097:33;8887:7;-1:-1:-1;9175:76:185;9243:7;9237:3;9222:19;;9175:76;:::i;:::-;9165:86;;7694:1563;;;;;;;;;;:::o;11299:259::-;11369:6;11422:2;11410:9;11401:7;11397:23;11393:32;11390:52;;;11438:1;11435;11428:12;11390:52;11470:9;11464:16;11489:39;11522:5;11489:39;:::i;11563:380::-;11642:1;11638:12;;;;11685;;;11706:61;;11760:4;11752:6;11748:17;11738:27;;11706:61;11813:2;11805:6;11802:14;11782:18;11779:38;11776:161;;11859:10;11854:3;11850:20;11847:1;11840:31;11894:4;11891:1;11884:15;11922:4;11919:1;11912:15;11776:161;;11563:380;;;:::o;12074:518::-;12176:2;12171:3;12168:11;12165:421;;;12212:5;12209:1;12202:16;12256:4;12253:1;12243:18;12326:2;12314:10;12310:19;12307:1;12303:27;12297:4;12293:38;12362:4;12350:10;12347:20;12344:47;;;-1:-1:-1;12385:4:185;12344:47;12440:2;12435:3;12431:12;12428:1;12424:20;12418:4;12414:31;12404:41;;12495:81;12513:2;12506:5;12503:13;12495:81;;;12572:1;12558:16;;12539:1;12528:13;12495:81;;;12499:3;;12074:518;;;:::o;12768:1299::-;12888:10;;-1:-1:-1;;;;;12910:30:185;;12907:56;;;12943:18;;:::i;:::-;12972:97;13062:6;13022:38;13054:4;13048:11;13022:38;:::i;:::-;13016:4;12972:97;:::i;:::-;13118:4;13149:2;13138:14;;13166:1;13161:649;;;;13854:1;13871:6;13868:89;;;-1:-1:-1;13923:19:185;;;13917:26;13868:89;-1:-1:-1;;12725:1:185;12721:11;;;12717:24;12713:29;12703:40;12749:1;12745:11;;;12700:57;13970:81;;13131:930;;13161:649;12021:1;12014:14;;;12058:4;12045:18;;-1:-1:-1;;13197:20:185;;;13315:222;13329:7;13326:1;13323:14;13315:222;;;13411:19;;;13405:26;13390:42;;13518:4;13503:20;;;;13471:1;13459:14;;;;13345:12;13315:222;;;13319:3;13565:6;13556:7;13553:19;13550:201;;;13626:19;;;13620:26;-1:-1:-1;;13709:1:185;13705:14;;;13721:3;13701:24;13697:37;13693:42;13678:58;13663:74;;13550:201;-1:-1:-1;;;;13797:1:185;13781:14;;;13777:22;13764:36;;-1:-1:-1;12768:1299:185:o;14566:303::-;14659:5;14682:1;14692:171;14706:4;14703:1;14700:11;14692:171;;;14765:13;;14753:26;;14808:4;14799:14;;;;14836:17;;;;14726:1;14719:9;14692:171;;;14696:3;;14566:303;;:::o;16082:2495::-;16310:4;16352;16341:9;16337:20;16329:28;;16413:1;16409;16404:3;16400:11;16396:19;16388:6;16384:32;16373:9;16366:51;16482:1;16478;16473:3;16469:11;16465:19;16457:6;16453:32;16448:2;16437:9;16433:18;16426:60;16528:6;16522:13;16517:2;16506:9;16502:18;16495:41;16590:2;16582:6;16578:15;16572:22;16567:2;16556:9;16552:18;16545:50;16650:2;16642:6;16638:15;16632:22;16626:3;16615:9;16611:19;16604:51;16710:2;16702:6;16698:15;16692:22;16686:3;16675:9;16671:19;16664:51;16770:3;16762:6;16758:16;16752:23;16746:3;16735:9;16731:19;16724:52;16831:3;16823:6;16819:16;16813:23;16807:3;16796:9;16792:19;16785:52;16892:3;16884:6;16880:16;16874:23;16868:3;16857:9;16853:19;16846:52;16953:3;16945:6;16941:16;16935:23;16929:3;16918:9;16914:19;16907:52;17014:3;17006:6;17002:16;16996:23;16990:3;16979:9;16975:19;16968:52;17075:3;17067:6;17063:16;17057:23;17051:3;17040:9;17036:19;17029:52;17128:3;17120:6;17116:16;17110:23;17142:59;17196:3;17185:9;17181:19;17167:12;17142:59;:::i;:::-;-1:-1:-1;17256:3:185;17244:16;;17238:23;17232:3;17217:19;;17210:52;17311:3;17299:16;;17293:23;14944:13;;14937:21;17372:3;17357:19;;14925:34;-1:-1:-1;17426:6:185;17414:19;;17408:26;-1:-1:-1;;;;;9328:31:185;;17493:3;17478:19;;9316:44;-1:-1:-1;17553:6:185;17541:19;;17535:26;17529:3;17514:19;;17507:55;17617:3;17605:16;;17599:23;17593:3;17578:19;;17571:52;17678:3;17666:16;;17660:23;17654:3;17639:19;;17632:52;17733:3;17721:16;;17715:23;10501:10;10490:22;;17796:3;17781:19;;10478:35;-1:-1:-1;17856:3:185;17844:16;;17838:23;17832:3;17817:19;;17810:52;17917:3;17905:16;;17899:23;17893:3;17878:19;;17871:52;17972:3;17960:16;;17954:23;15052:12;;-1:-1:-1;;;;;15048:38:185;;;18048:3;18033:19;;15036:51;15140:4;15129:16;;15123:23;15148:10;15119:40;15103:14;;;15096:64;15213:4;15202:16;;15196:23;15192:49;15176:14;;;15169:73;15311:2;15284:16;;15278:23;-1:-1:-1;;;;;15274:48:185;15258:14;;;15251:72;-1:-1:-1;18102:3:185;18090:16;;18084:23;15421:12;;15435:10;15417:29;;;18183:3;18168:19;;15405:42;15500:4;15489:16;;15483:23;15479:40;;15463:14;;;15456:64;15573:4;15562:16;;15556:23;15552:40;;15536:14;;;15529:64;15646:4;15635:16;;15629:23;15625:40;;15609:14;;;15602:64;15719:4;15708:16;;15702:23;15698:40;15682:14;;;15675:64;-1:-1:-1;18237:3:185;18225:16;;18219:23;15834:12;;18319:4;18304:20;;15822:25;15896:4;15885:16;;15879:23;15863:14;;;15856:47;15952:4;15941:16;;15935:23;15919:14;;;15912:47;16008:4;15997:16;;15991:23;15975:14;;;15968:47;16064:4;16053:16;;16047:23;16031:14;;;16024:47;-1:-1:-1;18381:3:185;18369:16;;18363:23;18356:4;18341:20;;18334:53;18443:3;18431:16;;18425:23;18418:4;18403:20;;18396:53;18498:6;18486:19;;18480:26;-1:-1:-1;;;;;9328:31:185;;18565:4;18550:20;;9316:44;18515:56;16082:2495;;;;;;:::o;18864:287::-;19078:3;19063:19;;19091:54;19067:9;19127:6;15435:10;15427:5;15421:12;15417:29;15412:3;15405:42;15508:10;15500:4;15493:5;15489:16;15483:23;15479:40;15472:4;15467:3;15463:14;15456:64;15581:10;15573:4;15566:5;15562:16;15556:23;15552:40;15545:4;15540:3;15536:14;15529:64;15654:10;15646:4;15639:5;15635:16;15629:23;15625:40;15618:4;15613:3;15609:14;15602:64;15727:10;15719:4;15712:5;15708:16;15702:23;15698:40;15691:4;15686:3;15682:14;15675:64;;;15334:411;20141:265;20214:9;;;20245;;20262:15;;;20256:22;;20242:37;20232:168;;20322:10;20317:3;20313:20;20310:1;20303:31;20357:4;20354:1;20347:15;20385:4;20382:1;20375:15;20411:217;20451:1;20477;20467:132;;20521:10;20516:3;20512:20;20509:1;20502:31;20556:4;20553:1;20546:15;20584:4;20581:1;20574:15;20467:132;-1:-1:-1;20613:9:185;;20411:217::o;20633:418::-;20782:2;20771:9;20764:21;20745:4;20814:6;20808:13;20857:6;20852:2;20841:9;20837:18;20830:34;20916:6;20911:2;20903:6;20899:15;20894:2;20883:9;20879:18;20873:50;20972:1;20967:2;20958:6;20947:9;20943:22;20939:31;20932:42;21042:2;21035;21031:7;21026:2;21018:6;21014:15;21010:29;20999:9;20995:45;20991:54;20983:62;;;20633:418;;;;:::o;21056:297::-;21174:12;;21221:4;21210:16;;;21204:23;;21174:12;21239:16;;21236:111;;;-1:-1:-1;;21313:4:185;21309:17;;;;21306:1;21302:25;21298:38;21287:50;;21056:297;-1:-1:-1;21056:297:185:o;22623:301::-;22752:3;22790:6;22784:13;22836:6;22829:4;22821:6;22817:17;22812:3;22806:37;22898:1;22862:16;;22887:13;;;-1:-1:-1;22862:16:185;22623:301;-1:-1:-1;22623:301:185:o;22929:230::-;22999:6;23052:2;23040:9;23031:7;23027:23;23023:32;23020:52;;;23068:1;23065;23058:12;23020:52;-1:-1:-1;23113:16:185;;22929:230;-1:-1:-1;22929:230:185:o;24249:266::-;11940:25754:75;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{"src/core/libraries/rollup/AttesterExitExtLib.sol":{"AttesterExitExtLib":[{"start":9853,"length":20},{"start":10110,"length":20},{"start":10294,"length":20},{"start":12131,"length":20}]},"src/core/libraries/rollup/EpochProofExtLib.sol":{"EpochProofExtLib":[{"start":10386,"length":20}]},"src/core/libraries/rollup/RewardExtLib.sol":{"RewardExtLib":[{"start":2193,"length":20},{"start":2403,"length":20},{"start":9729,"length":20},{"start":9981,"length":20},{"start":10215,"length":20},{"start":11289,"length":20},{"start":11356,"length":20},{"start":11747,"length":20},{"start":11856,"length":20},{"start":12076,"length":20},{"start":12201,"length":20}]},"src/core/libraries/rollup/RollupOperationsExtLib.sol":{"RollupOperationsExtLib":[{"start":9328,"length":20},{"start":11195,"length":20}]},"src/core/libraries/rollup/SlasherDeploymentExtLib.sol":{"SlasherDeploymentExtLib":[{"start":1755,"length":20}]},"src/core/libraries/rollup/ValidatorOperationsExtLib.sol":{"ValidatorOperationsExtLib":[{"start":607,"length":20},{"start":9091,"length":20},{"start":9207,"length":20},{"start":9474,"length":20},{"start":9586,"length":20},{"start":9785,"length":20},{"start":10031,"length":20},{"start":10173,"length":20},{"start":10947,"length":20},{"start":10996,"length":20},{"start":11405,"length":20},{"start":11516,"length":20},{"start":11611,"length":20},{"start":11954,"length":20},{"start":11990,"length":20},{"start":12258,"length":20},{"start":12338,"length":20},{"start":12457,"length":20}]}}},"deployedBytecode":{"object":"0x608060405234801561000f575f5ffd5b506004361061023f575f3560e01c806384b0196e11610135578063d768df6e116100b4578063e6e2844011610079578063e6e28440146104af578063eb80a094146104c2578063ee3b8dc2146104d5578063f2fde38b146104e8578063f85494de146104fb575f5ffd5b8063d768df6e1461045b578063e199c0591461046e578063e3380b7914610481578063e521cb9214610489578063e6208d151461049c575f5ffd5b8063ae8655c4116100fa578063ae8655c414610407578063ae8955811461041a578063af584dd31461042d578063c2cac49d14610440578063c7523d7914610448575f5ffd5b806384b0196e146103b05780638da5cb5b146103cb57806390a3b386146103e45780639f2b3154146103ec578063a2429e88146103f4575f5ffd5b806345e2dc40116101c157806365e50a3e1161018657806365e50a3e1461034e5780636902c67b14610361578063715018a6146103745780637468582f1461037c57806379ed8ead14610389575f5ffd5b806345e2dc40146102fa57806348b5de181461030d578063508ac49b146103205780635c8a32f6146103285780635de4c42e1461033b575f5ffd5b80631b34c564116102075780631b34c564146102b15780631d934975146102c4578063214c0693146102cc57806323f4448f146102df5780632eb5af0a146102f2575f5ffd5b80630121b93f1461024357806302fb4d85146102585780630a883a991461028057806310073ff01461029357806310a2aa55146102a9575b5f5ffd5b6102566102513660046114c6565b61050e565b005b61026b6102663660046114f8565b610571565b60405190151581526020015b60405180910390f35b61025661028e3660046116e1565b6105fe565b61029b6106a0565b604051908152602001610277565b610256610711565b6102566102bf3660046117d7565b61076b565b6102566107c4565b61029b6102da36600461182b565b61080d565b6102566102ed36600461189a565b610887565b6102566108c6565b6102566103083660046118b3565b610910565b61025661031b36600461189a565b610947565b610256610986565b61025661033636600461182b565b6109c8565b6102566103493660046118cc565b610a31565b61025661035c36600461190a565b610c1e565b61025661036f3660046119bd565b610c86565b610256610cfb565b60045461026b9060ff1681565b61029b7f000000000000000000000000000000000000000000000000000000000000000081565b6103b8610d0e565b6040516102779796959493929190611a94565b6002546001600160a01b03166040516102779190611b2a565b61029b610d50565b610256610d5a565b6102566104023660046114c6565b610d9c565b610256610415366004611b3e565b610ddc565b610256610428366004611bf2565b610e1f565b61025661043b366004611c65565b610e8e565b610256610efa565b61029b61045636600461189a565b610f3c565b61029b610469366004611cd0565b610fe0565b61025661047c3660046114c6565b61103d565b610256611075565b61025661049736600461189a565b6110b7565b6102566104aa36600461189a565b6110f5565b6102566104bd3660046114c6565b61112c565b6102566104d036600461189a565b61116c565b61026b6104e3366004611d73565b6111ab565b6102566104f636600461189a565b6111f5565b61025661050936600461189a565b61123b565b604051630121b93f60e01b81526004810182905273__$2f4de12ba25591d19e66da7de316af4ec1$__90630121b93f906024015b5f6040518083038186803b158015610558575f5ffd5b505af415801561056a573d5f5f3e3d5ffd5b5050505050565b6040516302fb4d8560e01b81526001600160a01b0383166004820152602481018290525f9073__$2f4de12ba25591d19e66da7de316af4ec1$__906302fb4d85906044015b602060405180830381865af41580156105d1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105f59190611da4565b90505b92915050565b60048054604051634abd1af560e01b815273__$ff9fdf790a39e6d4e381889ed2aba2987d$__92634abd1af59261066b928c928c928c928c928c928c928c9260ff909216917f00000000000000000000000000000000000000000000000000000000000000009101611f1b565b5f6040518083038186803b158015610681575f5ffd5b505af4158015610693573d5f5f3e3d5ffd5b5050505050505050505050565b5f73__$2f4de12ba25591d19e66da7de316af4ec1$__6310073ff06040518163ffffffff1660e01b8152600401602060405180830381865af41580156106e8573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070c9190611ff4565b905090565b73__$2f4de12ba25591d19e66da7de316af4ec1$__6310a2aa556040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b505af4158015610765573d5f5f3e3d5ffd5b50505050565b610773611272565b604051638841c46760e01b8152815163ffffffff16600482015260208201516001600160601b0316602482015273__$026f237c3e389f77c9869c62a75f74ed46$__90638841c46790604401610542565b60405163e199c05960e01b81525f19600482015273__$2f4de12ba25591d19e66da7de316af4ec1$__9063e199c059906024015f6040518083038186803b158015610753575f5ffd5b60405163069a2ae160e11b81525f9073__$54376d545bb0cf37abaed04a5a4768fa07$__90630d3455c290610848908690869060040161203d565b602060405180830381865af4158015610863573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105f59190611ff4565b61088f611272565b60405163d400325360e01b815273__$026f237c3e389f77c9869c62a75f74ed46$__9063d400325390610542908490600401611b2a565b6108ce611272565b73__$2f4de12ba25591d19e66da7de316af4ec1$__632eb5af0a6040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b60405163d306a97560e01b815273__$54376d545bb0cf37abaed04a5a4768fa07$__9063d306a97590610542908490600401612074565b61094f611272565b604051630916bbc360e31b815273__$2f4de12ba25591d19e66da7de316af4ec1$__906348b5de1890610542908490600401611b2a565b73__$026f237c3e389f77c9869c62a75f74ed46$__63508ac49b6040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b6040516319d947ab60e31b815273__$54376d545bb0cf37abaed04a5a4768fa07$__9063ceca3d5890610a01908590859060040161203d565b5f6040518083038186803b158015610a17575f5ffd5b505af4158015610a29573d5f5f3e3d5ffd5b505050505050565b73__$908808037e8813018a35142aa945c7c277$__63d25e9de382610c0160408051610100810182525f80825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e08101919091526040518061010001604052807f000000000000000000000000000000000000000000000000000000000000000081526020017f000000000000000000000000000000000000000000000000000000000000000081526020017f000000000000000000000000000000000000000000000000000000000000000063ffffffff1681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316815250905090565b6040518363ffffffff1660e01b8152600401610542929190612316565b610c26611272565b604080516347817b3960e11b81528251600482015260208301516024820152908201516044820152606082015160648201526080820151608482015273__$2f4de12ba25591d19e66da7de316af4ec1$__90638f02f6729060a401610542565b604051630f0ec5ad60e41b815273__$2f4de12ba25591d19e66da7de316af4ec1$__9063f0ec5ad090610cc790899089908990899089908990600401612420565b5f6040518083038186803b158015610cdd575f5ffd5b505af4158015610cef573d5f5f3e3d5ffd5b50505050505050505050565b610d03611272565b610d0c5f61129f565b565b5f6060805f5f5f6060610d1f6112f0565b610d2761131c565b604080515f80825260208201909252600f60f81b9b939a50919850469750309650945092509050565b5f61070c42611349565b73__$ff9fdf790a39e6d4e381889ed2aba2987d$__639f2b31546040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b610da4611272565b604051633b45d94560e21b81526004810182905273__$026f237c3e389f77c9869c62a75f74ed46$__9063ed17651490602401610542565b610de4611272565b60405163a4f40ee960e01b815261ffff8216600482015273__$026f237c3e389f77c9869c62a75f74ed46$__9063a4f40ee990602401610542565b60405163029553b560e21b815273__$2f4de12ba25591d19e66da7de316af4ec1$__90630a554ed490610e5c9087908790879087906004016124d4565b5f6040518083038186803b158015610e72575f5ffd5b505af4158015610e84573d5f5f3e3d5ffd5b5050505050505050565b6040516333ab76ab60e01b815273__$2f4de12ba25591d19e66da7de316af4ec1$__906333ab76ab90610ec990869086908690600401612510565b5f6040518083038186803b158015610edf575f5ffd5b505af4158015610ef1573d5f5f3e3d5ffd5b50505050505050565b73__$2f4de12ba25591d19e66da7de316af4ec1$__63c2cac49d6040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b604051635e5fafb360e01b81526001600160a01b0380831660048301527f00000000000000000000000000000000000000000000000000000000000000001660248201525f9073__$026f237c3e389f77c9869c62a75f74ed46$__90635e5fafb390604401602060405180830381865af4158015610fbc573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105f89190611ff4565b604051631c2dc80960e11b81525f9073__$026f237c3e389f77c9869c62a75f74ed46$__9063385b90129061084890869086907f00000000000000000000000000000000000000000000000000000000000000009060040161253a565b60405163e199c05960e01b81526004810182905273__$2f4de12ba25591d19e66da7de316af4ec1$__9063e199c05990602401610542565b73__$2f4de12ba25591d19e66da7de316af4ec1$__63e3380b796040518163ffffffff1660e01b81526004015f6040518083038186803b158015610753575f5ffd5b6110bf611272565b604051623be8ff60e71b815273__$026f237c3e389f77c9869c62a75f74ed46$__90631df47f8090610542908490600401611b2a565b60405163e6208d1560e01b815273__$54376d545bb0cf37abaed04a5a4768fa07$__9063e6208d1590610542908490600401611b2a565b611134611272565b60405163039b8a1160e61b81526004810182905273__$026f237c3e389f77c9869c62a75f74ed46$__9063e6e2844090602401610542565b611174611272565b604051633ae0282560e21b815273__$2f4de12ba25591d19e66da7de316af4ec1$__9063eb80a09490610542908490600401611b2a565b60405163771dc6e160e11b81526001600160a01b038084166004830152821660248201525f9073__$2f4de12ba25591d19e66da7de316af4ec1$__9063ee3b8dc2906044016105b6565b6111fd611272565b6001600160a01b03811661122f575f604051631e4fbdf760e01b81526004016112269190611b2a565b60405180910390fd5b6112388161129f565b50565b604051637c2a4a6f60e11b815273__$2f4de12ba25591d19e66da7de316af4ec1$__9063f85494de90610542908490600401611b2a565b6002546001600160a01b03163314610d0c573360405163118cdaa760e01b81526004016112269190611b2a565b600280546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b606061070c7f00000000000000000000000000000000000000000000000000000000000000005f6113b9565b606061070c7f000000000000000000000000000000000000000000000000000000000000000060016113b9565b5f7fbba4a4d3c3eeb229c4f06863ce3d3d8cddab9e4dee538d785fc67e2ed9d68cad6003015460405163ec6e69db60e01b8152306004820152602481018490526001600160a01b039091169063ec6e69db90604401602060405180830381865afa158015610fbc573d5f5f3e3d5ffd5b606060ff83146113d3576113cc83611462565b90506105f8565b8180546113df906125a4565b80601f016020809104026020016040519081016040528092919081815260200182805461140b906125a4565b80156114565780601f1061142d57610100808354040283529160200191611456565b820191905f5260205f20905b81548152906001019060200180831161143957829003601f168201915b505050505090506105f8565b60605f61146e8361149f565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f60ff8216601f8111156105f857604051632cd44ac360e21b815260040160405180910390fd5b5f602082840312156114d6575f5ffd5b5035919050565b80356001600160a01b03811681146114f3575f5ffd5b919050565b5f5f60408385031215611509575f5ffd5b611512836114dd565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b604080519081016001600160401b038111828210171561155657611556611520565b60405290565b604051608081016001600160401b038111828210171561155657611556611520565b604051601f8201601f191681016001600160401b03811182821017156115a6576115a6611520565b604052919050565b5f82601f8301126115bd575f5ffd5b81356001600160401b038111156115d6576115d6611520565b6115e9601f8201601f191660200161157e565b8181528460208386010111156115fd575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f60408284031215611629575f5ffd5b611631611534565b905081356001600160401b03811115611648575f5ffd5b611654848285016115ae565b82525060208201356001600160401b0381111561166f575f5ffd5b61167b848285016115ae565b60208301525092915050565b5f60608284031215611697575f5ffd5b50919050565b5f5f83601f8401126116ad575f5ffd5b5081356001600160401b038111156116c3575f5ffd5b6020830191508360208285010111156116da575f5ffd5b9250929050565b5f5f5f5f5f5f5f8789036102c08112156116f9575f5ffd5b610200811215611707575f5ffd5b508796506102008801356001600160401b03811115611724575f5ffd5b6117308a828b01611619565b9650506102208801356001600160401b0381111561174c575f5ffd5b8801601f81018a1361175c575f5ffd5b80356001600160401b03811115611771575f5ffd5b8a60208260051b8401011115611785575f5ffd5b6020919091019550935061179d896102408a01611687565b92506102a08801356001600160401b038111156117b8575f5ffd5b6117c48a828b0161169d565b989b979a50959850939692959293505050565b5f60408284031280156117e8575f5ffd5b506117f1611534565b823563ffffffff81168114611804575f5ffd5b815260208301356001600160601b038116811461181f575f5ffd5b60208201529392505050565b5f5f6020838503121561183c575f5ffd5b82356001600160401b03811115611851575f5ffd5b8301601f81018513611861575f5ffd5b80356001600160401b03811115611876575f5ffd5b85602060a08302840101111561188a575f5ffd5b6020919091019590945092505050565b5f602082840312156118aa575f5ffd5b6105f5826114dd565b5f60a08284031280156118c4575f5ffd5b509092915050565b5f602082840312156118dc575f5ffd5b81356001600160401b038111156118f1575f5ffd5b82016101a08185031215611903575f5ffd5b9392505050565b5f60a082840312801561191b575f5ffd5b5060405160a081016001600160401b038111828210171561193e5761193e611520565b604090815283358252602080850135908301528381013590820152606080840135908201526080928301359281019290925250919050565b5f60408284031215611986575f5ffd5b61198e611534565b823581526020928301359281019290925250919050565b8015158114611238575f5ffd5b80356114f3816119a5565b5f5f5f5f5f5f8688036101608112156119d4575f5ffd5b6119dd886114dd565b96506119eb602089016114dd565b95506119fa8960408a01611976565b94506080607f1982011215611a0d575f5ffd5b50611a1661155c565b6080880135815260a0880135602082015260c0880135604082015260e088013560608201529250611a4b886101008901611976565b9150611a5a61014088016119b2565b90509295509295509295565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b60ff60f81b8816815260e060208201525f611ab260e0830189611a66565b8281036040840152611ac48189611a66565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b81811015611b19578351835260209384019390920191600101611afb565b50909b9a5050505050505050505050565b6001600160a01b0391909116815260200190565b5f60208284031215611b4e575f5ffd5b813561ffff81168114611903575f5ffd5b5f6001600160401b03821115611b7757611b77611520565b5060051b60200190565b5f82601f830112611b90575f5ffd5b8135611ba3611b9e82611b5f565b61157e565b8082825260208201915060208360051b860101925085831115611bc4575f5ffd5b602085015b83811015611be857611bda816114dd565b835260209283019201611bc9565b5095945050505050565b5f5f5f5f60808587031215611c05575f5ffd5b8435935060208501356001600160401b03811115611c21575f5ffd5b611c2d87828801611619565b93505060408501356001600160401b03811115611c48575f5ffd5b611c5487828801611b81565b949793965093946060013593505050565b5f5f5f60608486031215611c77575f5ffd5b8335925060208401356001600160401b03811115611c93575f5ffd5b611c9f86828701611619565b92505060408401356001600160401b03811115611cba575f5ffd5b611cc686828701611b81565b9150509250925092565b5f5f60408385031215611ce1575f5ffd5b611cea836114dd565b915060208301356001600160401b03811115611d04575f5ffd5b8301601f81018513611d14575f5ffd5b8035611d22611b9e82611b5f565b8082825260208201915060208360051b850101925087831115611d43575f5ffd5b6020840193505b82841015611d65578335825260209384019390910190611d4a565b809450505050509250929050565b5f5f60408385031215611d84575f5ffd5b611d8d836114dd565b9150611d9b602084016114dd565b90509250929050565b5f60208284031215611db4575f5ffd5b8151611903816119a5565b80356001600160801b03811681146114f3575f5ffd5b6001600160801b03611de682611dbf565b1682526001600160801b03611dfd60208301611dbf565b1660208301525050565b803582526020808201359083015260408082013590830152606080820135908301526080808201359083015260a0808201359083015260c08082013590830152611e5360e082016114dd565b6001600160a01b031660e08301526101008181013590830152611e7d610120808401908301611dd5565b610160818101359083015261018090810135910152565b5f815160408452611ea86040850182611a66565b905060208301518482036020860152611ec18282611a66565b95945050505050565b803560ff8116808214611edb575f5ffd5b83525060208181013590830152604090810135910152565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b893581526020808b0135908201525f611f3a6040808401908d01611e07565b6101e08b810135908301526103006102008301819052611f5c9083018b611e94565b82810361022084015288815289906020015f805b8b811015611f9e576001600160a01b03611f89856114dd565b16835260209384019390920191600101611f70565b50611faf905061024085018a611eca565b8381036102a0850152611fc381888a611ef3565b92505050611fd66102c083018515159052565b6001600160a01b0383166102e08301529a9950505050505050505050565b5f60208284031215612004575f5ffd5b5051919050565b6001600160a01b0361201c826114dd565b168252602081810135908301526120396040808401908301611eca565b5050565b602080825281018290525f8360408301825b85811015611be857612061828461200b565b60a092830192919091019060010161204f565b60a081016105f8828461200b565b80358252602080820135908301526040808201359083015260608082013590830152608080820135908301526001600160a01b036120c260a083016114dd565b1660a08301525050565b5f5f8335601e198436030181126120e1575f5ffd5b83016020810192503590506001600160401b038111156120ff575f5ffd5b8060061b36038213156116da575f5ffd5b8183526020830192505f815f5b84811015612155576001600160a01b03612136836114dd565b168652602082810135908701526040958601959091019060010161211d565b5093949350505050565b5f5f8335601e19843603018112612174575f5ffd5b83016020810192503590506001600160401b03811115612192575f5ffd5b6101a0810236038213156116da575f5ffd5b8183526020830192505f815f5b84811015612155576121c38683611e07565b6101a09586019591909101906001016121b1565b5f8235603e198336030181126121eb575f5ffd5b90910192915050565b5f5f8335601e19843603018112612209575f5ffd5b83016020810192503590506001600160401b03811115612227575f5ffd5b8036038213156116da575f5ffd5b5f61224082836121f4565b60408552612252604086018284611ef3565b91505061226260208401846121f4565b8583036020870152612275838284611ef3565b9695505050505050565b805182526020810151602083015263ffffffff604082015116604083015260018060a01b03606082015116606083015260018060a01b03608082015116608083015260a08101516122db60a08401826001600160a01b03169052565b5060c08101516122f660c08401826001600160a01b03169052565b5060e081015161231160e08401826001600160a01b03169052565b505050565b61012080825283359082015260208301356101408201525f61233f610160830160408601612082565b61234d6101008501856120cc565b6101a06102208501526123656102c085018284612110565b91505061237661012086018661215f565b84830361011f190161024086015261238f8382846121a4565b925050506123a16101408601866121d7565b83820361011f19016102608501526123b98282612235565b9150506123ca6101608601866121f4565b84830361011f19016102808601526123e3838284611ef3565b925050506123f56101808601866121f4565b84830361011f19016102a086015261240e838284611ef3565b9350505050611903602083018461227f565b6001600160a01b038781168252861660208201526101608101612450604083018780518252602090810151910152565b8451608083015260208086015160a0840152604086015160c0840152606086015160e08401528451610100840152840151610120830152821515610140830152979650505050505050565b5f8151808452602084019350602083015f5b828110156121555781516001600160a01b03168652602095860195909101906001016124ad565b848152608060208201525f6124ec6080830186611e94565b82810360408401526124fe818661249b565b91505082606083015295945050505050565b838152606060208201525f6125286060830185611e94565b8281036040840152612275818561249b565b6001600160a01b03841681526060602080830182905284519183018290525f91908501906080840190835b81811015612583578351835260209384019390920191600101612565565b50506001600160a01b03949094166040939093019290925250909392505050565b600181811c908216806125b857607f821691505b60208210810361169757634e487b7160e01b5f52602260045260245ffdfea2646970667358221220f570403971268098bbeb55e0ddb2140c5c91caf8ff8dcbf99467453ff3c1a3a764736f6c634300081e0033","sourceMap":"11940:25754:75:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23856:121;;;;;;:::i;:::-;;:::i;:::-;;29086:167;;;;;;:::i;:::-;;:::i;:::-;;;989:14:185;;982:22;964:41;;952:2;937:18;29086:167:75;;;;;;;;31219:402;;;;;;:::i;:::-;;:::i;35975:155::-;;;:::i;:::-;;;5206:25:185;;;5194:2;5179:18;35975:155:75;5060:177:185;19858:119:75;;;:::i;17398:147::-;;;;;;:::i;:::-;;:::i;25630:130::-;;;:::i;28127:274::-;;;;;;:::i;:::-;;:::i;18073:168::-;;;;;;:::i;:::-;;:::i;19497:125::-;;;:::i;27056:227::-;;;;;;:::i;:::-;;:::i;22289:164::-;;;;;;:::i;:::-;;:::i;35589:107::-;;;:::i;27552:215::-;;;;;;:::i;:::-;;:::i;30152:177::-;;;;;;:::i;:::-;;:::i;21586:181::-;;;;;;:::i;:::-;;:::i;24750:397::-;;;;;;:::i;:::-;;:::i;2293:101:35:-;;;:::i;13328:28:75:-;;;;;;;;;12383:44;;;;;5144:557:58;;;:::i;:::-;;;;;;;;;;;;;:::i;1638:85:35:-;1710:6;;-1:-1:-1;;;;;1710:6:35;1638:85;;;;;;:::i;36344:171:75:-;;;:::i;29616:89::-;;;:::i;20226:171::-;;;;;;:::i;:::-;;:::i;20791:::-;;;;;;:::i;:::-;;:::i;32215:330::-;;;;;;:::i;:::-;;:::i;33079:308::-;;;;;;:::i;:::-;;:::i;35137:124::-;;;:::i;22754:173::-;;;;;;:::i;:::-;;:::i;23340:214::-;;;;;;:::i;:::-;;:::i;25493:133::-;;;;;;:::i;:::-;;:::i;34661:114::-;;;:::i;21179:156::-;;;;;;:::i;:::-;;:::i;26608:154::-;;;;;;:::i;:::-;;:::i;18626:141::-;;;;;;:::i;:::-;;:::i;19260:147::-;;;;;;:::i;:::-;;:::i;26193:195::-;;;;;;:::i;:::-;;:::i;2543:215:35:-;;;;;;:::i;:::-;;:::i;28642:141:75:-;;;;;;:::i;:::-;;:::i;23856:121::-;23929:43;;-1:-1:-1;;;23929:43:75;;;;;5206:25:185;;;23929::75;;:30;;5179:18:185;;23929:43:75;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23856:121;:::o;29086:167::-;29197:51;;-1:-1:-1;;;29197:51:75;;-1:-1:-1;;;;;16842:32:185;;29197:51:75;;;16824::185;16891:18;;;16884:34;;;29178:4:75;;29197:25;;:31;;16797:18:185;;29197:51:75;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;29190:58;;29086:167;;;;;:::o;31219:402::-;31594:9;;;31478:138;;-1:-1:-1;;;31478:138:75;;:22;;:30;;:138;;31516:5;;31523:13;;31538:8;;;;31548:32;;31582:10;;;;31594:9;;;;;31605:5;;31478:138;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;31219:402;;;;;;;:::o;35975:155::-;36053:7;36075:25;:48;:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;36068:57;;35975:155;:::o;19858:119::-;19926:25;:44;:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19858:119::o;17398:147::-;1531:13:35;:11;:13::i;:::-;17506:34:75::1;::::0;-1:-1:-1;;;17506:34:75;;22433:13:185;;22448:10;22429:30;17506:34:75::1;::::0;::::1;22411:49:185::0;22520:4;22508:17;;22502:24;-1:-1:-1;;;;;22498:57:185;22476:20;;;22469:87;17506:12:75::1;::::0;:25:::1;::::0;22384:18:185;;17506:34:75::1;22181:381:185::0;25630:130:75;25695:60;;-1:-1:-1;;;25695:60:75;;-1:-1:-1;;25695:60:75;;;5206:25:185;25695::75;;:41;;5179:18:185;;25695:60:75;;;;;;;;;;;;;;;;;;28127:274;28320:76;;-1:-1:-1;;;28320:76:75;;28284:19;;28320:18;;:59;;:76;;28380:15;;;;28320:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;18073:168::-;1531:13:35;:11;:13::i;:::-;18179:57:75::1;::::0;-1:-1:-1;;;18179:57:75;;:12:::1;::::0;:44:::1;::::0;:57:::1;::::0;18224:11;;18179:57:::1;;;:::i;19497:125::-:0;1531:13:35;:11;:13::i;:::-;19573:25:75::1;:42;:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27056:227:::0;27204:74;;-1:-1:-1;;;27204:74:75;;:18;;:58;;:74;;27263:14;;27204:74;;;:::i;22289:164::-;1531:13:35;:11;:13::i;:::-;22394:54:75::1;::::0;-1:-1:-1;;;22394:54:75;;:25:::1;::::0;:40:::1;::::0;:54:::1;::::0;22435:12;;22394:54:::1;;;:::i;35589:107::-:0;35656:12;:33;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27552:215;27695:67;;-1:-1:-1;;;27695:67:75;;:18;;:50;;:67;;27746:15;;;;27695:67;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27552:215;;:::o;30152:177::-;30260:16;:37;30298:5;30305:18;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;37400:287:75;;;;;;;;37433:12;37400:287;;;;37476:23;37400:287;;;;37516:7;37400:287;;;;;;37541:9;-1:-1:-1;;;;;37400:287:75;;;;;37574:16;-1:-1:-1;;;;;37400:287:75;;;;;37618:20;-1:-1:-1;;;;;37400:287:75;;;;;37653:5;-1:-1:-1;;;;;37400:287:75;;;;;37674:6;-1:-1:-1;;;;;37400:287:75;;;;37393:294;;37307:385;;30305:18;30260:64;;;;;;;;;;;;;;;;:::i;21586:181::-;1531:13:35;:11;:13::i;:::-;21703:59:75::1;::::0;;-1:-1:-1;;;21703:59:75;;31569:13:185;;21703:59:75::1;::::0;::::1;31551:32:185::0;31639:4;31627:17;;31621:24;31599:20;;;31592:54;31690:17;;;31684:24;31662:20;;;31655:54;31765:4;31753:17;;31747:24;31725:20;;;31718:54;31828:4;31816:17;;31810:24;31788:20;;;31781:54;21703:25:75::1;::::0;:50:::1;::::0;31523:19:185;;21703:59:75::1;31322:519:185::0;24750:397:75;24998:144;;-1:-1:-1;;;24998:144:75;;:25;;:33;;:144;;25039:9;;25050:11;;25063:14;;25079;;25095:18;;25115:21;;24998:144;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24750:397;;;;;;:::o;2293:101:35:-;1531:13;:11;:13::i;:::-;2357:30:::1;2384:1;2357:18;:30::i;:::-;2293:101::o:0;5144:557:58:-;5242:13;5269:18;5301:21;5336:15;5365:25;5404:12;5430:27;5533:13;:11;:13::i;:::-;5560:16;:14;:16::i;:::-;5668;;;5652:1;5668:16;;;;;;;;;-1:-1:-1;;;5482:212:58;;;-1:-1:-1;5482:212:58;;-1:-1:-1;5590:13:58;;-1:-1:-1;5625:4:58;;-1:-1:-1;5652:1:58;-1:-1:-1;5668:16:58;-1:-1:-1;5482:212:58;-1:-1:-1;5144:557:58:o;36344:171:75:-;36422:7;36444:66;36493:15;36444:33;:66::i;29616:89::-;29670:22;:28;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20226:171;1531:13:35;:11;:13::i;:::-;20334:58:75::1;::::0;-1:-1:-1;;;20334:58:75;;::::1;::::0;::::1;5206:25:185::0;;;20334:12:75::1;::::0;:37:::1;::::0;5179:18:185;;20334:58:75::1;5060:177:185::0;20791:171:75;1531:13:35;:11;:13::i;:::-;20898:59:75::1;::::0;-1:-1:-1;;;20898:59:75;;33401:6:185;33389:19;;20898:59:75::1;::::0;::::1;33371:38:185::0;20898:12:75::1;::::0;:36:::1;::::0;33344:18:185;;20898:59:75::1;33219:196:185::0;32215:330:75;32429:111;;-1:-1:-1;;;32429:111:75;;:25;;:50;;:111;;32480:17;;32499:13;;32514:10;;32526:13;;32429:111;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;32215:330;;;;:::o;33079:308::-;33276:106;;-1:-1:-1;;;33276:106:75;;:25;;:60;;:106;;33337:17;;33356:13;;33371:10;;33276:106;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;33079:308;;;:::o;35137:124::-;35212:25;:42;:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22754:173;22866:56;;-1:-1:-1;;;22866:56:75;;-1:-1:-1;;;;;35340:32:185;;;22866:56:75;;;35322:51:185;22912:9:75;35409:32:185;35389:18;;;35382:60;22844:7:75;;22866:12;;:34;;35295:18:185;;22866:56:75;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;23340:214::-;23487:62;;-1:-1:-1;;;23487:62:75;;23463:7;;23487:12;;:31;;:62;;23519:9;;23530:7;;23539:9;;23487:62;;;:::i;25493:133::-;25572:49;;-1:-1:-1;;;25572:49:75;;;;;5206:25:185;;;25572::75;;:41;;5179:18:185;;25572:49:75;5060:177:185;34661:114:75;34732:25;:36;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21179:156;1531:13:35;:11;:13::i;:::-;21279:51:75::1;::::0;-1:-1:-1;;;21279:51:75;;:12:::1;::::0;:39:::1;::::0;:51:::1;::::0;21319:10;;21279:51:::1;;;:::i;26608:154::-:0;26701:56;;-1:-1:-1;;;26701:56:75;;:18;;:45;;:56;;26747:9;;26701:56;;;:::i;18626:141::-;1531:13:35;:11;:13::i;:::-;18720:42:75::1;::::0;-1:-1:-1;;;18720:42:75;;::::1;::::0;::::1;5206:25:185::0;;;18720:12:75::1;::::0;:29:::1;::::0;5179:18:185;;18720:42:75::1;5060:177:185::0;19260:147:75;1531:13:35;:11;:13::i;:::-;19351:51:75::1;::::0;-1:-1:-1;;;19351:51:75;;:25:::1;::::0;:41:::1;::::0;:51:::1;::::0;19393:8;;19351:51:::1;;;:::i;26193:195::-:0;26318:65;;-1:-1:-1;;;26318:65:75;;-1:-1:-1;;;;;35340:32:185;;;26318:65:75;;;35322:51:185;35409:32;;35389:18;;;35382:60;26299:4:75;;26318:25;;:42;;35295:18:185;;26318:65:75;35124:324:185;2543:215:35;1531:13;:11;:13::i;:::-;-1:-1:-1;;;;;2627:22:35;::::1;2623:91;;2700:1;2672:31;;-1:-1:-1::0;;;2672:31:35::1;;;;;;;;:::i;:::-;;;;;;;;2623:91;2723:28;2742:8;2723:18;:28::i;:::-;2543:215:::0;:::o;28642:141:75:-;28725:53;;-1:-1:-1;;;28725:53:75;;:25;;:42;;:53;;28768:9;;28725:53;;;:::i;1796:162:35:-;1710:6;;-1:-1:-1;;;;;1710:6:35;735:10:48;1855:23:35;1851:101;;735:10:48;1901:40:35;;-1:-1:-1;;;1901:40:35;;;;;;;;:::i;2912:187::-;3004:6;;;-1:-1:-1;;;;;3020:17:35;;;-1:-1:-1;;;;;;3020:17:35;;;;;;;3052:40;;3004:6;;;3020:17;3004:6;;3052:40;;2985:16;;3052:40;2975:124;2912:187;:::o;6021:126:58:-;6067:13;6099:41;:5;6126:13;6099:26;:41::i;6473:135::-;6522:13;6554:47;:8;6584:16;6554:29;:47::i;36807:170:120:-;36884:7;9932:39;36906:16;;;:66;;-1:-1:-1;;;36906:66:120;;36954:4;36906:66;;;16824:51:185;16891:18;;;16884:34;;;-1:-1:-1;;;;;36906:16:120;;;;:39;;16797:18:185;;36906:66:120;;;;;;;;;;;;;;;;;;;;;;3358:267:52;3452:13;1390:66;3481:46;;3477:142;;3550:15;3559:5;3550:8;:15::i;:::-;3543:22;;;;3477:142;3603:5;3596:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2078:378;2137:13;2162:11;2176:16;2187:4;2176:10;:16::i;:::-;2300:14;;;2311:2;2300:14;;;;;;;;;2162:30;;-1:-1:-1;2280:17:52;;2300:14;;;;;;;;;-1:-1:-1;;;2363:16:52;;;-1:-1:-1;2408:4:52;2399:14;;2392:28;;;;-1:-1:-1;2363:16:52;2078:378::o;2528:245::-;2589:7;2661:4;2625:40;;2688:2;2679:11;;2675:69;;;2713:20;;-1:-1:-1;;;2713:20:52;;;;;;;;;;;14:226:185;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;187:23:185;;14:226;-1:-1:-1;14:226:185:o;245:173::-;313:20;;-1:-1:-1;;;;;362:31:185;;352:42;;342:70;;408:1;405;398:12;342:70;245:173;;;:::o;423:300::-;491:6;499;552:2;540:9;531:7;527:23;523:32;520:52;;;568:1;565;558:12;520:52;591:29;610:9;591:29;:::i;:::-;581:39;689:2;674:18;;;;661:32;;-1:-1:-1;;;423:300:185:o;1016:127::-;1077:10;1072:3;1068:20;1065:1;1058:31;1108:4;1105:1;1098:15;1132:4;1129:1;1122:15;1148:257;1220:4;1214:11;;;1252:17;;-1:-1:-1;;;;;1284:34:185;;1320:22;;;1281:62;1278:88;;;1346:18;;:::i;:::-;1382:4;1375:24;1148:257;:::o;1410:252::-;1482:2;1476:9;1524:3;1512:16;;-1:-1:-1;;;;;1543:34:185;;1579:22;;;1540:62;1537:88;;;1605:18;;:::i;1667:275::-;1738:2;1732:9;1803:2;1784:13;;-1:-1:-1;;1780:27:185;1768:40;;-1:-1:-1;;;;;1823:34:185;;1859:22;;;1820:62;1817:88;;;1885:18;;:::i;:::-;1921:2;1914:22;1667:275;;-1:-1:-1;1667:275:185:o;1947:558::-;1989:5;2042:3;2035:4;2027:6;2023:17;2019:27;2009:55;;2060:1;2057;2050:12;2009:55;2100:6;2087:20;-1:-1:-1;;;;;2122:6:185;2119:30;2116:56;;;2152:18;;:::i;:::-;2196:59;2243:2;2220:17;;-1:-1:-1;;2216:31:185;2249:4;2212:42;2196:59;:::i;:::-;2280:6;2271:7;2264:23;2334:3;2327:4;2318:6;2310;2306:19;2302:30;2299:39;2296:59;;;2351:1;2348;2341:12;2296:59;2416:6;2409:4;2401:6;2397:17;2390:4;2381:7;2377:18;2364:59;2472:1;2443:20;;;2465:4;2439:31;2432:42;;;;2447:7;1947:558;-1:-1:-1;;;1947:558:185:o;2510:556::-;2578:5;2626:4;2614:9;2609:3;2605:19;2601:30;2598:50;;;2644:1;2641;2634:12;2598:50;2666:22;;:::i;:::-;2657:31;;2724:9;2711:23;-1:-1:-1;;;;;2749:6:185;2746:30;2743:50;;;2789:1;2786;2779:12;2743:50;2816:45;2857:3;2848:6;2837:9;2833:22;2816:45;:::i;:::-;2809:5;2802:60;;2915:2;2904:9;2900:18;2887:32;-1:-1:-1;;;;;2934:8:185;2931:32;2928:52;;;2976:1;2973;2966:12;2928:52;3012:47;3055:3;3044:8;3033:9;3029:24;3012:47;:::i;:::-;3007:2;3000:5;2996:14;2989:71;;2510:556;;;;:::o;3071:157::-;3133:5;3178:2;3169:6;3164:3;3160:16;3156:25;3153:45;;;3194:1;3191;3184:12;3153:45;-1:-1:-1;3216:6:185;3071:157;-1:-1:-1;3071:157:185:o;3233:347::-;3284:8;3294:6;3348:3;3341:4;3333:6;3329:17;3325:27;3315:55;;3366:1;3363;3356:12;3315:55;-1:-1:-1;3389:20:185;;-1:-1:-1;;;;;3421:30:185;;3418:50;;;3464:1;3461;3454:12;3418:50;3501:4;3493:6;3489:17;3477:29;;3553:3;3546:4;3537:6;3529;3525:19;3521:30;3518:39;3515:59;;;3570:1;3567;3560:12;3515:59;3233:347;;;;;:::o;3585:1470::-;3821:6;3829;3837;3845;3853;3861;3869;3913:9;3904:7;3900:23;3943:3;3939:2;3935:12;3932:32;;;3960:1;3957;3950:12;3932:32;3984:3;3980:2;3976:12;3973:32;;;4001:1;3998;3991:12;3973:32;;4024:9;4014:19;;4084:3;4073:9;4069:19;4056:33;-1:-1:-1;;;;;4104:6:185;4101:30;4098:50;;;4144:1;4141;4134:12;4098:50;4167:72;4231:7;4222:6;4211:9;4207:22;4167:72;:::i;:::-;4157:82;;;4292:3;4281:9;4277:19;4264:33;-1:-1:-1;;;;;4312:8:185;4309:32;4306:52;;;4354:1;4351;4344:12;4306:52;4377:24;;4432:4;4424:13;;4420:27;-1:-1:-1;4410:55:185;;4461:1;4458;4451:12;4410:55;4501:2;4488:16;-1:-1:-1;;;;;4519:6:185;4516:30;4513:50;;;4559:1;4556;4549:12;4513:50;4614:7;4607:4;4597:6;4594:1;4590:14;4586:2;4582:23;4578:34;4575:47;4572:67;;;4635:1;4632;4625:12;4572:67;4666:4;4658:13;;;;;-1:-1:-1;4690:6:185;-1:-1:-1;4715:66:185;4773:7;4767:3;4752:19;;4715:66;:::i;:::-;4705:76;;4834:3;4823:9;4819:19;4806:33;-1:-1:-1;;;;;4854:8:185;4851:32;4848:52;;;4896:1;4893;4886:12;4848:52;4935:60;4987:7;4976:8;4965:9;4961:24;4935:60;:::i;:::-;3585:1470;;;;-1:-1:-1;3585:1470:185;;-1:-1:-1;3585:1470:185;;;;4909:86;;-1:-1:-1;;;3585:1470:185:o;5242:619::-;5339:6;5399:2;5387:9;5378:7;5374:23;5370:32;5414:2;5411:22;;;5429:1;5426;5419:12;5411:22;-1:-1:-1;5471:22:185;;:::i;:::-;5530:9;5517:23;5584:10;5575:7;5571:24;5562:7;5559:37;5549:65;;5610:1;5607;5600:12;5549:65;5623:22;;5697:2;5682:18;;5669:32;-1:-1:-1;;;;;5732:40:185;;5720:53;;5710:81;;5787:1;5784;5777:12;5710:81;5818:2;5807:14;;5800:31;5811:5;5242:619;-1:-1:-1;;;5242:619:185:o;5866:659::-;5998:6;6006;6059:2;6047:9;6038:7;6034:23;6030:32;6027:52;;;6075:1;6072;6065:12;6027:52;6115:9;6102:23;-1:-1:-1;;;;;6140:6:185;6137:30;6134:50;;;6180:1;6177;6170:12;6134:50;6203:22;;6256:4;6248:13;;6244:27;-1:-1:-1;6234:55:185;;6285:1;6282;6275:12;6234:55;6325:2;6312:16;-1:-1:-1;;;;;6343:6:185;6340:30;6337:50;;;6383:1;6380;6373:12;6337:50;6439:7;6434:2;6426:4;6418:6;6414:17;6410:2;6406:26;6402:35;6399:48;6396:68;;;6460:1;6457;6450:12;6396:68;6491:2;6483:11;;;;;6513:6;;-1:-1:-1;5866:659:185;-1:-1:-1;;;5866:659:185:o;6530:186::-;6589:6;6642:2;6630:9;6621:7;6617:23;6613:32;6610:52;;;6658:1;6655;6648:12;6610:52;6681:29;6700:9;6681:29;:::i;6721:250::-;6826:6;6886:3;6874:9;6865:7;6861:23;6857:33;6902:2;6899:22;;;6917:1;6914;6907:12;6899:22;-1:-1:-1;6956:9:185;;6721:250;-1:-1:-1;;6721:250:185:o;6976:405::-;7080:6;7133:2;7121:9;7112:7;7108:23;7104:32;7101:52;;;7149:1;7146;7139:12;7101:52;7189:9;7176:23;-1:-1:-1;;;;;7214:6:185;7211:30;7208:50;;;7254:1;7251;7244:12;7208:50;7277:22;;7333:3;7315:16;;;7311:26;7308:46;;;7350:1;7347;7340:12;7308:46;7373:2;6976:405;-1:-1:-1;;;6976:405:185:o;7386:1029::-;7482:6;7542:3;7530:9;7521:7;7517:23;7513:33;7558:2;7555:22;;;7573:1;7570;7563:12;7555:22;-1:-1:-1;7642:2:185;7636:9;7684:3;7672:16;;-1:-1:-1;;;;;7703:34:185;;7739:22;;;7700:62;7697:88;;;7765:18;;:::i;:::-;7801:2;7794:22;;;7857:23;;7889:21;;7983:2;7968:18;;;7955:32;8003:15;;;7996:32;8086:18;;;8073:32;8121:15;;;8114:32;8219:2;8204:18;;;8191:32;8239:15;;;8232:32;8337:3;8322:19;;;8309:33;8358:16;;;8351:33;;;;-1:-1:-1;7896:6:185;7386:1029;-1:-1:-1;7386:1029:185:o;8420:386::-;8474:5;8522:4;8510:9;8505:3;8501:19;8497:30;8494:50;;;8540:1;8537;8530:12;8494:50;8562:22;;:::i;:::-;8629:23;;8661:22;;8756:2;8741:18;;;8728:32;8776:14;;;8769:31;;;;-1:-1:-1;8553:31:185;8420:386;-1:-1:-1;8420:386:185:o;8811:118::-;8897:5;8890:13;8883:21;8876:5;8873:32;8863:60;;8919:1;8916;8909:12;8934:128;8999:20;;9028:28;8999:20;9028:28;:::i;9067:1217::-;9249:6;9257;9265;9273;9281;9289;9333:9;9324:7;9320:23;9363:3;9359:2;9355:12;9352:32;;;9380:1;9377;9370:12;9352:32;9403:29;9422:9;9403:29;:::i;:::-;9393:39;;9451:38;9485:2;9474:9;9470:18;9451:38;:::i;:::-;9441:48;;9508:54;9554:7;9549:2;9538:9;9534:18;9508:54;:::i;:::-;9498:64;-1:-1:-1;9597:3:185;-1:-1:-1;;9578:17:185;;9574:27;9571:47;;;9614:1;9611;9604:12;9571:47;;9640:22;;:::i;:::-;9735:3;9720:19;;9707:33;9749:22;;9844:3;9829:19;;9816:33;9876:2;9865:14;;9858:31;9962:3;9947:19;;9934:33;9994:2;9983:14;;9976:31;10080:3;10065:19;;10052:33;10112:2;10101:14;;10094:31;9756:5;-1:-1:-1;10168:55:185;10215:7;10209:3;10194:19;;10168:55;:::i;:::-;10158:65;;10242:36;10273:3;10262:9;10258:19;10242:36;:::i;:::-;10232:46;;9067:1217;;;;;;;;:::o;10289:289::-;10331:3;10369:5;10363:12;10396:6;10391:3;10384:19;10452:6;10445:4;10438:5;10434:16;10427:4;10422:3;10418:14;10412:47;10504:1;10497:4;10488:6;10483:3;10479:16;10475:27;10468:38;10567:4;10560:2;10556:7;10551:2;10543:6;10539:15;10535:29;10530:3;10526:39;10522:50;10515:57;;;10289:289;;;;:::o;10692:1238::-;11098:3;11093;11089:13;11081:6;11077:26;11066:9;11059:45;11140:3;11135:2;11124:9;11120:18;11113:31;11040:4;11167:46;11208:3;11197:9;11193:19;11185:6;11167:46;:::i;:::-;11261:9;11253:6;11249:22;11244:2;11233:9;11229:18;11222:50;11295:33;11321:6;11313;11295:33;:::i;:::-;11359:2;11344:18;;11337:34;;;-1:-1:-1;;;;;11408:32:185;;11402:3;11387:19;;11380:61;11428:3;11457:19;;11450:35;;;11522:22;;;11516:3;11501:19;;11494:51;11594:13;;11616:22;;;11666:2;11692:15;;;;-1:-1:-1;11654:15:185;;;;-1:-1:-1;11735:169:185;11749:6;11746:1;11743:13;11735:169;;;11810:13;;11798:26;;11853:2;11879:15;;;;11844:12;;;;11771:1;11764:9;11735:169;;;-1:-1:-1;11921:3:185;;10692:1238;-1:-1:-1;;;;;;;;;;;10692:1238:185:o;11935:203::-;-1:-1:-1;;;;;12099:32:185;;;;12081:51;;12069:2;12054:18;;11935:203::o;12404:272::-;12462:6;12515:2;12503:9;12494:7;12490:23;12486:32;12483:52;;;12531:1;12528;12521:12;12483:52;12570:9;12557:23;12620:6;12613:5;12609:18;12602:5;12599:29;12589:57;;12642:1;12639;12632:12;12681:183;12741:4;-1:-1:-1;;;;;12766:6:185;12763:30;12760:56;;;12796:18;;:::i;:::-;-1:-1:-1;12841:1:185;12837:14;12853:4;12833:25;;12681:183::o;12869:675::-;12923:5;12976:3;12969:4;12961:6;12957:17;12953:27;12943:55;;12994:1;12991;12984:12;12943:55;13034:6;13021:20;13061:64;13077:47;13117:6;13077:47;:::i;:::-;13061:64;:::i;:::-;13149:3;13173:6;13168:3;13161:19;13205:4;13200:3;13196:14;13189:21;;13266:4;13256:6;13253:1;13249:14;13241:6;13237:27;13233:38;13219:52;;13294:3;13286:6;13283:15;13280:35;;;13311:1;13308;13301:12;13280:35;13347:4;13339:6;13335:17;13361:152;13377:6;13372:3;13369:15;13361:152;;;13445:23;13464:3;13445:23;:::i;:::-;13433:36;;13498:4;13489:14;;;;13394;13361:152;;;-1:-1:-1;13531:7:185;12869:675;-1:-1:-1;;;;;12869:675:185:o;13549:851::-;13700:6;13708;13716;13724;13777:3;13765:9;13756:7;13752:23;13748:33;13745:53;;;13794:1;13791;13784:12;13745:53;13839:23;;;-1:-1:-1;13937:2:185;13922:18;;13909:32;-1:-1:-1;;;;;13953:30:185;;13950:50;;;13996:1;13993;13986:12;13950:50;14019:72;14083:7;14074:6;14063:9;14059:22;14019:72;:::i;:::-;14009:82;;;14144:2;14133:9;14129:18;14116:32;-1:-1:-1;;;;;14163:8:185;14160:32;14157:52;;;14205:1;14202;14195:12;14157:52;14228:63;14283:7;14272:8;14261:9;14257:24;14228:63;:::i;:::-;13549:851;;;;-1:-1:-1;14218:73:185;;14364:2;14349:18;14336:32;;-1:-1:-1;;;13549:851:185:o;14405:730::-;14547:6;14555;14563;14616:2;14604:9;14595:7;14591:23;14587:32;14584:52;;;14632:1;14629;14622:12;14584:52;14677:23;;;-1:-1:-1;14775:2:185;14760:18;;14747:32;-1:-1:-1;;;;;14791:30:185;;14788:50;;;14834:1;14831;14824:12;14788:50;14857:72;14921:7;14912:6;14901:9;14897:22;14857:72;:::i;:::-;14847:82;;;14982:2;14971:9;14967:18;14954:32;-1:-1:-1;;;;;15001:8:185;14998:32;14995:52;;;15043:1;15040;15033:12;14995:52;15066:63;15121:7;15110:8;15099:9;15095:24;15066:63;:::i;:::-;15056:73;;;14405:730;;;;;:::o;15140:1042::-;15261:6;15269;15322:2;15310:9;15301:7;15297:23;15293:32;15290:52;;;15338:1;15335;15328:12;15290:52;15361:29;15380:9;15361:29;:::i;:::-;15351:39;;15441:2;15430:9;15426:18;15413:32;-1:-1:-1;;;;;15460:6:185;15457:30;15454:50;;;15500:1;15497;15490:12;15454:50;15523:22;;15576:4;15568:13;;15564:27;-1:-1:-1;15554:55:185;;15605:1;15602;15595:12;15554:55;15645:2;15632:16;15668:64;15684:47;15724:6;15684:47;:::i;15668:64::-;15754:3;15778:6;15773:3;15766:19;15810:2;15805:3;15801:12;15794:19;;15865:2;15855:6;15852:1;15848:14;15844:2;15840:23;15836:32;15822:46;;15891:7;15883:6;15880:19;15877:39;;;15912:1;15909;15902:12;15877:39;15944:2;15940;15936:11;15925:22;;15956:196;15972:6;15967:3;15964:15;15956:196;;;16062:17;;16092:18;;16139:2;15989:12;;;;16130;;;;15956:196;;;16171:5;16161:15;;;;;;15140:1042;;;;;:::o;16187:260::-;16255:6;16263;16316:2;16304:9;16295:7;16291:23;16287:32;16284:52;;;16332:1;16329;16322:12;16284:52;16355:29;16374:9;16355:29;:::i;:::-;16345:39;;16403:38;16437:2;16426:9;16422:18;16403:38;:::i;:::-;16393:48;;16187:260;;;;;:::o;16929:245::-;16996:6;17049:2;17037:9;17028:7;17024:23;17020:32;17017:52;;;17065:1;17062;17055:12;17017:52;17097:9;17091:16;17116:28;17138:5;17116:28;:::i;17179:173::-;17247:20;;-1:-1:-1;;;;;17296:31:185;;17286:42;;17276:70;;17342:1;17339;17332:12;17357:235;-1:-1:-1;;;;;17443:25:185;17462:5;17443:25;:::i;:::-;17439:51;17427:64;;-1:-1:-1;;;;;17527:36:185;17557:4;17546:16;;17527:36;:::i;:::-;17523:62;17516:4;17511:3;17507:14;17500:86;;;17357:235::o;17597:1420::-;17710:19;;17738:20;;17827:4;17816:16;;;17803:30;17849:14;;;17842:31;17942:4;17931:16;;;17918:30;17964:14;;;17957:31;18057:4;18046:16;;;18033:30;18079:14;;;18072:31;18172:4;18161:16;;;18148:30;18194:14;;;18187:31;18287:4;18276:16;;;18263:30;18309:14;;;18302:31;18402:4;18391:16;;;18378:30;18424:14;;;18417:31;18477:36;18507:4;18496:16;;18477:36;:::i;:::-;-1:-1:-1;;;;;10649:31:185;18564:4;18555:14;;10637:44;18639:6;18628:18;;;18615:32;18663:16;;;18656:33;18698:72;18762:6;18753:16;;;;18733:18;;18698:72;:::i;:::-;18839:6;18828:18;;;18815:32;18863:16;;;18856:33;18960:6;18949:18;;;18936:32;18984:16;;18977:34;17597:1420::o;19022:370::-;19086:3;19130:5;19124:12;19157:4;19152:3;19145:17;19183:47;19224:4;19219:3;19215:14;19201:12;19183:47;:::i;:::-;19171:59;;19278:4;19271:5;19267:16;19261:23;19326:3;19320:4;19316:14;19309:4;19304:3;19300:14;19293:38;19347:39;19381:4;19365:14;19347:39;:::i;:::-;19340:46;19022:370;-1:-1:-1;;;;;19022:370:185:o;19397:455::-;19497:5;19484:19;19535:4;19526:7;19522:18;19571:2;19562:7;19559:15;19549:43;;19588:1;19585;19578:12;19549:43;19601:15;;-1:-1:-1;19685:4:185;19674:16;;;19661:30;19707:14;;;19700:31;19800:4;19789:16;;;19776:30;19822:14;;19815:31;19397:455::o;19857:266::-;19945:6;19940:3;19933:19;19997:6;19990:5;19983:4;19978:3;19974:14;19961:43;-1:-1:-1;20049:1:185;20024:16;;;20042:4;20020:27;;;20013:38;;;;20105:2;20084:15;;;-1:-1:-1;;20080:29:185;20071:39;;;20067:50;;19857:266::o;20128:1859::-;20747:20;;20776:24;;20863:4;20851:17;;;20838:31;20816:20;;;20809:61;20696:4;20879:82;20955:4;20940:20;;;;20921:17;;20879:82;:::i;:::-;21031:6;21019:19;;;21006:33;21055:22;;;21048:39;21124:3;21118;21103:19;;21096:32;;;21151:68;;21199:19;;21191:6;21151:68;:::i;:::-;21256:22;;;21250:3;21235:19;;21228:51;21335:22;;;21413:6;;21385:4;21373:17;21325:1;;21447:212;21461:6;21458:1;21455:13;21447:212;;;-1:-1:-1;;;;;21526:26:185;21545:6;21526:26;:::i;:::-;21522:52;21510:65;;21604:4;21632:17;;;;21595:14;;;;21483:1;21476:9;21447:212;;;-1:-1:-1;21687:65:185;;-1:-1:-1;21747:3:185;21732:19;;21724:6;21687:65;:::i;:::-;21798:9;21793:3;21789:19;21783:3;21772:9;21768:19;21761:48;21826:46;21868:3;21860:6;21852;21826:46;:::i;:::-;21818:54;;;;21881:44;21920:3;21909:9;21905:19;21897:6;798:13;791:21;779:34;;728:91;21881:44;-1:-1:-1;;;;;10649:31:185;;21976:3;21961:19;;10637:44;20128:1859;;;;;;;;;;;;:::o;21992:184::-;22062:6;22115:2;22103:9;22094:7;22090:23;22086:32;22083:52;;;22131:1;22128;22121:12;22083:52;-1:-1:-1;22154:16:185;;21992:184;-1:-1:-1;21992:184:185:o;22567:352::-;-1:-1:-1;;;;;22671:25:185;22690:5;22671:25;:::i;:::-;22667:51;22655:64;;22788:4;22777:16;;;22764:30;22810:14;;;22803:31;22843:70;22907:4;22898:14;;;;22880:16;;22843:70;:::i;:::-;22567:352;;:::o;22924:717::-;23222:2;23234:21;;;23207:18;;23290:22;;;23174:4;23369:6;23343:2;23328:18;;23174:4;23403:212;23417:6;23414:1;23411:13;23403:212;;;23466:65;23527:3;23519:6;23466:65;:::i;:::-;23560:4;23588:17;;;;23551:14;;;;;23439:1;23432:9;23403:212;;23862:322;24094:3;24079:19;;24107:71;24083:9;24160:6;24107:71;:::i;24189:723::-;24303:19;;24331:20;;24420:4;24409:16;;;24396:30;24442:14;;;24435:31;24535:4;24524:16;;;24511:30;24557:14;;;24550:31;24650:4;24639:16;;;24626:30;24672:14;;;24665:31;24765:4;24754:16;;;24741:30;24787:14;;;24780:31;-1:-1:-1;;;;;24847:36:185;24893:3;24866:16;;24847:36;:::i;:::-;24843:62;24836:4;24831:3;24827:14;24820:86;24189:723;;:::o;24917:549::-;25016:5;25023:6;25083:3;25070:17;25169:2;25165:7;25154:8;25138:14;25134:29;25130:43;25110:18;25106:68;25096:96;;25188:1;25185;25178:12;25096:96;25216:33;;25320:4;25307:18;;;-1:-1:-1;25268:21:185;;-1:-1:-1;;;;;;25337:30:185;;25334:50;;;25380:1;25377;25370:12;25334:50;25434:6;25431:1;25427:14;25411;25407:35;25400:5;25396:47;25393:67;;;25456:1;25453;25446:12;25471:587;25600:6;25595:3;25588:19;25632:4;25627:3;25623:14;25616:21;;25570:3;25660:5;25683:1;25693:340;25707:6;25704:1;25701:13;25693:340;;;-1:-1:-1;;;;;25772:26:185;25791:6;25772:26;:::i;:::-;25768:52;25756:65;;25899:4;25887:17;;;25874:31;25925:14;;;25918:31;25978:4;25969:14;;;;26006:17;;;;25729:1;25722:9;25693:340;;;-1:-1:-1;26049:3:185;;25471:587;-1:-1:-1;;;;25471:587:185:o;26063:548::-;26156:5;26163:6;26223:3;26210:17;26309:2;26305:7;26294:8;26278:14;26274:29;26270:43;26250:18;26246:68;26236:96;;26328:1;26325;26318:12;26236:96;26356:33;;26460:4;26447:18;;;-1:-1:-1;26408:21:185;;-1:-1:-1;;;;;;26477:30:185;;26474:50;;;26520:1;26517;26510:12;26474:50;26579:6;26571;26567:19;26551:14;26547:40;26540:5;26536:52;26533:72;;;26601:1;26598;26591:12;26616:446;26739:6;26734:3;26727:19;26771:4;26766:3;26762:14;26755:21;;26709:3;26799:5;26822:1;26832:205;26846:6;26843:1;26840:13;26832:205;;;26895:54;26945:3;26937:6;26895:54;:::i;:::-;26978:6;26969:16;;;;27008:19;;;;;26868:1;26861:9;26832:205;;27067:306;27148:5;27207:3;27194:17;27293:2;27289:7;27278:8;27262:14;27258:29;27254:43;27234:18;27230:68;27220:96;;27312:1;27309;27302:12;27220:96;27334:33;;;;27067:306;-1:-1:-1;;27067:306:185:o;27378:500::-;27436:5;27443:6;27503:3;27490:17;27589:2;27585:7;27574:8;27558:14;27554:29;27550:43;27530:18;27526:68;27516:96;;27608:1;27605;27598:12;27516:96;27636:33;;27740:4;27727:18;;;-1:-1:-1;27688:21:185;;-1:-1:-1;;;;;;27757:30:185;;27754:50;;;27800:1;27797;27790:12;27754:50;27847:6;27831:14;27827:27;27820:5;27816:39;27813:59;;;27868:1;27865;27858:12;27883:519;27956:3;28008:44;28046:5;28039;28008:44;:::i;:::-;28073:4;28068:3;28061:17;28099:69;28162:4;28157:3;28153:14;28139:12;28125;28099:69;:::i;:::-;28087:81;;;28215:55;28264:4;28257:5;28253:16;28246:5;28215:55;:::i;:::-;28312:3;28306:4;28302:14;28295:4;28290:3;28286:14;28279:38;28333:63;28391:4;28375:14;28359;28333:63;:::i;:::-;28326:70;27883:519;-1:-1:-1;;;;;;27883:519:185:o;28407:725::-;28491:5;28485:12;28480:3;28473:25;28547:4;28540:5;28536:16;28530:23;28523:4;28518:3;28514:14;28507:47;28615:10;28607:4;28600:5;28596:16;28590:23;28586:40;28579:4;28574:3;28570:14;28563:64;28705:1;28701;28696:3;28692:11;28688:19;28680:4;28673:5;28669:16;28663:23;28659:49;28652:4;28647:3;28643:14;28636:73;28787:1;28783;28778:3;28774:11;28770:19;28762:4;28755:5;28751:16;28745:23;28741:49;28734:4;28729:3;28725:14;28718:73;28837:4;28830:5;28826:16;28820:23;28852:48;28894:4;28889:3;28885:14;28871:12;-1:-1:-1;;;;;10649:31:185;10637:44;;10583:104;28852:48;;28948:4;28941:5;28937:16;28931:23;28963:50;29007:4;29002:3;28998:14;28982;-1:-1:-1;;;;;10649:31:185;10637:44;;10583:104;28963:50;;29061:4;29054:5;29050:16;29044:23;29076:50;29120:4;29115:3;29111:14;29095;-1:-1:-1;;;;;10649:31:185;10637:44;;10583:104;29076:50;;28407:725;;:::o;29137:2180::-;29452:3;29434:22;;;29497:20;;29533:19;;;29526:34;29630:4;29618:17;;29605:31;29667:3;29652:19;;29645:36;29415:4;29690:82;29767:3;29752:19;;29745:4;29733:17;;29690:82;:::i;:::-;29815:100;29907:6;29899;29895:19;29887:6;29815:100;:::i;:::-;29952:6;29946:3;29935:9;29931:19;29924:35;29982:115;30092:3;30081:9;30077:19;30063:12;30049;29982:115;:::i;:::-;29968:129;;;30144:91;30230:3;30222:6;30218:16;30210:6;30144:91;:::i;:::-;30276:22;;;-1:-1:-1;;30272:37:185;30266:3;30251:19;;30244:66;30333:100;30280:6;30410:14;30394;30333:100;:::i;:::-;30319:114;;;;30464:79;30538:3;30530:6;30526:16;30518:6;30464:79;:::i;:::-;30584:22;;;-1:-1:-1;;30580:37:185;30574:3;30559:19;;30552:66;30641:72;30588:6;30690:14;30641:72;:::i;:::-;30627:86;;;30760:56;30811:3;30803:6;30799:16;30791:6;30760:56;:::i;:::-;30857:22;;;-1:-1:-1;;30853:37:185;30847:3;30832:19;;30825:66;30914:65;30861:6;30956:14;30940;30914:65;:::i;:::-;30900:79;;;;31026:59;31077:6;31069;31065:19;31057:6;31026:59;:::i;:::-;31126:22;;;-1:-1:-1;;31122:37:185;31116:3;31101:19;;31094:66;31177:65;31130:6;31219:14;31203;31177:65;:::i;:::-;31169:73;;;;;31251:60;31305:4;31294:9;31290:20;31282:6;31251:60;:::i;31999:995::-;-1:-1:-1;;;;;32468:32:185;;;32450:51;;32537:32;;32532:2;32517:18;;32510:60;32437:3;32422:19;;32579:53;32628:2;32613:18;;32605:6;31919:12;;31907:25;;31981:4;31970:16;;;31964:23;31948:14;;31941:47;31846:148;32579:53;32669:13;;32663:3;32648:19;;32641:42;32738:2;32726:15;;;32720:22;32714:3;32699:19;;32692:51;32798:2;32786:15;;32780:22;32774:3;32759:19;;32752:51;32858:4;32846:17;;32840:24;32834:3;32819:19;;32812:53;31919:12;;32923:3;32908:19;;31907:25;31970:16;;31964:23;31948:14;;;31941:47;32979:6;32972:14;32965:22;32959:3;32948:9;32944:19;32937:51;31999:995;;;;;;;;;:::o;33420:446::-;33473:3;33511:5;33505:12;33538:6;33533:3;33526:19;33570:4;33565:3;33561:14;33554:21;;33609:4;33602:5;33598:16;33632:1;33642:199;33656:6;33653:1;33650:13;33642:199;;;33721:13;;-1:-1:-1;;;;;33717:39:185;33705:52;;33786:4;33777:14;;;;33814:17;;;;33753:1;33671:9;33642:199;;33871:658;34222:6;34211:9;34204:25;34265:3;34260:2;34249:9;34245:18;34238:31;34185:4;34292:68;34355:3;34344:9;34340:19;34332:6;34292:68;:::i;:::-;34408:9;34400:6;34396:22;34391:2;34380:9;34376:18;34369:50;34436:44;34473:6;34465;34436:44;:::i;:::-;34428:52;;;34516:6;34511:2;34500:9;34496:18;34489:34;33871:658;;;;;;;:::o;34534:585::-;34857:6;34846:9;34839:25;34900:2;34895;34884:9;34880:18;34873:30;34820:4;34926:67;34989:2;34978:9;34974:18;34966:6;34926:67;:::i;:::-;35041:9;35033:6;35029:22;35024:2;35013:9;35009:18;35002:50;35069:44;35106:6;35098;35069:44;:::i;35453:858::-;-1:-1:-1;;;;;35781:32:185;;35763:51;;35751:2;35845;35830:18;;;35823:30;;;35902:13;;35736:18;;;35924:22;;;35703:4;;36004:15;;;;35977:3;35962:19;;;35703:4;36047:169;36061:6;36058:1;36055:13;36047:169;;;36122:13;;36110:26;;36165:2;36191:15;;;;36156:12;;;;36083:1;36076:9;36047:169;;;-1:-1:-1;;;;;;;36272:32:185;;;;36267:2;36252:18;;;;36245:60;;;;-1:-1:-1;36233:3:185;;35453:858;-1:-1:-1;;;35453:858:185:o;36940:380::-;37019:1;37015:12;;;;37062;;;37083:61;;37137:4;37129:6;37125:17;37115:27;;37083:61;37190:2;37182:6;37179:14;37159:18;37156:38;37153:161;;37236:10;37231:3;37227:20;37224:1;37217:31;37271:4;37268:1;37261:15;37299:4;37296:1;37289:15","linkReferences":{"src/core/libraries/rollup/AttesterExitExtLib.sol":{"AttesterExitExtLib":[{"start":2078,"length":20},{"start":2335,"length":20},{"start":2519,"length":20},{"start":4356,"length":20}]},"src/core/libraries/rollup/EpochProofExtLib.sol":{"EpochProofExtLib":[{"start":2611,"length":20}]},"src/core/libraries/rollup/RewardExtLib.sol":{"RewardExtLib":[{"start":1954,"length":20},{"start":2206,"length":20},{"start":2440,"length":20},{"start":3514,"length":20},{"start":3581,"length":20},{"start":3972,"length":20},{"start":4081,"length":20},{"start":4301,"length":20},{"start":4426,"length":20}]},"src/core/libraries/rollup/RollupOperationsExtLib.sol":{"RollupOperationsExtLib":[{"start":1553,"length":20},{"start":3420,"length":20}]},"src/core/libraries/rollup/ValidatorOperationsExtLib.sol":{"ValidatorOperationsExtLib":[{"start":1316,"length":20},{"start":1432,"length":20},{"start":1699,"length":20},{"start":1811,"length":20},{"start":2010,"length":20},{"start":2256,"length":20},{"start":2398,"length":20},{"start":3172,"length":20},{"start":3221,"length":20},{"start":3630,"length":20},{"start":3741,"length":20},{"start":3836,"length":20},{"start":4179,"length":20},{"start":4215,"length":20},{"start":4483,"length":20},{"start":4563,"length":20},{"start":4682,"length":20}]}},"immutableReferences":{"53365":[{"start":4855,"length":32}],"53368":[{"start":4899,"length":32}],"66775":[{"start":910,"length":32}],"66777":[{"start":2717,"length":32}],"66779":[{"start":2755,"length":32}],"66781":[{"start":2793,"length":32}],"66784":[{"start":2837,"length":32},{"start":3931,"length":32},{"start":4117,"length":32}],"66787":[{"start":2884,"length":32}],"66790":[{"start":2931,"length":32}],"66793":[{"start":1605,"length":32},{"start":2978,"length":32}],"66796":[{"start":3025,"length":32}]}},"methodIdentifiers":{"L1_BLOCK_AT_GENESIS()":"79ed8ead","cancelSetSlasher()":"2eb5af0a","checkBlob()":"7468582f","checkpointRandao()":"c2cac49d","claimProverRewards(address,uint256[])":"d768df6e","claimSequencerRewards(address)":"c7523d79","deposit(address,address,(uint256,uint256),(uint256,uint256,uint256,uint256),(uint256,uint256),bool)":"6902c67b","eip712Domain()":"84b0196e","finalizeSetSlasher()":"10a2aa55","finalizeWithdraw(address)":"f85494de","flushEntryQueue()":"1d934975","flushEntryQueue(uint256)":"e199c059","getActiveAttesterCount()":"90a3b386","getEntryQueueFlushSize()":"10073ff0","initiateWithdraw(address,address)":"ee3b8dc2","initiateWithdrawByAttester(address)":"e6208d15","initiateWithdrawByAttesterBatch((address,uint256,(uint8,bytes32,bytes32))[])":"5c8a32f6","initiateWithdrawByAttesterBatchUpToLimit((address,uint256,(uint8,bytes32,bytes32))[])":"214c0693","initiateWithdrawByAttesterWithSignature((address,uint256,(uint8,bytes32,bytes32)))":"45e2dc40","invalidateBadAttestation(uint256,(bytes,bytes),address[],uint256)":"ae895581","invalidateInsufficientAttestations(uint256,(bytes,bytes),address[])":"af584dd3","owner()":"8da5cb5b","propose((bytes32,(int256),(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256),uint256),(bytes,bytes),address[],(uint8,bytes32,bytes32),bytes)":"0a883a99","prune()":"9f2b3154","queueSetSlasher(address)":"eb80a094","renounceOwnership()":"715018a6","setEscapeHatch(address)":"48b5de18","setProtocolFeeMargin(uint16)":"ae8655c4","setProtocolFeeRecipient(address)":"e521cb92","setProvingCostPerMana(uint256)":"a2429e88","setRewardConfig((uint32,uint96))":"1b34c564","setSequencerRewardCalculator(address)":"23f4448f","setupEpoch()":"e3380b79","slash(address,uint256)":"02fb4d85","submitEpochRootProof((uint256,uint256,(bytes32,bytes32,bytes32,bytes32,bytes32,address),(address,uint256)[],(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256)[],(bytes,bytes),bytes,bytes))":"5de4c42e","transferOwnership(address)":"f2fde38b","updateL1GasFeeOracle()":"508ac49b","updateManaTarget(uint256)":"e6e28440","updateStakingQueueConfig((uint256,uint256,uint256,uint256,uint256))":"65e50a3e","vote(uint256)":"0121b93f"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"_feeAsset\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_stakingAsset\",\"type\":\"address\"},{\"internalType\":\"contract GSE\",\"name\":\"_gse\",\"type\":\"address\"},{\"internalType\":\"contract IVerifier\",\"name\":\"_epochProofVerifier\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_governance\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"vkTreeRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"protocolContractsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"genesisArchiveRoot\",\"type\":\"bytes32\"}],\"internalType\":\"struct GenesisState\",\"name\":\"_genesisState\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"aztecSlotDuration\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"aztecEpochDuration\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"targetCommitteeSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"lagInEpochsForValidatorSet\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"lagInEpochsForRandao\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"aztecProofSubmissionEpochs\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"slashingQuorum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"slashingRoundSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"slashingLifetimeInRounds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"slashingExecutionDelayInRounds\",\"type\":\"uint256\"},{\"internalType\":\"uint256[3]\",\"name\":\"slashAmounts\",\"type\":\"uint256[3]\"},{\"internalType\":\"uint256\",\"name\":\"slashingOffsetInRounds\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"slasherEnabled\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"slashingVetoer\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"slashingDisableDuration\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"manaTarget\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"exitDelaySeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"version\",\"type\":\"uint32\"},{\"internalType\":\"EthValue\",\"name\":\"provingCostPerMana\",\"type\":\"uint256\"},{\"internalType\":\"EthPerFeeAssetE12\",\"name\":\"initialEthPerFeeAsset\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"contract IRewardDistributor\",\"name\":\"rewardDistributor\",\"type\":\"address\"},{\"internalType\":\"Bps\",\"name\":\"sequencerBps\",\"type\":\"uint32\"},{\"internalType\":\"contract IBoosterCore\",\"name\":\"booster\",\"type\":\"address\"},{\"internalType\":\"uint96\",\"name\":\"checkpointReward\",\"type\":\"uint96\"}],\"internalType\":\"struct RewardConfig\",\"name\":\"rewardConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"increment\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"maxScore\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"a\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"minimum\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"k\",\"type\":\"uint32\"}],\"internalType\":\"struct RewardBoostConfig\",\"name\":\"rewardBoostConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"bootstrapValidatorSetSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"bootstrapFlushSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"normalFlushSizeMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"normalFlushSizeQuotient\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxQueueFlushSize\",\"type\":\"uint256\"}],\"internalType\":\"struct StakingQueueConfig\",\"name\":\"stakingQueueConfig\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"localEjectionThreshold\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"ethereumSlotDuration\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"sequencerRewardCalculator\",\"type\":\"address\"}],\"internalType\":\"struct RollupConfigInput\",\"name\":\"_config\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minimum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maximum\",\"type\":\"uint256\"}],\"name\":\"FeeLib__InvalidInitialEthPerFeeAsset\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"maximum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"}],\"name\":\"FeeLib__InvalidManaLimit\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"minimum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"}],\"name\":\"FeeLib__InvalidManaTarget\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maximum\",\"type\":\"uint256\"}],\"name\":\"FeeLib__ProvingCostAboveCeiling\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minimum\",\"type\":\"uint256\"}],\"name\":\"FeeLib__ProvingCostBelowFloor\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidShortString\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"OwnableInvalidOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"OwnableUnauthorizedAccount\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"name\":\"Rollup__FieldElementOutOfRange\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"minimum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"}],\"name\":\"Rollup__InvalidProofSubmissionEpochs\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"bits\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"SafeCastOverflowedUintDowncast\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bootstrapFlushSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxQueueFlushSize\",\"type\":\"uint256\"}],\"name\":\"Staking__BootstrapFlushSizeAboveMax\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"exitDelaySeconds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"slasherExecutionDelay\",\"type\":\"uint256\"}],\"name\":\"Staking__ExitDelayAboveSlasherDelay\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Staking__InvalidBootstrapFlushSize\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Staking__InvalidMaxQueueFlushSize\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Staking__InvalidNormalFlushSizeQuotient\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Staking__InvalidStakingQueueConfig\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"str\",\"type\":\"string\"}],\"name\":\"StringTooLong\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"checkpointNumber\",\"type\":\"uint256\"}],\"name\":\"CheckpointInvalidated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"checkpointNumber\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"archive\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"versionedBlobHashes\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"payloadDigest\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"attestationsHash\",\"type\":\"bytes32\"}],\"name\":\"CheckpointProposed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"withdrawer\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct G1Point\",\"name\":\"publicKeyInG1\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"x1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y1\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct G2Point\",\"name\":\"publicKeyInG2\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct G1Point\",\"name\":\"proofOfPossession\",\"type\":\"tuple\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Deposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"EIP712DomainChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"escapeHatch\",\"type\":\"address\"}],\"name\":\"EscapeHatchSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"withdrawer\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct G1Point\",\"name\":\"publicKeyInG1\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"x1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y1\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct G2Point\",\"name\":\"publicKeyInG2\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct G1Point\",\"name\":\"proofOfPossession\",\"type\":\"tuple\"}],\"name\":\"FailedDeposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"checkpointNumber\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"proverId\",\"type\":\"address\"}],\"name\":\"L2ProofVerified\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"legacySlasher\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"authorizedUntil\",\"type\":\"uint256\"}],\"name\":\"LegacySlasherAuthorized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"manaTarget\",\"type\":\"uint256\"}],\"name\":\"ManaTargetUpdated\",\"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\":\"slasher\",\"type\":\"address\"}],\"name\":\"PendingSlasherCancelled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"slasher\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"readyAt\",\"type\":\"uint256\"}],\"name\":\"PendingSlasherQueued\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"oldBps\",\"type\":\"uint16\"},{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"newBps\",\"type\":\"uint16\"}],\"name\":\"ProtocolFeeMarginUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"oldRecipient\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newRecipient\",\"type\":\"address\"}],\"name\":\"ProtocolFeeRecipientUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"provenCheckpointNumber\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pendingCheckpointNumber\",\"type\":\"uint256\"}],\"name\":\"PrunedPending\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"Bps\",\"name\":\"sequencerBps\",\"type\":\"uint32\"},{\"internalType\":\"uint96\",\"name\":\"checkpointReward\",\"type\":\"uint96\"}],\"indexed\":false,\"internalType\":\"struct MutableRewardConfig\",\"name\":\"rewardConfig\",\"type\":\"tuple\"}],\"name\":\"RewardConfigUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"oldCalculator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newCalculator\",\"type\":\"address\"}],\"name\":\"SequencerRewardCalculatorUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Slashed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldSlasher\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newSlasher\",\"type\":\"address\"}],\"name\":\"SlasherUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"bootstrapValidatorSetSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"bootstrapFlushSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"normalFlushSizeMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"normalFlushSizeQuotient\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxQueueFlushSize\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct StakingQueueConfig\",\"name\":\"config\",\"type\":\"tuple\"}],\"name\":\"StakingQueueConfigUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"withdrawer\",\"type\":\"address\"}],\"name\":\"ValidatorQueued\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"WithdrawFinalized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"WithdrawInitiated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"withdrawer\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"withdrawalId\",\"type\":\"uint256\"}],\"name\":\"WithdrawInitiatedByAttester\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"L1_BLOCK_AT_GENESIS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cancelSetSlasher\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"checkBlob\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"checkpointRandao\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_coinbase\",\"type\":\"address\"},{\"internalType\":\"Epoch[]\",\"name\":\"_epochs\",\"type\":\"uint256[]\"}],\"name\":\"claimProverRewards\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_coinbase\",\"type\":\"address\"}],\"name\":\"claimSequencerRewards\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_attester\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_withdrawer\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\"}],\"internalType\":\"struct G1Point\",\"name\":\"_publicKeyInG1\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"x1\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y0\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y1\",\"type\":\"uint256\"}],\"internalType\":\"struct G2Point\",\"name\":\"_publicKeyInG2\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\"}],\"internalType\":\"struct G1Point\",\"name\":\"_proofOfPossession\",\"type\":\"tuple\"},{\"internalType\":\"bool\",\"name\":\"_moveWithLatestRollup\",\"type\":\"bool\"}],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"eip712Domain\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"fields\",\"type\":\"bytes1\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"version\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"verifyingContract\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"salt\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[]\",\"name\":\"extensions\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"finalizeSetSlasher\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_attester\",\"type\":\"address\"}],\"name\":\"finalizeWithdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"flushEntryQueue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_toAdd\",\"type\":\"uint256\"}],\"name\":\"flushEntryQueue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActiveAttesterCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getEntryQueueFlushSize\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_attester\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_recipient\",\"type\":\"address\"}],\"name\":\"initiateWithdraw\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_attester\",\"type\":\"address\"}],\"name\":\"initiateWithdrawByAttester\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"internalType\":\"struct Signature\",\"name\":\"signature\",\"type\":\"tuple\"}],\"internalType\":\"struct AttesterExitAuthorization[]\",\"name\":\"_authorizations\",\"type\":\"tuple[]\"}],\"name\":\"initiateWithdrawByAttesterBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"internalType\":\"struct Signature\",\"name\":\"signature\",\"type\":\"tuple\"}],\"internalType\":\"struct AttesterExitAuthorization[]\",\"name\":\"_authorizations\",\"type\":\"tuple[]\"}],\"name\":\"initiateWithdrawByAttesterBatchUpToLimit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"exitedCount\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"attester\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"internalType\":\"struct Signature\",\"name\":\"signature\",\"type\":\"tuple\"}],\"internalType\":\"struct AttesterExitAuthorization\",\"name\":\"_authorization\",\"type\":\"tuple\"}],\"name\":\"initiateWithdrawByAttesterWithSignature\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_checkpointNumber\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"bytes\",\"name\":\"signatureIndices\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signaturesOrAddresses\",\"type\":\"bytes\"}],\"internalType\":\"struct CommitteeAttestations\",\"name\":\"_attestations\",\"type\":\"tuple\"},{\"internalType\":\"address[]\",\"name\":\"_committee\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"_invalidIndex\",\"type\":\"uint256\"}],\"name\":\"invalidateBadAttestation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_checkpointNumber\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"bytes\",\"name\":\"signatureIndices\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signaturesOrAddresses\",\"type\":\"bytes\"}],\"internalType\":\"struct CommitteeAttestations\",\"name\":\"_attestations\",\"type\":\"tuple\"},{\"internalType\":\"address[]\",\"name\":\"_committee\",\"type\":\"address[]\"}],\"name\":\"invalidateInsufficientAttestations\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"archive\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"int256\",\"name\":\"feeAssetPriceModifier\",\"type\":\"int256\"}],\"internalType\":\"struct OracleInput\",\"name\":\"oracleInput\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"lastArchiveRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"blockHeadersHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"blobsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"inboxRollingHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"outHash\",\"type\":\"bytes32\"},{\"internalType\":\"Slot\",\"name\":\"slotNumber\",\"type\":\"uint256\"},{\"internalType\":\"Timestamp\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"coinbase\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"feeRecipient\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"uint128\",\"name\":\"feePerDaGas\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"feePerL2Gas\",\"type\":\"uint128\"}],\"internalType\":\"struct GasFees\",\"name\":\"gasFees\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"totalManaUsed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accumulatedFees\",\"type\":\"uint256\"}],\"internalType\":\"struct ProposedHeader\",\"name\":\"header\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"bucketHint\",\"type\":\"uint256\"}],\"internalType\":\"struct ProposeArgs\",\"name\":\"_args\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes\",\"name\":\"signatureIndices\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signaturesOrAddresses\",\"type\":\"bytes\"}],\"internalType\":\"struct CommitteeAttestations\",\"name\":\"_attestations\",\"type\":\"tuple\"},{\"internalType\":\"address[]\",\"name\":\"_signers\",\"type\":\"address[]\"},{\"components\":[{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"internalType\":\"struct Signature\",\"name\":\"_attestationsAndSignersSignature\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"_blobInput\",\"type\":\"bytes\"}],\"name\":\"propose\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"prune\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_slasher\",\"type\":\"address\"}],\"name\":\"queueSetSlasher\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_escapeHatch\",\"type\":\"address\"}],\"name\":\"setEscapeHatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint16\",\"name\":\"_protocolFeeMarginBps\",\"type\":\"uint16\"}],\"name\":\"setProtocolFeeMargin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_recipient\",\"type\":\"address\"}],\"name\":\"setProtocolFeeRecipient\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"EthValue\",\"name\":\"_provingCostPerMana\",\"type\":\"uint256\"}],\"name\":\"setProvingCostPerMana\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"Bps\",\"name\":\"sequencerBps\",\"type\":\"uint32\"},{\"internalType\":\"uint96\",\"name\":\"checkpointReward\",\"type\":\"uint96\"}],\"internalType\":\"struct MutableRewardConfig\",\"name\":\"_config\",\"type\":\"tuple\"}],\"name\":\"setRewardConfig\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_calculator\",\"type\":\"address\"}],\"name\":\"setSequencerRewardCalculator\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setupEpoch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_attester\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"slash\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"previousArchive\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"endArchive\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"outHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"previousInboxRollingHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"endInboxRollingHash\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"proverId\",\"type\":\"address\"}],\"internalType\":\"struct PublicInputArgs\",\"name\":\"args\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"coinbase\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"accumulatedFees\",\"type\":\"uint256\"}],\"internalType\":\"struct ProvenCheckpointFees[]\",\"name\":\"provenCheckpointFees\",\"type\":\"tuple[]\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"lastArchiveRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"blockHeadersHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"blobsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"inboxRollingHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"outHash\",\"type\":\"bytes32\"},{\"internalType\":\"Slot\",\"name\":\"slotNumber\",\"type\":\"uint256\"},{\"internalType\":\"Timestamp\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"coinbase\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"feeRecipient\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"uint128\",\"name\":\"feePerDaGas\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"feePerL2Gas\",\"type\":\"uint128\"}],\"internalType\":\"struct GasFees\",\"name\":\"gasFees\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"totalManaUsed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accumulatedFees\",\"type\":\"uint256\"}],\"internalType\":\"struct ProposedHeader[]\",\"name\":\"headers\",\"type\":\"tuple[]\"},{\"components\":[{\"internalType\":\"bytes\",\"name\":\"signatureIndices\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"signaturesOrAddresses\",\"type\":\"bytes\"}],\"internalType\":\"struct CommitteeAttestations\",\"name\":\"attestations\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"blobInputs\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"proof\",\"type\":\"bytes\"}],\"internalType\":\"struct SubmitEpochRootProofArgs\",\"name\":\"_args\",\"type\":\"tuple\"}],\"name\":\"submitEpochRootProof\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"updateL1GasFeeOracle\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_manaTarget\",\"type\":\"uint256\"}],\"name\":\"updateManaTarget\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"bootstrapValidatorSetSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"bootstrapFlushSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"normalFlushSizeMin\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"normalFlushSizeQuotient\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxQueueFlushSize\",\"type\":\"uint256\"}],\"internalType\":\"struct StakingQueueConfig\",\"name\":\"_config\",\"type\":\"tuple\"}],\"name\":\"updateStakingQueueConfig\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"vote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"Aztec Labs\",\"details\":\"This is the main contract in the Aztec system that handles: - Checkpoint proposals from sequencers/proposers - Epoch proof submission and verification - Chain pruning and invalidation mechanisms - Validator and committee management - Fee collection and reward distribution The rollup operates on a time-based model: - Time is divided into slots (configurable duration, e.g., 12 seconds) - Slots are grouped into epochs (configurable size, e.g., 32 slots) - Each slot has one designated proposer from the validator set - Each checkpoint is expected to include attestations from committee members - There is one committee per epoch Key invariants: - The L2 chain is linear (no forks) but can be rolled back - New checkpoints must build on the state of the current pending checkpoint - Checkpoints with invalid attestations can be removed via the invalidation mechanism - Unproven checkpoints are pruned if no proof is submitted in timeDue to contract size limitations, not all functionality can be implemented in a single contract, so features are split across multiple ExtRollup external libraries.System Roles 1) Validators: Node operators who have staked the staking asset and actively participate in checkpoint building. They form the pool from which committee members and proposers are selected. 2) Committee Members: Drafted from the validator set and remain stable throughout an epoch. A checkpoint requires >2/3rds of the committee for the epoch to be considered valid. These attestations serve two purposes: - Attest to data availability for transaction data not posted on L1, which is required by provers to generate epoch proofs - Re-execute everything and attest to the resulting state root, acting as training wheels for the public part of the system (proving systems used in public and AVM) 3) Proposers: Drafted from the validator set (currently proposers are part of the committee for the epoch, though this may change). They have exclusive rights to propose a checkpoint at a given slot, ensuring orderly checkpoint production without competition. 4) Provers: Generate validity proofs for the state transitions of checkpoints in an epoch. No need to stake to be a prover. They have access to large amounts of compute.Checkpoint Building Flow Relevant functions: - `propose`: Called by the proposer to submit a new checkpoint - `submitEpochRootProof`: Called by the prover to submit a proof of the epoch's state transitions - `invalidateBadAttestation`: Called to remove checkpoints with invalid attestations - `invalidateInsufficientAttestations`: Called to remove checkpoints with insufficient valid attestations - `prune`: Called to remove unproven checkpoints after the proof submission window has expired - `setupEpoch`: Called to initialize the validator selection for the next epoch The checkpoint building flow is as follows: - At each L2 slot a single proposer is chosen from the validator set who assembles a checkpoint that: - Builds on top of the last pending checkpoint (tips.pending) in the rollup - Includes state transitions, messages, and fee calculations - Is attested by >2/3 of the committee members - The checkpoint is posted to L1 via the `propose` function - The pending chain tip advances to the new checkpoint - State is updated (message trees, archives, etc.) - After the epoch has ended, a prover generates a proof of the valid state transition for a prefix of checkpoints in the epoch - Most often the prefix will be all the checkpoints, but \\\"partial epochs\\\" can also be proven for faster message transmission - The proof is submitted via `submitEpochRootProof` and must be submitted within the configured proof submission window - Upon successful proof submission the proven chain tip advances to the last checkpoint in the proven prefix if it is past the current proven tip, otherwise the tip remain unchanged - It is possible to submit multiple proofs for the same epoch (or prefixes of it) - Provers of longest prefix shares the proving rewards - Proving a checkpoint makes it finalized from the perspective of L1 - This triggers reward and fee accounting for the sequencers and provers of the epoch - And pushes messages to the outbox for L1 processing Unhappy path for invalid attestations: - Attestations in checkpoints are not validated onchain to save gas. Since attestations are still posted to L1, nodes are expected to verify them offchain, and skip a checkpoint if its attestations are invalid. - If a checkpoint has invalid attestation signatures, anyone can call `invalidateBadAttestation()` - If a checkpoint has insufficient valid attestations (<= 2/3 of committee), anyone can call `invalidateInsufficientAttestations()` - While anyone can call invalidation functions, it is expected that the next proposer will do so, and if they fail to do so, then other committee members do, and if they fail to do so, then any validator will do so. - Upon invalidation, the invalid checkpoint and all subsequent checkpoints are removed from the chain, so the pending chain tip reverts to the checkpoint immediately before the invalid one. - Note that only unproven checkpoints can be invalidated, as proven checkpoints are final and cannot be reverted. Unhappy path for missing proofs: - Each epoch has a proof submission window (configured via aztecProofSubmissionEpochs). - If no proof is submitted within the window, it is assumed that the epoch cannot be proven due to missing data, so the entire pending chain all the way back to the last proven checkpoint is pruned. This is done by calling `prune()` manually, or automatically on the next proposal. - The committee for the epoch is expected to disseminate transaction data to allow proving, so a prune is considered a slashable offense, that causes validators to vote for slashing the committee of the unproven epoch. - When the pending chain is pruned, all unproven checkpoints are removed from the pending chain, and the chain resumes from the last proven checkpoint.Slashing Mechanism Slashing is a critical security mechanism that penalizes validators who misbehave or fail to fulfill their duties. Slashing occurs for both safety violations (e.g., invalid attestations) and liveness failures (e.g., missing proofs). The slashing process is governance-based and operates through a signalling mechanism: - When nodes detect validator misbehavior, they create a payload for slashing the offending validators - The payload is submitted to the SlashingProposer contract, which keeps track of signalling rounds - Each checkpoint proposer signals on a slashing payload during their assigned slot - If the payload receives sufficient signals (reaches the configured quorum) within a round, it may be submitted for execution by the Slasher after a configured delay. - The Slasher has a Vetoer specified in the constructor, which can veto the payload if it is deemed to be invalid. - Once submitted to the Slasher, if the payload is not Vetoed, the offending validators are slashed, meaning their staked assets are reduced by the slashing amount - If a validator's stake falls below the minimum required amount due to slashing, they are automatically removed from the validator set Conditions that cause nodes to vote for slashing a validator: 1. Validators that fail to fulfill their duties: - Committee members who fail to attest to checkpoints when required 2. Committee members of an unproven epoch where either: - The data for the epoch is not available - The epoch was provable but no proof was submitted 3. Proposers of invalid checkpoints or committee members who attest to checkpoints built on top of invalid ones: - Proposing checkpoints with invalid state transitions - Proposing checkpoints with invalid attestations - Attesting to checkpoints that build upon known invalid checkpoints (e.g. invalid attestations) - This ensures the integrity of the chain by penalizing those who contribute to invalid checkpoints\",\"errors\":{\"OwnableInvalidOwner(address)\":[{\"details\":\"The owner is not a valid owner account. (eg. `address(0)`)\"}],\"OwnableUnauthorizedAccount(address)\":[{\"details\":\"The caller account is not authorized to perform an operation.\"}],\"SafeCastOverflowedUintDowncast(uint8,uint256)\":[{\"details\":\"Value doesn't fit in an uint of `bits` size.\"}]},\"events\":{\"EIP712DomainChanged()\":{\"details\":\"MAY be emitted to signal that the domain could have changed.\"}},\"kind\":\"dev\",\"methods\":{\"checkpointRandao()\":{\"details\":\"Can be called by anyone. Takes a snapshot of the current randao to ensure unpredictable but deterministic validator selection. Automatically called from setupEpoch. Can be used as a cheaper alternative to `setupEpoch` to update the randao checkpoints.\"},\"claimProverRewards(address,uint256[])\":{\"details\":\"Provers earn rewards for successfully proving epoch transitions. Each epoch can only be claimed once per prover.\",\"params\":{\"_coinbase\":\"The address that has accumulated the rewards - rewards are sent to this address\",\"_epochs\":\"Array of epochs to claim rewards for\"},\"returns\":{\"_0\":\"The total amount of rewards claimed\"}},\"claimSequencerRewards(address)\":{\"details\":\"Transfers all accumulated rewards to the recipient.\",\"params\":{\"_coinbase\":\"The address that has accumulated the rewards - rewards are sent to this address\"},\"returns\":{\"_0\":\"The amount of rewards claimed\"}},\"constructor\":{\"details\":\"Sets up time parameters, deploys auxiliary contracts (slasher, reward booster), initializes staking, validator selection, and creates inbox/outbox contracts\",\"params\":{\"_config\":\"Comprehensive configuration including timing, staking, slashing, reward parameters, and unlock timestamp\",\"_epochProofVerifier\":\"The honk verifier contract for root epoch proofs\",\"_feeAsset\":\"The ERC20 token used for transaction fees\",\"_genesisState\":\"Initial state containing VK tree root, protocol contracts hash, and genesis archive\",\"_governance\":\"The address with owner privileges\",\"_gse\":\"The Governance Staking Escrow contract\",\"_stakingAsset\":\"The ERC20 token used for validator staking\"}},\"deposit(address,address,(uint256,uint256),(uint256,uint256,uint256,uint256),(uint256,uint256),bool)\":{\"details\":\"The caller must have approved the staking asset. Validators enter a queue before becoming active.\",\"params\":{\"_attester\":\"The address that will act as the validator (sign attestations)\",\"_moveWithLatestRollup\":\"Whether to follow the chain if governance migrates to a new rollup version\",\"_proofOfPossession\":\"The proof of possession to show that the keys in G1 and G2 share secret key\",\"_publicKeyInG1\":\"The G1 point for the BLS public key (used for efficient signature verification in GSE)\",\"_publicKeyInG2\":\"The G2 point for the BLS public key (used for BLS aggregation and pairing operations in GSE)\",\"_withdrawer\":\"The address that can withdraw the stake\"}},\"eip712Domain()\":{\"details\":\"See {IERC-5267}.\"},\"finalizeSetSlasher()\":{\"details\":\"Permissionless: the queued payload and the elapsed delay are the authorization. Anyone may poke the transaction through.\"},\"finalizeWithdraw(address)\":{\"details\":\"Can be called by anyone. Transfers the stake to the designated recipient.\",\"params\":{\"_attester\":\"The validator address whose withdrawal to finalize\"}},\"flushEntryQueue()\":{\"details\":\"Before every deposit the flush requires `StakingLib.getFlushDepositGasFloor` gas to be left (about 1.1M at the default proof-of-possession cap) and reverts with `Staking__InsufficientFlushGas` otherwise. Size the transaction with `eth_estimateGas`, which accounts for this, or leave that much headroom beyond the gas the flush consumes. A limit derived from simulated gas used is not enough for a flush of a few entries.\"},\"flushEntryQueue(uint256)\":{\"details\":\"Can be called by anyone. The number of validators added is limited by queue configuration. This helps maintain a controlled growth rate of the validator set.\",\"params\":{\"_toAdd\":\"- The max number the caller will try to add\"}},\"getActiveAttesterCount()\":{\"details\":\"Active validators can propose checkpoints and participate in committees\",\"returns\":{\"_0\":\"The count of validators in the active set\"}},\"getEntryQueueFlushSize()\":{\"details\":\"Based on queue configuration and current validator set size. Used by flushEntryQueue.\",\"returns\":{\"_0\":\"The number of validators that can be added in the next flush\"}},\"initiateWithdraw(address,address)\":{\"details\":\"Starts the exit delay period. The validator is immediately removed from the active set. Only the registered withdrawer can initiate withdrawal.\",\"params\":{\"_attester\":\"The validator address to withdraw\",\"_recipient\":\"The address to receive the withdrawn stake\"},\"returns\":{\"_0\":\"True if withdrawal was initiated, false if already initiated\"}},\"initiateWithdrawByAttester(address)\":{\"details\":\"The registered withdrawer retains control of the payout recipient.\",\"params\":{\"_attester\":\"The validator position to exit.\"}},\"initiateWithdrawByAttesterBatch((address,uint256,(uint8,bytes32,bytes32))[])\":{\"details\":\"Shared instance and exit-limit checks are performed once for the whole batch.\",\"params\":{\"_authorizations\":\"The signed exit authorizations to execute atomically.\"}},\"initiateWithdrawByAttesterBatchUpToLimit((address,uint256,(uint8,bytes32,bytes32))[])\":{\"details\":\"Processes a prefix of the array and returns zero when no capacity remains.\",\"params\":{\"_authorizations\":\"The ordered signed exit authorizations.\"},\"returns\":{\"exitedCount\":\"The number of authorizations processed from the start of the array.\"}},\"initiateWithdrawByAttesterWithSignature((address,uint256,(uint8,bytes32,bytes32)))\":{\"details\":\"Anyone may relay the authorization. The registered withdrawer retains control of the payout recipient.\",\"params\":{\"_authorization\":\"The attester, deadline, and signature authorizing the exit.\"}},\"invalidateBadAttestation(uint256,(bytes,bytes),address[],uint256)\":{\"details\":\"Anyone can call this if they detect an invalid signature. This removes the checkpoint and all subsequent checkpoints from the pending chain. Used to maintain pending chain integrity.\",\"params\":{\"_attestations\":\"The attestations that were submitted with the checkpoint\",\"_checkpointNumber\":\"The checkpoint number to invalidate\",\"_committee\":\"The committee members for the checkpoint's epoch\",\"_invalidIndex\":\"The index of the invalid signature in the attestations\"}},\"invalidateInsufficientAttestations(uint256,(bytes,bytes),address[])\":{\"details\":\"Anyone can call this if a checkpoint doesn't meet the required attestation threshold. Even if all signatures are valid, checkpoints need a minimum number of attestations.\",\"params\":{\"_attestations\":\"The attestations that were submitted with the checkpoint\",\"_checkpointNumber\":\"The checkpoint number to invalidate\",\"_committee\":\"The committee members for the checkpoint's epoch\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"propose((bytes32,(int256),(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256),uint256),(bytes,bytes),address[],(uint8,bytes32,bytes32),bytes)\":{\"details\":\"Core function for checkpoint production. The attestations must include a signature from designated proposer to be accepted. The checkpoint must build on the previous checkpoint and include valid attestations from committee members. Failed proposals revert; successful ones emit CheckpointProposed and advance the chain state. See ProposeLib#propose for more details.\",\"params\":{\"_args\":\"checkpoint data including header, state updates, oracle inputs, and archive\",\"_attestations\":\"Aggregated signatures from committee members attesting to checkpoint validity\",\"_blobInput\":\"Blob commitment data for data availability (format: [numBlobs][48-byte commitments...])\",\"_signers\":\"Addresses of committee members who signed (must match attestations)\"}},\"prune()\":{\"details\":\"Can only be called after the proof submission window has expired for an epoch. This maintains liveness by preventing the chain from being stuck on unproven checkpoints. Pruning occurs at epoch boundaries and removes all checkpoints in unproven epochs.\"},\"queueSetSlasher(address)\":{\"details\":\"The zero address is permissible. Setting to this would imply that the rollup has at least temporarily relinquished their ability to slash.\",\"params\":{\"_slasher\":\"The address of the new slasher contract\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"setEscapeHatch(address)\":{\"details\":\"Only callable by owner. The escape hatch provides an alternative block production path when the committee is unavailable. Once set, the address is immutable for the life of the rollup -- there is no replacement path. To launch without an escape hatch, simply never call this function.\",\"params\":{\"_escapeHatch\":\"The address of the EscapeHatch contract (must be non-zero)\"}},\"setProtocolFeeMargin(uint16)\":{\"details\":\"Only callable by owner. Increases are rate-limited (30-day cooldown, x3/2 step on the fee multiplier); decreases are immediate. Setting the current value is a no-op and emits no event.\",\"params\":{\"_protocolFeeMarginBps\":\"The new margin in basis points\"}},\"setProtocolFeeRecipient(address)\":{\"details\":\"Only callable by owner. Rejects the zero address.\",\"params\":{\"_recipient\":\"The new protocol fee recipient\"}},\"setProvingCostPerMana(uint256)\":{\"details\":\"Only callable by owner. This affects how proving costs are calculated in the fee model.\",\"params\":{\"_provingCostPerMana\":\"The cost in ETH per unit of mana for proving\"}},\"setRewardConfig((uint32,uint96))\":{\"details\":\"Only callable by the contract owner. The `rewardDistributor` and `booster` addresses are deliberately NOT exposed by this setter -- they are written exactly once at construction by {_initializeRewards} and immutable thereafter. Rotating either address requires redeploying the rollup via `Registry.addRollup`.\",\"params\":{\"_config\":\"The new mutable reward configuration\"}},\"setSequencerRewardCalculator(address)\":{\"details\":\"Only callable by the contract owner. Any address is accepted: zero disables the calculator, and an address that does not answer like an {ISequencerRewardCalculator} makes every checkpoint receive the default sequencer reward. Emits {IRollupCore.SequencerRewardCalculatorUpdated} with the previous and new addresses.\",\"params\":{\"_calculator\":\"The new calculator, or zero for none\"}},\"setupEpoch()\":{\"details\":\"Can be called by anyone at the start of an epoch. Samples the committee and determines proposers for all slots in the epoch. Also stores a seed that is used for future sampling. The corresponding library functionality is automatically called when `RollupCore.propose(...)` is called (via the `RollupOperationsExtLib.propose(...)` -> `ProposeLib.propose(...)` -> `ValidatorSelectionLib.setupEpoch(...)`). If there are missed proposals then setupEpoch does not get called automatically. Since the next committee selection is computed based on the stored randao and the epoch number, failing to update the randao stored will keep the committee predictable longer into the future. We would only fail to get a fresh randao if: 1. All the proposals in the epoch were missed 2. Nobody called setupEpoch on the Rollup contract While an attacker might theoretically benefit from preventing a fresh seed (e.g. by DoSing all proposers), preventing anyone from calling this function directly is not really feasible. This makes attacks on seed generation impractical.\"},\"slash(address,uint256)\":{\"details\":\"Only callable by the authorized slasher contract. Reduces the validator's stake.\",\"params\":{\"_amount\":\"The amount of stake to slash\",\"_attester\":\"The validator to slash\"},\"returns\":{\"_0\":\"True if slashing was successful\"}},\"submitEpochRootProof((uint256,uint256,(bytes32,bytes32,bytes32,bytes32,bytes32,address),(address,uint256)[],(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256)[],(bytes,bytes),bytes,bytes))\":{\"details\":\"Proves the validity of a prefix of the checkpoints in an epoch. Once proven, checkpoints become final and cannot be pruned. The proof must be submitted within the submission window. Successful submission triggers prover rewards.\",\"params\":{\"_args\":\"Contains the epoch range, public inputs, fees, attestations, and the ZK proof\"}},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"updateL1GasFeeOracle()\":{\"details\":\"Automatically called during checkpoint proposal but can be called manually. Updates the fee model's view of L1 costs to ensure accurate L2 fee pricing. Uses current L1 gas price and blob gas price for calculations.\"},\"updateManaTarget(uint256)\":{\"details\":\"Only callable by owner. The new target must be greater than or equal to the current target to avoid the ability for governance to use it directly to kill an old rollup. Mana is the unit of computational work in Aztec.\",\"params\":{\"_manaTarget\":\"The new target mana per slot\"}},\"updateStakingQueueConfig((uint256,uint256,uint256,uint256,uint256))\":{\"details\":\"Only callable by owner. Controls how validators enter the active set.\",\"params\":{\"_config\":\"New configuration including queue size limits and timing parameters\"}},\"vote(uint256)\":{\"details\":\"This enables the rollup to participate in governance by voting on proposals. See StakingLib.sol for more details on the voting mechanism.\",\"params\":{\"_proposalId\":\"The ID of the proposal to vote on\"}}},\"stateVariables\":{\"L1_BLOCK_AT_GENESIS\":{\"details\":\"Used when synching the node as starting block for event watching\"},\"checkBlob\":{\"details\":\"Always true, gets unset only via state overrides during offchain simulations or in tests\"},\"gap\":{\"details\":\"Storage gap to ensure checkBlob is in its own storage slot\"}},\"title\":\"RollupCore\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"L1_BLOCK_AT_GENESIS()\":{\"notice\":\"The L1 block number when this rollup was deployed\"},\"cancelSetSlasher()\":{\"notice\":\"Cancels the pending slasher replacement. Reverts if nothing is pending.\"},\"checkBlob()\":{\"notice\":\"Flag to enable/disable blob verification during simulations\"},\"checkpointRandao()\":{\"notice\":\"Captures the randao for future validator selection\"},\"claimProverRewards(address,uint256[])\":{\"notice\":\"Claims prover rewards for specified epochs\"},\"claimSequencerRewards(address)\":{\"notice\":\"Claims accumulated rewards for a sequencer (checkpoint proposer)\"},\"constructor\":{\"notice\":\"Initializes the Aztec rollup with all required configurations\"},\"deposit(address,address,(uint256,uint256),(uint256,uint256,uint256,uint256),(uint256,uint256),bool)\":{\"notice\":\"Deposits stake to become a validator\"},\"finalizeSetSlasher()\":{\"notice\":\"Applies the pending slasher replacement once the 60-day delay has elapsed.\"},\"finalizeWithdraw(address)\":{\"notice\":\"Completes a withdrawal after the exit delay has passed\"},\"flushEntryQueue()\":{\"notice\":\"Activates queued validators, up to the epoch's flush budget (and `_toAdd` when given)\"},\"flushEntryQueue(uint256)\":{\"notice\":\"Processes the validator entry queue to add new validators to the active set\"},\"getActiveAttesterCount()\":{\"notice\":\"Returns the current number of active validators\"},\"getEntryQueueFlushSize()\":{\"notice\":\"Returns the maximum number of validators that can be added from the entry queue\"},\"initiateWithdraw(address,address)\":{\"notice\":\"Initiates withdrawal of a validator's stake\"},\"initiateWithdrawByAttester(address)\":{\"notice\":\"Initiates withdrawal of a validator's stake by the attester\"},\"initiateWithdrawByAttesterBatch((address,uint256,(uint8,bytes32,bytes32))[])\":{\"notice\":\"Initiates multiple attester withdrawals using EIP-712 authorizations.\"},\"initiateWithdrawByAttesterBatchUpToLimit((address,uint256,(uint8,bytes32,bytes32))[])\":{\"notice\":\"Initiates as many authorized attester withdrawals as the current exit limit permits.\"},\"initiateWithdrawByAttesterWithSignature((address,uint256,(uint8,bytes32,bytes32)))\":{\"notice\":\"Initiates an attester withdrawal using an EIP-712 authorization.\"},\"invalidateBadAttestation(uint256,(bytes,bytes),address[],uint256)\":{\"notice\":\"Invalidates a checkpoint due to a bad attestation signature\"},\"invalidateInsufficientAttestations(uint256,(bytes,bytes),address[])\":{\"notice\":\"Invalidates a checkpoint due to insufficient valid attestations (>2/3 of committee required)\"},\"propose((bytes32,(int256),(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256),uint256),(bytes,bytes),address[],(uint8,bytes32,bytes32),bytes)\":{\"notice\":\"Proposes a new checkpoint to extend the chain\"},\"prune()\":{\"notice\":\"Removes unproven checkpoints from the pending chain\"},\"queueSetSlasher(address)\":{\"notice\":\"Queues a slasher replacement. Takes effect only after a 60-day delay via {finalizeSetSlasher}. Validators who object to the change have time to exit before it lands. Overwrites any pending change, resetting the timer.\"},\"setEscapeHatch(address)\":{\"notice\":\"Sets the escape hatch contract address. One-shot: callable at most once per rollup.\"},\"setProtocolFeeMargin(uint16)\":{\"notice\":\"Updates the protocol fee margin applied on top of operator cost in the mana base fee\"},\"setProtocolFeeRecipient(address)\":{\"notice\":\"Updates the recipient of the protocol fee tranche of the reward waterfall\"},\"setProvingCostPerMana(uint256)\":{\"notice\":\"Updates the cost of proving per unit of mana\"},\"setRewardConfig((uint32,uint96))\":{\"notice\":\"Updates the mutable reward configuration (sequencer/prover split and checkpoint reward).\"},\"setSequencerRewardCalculator(address)\":{\"notice\":\"Replaces the sequencer reward calculator consulted when epoch proofs pay checkpoint rewards\"},\"setupEpoch()\":{\"notice\":\"Sets up validator selection for the current epoch\"},\"slash(address,uint256)\":{\"notice\":\"Slashes a validator's stake for misbehavior\"},\"submitEpochRootProof((uint256,uint256,(bytes32,bytes32,bytes32,bytes32,bytes32,address),(address,uint256)[],(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256)[],(bytes,bytes),bytes,bytes))\":{\"notice\":\"Submits a zero-knowledge proof for an epoch's state transition\"},\"updateL1GasFeeOracle()\":{\"notice\":\"Updates the L1 gas fee oracle with current gas prices\"},\"updateManaTarget(uint256)\":{\"notice\":\"Updates the target mana (computational units) per slot\"},\"updateStakingQueueConfig((uint256,uint256,uint256,uint256,uint256))\":{\"notice\":\"Updates the configuration for the staking entry queue\"},\"vote(uint256)\":{\"notice\":\"Allows the rollup itself to vote on governance proposals\"}},\"notice\":\"Core Aztec rollup contract that manages the L2 blockchain state, validator selection, and proof verification.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/core/RollupCore.sol\":\"RollupCore\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":100},\"remappings\":[\":@aztec-blob-lib/=src/mock/libraries/\",\":@aztec/=src/\",\":@generated/=generated/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@oz/=lib/openzeppelin-contracts/contracts/\",\":@test/=test/\",\":@zkpassport-test/=lib/circuits/src/solidity/test/\",\":@zkpassport/=lib/circuits/src/solidity/src/\",\":circuits/=lib/circuits/src/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":halmos-cheatcodes/=lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\"]},\"sources\":{\"lib/openzeppelin-contracts/contracts/access/Ownable.sol\":{\"keccak256\":\"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6\",\"dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1363.sol\":{\"keccak256\":\"0x9b6b3e7803bc5f2f8cd7ad57db8ac1def61a9930a5a3107df4882e028a9605d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://da62d6be1f5c6edf577f0cb45666a8aa9c2086a4bac87d95d65f02e2f4c36a4b\",\"dweb:/ipfs/QmNkpvBpoCMvX8JwAFNSc5XxJ2q5BXJpL5L1txb4QkqVFF\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol\":{\"keccak256\":\"0xde7e9fd9aee8d4f40772f96bb3b58836cbc6dfc0227014a061947f8821ea9724\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://11fea9f8bc98949ac6709f0c1699db7430d2948137aa94d5a9e95a91f61a710a\",\"dweb:/ipfs/QmQdfRXxQjwP6yn3DVo1GHPpriKNcFghSPi94Z1oKEFUNS\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol\":{\"keccak256\":\"0xce41876e78d1badc0512229b4d14e4daf83bc1003d7f83978d18e0e56f965b9c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a2608291cb038b388d80b79a06b6118a42f7894ff67b7da10ec0dbbf5b2973ba\",\"dweb:/ipfs/QmWohqcBLbcxmA4eGPhZDXe5RYMMEEpFq22nfkaUMvTfw1\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC5267.sol\":{\"keccak256\":\"0x92aa1df62dc3d33f1656d63bede0923e0df0b706ad4137c8b10b0a8fe549fd92\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c5c0f29195ad64cbe556da8e257dac8f05f78c53f90323c0d2accf8e6922d33a\",\"dweb:/ipfs/QmQ61TED8uaCZwcbh8KkgRSsCav7x7HbcGHwHts3U4DmUP\"]},\"lib/openzeppelin-contracts/contracts/proxy/Clones.sol\":{\"keccak256\":\"0x1206c89e10de6977cbeda13f01c7956c1159cf9f8565aa56b8f05f7c838429bf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1d3b3da61df7796a528ec9abfbb63288cf3ac63e3c736407ae4eed2bca018695\",\"dweb:/ipfs/QmYgttRpNJeRgjzL2rwMEHjFuVXABxPGApe5bpmsHtdfjE\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xe06a3f08a987af6ad2e1c1e774405d4fe08f1694b67517438b467cecf0da0ef7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://df6f0c459663c9858b6cba2cda1d14a7d05a985bed6d2de72bd8e78c25ee79db\",\"dweb:/ipfs/QmeTTxZ7qVk9rjEv2R4CpCwdf8UMCcRqDNMvzNxHc3Fnn9\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x4251fed1ac036ad28996501522371736318527d7bf2bf7d66fbd2769d6c4771b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b2df261bd4de240f54c5829faeaf0ffc919a01f1497cf7ffd8a9a544bdec8fca\",\"dweb:/ipfs/Qmb9ndUuv9RZPKJXZGzjVuhmNuoizxuGRn4QMBmdmLcxS3\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12\",\"dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF\"]},\"lib/openzeppelin-contracts/contracts/utils/Create2.sol\":{\"keccak256\":\"0xbb7e8401583d26268ea9103013bcdcd90866a7718bd91105ebd21c9bf11f4f06\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://866a11ad89c93ee918078f7a46ae31e17d89216ce64603f0d34be7ed0a5c520e\",\"dweb:/ipfs/QmW3ckLEJg2v2NzuVLNJFmRuerGSipw6Dzg6ntbmqbAGoC\"]},\"lib/openzeppelin-contracts/contracts/utils/Errors.sol\":{\"keccak256\":\"0x6afa713bfd42cf0f7656efa91201007ac465e42049d7de1d50753a373648c123\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ba1d02f4847670a1b83dec9f7d37f0b0418d6043447b69f3a29a5f9efc547fcf\",\"dweb:/ipfs/QmQ7iH2keLNUKgq2xSWcRmuBE5eZ3F5whYAkAGzCNNoEWB\"]},\"lib/openzeppelin-contracts/contracts/utils/Panic.sol\":{\"keccak256\":\"0xf7fe324703a64fc51702311dc51562d5cb1497734f074e4f483bfb6717572d7a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c6a5ff4f9fd8649b7ee20800b7fa387d3465bd77cf20c2d1068cd5c98e1ed57a\",\"dweb:/ipfs/QmVSaVJf9FXFhdYEYeCEfjMVHrxDh5qL4CGkxdMWpQCrqG\"]},\"lib/openzeppelin-contracts/contracts/utils/ShortStrings.sol\":{\"keccak256\":\"0x7d94fa0af099a2172eb01f9c8a8a443cbe7e0e43654841563e4e09968efdb549\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://65e38fb76b6add407d4557753ae83dd1268e8261195dbe5c19a580d5ba6e4e9a\",\"dweb:/ipfs/QmTkGSJtaQrqjcyWM4AgemeEmKgtDydKPPVRajsUJRQSrK\"]},\"lib/openzeppelin-contracts/contracts/utils/SlotDerivation.sol\":{\"keccak256\":\"0x8447b57b63810fe2e367c09496a966f143ec0e825d71ddb9fce2506cff84b618\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://996cb48f793bf151555045b37138e36b3cdb31d6bc6552d3149285260be00cfb\",\"dweb:/ipfs/QmcLaTTMNVbkMx58xhkp6GeFt4V3GtSyupZuaKG3vYW2Zc\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xcf74f855663ce2ae00ed8352666b7935f6cddea2932fdf2c3ecd30a9b1cd0e97\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9f660b1f351b757dfe01438e59888f31f33ded3afcf5cb5b0d9bf9aa6f320a8b\",\"dweb:/ipfs/QmarDJ5hZEgBtCmmrVzEZWjub9769eD686jmzb2XpSU1cM\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x9e82c00fb176503860139c6bbf593b1a954ee7ff97ab2969656571382b9b58a2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://34b4eb157b44d4441315db65561ba7cf0fe909dc598c2cfd7080d203077d5b57\",\"dweb:/ipfs/QmcNdvK3kDUAUr48urHxoeHd1TqVDya4YfZTM66i4goEJn\"]},\"lib/openzeppelin-contracts/contracts/utils/TransientSlot.sol\":{\"keccak256\":\"0x9303ef5a2beb555e52ce56598de205ce07ca8988fc67d073687c06cb8fc973d1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b2e48fb42844c25e6cb38e7cfa1d91dcdc054613fd10f608833dbc677acf889\",\"dweb:/ipfs/QmT4HQxbgpWA3fZnK4dY3eXHNCoyBvpvzNq5k7eSt5mR5t\"]},\"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol\":{\"keccak256\":\"0x69f54c02b7d81d505910ec198c11ed4c6a728418a868b906b4a0cf29946fda84\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8e25e4bdb7ae1f21d23bfee996e22736fc0ab44cfabedac82a757b1edc5623b9\",\"dweb:/ipfs/QmQdWQvB6JCP9ZMbzi8EvQ1PTETqkcTWrbcVurS7DKpa5n\"]},\"lib/openzeppelin-contracts/contracts/utils/cryptography/EIP712.sol\":{\"keccak256\":\"0x10eb97d047f8d84fe263a02bb4a656ac6674f6679d74532cc37546289e073a9d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e41287d40b0c46982f1083d40d32de2761f009c5c51627fe79a7feb0ab1cf5c\",\"dweb:/ipfs/Qme7dbh6HX3ZvUJdbQAcVqXkmyXyfcLiUZRhhon3cU6K8p\"]},\"lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol\":{\"keccak256\":\"0x4515543bc4c78561f6bea83ecfdfc3dead55bd59858287d682045b11de1ae575\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://60601f91440125727244fffd2ba84da7caafecaae0fd887c7ccfec678e02b61e\",\"dweb:/ipfs/QmZnKPBtVDiQS9Dp8gZ4sa3ZeTrWVfqF7yuUd6Y8hwm1Rs\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621\",\"dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0x2c33f654cefbbe80a9b436b5792cfe8bda2e87f139f110073c99762558db252f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://dc7ebd80046a52f28978cf46a24ff3e4c8568264ab6bb138038951c75d576167\",\"dweb:/ipfs/QmQQjXVr4CbDR3DXd8GHEqn3JSJYTnbBHMJp9tvc29yXrc\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol\":{\"keccak256\":\"0x195533c86d0ef72bcc06456a4f66a9b941f38eb403739b00f21fd7c1abd1ae54\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1d578337048cad08c1c03041cca5978eff5428aa130c781b271ad9e5566e1f8\",\"dweb:/ipfs/QmPFKL2r9CBsMwmUqqdcFPfHZB2qcs9g1HDrPxzWSxomvy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xb1970fac7b64e6c09611e6691791e848d5e3fe410fa5899e7df2e0afd77a99e3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://db5fbb3dddd8b7047465b62575d96231ba8a2774d37fb4737fbf23340fabbb03\",\"dweb:/ipfs/QmVUSvooZKEdEdap619tcJjTLcAuH6QBdZqAzWwnAXZAWJ\"]},\"lib/openzeppelin-contracts/contracts/utils/structs/BitMaps.sol\":{\"keccak256\":\"0x3616f1b0d0a9ee1ca8f0953ecaceb9230e36f691c7974d30f964212acff52d2b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d4bebdd07b31ac28e3e596ac6f0333da90a4e332405aa7d65f3a3a7e0b4cf15e\",\"dweb:/ipfs/QmckoDU5bBnye2UtPcrfJNahLD2FbxrnPP9nrREMWPpnug\"]},\"lib/openzeppelin-contracts/contracts/utils/structs/Checkpoints.sol\":{\"keccak256\":\"0x66364cd3247ea71cdb58f080f5d5ed6732433a8001413139661841535494692f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f87914c6645b58eaf75f00a156037a7da91129f3a56aec44aebfc715b19ea44\",\"dweb:/ipfs/QmNX7NLSMXyWuogvf8wfCwjUGwLhLBZrGktWPSdoHtERGp\"]},\"lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol\":{\"keccak256\":\"0x9b161e97b8967d4bc0c08d25741889a30692cdda4b71910bf1b0e315f1962212\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://821500c39d095eaa25b06f46e65f1d0e97c4c96b39227f79077dee7d9e84051f\",\"dweb:/ipfs/QmSTeGorKzSWF6HAmxo32uCZiEuKNvreQdUiX1AaYtUMTz\"]},\"src/core/RollupCore.sol\":{\"keccak256\":\"0xb721b488eaaf1b5bf5a42bc8c8eb48bbe00f243692c417a37a4c794de509186c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e71cd88eeb2d569af6f82bc94ebeea1125d440437b0bac9ac892289a58366f01\",\"dweb:/ipfs/QmSn73ArQVUy6VKWfxGLhBhBpD7kXkBaMGLwbJALiDNHBs\"]},\"src/core/interfaces/IEscapeHatch.sol\":{\"keccak256\":\"0xdb2f10d2a34d6a7d2bad4d13bcd5fe039aeab3047f6ca163e615e73ba1f87ddc\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://7d565262c0608292d3235a6a9011e8e71212c45a2881635c4aaacdfc4348bddb\",\"dweb:/ipfs/QmUV2MHGfFRR8gDvVtbJfbQ4nSie6PJjkfEatRWQQDHs2f\"]},\"src/core/interfaces/IFeeJuicePortal.sol\":{\"keccak256\":\"0xce84c8907395b4c11cc6dd8035d8e14560153450f9d88340cfb8abb914c66639\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f5eb389f1a6e9adbb2f24dad7a6c0bc706d49decad82ba9b582c288e12eddda6\",\"dweb:/ipfs/QmNM3uQmJYn9B6RAHSMUT3TZMR6R75okjJErUEsuRjxGXt\"]},\"src/core/interfaces/IRollup.sol\":{\"keccak256\":\"0x4885f9bbf279f63143fa0ccd21ce4918fd34eef9ce4ba871c78c22ae6c174f8b\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://c3eac7f06a1db468466f6e977fc204b4106808d0293ca57d336004ed33cc0add\",\"dweb:/ipfs/QmUzzFrVi15V2WRFsgpSmDQBfPUbbA4ochmZD55VhovJBR\"]},\"src/core/interfaces/ISequencerRewardCalculator.sol\":{\"keccak256\":\"0xb7fb4ad1c171762783aecdd5e85036e71990438fc11e1121842b31c431ff0c67\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://15bf6fea8074c7a5f71860b325786d2dd5b625cbfb5b0bd4d0fc4f1a5f566d5a\",\"dweb:/ipfs/QmTH4XovGivVCs4Hp6PT3UVKLrSCPPtv1mmtvUeALVCnAZ\"]},\"src/core/interfaces/ISlasher.sol\":{\"keccak256\":\"0xf7dc3b2795b2806dbec7c94c33665abcf00a35ee65802a47f6222faf8641d302\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://d7c9283746c66f04df5a133145b3196fc176e06e2fe6b3285056ffac68a09e9b\",\"dweb:/ipfs/QmPxTkM1eMNFny3yibc69p1GqWvPkno5fzBjyju89h7CNk\"]},\"src/core/interfaces/IStaking.sol\":{\"keccak256\":\"0xc48108e5590bd25fa67f44dfe602e3f64509cd170c93279185d4fa6c87e8d0c0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1724c0cf4b33aaec9adf6207dc77d97f16fdbc472099b01314458c55e85608fb\",\"dweb:/ipfs/QmctJfzT7zenykjynptbsUiK6a8iQ1USv7iYBs9i9eij5a\"]},\"src/core/interfaces/IValidatorSelection.sol\":{\"keccak256\":\"0xe22dc335f3fd5f5cbf10928fa7e9e945ea8a04fa99362ec6e2022c862d7baca4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e26be09d3c823c545a2252467e13b68d366f3e711e15085be09f565ac436acc9\",\"dweb:/ipfs/QmS1ddcZteAjeojaJJz1ZgRPdynzpNu1HSSPbmEjJNe99G\"]},\"src/core/interfaces/IVerifier.sol\":{\"keccak256\":\"0xf5b6025ff3d59b8922bb45fb05786764e74109b4a349d206b8a7979f46484c55\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://98ec47ac3e15b1d8f2c80854ed6fd83e655e9e96341bb827f3be8e6b47f4c7fb\",\"dweb:/ipfs/QmcmUkLgM7fb7mEaJTiWJWrZTW2kAWtRcYS6imBfmueALe\"]},\"src/core/interfaces/messagebridge/IInbox.sol\":{\"keccak256\":\"0x1149c904c8b3bd2942628fbab5480cdc044e831d51963f9e6946f1974cc162bd\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://af2f1f49feba389b0bdbf427c4a85fac2908699585e5babd75f77cf14416ed5f\",\"dweb:/ipfs/QmZYjZyhicCpTcwPuWTjTTUxnaBnfv5bTMWDgxyDGqy8Gm\"]},\"src/core/interfaces/messagebridge/IOutbox.sol\":{\"keccak256\":\"0xf66d0bb4f6d978acf91a036737cd4326bfab16a4030d10510d2976e4218ed8ad\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e796eea21d552b2ca4d0446bb096e2c980ab84816d9dd1398113293ae8128b30\",\"dweb:/ipfs/QmNuGgRtPFgRe3asa68vDMcWpyfDFqQ5w5j5U7yWD1EsyZ\"]},\"src/core/libraries/ConstantsGen.sol\":{\"keccak256\":\"0xe49740db3cbad2fa2e9949912e5bd6c60f4df7decd75e7c70854d91c32376d6a\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://51e6d2ef7403905632c983aabd5f6cd9c54cf1d69c45bf09ed16756ed7562596\",\"dweb:/ipfs/QmbGu9ehSTAaFgchgStzYqfYnpWkTwynZV6ZPW8aWcGrQC\"]},\"src/core/libraries/DataStructures.sol\":{\"keccak256\":\"0x5ea9d1097f0b53eafbd72332d4c5c517307e5a056266befe5b46f5f43ee3d83c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1a742311dc3c5ead2d5361549f017d20f46c40a4e74e879823ac168cf5b572d4\",\"dweb:/ipfs/QmTNDc1fiPti41QqJTJQoV9uduB6eXaQhbfq1hfVVjVNvS\"]},\"src/core/libraries/Errors.sol\":{\"keccak256\":\"0xeb0e1ac808b43123469f5d8249fa1769549c30e4ae899ae52e1200c43d9c2217\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://886e98c5838765908f0d61a90b02abc834e880fc04fa3155114306943443c2af\",\"dweb:/ipfs/QmboYvMGc4rTpaLbT22LgNvnd4nLmirbMfosAxXyGFV9AA\"]},\"src/core/libraries/HatchMath.sol\":{\"keccak256\":\"0xca787b2889e281c8db132043312aa9513315669782981689824344c910833fe4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://77ec2f6b5919d53d3a7128f6006155f2566a84e7a56cd26e9d5e6d1514ccd7a2\",\"dweb:/ipfs/Qmc3Z2quujEwxQU1JBfrxhkiULaczspBsTMjXibqXCjFyd\"]},\"src/core/libraries/SlashPayloadLib.sol\":{\"keccak256\":\"0xb9322072eea0036dec74a9222a92a7fcb2518db4491764125eedb63f90f9c830\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://7b7ea317d170f1667e921f8957ea1de4452280f5274bfd9391b6efd6db2e64c8\",\"dweb:/ipfs/QmQs5H78G9LxEzHmYNLDqipgVn1n8Txc94Whc4dLbB25u6\"]},\"src/core/libraries/SlashRoundLib.sol\":{\"keccak256\":\"0x6773eea1fa593e5c1e16fcd3a8341b537bf5ed7ee2f10472649dfd542e3ade8e\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://756bdaa3facd4034149eeb3553ae99777b646c3e16abf8d41f9558e74249baa6\",\"dweb:/ipfs/QmNpb62diGKNKf5pcynejjhNex9c6PTkZnVUeuLvJ2qCZ9\"]},\"src/core/libraries/StakingQueue.sol\":{\"keccak256\":\"0xbbeafda1659a92be14ec5b77838952a089f075cc1d0c5f348b6ff336ea6a1a98\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f3c8bdb1de77dab697ef4442f72fa4830c757059f8d948d2f3aeb7f6983aa64f\",\"dweb:/ipfs/QmSDYdTnFo8nx34q3fdJCKpy8DCnKBQ4isxr49o4sY5T6T\"]},\"src/core/libraries/TimeLib.sol\":{\"keccak256\":\"0x865b760fe681ee74a93b49491d897a98091432ebc2923ff17717ddb6d26d31ab\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4ccdfb80464d8e58a95a68314fe2dd33f4a1634ab0695a9a4e9c180a50cc592b\",\"dweb:/ipfs/QmNUUFN7RTjiicZCkci6eEnfromVTPS2MVE4CkbqoneV6P\"]},\"src/core/libraries/compressed-data/CheckpointLog.sol\":{\"keccak256\":\"0x613513b7eb7855ff619c9eb3f1589fcfb0d7675e15c5261034ac353a62c5cabf\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://110e7cc1eae76116a6682a9044cf9031744a7a8c46164987e246923169618d5e\",\"dweb:/ipfs/QmcuhMXiGWjAbYGYYXKrTCLNYguQZpgxpWVWteJezYKVzQ\"]},\"src/core/libraries/compressed-data/StakingQueueConfig.sol\":{\"keccak256\":\"0x32b00fd08e1754d9d9c9b377ae0a0ea887ace519db0ec6d252e1b2216891068e\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4ecea0a1ff8536819d37d3800b2915249b5c854d9dc611e91aae81df6acf7d76\",\"dweb:/ipfs/Qmf3FgXCf1MP78p5B76kQnwx8yXFXncutVzQhV2fteBvVn\"]},\"src/core/libraries/compressed-data/Tips.sol\":{\"keccak256\":\"0xdf872f54470e59b86349871e2c12075e8daaad85894f90e64f92538daf5f4008\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://493e4bc02c6e9acbb5bfaa68f19bf4defb409211b701784e43d2ca6cbc11ccd1\",\"dweb:/ipfs/QmSUahndZ78LBx6WdozXWL6QkqxZXzrXpHna2kGwCqgy34\"]},\"src/core/libraries/compressed-data/fees/FeeConfig.sol\":{\"keccak256\":\"0xd5593d342fd9e75cf10d9c126d5aa46eab6707221111d81757e0f5c3473c23fd\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5cdfdfa94ea9d7b93cb80bdbd9e81c80fc7d71de890d88bb957960d0d5734298\",\"dweb:/ipfs/QmQ2VjHtpja19AxDnGg2Q5hCck678PUrfLDuwUNvcyo4YS\"]},\"src/core/libraries/compressed-data/fees/FeeStructs.sol\":{\"keccak256\":\"0x23304769b5d5098b6d6b1092be483f34c0c901d7e14667404e8c5335dad8b501\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://9ef5000b6a27a338f60dad80f73ea03d6560afc46c063d8d52932574d82cf157\",\"dweb:/ipfs/QmSzdqmERrrCqdfqy4jXhdiyokyNRLvi4qLp85iw8rR9iJ\"]},\"src/core/libraries/crypto/Hash.sol\":{\"keccak256\":\"0x0e2bad615ee34b98ffdc7b81558e78ad3701cf8e02dc0fa4721555b4cdb861cb\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://8f69943a9ad3fba8a12ae34b3d60815c4339ea66a5ec75beb781d22a872c2d4d\",\"dweb:/ipfs/QmTfjRk9vBaxfziFgwYzWgTWFEvbB8EEudkcYupPw6qLXW\"]},\"src/core/libraries/crypto/MerkleLib.sol\":{\"keccak256\":\"0xb41c737e197cf6979d9fde0e4317f5feabb17530b72a191098e4bb802e9bbcc4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f2312f38220afc045e3335e520ab15f34c90a2fbf660faac7f35a36e0a7abe60\",\"dweb:/ipfs/QmcVJdTNtZnej3w4hAcoDHCjPUcLAsVQvcEGWN7N7UwLKz\"]},\"src/core/libraries/crypto/SampleLib.sol\":{\"keccak256\":\"0x59e87e7d6a1e966c0f73bd919825ff7d81dc898625fe9fd20e6786e10b43783e\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://a931d31192faf6d9d9c82fc7099a776b5886d90dd0a2a9ee8093cc680dfdef70\",\"dweb:/ipfs/QmbQjTTf96tr2WSiuoWK8k984dGuXKooZWZ5o9EL7wEPhv\"]},\"src/core/libraries/rollup/AttestationLib.sol\":{\"keccak256\":\"0xf2111c30dc0d6c81d4f990990dfa37813932180e2b94739050356c5942f316e3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://fc4d8c42797fa58646094be9e108a60a278f2c2beea06bd7b06b00933b00c5b9\",\"dweb:/ipfs/QmdNPs36gak9y4YoCQq2ttv1nj8ALyab6f9P7SoozECrfN\"]},\"src/core/libraries/rollup/AttesterExitExtLib.sol\":{\"keccak256\":\"0x8fb7d49566291d6a7ddc8e3eb8193c99a3531f199a6092e5bc9d0340b9933893\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://7b30e850ce2226dfd54b4e29b2889f2cc1f2b4029be703b8aa93db14c569cb04\",\"dweb:/ipfs/QmYcrycdjUp9B4KPHAD8cUmWdc1qjiGMyCuZrBUQiTw9CT\"]},\"src/core/libraries/rollup/BlobLib.sol\":{\"keccak256\":\"0x5b0d454bd38592154954f1da4cc59f50a036d0a28a169401abd9b5fdb88a4fe1\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://68cf3a3fa979a6cfdc618e66621a0233263a83c259b17f6193fb0339796bee9d\",\"dweb:/ipfs/QmcRKQmFf8mZxWKUT7Vgg3LnTxVsCen5f8TnMqCQMGi2j6\"]},\"src/core/libraries/rollup/CoordinationSignatureLib.sol\":{\"keccak256\":\"0x939c2aa29f536822f1f35db30af3b783986612bb35a210c583247f764c39dfae\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://6f5e71fe318f83063eda2027992740e7be7e0274887b4c11ab00ef3199398729\",\"dweb:/ipfs/QmPGkRVfkoLj8bi95vyySrtFeTaUGf62qcWoBy1nZRjZQc\"]},\"src/core/libraries/rollup/EpochProofExtLib.sol\":{\"keccak256\":\"0x448e42586ecb687b7a62afb6b48ddef666b963856aa4af4f2a8c391ade29532b\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://848711298ec768e174750b3dc30167252a98eba8b82ccfc283bff063afdf8434\",\"dweb:/ipfs/QmZBEU7Hk2Xmw8L7bpWLCTw9saDfQuQTVMRnU8A6aAwNms\"]},\"src/core/libraries/rollup/EpochProofLib.sol\":{\"keccak256\":\"0x5e64ec4ed2646b18c30650245a148648cf348b99077f0355452b61e967f28811\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://405f0a75293f577bb1528a2603941baf086e6e5f464aae02d46e0fbf467a9926\",\"dweb:/ipfs/QmSSybtZapD55JC5Ey5SyuyCBqi7MgCS5UBJRKF5KKs5yA\"]},\"src/core/libraries/rollup/FeeLib.sol\":{\"keccak256\":\"0x8542067d8641a712cbcbd1b8f004129d54f31da3edf36463901baad3f53a1fdd\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://72dce5dee233e49f6371433d455a38e21a9c2d4be21f1276ca3b247757e5d6bc\",\"dweb:/ipfs/QmReGPHQLGH1Rbocqrs6BGbvuietB4j151s9L5m3SkJYzk\"]},\"src/core/libraries/rollup/FieldLib.sol\":{\"keccak256\":\"0xd09f77d3aa6d7efc844e99bd496a145171613825bc45d35e1518889098f91e95\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://499d0aeb3c7b6801e49f7554110a194ebeca73bec4ddf4b00ea8dd64fcc4b2ac\",\"dweb:/ipfs/QmQf7EeP4kwTGPR2xfDK2MpNAqqcAY4vWZ3faEKn6JEW8R\"]},\"src/core/libraries/rollup/InvalidateLib.sol\":{\"keccak256\":\"0x2d88d0176cb9c5bcf449b4062d2fb334d7ea124b801bd43eeeb53c5edf1fcd0e\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://0b4fe49115aec50f7113ba8bd20550089fac6569d1ed5e4a7e8189529a4ff82d\",\"dweb:/ipfs/QmQ3GJ53AocunyjaaBRQvsczuGNvp4JV73qksdt8Y55cNx\"]},\"src/core/libraries/rollup/ProposeLib.sol\":{\"keccak256\":\"0x90d4fff721a1bcdbb555aad73a040ac1f0c3a61e286b0f291f47248129d8a777\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://988c7390ba413ae25939df5a9f8850649106627ddf453a60b472e31c32a97156\",\"dweb:/ipfs/QmXNPKm6y3bgTmjfeTMrY4sfBUFT4fLxZsMBBSC13Nt6oy\"]},\"src/core/libraries/rollup/ProposedHeaderLib.sol\":{\"keccak256\":\"0x43a9fa530b7cb948c1d7c436bddafdd8ddd8c022c67e25045372bc68b9e5018c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://904e4aa94b322f68c605dd34ea38bb77343437e2f2203c3e650cf7a7bb3aa19e\",\"dweb:/ipfs/QmX3H4PMwh57L5Zv3LFrHjkNmgVZiik4FmzSyJhnTJcqPD\"]},\"src/core/libraries/rollup/RewardExtLib.sol\":{\"keccak256\":\"0x258e1b7ebfa2c5cecc4d5bcecacfda7e6398b0191a08d6f2a9f775724ab7fd5d\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://9d1d38d938a44dd27419cb656a7726609da2dc074fef9c54e35909d5e304915b\",\"dweb:/ipfs/QmSZ6VVTYYBXQra114KmdZyVXVSh6J8MLKRjwEF9EmE3fp\"]},\"src/core/libraries/rollup/RewardLib.sol\":{\"keccak256\":\"0x3a73a07577c713179be2de8df601445e79c606afb42f74bed33d1000c6f14ff8\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e432e402f6721bf70849ae3d731dcc669abeeb7df8399c878cc946fea0657a1a\",\"dweb:/ipfs/QmYuGKQvN9iFhQpKLo6Rd7oTkMZx6VfdrJFh6tVgLEDg5M\"]},\"src/core/libraries/rollup/RollupOperationsExtLib.sol\":{\"keccak256\":\"0x21451f575ac7e42628576c961ff34072132511a2ec8cf3e794cc397a87553ad6\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5fd0643d9febd79148ceacb0006860b80fabe42aa9ff97faabe5a9a170aef604\",\"dweb:/ipfs/QmXr9Lb7WdCebnVdte2vDZnFNxe6gW8MWY5HuSqtZCtNTE\"]},\"src/core/libraries/rollup/STFLib.sol\":{\"keccak256\":\"0xcb2ae0566bd5b0834f8ec2f73d78037f25d4d65894bff1ab8abcb9f8c65c7bc0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://35689b10ee3d4fff126625efa170fe77c617441fd7902d7376488af5061a79e0\",\"dweb:/ipfs/QmUzDZoMrpJAuhVYVGSruX4mj9jTJmSZncvoTHbsyZL7eM\"]},\"src/core/libraries/rollup/SequencerRewardCalculatorLib.sol\":{\"keccak256\":\"0x2d5e8efc5a87bec1d50a8c9df0696a8248e0905ab62dcd7ec6a51527ad33b604\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://15d4a7d1f265fc1a248762702373534fcae9d85df5150e5e1a45f79b94736ed4\",\"dweb:/ipfs/QmdAT5Aw6JSg5GJnTikfDtJHnJZuMib7L8GB3yQ4jMuiFr\"]},\"src/core/libraries/rollup/SlasherDeploymentExtLib.sol\":{\"keccak256\":\"0x438eef52411afac7db0fbe0a4b976ce50a9b424ed4fe262ace0d19f724e9d540\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://593460e554bd030c282ac532146a4c08495595814931f6eb65ba5df1234513b5\",\"dweb:/ipfs/QmS99z9JWufE7roRfx9a1453J8TVJXpREJDKLcY3gaSuKn\"]},\"src/core/libraries/rollup/StakingLib.sol\":{\"keccak256\":\"0x64132e16903b88cc0caf2deb576e06f3f52e77fdc78c8af65ebc331d5418f081\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://bf2c055fe01b3693fb0cbc3dd06b818a766e664455f7f0966cf3f8544a24b055\",\"dweb:/ipfs/QmciPGacwFhpwxvJjpm3VYwuhA8yVtk9Ju2TdUWFMKhXJa\"]},\"src/core/libraries/rollup/ValidatorOperationsExtLib.sol\":{\"keccak256\":\"0x6cfa5dd1e3b5fbb9118a727311f1121d87089a54744c61c30d431c2ecbdca200\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://40e2425b4aa022398847b57da1bea1290418b855b5312d1e24c9e1113aa05c1f\",\"dweb:/ipfs/QmaCiBGFciNUUecE9axtgoQqiQsSHc2ZQHzHWiiWMCn2ML\"]},\"src/core/libraries/rollup/ValidatorSelectionLib.sol\":{\"keccak256\":\"0xf6ba71f62d3b0e57403087cfa1c16d5f8adf30eb16d78e96510d5f48d3f681d9\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://ff43237bc4904ee1eef99da183c8082811737b8702dc452572498526dbdfe9c2\",\"dweb:/ipfs/QmaPuWp41oRGZcMLDK2Qf4BRz7QBr1HU72qb31qasniUKW\"]},\"src/core/messagebridge/FeeJuicePortal.sol\":{\"keccak256\":\"0x587faf2741b0cd58ea207f2337bc80964ff784d0e6f2de8e7d6e226a3dd9d187\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f10d4355ddeba853507d93038804972904ca61f47b9ff0c7272c87881445869d\",\"dweb:/ipfs/QmYfUZ9xgbWpwrP8kXUQTEa3P2G56iFFikNb6UyKctbi7j\"]},\"src/core/messagebridge/Inbox.sol\":{\"keccak256\":\"0xe5c09dfe6cdbc047470a48630d62366219d59d5d82a57ba230f053ab058088c4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e88076e7cbbf9f4f1886762dc62e4cec2323ebc7e8bfa8ce7030f739194271a6\",\"dweb:/ipfs/QmRHXcbCYEGUU4zCy84LrXykDQt8jY7YHZXpcSwMNatZyv\"]},\"src/core/messagebridge/Outbox.sol\":{\"keccak256\":\"0x1a78d6755a0f604a8f75a3059a2b8e5b6eb2a01540c39bf43bbfb56aaf063cf4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://bfffb428824b7e8d01070b639fb4b5696619c3205c89d8614c45f2e97aa1f24e\",\"dweb:/ipfs/QmfVTDZRszShpqhn42zBjGGBkLvAub746yj4n6L2dzNSsj\"]},\"src/core/reward-boost/RewardBooster.sol\":{\"keccak256\":\"0x1cffe0dcbc06775ad415b06cd3591f74331bad3b154a3305ea6c5a081915fce0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://a2fcdbdcc260b3330bae0bc61227f652f9cb68e175fbc7d4173bf1d2dfaa92d1\",\"dweb:/ipfs/QmddUmciRbznTTfBpbZf2p3R9sC1oePRF9C3Swnq8qU3Xb\"]},\"src/core/slashing/Slasher.sol\":{\"keccak256\":\"0xc3040cd1813a6064a6afda9ca8b1f65f5cba2e7359050c48507d2f71d3606786\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://73f73fac9ffe650304c68a49635604806b86b0a5baadbf59ef36931e7937bc51\",\"dweb:/ipfs/QmaMMMXycUeybJyf2ZowJgQ1Wo4ZC7g5kyp1BHWfj8dkD9\"]},\"src/core/slashing/SlashingProposer.sol\":{\"keccak256\":\"0x83021af7c9ea602728d0ea0c3a01b222bdfee96af341537473d81f6e1e70d32c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://65b80e908621361c40178ea2255d096f2ca323201b117de24bf561b5e7ca698f\",\"dweb:/ipfs/QmdKMw2sLn16jGZs9RjQnmxwkdsUrRzjJ3PLdZMPv8JceW\"]},\"src/governance/Bn254LibWrapper.sol\":{\"keccak256\":\"0xea39571de45fe0fec82d9e760998677eb2432e08c6cdb00c41efa58caf56e607\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1e470b821f3d87fa0c988c5f23a8deed3849bffd2527b3b4ee137a90e0c1264c\",\"dweb:/ipfs/QmW3M4HyRLDruV5AYXCKicFCiiczmwnSTtnwVKUnQSm7a8\"]},\"src/governance/GSE.sol\":{\"keccak256\":\"0xc19fa4868d78030e2411dd5cef6d0da09645ade1d1ea0c4374b284a89feb722a\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://d06396c249566d0e9de5d34eade2bf27c4d583005c0129787bf6c413dcd9e273\",\"dweb:/ipfs/QmcimKKiV9KqobS5wzPsKYzyYu5WezCF3gyHkekf5tjrUU\"]},\"src/governance/GSEPayload.sol\":{\"keccak256\":\"0x40e5385b008f0335b50e066c647bb906685511c9fef206ce90a3391468558bae\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://a129e87e1d57cf0813b14108cbdbcdd4c114b20f3f2d67477302d6d050120c7e\",\"dweb:/ipfs/QmRcQQkeDhkrmQha3nkA8qvXnGmF6nLhZMKAhMx61A7a5y\"]},\"src/governance/Governance.sol\":{\"keccak256\":\"0x07770c3d80369adae51be8e361f63a2aa5ec489b354b10c8590be1e294dfe2e5\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://7219becf3467ea8368dba0bd093ba932b165cf3f214e7286f652e2730bf42eaf\",\"dweb:/ipfs/QmTSCDhSQBTKhzGUk12phxhqohSba6yopYMzF5T5XPFUWw\"]},\"src/governance/interfaces/IBn254LibWrapper.sol\":{\"keccak256\":\"0xdd0a3de8b8ff67cf2bf090d04b4a37aa6d604f402db3328387d2466d2354464a\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://daef0234547509cd7ae3a7babf0e50a8d1ca2894f1817e3e2409a50fd32947b9\",\"dweb:/ipfs/QmbwSedqnBfsqRnUq8XcXzoeoyhZTXJWJ9rpJn61BAJfej\"]},\"src/governance/interfaces/IEmpire.sol\":{\"keccak256\":\"0xe6a8a8c3fef8e6f9f5118bd40c63e951b13a59d5f885bbb979d38745ef760ed3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://940c1fe4138d7364ccdb7d5635ea90bafa1da274f680039b0b54ee8c2a275a9a\",\"dweb:/ipfs/QmX2EeoVyES18BMgcbKVDb36MCq8ooDVR98m2RmnmZjEAo\"]},\"src/governance/interfaces/IGovernance.sol\":{\"keccak256\":\"0xe420d305fbe7c35f4620cd1e0f05f9f4c5a91532621d21a64ea553a3d9a3c005\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1900ac41f945aa692d5228f134ae63840081d284bf89fdd2a06b45424fe359ff\",\"dweb:/ipfs/QmePFZ1xv5qfftJVDLc98XUVFsrpuKAbKZiro7MoMDTpoa\"]},\"src/governance/interfaces/IGovernanceProposer.sol\":{\"keccak256\":\"0x2be820a5452c481ffd329d68c46d0af6a286934963f26b36d363cd34fb0e5817\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f58839d1504e11e7da42b7f5a03fb9b9d8cc39ab4c16cfb86fa44c4de08df76f\",\"dweb:/ipfs/QmR6jUJozP9tfpZuSduk66E8n7WuL3zzsR3WHZ7BR2ZBX2\"]},\"src/governance/interfaces/IPayload.sol\":{\"keccak256\":\"0x5844ea725ce56ac8adeb20b2d37aa431ca087f68a65a7ca91f981be7458737c3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5ea670db51b2ccfac05a684b95458ecc015c9d12a6567c3f73d473386533f58c\",\"dweb:/ipfs/QmRUB8mckkGQ4nNsErRhnKMsD9SSkokRSpnr5XZC9dZdin\"]},\"src/governance/interfaces/IProposerPayload.sol\":{\"keccak256\":\"0x89068dd464c0bfb7d447c0e99728277e03c7c4b864208ead20321f0590187248\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4d1d9ba5f8b7da374d773acde9514ca6607ad31a3e83950caa097bdb8b0f9167\",\"dweb:/ipfs/Qmd7tWAD2Ubz434zZPJvuyAGsHYpXBHvVhVefLFzUudD2o\"]},\"src/governance/interfaces/IRegistry.sol\":{\"keccak256\":\"0xc3678c04c0945d3dc1d8007df3dc7f8b25d8108b0b25134842ffc5169f996ce8\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://71e4e401f1a6f561262755cc2e1c347cd3aa79e67d2e52ca547864f49de01724\",\"dweb:/ipfs/QmPvoKFEDTb41DSC3MmDMqtM3trj5oZb1Jj2jtQSnNfHBn\"]},\"src/governance/interfaces/IRewardDistributor.sol\":{\"keccak256\":\"0xf263f75be83d0b0e3c8f17ec7fc2558d3543df788dcb2db6f1ee158208134f14\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://b2b65819a5f9ecd2237957e987bb69160d3076ccaf9f76f925a936e574d63d76\",\"dweb:/ipfs/QmNgWESeo6UUvgW7rCMP3d4o8mUqSSbKrwbicH4kaUrm7h\"]},\"src/governance/libraries/AddressSnapshotLib.sol\":{\"keccak256\":\"0x1006e58059e0a1f0fef102f2f11f5649dffc7f2eb066fce51845e65a064f4210\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://de385ab9eb3bb66d7be1218b49ae9bba7d88797bcb375b9a7481a209d303a402\",\"dweb:/ipfs/QmZe6DTv3cACfdXNSMhbMhoefg31LW3uLxHLDC7nZhb4Yp\"]},\"src/governance/libraries/CheckpointedUintLib.sol\":{\"keccak256\":\"0xcd73cf7a62e4ac5cc79f7f8df8b35d5c5e4df5b8a3478bcbc2b29c9aa89ea4b4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f56f37060d39d3c9276f23c96be7f6b1ea44676312dbaa1ab16ab3bff6acebf1\",\"dweb:/ipfs/QmPDUEEgdbpTTs9r3fvdMYJo9akCRsWcJXyarBhQgcKb5q\"]},\"src/governance/libraries/ConfigurationLib.sol\":{\"keccak256\":\"0x7cb65bdbd8d077f3cfc01b065fb3a57628db36cd46f68885c74b9131198c2149\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e37bde50f5f739f479feb95fbe81ed24ee47f841b99f066ecf6782e758d1978a\",\"dweb:/ipfs/QmebPE5REUpYRB8dikUebcGtyk9uy44G9mbchKJtHxJAgy\"]},\"src/governance/libraries/DepositDelegationLib.sol\":{\"keccak256\":\"0x37fbca65ccabec9d901bd71d684dceec7c59fa5a05438fd209ea0d5e16e764c0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e42f2622978abc3ac84223a6b206201898d0269d20bf81539636c0999a0db9eb\",\"dweb:/ipfs/QmW4BgTjR6BuPxwxreKarUeK1u8gx3p9yFdDD4EsC5hkyb\"]},\"src/governance/libraries/Errors.sol\":{\"keccak256\":\"0x8861ea7508138c83e89f186ce17accb42a6eee7d1d2e52841975d4ba676daae4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://b0d5b01c2b0a20c3c70a7ab2b8405d083a063bf5758beb87a4d488bda76078fa\",\"dweb:/ipfs/QmfGH6CTCPA6nVA6KidcTSvaJ6MQZkv6KiuDVBTARGBTRv\"]},\"src/governance/libraries/ProposalLib.sol\":{\"keccak256\":\"0x616ffbb24c4454ca9e223e85ff01e8dca139723d5cd312d5d6f6111d79782a90\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://192f9be3355a7a94d19ae4e5b397e5db19dde64ccc671e149da06dfaa2577192\",\"dweb:/ipfs/QmTDcm7XEFLe7o5cXUmuu5wQDyprU78AVMymiWvrmP4tHT\"]},\"src/governance/libraries/compressed-data/Ballot.sol\":{\"keccak256\":\"0xca07dc8cf36ac2beae7674804af144b34b3c5848153351c17d996e9b3293cd5d\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://6911cc49f1d6977c12f652063c14891697c1ffe49fdf36903c32a8ad73cbd012\",\"dweb:/ipfs/QmQBEZARCAAj1ZLcswkH6FwP1RP8uuNjYTHqthmE9Z5RnM\"]},\"src/governance/libraries/compressed-data/Configuration.sol\":{\"keccak256\":\"0x40744f275af22d33c38fd9c6a7b822292c9c87b17ac2c78abbef4eb8356fd9f9\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://73c685be7e934516207827a59cbbeb7fc1164e7659dd3ec857a91cfea765b482\",\"dweb:/ipfs/QmQfudRpSSQnG9u4XV8iA2UAyDzQPFqWzpZy5NZbaD6htv\"]},\"src/governance/libraries/compressed-data/Proposal.sol\":{\"keccak256\":\"0x72cf619a21c8e95875c63d4361cbe1a815d9d67f36f3fe32b6c9ca4d9ab0d33a\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://d80f47beb3f91da3cc68264c86fc8fb8f0e4abaf9d92243ab3206407fceed5c6\",\"dweb:/ipfs/QmYyrBTDMfkTBu6EcKcSMR7JyfphZ5xH1VCQ8EHMQUvsoN\"]},\"src/governance/proposer/EmpireBase.sol\":{\"keccak256\":\"0x747b20e201dab632a831c12f1fee9ee52cc80a2098c77e8b6c7b09b0f3ba2bc0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://b7d4a0475ca364f75aa2a1d17ed9e6970f0be605126f2efe26d53c791d4a5209\",\"dweb:/ipfs/Qma5tkTcy94PqE9vtQybQSyH9LWaHR8V3ubwDPZwiUNT35\"]},\"src/governance/proposer/GovernanceProposer.sol\":{\"keccak256\":\"0xa2829df5b65856c9f1d6bf490fb50616f14402ff8eece2e32b63828b8b9337c3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://8ad52830a7a3aed3477bf55f92c3d68cb1c16a5cf1d636227ab76a306c846607\",\"dweb:/ipfs/QmRonyZQZj5D1e2g4Y6Tmj2AEUnekL4pGmgdMT4ycRAM8m\"]},\"src/mock/libraries/BlobLib.sol\":{\"keccak256\":\"0xa1b19239c5c64ba1b0c9f83ec0a30059f10ded12bf40d5d7c3f65974752b3121\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5cbce7d0dd0096232d60ec5c6920f211ffcaa46c8675b1129c1f939a1ee84837\",\"dweb:/ipfs/QmSS2qUhzUuZY1qHDjWUGvHuMqMG3cjHoHeDVvgWsjMdA9\"]},\"src/periphery/SlashPayloadCloneable.sol\":{\"keccak256\":\"0xf3957502df4ba01cd0c05d5cd49488dbe38f4e182718013b3fef075da95a9e3f\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1bd7cdf387e137d007f53388748fd12cbfd016127f78455e617fb55bc4a66b21\",\"dweb:/ipfs/QmVLHJ7hyuuSSLRmv3meDcRKiT42Duq4sEweBTmWMfSfk8\"]},\"src/shared/libraries/BN254Lib.sol\":{\"keccak256\":\"0x0c3a5b7dabde2f5c81f19e1a4a212308a8636b5bb4a16bb1a518d58ef4feb6f5\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://870be6219c7081ed081cee2fa9ad1e7f3efff623ae1a59aed966f2bdcee65b7a\",\"dweb:/ipfs/QmNzohb1TazCgaT1e55CMDuuG7AHdGrGA6jvT4wzxdAM52\"]},\"src/shared/libraries/CompressedTimeMath.sol\":{\"keccak256\":\"0x361023cf30593e7e27417c91af3702e75235fcab251e4ad5ac2e47306a730ec1\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://9b192242472b3126c97a4a4e4fa792809a6bf20b548a57e677f5260c0dbf3ad3\",\"dweb:/ipfs/QmfK4WAucepcqzMLu11rs68HJazwfegVsgK5tTco82SooB\"]},\"src/shared/libraries/SignatureLib.sol\":{\"keccak256\":\"0xb69989f57384383341d1bb4693fb1e6ce31a2ab6c0fadb48bf088078a332a56a\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f199be27853a14d746c567c5e3a473f474e84cfd3d119a6404e6ceff4e986e5c\",\"dweb:/ipfs/QmWsLozeiKLQbTSEUDVZK2ASEX3EodKxT4DdA9BA6bD6N2\"]},\"src/shared/libraries/TimeMath.sol\":{\"keccak256\":\"0x8da20dc8b4ce296b7c11f117a3381bfe5cd611a3512a74a500e2e54e0353417f\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://18c74be98a4e31e8a16356e573514f639a8fc43928e741f6ead81dd755e9a914\",\"dweb:/ipfs/QmPDEdYYEj3DhXjrCDPuudJbhsBaNj1sK6hH94Z86168Q3\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.30+commit.73712a01"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"contract IERC20","name":"_feeAsset","type":"address"},{"internalType":"contract IERC20","name":"_stakingAsset","type":"address"},{"internalType":"contract GSE","name":"_gse","type":"address"},{"internalType":"contract IVerifier","name":"_epochProofVerifier","type":"address"},{"internalType":"address","name":"_governance","type":"address"},{"internalType":"struct GenesisState","name":"_genesisState","type":"tuple","components":[{"internalType":"bytes32","name":"vkTreeRoot","type":"bytes32"},{"internalType":"bytes32","name":"protocolContractsHash","type":"bytes32"},{"internalType":"bytes32","name":"genesisArchiveRoot","type":"bytes32"}]},{"internalType":"struct RollupConfigInput","name":"_config","type":"tuple","components":[{"internalType":"uint256","name":"aztecSlotDuration","type":"uint256"},{"internalType":"uint256","name":"aztecEpochDuration","type":"uint256"},{"internalType":"uint256","name":"targetCommitteeSize","type":"uint256"},{"internalType":"uint256","name":"lagInEpochsForValidatorSet","type":"uint256"},{"internalType":"uint256","name":"lagInEpochsForRandao","type":"uint256"},{"internalType":"uint256","name":"aztecProofSubmissionEpochs","type":"uint256"},{"internalType":"uint256","name":"slashingQuorum","type":"uint256"},{"internalType":"uint256","name":"slashingRoundSize","type":"uint256"},{"internalType":"uint256","name":"slashingLifetimeInRounds","type":"uint256"},{"internalType":"uint256","name":"slashingExecutionDelayInRounds","type":"uint256"},{"internalType":"uint256[3]","name":"slashAmounts","type":"uint256[3]"},{"internalType":"uint256","name":"slashingOffsetInRounds","type":"uint256"},{"internalType":"bool","name":"slasherEnabled","type":"bool"},{"internalType":"address","name":"slashingVetoer","type":"address"},{"internalType":"uint256","name":"slashingDisableDuration","type":"uint256"},{"internalType":"uint256","name":"manaTarget","type":"uint256"},{"internalType":"uint256","name":"exitDelaySeconds","type":"uint256"},{"internalType":"uint32","name":"version","type":"uint32"},{"internalType":"EthValue","name":"provingCostPerMana","type":"uint256"},{"internalType":"EthPerFeeAssetE12","name":"initialEthPerFeeAsset","type":"uint256"},{"internalType":"struct RewardConfig","name":"rewardConfig","type":"tuple","components":[{"internalType":"contract IRewardDistributor","name":"rewardDistributor","type":"address"},{"internalType":"Bps","name":"sequencerBps","type":"uint32"},{"internalType":"contract IBoosterCore","name":"booster","type":"address"},{"internalType":"uint96","name":"checkpointReward","type":"uint96"}]},{"internalType":"struct RewardBoostConfig","name":"rewardBoostConfig","type":"tuple","components":[{"internalType":"uint32","name":"increment","type":"uint32"},{"internalType":"uint32","name":"maxScore","type":"uint32"},{"internalType":"uint32","name":"a","type":"uint32"},{"internalType":"uint32","name":"minimum","type":"uint32"},{"internalType":"uint32","name":"k","type":"uint32"}]},{"internalType":"struct StakingQueueConfig","name":"stakingQueueConfig","type":"tuple","components":[{"internalType":"uint256","name":"bootstrapValidatorSetSize","type":"uint256"},{"internalType":"uint256","name":"bootstrapFlushSize","type":"uint256"},{"internalType":"uint256","name":"normalFlushSizeMin","type":"uint256"},{"internalType":"uint256","name":"normalFlushSizeQuotient","type":"uint256"},{"internalType":"uint256","name":"maxQueueFlushSize","type":"uint256"}]},{"internalType":"uint256","name":"localEjectionThreshold","type":"uint256"},{"internalType":"uint256","name":"ethereumSlotDuration","type":"uint256"},{"internalType":"address","name":"sequencerRewardCalculator","type":"address"}]}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"provided","type":"uint256"},{"internalType":"uint256","name":"minimum","type":"uint256"},{"internalType":"uint256","name":"maximum","type":"uint256"}],"type":"error","name":"FeeLib__InvalidInitialEthPerFeeAsset"},{"inputs":[{"internalType":"uint256","name":"maximum","type":"uint256"},{"internalType":"uint256","name":"provided","type":"uint256"}],"type":"error","name":"FeeLib__InvalidManaLimit"},{"inputs":[{"internalType":"uint256","name":"minimum","type":"uint256"},{"internalType":"uint256","name":"provided","type":"uint256"}],"type":"error","name":"FeeLib__InvalidManaTarget"},{"inputs":[{"internalType":"uint256","name":"provided","type":"uint256"},{"internalType":"uint256","name":"maximum","type":"uint256"}],"type":"error","name":"FeeLib__ProvingCostAboveCeiling"},{"inputs":[{"internalType":"uint256","name":"provided","type":"uint256"},{"internalType":"uint256","name":"minimum","type":"uint256"}],"type":"error","name":"FeeLib__ProvingCostBelowFloor"},{"inputs":[],"type":"error","name":"InvalidShortString"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"type":"error","name":"OwnableInvalidOwner"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"type":"error","name":"OwnableUnauthorizedAccount"},{"inputs":[{"internalType":"bytes32","name":"value","type":"bytes32"}],"type":"error","name":"Rollup__FieldElementOutOfRange"},{"inputs":[{"internalType":"uint256","name":"minimum","type":"uint256"},{"internalType":"uint256","name":"provided","type":"uint256"}],"type":"error","name":"Rollup__InvalidProofSubmissionEpochs"},{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"type":"error","name":"SafeCastOverflowedUintDowncast"},{"inputs":[{"internalType":"uint256","name":"bootstrapFlushSize","type":"uint256"},{"internalType":"uint256","name":"maxQueueFlushSize","type":"uint256"}],"type":"error","name":"Staking__BootstrapFlushSizeAboveMax"},{"inputs":[{"internalType":"uint256","name":"exitDelaySeconds","type":"uint256"},{"internalType":"uint256","name":"slasherExecutionDelay","type":"uint256"}],"type":"error","name":"Staking__ExitDelayAboveSlasherDelay"},{"inputs":[],"type":"error","name":"Staking__InvalidBootstrapFlushSize"},{"inputs":[],"type":"error","name":"Staking__InvalidMaxQueueFlushSize"},{"inputs":[],"type":"error","name":"Staking__InvalidNormalFlushSizeQuotient"},{"inputs":[],"type":"error","name":"Staking__InvalidStakingQueueConfig"},{"inputs":[{"internalType":"string","name":"str","type":"string"}],"type":"error","name":"StringTooLong"},{"inputs":[{"internalType":"uint256","name":"checkpointNumber","type":"uint256","indexed":true}],"type":"event","name":"CheckpointInvalidated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"checkpointNumber","type":"uint256","indexed":true},{"internalType":"bytes32","name":"archive","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"versionedBlobHashes","type":"bytes32[]","indexed":false},{"internalType":"bytes32","name":"payloadDigest","type":"bytes32","indexed":false},{"internalType":"bytes32","name":"attestationsHash","type":"bytes32","indexed":false}],"type":"event","name":"CheckpointProposed","anonymous":false},{"inputs":[{"internalType":"address","name":"attester","type":"address","indexed":true},{"internalType":"address","name":"withdrawer","type":"address","indexed":true},{"internalType":"struct G1Point","name":"publicKeyInG1","type":"tuple","components":[{"internalType":"uint256","name":"x","type":"uint256"},{"internalType":"uint256","name":"y","type":"uint256"}],"indexed":false},{"internalType":"struct G2Point","name":"publicKeyInG2","type":"tuple","components":[{"internalType":"uint256","name":"x0","type":"uint256"},{"internalType":"uint256","name":"x1","type":"uint256"},{"internalType":"uint256","name":"y0","type":"uint256"},{"internalType":"uint256","name":"y1","type":"uint256"}],"indexed":false},{"internalType":"struct G1Point","name":"proofOfPossession","type":"tuple","components":[{"internalType":"uint256","name":"x","type":"uint256"},{"internalType":"uint256","name":"y","type":"uint256"}],"indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Deposit","anonymous":false},{"inputs":[],"type":"event","name":"EIP712DomainChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"escapeHatch","type":"address","indexed":false}],"type":"event","name":"EscapeHatchSet","anonymous":false},{"inputs":[{"internalType":"address","name":"attester","type":"address","indexed":true},{"internalType":"address","name":"withdrawer","type":"address","indexed":true},{"internalType":"struct G1Point","name":"publicKeyInG1","type":"tuple","components":[{"internalType":"uint256","name":"x","type":"uint256"},{"internalType":"uint256","name":"y","type":"uint256"}],"indexed":false},{"internalType":"struct G2Point","name":"publicKeyInG2","type":"tuple","components":[{"internalType":"uint256","name":"x0","type":"uint256"},{"internalType":"uint256","name":"x1","type":"uint256"},{"internalType":"uint256","name":"y0","type":"uint256"},{"internalType":"uint256","name":"y1","type":"uint256"}],"indexed":false},{"internalType":"struct G1Point","name":"proofOfPossession","type":"tuple","components":[{"internalType":"uint256","name":"x","type":"uint256"},{"internalType":"uint256","name":"y","type":"uint256"}],"indexed":false}],"type":"event","name":"FailedDeposit","anonymous":false},{"inputs":[{"internalType":"uint256","name":"checkpointNumber","type":"uint256","indexed":true},{"internalType":"address","name":"proverId","type":"address","indexed":true}],"type":"event","name":"L2ProofVerified","anonymous":false},{"inputs":[{"internalType":"address","name":"legacySlasher","type":"address","indexed":true},{"internalType":"uint256","name":"authorizedUntil","type":"uint256","indexed":false}],"type":"event","name":"LegacySlasherAuthorized","anonymous":false},{"inputs":[{"internalType":"uint256","name":"manaTarget","type":"uint256","indexed":true}],"type":"event","name":"ManaTargetUpdated","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":"slasher","type":"address","indexed":true}],"type":"event","name":"PendingSlasherCancelled","anonymous":false},{"inputs":[{"internalType":"address","name":"slasher","type":"address","indexed":true},{"internalType":"uint256","name":"readyAt","type":"uint256","indexed":false}],"type":"event","name":"PendingSlasherQueued","anonymous":false},{"inputs":[{"internalType":"uint16","name":"oldBps","type":"uint16","indexed":false},{"internalType":"uint16","name":"newBps","type":"uint16","indexed":false}],"type":"event","name":"ProtocolFeeMarginUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"oldRecipient","type":"address","indexed":false},{"internalType":"address","name":"newRecipient","type":"address","indexed":false}],"type":"event","name":"ProtocolFeeRecipientUpdated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"provenCheckpointNumber","type":"uint256","indexed":false},{"internalType":"uint256","name":"pendingCheckpointNumber","type":"uint256","indexed":false}],"type":"event","name":"PrunedPending","anonymous":false},{"inputs":[{"internalType":"struct MutableRewardConfig","name":"rewardConfig","type":"tuple","components":[{"internalType":"Bps","name":"sequencerBps","type":"uint32"},{"internalType":"uint96","name":"checkpointReward","type":"uint96"}],"indexed":false}],"type":"event","name":"RewardConfigUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"oldCalculator","type":"address","indexed":false},{"internalType":"address","name":"newCalculator","type":"address","indexed":false}],"type":"event","name":"SequencerRewardCalculatorUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"attester","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Slashed","anonymous":false},{"inputs":[{"internalType":"address","name":"oldSlasher","type":"address","indexed":true},{"internalType":"address","name":"newSlasher","type":"address","indexed":true}],"type":"event","name":"SlasherUpdated","anonymous":false},{"inputs":[{"internalType":"struct StakingQueueConfig","name":"config","type":"tuple","components":[{"internalType":"uint256","name":"bootstrapValidatorSetSize","type":"uint256"},{"internalType":"uint256","name":"bootstrapFlushSize","type":"uint256"},{"internalType":"uint256","name":"normalFlushSizeMin","type":"uint256"},{"internalType":"uint256","name":"normalFlushSizeQuotient","type":"uint256"},{"internalType":"uint256","name":"maxQueueFlushSize","type":"uint256"}],"indexed":false}],"type":"event","name":"StakingQueueConfigUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"attester","type":"address","indexed":true},{"internalType":"address","name":"withdrawer","type":"address","indexed":true}],"type":"event","name":"ValidatorQueued","anonymous":false},{"inputs":[{"internalType":"address","name":"attester","type":"address","indexed":true},{"internalType":"address","name":"recipient","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"WithdrawFinalized","anonymous":false},{"inputs":[{"internalType":"address","name":"attester","type":"address","indexed":true},{"internalType":"address","name":"recipient","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"WithdrawInitiated","anonymous":false},{"inputs":[{"internalType":"address","name":"attester","type":"address","indexed":true},{"internalType":"address","name":"withdrawer","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"uint256","name":"withdrawalId","type":"uint256","indexed":false}],"type":"event","name":"WithdrawInitiatedByAttester","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"L1_BLOCK_AT_GENESIS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"cancelSetSlasher"},{"inputs":[],"stateMutability":"view","type":"function","name":"checkBlob","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"checkpointRandao"},{"inputs":[{"internalType":"address","name":"_coinbase","type":"address"},{"internalType":"Epoch[]","name":"_epochs","type":"uint256[]"}],"stateMutability":"nonpayable","type":"function","name":"claimProverRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_coinbase","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"claimSequencerRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_attester","type":"address"},{"internalType":"address","name":"_withdrawer","type":"address"},{"internalType":"struct G1Point","name":"_publicKeyInG1","type":"tuple","components":[{"internalType":"uint256","name":"x","type":"uint256"},{"internalType":"uint256","name":"y","type":"uint256"}]},{"internalType":"struct G2Point","name":"_publicKeyInG2","type":"tuple","components":[{"internalType":"uint256","name":"x0","type":"uint256"},{"internalType":"uint256","name":"x1","type":"uint256"},{"internalType":"uint256","name":"y0","type":"uint256"},{"internalType":"uint256","name":"y1","type":"uint256"}]},{"internalType":"struct G1Point","name":"_proofOfPossession","type":"tuple","components":[{"internalType":"uint256","name":"x","type":"uint256"},{"internalType":"uint256","name":"y","type":"uint256"}]},{"internalType":"bool","name":"_moveWithLatestRollup","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"deposit"},{"inputs":[],"stateMutability":"view","type":"function","name":"eip712Domain","outputs":[{"internalType":"bytes1","name":"fields","type":"bytes1"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"version","type":"string"},{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"verifyingContract","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"uint256[]","name":"extensions","type":"uint256[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"finalizeSetSlasher"},{"inputs":[{"internalType":"address","name":"_attester","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"finalizeWithdraw"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"flushEntryQueue"},{"inputs":[{"internalType":"uint256","name":"_toAdd","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"flushEntryQueue"},{"inputs":[],"stateMutability":"view","type":"function","name":"getActiveAttesterCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getEntryQueueFlushSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_attester","type":"address"},{"internalType":"address","name":"_recipient","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initiateWithdraw","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_attester","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initiateWithdrawByAttester"},{"inputs":[{"internalType":"struct AttesterExitAuthorization[]","name":"_authorizations","type":"tuple[]","components":[{"internalType":"address","name":"attester","type":"address"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"struct Signature","name":"signature","type":"tuple","components":[{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}]}]}],"stateMutability":"nonpayable","type":"function","name":"initiateWithdrawByAttesterBatch"},{"inputs":[{"internalType":"struct AttesterExitAuthorization[]","name":"_authorizations","type":"tuple[]","components":[{"internalType":"address","name":"attester","type":"address"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"struct Signature","name":"signature","type":"tuple","components":[{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}]}]}],"stateMutability":"nonpayable","type":"function","name":"initiateWithdrawByAttesterBatchUpToLimit","outputs":[{"internalType":"uint256","name":"exitedCount","type":"uint256"}]},{"inputs":[{"internalType":"struct AttesterExitAuthorization","name":"_authorization","type":"tuple","components":[{"internalType":"address","name":"attester","type":"address"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"struct Signature","name":"signature","type":"tuple","components":[{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}]}]}],"stateMutability":"nonpayable","type":"function","name":"initiateWithdrawByAttesterWithSignature"},{"inputs":[{"internalType":"uint256","name":"_checkpointNumber","type":"uint256"},{"internalType":"struct CommitteeAttestations","name":"_attestations","type":"tuple","components":[{"internalType":"bytes","name":"signatureIndices","type":"bytes"},{"internalType":"bytes","name":"signaturesOrAddresses","type":"bytes"}]},{"internalType":"address[]","name":"_committee","type":"address[]"},{"internalType":"uint256","name":"_invalidIndex","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"invalidateBadAttestation"},{"inputs":[{"internalType":"uint256","name":"_checkpointNumber","type":"uint256"},{"internalType":"struct CommitteeAttestations","name":"_attestations","type":"tuple","components":[{"internalType":"bytes","name":"signatureIndices","type":"bytes"},{"internalType":"bytes","name":"signaturesOrAddresses","type":"bytes"}]},{"internalType":"address[]","name":"_committee","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"invalidateInsufficientAttestations"},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct ProposeArgs","name":"_args","type":"tuple","components":[{"internalType":"bytes32","name":"archive","type":"bytes32"},{"internalType":"struct OracleInput","name":"oracleInput","type":"tuple","components":[{"internalType":"int256","name":"feeAssetPriceModifier","type":"int256"}]},{"internalType":"struct ProposedHeader","name":"header","type":"tuple","components":[{"internalType":"bytes32","name":"lastArchiveRoot","type":"bytes32"},{"internalType":"bytes32","name":"blockHeadersHash","type":"bytes32"},{"internalType":"bytes32","name":"blobsHash","type":"bytes32"},{"internalType":"bytes32","name":"inboxRollingHash","type":"bytes32"},{"internalType":"bytes32","name":"outHash","type":"bytes32"},{"internalType":"Slot","name":"slotNumber","type":"uint256"},{"internalType":"Timestamp","name":"timestamp","type":"uint256"},{"internalType":"address","name":"coinbase","type":"address"},{"internalType":"bytes32","name":"feeRecipient","type":"bytes32"},{"internalType":"struct GasFees","name":"gasFees","type":"tuple","components":[{"internalType":"uint128","name":"feePerDaGas","type":"uint128"},{"internalType":"uint128","name":"feePerL2Gas","type":"uint128"}]},{"internalType":"uint256","name":"totalManaUsed","type":"uint256"},{"internalType":"uint256","name":"accumulatedFees","type":"uint256"}]},{"internalType":"uint256","name":"bucketHint","type":"uint256"}]},{"internalType":"struct CommitteeAttestations","name":"_attestations","type":"tuple","components":[{"internalType":"bytes","name":"signatureIndices","type":"bytes"},{"internalType":"bytes","name":"signaturesOrAddresses","type":"bytes"}]},{"internalType":"address[]","name":"_signers","type":"address[]"},{"internalType":"struct Signature","name":"_attestationsAndSignersSignature","type":"tuple","components":[{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}]},{"internalType":"bytes","name":"_blobInput","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"propose"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"prune"},{"inputs":[{"internalType":"address","name":"_slasher","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"queueSetSlasher"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"_escapeHatch","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setEscapeHatch"},{"inputs":[{"internalType":"uint16","name":"_protocolFeeMarginBps","type":"uint16"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFeeMargin"},{"inputs":[{"internalType":"address","name":"_recipient","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFeeRecipient"},{"inputs":[{"internalType":"EthValue","name":"_provingCostPerMana","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setProvingCostPerMana"},{"inputs":[{"internalType":"struct MutableRewardConfig","name":"_config","type":"tuple","components":[{"internalType":"Bps","name":"sequencerBps","type":"uint32"},{"internalType":"uint96","name":"checkpointReward","type":"uint96"}]}],"stateMutability":"nonpayable","type":"function","name":"setRewardConfig"},{"inputs":[{"internalType":"address","name":"_calculator","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setSequencerRewardCalculator"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"setupEpoch"},{"inputs":[{"internalType":"address","name":"_attester","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"slash","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"struct SubmitEpochRootProofArgs","name":"_args","type":"tuple","components":[{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"},{"internalType":"struct PublicInputArgs","name":"args","type":"tuple","components":[{"internalType":"bytes32","name":"previousArchive","type":"bytes32"},{"internalType":"bytes32","name":"endArchive","type":"bytes32"},{"internalType":"bytes32","name":"outHash","type":"bytes32"},{"internalType":"bytes32","name":"previousInboxRollingHash","type":"bytes32"},{"internalType":"bytes32","name":"endInboxRollingHash","type":"bytes32"},{"internalType":"address","name":"proverId","type":"address"}]},{"internalType":"struct ProvenCheckpointFees[]","name":"provenCheckpointFees","type":"tuple[]","components":[{"internalType":"address","name":"coinbase","type":"address"},{"internalType":"uint256","name":"accumulatedFees","type":"uint256"}]},{"internalType":"struct ProposedHeader[]","name":"headers","type":"tuple[]","components":[{"internalType":"bytes32","name":"lastArchiveRoot","type":"bytes32"},{"internalType":"bytes32","name":"blockHeadersHash","type":"bytes32"},{"internalType":"bytes32","name":"blobsHash","type":"bytes32"},{"internalType":"bytes32","name":"inboxRollingHash","type":"bytes32"},{"internalType":"bytes32","name":"outHash","type":"bytes32"},{"internalType":"Slot","name":"slotNumber","type":"uint256"},{"internalType":"Timestamp","name":"timestamp","type":"uint256"},{"internalType":"address","name":"coinbase","type":"address"},{"internalType":"bytes32","name":"feeRecipient","type":"bytes32"},{"internalType":"struct GasFees","name":"gasFees","type":"tuple","components":[{"internalType":"uint128","name":"feePerDaGas","type":"uint128"},{"internalType":"uint128","name":"feePerL2Gas","type":"uint128"}]},{"internalType":"uint256","name":"totalManaUsed","type":"uint256"},{"internalType":"uint256","name":"accumulatedFees","type":"uint256"}]},{"internalType":"struct CommitteeAttestations","name":"attestations","type":"tuple","components":[{"internalType":"bytes","name":"signatureIndices","type":"bytes"},{"internalType":"bytes","name":"signaturesOrAddresses","type":"bytes"}]},{"internalType":"bytes","name":"blobInputs","type":"bytes"},{"internalType":"bytes","name":"proof","type":"bytes"}]}],"stateMutability":"nonpayable","type":"function","name":"submitEpochRootProof"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"updateL1GasFeeOracle"},{"inputs":[{"internalType":"uint256","name":"_manaTarget","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"updateManaTarget"},{"inputs":[{"internalType":"struct StakingQueueConfig","name":"_config","type":"tuple","components":[{"internalType":"uint256","name":"bootstrapValidatorSetSize","type":"uint256"},{"internalType":"uint256","name":"bootstrapFlushSize","type":"uint256"},{"internalType":"uint256","name":"normalFlushSizeMin","type":"uint256"},{"internalType":"uint256","name":"normalFlushSizeQuotient","type":"uint256"},{"internalType":"uint256","name":"maxQueueFlushSize","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"updateStakingQueueConfig"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"vote"}],"devdoc":{"kind":"dev","methods":{"checkpointRandao()":{"details":"Can be called by anyone. Takes a snapshot of the current randao to ensure unpredictable but deterministic validator selection. Automatically called from setupEpoch. Can be used as a cheaper alternative to `setupEpoch` to update the randao checkpoints."},"claimProverRewards(address,uint256[])":{"details":"Provers earn rewards for successfully proving epoch transitions. Each epoch can only be claimed once per prover.","params":{"_coinbase":"The address that has accumulated the rewards - rewards are sent to this address","_epochs":"Array of epochs to claim rewards for"},"returns":{"_0":"The total amount of rewards claimed"}},"claimSequencerRewards(address)":{"details":"Transfers all accumulated rewards to the recipient.","params":{"_coinbase":"The address that has accumulated the rewards - rewards are sent to this address"},"returns":{"_0":"The amount of rewards claimed"}},"constructor":{"details":"Sets up time parameters, deploys auxiliary contracts (slasher, reward booster), initializes staking, validator selection, and creates inbox/outbox contracts","params":{"_config":"Comprehensive configuration including timing, staking, slashing, reward parameters, and unlock timestamp","_epochProofVerifier":"The honk verifier contract for root epoch proofs","_feeAsset":"The ERC20 token used for transaction fees","_genesisState":"Initial state containing VK tree root, protocol contracts hash, and genesis archive","_governance":"The address with owner privileges","_gse":"The Governance Staking Escrow contract","_stakingAsset":"The ERC20 token used for validator staking"}},"deposit(address,address,(uint256,uint256),(uint256,uint256,uint256,uint256),(uint256,uint256),bool)":{"details":"The caller must have approved the staking asset. Validators enter a queue before becoming active.","params":{"_attester":"The address that will act as the validator (sign attestations)","_moveWithLatestRollup":"Whether to follow the chain if governance migrates to a new rollup version","_proofOfPossession":"The proof of possession to show that the keys in G1 and G2 share secret key","_publicKeyInG1":"The G1 point for the BLS public key (used for efficient signature verification in GSE)","_publicKeyInG2":"The G2 point for the BLS public key (used for BLS aggregation and pairing operations in GSE)","_withdrawer":"The address that can withdraw the stake"}},"eip712Domain()":{"details":"See {IERC-5267}."},"finalizeSetSlasher()":{"details":"Permissionless: the queued payload and the elapsed delay are the authorization. Anyone may poke the transaction through."},"finalizeWithdraw(address)":{"details":"Can be called by anyone. Transfers the stake to the designated recipient.","params":{"_attester":"The validator address whose withdrawal to finalize"}},"flushEntryQueue()":{"details":"Before every deposit the flush requires `StakingLib.getFlushDepositGasFloor` gas to be left (about 1.1M at the default proof-of-possession cap) and reverts with `Staking__InsufficientFlushGas` otherwise. Size the transaction with `eth_estimateGas`, which accounts for this, or leave that much headroom beyond the gas the flush consumes. A limit derived from simulated gas used is not enough for a flush of a few entries."},"flushEntryQueue(uint256)":{"details":"Can be called by anyone. The number of validators added is limited by queue configuration. This helps maintain a controlled growth rate of the validator set.","params":{"_toAdd":"- The max number the caller will try to add"}},"getActiveAttesterCount()":{"details":"Active validators can propose checkpoints and participate in committees","returns":{"_0":"The count of validators in the active set"}},"getEntryQueueFlushSize()":{"details":"Based on queue configuration and current validator set size. Used by flushEntryQueue.","returns":{"_0":"The number of validators that can be added in the next flush"}},"initiateWithdraw(address,address)":{"details":"Starts the exit delay period. The validator is immediately removed from the active set. Only the registered withdrawer can initiate withdrawal.","params":{"_attester":"The validator address to withdraw","_recipient":"The address to receive the withdrawn stake"},"returns":{"_0":"True if withdrawal was initiated, false if already initiated"}},"initiateWithdrawByAttester(address)":{"details":"The registered withdrawer retains control of the payout recipient.","params":{"_attester":"The validator position to exit."}},"initiateWithdrawByAttesterBatch((address,uint256,(uint8,bytes32,bytes32))[])":{"details":"Shared instance and exit-limit checks are performed once for the whole batch.","params":{"_authorizations":"The signed exit authorizations to execute atomically."}},"initiateWithdrawByAttesterBatchUpToLimit((address,uint256,(uint8,bytes32,bytes32))[])":{"details":"Processes a prefix of the array and returns zero when no capacity remains.","params":{"_authorizations":"The ordered signed exit authorizations."},"returns":{"exitedCount":"The number of authorizations processed from the start of the array."}},"initiateWithdrawByAttesterWithSignature((address,uint256,(uint8,bytes32,bytes32)))":{"details":"Anyone may relay the authorization. The registered withdrawer retains control of the payout recipient.","params":{"_authorization":"The attester, deadline, and signature authorizing the exit."}},"invalidateBadAttestation(uint256,(bytes,bytes),address[],uint256)":{"details":"Anyone can call this if they detect an invalid signature. This removes the checkpoint and all subsequent checkpoints from the pending chain. Used to maintain pending chain integrity.","params":{"_attestations":"The attestations that were submitted with the checkpoint","_checkpointNumber":"The checkpoint number to invalidate","_committee":"The committee members for the checkpoint's epoch","_invalidIndex":"The index of the invalid signature in the attestations"}},"invalidateInsufficientAttestations(uint256,(bytes,bytes),address[])":{"details":"Anyone can call this if a checkpoint doesn't meet the required attestation threshold. Even if all signatures are valid, checkpoints need a minimum number of attestations.","params":{"_attestations":"The attestations that were submitted with the checkpoint","_checkpointNumber":"The checkpoint number to invalidate","_committee":"The committee members for the checkpoint's epoch"}},"owner()":{"details":"Returns the address of the current owner."},"propose((bytes32,(int256),(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256),uint256),(bytes,bytes),address[],(uint8,bytes32,bytes32),bytes)":{"details":"Core function for checkpoint production. The attestations must include a signature from designated proposer to be accepted. The checkpoint must build on the previous checkpoint and include valid attestations from committee members. Failed proposals revert; successful ones emit CheckpointProposed and advance the chain state. See ProposeLib#propose for more details.","params":{"_args":"checkpoint data including header, state updates, oracle inputs, and archive","_attestations":"Aggregated signatures from committee members attesting to checkpoint validity","_blobInput":"Blob commitment data for data availability (format: [numBlobs][48-byte commitments...])","_signers":"Addresses of committee members who signed (must match attestations)"}},"prune()":{"details":"Can only be called after the proof submission window has expired for an epoch. This maintains liveness by preventing the chain from being stuck on unproven checkpoints. Pruning occurs at epoch boundaries and removes all checkpoints in unproven epochs."},"queueSetSlasher(address)":{"details":"The zero address is permissible. Setting to this would imply that the rollup has at least temporarily relinquished their ability to slash.","params":{"_slasher":"The address of the new slasher contract"}},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"setEscapeHatch(address)":{"details":"Only callable by owner. The escape hatch provides an alternative block production path when the committee is unavailable. Once set, the address is immutable for the life of the rollup -- there is no replacement path. To launch without an escape hatch, simply never call this function.","params":{"_escapeHatch":"The address of the EscapeHatch contract (must be non-zero)"}},"setProtocolFeeMargin(uint16)":{"details":"Only callable by owner. Increases are rate-limited (30-day cooldown, x3/2 step on the fee multiplier); decreases are immediate. Setting the current value is a no-op and emits no event.","params":{"_protocolFeeMarginBps":"The new margin in basis points"}},"setProtocolFeeRecipient(address)":{"details":"Only callable by owner. Rejects the zero address.","params":{"_recipient":"The new protocol fee recipient"}},"setProvingCostPerMana(uint256)":{"details":"Only callable by owner. This affects how proving costs are calculated in the fee model.","params":{"_provingCostPerMana":"The cost in ETH per unit of mana for proving"}},"setRewardConfig((uint32,uint96))":{"details":"Only callable by the contract owner. The `rewardDistributor` and `booster` addresses are deliberately NOT exposed by this setter -- they are written exactly once at construction by {_initializeRewards} and immutable thereafter. Rotating either address requires redeploying the rollup via `Registry.addRollup`.","params":{"_config":"The new mutable reward configuration"}},"setSequencerRewardCalculator(address)":{"details":"Only callable by the contract owner. Any address is accepted: zero disables the calculator, and an address that does not answer like an {ISequencerRewardCalculator} makes every checkpoint receive the default sequencer reward. Emits {IRollupCore.SequencerRewardCalculatorUpdated} with the previous and new addresses.","params":{"_calculator":"The new calculator, or zero for none"}},"setupEpoch()":{"details":"Can be called by anyone at the start of an epoch. Samples the committee and determines proposers for all slots in the epoch. Also stores a seed that is used for future sampling. The corresponding library functionality is automatically called when `RollupCore.propose(...)` is called (via the `RollupOperationsExtLib.propose(...)` -> `ProposeLib.propose(...)` -> `ValidatorSelectionLib.setupEpoch(...)`). If there are missed proposals then setupEpoch does not get called automatically. Since the next committee selection is computed based on the stored randao and the epoch number, failing to update the randao stored will keep the committee predictable longer into the future. We would only fail to get a fresh randao if: 1. All the proposals in the epoch were missed 2. Nobody called setupEpoch on the Rollup contract While an attacker might theoretically benefit from preventing a fresh seed (e.g. by DoSing all proposers), preventing anyone from calling this function directly is not really feasible. This makes attacks on seed generation impractical."},"slash(address,uint256)":{"details":"Only callable by the authorized slasher contract. Reduces the validator's stake.","params":{"_amount":"The amount of stake to slash","_attester":"The validator to slash"},"returns":{"_0":"True if slashing was successful"}},"submitEpochRootProof((uint256,uint256,(bytes32,bytes32,bytes32,bytes32,bytes32,address),(address,uint256)[],(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256)[],(bytes,bytes),bytes,bytes))":{"details":"Proves the validity of a prefix of the checkpoints in an epoch. Once proven, checkpoints become final and cannot be pruned. The proof must be submitted within the submission window. Successful submission triggers prover rewards.","params":{"_args":"Contains the epoch range, public inputs, fees, attestations, and the ZK proof"}},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"updateL1GasFeeOracle()":{"details":"Automatically called during checkpoint proposal but can be called manually. Updates the fee model's view of L1 costs to ensure accurate L2 fee pricing. Uses current L1 gas price and blob gas price for calculations."},"updateManaTarget(uint256)":{"details":"Only callable by owner. The new target must be greater than or equal to the current target to avoid the ability for governance to use it directly to kill an old rollup. Mana is the unit of computational work in Aztec.","params":{"_manaTarget":"The new target mana per slot"}},"updateStakingQueueConfig((uint256,uint256,uint256,uint256,uint256))":{"details":"Only callable by owner. Controls how validators enter the active set.","params":{"_config":"New configuration including queue size limits and timing parameters"}},"vote(uint256)":{"details":"This enables the rollup to participate in governance by voting on proposals. See StakingLib.sol for more details on the voting mechanism.","params":{"_proposalId":"The ID of the proposal to vote on"}}},"version":1},"userdoc":{"kind":"user","methods":{"L1_BLOCK_AT_GENESIS()":{"notice":"The L1 block number when this rollup was deployed"},"cancelSetSlasher()":{"notice":"Cancels the pending slasher replacement. Reverts if nothing is pending."},"checkBlob()":{"notice":"Flag to enable/disable blob verification during simulations"},"checkpointRandao()":{"notice":"Captures the randao for future validator selection"},"claimProverRewards(address,uint256[])":{"notice":"Claims prover rewards for specified epochs"},"claimSequencerRewards(address)":{"notice":"Claims accumulated rewards for a sequencer (checkpoint proposer)"},"constructor":{"notice":"Initializes the Aztec rollup with all required configurations"},"deposit(address,address,(uint256,uint256),(uint256,uint256,uint256,uint256),(uint256,uint256),bool)":{"notice":"Deposits stake to become a validator"},"finalizeSetSlasher()":{"notice":"Applies the pending slasher replacement once the 60-day delay has elapsed."},"finalizeWithdraw(address)":{"notice":"Completes a withdrawal after the exit delay has passed"},"flushEntryQueue()":{"notice":"Activates queued validators, up to the epoch's flush budget (and `_toAdd` when given)"},"flushEntryQueue(uint256)":{"notice":"Processes the validator entry queue to add new validators to the active set"},"getActiveAttesterCount()":{"notice":"Returns the current number of active validators"},"getEntryQueueFlushSize()":{"notice":"Returns the maximum number of validators that can be added from the entry queue"},"initiateWithdraw(address,address)":{"notice":"Initiates withdrawal of a validator's stake"},"initiateWithdrawByAttester(address)":{"notice":"Initiates withdrawal of a validator's stake by the attester"},"initiateWithdrawByAttesterBatch((address,uint256,(uint8,bytes32,bytes32))[])":{"notice":"Initiates multiple attester withdrawals using EIP-712 authorizations."},"initiateWithdrawByAttesterBatchUpToLimit((address,uint256,(uint8,bytes32,bytes32))[])":{"notice":"Initiates as many authorized attester withdrawals as the current exit limit permits."},"initiateWithdrawByAttesterWithSignature((address,uint256,(uint8,bytes32,bytes32)))":{"notice":"Initiates an attester withdrawal using an EIP-712 authorization."},"invalidateBadAttestation(uint256,(bytes,bytes),address[],uint256)":{"notice":"Invalidates a checkpoint due to a bad attestation signature"},"invalidateInsufficientAttestations(uint256,(bytes,bytes),address[])":{"notice":"Invalidates a checkpoint due to insufficient valid attestations (>2/3 of committee required)"},"propose((bytes32,(int256),(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256),uint256),(bytes,bytes),address[],(uint8,bytes32,bytes32),bytes)":{"notice":"Proposes a new checkpoint to extend the chain"},"prune()":{"notice":"Removes unproven checkpoints from the pending chain"},"queueSetSlasher(address)":{"notice":"Queues a slasher replacement. Takes effect only after a 60-day delay via {finalizeSetSlasher}. Validators who object to the change have time to exit before it lands. Overwrites any pending change, resetting the timer."},"setEscapeHatch(address)":{"notice":"Sets the escape hatch contract address. One-shot: callable at most once per rollup."},"setProtocolFeeMargin(uint16)":{"notice":"Updates the protocol fee margin applied on top of operator cost in the mana base fee"},"setProtocolFeeRecipient(address)":{"notice":"Updates the recipient of the protocol fee tranche of the reward waterfall"},"setProvingCostPerMana(uint256)":{"notice":"Updates the cost of proving per unit of mana"},"setRewardConfig((uint32,uint96))":{"notice":"Updates the mutable reward configuration (sequencer/prover split and checkpoint reward)."},"setSequencerRewardCalculator(address)":{"notice":"Replaces the sequencer reward calculator consulted when epoch proofs pay checkpoint rewards"},"setupEpoch()":{"notice":"Sets up validator selection for the current epoch"},"slash(address,uint256)":{"notice":"Slashes a validator's stake for misbehavior"},"submitEpochRootProof((uint256,uint256,(bytes32,bytes32,bytes32,bytes32,bytes32,address),(address,uint256)[],(bytes32,bytes32,bytes32,bytes32,bytes32,uint256,uint256,address,bytes32,(uint128,uint128),uint256,uint256)[],(bytes,bytes),bytes,bytes))":{"notice":"Submits a zero-knowledge proof for an epoch's state transition"},"updateL1GasFeeOracle()":{"notice":"Updates the L1 gas fee oracle with current gas prices"},"updateManaTarget(uint256)":{"notice":"Updates the target mana (computational units) per slot"},"updateStakingQueueConfig((uint256,uint256,uint256,uint256,uint256))":{"notice":"Updates the configuration for the staking entry queue"},"vote(uint256)":{"notice":"Allows the rollup itself to vote on governance proposals"}},"version":1}},"settings":{"remappings":["@aztec-blob-lib/=src/mock/libraries/","@aztec/=src/","@generated/=generated/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@oz/=lib/openzeppelin-contracts/contracts/","@test/=test/","@zkpassport-test/=lib/circuits/src/solidity/test/","@zkpassport/=lib/circuits/src/solidity/src/","circuits/=lib/circuits/src/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","halmos-cheatcodes/=lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/","openzeppelin-contracts/=lib/openzeppelin-contracts/"],"optimizer":{"enabled":true,"runs":100},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/core/RollupCore.sol":"RollupCore"},"evmVersion":"prague","libraries":{}},"sources":{"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"keccak256":"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb","urls":["bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6","dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1363.sol":{"keccak256":"0x9b6b3e7803bc5f2f8cd7ad57db8ac1def61a9930a5a3107df4882e028a9605d7","urls":["bzz-raw://da62d6be1f5c6edf577f0cb45666a8aa9c2086a4bac87d95d65f02e2f4c36a4b","dweb:/ipfs/QmNkpvBpoCMvX8JwAFNSc5XxJ2q5BXJpL5L1txb4QkqVFF"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol":{"keccak256":"0xde7e9fd9aee8d4f40772f96bb3b58836cbc6dfc0227014a061947f8821ea9724","urls":["bzz-raw://11fea9f8bc98949ac6709f0c1699db7430d2948137aa94d5a9e95a91f61a710a","dweb:/ipfs/QmQdfRXxQjwP6yn3DVo1GHPpriKNcFghSPi94Z1oKEFUNS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol":{"keccak256":"0xce41876e78d1badc0512229b4d14e4daf83bc1003d7f83978d18e0e56f965b9c","urls":["bzz-raw://a2608291cb038b388d80b79a06b6118a42f7894ff67b7da10ec0dbbf5b2973ba","dweb:/ipfs/QmWohqcBLbcxmA4eGPhZDXe5RYMMEEpFq22nfkaUMvTfw1"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC5267.sol":{"keccak256":"0x92aa1df62dc3d33f1656d63bede0923e0df0b706ad4137c8b10b0a8fe549fd92","urls":["bzz-raw://c5c0f29195ad64cbe556da8e257dac8f05f78c53f90323c0d2accf8e6922d33a","dweb:/ipfs/QmQ61TED8uaCZwcbh8KkgRSsCav7x7HbcGHwHts3U4DmUP"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Clones.sol":{"keccak256":"0x1206c89e10de6977cbeda13f01c7956c1159cf9f8565aa56b8f05f7c838429bf","urls":["bzz-raw://1d3b3da61df7796a528ec9abfbb63288cf3ac63e3c736407ae4eed2bca018695","dweb:/ipfs/QmYgttRpNJeRgjzL2rwMEHjFuVXABxPGApe5bpmsHtdfjE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0xe06a3f08a987af6ad2e1c1e774405d4fe08f1694b67517438b467cecf0da0ef7","urls":["bzz-raw://df6f0c459663c9858b6cba2cda1d14a7d05a985bed6d2de72bd8e78c25ee79db","dweb:/ipfs/QmeTTxZ7qVk9rjEv2R4CpCwdf8UMCcRqDNMvzNxHc3Fnn9"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x4251fed1ac036ad28996501522371736318527d7bf2bf7d66fbd2769d6c4771b","urls":["bzz-raw://b2df261bd4de240f54c5829faeaf0ffc919a01f1497cf7ffd8a9a544bdec8fca","dweb:/ipfs/Qmb9ndUuv9RZPKJXZGzjVuhmNuoizxuGRn4QMBmdmLcxS3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2","urls":["bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12","dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Create2.sol":{"keccak256":"0xbb7e8401583d26268ea9103013bcdcd90866a7718bd91105ebd21c9bf11f4f06","urls":["bzz-raw://866a11ad89c93ee918078f7a46ae31e17d89216ce64603f0d34be7ed0a5c520e","dweb:/ipfs/QmW3ckLEJg2v2NzuVLNJFmRuerGSipw6Dzg6ntbmqbAGoC"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Errors.sol":{"keccak256":"0x6afa713bfd42cf0f7656efa91201007ac465e42049d7de1d50753a373648c123","urls":["bzz-raw://ba1d02f4847670a1b83dec9f7d37f0b0418d6043447b69f3a29a5f9efc547fcf","dweb:/ipfs/QmQ7iH2keLNUKgq2xSWcRmuBE5eZ3F5whYAkAGzCNNoEWB"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Panic.sol":{"keccak256":"0xf7fe324703a64fc51702311dc51562d5cb1497734f074e4f483bfb6717572d7a","urls":["bzz-raw://c6a5ff4f9fd8649b7ee20800b7fa387d3465bd77cf20c2d1068cd5c98e1ed57a","dweb:/ipfs/QmVSaVJf9FXFhdYEYeCEfjMVHrxDh5qL4CGkxdMWpQCrqG"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/ShortStrings.sol":{"keccak256":"0x7d94fa0af099a2172eb01f9c8a8a443cbe7e0e43654841563e4e09968efdb549","urls":["bzz-raw://65e38fb76b6add407d4557753ae83dd1268e8261195dbe5c19a580d5ba6e4e9a","dweb:/ipfs/QmTkGSJtaQrqjcyWM4AgemeEmKgtDydKPPVRajsUJRQSrK"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/SlotDerivation.sol":{"keccak256":"0x8447b57b63810fe2e367c09496a966f143ec0e825d71ddb9fce2506cff84b618","urls":["bzz-raw://996cb48f793bf151555045b37138e36b3cdb31d6bc6552d3149285260be00cfb","dweb:/ipfs/QmcLaTTMNVbkMx58xhkp6GeFt4V3GtSyupZuaKG3vYW2Zc"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xcf74f855663ce2ae00ed8352666b7935f6cddea2932fdf2c3ecd30a9b1cd0e97","urls":["bzz-raw://9f660b1f351b757dfe01438e59888f31f33ded3afcf5cb5b0d9bf9aa6f320a8b","dweb:/ipfs/QmarDJ5hZEgBtCmmrVzEZWjub9769eD686jmzb2XpSU1cM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x9e82c00fb176503860139c6bbf593b1a954ee7ff97ab2969656571382b9b58a2","urls":["bzz-raw://34b4eb157b44d4441315db65561ba7cf0fe909dc598c2cfd7080d203077d5b57","dweb:/ipfs/QmcNdvK3kDUAUr48urHxoeHd1TqVDya4YfZTM66i4goEJn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/TransientSlot.sol":{"keccak256":"0x9303ef5a2beb555e52ce56598de205ce07ca8988fc67d073687c06cb8fc973d1","urls":["bzz-raw://8b2e48fb42844c25e6cb38e7cfa1d91dcdc054613fd10f608833dbc677acf889","dweb:/ipfs/QmT4HQxbgpWA3fZnK4dY3eXHNCoyBvpvzNq5k7eSt5mR5t"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"keccak256":"0x69f54c02b7d81d505910ec198c11ed4c6a728418a868b906b4a0cf29946fda84","urls":["bzz-raw://8e25e4bdb7ae1f21d23bfee996e22736fc0ab44cfabedac82a757b1edc5623b9","dweb:/ipfs/QmQdWQvB6JCP9ZMbzi8EvQ1PTETqkcTWrbcVurS7DKpa5n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/cryptography/EIP712.sol":{"keccak256":"0x10eb97d047f8d84fe263a02bb4a656ac6674f6679d74532cc37546289e073a9d","urls":["bzz-raw://3e41287d40b0c46982f1083d40d32de2761f009c5c51627fe79a7feb0ab1cf5c","dweb:/ipfs/Qme7dbh6HX3ZvUJdbQAcVqXkmyXyfcLiUZRhhon3cU6K8p"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol":{"keccak256":"0x4515543bc4c78561f6bea83ecfdfc3dead55bd59858287d682045b11de1ae575","urls":["bzz-raw://60601f91440125727244fffd2ba84da7caafecaae0fd887c7ccfec678e02b61e","dweb:/ipfs/QmZnKPBtVDiQS9Dp8gZ4sa3ZeTrWVfqF7yuUd6Y8hwm1Rs"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8","urls":["bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621","dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0x2c33f654cefbbe80a9b436b5792cfe8bda2e87f139f110073c99762558db252f","urls":["bzz-raw://dc7ebd80046a52f28978cf46a24ff3e4c8568264ab6bb138038951c75d576167","dweb:/ipfs/QmQQjXVr4CbDR3DXd8GHEqn3JSJYTnbBHMJp9tvc29yXrc"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"keccak256":"0x195533c86d0ef72bcc06456a4f66a9b941f38eb403739b00f21fd7c1abd1ae54","urls":["bzz-raw://b1d578337048cad08c1c03041cca5978eff5428aa130c781b271ad9e5566e1f8","dweb:/ipfs/QmPFKL2r9CBsMwmUqqdcFPfHZB2qcs9g1HDrPxzWSxomvy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xb1970fac7b64e6c09611e6691791e848d5e3fe410fa5899e7df2e0afd77a99e3","urls":["bzz-raw://db5fbb3dddd8b7047465b62575d96231ba8a2774d37fb4737fbf23340fabbb03","dweb:/ipfs/QmVUSvooZKEdEdap619tcJjTLcAuH6QBdZqAzWwnAXZAWJ"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/structs/BitMaps.sol":{"keccak256":"0x3616f1b0d0a9ee1ca8f0953ecaceb9230e36f691c7974d30f964212acff52d2b","urls":["bzz-raw://d4bebdd07b31ac28e3e596ac6f0333da90a4e332405aa7d65f3a3a7e0b4cf15e","dweb:/ipfs/QmckoDU5bBnye2UtPcrfJNahLD2FbxrnPP9nrREMWPpnug"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/structs/Checkpoints.sol":{"keccak256":"0x66364cd3247ea71cdb58f080f5d5ed6732433a8001413139661841535494692f","urls":["bzz-raw://0f87914c6645b58eaf75f00a156037a7da91129f3a56aec44aebfc715b19ea44","dweb:/ipfs/QmNX7NLSMXyWuogvf8wfCwjUGwLhLBZrGktWPSdoHtERGp"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol":{"keccak256":"0x9b161e97b8967d4bc0c08d25741889a30692cdda4b71910bf1b0e315f1962212","urls":["bzz-raw://821500c39d095eaa25b06f46e65f1d0e97c4c96b39227f79077dee7d9e84051f","dweb:/ipfs/QmSTeGorKzSWF6HAmxo32uCZiEuKNvreQdUiX1AaYtUMTz"],"license":"MIT"},"src/core/RollupCore.sol":{"keccak256":"0xb721b488eaaf1b5bf5a42bc8c8eb48bbe00f243692c417a37a4c794de509186c","urls":["bzz-raw://e71cd88eeb2d569af6f82bc94ebeea1125d440437b0bac9ac892289a58366f01","dweb:/ipfs/QmSn73ArQVUy6VKWfxGLhBhBpD7kXkBaMGLwbJALiDNHBs"],"license":"Apache-2.0"},"src/core/interfaces/IEscapeHatch.sol":{"keccak256":"0xdb2f10d2a34d6a7d2bad4d13bcd5fe039aeab3047f6ca163e615e73ba1f87ddc","urls":["bzz-raw://7d565262c0608292d3235a6a9011e8e71212c45a2881635c4aaacdfc4348bddb","dweb:/ipfs/QmUV2MHGfFRR8gDvVtbJfbQ4nSie6PJjkfEatRWQQDHs2f"],"license":"Apache-2.0"},"src/core/interfaces/IFeeJuicePortal.sol":{"keccak256":"0xce84c8907395b4c11cc6dd8035d8e14560153450f9d88340cfb8abb914c66639","urls":["bzz-raw://f5eb389f1a6e9adbb2f24dad7a6c0bc706d49decad82ba9b582c288e12eddda6","dweb:/ipfs/QmNM3uQmJYn9B6RAHSMUT3TZMR6R75okjJErUEsuRjxGXt"],"license":"Apache-2.0"},"src/core/interfaces/IRollup.sol":{"keccak256":"0x4885f9bbf279f63143fa0ccd21ce4918fd34eef9ce4ba871c78c22ae6c174f8b","urls":["bzz-raw://c3eac7f06a1db468466f6e977fc204b4106808d0293ca57d336004ed33cc0add","dweb:/ipfs/QmUzzFrVi15V2WRFsgpSmDQBfPUbbA4ochmZD55VhovJBR"],"license":"Apache-2.0"},"src/core/interfaces/ISequencerRewardCalculator.sol":{"keccak256":"0xb7fb4ad1c171762783aecdd5e85036e71990438fc11e1121842b31c431ff0c67","urls":["bzz-raw://15bf6fea8074c7a5f71860b325786d2dd5b625cbfb5b0bd4d0fc4f1a5f566d5a","dweb:/ipfs/QmTH4XovGivVCs4Hp6PT3UVKLrSCPPtv1mmtvUeALVCnAZ"],"license":"Apache-2.0"},"src/core/interfaces/ISlasher.sol":{"keccak256":"0xf7dc3b2795b2806dbec7c94c33665abcf00a35ee65802a47f6222faf8641d302","urls":["bzz-raw://d7c9283746c66f04df5a133145b3196fc176e06e2fe6b3285056ffac68a09e9b","dweb:/ipfs/QmPxTkM1eMNFny3yibc69p1GqWvPkno5fzBjyju89h7CNk"],"license":"Apache-2.0"},"src/core/interfaces/IStaking.sol":{"keccak256":"0xc48108e5590bd25fa67f44dfe602e3f64509cd170c93279185d4fa6c87e8d0c0","urls":["bzz-raw://1724c0cf4b33aaec9adf6207dc77d97f16fdbc472099b01314458c55e85608fb","dweb:/ipfs/QmctJfzT7zenykjynptbsUiK6a8iQ1USv7iYBs9i9eij5a"],"license":"Apache-2.0"},"src/core/interfaces/IValidatorSelection.sol":{"keccak256":"0xe22dc335f3fd5f5cbf10928fa7e9e945ea8a04fa99362ec6e2022c862d7baca4","urls":["bzz-raw://e26be09d3c823c545a2252467e13b68d366f3e711e15085be09f565ac436acc9","dweb:/ipfs/QmS1ddcZteAjeojaJJz1ZgRPdynzpNu1HSSPbmEjJNe99G"],"license":"Apache-2.0"},"src/core/interfaces/IVerifier.sol":{"keccak256":"0xf5b6025ff3d59b8922bb45fb05786764e74109b4a349d206b8a7979f46484c55","urls":["bzz-raw://98ec47ac3e15b1d8f2c80854ed6fd83e655e9e96341bb827f3be8e6b47f4c7fb","dweb:/ipfs/QmcmUkLgM7fb7mEaJTiWJWrZTW2kAWtRcYS6imBfmueALe"],"license":"Apache-2.0"},"src/core/interfaces/messagebridge/IInbox.sol":{"keccak256":"0x1149c904c8b3bd2942628fbab5480cdc044e831d51963f9e6946f1974cc162bd","urls":["bzz-raw://af2f1f49feba389b0bdbf427c4a85fac2908699585e5babd75f77cf14416ed5f","dweb:/ipfs/QmZYjZyhicCpTcwPuWTjTTUxnaBnfv5bTMWDgxyDGqy8Gm"],"license":"Apache-2.0"},"src/core/interfaces/messagebridge/IOutbox.sol":{"keccak256":"0xf66d0bb4f6d978acf91a036737cd4326bfab16a4030d10510d2976e4218ed8ad","urls":["bzz-raw://e796eea21d552b2ca4d0446bb096e2c980ab84816d9dd1398113293ae8128b30","dweb:/ipfs/QmNuGgRtPFgRe3asa68vDMcWpyfDFqQ5w5j5U7yWD1EsyZ"],"license":"Apache-2.0"},"src/core/libraries/ConstantsGen.sol":{"keccak256":"0xe49740db3cbad2fa2e9949912e5bd6c60f4df7decd75e7c70854d91c32376d6a","urls":["bzz-raw://51e6d2ef7403905632c983aabd5f6cd9c54cf1d69c45bf09ed16756ed7562596","dweb:/ipfs/QmbGu9ehSTAaFgchgStzYqfYnpWkTwynZV6ZPW8aWcGrQC"],"license":"Apache-2.0"},"src/core/libraries/DataStructures.sol":{"keccak256":"0x5ea9d1097f0b53eafbd72332d4c5c517307e5a056266befe5b46f5f43ee3d83c","urls":["bzz-raw://1a742311dc3c5ead2d5361549f017d20f46c40a4e74e879823ac168cf5b572d4","dweb:/ipfs/QmTNDc1fiPti41QqJTJQoV9uduB6eXaQhbfq1hfVVjVNvS"],"license":"Apache-2.0"},"src/core/libraries/Errors.sol":{"keccak256":"0xeb0e1ac808b43123469f5d8249fa1769549c30e4ae899ae52e1200c43d9c2217","urls":["bzz-raw://886e98c5838765908f0d61a90b02abc834e880fc04fa3155114306943443c2af","dweb:/ipfs/QmboYvMGc4rTpaLbT22LgNvnd4nLmirbMfosAxXyGFV9AA"],"license":"Apache-2.0"},"src/core/libraries/HatchMath.sol":{"keccak256":"0xca787b2889e281c8db132043312aa9513315669782981689824344c910833fe4","urls":["bzz-raw://77ec2f6b5919d53d3a7128f6006155f2566a84e7a56cd26e9d5e6d1514ccd7a2","dweb:/ipfs/Qmc3Z2quujEwxQU1JBfrxhkiULaczspBsTMjXibqXCjFyd"],"license":"Apache-2.0"},"src/core/libraries/SlashPayloadLib.sol":{"keccak256":"0xb9322072eea0036dec74a9222a92a7fcb2518db4491764125eedb63f90f9c830","urls":["bzz-raw://7b7ea317d170f1667e921f8957ea1de4452280f5274bfd9391b6efd6db2e64c8","dweb:/ipfs/QmQs5H78G9LxEzHmYNLDqipgVn1n8Txc94Whc4dLbB25u6"],"license":"Apache-2.0"},"src/core/libraries/SlashRoundLib.sol":{"keccak256":"0x6773eea1fa593e5c1e16fcd3a8341b537bf5ed7ee2f10472649dfd542e3ade8e","urls":["bzz-raw://756bdaa3facd4034149eeb3553ae99777b646c3e16abf8d41f9558e74249baa6","dweb:/ipfs/QmNpb62diGKNKf5pcynejjhNex9c6PTkZnVUeuLvJ2qCZ9"],"license":"Apache-2.0"},"src/core/libraries/StakingQueue.sol":{"keccak256":"0xbbeafda1659a92be14ec5b77838952a089f075cc1d0c5f348b6ff336ea6a1a98","urls":["bzz-raw://f3c8bdb1de77dab697ef4442f72fa4830c757059f8d948d2f3aeb7f6983aa64f","dweb:/ipfs/QmSDYdTnFo8nx34q3fdJCKpy8DCnKBQ4isxr49o4sY5T6T"],"license":"Apache-2.0"},"src/core/libraries/TimeLib.sol":{"keccak256":"0x865b760fe681ee74a93b49491d897a98091432ebc2923ff17717ddb6d26d31ab","urls":["bzz-raw://4ccdfb80464d8e58a95a68314fe2dd33f4a1634ab0695a9a4e9c180a50cc592b","dweb:/ipfs/QmNUUFN7RTjiicZCkci6eEnfromVTPS2MVE4CkbqoneV6P"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/CheckpointLog.sol":{"keccak256":"0x613513b7eb7855ff619c9eb3f1589fcfb0d7675e15c5261034ac353a62c5cabf","urls":["bzz-raw://110e7cc1eae76116a6682a9044cf9031744a7a8c46164987e246923169618d5e","dweb:/ipfs/QmcuhMXiGWjAbYGYYXKrTCLNYguQZpgxpWVWteJezYKVzQ"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/StakingQueueConfig.sol":{"keccak256":"0x32b00fd08e1754d9d9c9b377ae0a0ea887ace519db0ec6d252e1b2216891068e","urls":["bzz-raw://4ecea0a1ff8536819d37d3800b2915249b5c854d9dc611e91aae81df6acf7d76","dweb:/ipfs/Qmf3FgXCf1MP78p5B76kQnwx8yXFXncutVzQhV2fteBvVn"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/Tips.sol":{"keccak256":"0xdf872f54470e59b86349871e2c12075e8daaad85894f90e64f92538daf5f4008","urls":["bzz-raw://493e4bc02c6e9acbb5bfaa68f19bf4defb409211b701784e43d2ca6cbc11ccd1","dweb:/ipfs/QmSUahndZ78LBx6WdozXWL6QkqxZXzrXpHna2kGwCqgy34"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/fees/FeeConfig.sol":{"keccak256":"0xd5593d342fd9e75cf10d9c126d5aa46eab6707221111d81757e0f5c3473c23fd","urls":["bzz-raw://5cdfdfa94ea9d7b93cb80bdbd9e81c80fc7d71de890d88bb957960d0d5734298","dweb:/ipfs/QmQ2VjHtpja19AxDnGg2Q5hCck678PUrfLDuwUNvcyo4YS"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/fees/FeeStructs.sol":{"keccak256":"0x23304769b5d5098b6d6b1092be483f34c0c901d7e14667404e8c5335dad8b501","urls":["bzz-raw://9ef5000b6a27a338f60dad80f73ea03d6560afc46c063d8d52932574d82cf157","dweb:/ipfs/QmSzdqmERrrCqdfqy4jXhdiyokyNRLvi4qLp85iw8rR9iJ"],"license":"Apache-2.0"},"src/core/libraries/crypto/Hash.sol":{"keccak256":"0x0e2bad615ee34b98ffdc7b81558e78ad3701cf8e02dc0fa4721555b4cdb861cb","urls":["bzz-raw://8f69943a9ad3fba8a12ae34b3d60815c4339ea66a5ec75beb781d22a872c2d4d","dweb:/ipfs/QmTfjRk9vBaxfziFgwYzWgTWFEvbB8EEudkcYupPw6qLXW"],"license":"Apache-2.0"},"src/core/libraries/crypto/MerkleLib.sol":{"keccak256":"0xb41c737e197cf6979d9fde0e4317f5feabb17530b72a191098e4bb802e9bbcc4","urls":["bzz-raw://f2312f38220afc045e3335e520ab15f34c90a2fbf660faac7f35a36e0a7abe60","dweb:/ipfs/QmcVJdTNtZnej3w4hAcoDHCjPUcLAsVQvcEGWN7N7UwLKz"],"license":"Apache-2.0"},"src/core/libraries/crypto/SampleLib.sol":{"keccak256":"0x59e87e7d6a1e966c0f73bd919825ff7d81dc898625fe9fd20e6786e10b43783e","urls":["bzz-raw://a931d31192faf6d9d9c82fc7099a776b5886d90dd0a2a9ee8093cc680dfdef70","dweb:/ipfs/QmbQjTTf96tr2WSiuoWK8k984dGuXKooZWZ5o9EL7wEPhv"],"license":"Apache-2.0"},"src/core/libraries/rollup/AttestationLib.sol":{"keccak256":"0xf2111c30dc0d6c81d4f990990dfa37813932180e2b94739050356c5942f316e3","urls":["bzz-raw://fc4d8c42797fa58646094be9e108a60a278f2c2beea06bd7b06b00933b00c5b9","dweb:/ipfs/QmdNPs36gak9y4YoCQq2ttv1nj8ALyab6f9P7SoozECrfN"],"license":"Apache-2.0"},"src/core/libraries/rollup/AttesterExitExtLib.sol":{"keccak256":"0x8fb7d49566291d6a7ddc8e3eb8193c99a3531f199a6092e5bc9d0340b9933893","urls":["bzz-raw://7b30e850ce2226dfd54b4e29b2889f2cc1f2b4029be703b8aa93db14c569cb04","dweb:/ipfs/QmYcrycdjUp9B4KPHAD8cUmWdc1qjiGMyCuZrBUQiTw9CT"],"license":"Apache-2.0"},"src/core/libraries/rollup/BlobLib.sol":{"keccak256":"0x5b0d454bd38592154954f1da4cc59f50a036d0a28a169401abd9b5fdb88a4fe1","urls":["bzz-raw://68cf3a3fa979a6cfdc618e66621a0233263a83c259b17f6193fb0339796bee9d","dweb:/ipfs/QmcRKQmFf8mZxWKUT7Vgg3LnTxVsCen5f8TnMqCQMGi2j6"],"license":"Apache-2.0"},"src/core/libraries/rollup/CoordinationSignatureLib.sol":{"keccak256":"0x939c2aa29f536822f1f35db30af3b783986612bb35a210c583247f764c39dfae","urls":["bzz-raw://6f5e71fe318f83063eda2027992740e7be7e0274887b4c11ab00ef3199398729","dweb:/ipfs/QmPGkRVfkoLj8bi95vyySrtFeTaUGf62qcWoBy1nZRjZQc"],"license":"Apache-2.0"},"src/core/libraries/rollup/EpochProofExtLib.sol":{"keccak256":"0x448e42586ecb687b7a62afb6b48ddef666b963856aa4af4f2a8c391ade29532b","urls":["bzz-raw://848711298ec768e174750b3dc30167252a98eba8b82ccfc283bff063afdf8434","dweb:/ipfs/QmZBEU7Hk2Xmw8L7bpWLCTw9saDfQuQTVMRnU8A6aAwNms"],"license":"Apache-2.0"},"src/core/libraries/rollup/EpochProofLib.sol":{"keccak256":"0x5e64ec4ed2646b18c30650245a148648cf348b99077f0355452b61e967f28811","urls":["bzz-raw://405f0a75293f577bb1528a2603941baf086e6e5f464aae02d46e0fbf467a9926","dweb:/ipfs/QmSSybtZapD55JC5Ey5SyuyCBqi7MgCS5UBJRKF5KKs5yA"],"license":"Apache-2.0"},"src/core/libraries/rollup/FeeLib.sol":{"keccak256":"0x8542067d8641a712cbcbd1b8f004129d54f31da3edf36463901baad3f53a1fdd","urls":["bzz-raw://72dce5dee233e49f6371433d455a38e21a9c2d4be21f1276ca3b247757e5d6bc","dweb:/ipfs/QmReGPHQLGH1Rbocqrs6BGbvuietB4j151s9L5m3SkJYzk"],"license":"Apache-2.0"},"src/core/libraries/rollup/FieldLib.sol":{"keccak256":"0xd09f77d3aa6d7efc844e99bd496a145171613825bc45d35e1518889098f91e95","urls":["bzz-raw://499d0aeb3c7b6801e49f7554110a194ebeca73bec4ddf4b00ea8dd64fcc4b2ac","dweb:/ipfs/QmQf7EeP4kwTGPR2xfDK2MpNAqqcAY4vWZ3faEKn6JEW8R"],"license":"Apache-2.0"},"src/core/libraries/rollup/InvalidateLib.sol":{"keccak256":"0x2d88d0176cb9c5bcf449b4062d2fb334d7ea124b801bd43eeeb53c5edf1fcd0e","urls":["bzz-raw://0b4fe49115aec50f7113ba8bd20550089fac6569d1ed5e4a7e8189529a4ff82d","dweb:/ipfs/QmQ3GJ53AocunyjaaBRQvsczuGNvp4JV73qksdt8Y55cNx"],"license":"Apache-2.0"},"src/core/libraries/rollup/ProposeLib.sol":{"keccak256":"0x90d4fff721a1bcdbb555aad73a040ac1f0c3a61e286b0f291f47248129d8a777","urls":["bzz-raw://988c7390ba413ae25939df5a9f8850649106627ddf453a60b472e31c32a97156","dweb:/ipfs/QmXNPKm6y3bgTmjfeTMrY4sfBUFT4fLxZsMBBSC13Nt6oy"],"license":"Apache-2.0"},"src/core/libraries/rollup/ProposedHeaderLib.sol":{"keccak256":"0x43a9fa530b7cb948c1d7c436bddafdd8ddd8c022c67e25045372bc68b9e5018c","urls":["bzz-raw://904e4aa94b322f68c605dd34ea38bb77343437e2f2203c3e650cf7a7bb3aa19e","dweb:/ipfs/QmX3H4PMwh57L5Zv3LFrHjkNmgVZiik4FmzSyJhnTJcqPD"],"license":"Apache-2.0"},"src/core/libraries/rollup/RewardExtLib.sol":{"keccak256":"0x258e1b7ebfa2c5cecc4d5bcecacfda7e6398b0191a08d6f2a9f775724ab7fd5d","urls":["bzz-raw://9d1d38d938a44dd27419cb656a7726609da2dc074fef9c54e35909d5e304915b","dweb:/ipfs/QmSZ6VVTYYBXQra114KmdZyVXVSh6J8MLKRjwEF9EmE3fp"],"license":"Apache-2.0"},"src/core/libraries/rollup/RewardLib.sol":{"keccak256":"0x3a73a07577c713179be2de8df601445e79c606afb42f74bed33d1000c6f14ff8","urls":["bzz-raw://e432e402f6721bf70849ae3d731dcc669abeeb7df8399c878cc946fea0657a1a","dweb:/ipfs/QmYuGKQvN9iFhQpKLo6Rd7oTkMZx6VfdrJFh6tVgLEDg5M"],"license":"Apache-2.0"},"src/core/libraries/rollup/RollupOperationsExtLib.sol":{"keccak256":"0x21451f575ac7e42628576c961ff34072132511a2ec8cf3e794cc397a87553ad6","urls":["bzz-raw://5fd0643d9febd79148ceacb0006860b80fabe42aa9ff97faabe5a9a170aef604","dweb:/ipfs/QmXr9Lb7WdCebnVdte2vDZnFNxe6gW8MWY5HuSqtZCtNTE"],"license":"Apache-2.0"},"src/core/libraries/rollup/STFLib.sol":{"keccak256":"0xcb2ae0566bd5b0834f8ec2f73d78037f25d4d65894bff1ab8abcb9f8c65c7bc0","urls":["bzz-raw://35689b10ee3d4fff126625efa170fe77c617441fd7902d7376488af5061a79e0","dweb:/ipfs/QmUzDZoMrpJAuhVYVGSruX4mj9jTJmSZncvoTHbsyZL7eM"],"license":"Apache-2.0"},"src/core/libraries/rollup/SequencerRewardCalculatorLib.sol":{"keccak256":"0x2d5e8efc5a87bec1d50a8c9df0696a8248e0905ab62dcd7ec6a51527ad33b604","urls":["bzz-raw://15d4a7d1f265fc1a248762702373534fcae9d85df5150e5e1a45f79b94736ed4","dweb:/ipfs/QmdAT5Aw6JSg5GJnTikfDtJHnJZuMib7L8GB3yQ4jMuiFr"],"license":"Apache-2.0"},"src/core/libraries/rollup/SlasherDeploymentExtLib.sol":{"keccak256":"0x438eef52411afac7db0fbe0a4b976ce50a9b424ed4fe262ace0d19f724e9d540","urls":["bzz-raw://593460e554bd030c282ac532146a4c08495595814931f6eb65ba5df1234513b5","dweb:/ipfs/QmS99z9JWufE7roRfx9a1453J8TVJXpREJDKLcY3gaSuKn"],"license":"Apache-2.0"},"src/core/libraries/rollup/StakingLib.sol":{"keccak256":"0x64132e16903b88cc0caf2deb576e06f3f52e77fdc78c8af65ebc331d5418f081","urls":["bzz-raw://bf2c055fe01b3693fb0cbc3dd06b818a766e664455f7f0966cf3f8544a24b055","dweb:/ipfs/QmciPGacwFhpwxvJjpm3VYwuhA8yVtk9Ju2TdUWFMKhXJa"],"license":"Apache-2.0"},"src/core/libraries/rollup/ValidatorOperationsExtLib.sol":{"keccak256":"0x6cfa5dd1e3b5fbb9118a727311f1121d87089a54744c61c30d431c2ecbdca200","urls":["bzz-raw://40e2425b4aa022398847b57da1bea1290418b855b5312d1e24c9e1113aa05c1f","dweb:/ipfs/QmaCiBGFciNUUecE9axtgoQqiQsSHc2ZQHzHWiiWMCn2ML"],"license":"Apache-2.0"},"src/core/libraries/rollup/ValidatorSelectionLib.sol":{"keccak256":"0xf6ba71f62d3b0e57403087cfa1c16d5f8adf30eb16d78e96510d5f48d3f681d9","urls":["bzz-raw://ff43237bc4904ee1eef99da183c8082811737b8702dc452572498526dbdfe9c2","dweb:/ipfs/QmaPuWp41oRGZcMLDK2Qf4BRz7QBr1HU72qb31qasniUKW"],"license":"Apache-2.0"},"src/core/messagebridge/FeeJuicePortal.sol":{"keccak256":"0x587faf2741b0cd58ea207f2337bc80964ff784d0e6f2de8e7d6e226a3dd9d187","urls":["bzz-raw://f10d4355ddeba853507d93038804972904ca61f47b9ff0c7272c87881445869d","dweb:/ipfs/QmYfUZ9xgbWpwrP8kXUQTEa3P2G56iFFikNb6UyKctbi7j"],"license":"Apache-2.0"},"src/core/messagebridge/Inbox.sol":{"keccak256":"0xe5c09dfe6cdbc047470a48630d62366219d59d5d82a57ba230f053ab058088c4","urls":["bzz-raw://e88076e7cbbf9f4f1886762dc62e4cec2323ebc7e8bfa8ce7030f739194271a6","dweb:/ipfs/QmRHXcbCYEGUU4zCy84LrXykDQt8jY7YHZXpcSwMNatZyv"],"license":"Apache-2.0"},"src/core/messagebridge/Outbox.sol":{"keccak256":"0x1a78d6755a0f604a8f75a3059a2b8e5b6eb2a01540c39bf43bbfb56aaf063cf4","urls":["bzz-raw://bfffb428824b7e8d01070b639fb4b5696619c3205c89d8614c45f2e97aa1f24e","dweb:/ipfs/QmfVTDZRszShpqhn42zBjGGBkLvAub746yj4n6L2dzNSsj"],"license":"Apache-2.0"},"src/core/reward-boost/RewardBooster.sol":{"keccak256":"0x1cffe0dcbc06775ad415b06cd3591f74331bad3b154a3305ea6c5a081915fce0","urls":["bzz-raw://a2fcdbdcc260b3330bae0bc61227f652f9cb68e175fbc7d4173bf1d2dfaa92d1","dweb:/ipfs/QmddUmciRbznTTfBpbZf2p3R9sC1oePRF9C3Swnq8qU3Xb"],"license":"Apache-2.0"},"src/core/slashing/Slasher.sol":{"keccak256":"0xc3040cd1813a6064a6afda9ca8b1f65f5cba2e7359050c48507d2f71d3606786","urls":["bzz-raw://73f73fac9ffe650304c68a49635604806b86b0a5baadbf59ef36931e7937bc51","dweb:/ipfs/QmaMMMXycUeybJyf2ZowJgQ1Wo4ZC7g5kyp1BHWfj8dkD9"],"license":"Apache-2.0"},"src/core/slashing/SlashingProposer.sol":{"keccak256":"0x83021af7c9ea602728d0ea0c3a01b222bdfee96af341537473d81f6e1e70d32c","urls":["bzz-raw://65b80e908621361c40178ea2255d096f2ca323201b117de24bf561b5e7ca698f","dweb:/ipfs/QmdKMw2sLn16jGZs9RjQnmxwkdsUrRzjJ3PLdZMPv8JceW"],"license":"Apache-2.0"},"src/governance/Bn254LibWrapper.sol":{"keccak256":"0xea39571de45fe0fec82d9e760998677eb2432e08c6cdb00c41efa58caf56e607","urls":["bzz-raw://1e470b821f3d87fa0c988c5f23a8deed3849bffd2527b3b4ee137a90e0c1264c","dweb:/ipfs/QmW3M4HyRLDruV5AYXCKicFCiiczmwnSTtnwVKUnQSm7a8"],"license":"Apache-2.0"},"src/governance/GSE.sol":{"keccak256":"0xc19fa4868d78030e2411dd5cef6d0da09645ade1d1ea0c4374b284a89feb722a","urls":["bzz-raw://d06396c249566d0e9de5d34eade2bf27c4d583005c0129787bf6c413dcd9e273","dweb:/ipfs/QmcimKKiV9KqobS5wzPsKYzyYu5WezCF3gyHkekf5tjrUU"],"license":"Apache-2.0"},"src/governance/GSEPayload.sol":{"keccak256":"0x40e5385b008f0335b50e066c647bb906685511c9fef206ce90a3391468558bae","urls":["bzz-raw://a129e87e1d57cf0813b14108cbdbcdd4c114b20f3f2d67477302d6d050120c7e","dweb:/ipfs/QmRcQQkeDhkrmQha3nkA8qvXnGmF6nLhZMKAhMx61A7a5y"],"license":"Apache-2.0"},"src/governance/Governance.sol":{"keccak256":"0x07770c3d80369adae51be8e361f63a2aa5ec489b354b10c8590be1e294dfe2e5","urls":["bzz-raw://7219becf3467ea8368dba0bd093ba932b165cf3f214e7286f652e2730bf42eaf","dweb:/ipfs/QmTSCDhSQBTKhzGUk12phxhqohSba6yopYMzF5T5XPFUWw"],"license":"Apache-2.0"},"src/governance/interfaces/IBn254LibWrapper.sol":{"keccak256":"0xdd0a3de8b8ff67cf2bf090d04b4a37aa6d604f402db3328387d2466d2354464a","urls":["bzz-raw://daef0234547509cd7ae3a7babf0e50a8d1ca2894f1817e3e2409a50fd32947b9","dweb:/ipfs/QmbwSedqnBfsqRnUq8XcXzoeoyhZTXJWJ9rpJn61BAJfej"],"license":"Apache-2.0"},"src/governance/interfaces/IEmpire.sol":{"keccak256":"0xe6a8a8c3fef8e6f9f5118bd40c63e951b13a59d5f885bbb979d38745ef760ed3","urls":["bzz-raw://940c1fe4138d7364ccdb7d5635ea90bafa1da274f680039b0b54ee8c2a275a9a","dweb:/ipfs/QmX2EeoVyES18BMgcbKVDb36MCq8ooDVR98m2RmnmZjEAo"],"license":"Apache-2.0"},"src/governance/interfaces/IGovernance.sol":{"keccak256":"0xe420d305fbe7c35f4620cd1e0f05f9f4c5a91532621d21a64ea553a3d9a3c005","urls":["bzz-raw://1900ac41f945aa692d5228f134ae63840081d284bf89fdd2a06b45424fe359ff","dweb:/ipfs/QmePFZ1xv5qfftJVDLc98XUVFsrpuKAbKZiro7MoMDTpoa"],"license":"Apache-2.0"},"src/governance/interfaces/IGovernanceProposer.sol":{"keccak256":"0x2be820a5452c481ffd329d68c46d0af6a286934963f26b36d363cd34fb0e5817","urls":["bzz-raw://f58839d1504e11e7da42b7f5a03fb9b9d8cc39ab4c16cfb86fa44c4de08df76f","dweb:/ipfs/QmR6jUJozP9tfpZuSduk66E8n7WuL3zzsR3WHZ7BR2ZBX2"],"license":"Apache-2.0"},"src/governance/interfaces/IPayload.sol":{"keccak256":"0x5844ea725ce56ac8adeb20b2d37aa431ca087f68a65a7ca91f981be7458737c3","urls":["bzz-raw://5ea670db51b2ccfac05a684b95458ecc015c9d12a6567c3f73d473386533f58c","dweb:/ipfs/QmRUB8mckkGQ4nNsErRhnKMsD9SSkokRSpnr5XZC9dZdin"],"license":"Apache-2.0"},"src/governance/interfaces/IProposerPayload.sol":{"keccak256":"0x89068dd464c0bfb7d447c0e99728277e03c7c4b864208ead20321f0590187248","urls":["bzz-raw://4d1d9ba5f8b7da374d773acde9514ca6607ad31a3e83950caa097bdb8b0f9167","dweb:/ipfs/Qmd7tWAD2Ubz434zZPJvuyAGsHYpXBHvVhVefLFzUudD2o"],"license":"Apache-2.0"},"src/governance/interfaces/IRegistry.sol":{"keccak256":"0xc3678c04c0945d3dc1d8007df3dc7f8b25d8108b0b25134842ffc5169f996ce8","urls":["bzz-raw://71e4e401f1a6f561262755cc2e1c347cd3aa79e67d2e52ca547864f49de01724","dweb:/ipfs/QmPvoKFEDTb41DSC3MmDMqtM3trj5oZb1Jj2jtQSnNfHBn"],"license":"Apache-2.0"},"src/governance/interfaces/IRewardDistributor.sol":{"keccak256":"0xf263f75be83d0b0e3c8f17ec7fc2558d3543df788dcb2db6f1ee158208134f14","urls":["bzz-raw://b2b65819a5f9ecd2237957e987bb69160d3076ccaf9f76f925a936e574d63d76","dweb:/ipfs/QmNgWESeo6UUvgW7rCMP3d4o8mUqSSbKrwbicH4kaUrm7h"],"license":"Apache-2.0"},"src/governance/libraries/AddressSnapshotLib.sol":{"keccak256":"0x1006e58059e0a1f0fef102f2f11f5649dffc7f2eb066fce51845e65a064f4210","urls":["bzz-raw://de385ab9eb3bb66d7be1218b49ae9bba7d88797bcb375b9a7481a209d303a402","dweb:/ipfs/QmZe6DTv3cACfdXNSMhbMhoefg31LW3uLxHLDC7nZhb4Yp"],"license":"Apache-2.0"},"src/governance/libraries/CheckpointedUintLib.sol":{"keccak256":"0xcd73cf7a62e4ac5cc79f7f8df8b35d5c5e4df5b8a3478bcbc2b29c9aa89ea4b4","urls":["bzz-raw://f56f37060d39d3c9276f23c96be7f6b1ea44676312dbaa1ab16ab3bff6acebf1","dweb:/ipfs/QmPDUEEgdbpTTs9r3fvdMYJo9akCRsWcJXyarBhQgcKb5q"],"license":"Apache-2.0"},"src/governance/libraries/ConfigurationLib.sol":{"keccak256":"0x7cb65bdbd8d077f3cfc01b065fb3a57628db36cd46f68885c74b9131198c2149","urls":["bzz-raw://e37bde50f5f739f479feb95fbe81ed24ee47f841b99f066ecf6782e758d1978a","dweb:/ipfs/QmebPE5REUpYRB8dikUebcGtyk9uy44G9mbchKJtHxJAgy"],"license":"Apache-2.0"},"src/governance/libraries/DepositDelegationLib.sol":{"keccak256":"0x37fbca65ccabec9d901bd71d684dceec7c59fa5a05438fd209ea0d5e16e764c0","urls":["bzz-raw://e42f2622978abc3ac84223a6b206201898d0269d20bf81539636c0999a0db9eb","dweb:/ipfs/QmW4BgTjR6BuPxwxreKarUeK1u8gx3p9yFdDD4EsC5hkyb"],"license":"Apache-2.0"},"src/governance/libraries/Errors.sol":{"keccak256":"0x8861ea7508138c83e89f186ce17accb42a6eee7d1d2e52841975d4ba676daae4","urls":["bzz-raw://b0d5b01c2b0a20c3c70a7ab2b8405d083a063bf5758beb87a4d488bda76078fa","dweb:/ipfs/QmfGH6CTCPA6nVA6KidcTSvaJ6MQZkv6KiuDVBTARGBTRv"],"license":"Apache-2.0"},"src/governance/libraries/ProposalLib.sol":{"keccak256":"0x616ffbb24c4454ca9e223e85ff01e8dca139723d5cd312d5d6f6111d79782a90","urls":["bzz-raw://192f9be3355a7a94d19ae4e5b397e5db19dde64ccc671e149da06dfaa2577192","dweb:/ipfs/QmTDcm7XEFLe7o5cXUmuu5wQDyprU78AVMymiWvrmP4tHT"],"license":"Apache-2.0"},"src/governance/libraries/compressed-data/Ballot.sol":{"keccak256":"0xca07dc8cf36ac2beae7674804af144b34b3c5848153351c17d996e9b3293cd5d","urls":["bzz-raw://6911cc49f1d6977c12f652063c14891697c1ffe49fdf36903c32a8ad73cbd012","dweb:/ipfs/QmQBEZARCAAj1ZLcswkH6FwP1RP8uuNjYTHqthmE9Z5RnM"],"license":"Apache-2.0"},"src/governance/libraries/compressed-data/Configuration.sol":{"keccak256":"0x40744f275af22d33c38fd9c6a7b822292c9c87b17ac2c78abbef4eb8356fd9f9","urls":["bzz-raw://73c685be7e934516207827a59cbbeb7fc1164e7659dd3ec857a91cfea765b482","dweb:/ipfs/QmQfudRpSSQnG9u4XV8iA2UAyDzQPFqWzpZy5NZbaD6htv"],"license":"Apache-2.0"},"src/governance/libraries/compressed-data/Proposal.sol":{"keccak256":"0x72cf619a21c8e95875c63d4361cbe1a815d9d67f36f3fe32b6c9ca4d9ab0d33a","urls":["bzz-raw://d80f47beb3f91da3cc68264c86fc8fb8f0e4abaf9d92243ab3206407fceed5c6","dweb:/ipfs/QmYyrBTDMfkTBu6EcKcSMR7JyfphZ5xH1VCQ8EHMQUvsoN"],"license":"Apache-2.0"},"src/governance/proposer/EmpireBase.sol":{"keccak256":"0x747b20e201dab632a831c12f1fee9ee52cc80a2098c77e8b6c7b09b0f3ba2bc0","urls":["bzz-raw://b7d4a0475ca364f75aa2a1d17ed9e6970f0be605126f2efe26d53c791d4a5209","dweb:/ipfs/Qma5tkTcy94PqE9vtQybQSyH9LWaHR8V3ubwDPZwiUNT35"],"license":"Apache-2.0"},"src/governance/proposer/GovernanceProposer.sol":{"keccak256":"0xa2829df5b65856c9f1d6bf490fb50616f14402ff8eece2e32b63828b8b9337c3","urls":["bzz-raw://8ad52830a7a3aed3477bf55f92c3d68cb1c16a5cf1d636227ab76a306c846607","dweb:/ipfs/QmRonyZQZj5D1e2g4Y6Tmj2AEUnekL4pGmgdMT4ycRAM8m"],"license":"Apache-2.0"},"src/mock/libraries/BlobLib.sol":{"keccak256":"0xa1b19239c5c64ba1b0c9f83ec0a30059f10ded12bf40d5d7c3f65974752b3121","urls":["bzz-raw://5cbce7d0dd0096232d60ec5c6920f211ffcaa46c8675b1129c1f939a1ee84837","dweb:/ipfs/QmSS2qUhzUuZY1qHDjWUGvHuMqMG3cjHoHeDVvgWsjMdA9"],"license":"Apache-2.0"},"src/periphery/SlashPayloadCloneable.sol":{"keccak256":"0xf3957502df4ba01cd0c05d5cd49488dbe38f4e182718013b3fef075da95a9e3f","urls":["bzz-raw://1bd7cdf387e137d007f53388748fd12cbfd016127f78455e617fb55bc4a66b21","dweb:/ipfs/QmVLHJ7hyuuSSLRmv3meDcRKiT42Duq4sEweBTmWMfSfk8"],"license":"Apache-2.0"},"src/shared/libraries/BN254Lib.sol":{"keccak256":"0x0c3a5b7dabde2f5c81f19e1a4a212308a8636b5bb4a16bb1a518d58ef4feb6f5","urls":["bzz-raw://870be6219c7081ed081cee2fa9ad1e7f3efff623ae1a59aed966f2bdcee65b7a","dweb:/ipfs/QmNzohb1TazCgaT1e55CMDuuG7AHdGrGA6jvT4wzxdAM52"],"license":"Apache-2.0"},"src/shared/libraries/CompressedTimeMath.sol":{"keccak256":"0x361023cf30593e7e27417c91af3702e75235fcab251e4ad5ac2e47306a730ec1","urls":["bzz-raw://9b192242472b3126c97a4a4e4fa792809a6bf20b548a57e677f5260c0dbf3ad3","dweb:/ipfs/QmfK4WAucepcqzMLu11rs68HJazwfegVsgK5tTco82SooB"],"license":"Apache-2.0"},"src/shared/libraries/SignatureLib.sol":{"keccak256":"0xb69989f57384383341d1bb4693fb1e6ce31a2ab6c0fadb48bf088078a332a56a","urls":["bzz-raw://f199be27853a14d746c567c5e3a473f474e84cfd3d119a6404e6ceff4e986e5c","dweb:/ipfs/QmWsLozeiKLQbTSEUDVZK2ASEX3EodKxT4DdA9BA6bD6N2"],"license":"Apache-2.0"},"src/shared/libraries/TimeMath.sol":{"keccak256":"0x8da20dc8b4ce296b7c11f117a3381bfe5cd611a3512a74a500e2e54e0353417f","urls":["bzz-raw://18c74be98a4e31e8a16356e573514f639a8fc43928e741f6ead81dd755e9a914","dweb:/ipfs/QmPDEdYYEj3DhXjrCDPuudJbhsBaNj1sK6hH94Z86168Q3"],"license":"Apache-2.0"}},"version":1},"id":75}