@aztec-foundation/l1-artifacts 6.0.0-rc.2 → 6.0.0-rc.5

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 (374) hide show
  1. package/dest/AttesterExitExtLibAbi.d.ts +12 -48
  2. package/dest/AttesterExitExtLibAbi.d.ts.map +1 -1
  3. package/dest/AttesterExitExtLibAbi.js +16 -64
  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 -48
  8. package/dest/CoinIssuerAbi.d.ts.map +1 -1
  9. package/dest/CoinIssuerAbi.js +16 -64
  10. package/dest/CoinIssuerAbi.js.map +1 -1
  11. package/dest/DateGatedRelayerAbi.d.ts +12 -48
  12. package/dest/DateGatedRelayerAbi.d.ts.map +1 -1
  13. package/dest/DateGatedRelayerAbi.js +16 -64
  14. package/dest/DateGatedRelayerAbi.js.map +1 -1
  15. package/dest/EmpireBaseAbi.d.ts +12 -48
  16. package/dest/EmpireBaseAbi.d.ts.map +1 -1
  17. package/dest/EmpireBaseAbi.js +16 -64
  18. package/dest/EmpireBaseAbi.js.map +1 -1
  19. package/dest/EpochProofExtLibAbi.d.ts +12 -48
  20. package/dest/EpochProofExtLibAbi.d.ts.map +1 -1
  21. package/dest/EpochProofExtLibAbi.js +16 -64
  22. package/dest/EpochProofExtLibAbi.js.map +1 -1
  23. package/dest/EpochProofExtLibBytecode.d.ts +1 -1
  24. package/dest/EpochProofExtLibBytecode.d.ts.map +1 -1
  25. package/dest/EpochProofExtLibBytecode.js +1 -1
  26. package/dest/EpochProofExtLibBytecode.js.map +1 -1
  27. package/dest/ErrorsAbi.d.ts +12 -48
  28. package/dest/ErrorsAbi.d.ts.map +1 -1
  29. package/dest/ErrorsAbi.js +16 -64
  30. package/dest/ErrorsAbi.js.map +1 -1
  31. package/dest/EscapeHatchAbi.d.ts +12 -48
  32. package/dest/EscapeHatchAbi.d.ts.map +1 -1
  33. package/dest/EscapeHatchAbi.js +16 -64
  34. package/dest/EscapeHatchAbi.js.map +1 -1
  35. package/dest/EscapeHatchBytecode.d.ts +1 -1
  36. package/dest/EscapeHatchBytecode.js +1 -1
  37. package/dest/EscapeHatchStorage.d.ts +2 -2
  38. package/dest/EscapeHatchStorage.js +2 -2
  39. package/dest/FeeAssetHandlerAbi.d.ts +12 -48
  40. package/dest/FeeAssetHandlerAbi.d.ts.map +1 -1
  41. package/dest/FeeAssetHandlerAbi.js +16 -64
  42. package/dest/FeeAssetHandlerAbi.js.map +1 -1
  43. package/dest/FeeJuicePortalAbi.d.ts +12 -48
  44. package/dest/FeeJuicePortalAbi.d.ts.map +1 -1
  45. package/dest/FeeJuicePortalAbi.js +16 -64
  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 -48
  50. package/dest/GSEAbi.d.ts.map +1 -1
  51. package/dest/GSEAbi.js +16 -64
  52. package/dest/GSEAbi.js.map +1 -1
  53. package/dest/GovernanceAbi.d.ts +12 -48
  54. package/dest/GovernanceAbi.d.ts.map +1 -1
  55. package/dest/GovernanceAbi.js +16 -64
  56. package/dest/GovernanceAbi.js.map +1 -1
  57. package/dest/GovernanceProposerAbi.d.ts +12 -48
  58. package/dest/GovernanceProposerAbi.d.ts.map +1 -1
  59. package/dest/GovernanceProposerAbi.js +16 -64
  60. package/dest/GovernanceProposerAbi.js.map +1 -1
  61. package/dest/HonkVerifierAbi.d.ts +12 -48
  62. package/dest/HonkVerifierAbi.d.ts.map +1 -1
  63. package/dest/HonkVerifierAbi.js +16 -64
  64. package/dest/HonkVerifierAbi.js.map +1 -1
  65. package/dest/IERC20Abi.d.ts +12 -48
  66. package/dest/IERC20Abi.d.ts.map +1 -1
  67. package/dest/IERC20Abi.js +16 -64
  68. package/dest/IERC20Abi.js.map +1 -1
  69. package/dest/ISequencerRewardCalculatorAbi.d.ts +2607 -0
  70. package/dest/ISequencerRewardCalculatorAbi.d.ts.map +1 -0
  71. package/dest/ISequencerRewardCalculatorAbi.js +3473 -0
  72. package/dest/ISequencerRewardCalculatorAbi.js.map +1 -0
  73. package/dest/ISequencerRewardCalculatorBytecode.d.ts +9 -0
  74. package/dest/ISequencerRewardCalculatorBytecode.d.ts.map +1 -0
  75. package/dest/ISequencerRewardCalculatorBytecode.js +9 -0
  76. package/dest/ISequencerRewardCalculatorBytecode.js.map +1 -0
  77. package/dest/IVerifierAbi.d.ts +12 -48
  78. package/dest/IVerifierAbi.d.ts.map +1 -1
  79. package/dest/IVerifierAbi.js +16 -64
  80. package/dest/IVerifierAbi.js.map +1 -1
  81. package/dest/InboxAbi.d.ts +12 -48
  82. package/dest/InboxAbi.d.ts.map +1 -1
  83. package/dest/InboxAbi.js +16 -64
  84. package/dest/InboxAbi.js.map +1 -1
  85. package/dest/InboxBytecode.d.ts +1 -1
  86. package/dest/InboxBytecode.js +1 -1
  87. package/dest/MockVerifierAbi.d.ts +12 -48
  88. package/dest/MockVerifierAbi.d.ts.map +1 -1
  89. package/dest/MockVerifierAbi.js +16 -64
  90. package/dest/MockVerifierAbi.js.map +1 -1
  91. package/dest/MockZKPassportVerifierAbi.d.ts +12 -48
  92. package/dest/MockZKPassportVerifierAbi.d.ts.map +1 -1
  93. package/dest/MockZKPassportVerifierAbi.js +16 -64
  94. package/dest/MockZKPassportVerifierAbi.js.map +1 -1
  95. package/dest/MultiAdderAbi.d.ts +12 -48
  96. package/dest/MultiAdderAbi.d.ts.map +1 -1
  97. package/dest/MultiAdderAbi.js +16 -64
  98. package/dest/MultiAdderAbi.js.map +1 -1
  99. package/dest/MultiAdderBytecode.d.ts +1 -1
  100. package/dest/MultiAdderBytecode.js +1 -1
  101. package/dest/NewGovernanceProposerPayloadAbi.d.ts +12 -48
  102. package/dest/NewGovernanceProposerPayloadAbi.d.ts.map +1 -1
  103. package/dest/NewGovernanceProposerPayloadAbi.js +16 -64
  104. package/dest/NewGovernanceProposerPayloadAbi.js.map +1 -1
  105. package/dest/OutboxAbi.d.ts +12 -48
  106. package/dest/OutboxAbi.d.ts.map +1 -1
  107. package/dest/OutboxAbi.js +16 -64
  108. package/dest/OutboxAbi.js.map +1 -1
  109. package/dest/OutboxBytecode.d.ts +1 -1
  110. package/dest/OutboxBytecode.js +1 -1
  111. package/dest/RegisterNewRollupVersionPayloadAbi.d.ts +12 -48
  112. package/dest/RegisterNewRollupVersionPayloadAbi.d.ts.map +1 -1
  113. package/dest/RegisterNewRollupVersionPayloadAbi.js +16 -64
  114. package/dest/RegisterNewRollupVersionPayloadAbi.js.map +1 -1
  115. package/dest/RegisterNewRollupVersionPayloadBytecode.d.ts +1 -1
  116. package/dest/RegisterNewRollupVersionPayloadBytecode.js +1 -1
  117. package/dest/RegistryAbi.d.ts +12 -48
  118. package/dest/RegistryAbi.d.ts.map +1 -1
  119. package/dest/RegistryAbi.js +16 -64
  120. package/dest/RegistryAbi.js.map +1 -1
  121. package/dest/RewardDistributorAbi.d.ts +12 -48
  122. package/dest/RewardDistributorAbi.d.ts.map +1 -1
  123. package/dest/RewardDistributorAbi.js +16 -64
  124. package/dest/RewardDistributorAbi.js.map +1 -1
  125. package/dest/RewardExtLibAbi.d.ts +59 -48
  126. package/dest/RewardExtLibAbi.d.ts.map +1 -1
  127. package/dest/RewardExtLibAbi.js +77 -64
  128. package/dest/RewardExtLibAbi.js.map +1 -1
  129. package/dest/RewardExtLibBytecode.d.ts +1 -1
  130. package/dest/RewardExtLibBytecode.d.ts.map +1 -1
  131. package/dest/RewardExtLibBytecode.js +1 -1
  132. package/dest/RewardExtLibBytecode.js.map +1 -1
  133. package/dest/RollupAbi.d.ts +72 -79
  134. package/dest/RollupAbi.d.ts.map +1 -1
  135. package/dest/RollupAbi.js +93 -104
  136. package/dest/RollupAbi.js.map +1 -1
  137. package/dest/RollupBytecode.d.ts +91 -82
  138. package/dest/RollupBytecode.d.ts.map +1 -1
  139. package/dest/RollupBytecode.js +94 -82
  140. package/dest/RollupBytecode.js.map +1 -1
  141. package/dest/RollupOperationsExtLibAbi.d.ts +12 -48
  142. package/dest/RollupOperationsExtLibAbi.d.ts.map +1 -1
  143. package/dest/RollupOperationsExtLibAbi.js +16 -64
  144. package/dest/RollupOperationsExtLibAbi.js.map +1 -1
  145. package/dest/RollupOperationsExtLibBytecode.d.ts +1 -1
  146. package/dest/RollupOperationsExtLibBytecode.d.ts.map +1 -1
  147. package/dest/RollupOperationsExtLibBytecode.js +1 -1
  148. package/dest/RollupOperationsExtLibBytecode.js.map +1 -1
  149. package/dest/RollupStorage.d.ts +2 -2
  150. package/dest/RollupStorage.js +2 -2
  151. package/dest/SlasherAbi.d.ts +12 -48
  152. package/dest/SlasherAbi.d.ts.map +1 -1
  153. package/dest/SlasherAbi.js +16 -64
  154. package/dest/SlasherAbi.js.map +1 -1
  155. package/dest/SlasherDeploymentExtLibAbi.d.ts +12 -48
  156. package/dest/SlasherDeploymentExtLibAbi.d.ts.map +1 -1
  157. package/dest/SlasherDeploymentExtLibAbi.js +16 -64
  158. package/dest/SlasherDeploymentExtLibAbi.js.map +1 -1
  159. package/dest/SlasherDeploymentExtLibBytecode.d.ts +1 -1
  160. package/dest/SlasherDeploymentExtLibBytecode.d.ts.map +1 -1
  161. package/dest/SlasherDeploymentExtLibBytecode.js +1 -1
  162. package/dest/SlasherDeploymentExtLibBytecode.js.map +1 -1
  163. package/dest/SlashingProposerAbi.d.ts +12 -48
  164. package/dest/SlashingProposerAbi.d.ts.map +1 -1
  165. package/dest/SlashingProposerAbi.js +16 -64
  166. package/dest/SlashingProposerAbi.js.map +1 -1
  167. package/dest/SlashingProposerBytecode.d.ts +1 -1
  168. package/dest/SlashingProposerBytecode.js +1 -1
  169. package/dest/StakingAssetHandlerAbi.d.ts +12 -48
  170. package/dest/StakingAssetHandlerAbi.d.ts.map +1 -1
  171. package/dest/StakingAssetHandlerAbi.js +16 -64
  172. package/dest/StakingAssetHandlerAbi.js.map +1 -1
  173. package/dest/TestERC20Abi.d.ts +12 -48
  174. package/dest/TestERC20Abi.d.ts.map +1 -1
  175. package/dest/TestERC20Abi.js +16 -64
  176. package/dest/TestERC20Abi.js.map +1 -1
  177. package/dest/TokenPortalAbi.d.ts +12 -48
  178. package/dest/TokenPortalAbi.d.ts.map +1 -1
  179. package/dest/TokenPortalAbi.js +16 -64
  180. package/dest/TokenPortalAbi.js.map +1 -1
  181. package/dest/TokenPortalBytecode.d.ts +1 -1
  182. package/dest/TokenPortalBytecode.js +1 -1
  183. package/dest/UniswapPortalAbi.d.ts +12 -48
  184. package/dest/UniswapPortalAbi.d.ts.map +1 -1
  185. package/dest/UniswapPortalAbi.js +16 -64
  186. package/dest/UniswapPortalAbi.js.map +1 -1
  187. package/dest/UniswapPortalBytecode.d.ts +1 -1
  188. package/dest/UniswapPortalBytecode.js +1 -1
  189. package/dest/ValidatorOperationsExtLibAbi.d.ts +12 -48
  190. package/dest/ValidatorOperationsExtLibAbi.d.ts.map +1 -1
  191. package/dest/ValidatorOperationsExtLibAbi.js +16 -64
  192. package/dest/ValidatorOperationsExtLibAbi.js.map +1 -1
  193. package/dest/ValidatorOperationsExtLibBytecode.d.ts +1 -1
  194. package/dest/ValidatorOperationsExtLibBytecode.d.ts.map +1 -1
  195. package/dest/ValidatorOperationsExtLibBytecode.js +1 -1
  196. package/dest/ValidatorOperationsExtLibBytecode.js.map +1 -1
  197. package/dest/ValidatorSelectionLibAbi.d.ts +12 -48
  198. package/dest/ValidatorSelectionLibAbi.d.ts.map +1 -1
  199. package/dest/ValidatorSelectionLibAbi.js +16 -64
  200. package/dest/ValidatorSelectionLibAbi.js.map +1 -1
  201. package/dest/ValidatorSelectionLibBytecode.d.ts +1 -1
  202. package/dest/ValidatorSelectionLibBytecode.js +1 -1
  203. package/dest/checksum.d.ts +1 -1
  204. package/dest/checksum.js +1 -1
  205. package/dest/index.d.ts +2 -0
  206. package/dest/index.d.ts.map +1 -1
  207. package/dest/index.js +2 -0
  208. package/dest/index.js.map +1 -1
  209. package/l1-contracts/cache/solidity-files-cache.json +1 -1
  210. package/l1-contracts/foundry.toml +1 -1
  211. package/l1-contracts/out/AddressSnapshotLib.sol/AddressSnapshotLib.json +1 -1
  212. package/l1-contracts/out/AttestationLib.sol/AttestationLib.json +1 -1
  213. package/l1-contracts/out/AttesterExitExtLib.sol/AttesterExitExtLib.json +1 -1
  214. package/l1-contracts/out/BN254Lib.sol/BN254Lib.json +1 -1
  215. package/l1-contracts/out/Ballot.sol/BallotLib.json +1 -1
  216. package/l1-contracts/out/BlobLib.sol/BlobLib.json +1 -1
  217. package/l1-contracts/out/Bn254LibWrapper.sol/Bn254LibWrapper.json +1 -1
  218. package/l1-contracts/out/CheckpointLog.sol/CompressedTempCheckpointLogLib.json +1 -1
  219. package/l1-contracts/out/CheckpointedUintLib.sol/CheckpointedUintLib.json +1 -1
  220. package/l1-contracts/out/CoinIssuer.sol/CoinIssuer.json +1 -1
  221. package/l1-contracts/out/CompressedTimeMath.sol/CompressedTimeMath.json +1 -1
  222. package/l1-contracts/out/Configuration.sol/CompressedConfigurationLib.json +1 -1
  223. package/l1-contracts/out/ConfigurationLib.sol/ConfigurationLib.json +1 -1
  224. package/l1-contracts/out/ConstantsGen.sol/Constants.json +1 -1
  225. package/l1-contracts/out/CoordinationSignatureLib.sol/CoordinationSignatureLib.json +1 -1
  226. package/l1-contracts/out/DataStructures.sol/DataStructures.json +1 -1
  227. package/l1-contracts/out/DateGatedRelayer.sol/DateGatedRelayer.json +1 -1
  228. package/l1-contracts/out/DeployAztecL1Contracts.s.sol/DeployAztecL1Contracts.json +1 -1
  229. package/l1-contracts/out/DeployRollupForUpgrade.s.sol/DeployRollupForUpgrade.json +1 -1
  230. package/l1-contracts/out/DeployRollupLib.sol/DeployRollupLib.json +1 -1
  231. package/l1-contracts/out/DeploymentConfiguration.sol/DeploymentConfiguration.json +1 -1
  232. package/l1-contracts/out/DeploymentConfiguration.sol/IDeploymentConfiguration.json +1 -1
  233. package/l1-contracts/out/DepositDelegationLib.sol/DepositDelegationLib.json +1 -1
  234. package/l1-contracts/out/EmpireBase.sol/EmpireBase.json +1 -1
  235. package/l1-contracts/out/EpochProofExtLib.sol/EpochProofExtLib.json +1 -1
  236. package/l1-contracts/out/EpochProofLib.sol/EpochProofLib.json +1 -1
  237. package/l1-contracts/out/Errors.sol/Errors.json +1 -1
  238. package/l1-contracts/out/EscapeHatch.sol/EscapeHatch.json +1 -1
  239. package/l1-contracts/out/FeeAssetHandler.sol/FeeAssetHandler.json +1 -1
  240. package/l1-contracts/out/FeeAssetHandler.sol/IFeeAssetHandler.json +1 -1
  241. package/l1-contracts/out/FeeConfig.sol/FeeConfigLib.json +1 -1
  242. package/l1-contracts/out/FeeConfig.sol/PriceLib.json +1 -1
  243. package/l1-contracts/out/FeeJuicePortal.sol/FeeJuicePortal.json +1 -1
  244. package/l1-contracts/out/FeeLib.sol/FeeLib.json +1 -1
  245. package/l1-contracts/out/FeeStructs.sol/FeeHeaderLib.json +1 -1
  246. package/l1-contracts/out/FeeStructs.sol/FeeStructsLib.json +1 -1
  247. package/l1-contracts/out/FieldLib.sol/FieldLib.json +1 -1
  248. package/l1-contracts/out/FlushRewarder.sol/FlushRewarder.json +1 -1
  249. package/l1-contracts/out/GSE.sol/GSE.json +1 -1
  250. package/l1-contracts/out/GSE.sol/GSECore.json +1 -1
  251. package/l1-contracts/out/GSE.sol/IGSE.json +1 -1
  252. package/l1-contracts/out/GSE.sol/IGSECore.json +1 -1
  253. package/l1-contracts/out/GSEPayload.sol/GSEPayload.json +1 -1
  254. package/l1-contracts/out/Governance.sol/Governance.json +1 -1
  255. package/l1-contracts/out/GovernanceProposer.sol/GovernanceProposer.json +1 -1
  256. package/l1-contracts/out/Hash.sol/Hash.json +1 -1
  257. package/l1-contracts/out/HonkVerifier.sol/HonkVerifier.json +1 -1
  258. package/l1-contracts/out/IBn254LibWrapper.sol/IBn254LibWrapper.json +1 -1
  259. package/l1-contracts/out/ICoinIssuer.sol/ICoinIssuer.json +1 -1
  260. package/l1-contracts/out/IDateGatedRelayer.sol/IDateGatedRelayer.json +1 -1
  261. package/l1-contracts/out/IEmpire.sol/IEmperor.json +1 -1
  262. package/l1-contracts/out/IEmpire.sol/IEmpire.json +1 -1
  263. package/l1-contracts/out/IFeeJuicePortal.sol/IFeeJuicePortal.json +1 -1
  264. package/l1-contracts/out/IFlushRewarder.sol/IFlushRewarder.json +1 -1
  265. package/l1-contracts/out/IGovernance.sol/IGovernance.json +1 -1
  266. package/l1-contracts/out/IGovernanceProposer.sol/IGovernanceProposer.json +1 -1
  267. package/l1-contracts/out/IInbox.sol/IInbox.json +1 -1
  268. package/l1-contracts/out/IInstance.sol/IInstance.json +1 -1
  269. package/l1-contracts/out/IMintableERC20.sol/IMintableERC20.json +1 -1
  270. package/l1-contracts/out/IOutbox.sol/IOutbox.json +1 -1
  271. package/l1-contracts/out/IPayload.sol/IPayload.json +1 -1
  272. package/l1-contracts/out/IProposerPayload.sol/IProposerPayload.json +1 -1
  273. package/l1-contracts/out/IRegistry.sol/IHaveVersion.json +1 -1
  274. package/l1-contracts/out/IRegistry.sol/IRegistry.json +1 -1
  275. package/l1-contracts/out/IRewardDistributor.sol/IRewardDistributor.json +1 -1
  276. package/l1-contracts/out/IRollup.sol/IRollup.json +1 -1
  277. package/l1-contracts/out/IRollup.sol/IRollupCore.json +1 -1
  278. package/l1-contracts/out/IRootRegistry.sol/IRootRegistry.json +1 -1
  279. package/l1-contracts/out/ISequencerRewardCalculator.sol/ISequencerRewardCalculator.json +1 -0
  280. package/l1-contracts/out/ISlasher.sol/ISlasher.json +1 -1
  281. package/l1-contracts/out/IStaking.sol/IStaking.json +1 -1
  282. package/l1-contracts/out/IStaking.sol/IStakingCore.json +1 -1
  283. package/l1-contracts/out/IValidatorSelection.sol/IValidatorSelection.json +1 -1
  284. package/l1-contracts/out/IValidatorSelection.sol/IValidatorSelectionCore.json +1 -1
  285. package/l1-contracts/out/IVerifier.sol/IVerifier.json +1 -1
  286. package/l1-contracts/out/Inbox.sol/Inbox.json +1 -1
  287. package/l1-contracts/out/InputsExtractor.sol/InputsExtractor.json +1 -1
  288. package/l1-contracts/out/InvalidateLib.sol/InvalidateLib.json +1 -1
  289. package/l1-contracts/out/MerkleLib.sol/MerkleLib.json +1 -1
  290. package/l1-contracts/out/MockERC20.sol/MockERC20.json +1 -1
  291. package/l1-contracts/out/MockERC721.sol/MockERC721.json +1 -1
  292. package/l1-contracts/out/MockFeeJuicePortal.sol/MockFeeJuicePortal.json +1 -1
  293. package/l1-contracts/out/MockVerifier.sol/MockVerifier.json +1 -1
  294. package/l1-contracts/out/MockZKPassportVerifier.sol/IZKPassportVerifier.json +1 -1
  295. package/l1-contracts/out/MockZKPassportVerifier.sol/MockZKPassportVerifier.json +1 -1
  296. package/l1-contracts/out/MultiAdder.sol/IMultiAdder.json +1 -1
  297. package/l1-contracts/out/MultiAdder.sol/MultiAdder.json +1 -1
  298. package/l1-contracts/out/Outbox.sol/Outbox.json +1 -1
  299. package/l1-contracts/out/OuterCount8.sol/HonkVerifier.json +1 -1
  300. package/l1-contracts/out/Proposal.sol/CompressedProposalLib.json +1 -1
  301. package/l1-contracts/out/ProposalLib.sol/ProposalLib.json +1 -1
  302. package/l1-contracts/out/ProposeLib.sol/ProposeLib.json +1 -1
  303. package/l1-contracts/out/ProposedHeaderLib.sol/ProposedHeaderLib.json +1 -1
  304. package/l1-contracts/out/RegisterNewRollupVersionPayload.sol/RegisterNewRollupVersionPayload.json +1 -1
  305. package/l1-contracts/out/Registry.sol/Registry.json +1 -1
  306. package/l1-contracts/out/RewardBooster.sol/IBooster.json +1 -1
  307. package/l1-contracts/out/RewardBooster.sol/IBoosterCore.json +1 -1
  308. package/l1-contracts/out/RewardBooster.sol/RewardBooster.json +1 -1
  309. package/l1-contracts/out/RewardDistributor.sol/RewardDistributor.json +1 -1
  310. package/l1-contracts/out/RewardExtLib.sol/RewardExtLib.json +1 -1
  311. package/l1-contracts/out/RewardLib.sol/BpsLib.json +1 -1
  312. package/l1-contracts/out/RewardLib.sol/RewardLib.json +1 -1
  313. package/l1-contracts/out/Rollup.sol/Rollup.json +1 -1
  314. package/l1-contracts/out/RollupConfiguration.sol/IRollupConfiguration.json +1 -1
  315. package/l1-contracts/out/RollupConfiguration.sol/RollupConfiguration.json +1 -1
  316. package/l1-contracts/out/RollupCore.sol/RollupCore.json +1 -1
  317. package/l1-contracts/out/RollupOperationsExtLib.sol/RollupOperationsExtLib.json +1 -1
  318. package/l1-contracts/out/STFLib.sol/STFLib.json +1 -1
  319. package/l1-contracts/out/SampleLib.sol/SampleLib.json +1 -1
  320. package/l1-contracts/out/SequencerRewardCalculatorLib.sol/SequencerRewardCalculatorLib.json +1 -0
  321. package/l1-contracts/out/SignatureLib.sol/SignatureLib.json +1 -1
  322. package/l1-contracts/out/SlashPayload.sol/SlashPayload.json +1 -1
  323. package/l1-contracts/out/SlashPayloadCloneable.sol/SlashPayloadCloneable.json +1 -1
  324. package/l1-contracts/out/SlashPayloadLib.sol/SlashPayloadLib.json +1 -1
  325. package/l1-contracts/out/SlashRoundLib.sol/CompressedSlashRoundMath.json +1 -1
  326. package/l1-contracts/out/Slasher.sol/Slasher.json +1 -1
  327. package/l1-contracts/out/SlasherDeploymentExtLib.sol/SlasherDeploymentExtLib.json +1 -1
  328. package/l1-contracts/out/SlashingProposer.sol/SlashingProposer.json +1 -1
  329. package/l1-contracts/out/StakingAssetHandler.sol/IStakingAssetHandler.json +1 -1
  330. package/l1-contracts/out/StakingAssetHandler.sol/StakingAssetHandler.json +1 -1
  331. package/l1-contracts/out/StakingLib.sol/StakingLib.json +1 -1
  332. package/l1-contracts/out/StakingQueue.sol/StakingQueueLib.json +1 -1
  333. package/l1-contracts/out/StakingQueueConfig.sol/StakingQueueConfigLib.json +1 -1
  334. package/l1-contracts/out/StdError.sol/stdError.json +1 -1
  335. package/l1-contracts/out/TestERC20.sol/TestERC20.json +1 -1
  336. package/l1-contracts/out/TestPayloads.sol/CallAssetPayload.json +1 -1
  337. package/l1-contracts/out/TestPayloads.sol/CallRevertingPayload.json +1 -1
  338. package/l1-contracts/out/TestPayloads.sol/EmptyPayload.json +1 -1
  339. package/l1-contracts/out/TestPayloads.sol/FakeRollup.json +1 -1
  340. package/l1-contracts/out/TestPayloads.sol/RevertingCall.json +1 -1
  341. package/l1-contracts/out/TestPayloads.sol/UpgradePayload.json +1 -1
  342. package/l1-contracts/out/TimeLib.sol/TimeLib.json +1 -1
  343. package/l1-contracts/out/Tips.sol/ChainTipsLib.json +1 -1
  344. package/l1-contracts/out/ValidatorOperationsExtLib.sol/ValidatorOperationsExtLib.json +1 -1
  345. package/l1-contracts/out/ValidatorSelectionLib.sol/ValidatorSelectionLib.json +1 -1
  346. package/l1-contracts/out/ZKPassportHelper.sol/ZKPassportHelper.json +1 -1
  347. package/l1-contracts/out/ZKPassportRootVerifier.sol/ZKPassportRootVerifier.json +1 -1
  348. package/l1-contracts/out/ZKPassportSubVerifier.sol/ZKPassportSubVerifier.json +1 -1
  349. package/l1-contracts/out/build-info/4cb7b5442b848dcc.json +1 -0
  350. package/l1-contracts/out/generated/HonkVerifier.sol/HonkVerifier.json +1 -1
  351. package/l1-contracts/out/libraries/Errors.sol/Errors.json +1 -1
  352. package/l1-contracts/out/rollup/BlobLib.sol/BlobLib.json +1 -1
  353. package/l1-contracts/out/src/ZKPassportHelper.sol/ZKPassportHelper.json +1 -1
  354. package/l1-contracts/out/src/ZKPassportRootVerifier.sol/ZKPassportRootVerifier.json +1 -1
  355. package/l1-contracts/out/src/ZKPassportSubVerifier.sol/ZKPassportSubVerifier.json +1 -1
  356. package/l1-contracts/script/deploy/RollupConfiguration.sol +5 -19
  357. package/l1-contracts/scripts/network-defaults.json +1 -2
  358. package/l1-contracts/src/core/Rollup.sol +18 -12
  359. package/l1-contracts/src/core/RollupCore.sol +14 -27
  360. package/l1-contracts/src/core/interfaces/IRollup.sol +7 -11
  361. package/l1-contracts/src/core/interfaces/ISequencerRewardCalculator.sol +39 -0
  362. package/l1-contracts/src/core/interfaces/IValidatorSelection.sol +0 -2
  363. package/l1-contracts/src/core/libraries/Errors.sol +3 -6
  364. package/l1-contracts/src/core/libraries/rollup/BlobLib.sol +16 -6
  365. package/l1-contracts/src/core/libraries/rollup/EpochProofExtLib.sol +2 -7
  366. package/l1-contracts/src/core/libraries/rollup/EpochProofLib.sol +4 -12
  367. package/l1-contracts/src/core/libraries/rollup/RewardExtLib.sol +30 -12
  368. package/l1-contracts/src/core/libraries/rollup/RewardLib.sol +187 -250
  369. package/l1-contracts/src/core/libraries/rollup/SequencerRewardCalculatorLib.sol +110 -0
  370. package/l1-contracts/src/core/libraries/rollup/ValidatorSelectionLib.sol +2 -4
  371. package/package.json +1 -1
  372. package/l1-contracts/out/RewardLib.sol/IATP.json +0 -1
  373. package/l1-contracts/out/RewardLib.sol/IATPStaker.json +0 -1
  374. package/l1-contracts/out/build-info/f88e638ee47a1ead.json +0 -1
@@ -1 +1 @@
1
- {"abi":[{"type":"constructor","inputs":[{"name":"_registry","type":"address","internalType":"contract IRegistry"},{"name":"_gse","type":"address","internalType":"contract IGSE"},{"name":"_quorumSize","type":"uint256","internalType":"uint256"},{"name":"_roundSize","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"EXECUTION_DELAY_IN_ROUNDS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"GSE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IGSE"}],"stateMutability":"view"},{"type":"function","name":"LIFETIME_IN_ROUNDS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"QUORUM_SIZE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"REGISTRY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRegistry"}],"stateMutability":"view"},{"type":"function","name":"ROUND_SIZE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"SIGNAL_TYPEHASH","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"computeRound","inputs":[{"name":"_slot","type":"uint256","internalType":"Slot"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"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":"getCurrentRound","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getGovernance","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getInstance","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProposalProposer","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getRoundData","inputs":[{"name":"_instance","type":"address","internalType":"address"},{"name":"_round","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct RoundAccounting","components":[{"name":"lastSignalSlot","type":"uint256","internalType":"Slot"},{"name":"payloadWithMostSignals","type":"address","internalType":"contract IPayload"},{"name":"executed","type":"bool","internalType":"bool"}]}],"stateMutability":"view"},{"type":"function","name":"getSignalSignatureDigest","inputs":[{"name":"_payload","type":"address","internalType":"contract IPayload"},{"name":"_slot","type":"uint256","internalType":"Slot"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"signal","inputs":[{"name":"_payload","type":"address","internalType":"contract IPayload"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"signalCount","inputs":[{"name":"_instance","type":"address","internalType":"address"},{"name":"_round","type":"uint256","internalType":"uint256"},{"name":"_payload","type":"address","internalType":"contract IPayload"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"signalWithSig","inputs":[{"name":"_payload","type":"address","internalType":"contract IPayload"},{"name":"_sig","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":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"submitRoundWinner","inputs":[{"name":"_roundNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"EIP712DomainChanged","inputs":[],"anonymous":false},{"type":"event","name":"PayloadSubmittable","inputs":[{"name":"payload","type":"address","indexed":true,"internalType":"contract IPayload"},{"name":"round","type":"uint256","indexed":true,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PayloadSubmitted","inputs":[{"name":"payload","type":"address","indexed":true,"internalType":"contract IPayload"},{"name":"round","type":"uint256","indexed":true,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SignalCast","inputs":[{"name":"payload","type":"address","indexed":true,"internalType":"contract IPayload"},{"name":"round","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"signaler","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"ECDSAInvalidSignature","inputs":[]},{"type":"error","name":"ECDSAInvalidSignatureLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ECDSAInvalidSignatureS","inputs":[{"name":"s","type":"bytes32","internalType":"bytes32"}]},{"type":"error","name":"EmpireBase__FailedToSubmitRoundWinner","inputs":[{"name":"payload","type":"address","internalType":"contract IPayload"}]},{"type":"error","name":"EmpireBase__InstanceHaveNoCode","inputs":[{"name":"instance","type":"address","internalType":"address"}]},{"type":"error","name":"EmpireBase__InsufficientSignals","inputs":[{"name":"signalsCast","type":"uint256","internalType":"uint256"},{"name":"signalsNeeded","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"EmpireBase__InvalidLifetimeAndExecutionDelay","inputs":[{"name":"lifetimeInRounds","type":"uint256","internalType":"uint256"},{"name":"executionDelayInRounds","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"EmpireBase__InvalidQuorumAndRoundSize","inputs":[{"name":"quorumSize","type":"uint256","internalType":"uint256"},{"name":"roundSize","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"EmpireBase__OnlyProposerCanSignal","inputs":[{"name":"caller","type":"address","internalType":"address"},{"name":"proposer","type":"address","internalType":"address"}]},{"type":"error","name":"EmpireBase__PayloadAlreadySubmitted","inputs":[{"name":"roundNumber","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"EmpireBase__PayloadCannotBeAddressZero","inputs":[]},{"type":"error","name":"EmpireBase__QuorumCannotBeLargerThanRoundSize","inputs":[{"name":"quorumSize","type":"uint256","internalType":"uint256"},{"name":"roundSize","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"EmpireBase__RoundTooNew","inputs":[{"name":"roundNumber","type":"uint256","internalType":"uint256"},{"name":"currentRoundNumber","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"EmpireBase__RoundTooOld","inputs":[{"name":"roundNumber","type":"uint256","internalType":"uint256"},{"name":"currentRoundNumber","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"EmpireBase__SignalAlreadyCastForSlot","inputs":[{"name":"slot","type":"uint256","internalType":"Slot"}]},{"type":"error","name":"InvalidShortString","inputs":[]},{"type":"error","name":"SafeCastOverflowedUintDowncast","inputs":[{"name":"bits","type":"uint8","internalType":"uint8"},{"name":"value","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SignatureLib__InvalidSignature","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"address","internalType":"address"}]},{"type":"error","name":"StringTooLong","inputs":[{"name":"str","type":"string","internalType":"string"}]}],"bytecode":{"object":"0x610220604052348015610010575f5ffd5b5060405161282238038061282283398101604081905261002f91610292565b818160055f6040518060400160405280600a815260200169456d706972654261736560b01b815250604051806040016040528060018152602001603160f81b8152506100845f8361020c60201b90919060201c565b6101205261009381600161020c565b61014052815160208084019190912060e052815190820120610100524660a05261011f60e05161010051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b60805250503060c0526101608490526101808390526101a08290526101c081905261014b6002846102d7565b6101605161018051909182116101825760405163ca96544560e01b8152600481019290925260248201526044015b60405180910390fd5b5050610180516101605190808211156101b757604051632f0328af60e11b815260048101929092526024820152604401610179565b50506101c0516101a051908082116101eb5760405163f459e17f60e01b815260048101929092526024820152604401610179565b505050506001600160a01b039586166101e0525050505016610200526104a0565b5f602083511015610227576102208361023e565b9050610238565b81610232848261038e565b5060ff90505b92915050565b5f5f829050601f81511115610268578260405163305a27a960e01b81526004016101799190610448565b80516102738261047d565b179392505050565b6001600160a01b038116811461028f575f5ffd5b50565b5f5f5f5f608085870312156102a5575f5ffd5b84516102b08161027b565b60208601519094506102c18161027b565b6040860151606090960151949790965092505050565b5f826102f157634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061031e57607f821691505b60208210810361033c57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561038957805f5260205f20601f840160051c810160208510156103675750805b601f840160051c820191505b81811015610386575f8155600101610373565b50505b505050565b81516001600160401b038111156103a7576103a76102f6565b6103bb816103b5845461030a565b84610342565b6020601f8211600181146103ed575f83156103d65750848201515b5f19600385901b1c1916600184901b178455610386565b5f84815260208120601f198516915b8281101561041c57878501518255602094850194600190920191016103fc565b508482101561043957868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b8051602080830151919081101561033c575f1960209190910360031b1b16919050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e051610200516122b661056c5f395f81816102f80152610d6001525f8181610116015281816104100152818161092f0152610d8101525f818161035901526105b301525f818161031f015261060c01525f8181610216015261090701525f8181610260015281816107060152610c9901525f610d3501525f610d0901525f6110aa01525f61108201525f610fdd01525f61100701525f61103101526122b65ff3fe608060405234801561000f575f5ffd5b506004361061010d575f3560e01c806384b0196e116100a9578063a97f36a81161006e578063a97f36a81461031a578063b2406d9414610341578063bf2ba55214610354578063d11eb2b21461037b578063de7b5d141461038e575f5ffd5b806384b0196e146102aa57806398252dda146102c55780639e9d26bf146102d8578063a32bf597146102eb578063a636c83d146102f3575f5ffd5b806306433b1b14610111578063117395381461014e57806316af8be1146101a257806320d88ca8146101e2578063289b3c0d146102095780635413330714610211578063552b836f146102385780635cb165a01461025b5780635f90af2a14610282575b5f5ffd5b6101387f000000000000000000000000000000000000000000000000000000000000000081565b6040516101459190611345565b60405180910390f35b61019461015c366004611370565b6001600160a01b038084165f908152600260209081526040808320868452825280832093851683526001909301905220549392505050565b604051908152602001610145565b6101b56101b03660046113af565b610396565b60408051825181526020808401516001600160a01b03169082015291810151151590820152606001610145565b6101947fdec0bfc6a67146d790874e4994d7a4662b60c6400491f3d945793c73ea05ebb781565b61013861040d565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b61024b6102463660046113d9565b610493565b6040519015158152602001610145565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b6101386102903660046113f4565b5f908152600360205260409020546001600160a01b031690565b6102b26104b9565b6040516101459796959493929190611439565b61024b6102d33660046113f4565b6104fb565b6101946102e63660046113af565b6107fa565b610194610877565b6101387f000000000000000000000000000000000000000000000000000000000000000081565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b61024b61034f3660046114cf565b6108f6565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b6101946103893660046113f4565b610901565b61013861092c565b60408051606080820183525f80835260208084018290529284018190526001600160a01b03868116825260028452848220868352845290849020845192830185525463ffffffff81168352600160201b810490911692820192909252600160c01b90910460ff161515918101919091525b92915050565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663289b3c0d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561046a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061048e9190611566565b905090565b604080516060810182525f80825260208201819052918101829052610407908390610989565b5f6060805f5f5f60606104ca610d02565b6104d2610d2e565b604080515f80825260208201909252600f60f81b9b939a50919850469750309650945092509050565b5f5f61050561092c565b9050806001600160a01b0381163b61053a57604051637e8c089760e01b81526004016105319190611345565b60405180910390fd5b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561057c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105a09190611581565b90505f6105ac82610901565b90506105d87f000000000000000000000000000000000000000000000000000000000000000087611598565b8111868290916106045760405163206d99c760e11b815260048101929092526024820152604401610531565b5061063190507f000000000000000000000000000000000000000000000000000000000000000087611598565b8111158682909161065e57604051630d8b52bd60e01b815260048101929092526024820152604401610531565b50506001600160a01b0384165f908152600260209081526040808320898452909152902080548790600160c01b900460ff16156106b157604051639182ed2360e01b815260040161053191815260200190565b508054600160201b90046001600160a01b03166106e15760405163471b87dd60e11b815260040160405180910390fd5b8054600160201b90046001600160a01b03165f908152600182016020526040902054807f00000000000000000000000000000000000000000000000000000000000000008082101561074f57604051632ece3a1f60e11b815260048101929092526024820152604401610531565b5050815460ff60c01b1916600160c01b1780835560405189916001600160a01b03600160201b90910416907f524a107cd762fc6fd9e34b29c33d17a2292ae9869be3743c11a155b87664af9c905f90a381546107ba90600160201b90046001600160a01b0316610d5b565b8254600160201b90046001600160a01b0316906107eb57604051639e6e028360e01b81526004016105319190611345565b50600198975050505050505050565b5f6108707fdec0bfc6a67146d790874e4994d7a4662b60c6400491f3d945793c73ea05ebb7848461082961092c565b6040805160208101959095526001600160a01b0393841690850152606084019190915216608082015260a00160405160208183030381529060405280519060200120610e9a565b9392505050565b5f5f61088161092c565b90505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e49190611581565b90506108ef81610901565b9250505090565b5f6108708383610989565b5f6104077f0000000000000000000000000000000000000000000000000000000000000000836115b7565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663971b0e6b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561046a573d5f5f3e3d5ffd5b5f5f61099361092c565b9050806001600160a01b0381163b6109bf57604051637e8c089760e01b81526004016105319190611345565b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a01573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a259190611581565b90505f610a3182610901565b6001600160a01b0385165f908152600260209081526040808320848452909152902080549192509063ffffffff1683118390610a8357604051633ef0fda160e21b815260040161053191815260200190565b50610a8d83610ec6565b815f015f6101000a81548163ffffffff021916908363ffffffff1602179055505f846001600160a01b0316633b10244b6040518163ffffffff1660e01b81526004016020604051808303815f875af1158015610aeb573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b0f9190611566565b9050610b1d885160ff161590565b15610b565733816001600160a01b0381168214610b4f5760405163e65facdb60e01b81526004016105319291906115d6565b5050610b95565b5f610b618a866107fa565b9050610b6e898383610ed0565b33839091610b915760405163e65facdb60e01b81526004016105319291906115d6565b5050505b6001600160a01b0389165f908152600183810160205260408220805491929091610bc0908490611598565b909155505081546001600160a01b038a8116600160201b9092041614801590610c13575081546001600160a01b03600160201b90910481165f90815260018401602052604080822054928c168252902054115b15610c3c578154640100000000600160c01b031916600160201b6001600160a01b038b16021782555b806001600160a01b0316838a6001600160a01b03167f2df1cd192fdb24be652b19858ee33f7fc0aff1a85485e3a44d29d1ef79472f6560405160405180910390a46001600160a01b0389165f9081526001830160205260409020547f000000000000000000000000000000000000000000000000000000000000000090036107eb5760405183906001600160a01b038b16907f7670d106b4e42706ce2c68f6e6cf69db532abb05014051816a275fa4622ee340905f90a350600198975050505050505050565b606061048e7f00000000000000000000000000000000000000000000000000000000000000005f610f28565b606061048e7f00000000000000000000000000000000000000000000000000000000000000006001610f28565b5f5f827f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000604051610dac90611338565b6001600160a01b03938416815291831660208301529091166040820152606001604051809103905ff080158015610de5573d5f5f3e3d5ffd5b5090505f610df161040d565b6001600160a01b03166301267951836040518263ffffffff1660e01b8152600401610e1c9190611345565b6020604051808303815f875af1158015610e38573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e5c9190611581565b9050610e6661092c565b5f9182526003602052604090912080546001600160a01b0319166001600160a01b0390921691909117905550600192915050565b5f610407610ea6610fd1565b8360405161190160f01b8152600281019290925260228201526042902090565b5f610407826110fa565b5f5f610ee983865f01518760200151886040015161112e565b905083816001600160a01b0382811690821614610f1b57604051633672eb9b60e21b81526004016105319291906115d6565b5060019695505050505050565b606060ff8314610f4257610f3b8361115a565b9050610407565b818054610f4e906115f0565b80601f0160208091040260200160405190810160405280929190818152602001828054610f7a906115f0565b8015610fc55780601f10610f9c57610100808354040283529160200191610fc5565b820191905f5260205f20905b815481529060010190602001808311610fa857829003601f168201915b50505050509050610407565b5f306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561102957507f000000000000000000000000000000000000000000000000000000000000000046145b1561105357507f000000000000000000000000000000000000000000000000000000000000000090565b61048e604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b5f63ffffffff82111561112a576040516306dfcc6560e41b81526020600482015260248101839052604401610531565b5090565b5f5f5f5f61113e88888888611197565b92509250925061114e8282611255565b50909695505050505050565b60605f61116683611311565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f80806fa2a8918ca85bafe22016d0b997e4df60600160ff1b038411156111c657505f9150600390508261124b565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015611217573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b03811661124257505f92506001915082905061124b565b92505f91508190505b9450945094915050565b5f82600381111561126857611268611628565b03611271575050565b600182600381111561128557611285611628565b036112a35760405163f645eedf60e01b815260040160405180910390fd5b60028260038111156112b7576112b7611628565b036112d85760405163fce698f760e01b815260048101829052602401610531565b60038260038111156112ec576112ec611628565b0361130d576040516335e2f38360e21b815260048101829052602401610531565b5050565b5f60ff8216601f81111561040757604051632cd44ac360e21b815260040160405180910390fd5b610c448061163d83390190565b6001600160a01b0391909116815260200190565b6001600160a01b038116811461136d575f5ffd5b50565b5f5f5f60608486031215611382575f5ffd5b833561138d81611359565b92506020840135915060408401356113a481611359565b809150509250925092565b5f5f604083850312156113c0575f5ffd5b82356113cb81611359565b946020939093013593505050565b5f602082840312156113e9575f5ffd5b813561087081611359565b5f60208284031215611404575f5ffd5b5035919050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b60ff60f81b8816815260e060208201525f61145760e083018961140b565b8281036040840152611469818961140b565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b818110156114be5783518352602093840193909201916001016114a0565b50909b9a5050505050505050505050565b5f5f82840360808112156114e1575f5ffd5b83356114ec81611359565b92506060601f19820112156114ff575f5ffd5b506040516060810181811067ffffffffffffffff8211171561152f57634e487b7160e01b5f52604160045260245ffd5b604052602084013560ff81168114611545575f5ffd5b81526040848101356020830152606090940135938101939093525092909150565b5f60208284031215611576575f5ffd5b815161087081611359565b5f60208284031215611591575f5ffd5b5051919050565b8082018082111561040757634e487b7160e01b5f52601160045260245ffd5b5f826115d157634e487b7160e01b5f52601260045260245ffd5b500490565b6001600160a01b0392831681529116602082015260400190565b600181811c9082168061160457607f821691505b60208210810361162257634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52602160045260245ffdfe60e060405234801561000f575f5ffd5b50604051610c44380380610c4483398101604081905261002e91610062565b6001600160a01b0392831660805290821660a0521660c0526100ac565b6001600160a01b038116811461005f575f5ffd5b50565b5f5f5f60608486031215610074575f5ffd5b835161007f8161004b565b60208501519093506100908161004b565b60408501519092506100a18161004b565b809150509250925092565b60805160a05160c051610b316101135f395f81816074015261030601525f818160f3015281816103890152818161042e015281816104b10152818161053401526105d401525f81816101170152818161014001528181610167015261069a0152610b315ff3fe608060405234801561000f575f5ffd5b506004361061006b575f3560e01c806306433b1b1461006f578063504d080b146100ac578063675d628a146100c15780637754305c146100d9578063a636c83d146100ee578063ad9c74b514610115578063c262e61d1461013b575b5f5ffd5b6100967f000000000000000000000000000000000000000000000000000000000000000081565b6040516100a3919061071f565b60405180910390f35b6100b4610162565b6040516100a39190610761565b6100c9610302565b60405190151581526020016100a3565b6100e1610696565b6040516100a391906107e4565b6100967f000000000000000000000000000000000000000000000000000000000000000081565b7f0000000000000000000000000000000000000000000000000000000000000000610096565b6100967f000000000000000000000000000000000000000000000000000000000000000081565b60605f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663504d080b6040518163ffffffff1660e01b81526004015f60405180830381865afa1580156101c0573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526101e791908101906108d8565b90505f815160016101f89190610a1a565b6001600160401b0381111561020f5761020f6107fd565b60405190808252806020026020018201604052801561025457816020015b604080518082019091525f81526060602082015281526020019060019003908161022d5790505b5090505f5b82518110156102a15782818151811061027457610274610a33565b602002602001015182828151811061028e5761028e610a33565b6020908102919091010152600101610259565b5060408051808201825230815281516004815260248101909252602082810180516001600160e01b03166333aeb14560e11b1790528101919091528251825183919081106102f1576102f1610a33565b602090810291909101015292915050565b5f5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663971b0e6b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610360573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103849190610a47565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b35186a86040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103e3573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104079190610a47565b9050806001600160a01b0316826001600160a01b03161461042b5760019250505090565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610488573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104ac9190610a62565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316639f6bc70c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561050b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061052f9190610a47565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166362400e4c836040518263ffffffff1660e01b815260040161057e919061071f565b602060405180830381865afa158015610599573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105bd9190610a62565b604051631890039360e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906362400e4c9061060990889060040161071f565b602060405180830381865afa158015610624573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106489190610a62565b6106529190610a1a565b90506003610661846002610a79565b61066b9190610a90565b811161068a576040516324b6d5bf60e21b815260040160405180910390fd5b60019550505050505090565b60607f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637754305c6040518163ffffffff1660e01b81526004015f60405180830381865afa1580156106f3573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261071a9190810190610aaf565b905090565b6001600160a01b0391909116815260200190565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b828110156107d857868503603f19018452815180516001600160a01b031686526020908101516040918701829052906107c290870182610733565b9550506020938401939190910190600101610787565b50929695505050505050565b602081525f6107f66020830184610733565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b604080519081016001600160401b0381118282101715610833576108336107fd565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610861576108616107fd565b604052919050565b6001600160a01b038116811461087d575f5ffd5b50565b5f5f6001600160401b03841115610899576108996107fd565b50601f8301601f19166020016108ae81610839565b9150508281528383830111156108c2575f5ffd5b8282602083015e5f602084830101529392505050565b5f602082840312156108e8575f5ffd5b81516001600160401b038111156108fd575f5ffd5b8201601f8101841361090d575f5ffd5b80516001600160401b03811115610926576109266107fd565b8060051b61093660208201610839565b91825260208184018101929081019087841115610951575f5ffd5b6020850192505b838310156109fb5782516001600160401b03811115610975575f5ffd5b85016040818a03601f1901121561098a575f5ffd5b610992610811565b60208201516109a081610869565b815260408201516001600160401b038111156109ba575f5ffd5b60208184010192505089601f8301126109d1575f5ffd5b6109e08a835160208501610880565b60208201528084525050602082019150602083019250610958565b979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610a2d57610a2d610a06565b92915050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610a57575f5ffd5b81516107f681610869565b5f60208284031215610a72575f5ffd5b5051919050565b8082028115828204841417610a2d57610a2d610a06565b5f82610aaa57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215610abf575f5ffd5b81516001600160401b03811115610ad4575f5ffd5b8201601f81018413610ae4575f5ffd5b610af384825160208401610880565b94935050505056fea26469706673582212206a7c99f3edc50d241e9d868b878af5ca265b6ac69ce42f70440f1bcd42754ebe64736f6c634300081e0033a2646970667358221220b6e98f9afb7d83af4804bad19c947969f0f242de674d0f66a4410cd9895f32de64736f6c634300081e0033","sourceMap":"1241:3012:152:-:0;;;2301:180;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2401:11;2414:10;2426:1;2429;3328:431:58;;;;;;;;;;;;;-1:-1:-1;;;3328:431:58;;;;;;;;;;;;;;;;-1:-1:-1;;;3328:431:58;;;3401:45;3432:13;3401:4;:30;;;;: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;;;4208:25:182;4249:18;;;4242:34;;;;4292:18;;;4285:34;4255:13:58;4335:18:182;;;4328:34;4278:4:58;4378:19:182;;;4371:61;4168:7:58;;4180:19:182;;4204:80:58;;;;;;;;;;;;4194:91;;;;;;4187:98;;4113:179;;3692:23;3667:48;;-1:-1:-1;;3747:4:58;3725:27;;5601:25:151::1;::::0;;;5632:23:::1;::::0;;;5661:38:::1;::::0;;;5705:51:::1;::::0;;;5785:14:::1;5798:1;5645:10:::0;5785:14:::1;:::i;:::-;5771:11;::::0;5859:10:::1;::::0;5771:11;;:28;::::1;5763:108;;;::::0;-1:-1:-1;;;5763:108:151;;::::1;::::0;::::1;1229:25:182::0;;;;1270:18;;;1263:34;1202:18;;5763:108:151::1;;;;;;;;;-1:-1:-1::0;;5900:10:151::1;::::0;5885:11:::1;::::0;;:25;;::::1;;5877:113;;;::::0;-1:-1:-1;;;5877:113:151;;::::1;::::0;::::1;1229:25:182::0;;;;1270:18;;;1263:34;1202:18;;5877:113:151::1;1055:248:182::0;5877:113:151::1;-1:-1:-1::0;;6033:25:151::1;::::0;6012:18:::1;::::0;;:46;;::::1;5997:173;;;::::0;-1:-1:-1;;;5997:173:151;;::::1;::::0;::::1;1229:25:182::0;;;;1270:18;;;1263:34;1202:18;;5997:173:151::1;1055:248:182::0;5997:173:151::1;-1:-1:-1::0;;;;;;;;;2440:20:152;;::::1;;::::0;-1:-1:-1;;;;2466:10:152::1;;::::0;1241:3012;;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;1708:286::-;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;14:142:182:-;-1:-1:-1;;;;;100:31:182;;90:42;;80:70;;146:1;143;136:12;80:70;14:142;:::o;161:667::-;291:6;299;307;315;368:3;356:9;347:7;343:23;339:33;336:53;;;385:1;382;375:12;336:53;417:9;411:16;436:42;472:5;436:42;:::i;:::-;547:2;532:18;;526:25;497:5;;-1:-1:-1;560:44:182;526:25;560:44;:::i;:::-;696:2;681:18;;675:25;792:2;777:18;;;771:25;161:667;;623:7;;-1:-1:-1;161:667:182;-1:-1:-1;;;161:667:182:o;833:217::-;873:1;899;889:132;;943:10;938:3;934:20;931:1;924:31;978:4;975:1;968:15;1006:4;1003:1;996:15;889:132;-1:-1:-1;1035:9:182;;833:217::o;1308:127::-;1369:10;1364:3;1360:20;1357:1;1350:31;1400:4;1397:1;1390:15;1424:4;1421:1;1414:15;1440:380;1519:1;1515:12;;;;1562;;;1583:61;;1637:4;1629:6;1625:17;1615:27;;1583:61;1690:2;1682:6;1679:14;1659:18;1656:38;1653:161;;1736:10;1731:3;1727:20;1724:1;1717:31;1771:4;1768:1;1761:15;1799:4;1796:1;1789:15;1653:161;;1440:380;;;:::o;1951:518::-;2053:2;2048:3;2045:11;2042:421;;;2089:5;2086:1;2079:16;2133:4;2130:1;2120:18;2203:2;2191:10;2187:19;2184:1;2180:27;2174:4;2170:38;2239:4;2227:10;2224:20;2221:47;;;-1:-1:-1;2262:4:182;2221:47;2317:2;2312:3;2308:12;2305:1;2301:20;2295:4;2291:31;2281:41;;2372:81;2390:2;2383:5;2380:13;2372:81;;;2449:1;2435:16;;2416:1;2405:13;2372:81;;;2376:3;;2042:421;1951:518;;;:::o;2645:1299::-;2765:10;;-1:-1:-1;;;;;2787:30:182;;2784:56;;;2820:18;;:::i;:::-;2849:97;2939:6;2899:38;2931:4;2925:11;2899:38;:::i;:::-;2893:4;2849:97;:::i;:::-;2995:4;3026:2;3015:14;;3043:1;3038:649;;;;3731:1;3748:6;3745:89;;;-1:-1:-1;3800:19:182;;;3794:26;3745:89;-1:-1:-1;;2602:1:182;2598:11;;;2594:24;2590:29;2580:40;2626:1;2622:11;;;2577:57;3847:81;;3008:930;;3038:649;1898:1;1891:14;;;1935:4;1922:18;;-1:-1:-1;;3074:20:182;;;3192:222;3206:7;3203:1;3200:14;3192:222;;;3288:19;;;3282:26;3267:42;;3395:4;3380:20;;;;3348:1;3336:14;;;;3222:12;3192:222;;;3196:3;3442:6;3433:7;3430:19;3427:201;;;3503:19;;;3497:26;-1:-1:-1;;3586:1:182;3582:14;;;3598:3;3578:24;3574:37;3570:42;3555:58;3540:74;;3427:201;-1:-1:-1;;;;3674:1:182;3658:14;;;3654:22;3641:36;;-1:-1:-1;2645:1299:182:o;4443:418::-;4592:2;4581:9;4574:21;4555:4;4624:6;4618:13;4667:6;4662:2;4651:9;4647:18;4640:34;4726:6;4721:2;4713:6;4709:15;4704:2;4693:9;4689:18;4683:50;4782:1;4777:2;4768:6;4757:9;4753:22;4749:31;4742:42;4852:2;4845;4841:7;4836:2;4828:6;4824:15;4820:29;4809:9;4805:45;4801:54;4793:62;;;4443:418;;;;:::o;4866:297::-;4984:12;;5031:4;5020:16;;;5014:23;;4984:12;5049:16;;5046:111;;;-1:-1:-1;;5123:4:182;5119:17;;;;5116:1;5112:25;5108:38;5097:50;;4866:297;-1:-1:-1;4866:297:182:o;:::-;1241:3012:152;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561000f575f5ffd5b506004361061010d575f3560e01c806384b0196e116100a9578063a97f36a81161006e578063a97f36a81461031a578063b2406d9414610341578063bf2ba55214610354578063d11eb2b21461037b578063de7b5d141461038e575f5ffd5b806384b0196e146102aa57806398252dda146102c55780639e9d26bf146102d8578063a32bf597146102eb578063a636c83d146102f3575f5ffd5b806306433b1b14610111578063117395381461014e57806316af8be1146101a257806320d88ca8146101e2578063289b3c0d146102095780635413330714610211578063552b836f146102385780635cb165a01461025b5780635f90af2a14610282575b5f5ffd5b6101387f000000000000000000000000000000000000000000000000000000000000000081565b6040516101459190611345565b60405180910390f35b61019461015c366004611370565b6001600160a01b038084165f908152600260209081526040808320868452825280832093851683526001909301905220549392505050565b604051908152602001610145565b6101b56101b03660046113af565b610396565b60408051825181526020808401516001600160a01b03169082015291810151151590820152606001610145565b6101947fdec0bfc6a67146d790874e4994d7a4662b60c6400491f3d945793c73ea05ebb781565b61013861040d565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b61024b6102463660046113d9565b610493565b6040519015158152602001610145565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b6101386102903660046113f4565b5f908152600360205260409020546001600160a01b031690565b6102b26104b9565b6040516101459796959493929190611439565b61024b6102d33660046113f4565b6104fb565b6101946102e63660046113af565b6107fa565b610194610877565b6101387f000000000000000000000000000000000000000000000000000000000000000081565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b61024b61034f3660046114cf565b6108f6565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b6101946103893660046113f4565b610901565b61013861092c565b60408051606080820183525f80835260208084018290529284018190526001600160a01b03868116825260028452848220868352845290849020845192830185525463ffffffff81168352600160201b810490911692820192909252600160c01b90910460ff161515918101919091525b92915050565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663289b3c0d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561046a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061048e9190611566565b905090565b604080516060810182525f80825260208201819052918101829052610407908390610989565b5f6060805f5f5f60606104ca610d02565b6104d2610d2e565b604080515f80825260208201909252600f60f81b9b939a50919850469750309650945092509050565b5f5f61050561092c565b9050806001600160a01b0381163b61053a57604051637e8c089760e01b81526004016105319190611345565b60405180910390fd5b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561057c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105a09190611581565b90505f6105ac82610901565b90506105d87f000000000000000000000000000000000000000000000000000000000000000087611598565b8111868290916106045760405163206d99c760e11b815260048101929092526024820152604401610531565b5061063190507f000000000000000000000000000000000000000000000000000000000000000087611598565b8111158682909161065e57604051630d8b52bd60e01b815260048101929092526024820152604401610531565b50506001600160a01b0384165f908152600260209081526040808320898452909152902080548790600160c01b900460ff16156106b157604051639182ed2360e01b815260040161053191815260200190565b508054600160201b90046001600160a01b03166106e15760405163471b87dd60e11b815260040160405180910390fd5b8054600160201b90046001600160a01b03165f908152600182016020526040902054807f00000000000000000000000000000000000000000000000000000000000000008082101561074f57604051632ece3a1f60e11b815260048101929092526024820152604401610531565b5050815460ff60c01b1916600160c01b1780835560405189916001600160a01b03600160201b90910416907f524a107cd762fc6fd9e34b29c33d17a2292ae9869be3743c11a155b87664af9c905f90a381546107ba90600160201b90046001600160a01b0316610d5b565b8254600160201b90046001600160a01b0316906107eb57604051639e6e028360e01b81526004016105319190611345565b50600198975050505050505050565b5f6108707fdec0bfc6a67146d790874e4994d7a4662b60c6400491f3d945793c73ea05ebb7848461082961092c565b6040805160208101959095526001600160a01b0393841690850152606084019190915216608082015260a00160405160208183030381529060405280519060200120610e9a565b9392505050565b5f5f61088161092c565b90505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e49190611581565b90506108ef81610901565b9250505090565b5f6108708383610989565b5f6104077f0000000000000000000000000000000000000000000000000000000000000000836115b7565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663971b0e6b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561046a573d5f5f3e3d5ffd5b5f5f61099361092c565b9050806001600160a01b0381163b6109bf57604051637e8c089760e01b81526004016105319190611345565b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a01573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a259190611581565b90505f610a3182610901565b6001600160a01b0385165f908152600260209081526040808320848452909152902080549192509063ffffffff1683118390610a8357604051633ef0fda160e21b815260040161053191815260200190565b50610a8d83610ec6565b815f015f6101000a81548163ffffffff021916908363ffffffff1602179055505f846001600160a01b0316633b10244b6040518163ffffffff1660e01b81526004016020604051808303815f875af1158015610aeb573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b0f9190611566565b9050610b1d885160ff161590565b15610b565733816001600160a01b0381168214610b4f5760405163e65facdb60e01b81526004016105319291906115d6565b5050610b95565b5f610b618a866107fa565b9050610b6e898383610ed0565b33839091610b915760405163e65facdb60e01b81526004016105319291906115d6565b5050505b6001600160a01b0389165f908152600183810160205260408220805491929091610bc0908490611598565b909155505081546001600160a01b038a8116600160201b9092041614801590610c13575081546001600160a01b03600160201b90910481165f90815260018401602052604080822054928c168252902054115b15610c3c578154640100000000600160c01b031916600160201b6001600160a01b038b16021782555b806001600160a01b0316838a6001600160a01b03167f2df1cd192fdb24be652b19858ee33f7fc0aff1a85485e3a44d29d1ef79472f6560405160405180910390a46001600160a01b0389165f9081526001830160205260409020547f000000000000000000000000000000000000000000000000000000000000000090036107eb5760405183906001600160a01b038b16907f7670d106b4e42706ce2c68f6e6cf69db532abb05014051816a275fa4622ee340905f90a350600198975050505050505050565b606061048e7f00000000000000000000000000000000000000000000000000000000000000005f610f28565b606061048e7f00000000000000000000000000000000000000000000000000000000000000006001610f28565b5f5f827f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000604051610dac90611338565b6001600160a01b03938416815291831660208301529091166040820152606001604051809103905ff080158015610de5573d5f5f3e3d5ffd5b5090505f610df161040d565b6001600160a01b03166301267951836040518263ffffffff1660e01b8152600401610e1c9190611345565b6020604051808303815f875af1158015610e38573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e5c9190611581565b9050610e6661092c565b5f9182526003602052604090912080546001600160a01b0319166001600160a01b0390921691909117905550600192915050565b5f610407610ea6610fd1565b8360405161190160f01b8152600281019290925260228201526042902090565b5f610407826110fa565b5f5f610ee983865f01518760200151886040015161112e565b905083816001600160a01b0382811690821614610f1b57604051633672eb9b60e21b81526004016105319291906115d6565b5060019695505050505050565b606060ff8314610f4257610f3b8361115a565b9050610407565b818054610f4e906115f0565b80601f0160208091040260200160405190810160405280929190818152602001828054610f7a906115f0565b8015610fc55780601f10610f9c57610100808354040283529160200191610fc5565b820191905f5260205f20905b815481529060010190602001808311610fa857829003601f168201915b50505050509050610407565b5f306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561102957507f000000000000000000000000000000000000000000000000000000000000000046145b1561105357507f000000000000000000000000000000000000000000000000000000000000000090565b61048e604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b5f63ffffffff82111561112a576040516306dfcc6560e41b81526020600482015260248101839052604401610531565b5090565b5f5f5f5f61113e88888888611197565b92509250925061114e8282611255565b50909695505050505050565b60605f61116683611311565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f80806fa2a8918ca85bafe22016d0b997e4df60600160ff1b038411156111c657505f9150600390508261124b565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015611217573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b03811661124257505f92506001915082905061124b565b92505f91508190505b9450945094915050565b5f82600381111561126857611268611628565b03611271575050565b600182600381111561128557611285611628565b036112a35760405163f645eedf60e01b815260040160405180910390fd5b60028260038111156112b7576112b7611628565b036112d85760405163fce698f760e01b815260048101829052602401610531565b60038260038111156112ec576112ec611628565b0361130d576040516335e2f38360e21b815260048101829052602401610531565b5050565b5f60ff8216601f81111561040757604051632cd44ac360e21b815260040160405180910390fd5b610c448061163d83390190565b6001600160a01b0391909116815260200190565b6001600160a01b038116811461136d575f5ffd5b50565b5f5f5f60608486031215611382575f5ffd5b833561138d81611359565b92506020840135915060408401356113a481611359565b809150509250925092565b5f5f604083850312156113c0575f5ffd5b82356113cb81611359565b946020939093013593505050565b5f602082840312156113e9575f5ffd5b813561087081611359565b5f60208284031215611404575f5ffd5b5035919050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b60ff60f81b8816815260e060208201525f61145760e083018961140b565b8281036040840152611469818961140b565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b818110156114be5783518352602093840193909201916001016114a0565b50909b9a5050505050505050505050565b5f5f82840360808112156114e1575f5ffd5b83356114ec81611359565b92506060601f19820112156114ff575f5ffd5b506040516060810181811067ffffffffffffffff8211171561152f57634e487b7160e01b5f52604160045260245ffd5b604052602084013560ff81168114611545575f5ffd5b81526040848101356020830152606090940135938101939093525092909150565b5f60208284031215611576575f5ffd5b815161087081611359565b5f60208284031215611591575f5ffd5b5051919050565b8082018082111561040757634e487b7160e01b5f52601160045260245ffd5b5f826115d157634e487b7160e01b5f52601260045260245ffd5b500490565b6001600160a01b0392831681529116602082015260400190565b600181811c9082168061160457607f821691505b60208210810361162257634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52602160045260245ffdfe60e060405234801561000f575f5ffd5b50604051610c44380380610c4483398101604081905261002e91610062565b6001600160a01b0392831660805290821660a0521660c0526100ac565b6001600160a01b038116811461005f575f5ffd5b50565b5f5f5f60608486031215610074575f5ffd5b835161007f8161004b565b60208501519093506100908161004b565b60408501519092506100a18161004b565b809150509250925092565b60805160a05160c051610b316101135f395f81816074015261030601525f818160f3015281816103890152818161042e015281816104b10152818161053401526105d401525f81816101170152818161014001528181610167015261069a0152610b315ff3fe608060405234801561000f575f5ffd5b506004361061006b575f3560e01c806306433b1b1461006f578063504d080b146100ac578063675d628a146100c15780637754305c146100d9578063a636c83d146100ee578063ad9c74b514610115578063c262e61d1461013b575b5f5ffd5b6100967f000000000000000000000000000000000000000000000000000000000000000081565b6040516100a3919061071f565b60405180910390f35b6100b4610162565b6040516100a39190610761565b6100c9610302565b60405190151581526020016100a3565b6100e1610696565b6040516100a391906107e4565b6100967f000000000000000000000000000000000000000000000000000000000000000081565b7f0000000000000000000000000000000000000000000000000000000000000000610096565b6100967f000000000000000000000000000000000000000000000000000000000000000081565b60605f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663504d080b6040518163ffffffff1660e01b81526004015f60405180830381865afa1580156101c0573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526101e791908101906108d8565b90505f815160016101f89190610a1a565b6001600160401b0381111561020f5761020f6107fd565b60405190808252806020026020018201604052801561025457816020015b604080518082019091525f81526060602082015281526020019060019003908161022d5790505b5090505f5b82518110156102a15782818151811061027457610274610a33565b602002602001015182828151811061028e5761028e610a33565b6020908102919091010152600101610259565b5060408051808201825230815281516004815260248101909252602082810180516001600160e01b03166333aeb14560e11b1790528101919091528251825183919081106102f1576102f1610a33565b602090810291909101015292915050565b5f5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663971b0e6b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610360573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103849190610a47565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b35186a86040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103e3573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104079190610a47565b9050806001600160a01b0316826001600160a01b03161461042b5760019250505090565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610488573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104ac9190610a62565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316639f6bc70c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561050b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061052f9190610a47565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166362400e4c836040518263ffffffff1660e01b815260040161057e919061071f565b602060405180830381865afa158015610599573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105bd9190610a62565b604051631890039360e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906362400e4c9061060990889060040161071f565b602060405180830381865afa158015610624573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106489190610a62565b6106529190610a1a565b90506003610661846002610a79565b61066b9190610a90565b811161068a576040516324b6d5bf60e21b815260040160405180910390fd5b60019550505050505090565b60607f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637754305c6040518163ffffffff1660e01b81526004015f60405180830381865afa1580156106f3573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261071a9190810190610aaf565b905090565b6001600160a01b0391909116815260200190565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b828110156107d857868503603f19018452815180516001600160a01b031686526020908101516040918701829052906107c290870182610733565b9550506020938401939190910190600101610787565b50929695505050505050565b602081525f6107f66020830184610733565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b604080519081016001600160401b0381118282101715610833576108336107fd565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610861576108616107fd565b604052919050565b6001600160a01b038116811461087d575f5ffd5b50565b5f5f6001600160401b03841115610899576108996107fd565b50601f8301601f19166020016108ae81610839565b9150508281528383830111156108c2575f5ffd5b8282602083015e5f602084830101529392505050565b5f602082840312156108e8575f5ffd5b81516001600160401b038111156108fd575f5ffd5b8201601f8101841361090d575f5ffd5b80516001600160401b03811115610926576109266107fd565b8060051b61093660208201610839565b91825260208184018101929081019087841115610951575f5ffd5b6020850192505b838310156109fb5782516001600160401b03811115610975575f5ffd5b85016040818a03601f1901121561098a575f5ffd5b610992610811565b60208201516109a081610869565b815260408201516001600160401b038111156109ba575f5ffd5b60208184010192505089601f8301126109d1575f5ffd5b6109e08a835160208501610880565b60208201528084525050602082019150602083019250610958565b979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610a2d57610a2d610a06565b92915050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610a57575f5ffd5b81516107f681610869565b5f60208284031215610a72575f5ffd5b5051919050565b8082028115828204841417610a2d57610a2d610a06565b5f82610aaa57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215610abf575f5ffd5b81516001600160401b03811115610ad4575f5ffd5b8201601f81018413610ae4575f5ffd5b610af384825160208401610880565b94935050505056fea26469706673582212206a7c99f3edc50d241e9d868b878af5ca265b6ac69ce42f70440f1bcd42754ebe64736f6c634300081e0033a2646970667358221220b6e98f9afb7d83af4804bad19c947969f0f242de674d0f66a4410cd9895f32de64736f6c634300081e0033","sourceMap":"1241:3012:152:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1308:35;;;;;;;;;;;;:::i;:::-;;;;;;;;9421:208:151;;;;;;:::i;:::-;-1:-1:-1;;;;;9577:17:151;;;9553:7;9577:17;;;:6;:17;;;;;;;;:25;;;;;;;;:47;;;;;:37;;;;:47;;;;9421:208;;;;;;;;;1054:25:182;;;1042:2;1027:18;9421:208:151;908:177:182;9940:407:151;;;;;;:::i;:::-;;:::i;:::-;;;;1696:13:182;;1678:32;;1770:4;1758:17;;;1752:24;-1:-1:-1;;;;;1748:50:182;1726:20;;;1719:80;1857:17;;;1851:24;1844:32;1837:40;1815:20;;;1808:70;1666:2;1651:18;9940:407:151;1462:422:182;4700:108:151;;4742:66;4700:108;;2788:127:152;;;:::i;4967:35:151:-;;;;;6445:169;;;;;;:::i;:::-;;:::i;:::-;;;2714:14:182;;2707:22;2689:41;;2677:2;2662:18;6445:169:151;2549:187:182;4891:36:151;;;;;2485:159:152;;;;;;:::i;:::-;2588:7;2610:29;;;:16;:29;;;;;;-1:-1:-1;;;;;2610:29:152;;2485:159;5144:557:58;;;:::i;:::-;;;;;;;;;;;;;:::i;7392:1727:151:-;;;;;;:::i;:::-;;:::i;10638:201::-;;;;;;:::i;:::-;;:::i;9733:203::-;;;:::i;1347:25:152:-;;;;;5096:43:151;;;;;6891:156;;;;;;:::i;:::-;;:::i;5226:50::-;;;;;10503:131;;;;;;:::i;:::-;;:::i;3133:139:152:-;;;:::i;9940:407:151:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10102:17:151;;;;;:6;:17;;;;;:25;;;;;;;;;10140:202;;;;;;;10180:30;;;;10140:202;;-1:-1:-1;;;10255:38:151;;;;;10140:202;;;;;;;-1:-1:-1;;;10311:24:151;;;;;10140:202;;;;;;;;;9940:407;;;;;:::o;2788:127:152:-;2864:7;2886:8;-1:-1:-1;;;;;2886:22:152;;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2879:31;;2788:127;:::o;6445:169:151:-;6561:47;;;;;;;;6516:4;6561:47;;;;;;;;;;;;;;;6535:74;;6551:8;;6535:15;:74::i;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;7392:1727:151:-;7477:4;7541:16;7560:13;:11;:13::i;:::-;7541:32;-1:-1:-1;7541:32:151;-1:-1:-1;;;;;7587:20:151;;;7579:82;;;;-1:-1:-1;;;7579:82:151;;;;;;;;:::i;:::-;;;;;;;;;;7668:18;7698:8;7668:39;;7713:16;7732:9;-1:-1:-1;;;;;7732:24:151;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7713:45;;7765:20;7788:25;7801:11;7788:12;:25::i;:::-;7765:48;-1:-1:-1;7850:40:151;7865:25;7850:12;:40;:::i;:::-;7835:12;:55;7929:12;7943;7820:142;;;;;;-1:-1:-1;;;7820:142:151;;;;;7571:25:182;;;;7612:18;;;7605:34;7544:18;;7820:142:151;7397:248:182;7820:142:151;-1:-1:-1;8000:33:151;;-1:-1:-1;8015:18:151;8000:12;:33;:::i;:::-;7984:12;:49;;8066:12;8080;7969:130;;;;;;-1:-1:-1;;;7969:130:151;;;;;7571:25:182;;;;7612:18;;;7605:34;7544:18;;7969:130:151;7397:248:182;7969:130:151;-1:-1:-1;;;;;;;8148:16:151;;8106:39;8148:16;;;:6;:16;;;;;;;;:30;;;;;;;;8193:14;;8148:30;;-1:-1:-1;;;8193:14:151;;;;8192:15;8184:82;;;;-1:-1:-1;;;8184:82:151;;;;;;1054:25:182;;1042:2;1027:18;;908:177;8184:82:151;-1:-1:-1;8555:28:151;;-1:-1:-1;;;8555:28:151;;-1:-1:-1;;;;;8555:28:151;8547:110;;;;-1:-1:-1;;;8547:110:151;;;;;;;;;;;;8703:28;;-1:-1:-1;;;8703:28:151;;-1:-1:-1;;;;;8703:28:151;8663:19;8685:47;;;:17;;;:47;;;;;;;8761:11;8746:26;;;;8738:101;;;;-1:-1:-1;;;8738:101:151;;;;;7571:25:182;;;;7612:18;;;7605:34;7544:18;;8738:101:151;7397:248:182;8738:101:151;-1:-1:-1;;8846:21:151;;-1:-1:-1;;;;8846:21:151;-1:-1:-1;;;8846:21:151;;;;8879:60;;8926:12;;-1:-1:-1;;;;;;;;8896:28:151;;;;;8879:60;;8846:14;;8879:60;8980:28;;8961:48;;-1:-1:-1;;;8980:28:151;;-1:-1:-1;;;;;8980:28:151;8961:18;:48::i;:::-;9062:28;;-1:-1:-1;;;9062:28:151;;-1:-1:-1;;;;;9062:28:151;;8946:151;;;;-1:-1:-1;;;8946:151:151;;;;;;;;:::i;:::-;-1:-1:-1;9110:4:151;;7392:1727;-1:-1:-1;;;;;;;;7392:1727:151:o;10638:201::-;10724:7;10746:88;4742:66;10801:8;10811:5;10818:13;:11;:13::i;:::-;10773:59;;;;;;8152:25:182;;;;-1:-1:-1;;;;;8213:32:182;;;8193:18;;;8186:60;8262:18;;;8255:34;;;;8325:32;8305:18;;;8298:60;8124:19;;10773:59:151;;;;;;;;;;;;10763:70;;;;;;10746:16;:88::i;:::-;10739:95;10638:201;-1:-1:-1;;;10638:201:151:o;9733:203::-;9783:7;9798:18;9828:13;:11;:13::i;:::-;9798:44;;9848:16;9867:9;-1:-1:-1;;;;;9867:24:151;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9848:45;;9906:25;9919:11;9906:12;:25::i;:::-;9899:32;;;;9733:203;:::o;6891:156::-;6992:4;7011:31;7027:8;7037:4;7011:15;:31::i;10503:131::-;10576:7;10598:31;10619:10;10610:5;10598:31;:::i;3133:139:152:-;3207:7;3237:8;-1:-1:-1;;;;;3237:27:152;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11031:1654:151;11116:4;11128:16;11147:13;:11;:13::i;:::-;11128:32;-1:-1:-1;11128:32:151;-1:-1:-1;;;;;11174:20:151;;;11166:82;;;;-1:-1:-1;;;11166:82:151;;;;;;;;:::i;:::-;;11255:18;11285:8;11255:39;;11300:16;11319:9;-1:-1:-1;;;;;11319:24:151;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11300:45;;11352:19;11374:25;11387:11;11374:12;:25::i;:::-;-1:-1:-1;;;;;11448:16:151;;11406:39;11448:16;;;:6;:16;;;;;;;;:29;;;;;;;;11624:20;;11448:29;;-1:-1:-1;11448:29:151;11624:20;;-1:-1:-1;;11703:11:151;11602:114;;;;;-1:-1:-1;;;11602:114:151;;;;;;1054:25:182;;1042:2;1027:18;;908:177;11602:114:151;;11745:22;:11;:20;:22::i;:::-;11722:5;:20;;;:45;;;;;;;;;;;;;;;;;;11774:16;11793:9;-1:-1:-1;;;;;11793:28:151;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11774:49;;11834:14;:4;958:12:179;:17;;;;870:110;11834:14:151;11830:417;;;11866:10;11880:8;-1:-1:-1;;;;;11866:22:151;;;;11858:95;;;;-1:-1:-1;;;11858:95:151;;;;;;;;;:::i;:::-;;;11830:417;;;11974:14;11991:47;12016:8;12026:11;11991:24;:47::i;:::-;11974:64;-1:-1:-1;12146:29:151;:4;12158:8;11974:64;12146:11;:29::i;:::-;12218:10;12230:8;12138:102;;;;;;-1:-1:-1;;;12138:102:151;;;;;;;;;:::i;:::-;;;11966:281;11830:417;-1:-1:-1;;;;;12253:27:151;;;;;;12284:1;12253:17;;;:27;;;;;:32;;12284:1;;12253:27;;:32;;12284:1;;12253:32;:::i;:::-;;;;-1:-1:-1;;12303:28:151;;-1:-1:-1;;;;;12303:40:151;;;-1:-1:-1;;;12303:28:151;;;;:40;;;;:129;;-1:-1:-1;12403:28:151;;-1:-1:-1;;;;;;;;12403:28:151;;;;;12385:47;;;;:17;;;:47;;;;;;;12355:27;;;;;;;;:77;12303:129;12292:201;;;12447:39;;-1:-1:-1;;;;;;12447:39:151;-1:-1:-1;;;;;;;;12447:39:151;;;;;;12292:201;12538:8;-1:-1:-1;;;;;12504:43:151;12525:11;12515:8;-1:-1:-1;;;;;12504:43:151;;;;;;;;;;;-1:-1:-1;;;;;12558:27:151;;;;;;:17;;;:27;;;;;;12589:11;12558:42;;12554:109;;12615:41;;12644:11;;-1:-1:-1;;;;;12615:41:151;;;;;;;;-1:-1:-1;12676:4:151;;11031:1654;-1:-1:-1;;;;;;;;11031:1654:151: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;3914:337:152:-;4000:4;4012:26;4056:8;4066:3;4071:8;4041:39;;;;;:::i;:::-;-1:-1:-1;;;;;9654:32:182;;;9636:51;;9723:32;;;9718:2;9703:18;;9696:60;9792:32;;;9787:2;9772:18;;9765:60;9624:2;9609:18;4041:39:152;;;;;;;;;;;;;;;;;;;;;;;4012:68;;4086:18;4119:15;:13;:15::i;:::-;-1:-1:-1;;;;;4107:36:152;;4161:15;4107:72;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4086:93;;4216:13;:11;:13::i;:::-;4185:28;;;;:16;:28;;;;;;:44;;-1:-1:-1;;;;;;4185:44:152;-1:-1:-1;;;;;4185:44:152;;;;;;;;;-1:-1:-1;;;4185:44:152;-1:-1:-1;;3914:337:152:o;4917:176:58:-;4994:7;5020:66;5053:20;:18;:20::i;:::-;5075:10;3501:4:59;3495:11;-1:-1:-1;;;3519:23:59;;3571:4;3562:14;;3555:39;;;;3623:4;3614:14;;3607:34;3679:4;3664:20;;;3326:374;518:145:178;571:14;620:37;650:5;620:17;:37::i;559:307:179:-;661:4;673:17;693:64;707:7;716:10;:12;;;730:10;:12;;;744:10;:12;;;693:13;:64::i;:::-;673:84;-1:-1:-1;771:7:179;673:84;-1:-1:-1;;;;;771:20:179;;;;;;;763:81;;;;-1:-1:-1;;;763:81:179;;;;;;;;;:::i;:::-;-1:-1:-1;857:4:179;;559:307;-1:-1:-1;;;;;;559:307:179:o;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;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3845:262:58;3898:7;3929:4;-1:-1:-1;;;;;3938:11:58;3921:28;;:63;;;;;3970:14;3953:13;:31;3921:63;3917:184;;;-1:-1:-1;4007:22:58;;3845:262::o;3917:184::-;4067:23;4204:80;;;2079:95;4204:80;;;10986:25:182;4226:11:58;11027:18:182;;;11020:34;;;;4239:14:58;11070:18:182;;;11063:34;4255:13:58;11113:18:182;;;11106:34;4278:4:58;11156:19:182;;;11149:61;4168:7:58;;10958:19:182;;4204:80:58;;;;;;;;;;;;4194:91;;;;;;4187:98;;4113:179;;15296:213:62;15352:6;15382:16;15374:24;;15370:103;;;15421:41;;-1:-1:-1;;;15421:41:62;;15452:2;15421:41;;;10637:36:182;10689:18;;;10682:34;;;10610:18;;15421:41:62;10456:266:182;15370:103:62;-1:-1:-1;15496:5:62;15296:213::o;6887:260:57:-;6972:7;6992:17;7011:18;7031:16;7051:25;7062:4;7068:1;7071;7074;7051:10;:25::i;:::-;6991:85;;;;;;7086:28;7098:5;7105:8;7086:11;:28::i;:::-;-1:-1:-1;7131:9:57;;6887:260;-1:-1:-1;;;;;;6887:260:57:o;2078:378:52:-;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;5203:1551:57:-;5329:17;;;-1:-1:-1;;;;;6270:79:57;;6266:164;;;-1:-1:-1;6381:1:57;;-1:-1:-1;6385:30:57;;-1:-1:-1;6417:1:57;6365:54;;6266:164;6541:24;;;6524:14;6541:24;;;;;;;;;11448:25:182;;;11521:4;11509:17;;11489:18;;;11482:45;;;;11543:18;;;11536:34;;;11586:18;;;11579:34;;;6541:24:57;;11420:19:182;;6541:24:57;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6541:24:57;;-1:-1:-1;;6541:24:57;;;-1:-1:-1;;;;;;;6579:20:57;;6575:113;;-1:-1:-1;6631:1:57;;-1:-1:-1;6635:29:57;;-1:-1:-1;6631:1:57;;-1:-1:-1;6615:62:57;;6575:113;6706:6;-1:-1:-1;6714:20:57;;-1:-1:-1;6714:20:57;;-1:-1:-1;5203:1551:57;;;;;;;;;:::o;7280:532::-;7375:20;7366:5;:29;;;;;;;;:::i;:::-;;7362:444;;7280:532;;:::o;7362:444::-;7471:29;7462:5;:38;;;;;;;;:::i;:::-;;7458:348;;7523:23;;-1:-1:-1;;;7523:23:57;;;;;;;;;;;7458:348;7576:35;7567:5;:44;;;;;;;;:::i;:::-;;7563:243;;7634:46;;-1:-1:-1;;;7634:46:57;;;;;1054:25:182;;;1027:18;;7634:46:57;908:177:182;7563:243:57;7710:30;7701:5;:39;;;;;;;;:::i;:::-;;7697:109;;7763:32;;-1:-1:-1;;;7763:32:57;;;;;1054:25:182;;;1027:18;;7763:32:57;908:177:182;7697:109:57;7280:532;;:::o;2528:245:52:-;2589:7;2661:4;2625:40;;2688:2;2679:11;;2675:69;;;2713:20;;-1:-1:-1;;;2713:20:52;;;;;;;;;;;-1:-1:-1;;;;;;;;:::o;14:222:182:-;-1:-1:-1;;;;;197:32:182;;;;179:51;;167:2;152:18;;14:222::o;241:131::-;-1:-1:-1;;;;;316:31:182;;306:42;;296:70;;362:1;359;352:12;296:70;241:131;:::o;377:526::-;472:6;480;488;541:2;529:9;520:7;516:23;512:32;509:52;;;557:1;554;547:12;509:52;596:9;583:23;615:31;640:5;615:31;:::i;:::-;665:5;-1:-1:-1;743:2:182;728:18;;715:32;;-1:-1:-1;825:2:182;810:18;;797:32;838:33;797:32;838:33;:::i;:::-;890:7;880:17;;;377:526;;;;;:::o;1090:367::-;1158:6;1166;1219:2;1207:9;1198:7;1194:23;1190:32;1187:52;;;1235:1;1232;1225:12;1187:52;1274:9;1261:23;1293:31;1318:5;1293:31;:::i;:::-;1343:5;1421:2;1406:18;;;;1393:32;;-1:-1:-1;;;1090:367:182:o;2279:265::-;2356:6;2409:2;2397:9;2388:7;2384:23;2380:32;2377:52;;;2425:1;2422;2415:12;2377:52;2464:9;2451:23;2483:31;2508:5;2483:31;:::i;2741:226::-;2800:6;2853:2;2841:9;2832:7;2828:23;2824:32;2821:52;;;2869:1;2866;2859:12;2821:52;-1:-1:-1;2914:23:182;;2741:226;-1:-1:-1;2741:226:182:o;2972:289::-;3014:3;3052:5;3046:12;3079:6;3074:3;3067:19;3135:6;3128:4;3121:5;3117:16;3110:4;3105:3;3101:14;3095:47;3187:1;3180:4;3171:6;3166:3;3162:16;3158:27;3151:38;3250:4;3243:2;3239:7;3234:2;3226:6;3222:15;3218:29;3213:3;3209:39;3205:50;3198:57;;;2972:289;;;;:::o;3266:1238::-;3672:3;3667;3663:13;3655:6;3651:26;3640:9;3633:45;3714:3;3709:2;3698:9;3694:18;3687:31;3614:4;3741:46;3782:3;3771:9;3767:19;3759:6;3741:46;:::i;:::-;3835:9;3827:6;3823:22;3818:2;3807:9;3803:18;3796:50;3869:33;3895:6;3887;3869:33;:::i;:::-;3933:2;3918:18;;3911:34;;;-1:-1:-1;;;;;3982:32:182;;3976:3;3961:19;;3954:61;4002:3;4031:19;;4024:35;;;4096:22;;;4090:3;4075:19;;4068:51;4168:13;;4190:22;;;4240:2;4266:15;;;;-1:-1:-1;4228:15:182;;;;-1:-1:-1;4309:169:182;4323:6;4320:1;4317:13;4309:169;;;4384:13;;4372:26;;4427:2;4453:15;;;;4418:12;;;;4345:1;4338:9;4309:169;;;-1:-1:-1;4495:3:182;;3266:1238;-1:-1:-1;;;;;;;;;;;3266:1238:182:o;5280:1109::-;5395:6;5403;5447:9;5438:7;5434:23;5477:3;5473:2;5469:12;5466:32;;;5494:1;5491;5484:12;5466:32;5533:9;5520:23;5552:31;5577:5;5552:31;:::i;:::-;5602:5;-1:-1:-1;5641:4:182;-1:-1:-1;;5623:16:182;;5619:27;5616:47;;;5659:1;5656;5649:12;5616:47;;5692:2;5686:9;5734:4;5726:6;5722:17;5805:6;5793:10;5790:22;5769:18;5757:10;5754:34;5751:62;5748:185;;;5855:10;5850:3;5846:20;5843:1;5836:31;5890:4;5887:1;5880:15;5918:4;5915:1;5908:15;5748:185;5949:2;5942:22;6016:2;6001:18;;5988:32;6064:4;6051:18;;6039:31;;6029:59;;6084:1;6081;6074:12;6029:59;6097:23;;6193:2;6178:18;;;6165:32;6225:2;6213:15;;6206:32;6311:4;6296:20;;;6283:34;6333:15;;;6326:32;;;;-1:-1:-1;5280:1109:182;6104:6;;-1:-1:-1;5280:1109:182:o;6652:251::-;6722:6;6775:2;6763:9;6754:7;6750:23;6746:32;6743:52;;;6791:1;6788;6781:12;6743:52;6823:9;6817:16;6842:31;6867:5;6842:31;:::i;6908:257::-;7005:6;7058:2;7046:9;7037:7;7033:23;7029:32;7026:52;;;7074:1;7071;7064:12;7026:52;-1:-1:-1;7119:16:182;;6908:257;-1:-1:-1;6908:257:182:o;7170:222::-;7235:9;;;7256:10;;;7253:133;;;7308:10;7303:3;7299:20;7296:1;7289:31;7343:4;7340:1;7333:15;7371:4;7368:1;7361:15;8369:217;8409:1;8435;8425:132;;8479:10;8474:3;8470:20;8467:1;8460:31;8514:4;8511:1;8504:15;8542:4;8539:1;8532:15;8425:132;-1:-1:-1;8571:9:182;;8369:217::o;9078:300::-;-1:-1:-1;;;;;9270:32:182;;;9252:51;;9339:32;;9334:2;9319:18;;9312:60;9240:2;9225:18;;9078:300::o;10071:380::-;10150:1;10146:12;;;;10193;;;10214:61;;10268:4;10260:6;10256:17;10246:27;;10214:61;10321:2;10313:6;10310:14;10290:18;10287:38;10284:161;;10367:10;10362:3;10358:20;10355:1;10348:31;10402:4;10399:1;10392:15;10430:4;10427:1;10420:15;10284:161;;10071:380;;;:::o;11624:127::-;11685:10;11680:3;11676:20;11673:1;11666:31;11716:4;11713:1;11706:15;11740:4;11737:1;11730:15","linkReferences":{},"immutableReferences":{"100611":[{"start":608,"length":32},{"start":1798,"length":32},{"start":3225,"length":32}],"100613":[{"start":534,"length":32},{"start":2311,"length":32}],"100615":[{"start":799,"length":32},{"start":1548,"length":32}],"100617":[{"start":857,"length":32},{"start":1459,"length":32}],"101236":[{"start":278,"length":32},{"start":1040,"length":32},{"start":2351,"length":32},{"start":3457,"length":32}],"101239":[{"start":760,"length":32},{"start":3424,"length":32}],"53354":[{"start":4145,"length":32}],"53356":[{"start":4103,"length":32}],"53358":[{"start":4061,"length":32}],"53360":[{"start":4226,"length":32}],"53362":[{"start":4266,"length":32}],"53365":[{"start":3337,"length":32}],"53368":[{"start":3381,"length":32}]}},"methodIdentifiers":{"EXECUTION_DELAY_IN_ROUNDS()":"bf2ba552","GSE()":"a636c83d","LIFETIME_IN_ROUNDS()":"a97f36a8","QUORUM_SIZE()":"5cb165a0","REGISTRY()":"06433b1b","ROUND_SIZE()":"54133307","SIGNAL_TYPEHASH()":"20d88ca8","computeRound(uint256)":"d11eb2b2","eip712Domain()":"84b0196e","getCurrentRound()":"a32bf597","getGovernance()":"289b3c0d","getInstance()":"de7b5d14","getProposalProposer(uint256)":"5f90af2a","getRoundData(address,uint256)":"16af8be1","getSignalSignatureDigest(address,uint256)":"9e9d26bf","signal(address)":"552b836f","signalCount(address,uint256,address)":"11739538","signalWithSig(address,(uint8,bytes32,bytes32))":"b2406d94","submitRoundWinner(uint256)":"98252dda"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"_registry\",\"type\":\"address\"},{\"internalType\":\"contract IGSE\",\"name\":\"_gse\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_quorumSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_roundSize\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ECDSAInvalidSignature\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"ECDSAInvalidSignatureLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"ECDSAInvalidSignatureS\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"contract IPayload\",\"name\":\"payload\",\"type\":\"address\"}],\"name\":\"EmpireBase__FailedToSubmitRoundWinner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"instance\",\"type\":\"address\"}],\"name\":\"EmpireBase__InstanceHaveNoCode\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"signalsCast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signalsNeeded\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__InsufficientSignals\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"lifetimeInRounds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"executionDelayInRounds\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__InvalidLifetimeAndExecutionDelay\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"quorumSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"roundSize\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__InvalidQuorumAndRoundSize\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"proposer\",\"type\":\"address\"}],\"name\":\"EmpireBase__OnlyProposerCanSignal\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"roundNumber\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__PayloadAlreadySubmitted\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"EmpireBase__PayloadCannotBeAddressZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"quorumSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"roundSize\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__QuorumCannotBeLargerThanRoundSize\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"roundNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"currentRoundNumber\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__RoundTooNew\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"roundNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"currentRoundNumber\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__RoundTooOld\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"Slot\",\"name\":\"slot\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__SignalAlreadyCastForSlot\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidShortString\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"bits\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"SafeCastOverflowedUintDowncast\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"SignatureLib__InvalidSignature\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"str\",\"type\":\"string\"}],\"name\":\"StringTooLong\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"EIP712DomainChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IPayload\",\"name\":\"payload\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"round\",\"type\":\"uint256\"}],\"name\":\"PayloadSubmittable\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IPayload\",\"name\":\"payload\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"round\",\"type\":\"uint256\"}],\"name\":\"PayloadSubmitted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IPayload\",\"name\":\"payload\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"round\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"signaler\",\"type\":\"address\"}],\"name\":\"SignalCast\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"EXECUTION_DELAY_IN_ROUNDS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"GSE\",\"outputs\":[{\"internalType\":\"contract IGSE\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LIFETIME_IN_ROUNDS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"QUORUM_SIZE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"REGISTRY\",\"outputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ROUND_SIZE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SIGNAL_TYPEHASH\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Slot\",\"name\":\"_slot\",\"type\":\"uint256\"}],\"name\":\"computeRound\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"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\":\"getCurrentRound\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGovernance\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getInstance\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposalProposer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_instance\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_round\",\"type\":\"uint256\"}],\"name\":\"getRoundData\",\"outputs\":[{\"components\":[{\"internalType\":\"Slot\",\"name\":\"lastSignalSlot\",\"type\":\"uint256\"},{\"internalType\":\"contract IPayload\",\"name\":\"payloadWithMostSignals\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"executed\",\"type\":\"bool\"}],\"internalType\":\"struct RoundAccounting\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IPayload\",\"name\":\"_payload\",\"type\":\"address\"},{\"internalType\":\"Slot\",\"name\":\"_slot\",\"type\":\"uint256\"}],\"name\":\"getSignalSignatureDigest\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IPayload\",\"name\":\"_payload\",\"type\":\"address\"}],\"name\":\"signal\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_instance\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_round\",\"type\":\"uint256\"},{\"internalType\":\"contract IPayload\",\"name\":\"_payload\",\"type\":\"address\"}],\"name\":\"signalCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IPayload\",\"name\":\"_payload\",\"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\":\"_sig\",\"type\":\"tuple\"}],\"name\":\"signalWithSig\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_roundNumber\",\"type\":\"uint256\"}],\"name\":\"submitRoundWinner\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"ECDSAInvalidSignature()\":[{\"details\":\"The signature derives the `address(0)`.\"}],\"ECDSAInvalidSignatureLength(uint256)\":[{\"details\":\"The signature has an invalid length.\"}],\"ECDSAInvalidSignatureS(bytes32)\":[{\"details\":\"The signature has an S value that is in the upper half order.\"}],\"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\":{\"computeRound(uint256)\":{\"params\":{\"_slot\":\"- The slot to compute round for\"},\"returns\":{\"_0\":\"The round number\"}},\"constructor\":{\"details\":\"The _executionDelayInRounds are set to 0, as there already is a delay in the governance contract. If this was not the case, the delay could be applied here.\",\"params\":{\"_gse\":\"The GSE contract address.\",\"_quorumSize\":\"The number of signals needed in a round for a payload to pass.\",\"_registry\":\"The registry contract address.\",\"_roundSize\":\"The number of signals that can be cast in a round.\"}},\"eip712Domain()\":{\"details\":\"See {IERC-5267}.\"},\"getCurrentRound()\":{\"returns\":{\"_0\":\"The round number\"}},\"getGovernance()\":{\"details\":\"Returns the address of the Governance contract, i.e. the contract at which we will `propose` a winning proposal.\"},\"getInstance()\":{\"details\":\"A hook used by the EmpireBase to determine who is the current checkpoint builder (checkpoint \\\"proposer\\\"), and thus may signal. This contract only respects the canonical rollup.\"},\"signal(address)\":{\"details\":\"this only works if msg.sender is the current signaler\",\"params\":{\"_payload\":\"- The address of the IPayload to signal support for\"},\"returns\":{\"_0\":\"True if executed successfully, false otherwise\"}},\"signalCount(address,uint256,address)\":{\"params\":{\"_instance\":\"- The address of the instance\",\"_payload\":\"- The payload to lookup\",\"_round\":\"- The round to lookup\"},\"returns\":{\"_0\":\"The number of signals\"}},\"signalWithSig(address,(uint8,bytes32,bytes32))\":{\"params\":{\"_payload\":\"- The payload to signal support for\",\"_sig\":\"- A signature from the signaler\"},\"returns\":{\"_0\":\"True if executed successfully, false otherwise\"}},\"submitRoundWinner(uint256)\":{\"details\":\"calls `_handleRoundWinner` on the implementing contract with the winning payload, if applicable.\",\"params\":{\"_roundNumber\":\"- The round number to execute\"},\"returns\":{\"_0\":\"True if executed successfully, false otherwise\"}}},\"stateVariables\":{\"proposalProposer\":{\"details\":\"Mapping of proposal ID to the proposer address. This allows instances to see if they were the proposer of a proposal after the payload is `propose`ed to Governance. Instances that *did* propose a proposal are willing to vote on it in Governance. See `StakingLib.vote` for more details.\"}},\"title\":\"GovernanceProposer An implementation of EmpireBase, used to propose payloads to governance from sequencers on the canonical rollup. Note: any payload which passes through this contract will have a call to GSEPayload.amIValid appended to the list of actions before it is proposed to Governance. This will cause the proposal to revert if >2/3 of all stake in the GSE are not staked on the latest rollup after the *original* payload is executed by Governance. Unless the latest and canonical rollup diverge, as that indicates a misconfiguration issue (see GSEPayload for more details).\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"computeRound(uint256)\":{\"notice\":\"Computes the round at the given slot\"},\"constructor\":{\"notice\":\"Constructor for the GovernanceProposer contract.\"},\"getCurrentRound()\":{\"notice\":\"Computes the round at the current slot\"},\"signal(address)\":{\"notice\":\"Signal support for a payload\"},\"signalCount(address,uint256,address)\":{\"notice\":\"Fetch the signal count for a specific payload in a specific round on a specific instance\"},\"signalWithSig(address,(uint8,bytes32,bytes32))\":{\"notice\":\"Signal support for a payload with a signature from the current signaler\"},\"submitRoundWinner(uint256)\":{\"notice\":\"Submit the round winner to the implementation's `_handleRoundWinner` function\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/governance/proposer/GovernanceProposer.sol\":\"GovernanceProposer\"},\"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/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/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/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/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/Checkpoints.sol\":{\"keccak256\":\"0x66364cd3247ea71cdb58f080f5d5ed6732433a8001413139661841535494692f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f87914c6645b58eaf75f00a156037a7da91129f3a56aec44aebfc715b19ea44\",\"dweb:/ipfs/QmNX7NLSMXyWuogvf8wfCwjUGwLhLBZrGktWPSdoHtERGp\"]},\"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/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 IRegistry","name":"_registry","type":"address"},{"internalType":"contract IGSE","name":"_gse","type":"address"},{"internalType":"uint256","name":"_quorumSize","type":"uint256"},{"internalType":"uint256","name":"_roundSize","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"error","name":"ECDSAInvalidSignature"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"ECDSAInvalidSignatureLength"},{"inputs":[{"internalType":"bytes32","name":"s","type":"bytes32"}],"type":"error","name":"ECDSAInvalidSignatureS"},{"inputs":[{"internalType":"contract IPayload","name":"payload","type":"address"}],"type":"error","name":"EmpireBase__FailedToSubmitRoundWinner"},{"inputs":[{"internalType":"address","name":"instance","type":"address"}],"type":"error","name":"EmpireBase__InstanceHaveNoCode"},{"inputs":[{"internalType":"uint256","name":"signalsCast","type":"uint256"},{"internalType":"uint256","name":"signalsNeeded","type":"uint256"}],"type":"error","name":"EmpireBase__InsufficientSignals"},{"inputs":[{"internalType":"uint256","name":"lifetimeInRounds","type":"uint256"},{"internalType":"uint256","name":"executionDelayInRounds","type":"uint256"}],"type":"error","name":"EmpireBase__InvalidLifetimeAndExecutionDelay"},{"inputs":[{"internalType":"uint256","name":"quorumSize","type":"uint256"},{"internalType":"uint256","name":"roundSize","type":"uint256"}],"type":"error","name":"EmpireBase__InvalidQuorumAndRoundSize"},{"inputs":[{"internalType":"address","name":"caller","type":"address"},{"internalType":"address","name":"proposer","type":"address"}],"type":"error","name":"EmpireBase__OnlyProposerCanSignal"},{"inputs":[{"internalType":"uint256","name":"roundNumber","type":"uint256"}],"type":"error","name":"EmpireBase__PayloadAlreadySubmitted"},{"inputs":[],"type":"error","name":"EmpireBase__PayloadCannotBeAddressZero"},{"inputs":[{"internalType":"uint256","name":"quorumSize","type":"uint256"},{"internalType":"uint256","name":"roundSize","type":"uint256"}],"type":"error","name":"EmpireBase__QuorumCannotBeLargerThanRoundSize"},{"inputs":[{"internalType":"uint256","name":"roundNumber","type":"uint256"},{"internalType":"uint256","name":"currentRoundNumber","type":"uint256"}],"type":"error","name":"EmpireBase__RoundTooNew"},{"inputs":[{"internalType":"uint256","name":"roundNumber","type":"uint256"},{"internalType":"uint256","name":"currentRoundNumber","type":"uint256"}],"type":"error","name":"EmpireBase__RoundTooOld"},{"inputs":[{"internalType":"Slot","name":"slot","type":"uint256"}],"type":"error","name":"EmpireBase__SignalAlreadyCastForSlot"},{"inputs":[],"type":"error","name":"InvalidShortString"},{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"type":"error","name":"SafeCastOverflowedUintDowncast"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"type":"error","name":"SignatureLib__InvalidSignature"},{"inputs":[{"internalType":"string","name":"str","type":"string"}],"type":"error","name":"StringTooLong"},{"inputs":[],"type":"event","name":"EIP712DomainChanged","anonymous":false},{"inputs":[{"internalType":"contract IPayload","name":"payload","type":"address","indexed":true},{"internalType":"uint256","name":"round","type":"uint256","indexed":true}],"type":"event","name":"PayloadSubmittable","anonymous":false},{"inputs":[{"internalType":"contract IPayload","name":"payload","type":"address","indexed":true},{"internalType":"uint256","name":"round","type":"uint256","indexed":true}],"type":"event","name":"PayloadSubmitted","anonymous":false},{"inputs":[{"internalType":"contract IPayload","name":"payload","type":"address","indexed":true},{"internalType":"uint256","name":"round","type":"uint256","indexed":true},{"internalType":"address","name":"signaler","type":"address","indexed":true}],"type":"event","name":"SignalCast","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"EXECUTION_DELAY_IN_ROUNDS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"GSE","outputs":[{"internalType":"contract IGSE","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"LIFETIME_IN_ROUNDS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"QUORUM_SIZE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"REGISTRY","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"ROUND_SIZE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SIGNAL_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"Slot","name":"_slot","type":"uint256"}],"stateMutability":"view","type":"function","name":"computeRound","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"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":"view","type":"function","name":"getCurrentRound","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getGovernance","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getInstance","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposalProposer","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_instance","type":"address"},{"internalType":"uint256","name":"_round","type":"uint256"}],"stateMutability":"view","type":"function","name":"getRoundData","outputs":[{"internalType":"struct RoundAccounting","name":"","type":"tuple","components":[{"internalType":"Slot","name":"lastSignalSlot","type":"uint256"},{"internalType":"contract IPayload","name":"payloadWithMostSignals","type":"address"},{"internalType":"bool","name":"executed","type":"bool"}]}]},{"inputs":[{"internalType":"contract IPayload","name":"_payload","type":"address"},{"internalType":"Slot","name":"_slot","type":"uint256"}],"stateMutability":"view","type":"function","name":"getSignalSignatureDigest","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"contract IPayload","name":"_payload","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"signal","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_instance","type":"address"},{"internalType":"uint256","name":"_round","type":"uint256"},{"internalType":"contract IPayload","name":"_payload","type":"address"}],"stateMutability":"view","type":"function","name":"signalCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"contract IPayload","name":"_payload","type":"address"},{"internalType":"struct Signature","name":"_sig","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":"signalWithSig","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_roundNumber","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"submitRoundWinner","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"computeRound(uint256)":{"params":{"_slot":"- The slot to compute round for"},"returns":{"_0":"The round number"}},"constructor":{"details":"The _executionDelayInRounds are set to 0, as there already is a delay in the governance contract. If this was not the case, the delay could be applied here.","params":{"_gse":"The GSE contract address.","_quorumSize":"The number of signals needed in a round for a payload to pass.","_registry":"The registry contract address.","_roundSize":"The number of signals that can be cast in a round."}},"eip712Domain()":{"details":"See {IERC-5267}."},"getCurrentRound()":{"returns":{"_0":"The round number"}},"getGovernance()":{"details":"Returns the address of the Governance contract, i.e. the contract at which we will `propose` a winning proposal."},"getInstance()":{"details":"A hook used by the EmpireBase to determine who is the current checkpoint builder (checkpoint \"proposer\"), and thus may signal. This contract only respects the canonical rollup."},"signal(address)":{"details":"this only works if msg.sender is the current signaler","params":{"_payload":"- The address of the IPayload to signal support for"},"returns":{"_0":"True if executed successfully, false otherwise"}},"signalCount(address,uint256,address)":{"params":{"_instance":"- The address of the instance","_payload":"- The payload to lookup","_round":"- The round to lookup"},"returns":{"_0":"The number of signals"}},"signalWithSig(address,(uint8,bytes32,bytes32))":{"params":{"_payload":"- The payload to signal support for","_sig":"- A signature from the signaler"},"returns":{"_0":"True if executed successfully, false otherwise"}},"submitRoundWinner(uint256)":{"details":"calls `_handleRoundWinner` on the implementing contract with the winning payload, if applicable.","params":{"_roundNumber":"- The round number to execute"},"returns":{"_0":"True if executed successfully, false otherwise"}}},"version":1},"userdoc":{"kind":"user","methods":{"computeRound(uint256)":{"notice":"Computes the round at the given slot"},"constructor":{"notice":"Constructor for the GovernanceProposer contract."},"getCurrentRound()":{"notice":"Computes the round at the current slot"},"signal(address)":{"notice":"Signal support for a payload"},"signalCount(address,uint256,address)":{"notice":"Fetch the signal count for a specific payload in a specific round on a specific instance"},"signalWithSig(address,(uint8,bytes32,bytes32))":{"notice":"Signal support for a payload with a signature from the current signaler"},"submitRoundWinner(uint256)":{"notice":"Submit the round winner to the implementation's `_handleRoundWinner` function"}},"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/governance/proposer/GovernanceProposer.sol":"GovernanceProposer"},"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/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/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/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/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/Checkpoints.sol":{"keccak256":"0x66364cd3247ea71cdb58f080f5d5ed6732433a8001413139661841535494692f","urls":["bzz-raw://0f87914c6645b58eaf75f00a156037a7da91129f3a56aec44aebfc715b19ea44","dweb:/ipfs/QmNX7NLSMXyWuogvf8wfCwjUGwLhLBZrGktWPSdoHtERGp"],"license":"MIT"},"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/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":152}
1
+ {"abi":[{"type":"constructor","inputs":[{"name":"_registry","type":"address","internalType":"contract IRegistry"},{"name":"_gse","type":"address","internalType":"contract IGSE"},{"name":"_quorumSize","type":"uint256","internalType":"uint256"},{"name":"_roundSize","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"EXECUTION_DELAY_IN_ROUNDS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"GSE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IGSE"}],"stateMutability":"view"},{"type":"function","name":"LIFETIME_IN_ROUNDS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"QUORUM_SIZE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"REGISTRY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRegistry"}],"stateMutability":"view"},{"type":"function","name":"ROUND_SIZE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"SIGNAL_TYPEHASH","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"computeRound","inputs":[{"name":"_slot","type":"uint256","internalType":"Slot"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"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":"getCurrentRound","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getGovernance","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getInstance","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProposalProposer","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getRoundData","inputs":[{"name":"_instance","type":"address","internalType":"address"},{"name":"_round","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct RoundAccounting","components":[{"name":"lastSignalSlot","type":"uint256","internalType":"Slot"},{"name":"payloadWithMostSignals","type":"address","internalType":"contract IPayload"},{"name":"executed","type":"bool","internalType":"bool"}]}],"stateMutability":"view"},{"type":"function","name":"getSignalSignatureDigest","inputs":[{"name":"_payload","type":"address","internalType":"contract IPayload"},{"name":"_slot","type":"uint256","internalType":"Slot"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"signal","inputs":[{"name":"_payload","type":"address","internalType":"contract IPayload"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"signalCount","inputs":[{"name":"_instance","type":"address","internalType":"address"},{"name":"_round","type":"uint256","internalType":"uint256"},{"name":"_payload","type":"address","internalType":"contract IPayload"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"signalWithSig","inputs":[{"name":"_payload","type":"address","internalType":"contract IPayload"},{"name":"_sig","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":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"submitRoundWinner","inputs":[{"name":"_roundNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"EIP712DomainChanged","inputs":[],"anonymous":false},{"type":"event","name":"PayloadSubmittable","inputs":[{"name":"payload","type":"address","indexed":true,"internalType":"contract IPayload"},{"name":"round","type":"uint256","indexed":true,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PayloadSubmitted","inputs":[{"name":"payload","type":"address","indexed":true,"internalType":"contract IPayload"},{"name":"round","type":"uint256","indexed":true,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SignalCast","inputs":[{"name":"payload","type":"address","indexed":true,"internalType":"contract IPayload"},{"name":"round","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"signaler","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"ECDSAInvalidSignature","inputs":[]},{"type":"error","name":"ECDSAInvalidSignatureLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ECDSAInvalidSignatureS","inputs":[{"name":"s","type":"bytes32","internalType":"bytes32"}]},{"type":"error","name":"EmpireBase__FailedToSubmitRoundWinner","inputs":[{"name":"payload","type":"address","internalType":"contract IPayload"}]},{"type":"error","name":"EmpireBase__InstanceHaveNoCode","inputs":[{"name":"instance","type":"address","internalType":"address"}]},{"type":"error","name":"EmpireBase__InsufficientSignals","inputs":[{"name":"signalsCast","type":"uint256","internalType":"uint256"},{"name":"signalsNeeded","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"EmpireBase__InvalidLifetimeAndExecutionDelay","inputs":[{"name":"lifetimeInRounds","type":"uint256","internalType":"uint256"},{"name":"executionDelayInRounds","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"EmpireBase__InvalidQuorumAndRoundSize","inputs":[{"name":"quorumSize","type":"uint256","internalType":"uint256"},{"name":"roundSize","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"EmpireBase__OnlyProposerCanSignal","inputs":[{"name":"caller","type":"address","internalType":"address"},{"name":"proposer","type":"address","internalType":"address"}]},{"type":"error","name":"EmpireBase__PayloadAlreadySubmitted","inputs":[{"name":"roundNumber","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"EmpireBase__PayloadCannotBeAddressZero","inputs":[]},{"type":"error","name":"EmpireBase__QuorumCannotBeLargerThanRoundSize","inputs":[{"name":"quorumSize","type":"uint256","internalType":"uint256"},{"name":"roundSize","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"EmpireBase__RoundTooNew","inputs":[{"name":"roundNumber","type":"uint256","internalType":"uint256"},{"name":"currentRoundNumber","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"EmpireBase__RoundTooOld","inputs":[{"name":"roundNumber","type":"uint256","internalType":"uint256"},{"name":"currentRoundNumber","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"EmpireBase__SignalAlreadyCastForSlot","inputs":[{"name":"slot","type":"uint256","internalType":"Slot"}]},{"type":"error","name":"InvalidShortString","inputs":[]},{"type":"error","name":"SafeCastOverflowedUintDowncast","inputs":[{"name":"bits","type":"uint8","internalType":"uint8"},{"name":"value","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SignatureLib__InvalidSignature","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"address","internalType":"address"}]},{"type":"error","name":"StringTooLong","inputs":[{"name":"str","type":"string","internalType":"string"}]}],"bytecode":{"object":"0x610220604052348015610010575f5ffd5b5060405161282238038061282283398101604081905261002f91610292565b818160055f6040518060400160405280600a815260200169456d706972654261736560b01b815250604051806040016040528060018152602001603160f81b8152506100845f8361020c60201b90919060201c565b6101205261009381600161020c565b61014052815160208084019190912060e052815190820120610100524660a05261011f60e05161010051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b60805250503060c0526101608490526101808390526101a08290526101c081905261014b6002846102d7565b6101605161018051909182116101825760405163ca96544560e01b8152600481019290925260248201526044015b60405180910390fd5b5050610180516101605190808211156101b757604051632f0328af60e11b815260048101929092526024820152604401610179565b50506101c0516101a051908082116101eb5760405163f459e17f60e01b815260048101929092526024820152604401610179565b505050506001600160a01b039586166101e0525050505016610200526104a0565b5f602083511015610227576102208361023e565b9050610238565b81610232848261038e565b5060ff90505b92915050565b5f5f829050601f81511115610268578260405163305a27a960e01b81526004016101799190610448565b80516102738261047d565b179392505050565b6001600160a01b038116811461028f575f5ffd5b50565b5f5f5f5f608085870312156102a5575f5ffd5b84516102b08161027b565b60208601519094506102c18161027b565b6040860151606090960151949790965092505050565b5f826102f157634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061031e57607f821691505b60208210810361033c57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561038957805f5260205f20601f840160051c810160208510156103675750805b601f840160051c820191505b81811015610386575f8155600101610373565b50505b505050565b81516001600160401b038111156103a7576103a76102f6565b6103bb816103b5845461030a565b84610342565b6020601f8211600181146103ed575f83156103d65750848201515b5f19600385901b1c1916600184901b178455610386565b5f84815260208120601f198516915b8281101561041c57878501518255602094850194600190920191016103fc565b508482101561043957868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b8051602080830151919081101561033c575f1960209190910360031b1b16919050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e051610200516122b661056c5f395f81816102f80152610d6001525f8181610116015281816104100152818161092f0152610d8101525f818161035901526105b301525f818161031f015261060c01525f8181610216015261090701525f8181610260015281816107060152610c9901525f610d3501525f610d0901525f6110aa01525f61108201525f610fdd01525f61100701525f61103101526122b65ff3fe608060405234801561000f575f5ffd5b506004361061010d575f3560e01c806384b0196e116100a9578063a97f36a81161006e578063a97f36a81461031a578063b2406d9414610341578063bf2ba55214610354578063d11eb2b21461037b578063de7b5d141461038e575f5ffd5b806384b0196e146102aa57806398252dda146102c55780639e9d26bf146102d8578063a32bf597146102eb578063a636c83d146102f3575f5ffd5b806306433b1b14610111578063117395381461014e57806316af8be1146101a257806320d88ca8146101e2578063289b3c0d146102095780635413330714610211578063552b836f146102385780635cb165a01461025b5780635f90af2a14610282575b5f5ffd5b6101387f000000000000000000000000000000000000000000000000000000000000000081565b6040516101459190611345565b60405180910390f35b61019461015c366004611370565b6001600160a01b038084165f908152600260209081526040808320868452825280832093851683526001909301905220549392505050565b604051908152602001610145565b6101b56101b03660046113af565b610396565b60408051825181526020808401516001600160a01b03169082015291810151151590820152606001610145565b6101947fdec0bfc6a67146d790874e4994d7a4662b60c6400491f3d945793c73ea05ebb781565b61013861040d565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b61024b6102463660046113d9565b610493565b6040519015158152602001610145565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b6101386102903660046113f4565b5f908152600360205260409020546001600160a01b031690565b6102b26104b9565b6040516101459796959493929190611439565b61024b6102d33660046113f4565b6104fb565b6101946102e63660046113af565b6107fa565b610194610877565b6101387f000000000000000000000000000000000000000000000000000000000000000081565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b61024b61034f3660046114cf565b6108f6565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b6101946103893660046113f4565b610901565b61013861092c565b60408051606080820183525f80835260208084018290529284018190526001600160a01b03868116825260028452848220868352845290849020845192830185525463ffffffff81168352600160201b810490911692820192909252600160c01b90910460ff161515918101919091525b92915050565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663289b3c0d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561046a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061048e9190611566565b905090565b604080516060810182525f80825260208201819052918101829052610407908390610989565b5f6060805f5f5f60606104ca610d02565b6104d2610d2e565b604080515f80825260208201909252600f60f81b9b939a50919850469750309650945092509050565b5f5f61050561092c565b9050806001600160a01b0381163b61053a57604051637e8c089760e01b81526004016105319190611345565b60405180910390fd5b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561057c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105a09190611581565b90505f6105ac82610901565b90506105d87f000000000000000000000000000000000000000000000000000000000000000087611598565b8111868290916106045760405163206d99c760e11b815260048101929092526024820152604401610531565b5061063190507f000000000000000000000000000000000000000000000000000000000000000087611598565b8111158682909161065e57604051630d8b52bd60e01b815260048101929092526024820152604401610531565b50506001600160a01b0384165f908152600260209081526040808320898452909152902080548790600160c01b900460ff16156106b157604051639182ed2360e01b815260040161053191815260200190565b508054600160201b90046001600160a01b03166106e15760405163471b87dd60e11b815260040160405180910390fd5b8054600160201b90046001600160a01b03165f908152600182016020526040902054807f00000000000000000000000000000000000000000000000000000000000000008082101561074f57604051632ece3a1f60e11b815260048101929092526024820152604401610531565b5050815460ff60c01b1916600160c01b1780835560405189916001600160a01b03600160201b90910416907f524a107cd762fc6fd9e34b29c33d17a2292ae9869be3743c11a155b87664af9c905f90a381546107ba90600160201b90046001600160a01b0316610d5b565b8254600160201b90046001600160a01b0316906107eb57604051639e6e028360e01b81526004016105319190611345565b50600198975050505050505050565b5f6108707fdec0bfc6a67146d790874e4994d7a4662b60c6400491f3d945793c73ea05ebb7848461082961092c565b6040805160208101959095526001600160a01b0393841690850152606084019190915216608082015260a00160405160208183030381529060405280519060200120610e9a565b9392505050565b5f5f61088161092c565b90505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e49190611581565b90506108ef81610901565b9250505090565b5f6108708383610989565b5f6104077f0000000000000000000000000000000000000000000000000000000000000000836115b7565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663971b0e6b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561046a573d5f5f3e3d5ffd5b5f5f61099361092c565b9050806001600160a01b0381163b6109bf57604051637e8c089760e01b81526004016105319190611345565b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a01573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a259190611581565b90505f610a3182610901565b6001600160a01b0385165f908152600260209081526040808320848452909152902080549192509063ffffffff1683118390610a8357604051633ef0fda160e21b815260040161053191815260200190565b50610a8d83610ec6565b815f015f6101000a81548163ffffffff021916908363ffffffff1602179055505f846001600160a01b0316633b10244b6040518163ffffffff1660e01b81526004016020604051808303815f875af1158015610aeb573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b0f9190611566565b9050610b1d885160ff161590565b15610b565733816001600160a01b0381168214610b4f5760405163e65facdb60e01b81526004016105319291906115d6565b5050610b95565b5f610b618a866107fa565b9050610b6e898383610ed0565b33839091610b915760405163e65facdb60e01b81526004016105319291906115d6565b5050505b6001600160a01b0389165f908152600183810160205260408220805491929091610bc0908490611598565b909155505081546001600160a01b038a8116600160201b9092041614801590610c13575081546001600160a01b03600160201b90910481165f90815260018401602052604080822054928c168252902054115b15610c3c578154640100000000600160c01b031916600160201b6001600160a01b038b16021782555b806001600160a01b0316838a6001600160a01b03167f2df1cd192fdb24be652b19858ee33f7fc0aff1a85485e3a44d29d1ef79472f6560405160405180910390a46001600160a01b0389165f9081526001830160205260409020547f000000000000000000000000000000000000000000000000000000000000000090036107eb5760405183906001600160a01b038b16907f7670d106b4e42706ce2c68f6e6cf69db532abb05014051816a275fa4622ee340905f90a350600198975050505050505050565b606061048e7f00000000000000000000000000000000000000000000000000000000000000005f610f28565b606061048e7f00000000000000000000000000000000000000000000000000000000000000006001610f28565b5f5f827f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000604051610dac90611338565b6001600160a01b03938416815291831660208301529091166040820152606001604051809103905ff080158015610de5573d5f5f3e3d5ffd5b5090505f610df161040d565b6001600160a01b03166301267951836040518263ffffffff1660e01b8152600401610e1c9190611345565b6020604051808303815f875af1158015610e38573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e5c9190611581565b9050610e6661092c565b5f9182526003602052604090912080546001600160a01b0319166001600160a01b0390921691909117905550600192915050565b5f610407610ea6610fd1565b8360405161190160f01b8152600281019290925260228201526042902090565b5f610407826110fa565b5f5f610ee983865f01518760200151886040015161112e565b905083816001600160a01b0382811690821614610f1b57604051633672eb9b60e21b81526004016105319291906115d6565b5060019695505050505050565b606060ff8314610f4257610f3b8361115a565b9050610407565b818054610f4e906115f0565b80601f0160208091040260200160405190810160405280929190818152602001828054610f7a906115f0565b8015610fc55780601f10610f9c57610100808354040283529160200191610fc5565b820191905f5260205f20905b815481529060010190602001808311610fa857829003601f168201915b50505050509050610407565b5f306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561102957507f000000000000000000000000000000000000000000000000000000000000000046145b1561105357507f000000000000000000000000000000000000000000000000000000000000000090565b61048e604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b5f63ffffffff82111561112a576040516306dfcc6560e41b81526020600482015260248101839052604401610531565b5090565b5f5f5f5f61113e88888888611197565b92509250925061114e8282611255565b50909695505050505050565b60605f61116683611311565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f80806fa2a8918ca85bafe22016d0b997e4df60600160ff1b038411156111c657505f9150600390508261124b565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015611217573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b03811661124257505f92506001915082905061124b565b92505f91508190505b9450945094915050565b5f82600381111561126857611268611628565b03611271575050565b600182600381111561128557611285611628565b036112a35760405163f645eedf60e01b815260040160405180910390fd5b60028260038111156112b7576112b7611628565b036112d85760405163fce698f760e01b815260048101829052602401610531565b60038260038111156112ec576112ec611628565b0361130d576040516335e2f38360e21b815260048101829052602401610531565b5050565b5f60ff8216601f81111561040757604051632cd44ac360e21b815260040160405180910390fd5b610c448061163d83390190565b6001600160a01b0391909116815260200190565b6001600160a01b038116811461136d575f5ffd5b50565b5f5f5f60608486031215611382575f5ffd5b833561138d81611359565b92506020840135915060408401356113a481611359565b809150509250925092565b5f5f604083850312156113c0575f5ffd5b82356113cb81611359565b946020939093013593505050565b5f602082840312156113e9575f5ffd5b813561087081611359565b5f60208284031215611404575f5ffd5b5035919050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b60ff60f81b8816815260e060208201525f61145760e083018961140b565b8281036040840152611469818961140b565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b818110156114be5783518352602093840193909201916001016114a0565b50909b9a5050505050505050505050565b5f5f82840360808112156114e1575f5ffd5b83356114ec81611359565b92506060601f19820112156114ff575f5ffd5b506040516060810181811067ffffffffffffffff8211171561152f57634e487b7160e01b5f52604160045260245ffd5b604052602084013560ff81168114611545575f5ffd5b81526040848101356020830152606090940135938101939093525092909150565b5f60208284031215611576575f5ffd5b815161087081611359565b5f60208284031215611591575f5ffd5b5051919050565b8082018082111561040757634e487b7160e01b5f52601160045260245ffd5b5f826115d157634e487b7160e01b5f52601260045260245ffd5b500490565b6001600160a01b0392831681529116602082015260400190565b600181811c9082168061160457607f821691505b60208210810361162257634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52602160045260245ffdfe60e060405234801561000f575f5ffd5b50604051610c44380380610c4483398101604081905261002e91610062565b6001600160a01b0392831660805290821660a0521660c0526100ac565b6001600160a01b038116811461005f575f5ffd5b50565b5f5f5f60608486031215610074575f5ffd5b835161007f8161004b565b60208501519093506100908161004b565b60408501519092506100a18161004b565b809150509250925092565b60805160a05160c051610b316101135f395f81816074015261030601525f818160f3015281816103890152818161042e015281816104b10152818161053401526105d401525f81816101170152818161014001528181610167015261069a0152610b315ff3fe608060405234801561000f575f5ffd5b506004361061006b575f3560e01c806306433b1b1461006f578063504d080b146100ac578063675d628a146100c15780637754305c146100d9578063a636c83d146100ee578063ad9c74b514610115578063c262e61d1461013b575b5f5ffd5b6100967f000000000000000000000000000000000000000000000000000000000000000081565b6040516100a3919061071f565b60405180910390f35b6100b4610162565b6040516100a39190610761565b6100c9610302565b60405190151581526020016100a3565b6100e1610696565b6040516100a391906107e4565b6100967f000000000000000000000000000000000000000000000000000000000000000081565b7f0000000000000000000000000000000000000000000000000000000000000000610096565b6100967f000000000000000000000000000000000000000000000000000000000000000081565b60605f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663504d080b6040518163ffffffff1660e01b81526004015f60405180830381865afa1580156101c0573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526101e791908101906108d8565b90505f815160016101f89190610a1a565b6001600160401b0381111561020f5761020f6107fd565b60405190808252806020026020018201604052801561025457816020015b604080518082019091525f81526060602082015281526020019060019003908161022d5790505b5090505f5b82518110156102a15782818151811061027457610274610a33565b602002602001015182828151811061028e5761028e610a33565b6020908102919091010152600101610259565b5060408051808201825230815281516004815260248101909252602082810180516001600160e01b03166333aeb14560e11b1790528101919091528251825183919081106102f1576102f1610a33565b602090810291909101015292915050565b5f5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663971b0e6b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610360573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103849190610a47565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b35186a86040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103e3573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104079190610a47565b9050806001600160a01b0316826001600160a01b03161461042b5760019250505090565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610488573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104ac9190610a62565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316639f6bc70c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561050b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061052f9190610a47565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166362400e4c836040518263ffffffff1660e01b815260040161057e919061071f565b602060405180830381865afa158015610599573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105bd9190610a62565b604051631890039360e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906362400e4c9061060990889060040161071f565b602060405180830381865afa158015610624573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106489190610a62565b6106529190610a1a565b90506003610661846002610a79565b61066b9190610a90565b811161068a576040516324b6d5bf60e21b815260040160405180910390fd5b60019550505050505090565b60607f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637754305c6040518163ffffffff1660e01b81526004015f60405180830381865afa1580156106f3573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261071a9190810190610aaf565b905090565b6001600160a01b0391909116815260200190565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b828110156107d857868503603f19018452815180516001600160a01b031686526020908101516040918701829052906107c290870182610733565b9550506020938401939190910190600101610787565b50929695505050505050565b602081525f6107f66020830184610733565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b604080519081016001600160401b0381118282101715610833576108336107fd565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610861576108616107fd565b604052919050565b6001600160a01b038116811461087d575f5ffd5b50565b5f5f6001600160401b03841115610899576108996107fd565b50601f8301601f19166020016108ae81610839565b9150508281528383830111156108c2575f5ffd5b8282602083015e5f602084830101529392505050565b5f602082840312156108e8575f5ffd5b81516001600160401b038111156108fd575f5ffd5b8201601f8101841361090d575f5ffd5b80516001600160401b03811115610926576109266107fd565b8060051b61093660208201610839565b91825260208184018101929081019087841115610951575f5ffd5b6020850192505b838310156109fb5782516001600160401b03811115610975575f5ffd5b85016040818a03601f1901121561098a575f5ffd5b610992610811565b60208201516109a081610869565b815260408201516001600160401b038111156109ba575f5ffd5b60208184010192505089601f8301126109d1575f5ffd5b6109e08a835160208501610880565b60208201528084525050602082019150602083019250610958565b979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610a2d57610a2d610a06565b92915050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610a57575f5ffd5b81516107f681610869565b5f60208284031215610a72575f5ffd5b5051919050565b8082028115828204841417610a2d57610a2d610a06565b5f82610aaa57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215610abf575f5ffd5b81516001600160401b03811115610ad4575f5ffd5b8201601f81018413610ae4575f5ffd5b610af384825160208401610880565b94935050505056fea26469706673582212206a7c99f3edc50d241e9d868b878af5ca265b6ac69ce42f70440f1bcd42754ebe64736f6c634300081e0033a2646970667358221220b6e98f9afb7d83af4804bad19c947969f0f242de674d0f66a4410cd9895f32de64736f6c634300081e0033","sourceMap":"1241:3012:154:-:0;;;2301:180;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2401:11;2414:10;2426:1;2429;3328:431:58;;;;;;;;;;;;;-1:-1:-1;;;3328:431:58;;;;;;;;;;;;;;;;-1:-1:-1;;;3328:431:58;;;3401:45;3432:13;3401:4;:30;;;;: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;;;4208:25:184;4249:18;;;4242:34;;;;4292:18;;;4285:34;4255:13:58;4335:18:184;;;4328:34;4278:4:58;4378:19:184;;;4371:61;4168:7:58;;4180:19:184;;4204:80:58;;;;;;;;;;;;4194:91;;;;;;4187:98;;4113:179;;3692:23;3667:48;;-1:-1:-1;;3747:4:58;3725:27;;5601:25:153::1;::::0;;;5632:23:::1;::::0;;;5661:38:::1;::::0;;;5705:51:::1;::::0;;;5785:14:::1;5798:1;5645:10:::0;5785:14:::1;:::i;:::-;5771:11;::::0;5859:10:::1;::::0;5771:11;;:28;::::1;5763:108;;;::::0;-1:-1:-1;;;5763:108:153;;::::1;::::0;::::1;1229:25:184::0;;;;1270:18;;;1263:34;1202:18;;5763:108:153::1;;;;;;;;;-1:-1:-1::0;;5900:10:153::1;::::0;5885:11:::1;::::0;;:25;;::::1;;5877:113;;;::::0;-1:-1:-1;;;5877:113:153;;::::1;::::0;::::1;1229:25:184::0;;;;1270:18;;;1263:34;1202:18;;5877:113:153::1;1055:248:184::0;5877:113:153::1;-1:-1:-1::0;;6033:25:153::1;::::0;6012:18:::1;::::0;;:46;;::::1;5997:173;;;::::0;-1:-1:-1;;;5997:173:153;;::::1;::::0;::::1;1229:25:184::0;;;;1270:18;;;1263:34;1202:18;;5997:173:153::1;1055:248:184::0;5997:173:153::1;-1:-1:-1::0;;;;;;;;;2440:20:154;;::::1;;::::0;-1:-1:-1;;;;2466:10:154::1;;::::0;1241:3012;;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;1708:286::-;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;14:142:184:-;-1:-1:-1;;;;;100:31:184;;90:42;;80:70;;146:1;143;136:12;80:70;14:142;:::o;161:667::-;291:6;299;307;315;368:3;356:9;347:7;343:23;339:33;336:53;;;385:1;382;375:12;336:53;417:9;411:16;436:42;472:5;436:42;:::i;:::-;547:2;532:18;;526:25;497:5;;-1:-1:-1;560:44:184;526:25;560:44;:::i;:::-;696:2;681:18;;675:25;792:2;777:18;;;771:25;161:667;;623:7;;-1:-1:-1;161:667:184;-1:-1:-1;;;161:667:184:o;833:217::-;873:1;899;889:132;;943:10;938:3;934:20;931:1;924:31;978:4;975:1;968:15;1006:4;1003:1;996:15;889:132;-1:-1:-1;1035:9:184;;833:217::o;1308:127::-;1369:10;1364:3;1360:20;1357:1;1350:31;1400:4;1397:1;1390:15;1424:4;1421:1;1414:15;1440:380;1519:1;1515:12;;;;1562;;;1583:61;;1637:4;1629:6;1625:17;1615:27;;1583:61;1690:2;1682:6;1679:14;1659:18;1656:38;1653:161;;1736:10;1731:3;1727:20;1724:1;1717:31;1771:4;1768:1;1761:15;1799:4;1796:1;1789:15;1653:161;;1440:380;;;:::o;1951:518::-;2053:2;2048:3;2045:11;2042:421;;;2089:5;2086:1;2079:16;2133:4;2130:1;2120:18;2203:2;2191:10;2187:19;2184:1;2180:27;2174:4;2170:38;2239:4;2227:10;2224:20;2221:47;;;-1:-1:-1;2262:4:184;2221:47;2317:2;2312:3;2308:12;2305:1;2301:20;2295:4;2291:31;2281:41;;2372:81;2390:2;2383:5;2380:13;2372:81;;;2449:1;2435:16;;2416:1;2405:13;2372:81;;;2376:3;;2042:421;1951:518;;;:::o;2645:1299::-;2765:10;;-1:-1:-1;;;;;2787:30:184;;2784:56;;;2820:18;;:::i;:::-;2849:97;2939:6;2899:38;2931:4;2925:11;2899:38;:::i;:::-;2893:4;2849:97;:::i;:::-;2995:4;3026:2;3015:14;;3043:1;3038:649;;;;3731:1;3748:6;3745:89;;;-1:-1:-1;3800:19:184;;;3794:26;3745:89;-1:-1:-1;;2602:1:184;2598:11;;;2594:24;2590:29;2580:40;2626:1;2622:11;;;2577:57;3847:81;;3008:930;;3038:649;1898:1;1891:14;;;1935:4;1922:18;;-1:-1:-1;;3074:20:184;;;3192:222;3206:7;3203:1;3200:14;3192:222;;;3288:19;;;3282:26;3267:42;;3395:4;3380:20;;;;3348:1;3336:14;;;;3222:12;3192:222;;;3196:3;3442:6;3433:7;3430:19;3427:201;;;3503:19;;;3497:26;-1:-1:-1;;3586:1:184;3582:14;;;3598:3;3578:24;3574:37;3570:42;3555:58;3540:74;;3427:201;-1:-1:-1;;;;3674:1:184;3658:14;;;3654:22;3641:36;;-1:-1:-1;2645:1299:184:o;4443:418::-;4592:2;4581:9;4574:21;4555:4;4624:6;4618:13;4667:6;4662:2;4651:9;4647:18;4640:34;4726:6;4721:2;4713:6;4709:15;4704:2;4693:9;4689:18;4683:50;4782:1;4777:2;4768:6;4757:9;4753:22;4749:31;4742:42;4852:2;4845;4841:7;4836:2;4828:6;4824:15;4820:29;4809:9;4805:45;4801:54;4793:62;;;4443:418;;;;:::o;4866:297::-;4984:12;;5031:4;5020:16;;;5014:23;;4984:12;5049:16;;5046:111;;;-1:-1:-1;;5123:4:184;5119:17;;;;5116:1;5112:25;5108:38;5097:50;;4866:297;-1:-1:-1;4866:297:184:o;:::-;1241:3012:154;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561000f575f5ffd5b506004361061010d575f3560e01c806384b0196e116100a9578063a97f36a81161006e578063a97f36a81461031a578063b2406d9414610341578063bf2ba55214610354578063d11eb2b21461037b578063de7b5d141461038e575f5ffd5b806384b0196e146102aa57806398252dda146102c55780639e9d26bf146102d8578063a32bf597146102eb578063a636c83d146102f3575f5ffd5b806306433b1b14610111578063117395381461014e57806316af8be1146101a257806320d88ca8146101e2578063289b3c0d146102095780635413330714610211578063552b836f146102385780635cb165a01461025b5780635f90af2a14610282575b5f5ffd5b6101387f000000000000000000000000000000000000000000000000000000000000000081565b6040516101459190611345565b60405180910390f35b61019461015c366004611370565b6001600160a01b038084165f908152600260209081526040808320868452825280832093851683526001909301905220549392505050565b604051908152602001610145565b6101b56101b03660046113af565b610396565b60408051825181526020808401516001600160a01b03169082015291810151151590820152606001610145565b6101947fdec0bfc6a67146d790874e4994d7a4662b60c6400491f3d945793c73ea05ebb781565b61013861040d565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b61024b6102463660046113d9565b610493565b6040519015158152602001610145565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b6101386102903660046113f4565b5f908152600360205260409020546001600160a01b031690565b6102b26104b9565b6040516101459796959493929190611439565b61024b6102d33660046113f4565b6104fb565b6101946102e63660046113af565b6107fa565b610194610877565b6101387f000000000000000000000000000000000000000000000000000000000000000081565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b61024b61034f3660046114cf565b6108f6565b6101947f000000000000000000000000000000000000000000000000000000000000000081565b6101946103893660046113f4565b610901565b61013861092c565b60408051606080820183525f80835260208084018290529284018190526001600160a01b03868116825260028452848220868352845290849020845192830185525463ffffffff81168352600160201b810490911692820192909252600160c01b90910460ff161515918101919091525b92915050565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663289b3c0d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561046a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061048e9190611566565b905090565b604080516060810182525f80825260208201819052918101829052610407908390610989565b5f6060805f5f5f60606104ca610d02565b6104d2610d2e565b604080515f80825260208201909252600f60f81b9b939a50919850469750309650945092509050565b5f5f61050561092c565b9050806001600160a01b0381163b61053a57604051637e8c089760e01b81526004016105319190611345565b60405180910390fd5b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561057c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105a09190611581565b90505f6105ac82610901565b90506105d87f000000000000000000000000000000000000000000000000000000000000000087611598565b8111868290916106045760405163206d99c760e11b815260048101929092526024820152604401610531565b5061063190507f000000000000000000000000000000000000000000000000000000000000000087611598565b8111158682909161065e57604051630d8b52bd60e01b815260048101929092526024820152604401610531565b50506001600160a01b0384165f908152600260209081526040808320898452909152902080548790600160c01b900460ff16156106b157604051639182ed2360e01b815260040161053191815260200190565b508054600160201b90046001600160a01b03166106e15760405163471b87dd60e11b815260040160405180910390fd5b8054600160201b90046001600160a01b03165f908152600182016020526040902054807f00000000000000000000000000000000000000000000000000000000000000008082101561074f57604051632ece3a1f60e11b815260048101929092526024820152604401610531565b5050815460ff60c01b1916600160c01b1780835560405189916001600160a01b03600160201b90910416907f524a107cd762fc6fd9e34b29c33d17a2292ae9869be3743c11a155b87664af9c905f90a381546107ba90600160201b90046001600160a01b0316610d5b565b8254600160201b90046001600160a01b0316906107eb57604051639e6e028360e01b81526004016105319190611345565b50600198975050505050505050565b5f6108707fdec0bfc6a67146d790874e4994d7a4662b60c6400491f3d945793c73ea05ebb7848461082961092c565b6040805160208101959095526001600160a01b0393841690850152606084019190915216608082015260a00160405160208183030381529060405280519060200120610e9a565b9392505050565b5f5f61088161092c565b90505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e49190611581565b90506108ef81610901565b9250505090565b5f6108708383610989565b5f6104077f0000000000000000000000000000000000000000000000000000000000000000836115b7565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663971b0e6b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561046a573d5f5f3e3d5ffd5b5f5f61099361092c565b9050806001600160a01b0381163b6109bf57604051637e8c089760e01b81526004016105319190611345565b505f8190505f816001600160a01b031663d8e3784c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a01573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a259190611581565b90505f610a3182610901565b6001600160a01b0385165f908152600260209081526040808320848452909152902080549192509063ffffffff1683118390610a8357604051633ef0fda160e21b815260040161053191815260200190565b50610a8d83610ec6565b815f015f6101000a81548163ffffffff021916908363ffffffff1602179055505f846001600160a01b0316633b10244b6040518163ffffffff1660e01b81526004016020604051808303815f875af1158015610aeb573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b0f9190611566565b9050610b1d885160ff161590565b15610b565733816001600160a01b0381168214610b4f5760405163e65facdb60e01b81526004016105319291906115d6565b5050610b95565b5f610b618a866107fa565b9050610b6e898383610ed0565b33839091610b915760405163e65facdb60e01b81526004016105319291906115d6565b5050505b6001600160a01b0389165f908152600183810160205260408220805491929091610bc0908490611598565b909155505081546001600160a01b038a8116600160201b9092041614801590610c13575081546001600160a01b03600160201b90910481165f90815260018401602052604080822054928c168252902054115b15610c3c578154640100000000600160c01b031916600160201b6001600160a01b038b16021782555b806001600160a01b0316838a6001600160a01b03167f2df1cd192fdb24be652b19858ee33f7fc0aff1a85485e3a44d29d1ef79472f6560405160405180910390a46001600160a01b0389165f9081526001830160205260409020547f000000000000000000000000000000000000000000000000000000000000000090036107eb5760405183906001600160a01b038b16907f7670d106b4e42706ce2c68f6e6cf69db532abb05014051816a275fa4622ee340905f90a350600198975050505050505050565b606061048e7f00000000000000000000000000000000000000000000000000000000000000005f610f28565b606061048e7f00000000000000000000000000000000000000000000000000000000000000006001610f28565b5f5f827f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000604051610dac90611338565b6001600160a01b03938416815291831660208301529091166040820152606001604051809103905ff080158015610de5573d5f5f3e3d5ffd5b5090505f610df161040d565b6001600160a01b03166301267951836040518263ffffffff1660e01b8152600401610e1c9190611345565b6020604051808303815f875af1158015610e38573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e5c9190611581565b9050610e6661092c565b5f9182526003602052604090912080546001600160a01b0319166001600160a01b0390921691909117905550600192915050565b5f610407610ea6610fd1565b8360405161190160f01b8152600281019290925260228201526042902090565b5f610407826110fa565b5f5f610ee983865f01518760200151886040015161112e565b905083816001600160a01b0382811690821614610f1b57604051633672eb9b60e21b81526004016105319291906115d6565b5060019695505050505050565b606060ff8314610f4257610f3b8361115a565b9050610407565b818054610f4e906115f0565b80601f0160208091040260200160405190810160405280929190818152602001828054610f7a906115f0565b8015610fc55780601f10610f9c57610100808354040283529160200191610fc5565b820191905f5260205f20905b815481529060010190602001808311610fa857829003601f168201915b50505050509050610407565b5f306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561102957507f000000000000000000000000000000000000000000000000000000000000000046145b1561105357507f000000000000000000000000000000000000000000000000000000000000000090565b61048e604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b5f63ffffffff82111561112a576040516306dfcc6560e41b81526020600482015260248101839052604401610531565b5090565b5f5f5f5f61113e88888888611197565b92509250925061114e8282611255565b50909695505050505050565b60605f61116683611311565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f80806fa2a8918ca85bafe22016d0b997e4df60600160ff1b038411156111c657505f9150600390508261124b565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015611217573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b03811661124257505f92506001915082905061124b565b92505f91508190505b9450945094915050565b5f82600381111561126857611268611628565b03611271575050565b600182600381111561128557611285611628565b036112a35760405163f645eedf60e01b815260040160405180910390fd5b60028260038111156112b7576112b7611628565b036112d85760405163fce698f760e01b815260048101829052602401610531565b60038260038111156112ec576112ec611628565b0361130d576040516335e2f38360e21b815260048101829052602401610531565b5050565b5f60ff8216601f81111561040757604051632cd44ac360e21b815260040160405180910390fd5b610c448061163d83390190565b6001600160a01b0391909116815260200190565b6001600160a01b038116811461136d575f5ffd5b50565b5f5f5f60608486031215611382575f5ffd5b833561138d81611359565b92506020840135915060408401356113a481611359565b809150509250925092565b5f5f604083850312156113c0575f5ffd5b82356113cb81611359565b946020939093013593505050565b5f602082840312156113e9575f5ffd5b813561087081611359565b5f60208284031215611404575f5ffd5b5035919050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b60ff60f81b8816815260e060208201525f61145760e083018961140b565b8281036040840152611469818961140b565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b818110156114be5783518352602093840193909201916001016114a0565b50909b9a5050505050505050505050565b5f5f82840360808112156114e1575f5ffd5b83356114ec81611359565b92506060601f19820112156114ff575f5ffd5b506040516060810181811067ffffffffffffffff8211171561152f57634e487b7160e01b5f52604160045260245ffd5b604052602084013560ff81168114611545575f5ffd5b81526040848101356020830152606090940135938101939093525092909150565b5f60208284031215611576575f5ffd5b815161087081611359565b5f60208284031215611591575f5ffd5b5051919050565b8082018082111561040757634e487b7160e01b5f52601160045260245ffd5b5f826115d157634e487b7160e01b5f52601260045260245ffd5b500490565b6001600160a01b0392831681529116602082015260400190565b600181811c9082168061160457607f821691505b60208210810361162257634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52602160045260245ffdfe60e060405234801561000f575f5ffd5b50604051610c44380380610c4483398101604081905261002e91610062565b6001600160a01b0392831660805290821660a0521660c0526100ac565b6001600160a01b038116811461005f575f5ffd5b50565b5f5f5f60608486031215610074575f5ffd5b835161007f8161004b565b60208501519093506100908161004b565b60408501519092506100a18161004b565b809150509250925092565b60805160a05160c051610b316101135f395f81816074015261030601525f818160f3015281816103890152818161042e015281816104b10152818161053401526105d401525f81816101170152818161014001528181610167015261069a0152610b315ff3fe608060405234801561000f575f5ffd5b506004361061006b575f3560e01c806306433b1b1461006f578063504d080b146100ac578063675d628a146100c15780637754305c146100d9578063a636c83d146100ee578063ad9c74b514610115578063c262e61d1461013b575b5f5ffd5b6100967f000000000000000000000000000000000000000000000000000000000000000081565b6040516100a3919061071f565b60405180910390f35b6100b4610162565b6040516100a39190610761565b6100c9610302565b60405190151581526020016100a3565b6100e1610696565b6040516100a391906107e4565b6100967f000000000000000000000000000000000000000000000000000000000000000081565b7f0000000000000000000000000000000000000000000000000000000000000000610096565b6100967f000000000000000000000000000000000000000000000000000000000000000081565b60605f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663504d080b6040518163ffffffff1660e01b81526004015f60405180830381865afa1580156101c0573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526101e791908101906108d8565b90505f815160016101f89190610a1a565b6001600160401b0381111561020f5761020f6107fd565b60405190808252806020026020018201604052801561025457816020015b604080518082019091525f81526060602082015281526020019060019003908161022d5790505b5090505f5b82518110156102a15782818151811061027457610274610a33565b602002602001015182828151811061028e5761028e610a33565b6020908102919091010152600101610259565b5060408051808201825230815281516004815260248101909252602082810180516001600160e01b03166333aeb14560e11b1790528101919091528251825183919081106102f1576102f1610a33565b602090810291909101015292915050565b5f5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663971b0e6b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610360573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103849190610a47565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b35186a86040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103e3573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104079190610a47565b9050806001600160a01b0316826001600160a01b03161461042b5760019250505090565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610488573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104ac9190610a62565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316639f6bc70c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561050b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061052f9190610a47565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166362400e4c836040518263ffffffff1660e01b815260040161057e919061071f565b602060405180830381865afa158015610599573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105bd9190610a62565b604051631890039360e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906362400e4c9061060990889060040161071f565b602060405180830381865afa158015610624573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106489190610a62565b6106529190610a1a565b90506003610661846002610a79565b61066b9190610a90565b811161068a576040516324b6d5bf60e21b815260040160405180910390fd5b60019550505050505090565b60607f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637754305c6040518163ffffffff1660e01b81526004015f60405180830381865afa1580156106f3573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261071a9190810190610aaf565b905090565b6001600160a01b0391909116815260200190565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b828110156107d857868503603f19018452815180516001600160a01b031686526020908101516040918701829052906107c290870182610733565b9550506020938401939190910190600101610787565b50929695505050505050565b602081525f6107f66020830184610733565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b604080519081016001600160401b0381118282101715610833576108336107fd565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610861576108616107fd565b604052919050565b6001600160a01b038116811461087d575f5ffd5b50565b5f5f6001600160401b03841115610899576108996107fd565b50601f8301601f19166020016108ae81610839565b9150508281528383830111156108c2575f5ffd5b8282602083015e5f602084830101529392505050565b5f602082840312156108e8575f5ffd5b81516001600160401b038111156108fd575f5ffd5b8201601f8101841361090d575f5ffd5b80516001600160401b03811115610926576109266107fd565b8060051b61093660208201610839565b91825260208184018101929081019087841115610951575f5ffd5b6020850192505b838310156109fb5782516001600160401b03811115610975575f5ffd5b85016040818a03601f1901121561098a575f5ffd5b610992610811565b60208201516109a081610869565b815260408201516001600160401b038111156109ba575f5ffd5b60208184010192505089601f8301126109d1575f5ffd5b6109e08a835160208501610880565b60208201528084525050602082019150602083019250610958565b979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610a2d57610a2d610a06565b92915050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610a57575f5ffd5b81516107f681610869565b5f60208284031215610a72575f5ffd5b5051919050565b8082028115828204841417610a2d57610a2d610a06565b5f82610aaa57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215610abf575f5ffd5b81516001600160401b03811115610ad4575f5ffd5b8201601f81018413610ae4575f5ffd5b610af384825160208401610880565b94935050505056fea26469706673582212206a7c99f3edc50d241e9d868b878af5ca265b6ac69ce42f70440f1bcd42754ebe64736f6c634300081e0033a2646970667358221220b6e98f9afb7d83af4804bad19c947969f0f242de674d0f66a4410cd9895f32de64736f6c634300081e0033","sourceMap":"1241:3012:154:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1308:35;;;;;;;;;;;;:::i;:::-;;;;;;;;9421:208:153;;;;;;:::i;:::-;-1:-1:-1;;;;;9577:17:153;;;9553:7;9577:17;;;:6;:17;;;;;;;;:25;;;;;;;;:47;;;;;:37;;;;:47;;;;9421:208;;;;;;;;;1054:25:184;;;1042:2;1027:18;9421:208:153;908:177:184;9940:407:153;;;;;;:::i;:::-;;:::i;:::-;;;;1696:13:184;;1678:32;;1770:4;1758:17;;;1752:24;-1:-1:-1;;;;;1748:50:184;1726:20;;;1719:80;1857:17;;;1851:24;1844:32;1837:40;1815:20;;;1808:70;1666:2;1651:18;9940:407:153;1462:422:184;4700:108:153;;4742:66;4700:108;;2788:127:154;;;:::i;4967:35:153:-;;;;;6445:169;;;;;;:::i;:::-;;:::i;:::-;;;2714:14:184;;2707:22;2689:41;;2677:2;2662:18;6445:169:153;2549:187:184;4891:36:153;;;;;2485:159:154;;;;;;:::i;:::-;2588:7;2610:29;;;:16;:29;;;;;;-1:-1:-1;;;;;2610:29:154;;2485:159;5144:557:58;;;:::i;:::-;;;;;;;;;;;;;:::i;7392:1727:153:-;;;;;;:::i;:::-;;:::i;10638:201::-;;;;;;:::i;:::-;;:::i;9733:203::-;;;:::i;1347:25:154:-;;;;;5096:43:153;;;;;6891:156;;;;;;:::i;:::-;;:::i;5226:50::-;;;;;10503:131;;;;;;:::i;:::-;;:::i;3133:139:154:-;;;:::i;9940:407:153:-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10102:17:153;;;;;:6;:17;;;;;:25;;;;;;;;;10140:202;;;;;;;10180:30;;;;10140:202;;-1:-1:-1;;;10255:38:153;;;;;10140:202;;;;;;;-1:-1:-1;;;10311:24:153;;;;;10140:202;;;;;;;;;9940:407;;;;;:::o;2788:127:154:-;2864:7;2886:8;-1:-1:-1;;;;;2886:22:154;;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2879:31;;2788:127;:::o;6445:169:153:-;6561:47;;;;;;;;6516:4;6561:47;;;;;;;;;;;;;;;6535:74;;6551:8;;6535:15;:74::i;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;7392:1727:153:-;7477:4;7541:16;7560:13;:11;:13::i;:::-;7541:32;-1:-1:-1;7541:32:153;-1:-1:-1;;;;;7587:20:153;;;7579:82;;;;-1:-1:-1;;;7579:82:153;;;;;;;;:::i;:::-;;;;;;;;;;7668:18;7698:8;7668:39;;7713:16;7732:9;-1:-1:-1;;;;;7732:24:153;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7713:45;;7765:20;7788:25;7801:11;7788:12;:25::i;:::-;7765:48;-1:-1:-1;7850:40:153;7865:25;7850:12;:40;:::i;:::-;7835:12;:55;7929:12;7943;7820:142;;;;;;-1:-1:-1;;;7820:142:153;;;;;7571:25:184;;;;7612:18;;;7605:34;7544:18;;7820:142:153;7397:248:184;7820:142:153;-1:-1:-1;8000:33:153;;-1:-1:-1;8015:18:153;8000:12;:33;:::i;:::-;7984:12;:49;;8066:12;8080;7969:130;;;;;;-1:-1:-1;;;7969:130:153;;;;;7571:25:184;;;;7612:18;;;7605:34;7544:18;;7969:130:153;7397:248:184;7969:130:153;-1:-1:-1;;;;;;;8148:16:153;;8106:39;8148:16;;;:6;:16;;;;;;;;:30;;;;;;;;8193:14;;8148:30;;-1:-1:-1;;;8193:14:153;;;;8192:15;8184:82;;;;-1:-1:-1;;;8184:82:153;;;;;;1054:25:184;;1042:2;1027:18;;908:177;8184:82:153;-1:-1:-1;8555:28:153;;-1:-1:-1;;;8555:28:153;;-1:-1:-1;;;;;8555:28:153;8547:110;;;;-1:-1:-1;;;8547:110:153;;;;;;;;;;;;8703:28;;-1:-1:-1;;;8703:28:153;;-1:-1:-1;;;;;8703:28:153;8663:19;8685:47;;;:17;;;:47;;;;;;;8761:11;8746:26;;;;8738:101;;;;-1:-1:-1;;;8738:101:153;;;;;7571:25:184;;;;7612:18;;;7605:34;7544:18;;8738:101:153;7397:248:184;8738:101:153;-1:-1:-1;;8846:21:153;;-1:-1:-1;;;;8846:21:153;-1:-1:-1;;;8846:21:153;;;;8879:60;;8926:12;;-1:-1:-1;;;;;;;;8896:28:153;;;;;8879:60;;8846:14;;8879:60;8980:28;;8961:48;;-1:-1:-1;;;8980:28:153;;-1:-1:-1;;;;;8980:28:153;8961:18;:48::i;:::-;9062:28;;-1:-1:-1;;;9062:28:153;;-1:-1:-1;;;;;9062:28:153;;8946:151;;;;-1:-1:-1;;;8946:151:153;;;;;;;;:::i;:::-;-1:-1:-1;9110:4:153;;7392:1727;-1:-1:-1;;;;;;;;7392:1727:153:o;10638:201::-;10724:7;10746:88;4742:66;10801:8;10811:5;10818:13;:11;:13::i;:::-;10773:59;;;;;;8152:25:184;;;;-1:-1:-1;;;;;8213:32:184;;;8193:18;;;8186:60;8262:18;;;8255:34;;;;8325:32;8305:18;;;8298:60;8124:19;;10773:59:153;;;;;;;;;;;;10763:70;;;;;;10746:16;:88::i;:::-;10739:95;10638:201;-1:-1:-1;;;10638:201:153:o;9733:203::-;9783:7;9798:18;9828:13;:11;:13::i;:::-;9798:44;;9848:16;9867:9;-1:-1:-1;;;;;9867:24:153;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9848:45;;9906:25;9919:11;9906:12;:25::i;:::-;9899:32;;;;9733:203;:::o;6891:156::-;6992:4;7011:31;7027:8;7037:4;7011:15;:31::i;10503:131::-;10576:7;10598:31;10619:10;10610:5;10598:31;:::i;3133:139:154:-;3207:7;3237:8;-1:-1:-1;;;;;3237:27:154;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11031:1654:153;11116:4;11128:16;11147:13;:11;:13::i;:::-;11128:32;-1:-1:-1;11128:32:153;-1:-1:-1;;;;;11174:20:153;;;11166:82;;;;-1:-1:-1;;;11166:82:153;;;;;;;;:::i;:::-;;11255:18;11285:8;11255:39;;11300:16;11319:9;-1:-1:-1;;;;;11319:24:153;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11300:45;;11352:19;11374:25;11387:11;11374:12;:25::i;:::-;-1:-1:-1;;;;;11448:16:153;;11406:39;11448:16;;;:6;:16;;;;;;;;:29;;;;;;;;11624:20;;11448:29;;-1:-1:-1;11448:29:153;11624:20;;-1:-1:-1;;11703:11:153;11602:114;;;;;-1:-1:-1;;;11602:114:153;;;;;;1054:25:184;;1042:2;1027:18;;908:177;11602:114:153;;11745:22;:11;:20;:22::i;:::-;11722:5;:20;;;:45;;;;;;;;;;;;;;;;;;11774:16;11793:9;-1:-1:-1;;;;;11793:28:153;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11774:49;;11834:14;:4;958:12:181;:17;;;;870:110;11834:14:153;11830:417;;;11866:10;11880:8;-1:-1:-1;;;;;11866:22:153;;;;11858:95;;;;-1:-1:-1;;;11858:95:153;;;;;;;;;:::i;:::-;;;11830:417;;;11974:14;11991:47;12016:8;12026:11;11991:24;:47::i;:::-;11974:64;-1:-1:-1;12146:29:153;:4;12158:8;11974:64;12146:11;:29::i;:::-;12218:10;12230:8;12138:102;;;;;;-1:-1:-1;;;12138:102:153;;;;;;;;;:::i;:::-;;;11966:281;11830:417;-1:-1:-1;;;;;12253:27:153;;;;;;12284:1;12253:17;;;:27;;;;;:32;;12284:1;;12253:27;;:32;;12284:1;;12253:32;:::i;:::-;;;;-1:-1:-1;;12303:28:153;;-1:-1:-1;;;;;12303:40:153;;;-1:-1:-1;;;12303:28:153;;;;:40;;;;:129;;-1:-1:-1;12403:28:153;;-1:-1:-1;;;;;;;;12403:28:153;;;;;12385:47;;;;:17;;;:47;;;;;;;12355:27;;;;;;;;:77;12303:129;12292:201;;;12447:39;;-1:-1:-1;;;;;;12447:39:153;-1:-1:-1;;;;;;;;12447:39:153;;;;;;12292:201;12538:8;-1:-1:-1;;;;;12504:43:153;12525:11;12515:8;-1:-1:-1;;;;;12504:43:153;;;;;;;;;;;-1:-1:-1;;;;;12558:27:153;;;;;;:17;;;:27;;;;;;12589:11;12558:42;;12554:109;;12615:41;;12644:11;;-1:-1:-1;;;;;12615:41:153;;;;;;;;-1:-1:-1;12676:4:153;;11031:1654;-1:-1:-1;;;;;;;;11031:1654:153: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;3914:337:154:-;4000:4;4012:26;4056:8;4066:3;4071:8;4041:39;;;;;:::i;:::-;-1:-1:-1;;;;;9654:32:184;;;9636:51;;9723:32;;;9718:2;9703:18;;9696:60;9792:32;;;9787:2;9772:18;;9765:60;9624:2;9609:18;4041:39:154;;;;;;;;;;;;;;;;;;;;;;;4012:68;;4086:18;4119:15;:13;:15::i;:::-;-1:-1:-1;;;;;4107:36:154;;4161:15;4107:72;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4086:93;;4216:13;:11;:13::i;:::-;4185:28;;;;:16;:28;;;;;;:44;;-1:-1:-1;;;;;;4185:44:154;-1:-1:-1;;;;;4185:44:154;;;;;;;;;-1:-1:-1;;;4185:44:154;-1:-1:-1;;3914:337:154:o;4917:176:58:-;4994:7;5020:66;5053:20;:18;:20::i;:::-;5075:10;3501:4:59;3495:11;-1:-1:-1;;;3519:23:59;;3571:4;3562:14;;3555:39;;;;3623:4;3614:14;;3607:34;3679:4;3664:20;;;3326:374;518:145:180;571:14;620:37;650:5;620:17;:37::i;559:307:181:-;661:4;673:17;693:64;707:7;716:10;:12;;;730:10;:12;;;744:10;:12;;;693:13;:64::i;:::-;673:84;-1:-1:-1;771:7:181;673:84;-1:-1:-1;;;;;771:20:181;;;;;;;763:81;;;;-1:-1:-1;;;763:81:181;;;;;;;;;:::i;:::-;-1:-1:-1;857:4:181;;559:307;-1:-1:-1;;;;;;559:307:181:o;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;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3845:262:58;3898:7;3929:4;-1:-1:-1;;;;;3938:11:58;3921:28;;:63;;;;;3970:14;3953:13;:31;3921:63;3917:184;;;-1:-1:-1;4007:22:58;;3845:262::o;3917:184::-;4067:23;4204:80;;;2079:95;4204:80;;;10986:25:184;4226:11:58;11027:18:184;;;11020:34;;;;4239:14:58;11070:18:184;;;11063:34;4255:13:58;11113:18:184;;;11106:34;4278:4:58;11156:19:184;;;11149:61;4168:7:58;;10958:19:184;;4204:80:58;;;;;;;;;;;;4194:91;;;;;;4187:98;;4113:179;;15296:213:62;15352:6;15382:16;15374:24;;15370:103;;;15421:41;;-1:-1:-1;;;15421:41:62;;15452:2;15421:41;;;10637:36:184;10689:18;;;10682:34;;;10610:18;;15421:41:62;10456:266:184;15370:103:62;-1:-1:-1;15496:5:62;15296:213::o;6887:260:57:-;6972:7;6992:17;7011:18;7031:16;7051:25;7062:4;7068:1;7071;7074;7051:10;:25::i;:::-;6991:85;;;;;;7086:28;7098:5;7105:8;7086:11;:28::i;:::-;-1:-1:-1;7131:9:57;;6887:260;-1:-1:-1;;;;;;6887:260:57:o;2078:378:52:-;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;5203:1551:57:-;5329:17;;;-1:-1:-1;;;;;6270:79:57;;6266:164;;;-1:-1:-1;6381:1:57;;-1:-1:-1;6385:30:57;;-1:-1:-1;6417:1:57;6365:54;;6266:164;6541:24;;;6524:14;6541:24;;;;;;;;;11448:25:184;;;11521:4;11509:17;;11489:18;;;11482:45;;;;11543:18;;;11536:34;;;11586:18;;;11579:34;;;6541:24:57;;11420:19:184;;6541:24:57;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6541:24:57;;-1:-1:-1;;6541:24:57;;;-1:-1:-1;;;;;;;6579:20:57;;6575:113;;-1:-1:-1;6631:1:57;;-1:-1:-1;6635:29:57;;-1:-1:-1;6631:1:57;;-1:-1:-1;6615:62:57;;6575:113;6706:6;-1:-1:-1;6714:20:57;;-1:-1:-1;6714:20:57;;-1:-1:-1;5203:1551:57;;;;;;;;;:::o;7280:532::-;7375:20;7366:5;:29;;;;;;;;:::i;:::-;;7362:444;;7280:532;;:::o;7362:444::-;7471:29;7462:5;:38;;;;;;;;:::i;:::-;;7458:348;;7523:23;;-1:-1:-1;;;7523:23:57;;;;;;;;;;;7458:348;7576:35;7567:5;:44;;;;;;;;:::i;:::-;;7563:243;;7634:46;;-1:-1:-1;;;7634:46:57;;;;;1054:25:184;;;1027:18;;7634:46:57;908:177:184;7563:243:57;7710:30;7701:5;:39;;;;;;;;:::i;:::-;;7697:109;;7763:32;;-1:-1:-1;;;7763:32:57;;;;;1054:25:184;;;1027:18;;7763:32:57;908:177:184;7697:109:57;7280:532;;:::o;2528:245:52:-;2589:7;2661:4;2625:40;;2688:2;2679:11;;2675:69;;;2713:20;;-1:-1:-1;;;2713:20:52;;;;;;;;;;;-1:-1:-1;;;;;;;;:::o;14:222:184:-;-1:-1:-1;;;;;197:32:184;;;;179:51;;167:2;152:18;;14:222::o;241:131::-;-1:-1:-1;;;;;316:31:184;;306:42;;296:70;;362:1;359;352:12;296:70;241:131;:::o;377:526::-;472:6;480;488;541:2;529:9;520:7;516:23;512:32;509:52;;;557:1;554;547:12;509:52;596:9;583:23;615:31;640:5;615:31;:::i;:::-;665:5;-1:-1:-1;743:2:184;728:18;;715:32;;-1:-1:-1;825:2:184;810:18;;797:32;838:33;797:32;838:33;:::i;:::-;890:7;880:17;;;377:526;;;;;:::o;1090:367::-;1158:6;1166;1219:2;1207:9;1198:7;1194:23;1190:32;1187:52;;;1235:1;1232;1225:12;1187:52;1274:9;1261:23;1293:31;1318:5;1293:31;:::i;:::-;1343:5;1421:2;1406:18;;;;1393:32;;-1:-1:-1;;;1090:367:184:o;2279:265::-;2356:6;2409:2;2397:9;2388:7;2384:23;2380:32;2377:52;;;2425:1;2422;2415:12;2377:52;2464:9;2451:23;2483:31;2508:5;2483:31;:::i;2741:226::-;2800:6;2853:2;2841:9;2832:7;2828:23;2824:32;2821:52;;;2869:1;2866;2859:12;2821:52;-1:-1:-1;2914:23:184;;2741:226;-1:-1:-1;2741:226:184:o;2972:289::-;3014:3;3052:5;3046:12;3079:6;3074:3;3067:19;3135:6;3128:4;3121:5;3117:16;3110:4;3105:3;3101:14;3095:47;3187:1;3180:4;3171:6;3166:3;3162:16;3158:27;3151:38;3250:4;3243:2;3239:7;3234:2;3226:6;3222:15;3218:29;3213:3;3209:39;3205:50;3198:57;;;2972:289;;;;:::o;3266:1238::-;3672:3;3667;3663:13;3655:6;3651:26;3640:9;3633:45;3714:3;3709:2;3698:9;3694:18;3687:31;3614:4;3741:46;3782:3;3771:9;3767:19;3759:6;3741:46;:::i;:::-;3835:9;3827:6;3823:22;3818:2;3807:9;3803:18;3796:50;3869:33;3895:6;3887;3869:33;:::i;:::-;3933:2;3918:18;;3911:34;;;-1:-1:-1;;;;;3982:32:184;;3976:3;3961:19;;3954:61;4002:3;4031:19;;4024:35;;;4096:22;;;4090:3;4075:19;;4068:51;4168:13;;4190:22;;;4240:2;4266:15;;;;-1:-1:-1;4228:15:184;;;;-1:-1:-1;4309:169:184;4323:6;4320:1;4317:13;4309:169;;;4384:13;;4372:26;;4427:2;4453:15;;;;4418:12;;;;4345:1;4338:9;4309:169;;;-1:-1:-1;4495:3:184;;3266:1238;-1:-1:-1;;;;;;;;;;;3266:1238:184:o;5280:1109::-;5395:6;5403;5447:9;5438:7;5434:23;5477:3;5473:2;5469:12;5466:32;;;5494:1;5491;5484:12;5466:32;5533:9;5520:23;5552:31;5577:5;5552:31;:::i;:::-;5602:5;-1:-1:-1;5641:4:184;-1:-1:-1;;5623:16:184;;5619:27;5616:47;;;5659:1;5656;5649:12;5616:47;;5692:2;5686:9;5734:4;5726:6;5722:17;5805:6;5793:10;5790:22;5769:18;5757:10;5754:34;5751:62;5748:185;;;5855:10;5850:3;5846:20;5843:1;5836:31;5890:4;5887:1;5880:15;5918:4;5915:1;5908:15;5748:185;5949:2;5942:22;6016:2;6001:18;;5988:32;6064:4;6051:18;;6039:31;;6029:59;;6084:1;6081;6074:12;6029:59;6097:23;;6193:2;6178:18;;;6165:32;6225:2;6213:15;;6206:32;6311:4;6296:20;;;6283:34;6333:15;;;6326:32;;;;-1:-1:-1;5280:1109:184;6104:6;;-1:-1:-1;5280:1109:184:o;6652:251::-;6722:6;6775:2;6763:9;6754:7;6750:23;6746:32;6743:52;;;6791:1;6788;6781:12;6743:52;6823:9;6817:16;6842:31;6867:5;6842:31;:::i;6908:257::-;7005:6;7058:2;7046:9;7037:7;7033:23;7029:32;7026:52;;;7074:1;7071;7064:12;7026:52;-1:-1:-1;7119:16:184;;6908:257;-1:-1:-1;6908:257:184:o;7170:222::-;7235:9;;;7256:10;;;7253:133;;;7308:10;7303:3;7299:20;7296:1;7289:31;7343:4;7340:1;7333:15;7371:4;7368:1;7361:15;8369:217;8409:1;8435;8425:132;;8479:10;8474:3;8470:20;8467:1;8460:31;8514:4;8511:1;8504:15;8542:4;8539:1;8532:15;8425:132;-1:-1:-1;8571:9:184;;8369:217::o;9078:300::-;-1:-1:-1;;;;;9270:32:184;;;9252:51;;9339:32;;9334:2;9319:18;;9312:60;9240:2;9225:18;;9078:300::o;10071:380::-;10150:1;10146:12;;;;10193;;;10214:61;;10268:4;10260:6;10256:17;10246:27;;10214:61;10321:2;10313:6;10310:14;10290:18;10287:38;10284:161;;10367:10;10362:3;10358:20;10355:1;10348:31;10402:4;10399:1;10392:15;10430:4;10427:1;10420:15;10284:161;;10071:380;;;:::o;11624:127::-;11685:10;11680:3;11676:20;11673:1;11666:31;11716:4;11713:1;11706:15;11740:4;11737:1;11730:15","linkReferences":{},"immutableReferences":{"100456":[{"start":608,"length":32},{"start":1798,"length":32},{"start":3225,"length":32}],"100458":[{"start":534,"length":32},{"start":2311,"length":32}],"100460":[{"start":799,"length":32},{"start":1548,"length":32}],"100462":[{"start":857,"length":32},{"start":1459,"length":32}],"101081":[{"start":278,"length":32},{"start":1040,"length":32},{"start":2351,"length":32},{"start":3457,"length":32}],"101084":[{"start":760,"length":32},{"start":3424,"length":32}],"53354":[{"start":4145,"length":32}],"53356":[{"start":4103,"length":32}],"53358":[{"start":4061,"length":32}],"53360":[{"start":4226,"length":32}],"53362":[{"start":4266,"length":32}],"53365":[{"start":3337,"length":32}],"53368":[{"start":3381,"length":32}]}},"methodIdentifiers":{"EXECUTION_DELAY_IN_ROUNDS()":"bf2ba552","GSE()":"a636c83d","LIFETIME_IN_ROUNDS()":"a97f36a8","QUORUM_SIZE()":"5cb165a0","REGISTRY()":"06433b1b","ROUND_SIZE()":"54133307","SIGNAL_TYPEHASH()":"20d88ca8","computeRound(uint256)":"d11eb2b2","eip712Domain()":"84b0196e","getCurrentRound()":"a32bf597","getGovernance()":"289b3c0d","getInstance()":"de7b5d14","getProposalProposer(uint256)":"5f90af2a","getRoundData(address,uint256)":"16af8be1","getSignalSignatureDigest(address,uint256)":"9e9d26bf","signal(address)":"552b836f","signalCount(address,uint256,address)":"11739538","signalWithSig(address,(uint8,bytes32,bytes32))":"b2406d94","submitRoundWinner(uint256)":"98252dda"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"_registry\",\"type\":\"address\"},{\"internalType\":\"contract IGSE\",\"name\":\"_gse\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_quorumSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_roundSize\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ECDSAInvalidSignature\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"ECDSAInvalidSignatureLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"ECDSAInvalidSignatureS\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"contract IPayload\",\"name\":\"payload\",\"type\":\"address\"}],\"name\":\"EmpireBase__FailedToSubmitRoundWinner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"instance\",\"type\":\"address\"}],\"name\":\"EmpireBase__InstanceHaveNoCode\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"signalsCast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"signalsNeeded\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__InsufficientSignals\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"lifetimeInRounds\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"executionDelayInRounds\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__InvalidLifetimeAndExecutionDelay\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"quorumSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"roundSize\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__InvalidQuorumAndRoundSize\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"proposer\",\"type\":\"address\"}],\"name\":\"EmpireBase__OnlyProposerCanSignal\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"roundNumber\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__PayloadAlreadySubmitted\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"EmpireBase__PayloadCannotBeAddressZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"quorumSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"roundSize\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__QuorumCannotBeLargerThanRoundSize\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"roundNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"currentRoundNumber\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__RoundTooNew\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"roundNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"currentRoundNumber\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__RoundTooOld\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"Slot\",\"name\":\"slot\",\"type\":\"uint256\"}],\"name\":\"EmpireBase__SignalAlreadyCastForSlot\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidShortString\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"bits\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"SafeCastOverflowedUintDowncast\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"SignatureLib__InvalidSignature\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"str\",\"type\":\"string\"}],\"name\":\"StringTooLong\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"EIP712DomainChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IPayload\",\"name\":\"payload\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"round\",\"type\":\"uint256\"}],\"name\":\"PayloadSubmittable\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IPayload\",\"name\":\"payload\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"round\",\"type\":\"uint256\"}],\"name\":\"PayloadSubmitted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IPayload\",\"name\":\"payload\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"round\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"signaler\",\"type\":\"address\"}],\"name\":\"SignalCast\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"EXECUTION_DELAY_IN_ROUNDS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"GSE\",\"outputs\":[{\"internalType\":\"contract IGSE\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"LIFETIME_IN_ROUNDS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"QUORUM_SIZE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"REGISTRY\",\"outputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ROUND_SIZE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SIGNAL_TYPEHASH\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Slot\",\"name\":\"_slot\",\"type\":\"uint256\"}],\"name\":\"computeRound\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"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\":\"getCurrentRound\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGovernance\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getInstance\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposalProposer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_instance\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_round\",\"type\":\"uint256\"}],\"name\":\"getRoundData\",\"outputs\":[{\"components\":[{\"internalType\":\"Slot\",\"name\":\"lastSignalSlot\",\"type\":\"uint256\"},{\"internalType\":\"contract IPayload\",\"name\":\"payloadWithMostSignals\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"executed\",\"type\":\"bool\"}],\"internalType\":\"struct RoundAccounting\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IPayload\",\"name\":\"_payload\",\"type\":\"address\"},{\"internalType\":\"Slot\",\"name\":\"_slot\",\"type\":\"uint256\"}],\"name\":\"getSignalSignatureDigest\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IPayload\",\"name\":\"_payload\",\"type\":\"address\"}],\"name\":\"signal\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_instance\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_round\",\"type\":\"uint256\"},{\"internalType\":\"contract IPayload\",\"name\":\"_payload\",\"type\":\"address\"}],\"name\":\"signalCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IPayload\",\"name\":\"_payload\",\"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\":\"_sig\",\"type\":\"tuple\"}],\"name\":\"signalWithSig\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_roundNumber\",\"type\":\"uint256\"}],\"name\":\"submitRoundWinner\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"ECDSAInvalidSignature()\":[{\"details\":\"The signature derives the `address(0)`.\"}],\"ECDSAInvalidSignatureLength(uint256)\":[{\"details\":\"The signature has an invalid length.\"}],\"ECDSAInvalidSignatureS(bytes32)\":[{\"details\":\"The signature has an S value that is in the upper half order.\"}],\"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\":{\"computeRound(uint256)\":{\"params\":{\"_slot\":\"- The slot to compute round for\"},\"returns\":{\"_0\":\"The round number\"}},\"constructor\":{\"details\":\"The _executionDelayInRounds are set to 0, as there already is a delay in the governance contract. If this was not the case, the delay could be applied here.\",\"params\":{\"_gse\":\"The GSE contract address.\",\"_quorumSize\":\"The number of signals needed in a round for a payload to pass.\",\"_registry\":\"The registry contract address.\",\"_roundSize\":\"The number of signals that can be cast in a round.\"}},\"eip712Domain()\":{\"details\":\"See {IERC-5267}.\"},\"getCurrentRound()\":{\"returns\":{\"_0\":\"The round number\"}},\"getGovernance()\":{\"details\":\"Returns the address of the Governance contract, i.e. the contract at which we will `propose` a winning proposal.\"},\"getInstance()\":{\"details\":\"A hook used by the EmpireBase to determine who is the current checkpoint builder (checkpoint \\\"proposer\\\"), and thus may signal. This contract only respects the canonical rollup.\"},\"signal(address)\":{\"details\":\"this only works if msg.sender is the current signaler\",\"params\":{\"_payload\":\"- The address of the IPayload to signal support for\"},\"returns\":{\"_0\":\"True if executed successfully, false otherwise\"}},\"signalCount(address,uint256,address)\":{\"params\":{\"_instance\":\"- The address of the instance\",\"_payload\":\"- The payload to lookup\",\"_round\":\"- The round to lookup\"},\"returns\":{\"_0\":\"The number of signals\"}},\"signalWithSig(address,(uint8,bytes32,bytes32))\":{\"params\":{\"_payload\":\"- The payload to signal support for\",\"_sig\":\"- A signature from the signaler\"},\"returns\":{\"_0\":\"True if executed successfully, false otherwise\"}},\"submitRoundWinner(uint256)\":{\"details\":\"calls `_handleRoundWinner` on the implementing contract with the winning payload, if applicable.\",\"params\":{\"_roundNumber\":\"- The round number to execute\"},\"returns\":{\"_0\":\"True if executed successfully, false otherwise\"}}},\"stateVariables\":{\"proposalProposer\":{\"details\":\"Mapping of proposal ID to the proposer address. This allows instances to see if they were the proposer of a proposal after the payload is `propose`ed to Governance. Instances that *did* propose a proposal are willing to vote on it in Governance. See `StakingLib.vote` for more details.\"}},\"title\":\"GovernanceProposer An implementation of EmpireBase, used to propose payloads to governance from sequencers on the canonical rollup. Note: any payload which passes through this contract will have a call to GSEPayload.amIValid appended to the list of actions before it is proposed to Governance. This will cause the proposal to revert if >2/3 of all stake in the GSE are not staked on the latest rollup after the *original* payload is executed by Governance. Unless the latest and canonical rollup diverge, as that indicates a misconfiguration issue (see GSEPayload for more details).\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"computeRound(uint256)\":{\"notice\":\"Computes the round at the given slot\"},\"constructor\":{\"notice\":\"Constructor for the GovernanceProposer contract.\"},\"getCurrentRound()\":{\"notice\":\"Computes the round at the current slot\"},\"signal(address)\":{\"notice\":\"Signal support for a payload\"},\"signalCount(address,uint256,address)\":{\"notice\":\"Fetch the signal count for a specific payload in a specific round on a specific instance\"},\"signalWithSig(address,(uint8,bytes32,bytes32))\":{\"notice\":\"Signal support for a payload with a signature from the current signaler\"},\"submitRoundWinner(uint256)\":{\"notice\":\"Submit the round winner to the implementation's `_handleRoundWinner` function\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/governance/proposer/GovernanceProposer.sol\":\"GovernanceProposer\"},\"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/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/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/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/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/Checkpoints.sol\":{\"keccak256\":\"0x66364cd3247ea71cdb58f080f5d5ed6732433a8001413139661841535494692f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f87914c6645b58eaf75f00a156037a7da91129f3a56aec44aebfc715b19ea44\",\"dweb:/ipfs/QmNX7NLSMXyWuogvf8wfCwjUGwLhLBZrGktWPSdoHtERGp\"]},\"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/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 IRegistry","name":"_registry","type":"address"},{"internalType":"contract IGSE","name":"_gse","type":"address"},{"internalType":"uint256","name":"_quorumSize","type":"uint256"},{"internalType":"uint256","name":"_roundSize","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"error","name":"ECDSAInvalidSignature"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"ECDSAInvalidSignatureLength"},{"inputs":[{"internalType":"bytes32","name":"s","type":"bytes32"}],"type":"error","name":"ECDSAInvalidSignatureS"},{"inputs":[{"internalType":"contract IPayload","name":"payload","type":"address"}],"type":"error","name":"EmpireBase__FailedToSubmitRoundWinner"},{"inputs":[{"internalType":"address","name":"instance","type":"address"}],"type":"error","name":"EmpireBase__InstanceHaveNoCode"},{"inputs":[{"internalType":"uint256","name":"signalsCast","type":"uint256"},{"internalType":"uint256","name":"signalsNeeded","type":"uint256"}],"type":"error","name":"EmpireBase__InsufficientSignals"},{"inputs":[{"internalType":"uint256","name":"lifetimeInRounds","type":"uint256"},{"internalType":"uint256","name":"executionDelayInRounds","type":"uint256"}],"type":"error","name":"EmpireBase__InvalidLifetimeAndExecutionDelay"},{"inputs":[{"internalType":"uint256","name":"quorumSize","type":"uint256"},{"internalType":"uint256","name":"roundSize","type":"uint256"}],"type":"error","name":"EmpireBase__InvalidQuorumAndRoundSize"},{"inputs":[{"internalType":"address","name":"caller","type":"address"},{"internalType":"address","name":"proposer","type":"address"}],"type":"error","name":"EmpireBase__OnlyProposerCanSignal"},{"inputs":[{"internalType":"uint256","name":"roundNumber","type":"uint256"}],"type":"error","name":"EmpireBase__PayloadAlreadySubmitted"},{"inputs":[],"type":"error","name":"EmpireBase__PayloadCannotBeAddressZero"},{"inputs":[{"internalType":"uint256","name":"quorumSize","type":"uint256"},{"internalType":"uint256","name":"roundSize","type":"uint256"}],"type":"error","name":"EmpireBase__QuorumCannotBeLargerThanRoundSize"},{"inputs":[{"internalType":"uint256","name":"roundNumber","type":"uint256"},{"internalType":"uint256","name":"currentRoundNumber","type":"uint256"}],"type":"error","name":"EmpireBase__RoundTooNew"},{"inputs":[{"internalType":"uint256","name":"roundNumber","type":"uint256"},{"internalType":"uint256","name":"currentRoundNumber","type":"uint256"}],"type":"error","name":"EmpireBase__RoundTooOld"},{"inputs":[{"internalType":"Slot","name":"slot","type":"uint256"}],"type":"error","name":"EmpireBase__SignalAlreadyCastForSlot"},{"inputs":[],"type":"error","name":"InvalidShortString"},{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"type":"error","name":"SafeCastOverflowedUintDowncast"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"type":"error","name":"SignatureLib__InvalidSignature"},{"inputs":[{"internalType":"string","name":"str","type":"string"}],"type":"error","name":"StringTooLong"},{"inputs":[],"type":"event","name":"EIP712DomainChanged","anonymous":false},{"inputs":[{"internalType":"contract IPayload","name":"payload","type":"address","indexed":true},{"internalType":"uint256","name":"round","type":"uint256","indexed":true}],"type":"event","name":"PayloadSubmittable","anonymous":false},{"inputs":[{"internalType":"contract IPayload","name":"payload","type":"address","indexed":true},{"internalType":"uint256","name":"round","type":"uint256","indexed":true}],"type":"event","name":"PayloadSubmitted","anonymous":false},{"inputs":[{"internalType":"contract IPayload","name":"payload","type":"address","indexed":true},{"internalType":"uint256","name":"round","type":"uint256","indexed":true},{"internalType":"address","name":"signaler","type":"address","indexed":true}],"type":"event","name":"SignalCast","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"EXECUTION_DELAY_IN_ROUNDS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"GSE","outputs":[{"internalType":"contract IGSE","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"LIFETIME_IN_ROUNDS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"QUORUM_SIZE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"REGISTRY","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"ROUND_SIZE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SIGNAL_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"Slot","name":"_slot","type":"uint256"}],"stateMutability":"view","type":"function","name":"computeRound","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"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":"view","type":"function","name":"getCurrentRound","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getGovernance","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getInstance","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposalProposer","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_instance","type":"address"},{"internalType":"uint256","name":"_round","type":"uint256"}],"stateMutability":"view","type":"function","name":"getRoundData","outputs":[{"internalType":"struct RoundAccounting","name":"","type":"tuple","components":[{"internalType":"Slot","name":"lastSignalSlot","type":"uint256"},{"internalType":"contract IPayload","name":"payloadWithMostSignals","type":"address"},{"internalType":"bool","name":"executed","type":"bool"}]}]},{"inputs":[{"internalType":"contract IPayload","name":"_payload","type":"address"},{"internalType":"Slot","name":"_slot","type":"uint256"}],"stateMutability":"view","type":"function","name":"getSignalSignatureDigest","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"contract IPayload","name":"_payload","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"signal","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_instance","type":"address"},{"internalType":"uint256","name":"_round","type":"uint256"},{"internalType":"contract IPayload","name":"_payload","type":"address"}],"stateMutability":"view","type":"function","name":"signalCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"contract IPayload","name":"_payload","type":"address"},{"internalType":"struct Signature","name":"_sig","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":"signalWithSig","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_roundNumber","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"submitRoundWinner","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"computeRound(uint256)":{"params":{"_slot":"- The slot to compute round for"},"returns":{"_0":"The round number"}},"constructor":{"details":"The _executionDelayInRounds are set to 0, as there already is a delay in the governance contract. If this was not the case, the delay could be applied here.","params":{"_gse":"The GSE contract address.","_quorumSize":"The number of signals needed in a round for a payload to pass.","_registry":"The registry contract address.","_roundSize":"The number of signals that can be cast in a round."}},"eip712Domain()":{"details":"See {IERC-5267}."},"getCurrentRound()":{"returns":{"_0":"The round number"}},"getGovernance()":{"details":"Returns the address of the Governance contract, i.e. the contract at which we will `propose` a winning proposal."},"getInstance()":{"details":"A hook used by the EmpireBase to determine who is the current checkpoint builder (checkpoint \"proposer\"), and thus may signal. This contract only respects the canonical rollup."},"signal(address)":{"details":"this only works if msg.sender is the current signaler","params":{"_payload":"- The address of the IPayload to signal support for"},"returns":{"_0":"True if executed successfully, false otherwise"}},"signalCount(address,uint256,address)":{"params":{"_instance":"- The address of the instance","_payload":"- The payload to lookup","_round":"- The round to lookup"},"returns":{"_0":"The number of signals"}},"signalWithSig(address,(uint8,bytes32,bytes32))":{"params":{"_payload":"- The payload to signal support for","_sig":"- A signature from the signaler"},"returns":{"_0":"True if executed successfully, false otherwise"}},"submitRoundWinner(uint256)":{"details":"calls `_handleRoundWinner` on the implementing contract with the winning payload, if applicable.","params":{"_roundNumber":"- The round number to execute"},"returns":{"_0":"True if executed successfully, false otherwise"}}},"version":1},"userdoc":{"kind":"user","methods":{"computeRound(uint256)":{"notice":"Computes the round at the given slot"},"constructor":{"notice":"Constructor for the GovernanceProposer contract."},"getCurrentRound()":{"notice":"Computes the round at the current slot"},"signal(address)":{"notice":"Signal support for a payload"},"signalCount(address,uint256,address)":{"notice":"Fetch the signal count for a specific payload in a specific round on a specific instance"},"signalWithSig(address,(uint8,bytes32,bytes32))":{"notice":"Signal support for a payload with a signature from the current signaler"},"submitRoundWinner(uint256)":{"notice":"Submit the round winner to the implementation's `_handleRoundWinner` function"}},"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/governance/proposer/GovernanceProposer.sol":"GovernanceProposer"},"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/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/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/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/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/Checkpoints.sol":{"keccak256":"0x66364cd3247ea71cdb58f080f5d5ed6732433a8001413139661841535494692f","urls":["bzz-raw://0f87914c6645b58eaf75f00a156037a7da91129f3a56aec44aebfc715b19ea44","dweb:/ipfs/QmNX7NLSMXyWuogvf8wfCwjUGwLhLBZrGktWPSdoHtERGp"],"license":"MIT"},"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/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":154}