@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.
- package/dest/AttesterExitExtLibAbi.d.ts +12 -48
- package/dest/AttesterExitExtLibAbi.d.ts.map +1 -1
- package/dest/AttesterExitExtLibAbi.js +16 -64
- package/dest/AttesterExitExtLibAbi.js.map +1 -1
- package/dest/AttesterExitExtLibBytecode.d.ts +1 -1
- package/dest/AttesterExitExtLibBytecode.js +1 -1
- package/dest/CoinIssuerAbi.d.ts +12 -48
- package/dest/CoinIssuerAbi.d.ts.map +1 -1
- package/dest/CoinIssuerAbi.js +16 -64
- package/dest/CoinIssuerAbi.js.map +1 -1
- package/dest/DateGatedRelayerAbi.d.ts +12 -48
- package/dest/DateGatedRelayerAbi.d.ts.map +1 -1
- package/dest/DateGatedRelayerAbi.js +16 -64
- package/dest/DateGatedRelayerAbi.js.map +1 -1
- package/dest/EmpireBaseAbi.d.ts +12 -48
- package/dest/EmpireBaseAbi.d.ts.map +1 -1
- package/dest/EmpireBaseAbi.js +16 -64
- package/dest/EmpireBaseAbi.js.map +1 -1
- package/dest/EpochProofExtLibAbi.d.ts +12 -48
- package/dest/EpochProofExtLibAbi.d.ts.map +1 -1
- package/dest/EpochProofExtLibAbi.js +16 -64
- package/dest/EpochProofExtLibAbi.js.map +1 -1
- package/dest/EpochProofExtLibBytecode.d.ts +1 -1
- package/dest/EpochProofExtLibBytecode.d.ts.map +1 -1
- package/dest/EpochProofExtLibBytecode.js +1 -1
- package/dest/EpochProofExtLibBytecode.js.map +1 -1
- package/dest/ErrorsAbi.d.ts +12 -48
- package/dest/ErrorsAbi.d.ts.map +1 -1
- package/dest/ErrorsAbi.js +16 -64
- package/dest/ErrorsAbi.js.map +1 -1
- package/dest/EscapeHatchAbi.d.ts +12 -48
- package/dest/EscapeHatchAbi.d.ts.map +1 -1
- package/dest/EscapeHatchAbi.js +16 -64
- package/dest/EscapeHatchAbi.js.map +1 -1
- package/dest/EscapeHatchBytecode.d.ts +1 -1
- package/dest/EscapeHatchBytecode.js +1 -1
- package/dest/EscapeHatchStorage.d.ts +2 -2
- package/dest/EscapeHatchStorage.js +2 -2
- package/dest/FeeAssetHandlerAbi.d.ts +12 -48
- package/dest/FeeAssetHandlerAbi.d.ts.map +1 -1
- package/dest/FeeAssetHandlerAbi.js +16 -64
- package/dest/FeeAssetHandlerAbi.js.map +1 -1
- package/dest/FeeJuicePortalAbi.d.ts +12 -48
- package/dest/FeeJuicePortalAbi.d.ts.map +1 -1
- package/dest/FeeJuicePortalAbi.js +16 -64
- package/dest/FeeJuicePortalAbi.js.map +1 -1
- package/dest/FeeJuicePortalBytecode.d.ts +1 -1
- package/dest/FeeJuicePortalBytecode.js +1 -1
- package/dest/GSEAbi.d.ts +12 -48
- package/dest/GSEAbi.d.ts.map +1 -1
- package/dest/GSEAbi.js +16 -64
- package/dest/GSEAbi.js.map +1 -1
- package/dest/GovernanceAbi.d.ts +12 -48
- package/dest/GovernanceAbi.d.ts.map +1 -1
- package/dest/GovernanceAbi.js +16 -64
- package/dest/GovernanceAbi.js.map +1 -1
- package/dest/GovernanceProposerAbi.d.ts +12 -48
- package/dest/GovernanceProposerAbi.d.ts.map +1 -1
- package/dest/GovernanceProposerAbi.js +16 -64
- package/dest/GovernanceProposerAbi.js.map +1 -1
- package/dest/HonkVerifierAbi.d.ts +12 -48
- package/dest/HonkVerifierAbi.d.ts.map +1 -1
- package/dest/HonkVerifierAbi.js +16 -64
- package/dest/HonkVerifierAbi.js.map +1 -1
- package/dest/IERC20Abi.d.ts +12 -48
- package/dest/IERC20Abi.d.ts.map +1 -1
- package/dest/IERC20Abi.js +16 -64
- package/dest/IERC20Abi.js.map +1 -1
- package/dest/ISequencerRewardCalculatorAbi.d.ts +2607 -0
- package/dest/ISequencerRewardCalculatorAbi.d.ts.map +1 -0
- package/dest/ISequencerRewardCalculatorAbi.js +3473 -0
- package/dest/ISequencerRewardCalculatorAbi.js.map +1 -0
- package/dest/ISequencerRewardCalculatorBytecode.d.ts +9 -0
- package/dest/ISequencerRewardCalculatorBytecode.d.ts.map +1 -0
- package/dest/ISequencerRewardCalculatorBytecode.js +9 -0
- package/dest/ISequencerRewardCalculatorBytecode.js.map +1 -0
- package/dest/IVerifierAbi.d.ts +12 -48
- package/dest/IVerifierAbi.d.ts.map +1 -1
- package/dest/IVerifierAbi.js +16 -64
- package/dest/IVerifierAbi.js.map +1 -1
- package/dest/InboxAbi.d.ts +12 -48
- package/dest/InboxAbi.d.ts.map +1 -1
- package/dest/InboxAbi.js +16 -64
- package/dest/InboxAbi.js.map +1 -1
- package/dest/InboxBytecode.d.ts +1 -1
- package/dest/InboxBytecode.js +1 -1
- package/dest/MockVerifierAbi.d.ts +12 -48
- package/dest/MockVerifierAbi.d.ts.map +1 -1
- package/dest/MockVerifierAbi.js +16 -64
- package/dest/MockVerifierAbi.js.map +1 -1
- package/dest/MockZKPassportVerifierAbi.d.ts +12 -48
- package/dest/MockZKPassportVerifierAbi.d.ts.map +1 -1
- package/dest/MockZKPassportVerifierAbi.js +16 -64
- package/dest/MockZKPassportVerifierAbi.js.map +1 -1
- package/dest/MultiAdderAbi.d.ts +12 -48
- package/dest/MultiAdderAbi.d.ts.map +1 -1
- package/dest/MultiAdderAbi.js +16 -64
- package/dest/MultiAdderAbi.js.map +1 -1
- package/dest/MultiAdderBytecode.d.ts +1 -1
- package/dest/MultiAdderBytecode.js +1 -1
- package/dest/NewGovernanceProposerPayloadAbi.d.ts +12 -48
- package/dest/NewGovernanceProposerPayloadAbi.d.ts.map +1 -1
- package/dest/NewGovernanceProposerPayloadAbi.js +16 -64
- package/dest/NewGovernanceProposerPayloadAbi.js.map +1 -1
- package/dest/OutboxAbi.d.ts +12 -48
- package/dest/OutboxAbi.d.ts.map +1 -1
- package/dest/OutboxAbi.js +16 -64
- package/dest/OutboxAbi.js.map +1 -1
- package/dest/OutboxBytecode.d.ts +1 -1
- package/dest/OutboxBytecode.js +1 -1
- package/dest/RegisterNewRollupVersionPayloadAbi.d.ts +12 -48
- package/dest/RegisterNewRollupVersionPayloadAbi.d.ts.map +1 -1
- package/dest/RegisterNewRollupVersionPayloadAbi.js +16 -64
- package/dest/RegisterNewRollupVersionPayloadAbi.js.map +1 -1
- package/dest/RegisterNewRollupVersionPayloadBytecode.d.ts +1 -1
- package/dest/RegisterNewRollupVersionPayloadBytecode.js +1 -1
- package/dest/RegistryAbi.d.ts +12 -48
- package/dest/RegistryAbi.d.ts.map +1 -1
- package/dest/RegistryAbi.js +16 -64
- package/dest/RegistryAbi.js.map +1 -1
- package/dest/RewardDistributorAbi.d.ts +12 -48
- package/dest/RewardDistributorAbi.d.ts.map +1 -1
- package/dest/RewardDistributorAbi.js +16 -64
- package/dest/RewardDistributorAbi.js.map +1 -1
- package/dest/RewardExtLibAbi.d.ts +59 -48
- package/dest/RewardExtLibAbi.d.ts.map +1 -1
- package/dest/RewardExtLibAbi.js +77 -64
- package/dest/RewardExtLibAbi.js.map +1 -1
- package/dest/RewardExtLibBytecode.d.ts +1 -1
- package/dest/RewardExtLibBytecode.d.ts.map +1 -1
- package/dest/RewardExtLibBytecode.js +1 -1
- package/dest/RewardExtLibBytecode.js.map +1 -1
- package/dest/RollupAbi.d.ts +72 -79
- package/dest/RollupAbi.d.ts.map +1 -1
- package/dest/RollupAbi.js +93 -104
- package/dest/RollupAbi.js.map +1 -1
- package/dest/RollupBytecode.d.ts +91 -82
- package/dest/RollupBytecode.d.ts.map +1 -1
- package/dest/RollupBytecode.js +94 -82
- package/dest/RollupBytecode.js.map +1 -1
- package/dest/RollupOperationsExtLibAbi.d.ts +12 -48
- package/dest/RollupOperationsExtLibAbi.d.ts.map +1 -1
- package/dest/RollupOperationsExtLibAbi.js +16 -64
- package/dest/RollupOperationsExtLibAbi.js.map +1 -1
- package/dest/RollupOperationsExtLibBytecode.d.ts +1 -1
- package/dest/RollupOperationsExtLibBytecode.d.ts.map +1 -1
- package/dest/RollupOperationsExtLibBytecode.js +1 -1
- package/dest/RollupOperationsExtLibBytecode.js.map +1 -1
- package/dest/RollupStorage.d.ts +2 -2
- package/dest/RollupStorage.js +2 -2
- package/dest/SlasherAbi.d.ts +12 -48
- package/dest/SlasherAbi.d.ts.map +1 -1
- package/dest/SlasherAbi.js +16 -64
- package/dest/SlasherAbi.js.map +1 -1
- package/dest/SlasherDeploymentExtLibAbi.d.ts +12 -48
- package/dest/SlasherDeploymentExtLibAbi.d.ts.map +1 -1
- package/dest/SlasherDeploymentExtLibAbi.js +16 -64
- package/dest/SlasherDeploymentExtLibAbi.js.map +1 -1
- package/dest/SlasherDeploymentExtLibBytecode.d.ts +1 -1
- package/dest/SlasherDeploymentExtLibBytecode.d.ts.map +1 -1
- package/dest/SlasherDeploymentExtLibBytecode.js +1 -1
- package/dest/SlasherDeploymentExtLibBytecode.js.map +1 -1
- package/dest/SlashingProposerAbi.d.ts +12 -48
- package/dest/SlashingProposerAbi.d.ts.map +1 -1
- package/dest/SlashingProposerAbi.js +16 -64
- package/dest/SlashingProposerAbi.js.map +1 -1
- package/dest/SlashingProposerBytecode.d.ts +1 -1
- package/dest/SlashingProposerBytecode.js +1 -1
- package/dest/StakingAssetHandlerAbi.d.ts +12 -48
- package/dest/StakingAssetHandlerAbi.d.ts.map +1 -1
- package/dest/StakingAssetHandlerAbi.js +16 -64
- package/dest/StakingAssetHandlerAbi.js.map +1 -1
- package/dest/TestERC20Abi.d.ts +12 -48
- package/dest/TestERC20Abi.d.ts.map +1 -1
- package/dest/TestERC20Abi.js +16 -64
- package/dest/TestERC20Abi.js.map +1 -1
- package/dest/TokenPortalAbi.d.ts +12 -48
- package/dest/TokenPortalAbi.d.ts.map +1 -1
- package/dest/TokenPortalAbi.js +16 -64
- package/dest/TokenPortalAbi.js.map +1 -1
- package/dest/TokenPortalBytecode.d.ts +1 -1
- package/dest/TokenPortalBytecode.js +1 -1
- package/dest/UniswapPortalAbi.d.ts +12 -48
- package/dest/UniswapPortalAbi.d.ts.map +1 -1
- package/dest/UniswapPortalAbi.js +16 -64
- package/dest/UniswapPortalAbi.js.map +1 -1
- package/dest/UniswapPortalBytecode.d.ts +1 -1
- package/dest/UniswapPortalBytecode.js +1 -1
- package/dest/ValidatorOperationsExtLibAbi.d.ts +12 -48
- package/dest/ValidatorOperationsExtLibAbi.d.ts.map +1 -1
- package/dest/ValidatorOperationsExtLibAbi.js +16 -64
- package/dest/ValidatorOperationsExtLibAbi.js.map +1 -1
- package/dest/ValidatorOperationsExtLibBytecode.d.ts +1 -1
- package/dest/ValidatorOperationsExtLibBytecode.d.ts.map +1 -1
- package/dest/ValidatorOperationsExtLibBytecode.js +1 -1
- package/dest/ValidatorOperationsExtLibBytecode.js.map +1 -1
- package/dest/ValidatorSelectionLibAbi.d.ts +12 -48
- package/dest/ValidatorSelectionLibAbi.d.ts.map +1 -1
- package/dest/ValidatorSelectionLibAbi.js +16 -64
- package/dest/ValidatorSelectionLibAbi.js.map +1 -1
- package/dest/ValidatorSelectionLibBytecode.d.ts +1 -1
- package/dest/ValidatorSelectionLibBytecode.js +1 -1
- package/dest/checksum.d.ts +1 -1
- package/dest/checksum.js +1 -1
- package/dest/index.d.ts +2 -0
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +2 -0
- package/dest/index.js.map +1 -1
- package/l1-contracts/cache/solidity-files-cache.json +1 -1
- package/l1-contracts/foundry.toml +1 -1
- package/l1-contracts/out/AddressSnapshotLib.sol/AddressSnapshotLib.json +1 -1
- package/l1-contracts/out/AttestationLib.sol/AttestationLib.json +1 -1
- package/l1-contracts/out/AttesterExitExtLib.sol/AttesterExitExtLib.json +1 -1
- package/l1-contracts/out/BN254Lib.sol/BN254Lib.json +1 -1
- package/l1-contracts/out/Ballot.sol/BallotLib.json +1 -1
- package/l1-contracts/out/BlobLib.sol/BlobLib.json +1 -1
- package/l1-contracts/out/Bn254LibWrapper.sol/Bn254LibWrapper.json +1 -1
- package/l1-contracts/out/CheckpointLog.sol/CompressedTempCheckpointLogLib.json +1 -1
- package/l1-contracts/out/CheckpointedUintLib.sol/CheckpointedUintLib.json +1 -1
- package/l1-contracts/out/CoinIssuer.sol/CoinIssuer.json +1 -1
- package/l1-contracts/out/CompressedTimeMath.sol/CompressedTimeMath.json +1 -1
- package/l1-contracts/out/Configuration.sol/CompressedConfigurationLib.json +1 -1
- package/l1-contracts/out/ConfigurationLib.sol/ConfigurationLib.json +1 -1
- package/l1-contracts/out/ConstantsGen.sol/Constants.json +1 -1
- package/l1-contracts/out/CoordinationSignatureLib.sol/CoordinationSignatureLib.json +1 -1
- package/l1-contracts/out/DataStructures.sol/DataStructures.json +1 -1
- package/l1-contracts/out/DateGatedRelayer.sol/DateGatedRelayer.json +1 -1
- package/l1-contracts/out/DeployAztecL1Contracts.s.sol/DeployAztecL1Contracts.json +1 -1
- package/l1-contracts/out/DeployRollupForUpgrade.s.sol/DeployRollupForUpgrade.json +1 -1
- package/l1-contracts/out/DeployRollupLib.sol/DeployRollupLib.json +1 -1
- package/l1-contracts/out/DeploymentConfiguration.sol/DeploymentConfiguration.json +1 -1
- package/l1-contracts/out/DeploymentConfiguration.sol/IDeploymentConfiguration.json +1 -1
- package/l1-contracts/out/DepositDelegationLib.sol/DepositDelegationLib.json +1 -1
- package/l1-contracts/out/EmpireBase.sol/EmpireBase.json +1 -1
- package/l1-contracts/out/EpochProofExtLib.sol/EpochProofExtLib.json +1 -1
- package/l1-contracts/out/EpochProofLib.sol/EpochProofLib.json +1 -1
- package/l1-contracts/out/Errors.sol/Errors.json +1 -1
- package/l1-contracts/out/EscapeHatch.sol/EscapeHatch.json +1 -1
- package/l1-contracts/out/FeeAssetHandler.sol/FeeAssetHandler.json +1 -1
- package/l1-contracts/out/FeeAssetHandler.sol/IFeeAssetHandler.json +1 -1
- package/l1-contracts/out/FeeConfig.sol/FeeConfigLib.json +1 -1
- package/l1-contracts/out/FeeConfig.sol/PriceLib.json +1 -1
- package/l1-contracts/out/FeeJuicePortal.sol/FeeJuicePortal.json +1 -1
- package/l1-contracts/out/FeeLib.sol/FeeLib.json +1 -1
- package/l1-contracts/out/FeeStructs.sol/FeeHeaderLib.json +1 -1
- package/l1-contracts/out/FeeStructs.sol/FeeStructsLib.json +1 -1
- package/l1-contracts/out/FieldLib.sol/FieldLib.json +1 -1
- package/l1-contracts/out/FlushRewarder.sol/FlushRewarder.json +1 -1
- package/l1-contracts/out/GSE.sol/GSE.json +1 -1
- package/l1-contracts/out/GSE.sol/GSECore.json +1 -1
- package/l1-contracts/out/GSE.sol/IGSE.json +1 -1
- package/l1-contracts/out/GSE.sol/IGSECore.json +1 -1
- package/l1-contracts/out/GSEPayload.sol/GSEPayload.json +1 -1
- package/l1-contracts/out/Governance.sol/Governance.json +1 -1
- package/l1-contracts/out/GovernanceProposer.sol/GovernanceProposer.json +1 -1
- package/l1-contracts/out/Hash.sol/Hash.json +1 -1
- package/l1-contracts/out/HonkVerifier.sol/HonkVerifier.json +1 -1
- package/l1-contracts/out/IBn254LibWrapper.sol/IBn254LibWrapper.json +1 -1
- package/l1-contracts/out/ICoinIssuer.sol/ICoinIssuer.json +1 -1
- package/l1-contracts/out/IDateGatedRelayer.sol/IDateGatedRelayer.json +1 -1
- package/l1-contracts/out/IEmpire.sol/IEmperor.json +1 -1
- package/l1-contracts/out/IEmpire.sol/IEmpire.json +1 -1
- package/l1-contracts/out/IFeeJuicePortal.sol/IFeeJuicePortal.json +1 -1
- package/l1-contracts/out/IFlushRewarder.sol/IFlushRewarder.json +1 -1
- package/l1-contracts/out/IGovernance.sol/IGovernance.json +1 -1
- package/l1-contracts/out/IGovernanceProposer.sol/IGovernanceProposer.json +1 -1
- package/l1-contracts/out/IInbox.sol/IInbox.json +1 -1
- package/l1-contracts/out/IInstance.sol/IInstance.json +1 -1
- package/l1-contracts/out/IMintableERC20.sol/IMintableERC20.json +1 -1
- package/l1-contracts/out/IOutbox.sol/IOutbox.json +1 -1
- package/l1-contracts/out/IPayload.sol/IPayload.json +1 -1
- package/l1-contracts/out/IProposerPayload.sol/IProposerPayload.json +1 -1
- package/l1-contracts/out/IRegistry.sol/IHaveVersion.json +1 -1
- package/l1-contracts/out/IRegistry.sol/IRegistry.json +1 -1
- package/l1-contracts/out/IRewardDistributor.sol/IRewardDistributor.json +1 -1
- package/l1-contracts/out/IRollup.sol/IRollup.json +1 -1
- package/l1-contracts/out/IRollup.sol/IRollupCore.json +1 -1
- package/l1-contracts/out/IRootRegistry.sol/IRootRegistry.json +1 -1
- package/l1-contracts/out/ISequencerRewardCalculator.sol/ISequencerRewardCalculator.json +1 -0
- package/l1-contracts/out/ISlasher.sol/ISlasher.json +1 -1
- package/l1-contracts/out/IStaking.sol/IStaking.json +1 -1
- package/l1-contracts/out/IStaking.sol/IStakingCore.json +1 -1
- package/l1-contracts/out/IValidatorSelection.sol/IValidatorSelection.json +1 -1
- package/l1-contracts/out/IValidatorSelection.sol/IValidatorSelectionCore.json +1 -1
- package/l1-contracts/out/IVerifier.sol/IVerifier.json +1 -1
- package/l1-contracts/out/Inbox.sol/Inbox.json +1 -1
- package/l1-contracts/out/InputsExtractor.sol/InputsExtractor.json +1 -1
- package/l1-contracts/out/InvalidateLib.sol/InvalidateLib.json +1 -1
- package/l1-contracts/out/MerkleLib.sol/MerkleLib.json +1 -1
- package/l1-contracts/out/MockERC20.sol/MockERC20.json +1 -1
- package/l1-contracts/out/MockERC721.sol/MockERC721.json +1 -1
- package/l1-contracts/out/MockFeeJuicePortal.sol/MockFeeJuicePortal.json +1 -1
- package/l1-contracts/out/MockVerifier.sol/MockVerifier.json +1 -1
- package/l1-contracts/out/MockZKPassportVerifier.sol/IZKPassportVerifier.json +1 -1
- package/l1-contracts/out/MockZKPassportVerifier.sol/MockZKPassportVerifier.json +1 -1
- package/l1-contracts/out/MultiAdder.sol/IMultiAdder.json +1 -1
- package/l1-contracts/out/MultiAdder.sol/MultiAdder.json +1 -1
- package/l1-contracts/out/Outbox.sol/Outbox.json +1 -1
- package/l1-contracts/out/OuterCount8.sol/HonkVerifier.json +1 -1
- package/l1-contracts/out/Proposal.sol/CompressedProposalLib.json +1 -1
- package/l1-contracts/out/ProposalLib.sol/ProposalLib.json +1 -1
- package/l1-contracts/out/ProposeLib.sol/ProposeLib.json +1 -1
- package/l1-contracts/out/ProposedHeaderLib.sol/ProposedHeaderLib.json +1 -1
- package/l1-contracts/out/RegisterNewRollupVersionPayload.sol/RegisterNewRollupVersionPayload.json +1 -1
- package/l1-contracts/out/Registry.sol/Registry.json +1 -1
- package/l1-contracts/out/RewardBooster.sol/IBooster.json +1 -1
- package/l1-contracts/out/RewardBooster.sol/IBoosterCore.json +1 -1
- package/l1-contracts/out/RewardBooster.sol/RewardBooster.json +1 -1
- package/l1-contracts/out/RewardDistributor.sol/RewardDistributor.json +1 -1
- package/l1-contracts/out/RewardExtLib.sol/RewardExtLib.json +1 -1
- package/l1-contracts/out/RewardLib.sol/BpsLib.json +1 -1
- package/l1-contracts/out/RewardLib.sol/RewardLib.json +1 -1
- package/l1-contracts/out/Rollup.sol/Rollup.json +1 -1
- package/l1-contracts/out/RollupConfiguration.sol/IRollupConfiguration.json +1 -1
- package/l1-contracts/out/RollupConfiguration.sol/RollupConfiguration.json +1 -1
- package/l1-contracts/out/RollupCore.sol/RollupCore.json +1 -1
- package/l1-contracts/out/RollupOperationsExtLib.sol/RollupOperationsExtLib.json +1 -1
- package/l1-contracts/out/STFLib.sol/STFLib.json +1 -1
- package/l1-contracts/out/SampleLib.sol/SampleLib.json +1 -1
- package/l1-contracts/out/SequencerRewardCalculatorLib.sol/SequencerRewardCalculatorLib.json +1 -0
- package/l1-contracts/out/SignatureLib.sol/SignatureLib.json +1 -1
- package/l1-contracts/out/SlashPayload.sol/SlashPayload.json +1 -1
- package/l1-contracts/out/SlashPayloadCloneable.sol/SlashPayloadCloneable.json +1 -1
- package/l1-contracts/out/SlashPayloadLib.sol/SlashPayloadLib.json +1 -1
- package/l1-contracts/out/SlashRoundLib.sol/CompressedSlashRoundMath.json +1 -1
- package/l1-contracts/out/Slasher.sol/Slasher.json +1 -1
- package/l1-contracts/out/SlasherDeploymentExtLib.sol/SlasherDeploymentExtLib.json +1 -1
- package/l1-contracts/out/SlashingProposer.sol/SlashingProposer.json +1 -1
- package/l1-contracts/out/StakingAssetHandler.sol/IStakingAssetHandler.json +1 -1
- package/l1-contracts/out/StakingAssetHandler.sol/StakingAssetHandler.json +1 -1
- package/l1-contracts/out/StakingLib.sol/StakingLib.json +1 -1
- package/l1-contracts/out/StakingQueue.sol/StakingQueueLib.json +1 -1
- package/l1-contracts/out/StakingQueueConfig.sol/StakingQueueConfigLib.json +1 -1
- package/l1-contracts/out/StdError.sol/stdError.json +1 -1
- package/l1-contracts/out/TestERC20.sol/TestERC20.json +1 -1
- package/l1-contracts/out/TestPayloads.sol/CallAssetPayload.json +1 -1
- package/l1-contracts/out/TestPayloads.sol/CallRevertingPayload.json +1 -1
- package/l1-contracts/out/TestPayloads.sol/EmptyPayload.json +1 -1
- package/l1-contracts/out/TestPayloads.sol/FakeRollup.json +1 -1
- package/l1-contracts/out/TestPayloads.sol/RevertingCall.json +1 -1
- package/l1-contracts/out/TestPayloads.sol/UpgradePayload.json +1 -1
- package/l1-contracts/out/TimeLib.sol/TimeLib.json +1 -1
- package/l1-contracts/out/Tips.sol/ChainTipsLib.json +1 -1
- package/l1-contracts/out/ValidatorOperationsExtLib.sol/ValidatorOperationsExtLib.json +1 -1
- package/l1-contracts/out/ValidatorSelectionLib.sol/ValidatorSelectionLib.json +1 -1
- package/l1-contracts/out/ZKPassportHelper.sol/ZKPassportHelper.json +1 -1
- package/l1-contracts/out/ZKPassportRootVerifier.sol/ZKPassportRootVerifier.json +1 -1
- package/l1-contracts/out/ZKPassportSubVerifier.sol/ZKPassportSubVerifier.json +1 -1
- package/l1-contracts/out/build-info/4cb7b5442b848dcc.json +1 -0
- package/l1-contracts/out/generated/HonkVerifier.sol/HonkVerifier.json +1 -1
- package/l1-contracts/out/libraries/Errors.sol/Errors.json +1 -1
- package/l1-contracts/out/rollup/BlobLib.sol/BlobLib.json +1 -1
- package/l1-contracts/out/src/ZKPassportHelper.sol/ZKPassportHelper.json +1 -1
- package/l1-contracts/out/src/ZKPassportRootVerifier.sol/ZKPassportRootVerifier.json +1 -1
- package/l1-contracts/out/src/ZKPassportSubVerifier.sol/ZKPassportSubVerifier.json +1 -1
- package/l1-contracts/script/deploy/RollupConfiguration.sol +5 -19
- package/l1-contracts/scripts/network-defaults.json +1 -2
- package/l1-contracts/src/core/Rollup.sol +18 -12
- package/l1-contracts/src/core/RollupCore.sol +14 -27
- package/l1-contracts/src/core/interfaces/IRollup.sol +7 -11
- package/l1-contracts/src/core/interfaces/ISequencerRewardCalculator.sol +39 -0
- package/l1-contracts/src/core/interfaces/IValidatorSelection.sol +0 -2
- package/l1-contracts/src/core/libraries/Errors.sol +3 -6
- package/l1-contracts/src/core/libraries/rollup/BlobLib.sol +16 -6
- package/l1-contracts/src/core/libraries/rollup/EpochProofExtLib.sol +2 -7
- package/l1-contracts/src/core/libraries/rollup/EpochProofLib.sol +4 -12
- package/l1-contracts/src/core/libraries/rollup/RewardExtLib.sol +30 -12
- package/l1-contracts/src/core/libraries/rollup/RewardLib.sol +187 -250
- package/l1-contracts/src/core/libraries/rollup/SequencerRewardCalculatorLib.sol +110 -0
- package/l1-contracts/src/core/libraries/rollup/ValidatorSelectionLib.sol +2 -4
- package/package.json +1 -1
- package/l1-contracts/out/RewardLib.sol/IATP.json +0 -1
- package/l1-contracts/out/RewardLib.sol/IATPStaker.json +0 -1
- package/l1-contracts/out/build-info/f88e638ee47a1ead.json +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"abi":[{"type":"function","name":"canPruneAtTime","inputs":[{"name":"_ts","type":"uint256","internalType":"Timestamp"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getCheckpointReward","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getCollectiveProverRewardsForEpoch","inputs":[{"name":"_epoch","type":"uint256","internalType":"Epoch"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getEpochForCheckpoint","inputs":[{"name":"_checkpointNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"Epoch"}],"stateMutability":"view"},{"type":"function","name":"getEthPerFeeAssetAtCheckpoint","inputs":[{"name":"_checkpointNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"EthPerFeeAssetE12"}],"stateMutability":"view"},{"type":"function","name":"getFirstProvenBy","inputs":[{"name":"_checkpointNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getHasClaimed","inputs":[{"name":"_prover","type":"address","internalType":"address"},{"name":"_epoch","type":"uint256","internalType":"Epoch"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getHasSubmitted","inputs":[{"name":"_epoch","type":"uint256","internalType":"Epoch"},{"name":"_length","type":"uint256","internalType":"uint256"},{"name":"_prover","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getL1FeesAt","inputs":[{"name":"_timestamp","type":"uint256","internalType":"Timestamp"}],"outputs":[{"name":"","type":"tuple","internalType":"struct L1FeeData","components":[{"name":"baseFee","type":"uint256","internalType":"uint256"},{"name":"blobFee","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"getManaMinFeeComponentsAt","inputs":[{"name":"_timestamp","type":"uint256","internalType":"Timestamp"},{"name":"_inFeeAsset","type":"bool","internalType":"bool"}],"outputs":[{"name":"","type":"tuple","internalType":"struct ManaMinFeeComponents","components":[{"name":"protocolFee","type":"uint256","internalType":"uint256"},{"name":"congestionMultiplier","type":"uint256","internalType":"uint256"},{"name":"sequencerCost","type":"uint256","internalType":"uint256"},{"name":"proverCost","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"getProvingCostPerMana","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"EthValue"}],"stateMutability":"view"},{"type":"function","name":"getProvingCostPerManaInFeeAsset","inputs":[{"name":"_ethPerFeeAsset","type":"uint256","internalType":"EthPerFeeAssetE12"}],"outputs":[{"name":"","type":"uint256","internalType":"FeeAssetValue"}],"stateMutability":"view"},{"type":"function","name":"getRewardConfig","inputs":[],"outputs":[{"name":"","type":"tuple","internalType":"struct RewardConfig","components":[{"name":"rewardDistributor","type":"IRewardDistributor","internalType":"contract IRewardDistributor"},{"name":"sequencerBps","type":"uint32","internalType":"Bps"},{"name":"booster","type":"IBoosterCore","internalType":"contract IBoosterCore"},{"name":"checkpointReward","type":"uint96","internalType":"uint96"}]}],"stateMutability":"view"},{"type":"function","name":"getRewardDistributor","inputs":[],"outputs":[{"name":"","type":"IRewardDistributor","internalType":"contract IRewardDistributor"}],"stateMutability":"view"},{"type":"function","name":"getSequencerRewards","inputs":[{"name":"_sequencer","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getSharesFor","inputs":[{"name":"_prover","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getSpecificProverRewardsForEpoch","inputs":[{"name":"_epoch","type":"uint256","internalType":"Epoch"},{"name":"_prover","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"summedMinFee","inputs":[{"name":"_components","type":"tuple","internalType":"struct ManaMinFeeComponents","components":[{"name":"protocolFee","type":"uint256","internalType":"uint256"},{"name":"congestionMultiplier","type":"uint256","internalType":"uint256"},{"name":"sequencerCost","type":"uint256","internalType":"uint256"},{"name":"proverCost","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"event","name":"ManaTargetUpdated","inputs":[{"name":"manaTarget","type":"uint256","indexed":true,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProtocolFeeMarginUpdated","inputs":[{"name":"oldBps","type":"uint16","indexed":false,"internalType":"uint16"},{"name":"newBps","type":"uint16","indexed":false,"internalType":"uint16"}],"anonymous":false},{"type":"event","name":"ProtocolFeeRecipientUpdated","inputs":[{"name":"oldRecipient","type":"address","indexed":false,"internalType":"address"},{"name":"newRecipient","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RewardConfigUpdated","inputs":[{"name":"rewardConfig","type":"tuple","indexed":false,"internalType":"struct MutableRewardConfig","components":[{"name":"sequencerBps","type":"uint32","internalType":"Bps"},{"name":"checkpointReward","type":"uint96","internalType":"uint96"}]}],"anonymous":false},{"type":"error","name":"FeeLib__InvalidManaLimit","inputs":[{"name":"maximum","type":"uint256","internalType":"uint256"},{"name":"provided","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__InvalidManaTarget","inputs":[{"name":"minimum","type":"uint256","internalType":"uint256"},{"name":"provided","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__ProtocolFeeMarginCooldown","inputs":[{"name":"nextAllowed","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__ProtocolFeeMarginStepExceeded","inputs":[{"name":"current","type":"uint256","internalType":"uint256"},{"name":"requested","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__ProvingCostBelowFloor","inputs":[{"name":"provided","type":"uint256","internalType":"uint256"},{"name":"minimum","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__ProvingCostCooldown","inputs":[{"name":"nextAllowed","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__ProvingCostStepExceeded","inputs":[{"name":"current","type":"uint256","internalType":"uint256"},{"name":"requested","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"RewardLib__DuplicateRegistryRewardOverride","inputs":[{"name":"registry","type":"address","internalType":"address"}]},{"type":"error","name":"RewardLib__InvalidProtocolFeeRecipient","inputs":[]},{"type":"error","name":"RewardLib__InvalidRegistryRewardOverride","inputs":[{"name":"registry","type":"address","internalType":"address"},{"name":"sequencerReward","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"RewardLib__InvalidSequencerBps","inputs":[]},{"type":"error","name":"RewardLib__RegistryRewardOverrideAboveDefault","inputs":[{"name":"registry","type":"address","internalType":"address"},{"name":"sequencerReward","type":"uint256","internalType":"uint256"},{"name":"defaultSequencerReward","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Rollup__CheckpointNotProven","inputs":[{"name":"proven","type":"uint256","internalType":"uint256"},{"name":"requested","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Rollup__InvalidCheckpointNumber","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"actual","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Rollup__InvalidManaTarget","inputs":[{"name":"minimum","type":"uint256","internalType":"uint256"},{"name":"provided","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Rollup__NotPastDeadline","inputs":[{"name":"deadline","type":"uint256","internalType":"Epoch"},{"name":"currentEpoch","type":"uint256","internalType":"Epoch"}]},{"type":"error","name":"Rollup__UnavailableTempCheckpointLog","inputs":[{"name":"checkpointNumber","type":"uint256","internalType":"uint256"},{"name":"pendingCheckpointNumber","type":"uint256","internalType":"uint256"},{"name":"upperLimit","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SafeCastOverflowedIntToUint","inputs":[{"name":"value","type":"int256","internalType":"int256"}]},{"type":"error","name":"SafeCastOverflowedUintDowncast","inputs":[{"name":"bits","type":"uint8","internalType":"uint8"},{"name":"value","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SafeERC20FailedOperation","inputs":[{"name":"token","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x6135c5610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061018a575f3560e01c806386a0d763116100e0578063dc1bb8f41161008f578063dc1bb8f4146103e0578063dfff3ebc146103f3578063e068d95a14610406578063e6e2844014610419578063ec14780614610438578063ed1765141461048d578063fe2a92d0146104ac575f5ffd5b806386a0d763146103405780638789a132146103485780638841c4671461035b578063a4f40ee91461037a578063bcfe1a1c14610399578063c4fb3d7c146103c5578063cf20d872146103d8575f5ffd5b8063498a4cc91161013c578063498a4cc914610287578063508ac49b146102a65780635a97eaa1146102ba5780635e5fafb3146102cd5780635f82401f146102ec578063604ef88f1461031a57806368faa7781461032d575f5ffd5b8063117044301461018e57806316a7ced5146101dd5780631df47f80146101fe57806328e07ac31461021f5780633334f7dc14610242578063385b901214610255578063483315b314610274575b5f5ffd5b6101a161019c366004612394565b6104b4565b6040516101d491908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b60405180910390f35b6101f06101eb3660046123c6565b6104cf565b6040519081526020016101d4565b818015610209575f5ffd5b5061021d6102183660046123f1565b6104d9565b005b61023261022d36600461240c565b61052d565b60405190151581526020016101d4565b610232610250366004612436565b610538565b818015610260575f5ffd5b506101f061026f36600461250a565b61054e565b6101f06102823660046123c6565b61055a565b818015610292575f5ffd5b5061021d6102a13660046125ff565b610564565b8180156102b1575f5ffd5b5061021d61057b565b6101f06102c83660046123c6565b610585565b8180156102d8575f5ffd5b506101f06102e73660046126fa565b61058f565b6102ff6102fa3660046123c6565b61059a565b604080518251815260209283015192810192909252016101d4565b6101f06103283660046123c6565b6105b6565b6101f061033b366004612726565b6105c9565b6101f06105d4565b6101f06103563660046123f1565b6105e2565b818015610366575f5ffd5b5061021d610375366004612749565b6105ec565b818015610385575f5ffd5b5061021d610394366004612788565b610644565b8180156103a4575f5ffd5b506103b86103b33660046127a9565b61069d565b6040516101d49190612840565b6103b86103d33660046123c6565b610725565b6103b861072f565b6102326103ee3660046123c6565b61074a565b6101f06104013660046123f1565b610754565b6101f0610414366004612854565b61075e565b818015610424575f5ffd5b5061021d6104333660046123c6565b610768565b6104406107ed565b6040805182516001600160a01b03908116825260208085015163ffffffff16908301528383015116918101919091526060918201516001600160601b0316918101919091526080016101d4565b818015610498575f5ffd5b5061021d6104a73660046123c6565b61086d565b6101f0610879565b6104bc612363565b6104c68383610882565b90505b92915050565b5f6104c9826108a9565b5f6104e3826108c4565b604080516001600160a01b038084168252851660208201529192507fd3890fc76afcfc31cba1dcf2c27b50e2541e4d75039c981855b5b5e03682aea0910160405180910390a15050565b5f6104c6838361091e565b5f61054484848461094c565b90505b9392505050565b5f61054484848461098f565b5f6104c982610ba3565b61056e8183610bf3565b61057782610d64565b5050565b610583610e19565b565b5f6104c982610f37565b5f6104c68383610f63565b604080518082019091525f80825260208201526104c982610fb4565b5f6104c9826105c3611033565b9061104c565b5f6104c6838361105f565b5f6105dd61112e565b905090565b5f6104c982611150565b6105f581611177565b60408051825163ffffffff1681526020808401516001600160601b0316908201527f24ea90802d5c1d10fd3da4b05f2415af510be55a0e3b385831be1851c3975869910160405180910390a150565b5f5f61064f836111fb565b915091508115610698576040805161ffff8084168252851660208201527f50cfb74385ad073f39f956bcb64fa0e087dc901b2a9dcdf8e7a1d340cbf64b74910160405180910390a15b505050565b5f5f30836040516106ad90612387565b6001600160a01b039092168252805163ffffffff908116602080850191909152820151811660408085019190915282015181166060808501919091528201518116608080850191909152909101511660a082015260c001604051809103905ff08015801561071d573d5f5f3e3d5ffd5b509392505050565b5f6104c982611366565b5f610738611419565b600301546001600160a01b0316919050565b5f6104c98261143d565b5f6104c9826114ae565b5f6104c982611527565b5f61078161077461155a565b5460c01c63ffffffff1690565b90508082818110156107b457604051630d1bff9560e21b8152600481019290925260248201526044015b60405180910390fd5b50506107bf8261157e565b60405182907faaa1053539ab4621b2aecf54a7ccf2096610ff768f32261f667aca9ae3069482905f90a25050565b604080516080810182525f808252602082018190529181018290526060810191909152610818611419565b6040805160808101825260038301546001600160a01b038082168352600160a01b9182900463ffffffff1660208401526004909401549384169282019290925291046001600160601b03166060820152919050565b610876816115d7565b50565b5f6105dd611033565b61088a612363565b5f61089484611721565b90506108a181858561175c565b949350505050565b5f6104c96108b683611915565b60501c65ffffffffffff1690565b5f6001600160a01b0382166108ec57604051638513472b60e01b815260040160405180910390fd5b5f6108f5611419565b60050180546001600160a01b039485166001600160a01b03198216179091559290921692915050565b5f6104c68261092b611419565b6001600160a01b0386165f9081526002919091016020526040902090611929565b5f5f610956611419565b5f95865260019081016020908152604080882096885295820181528587206001600160a01b039590951687529301909252509120541190565b5f5f61099a4261194c565b90505f6109a5611419565b90505f805b8651811015610b7e576109df848883815181106109c9576109c9612899565b60200260200101516119a490919063ffffffff16565b15610a028883815181106109f5576109f5612899565b60200260200101516119ae565b859091610a2b57604051632851216f60e21b8152600481019290925260248201526044016107ab565b5050610a7d878281518110610a4257610a42612899565b6020026020010151846002015f8b6001600160a01b03166001600160a01b031681526020019081526020015f2061192990919063ffffffff16565b610b7657610ad1878281518110610a9657610a96612899565b6020026020010151846002015f8b6001600160a01b03166001600160a01b031681526020019081526020015f206119e690919063ffffffff16565b5f836001015f898481518110610ae957610ae9612899565b60209081029190910181015182528181019290925260409081015f90812080546001600160801b03168252600180820185528383206001600160a01b038f168452908101909452919020549092508015610b725781548354610b5b90600160801b90046001600160801b0316836128c1565b610b6591906128ec565b610b6f90866128ff565b94505b5050505b6001016109aa565b508015610b9957610b996001600160a01b0386168883611a0e565b9695505050505050565b5f5f610bad611a60565b805490915060801c8381811115610be0576040516368dd4dfd60e11b8152600481019290925260248201526044016107ab565b5050610547610bee84611a84565b611a9e565b5f610c0f82606001516001600160601b03168360200151611abf565b90505f5b6002811015610d5e575f848260028110610c2f57610c2f612899565b602002015180519091506001600160a01b0316610c985760208101518151906001600160601b03811615610c90576040516317f4063160e21b81526001600160a01b0390921660048301526001600160601b031660248201526044016107ab565b505050610d56565b6020810151815190846001600160601b038216811015610cec57604051632ec41bf960e01b81526001600160a01b0390931660048401526001600160601b03909116602483015260448201526064016107ab565b505f9150505b82811015610d535781516001600160a01b0316868260028110610d1757610d17612899565b6020020151518351916001600160a01b0390911603610d4a57604051636a5a204560e11b81526004016107ab9190612840565b50600101610cf2565b50505b600101610c13565b50505050565b612710816020015163ffffffff161115610d9157604051633b97c27960e21b815260040160405180910390fd5b5f610d9a611419565b8251600382018054602086015163ffffffff16600160a01b9081026001600160c01b03199092166001600160a01b03948516179190911790915560408501516060909501516001600160601b03160293169290921760048301555060050180546001600160a01b0319166b4355415548584943414c4c4960401b179055565b5f610e2342611add565b90505f610e2e61155a565b60018101549091505f90610e5a90600160e01b900463ffffffff16610e5560056002611b0d565b611b18565b905082811115610e6957505050565b604080516060810182526001840154600160701b90046001600160701b03168152815180830190925248825290602080830191610eb1918101610eaa611b23565b9052611c20565b6001600160701b03168152602001610ed2610ecd866002611b18565b611c65565b63ffffffff9081169091528151600190940180546020840151604090940151909216600160e01b026001600160e01b036001600160701b03948516600160701b026001600160e01b031990941694909616939093179190911793909316179091555050565b5f610f40611419565b5f928352600101602052506040902054600160801b90046001600160801b031690565b5f5f610f6d611419565b6001600160a01b0385165f9081526020829052604090205490915080156108a1576001600160a01b038086165f908152602084905260408120556108a19085168683611a0e565b604080518082019091525f80825260208201525f610fd061155a565b9050610ff5610fde84611add565b6001830154600160e01b900463ffffffff165b1190565b61101c57600181015461101790600160701b90046001600160701b0316611c6f565b610547565b6001810154610547906001600160701b0316611c6f565b5f6105dd61103f61155a565b546001600160401b031690565b5f6104c68364e8d4a51000846001611ca9565b5f5f611069611419565b6001600160a01b0384165f908152600282016020526040902090915061108f9085611929565b1561109d575f9150506104c9565b5f84815260018083016020908152604080842080546001600160801b0316855280840183528185206001600160a01b03891686529384019092528320549092036110ec575f93505050506104c9565b805482546001600160a01b0387165f90815260018401602052604090205461112491600160801b90046001600160801b0316906128c1565b610b9991906128ec565b5f611137611419565b60040154600160a01b90046001600160601b0316919050565b5f611159611419565b6001600160a01b039092165f90815260209290925250604090205490565b612710815f015163ffffffff1611156111a357604051633b97c27960e21b815260040160405180910390fd5b5f6111ac611419565b825160038201805463ffffffff60a01b1916600160a01b63ffffffff9093168302179055602090930151600490910180546001600160a01b03166001600160601b039092169093021790915550565b5f5f5f61120661155a565b90505f611215825f0154611cf4565b9050806060015192508261ffff168561ffff1603611237575f93505050915091565b8261ffff168561ffff1611156113205760028201545f9061126c9062278d0090600160401b90046001600160401b03166128ff565b6002840154909150600160401b90046001600160401b031615806112905750804210155b81906112b25760405163777ec76b60e11b81526004016107ab91815260200190565b5060036112c561ffff86166127106128ff565b6112cf91906128c1565b60026112e161ffff89166127106128ff565b6112eb91906128c1565b11158487909161131c5760405163e4e1563360e01b815261ffff9283166004820152911660248201526044016107ab565b5050505b61ffff8516606082015261133381611d78565b825550600201805467ffffffffffffffff60401b1916600160401b426001600160401b0316021790556001939092509050565b5f5f611370611a60565b80549091506001600160801b0316831580159061138d5750808411155b818590916113b757604051631e19e11960e21b8152600481019290925260248201526044016107ab565b508490505b8181116113f5575f81815260038401602052604090205480156113e25795945050505050565b50806113ed81612912565b9150506113bc565b50604051631e19e11960e21b815260048101829052602481018590526044016107ab565b7f7da2ae3c4a8197dbe64388763d16e7945dd85ef9823a62323a7cdcce718a163790565b5f5f611447611a60565b80549091506001600160801b0381166114608260801c90565b0361146e57505f9392505050565b5f61148b6114866001600160801b03841660016128ff565b610ba3565b90505f6114978661194c565b90506114a382826119a4565b159695505050505050565b5f6114b7611419565b6004908101546040516337ffcfaf60e21b81526001600160a01b039091169163dfff3ebc916114e891869101612840565b602060405180830381865afa158015611503573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104c9919061292a565b5f6104c9825f01518360600151846040015161154391906128ff565b61154d91906128ff565b6001600160801b03611deb565b7f2e57d696f4035f6dfbf369d367f6b4aaf23baac5f6ee9a3a5207d71c56de652c90565b61158781611dfa565b505f61159161155a565b90505f6115a0825f0154611cf4565b83815290506305f5e1006115b86332f1b336856128c1565b6115c291906128ec565b60208201526115d081611d78565b9091555050565b5f6115e061155a565b90505f6115ef825f0154611cf4565b6040810151909150838060028082101561162557604051631ad480f960e11b8152600481019290925260248201526044016107ab565b505060028401545f906116459062278d00906001600160401b03166128ff565b60028601549091506001600160401b031615806116625750804210155b8190611684576040516344331fd960e01b81526004016107ab91815260200190565b506116906003846128c1565b61169b6002846128c1565b111580156116bd57506116af6002846128c1565b6116ba6003846128c1565b10155b838390916116e757604051637e42087560e01b8152600481019290925260248201526044016107ab565b5050604084018690526116f984611d78565b85555050506002909101805467ffffffffffffffff1916426001600160401b03161790555050565b5f5f61172b611a60565b80549091506117398461143d565b61174c576117478160801c90565b6108a1565b6001600160801b03169392505050565b611764612363565b5f61176d61155a565b90505f611783825f015460c01c63ffffffff1690565b90505f5f5f5f61179289610fb4565b90505f81602001516202000060036117aa91906128c1565b6117b491906128c1565b82516117c3906207a1206128c1565b6117cd91906128ff565b90506117dd816001886001611ca9565b94505061182861181861180e623d0900845f01516117f9611e74565b54600160a01b900463ffffffff166001611ca9565b6001886001611ca9565b87546001600160401b0316611b18565b92506118348484611b18565b9150505f6118418a611915565b90505f61187863ffffffff83166118608460201c65ffffffffffff1690565b61186a91906128ff565b61187388612941565b611e98565b90505f61188482611ee6565b90505f6118a061189a8684633b9aca005f611ca9565b86611b0d565b90505f8b6118b35764e8d4a510006118bc565b6118bc8e6108a9565b905060405180608001604052806118dc838561104c90919063ffffffff16565b8152602081018590526040016118f28a8461104c565b8152602001611901898461104c565b90529e9d5050505050505050505050505050565b5f61191f82611f56565b6006015492915050565b600881901c5f90815260208390526040902054600160ff83161b16151592915050565b5f5f611956611e74565b805490915061197b9063ffffffff600160801b8204811691600160a01b90041661295b565b815463ffffffff919091169061199a906001600160801b031685612981565b61054791906128ec565b5f6104c682610ff1855b5f5f6119b8611e74565b80549091506105479084906119db90600160c01b900463ffffffff166001612994565b63ffffffff16611b18565b600881901c5f90815260209290925260409091208054600160ff9093169290921b9091179055565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610698908490611ff9565b7f0958201b72d64259285941dffd868dac55267471fcc73e8a06e1fd9cf870636190565b5f6104c9611a9183611f56565b6005015463ffffffff1690565b5f611aa7611e74565b546104c990600160a01b900463ffffffff16836128ec565b5f612710611ad363ffffffff8416856128c1565b6104c691906128ec565b5f5f611ae7611e74565b805490915063ffffffff600160801b8204169061199a906001600160801b031685612981565b5f6104c68284612981565b5f6104c682846128ff565b5f617a694614808015611b4a5750737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15155b15611c185760408051600481526024810182526020810180516001600160e01b0316631f6d6ef760e01b17905290515f918291737109709ecfa91a80626ff3989d68f67f5b1dd12d91611b9c916129b0565b5f60405180830381855afa9150503d805f8114611bd4576040519150601f19603f3d011682016040523d82523d5f602084013e611bd9565b606091505b5091509150818015611bed57506020815110155b15611c0e5780806020019051810190611c06919061292a565b935050505090565b6001935050505090565b4a5b91505090565b5f5f5f90505f611c33846020015161205c565b66ffffffffffffff16901b811790506038611c50845f015161205c565b66ffffffffffffff16901b1761054781612093565b5f6104c9826120c6565b604080518082019091525f8082526020820152506040805180820190915266ffffffffffffff603883901c81168252909116602082015290565b5f611cd6611cb6836120f6565b8015611cd157505f8480611ccc57611ccc6128d8565b868809115b151590565b611ce1868686612122565b611ceb91906128ff565b95945050505050565b611d1b60405180608001604052805f81526020015f81526020015f81526020015f81525090565b6040518060800160405280611d368460c01c63ffffffff1690565b8152602001611d4e8460401c6001600160801b031690565b81526020016001600160401b0384168152602001611d708460e01c61ffff1690565b905292915050565b5f5f5f9050611d8a83604001516121d8565b6001600160401b0316811790506040611da6846020015161220d565b6001600160801b0316901b8117905060c0611dc3845f01516120c6565b63ffffffff16901b8117905060e0611dde8460600151612240565b61ffff16901b1792915050565b5f8282188284100282186104c6565b5f60018280611e25576040516372e1574f60e01b8152600481019290925260248201526044016107ab565b505f9050611e348360026128c1565b905063ffffffff8181811115611e6b576040516303fd5c0b60e41b815263ffffffff909216600483015260248201526044016107ab565b50909392505050565b7fcc2bde3d21ba778aa5c156bb6fc47381978b0054c8a1ef73f44234164324cbe090565b5f5f8212611eba57611ea98261226e565b611eb390846128ff565b90506104c9565b60ff82901d8083011880841115611edd57611ed58185612981565b9150506104c9565b505f9392505050565b5f5f611ef061155a565b90505f611f09825f015460401c6001600160801b031690565b90505f611f2085611f1b8460646128c1565b611deb565b9050611ceb611f36845f015460e01c61ffff1690565b611f42906127106128ff565b611f4f90620186a06128c1565b8284612293565b5f5f611f6a611f63611a60565b5460801c90565b90505f611f756122fe565b90505f611f8282866128ff565b90505f838611158015611f9457508184105b905085848383611fc857604051638711786b60e01b81526004810193909352602483019190915260448201526064016107ab565b505050611fd3611a60565b6002015f611fe185896129c6565b81526020019081526020015f20945050505050919050565b5f5f60205f8451602086015f885af180612018576040513d5f823e3d81fd5b50505f513d9150811561202f57806001141561203c565b6001600160a01b0384163b155b15610d5e5783604051635274afe760e01b81526004016107ab9190612840565b5f66ffffffffffffff82111561208f576040516306dfcc6560e41b815260386004820152602481018390526044016107ab565b5090565b5f6001600160701b0382111561208f576040516306dfcc6560e41b815260706004820152602481018390526044016107ab565b5f63ffffffff82111561208f576040516306dfcc6560e41b815260206004820152602481018390526044016107ab565b5f600282600381111561210b5761210b6129d9565b61211591906129ed565b60ff166001149050919050565b5f838302815f1985870982811083820303915050805f036121565783828161214c5761214c6128d8565b0492505050610547565b80841161216d5761216d6003851502601118612312565b5f848688095f868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b5f6001600160401b0382111561208f57604080516306dfcc6560e41b81526004810191909152602481018390526044016107ab565b5f6001600160801b0382111561208f576040516306dfcc6560e41b815260806004820152602481018390526044016107ab565b5f61ffff82111561208f576040516306dfcc6560e41b815260106004820152602481018390526044016107ab565b5f5f82121561208f57604051635467221960e11b8152600481018390526024016107ab565b5f600181806122a285886128c1565b90505b80156122e9576122b581836128ff565b91506122c183866128c1565b6122cb87836128c1565b6122d591906128ec565b90506122e26001846128ff565b92506122a5565b6122f385836128ec565b979650505050505050565b5f612307612323565b6105dd9060016128ff565b634e487b715f52806020526024601cfd5b5f5f61232d611e74565b805490915061234a90600160c01b900463ffffffff1660016128ff565b8154611c1a9190600160a01b900463ffffffff166128c1565b60405180608001604052805f81526020015f81526020015f81526020015f81525090565b610b8180612a0f83390190565b5f5f604083850312156123a5575f5ffd5b82359150602083013580151581146123bb575f5ffd5b809150509250929050565b5f602082840312156123d6575f5ffd5b5035919050565b6001600160a01b0381168114610876575f5ffd5b5f60208284031215612401575f5ffd5b8135610547816123dd565b5f5f6040838503121561241d575f5ffd5b8235612428816123dd565b946020939093013593505050565b5f5f5f60608486031215612448575f5ffd5b83359250602084013591506040840135612461816123dd565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156124a2576124a261246c565b60405290565b604080519081016001600160401b03811182821017156124a2576124a261246c565b604051601f8201601f191681016001600160401b03811182821017156124f2576124f261246c565b604052919050565b8035612505816123dd565b919050565b5f5f5f6060848603121561251c575f5ffd5b8335612527816123dd565b925060208401356001600160401b03811115612541575f5ffd5b8401601f81018613612551575f5ffd5b80356001600160401b0381111561256a5761256a61246c565b8060051b61257a602082016124ca565b91825260208184018101929081019089841115612595575f5ffd5b6020850194505b838510156125bb5784358083526020958601959093509091019061259c565b80965050505050506125cf604085016124fa565b90509250925092565b63ffffffff81168114610876575f5ffd5b80356001600160601b0381168114612505575f5ffd5b5f5f828403610100811215612612575f5ffd5b608081121561261f575f5ffd5b50612628612480565b8335612633816123dd565b81526020840135612643816125d8565b60208201526040840135612656816123dd565b6040820152612667606085016125e9565b60608201529150609f8301841361267c575f5ffd5b6126846124a8565b80610100850186811115612696575f5ffd5b608086015b818110156126ed57604081890312156126b2575f5ffd5b6126ba6124a8565b81356126c5816123dd565b81526126d3602083016125e9565b60208201528085525060208401935060408101905061269b565b5093969095509350505050565b5f5f6040838503121561270b575f5ffd5b8235612716816123dd565b915060208301356123bb816123dd565b5f5f60408385031215612737575f5ffd5b8235915060208301356123bb816123dd565b5f604082840312801561275a575f5ffd5b506127636124a8565b823561276e816125d8565b815261277c602084016125e9565b60208201529392505050565b5f60208284031215612798575f5ffd5b813561ffff81168114610547575f5ffd5b5f60a08284031280156127ba575f5ffd5b5060405160a081016001600160401b03811182821017156127dd576127dd61246c565b60405282356127eb816125d8565b815260208301356127fb816125d8565b6020820152604083013561280e816125d8565b60408201526060830135612821816125d8565b60608201526080830135612834816125d8565b60808201529392505050565b6001600160a01b0391909116815260200190565b5f6080828403128015612865575f5ffd5b5061286e612480565b8235815260208084013590820152604080840135908201526060928301359281019290925250919050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176104c9576104c96128ad565b634e487b7160e01b5f52601260045260245ffd5b5f826128fa576128fa6128d8565b500490565b808201808211156104c9576104c96128ad565b5f60018201612923576129236128ad565b5060010190565b5f6020828403121561293a575f5ffd5b5051919050565b5f600160ff1b8201612955576129556128ad565b505f0390565b63ffffffff818116838216029081169081811461297a5761297a6128ad565b5092915050565b818103818111156104c9576104c96128ad565b63ffffffff81811683821601908111156104c9576104c96128ad565b5f82518060208501845e5f920191825250919050565b5f826129d4576129d46128d8565b500690565b634e487b7160e01b5f52602160045260245ffd5b5f60ff8316806129ff576129ff6128d8565b8060ff8416069150509291505056fe610140604052348015610010575f5ffd5b50604051610b81380380610b8183398101604081905261002f91610143565b5f816080015163ffffffff1611610059576040516318dbcf2b60e21b815260040160405180910390fd5b5f816060015163ffffffff1611610083576040516318dbcf2b60e21b815260040160405180910390fd5b5f816020015163ffffffff16116100ad576040516318dbcf2b60e21b815260040160405180910390fd5b806080015163ffffffff16816060015163ffffffff1611156100e2576040516318dbcf2b60e21b815260040160405180910390fd5b6001600160a01b039091166080908152815163ffffffff90811660a0526020830151811660c0526040830151811660e0526060830151811661010052910151166101205261020d565b805163ffffffff8116811461013e575f5ffd5b919050565b5f5f82840360c0811215610155575f5ffd5b83516001600160a01b038116811461016b575f5ffd5b925060a0601f198201121561017e575f5ffd5b5060405160a081016001600160401b03811182821017156101ad57634e487b7160e01b5f52604160045260245ffd5b6040526101bc6020850161012b565b81526101ca6040850161012b565b60208201526101db6060850161012b565b60408201526101ec6080850161012b565b60608201526101fd60a0850161012b565b6080820152809150509250929050565b60805160a05160c05160e05161010051610120516108d36102ae5f395f8181610520015281816106800152818161071c015261077301525f81816104ec01528181610744015261079901525f81816104b801526106df01525f818161038a015281816104840152818161065801526106ab01525f8181610354015261045001525f818160b8015281816101a60152818161023b015261028f01526108d35ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c80634fd90e56146100595780638e3356ce146100925780639611c5c2146100b3578063c3f909d4146100f2578063dfff3ebc14610159575b5f5ffd5b61006c6100673660046107d4565b61016c565b604080518251815260209283015163ffffffff1692810192909252015b60405180910390f35b6100a56100a03660046107d4565b61022f565b604051908152602001610089565b6100da7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610089565b6100fa610416565b60405161008991905f60a08201905063ffffffff835116825263ffffffff602084015116602083015263ffffffff604084015116604083015263ffffffff606084015116606083015263ffffffff608084015116608083015292915050565b6100a56101673660046107d4565b610551565b604080518082019091525f80825260208201526102295f5f846001600160a01b03166001600160a01b031681526020019081526020015f207f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b97dd9e26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610200573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061022491906107fa565b61056d565b92915050565b5f336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016811461028b5760405163fe671df560e01b81526001600160a01b0390911660048201526024015b60405180910390fd5b505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b97dd9e26040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102e9573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061030d91906107fa565b6001600160a01b0384165f908152602081905260408120919250610331828461056d565b805183549192506103479163ffffffff16141590565b156103f5576103b36103ae7f0000000000000000000000000000000000000000000000000000000000000000836020015163ffffffff166103889190610825565b7f0000000000000000000000000000000000000000000000000000000000000000610605565b610617565b825463ffffffff91909116600160201b0267ffffffff000000001990911617825580516103df9061064b565b825463ffffffff191663ffffffff919091161782555b815461040d90600160201b900463ffffffff16610655565b95945050505050565b6040805160a0810182525f808252602082018190529181018290526060810182905260808101919091526040518060a001604052806104747f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016104a87f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016104dc7f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016105107f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016105447f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff169052919050565b5f61022961055e8361016c565b6020015163ffffffff16610655565b604080518082019091525f808252602082015282545f9063ffffffff166105949084610838565b6105a190620186a061084b565b604080518082019091528481528554919250906020820190600160201b900463ffffffff1683116105f3576105d583610617565b86546105ee9190600160201b900463ffffffff16610862565b6105f5565b5f5b63ffffffff169052949350505050565b5f8282188284100282185b9392505050565b5f63ffffffff821115610647576040516306dfcc6560e41b81526020600482015260248101839052604401610282565b5090565b5f61022982610617565b5f7f000000000000000000000000000000000000000000000000000000000000000082106106a457507f0000000000000000000000000000000000000000000000000000000000000000919050565b5f6106cf837f0000000000000000000000000000000000000000000000000000000000000000610838565b90505f6402540be40082610703817f000000000000000000000000000000000000000000000000000000000000000061084b565b61070d919061084b565b610717919061087e565b9050807f0000000000000000000000000000000000000000000000000000000000000000101561076a57507f00000000000000000000000000000000000000000000000000000000000000009392505050565b6107bd610797827f0000000000000000000000000000000000000000000000000000000000000000610838565b7f00000000000000000000000000000000000000000000000000000000000000006107c5565b949350505050565b5f828218828411028218610610565b5f602082840312156107e4575f5ffd5b81356001600160a01b0381168114610610575f5ffd5b5f6020828403121561080a575f5ffd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561022957610229610811565b8181038181111561022957610229610811565b808202811582820484141761022957610229610811565b63ffffffff828116828216039081111561022957610229610811565b5f8261089857634e487b7160e01b5f52601260045260245ffd5b50049056fea264697066735822122030ef18002dc9d2e9e5cca970c14cbd35af325346dbe4df9a9fbc2e5fcc2d16a564736f6c634300081e0033a264697066735822122042991e13ab932aac4d664462c5d05377b1eb08b33be605bb8d8325f392c531e464736f6c634300081e0033","sourceMap":"1152:5755:112:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;1152:5755:112;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x730000000000000000000000000000000000000000301460806040526004361061018a575f3560e01c806386a0d763116100e0578063dc1bb8f41161008f578063dc1bb8f4146103e0578063dfff3ebc146103f3578063e068d95a14610406578063e6e2844014610419578063ec14780614610438578063ed1765141461048d578063fe2a92d0146104ac575f5ffd5b806386a0d763146103405780638789a132146103485780638841c4671461035b578063a4f40ee91461037a578063bcfe1a1c14610399578063c4fb3d7c146103c5578063cf20d872146103d8575f5ffd5b8063498a4cc91161013c578063498a4cc914610287578063508ac49b146102a65780635a97eaa1146102ba5780635e5fafb3146102cd5780635f82401f146102ec578063604ef88f1461031a57806368faa7781461032d575f5ffd5b8063117044301461018e57806316a7ced5146101dd5780631df47f80146101fe57806328e07ac31461021f5780633334f7dc14610242578063385b901214610255578063483315b314610274575b5f5ffd5b6101a161019c366004612394565b6104b4565b6040516101d491908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b60405180910390f35b6101f06101eb3660046123c6565b6104cf565b6040519081526020016101d4565b818015610209575f5ffd5b5061021d6102183660046123f1565b6104d9565b005b61023261022d36600461240c565b61052d565b60405190151581526020016101d4565b610232610250366004612436565b610538565b818015610260575f5ffd5b506101f061026f36600461250a565b61054e565b6101f06102823660046123c6565b61055a565b818015610292575f5ffd5b5061021d6102a13660046125ff565b610564565b8180156102b1575f5ffd5b5061021d61057b565b6101f06102c83660046123c6565b610585565b8180156102d8575f5ffd5b506101f06102e73660046126fa565b61058f565b6102ff6102fa3660046123c6565b61059a565b604080518251815260209283015192810192909252016101d4565b6101f06103283660046123c6565b6105b6565b6101f061033b366004612726565b6105c9565b6101f06105d4565b6101f06103563660046123f1565b6105e2565b818015610366575f5ffd5b5061021d610375366004612749565b6105ec565b818015610385575f5ffd5b5061021d610394366004612788565b610644565b8180156103a4575f5ffd5b506103b86103b33660046127a9565b61069d565b6040516101d49190612840565b6103b86103d33660046123c6565b610725565b6103b861072f565b6102326103ee3660046123c6565b61074a565b6101f06104013660046123f1565b610754565b6101f0610414366004612854565b61075e565b818015610424575f5ffd5b5061021d6104333660046123c6565b610768565b6104406107ed565b6040805182516001600160a01b03908116825260208085015163ffffffff16908301528383015116918101919091526060918201516001600160601b0316918101919091526080016101d4565b818015610498575f5ffd5b5061021d6104a73660046123c6565b61086d565b6101f0610879565b6104bc612363565b6104c68383610882565b90505b92915050565b5f6104c9826108a9565b5f6104e3826108c4565b604080516001600160a01b038084168252851660208201529192507fd3890fc76afcfc31cba1dcf2c27b50e2541e4d75039c981855b5b5e03682aea0910160405180910390a15050565b5f6104c6838361091e565b5f61054484848461094c565b90505b9392505050565b5f61054484848461098f565b5f6104c982610ba3565b61056e8183610bf3565b61057782610d64565b5050565b610583610e19565b565b5f6104c982610f37565b5f6104c68383610f63565b604080518082019091525f80825260208201526104c982610fb4565b5f6104c9826105c3611033565b9061104c565b5f6104c6838361105f565b5f6105dd61112e565b905090565b5f6104c982611150565b6105f581611177565b60408051825163ffffffff1681526020808401516001600160601b0316908201527f24ea90802d5c1d10fd3da4b05f2415af510be55a0e3b385831be1851c3975869910160405180910390a150565b5f5f61064f836111fb565b915091508115610698576040805161ffff8084168252851660208201527f50cfb74385ad073f39f956bcb64fa0e087dc901b2a9dcdf8e7a1d340cbf64b74910160405180910390a15b505050565b5f5f30836040516106ad90612387565b6001600160a01b039092168252805163ffffffff908116602080850191909152820151811660408085019190915282015181166060808501919091528201518116608080850191909152909101511660a082015260c001604051809103905ff08015801561071d573d5f5f3e3d5ffd5b509392505050565b5f6104c982611366565b5f610738611419565b600301546001600160a01b0316919050565b5f6104c98261143d565b5f6104c9826114ae565b5f6104c982611527565b5f61078161077461155a565b5460c01c63ffffffff1690565b90508082818110156107b457604051630d1bff9560e21b8152600481019290925260248201526044015b60405180910390fd5b50506107bf8261157e565b60405182907faaa1053539ab4621b2aecf54a7ccf2096610ff768f32261f667aca9ae3069482905f90a25050565b604080516080810182525f808252602082018190529181018290526060810191909152610818611419565b6040805160808101825260038301546001600160a01b038082168352600160a01b9182900463ffffffff1660208401526004909401549384169282019290925291046001600160601b03166060820152919050565b610876816115d7565b50565b5f6105dd611033565b61088a612363565b5f61089484611721565b90506108a181858561175c565b949350505050565b5f6104c96108b683611915565b60501c65ffffffffffff1690565b5f6001600160a01b0382166108ec57604051638513472b60e01b815260040160405180910390fd5b5f6108f5611419565b60050180546001600160a01b039485166001600160a01b03198216179091559290921692915050565b5f6104c68261092b611419565b6001600160a01b0386165f9081526002919091016020526040902090611929565b5f5f610956611419565b5f95865260019081016020908152604080882096885295820181528587206001600160a01b039590951687529301909252509120541190565b5f5f61099a4261194c565b90505f6109a5611419565b90505f805b8651811015610b7e576109df848883815181106109c9576109c9612899565b60200260200101516119a490919063ffffffff16565b15610a028883815181106109f5576109f5612899565b60200260200101516119ae565b859091610a2b57604051632851216f60e21b8152600481019290925260248201526044016107ab565b5050610a7d878281518110610a4257610a42612899565b6020026020010151846002015f8b6001600160a01b03166001600160a01b031681526020019081526020015f2061192990919063ffffffff16565b610b7657610ad1878281518110610a9657610a96612899565b6020026020010151846002015f8b6001600160a01b03166001600160a01b031681526020019081526020015f206119e690919063ffffffff16565b5f836001015f898481518110610ae957610ae9612899565b60209081029190910181015182528181019290925260409081015f90812080546001600160801b03168252600180820185528383206001600160a01b038f168452908101909452919020549092508015610b725781548354610b5b90600160801b90046001600160801b0316836128c1565b610b6591906128ec565b610b6f90866128ff565b94505b5050505b6001016109aa565b508015610b9957610b996001600160a01b0386168883611a0e565b9695505050505050565b5f5f610bad611a60565b805490915060801c8381811115610be0576040516368dd4dfd60e11b8152600481019290925260248201526044016107ab565b5050610547610bee84611a84565b611a9e565b5f610c0f82606001516001600160601b03168360200151611abf565b90505f5b6002811015610d5e575f848260028110610c2f57610c2f612899565b602002015180519091506001600160a01b0316610c985760208101518151906001600160601b03811615610c90576040516317f4063160e21b81526001600160a01b0390921660048301526001600160601b031660248201526044016107ab565b505050610d56565b6020810151815190846001600160601b038216811015610cec57604051632ec41bf960e01b81526001600160a01b0390931660048401526001600160601b03909116602483015260448201526064016107ab565b505f9150505b82811015610d535781516001600160a01b0316868260028110610d1757610d17612899565b6020020151518351916001600160a01b0390911603610d4a57604051636a5a204560e11b81526004016107ab9190612840565b50600101610cf2565b50505b600101610c13565b50505050565b612710816020015163ffffffff161115610d9157604051633b97c27960e21b815260040160405180910390fd5b5f610d9a611419565b8251600382018054602086015163ffffffff16600160a01b9081026001600160c01b03199092166001600160a01b03948516179190911790915560408501516060909501516001600160601b03160293169290921760048301555060050180546001600160a01b0319166b4355415548584943414c4c4960401b179055565b5f610e2342611add565b90505f610e2e61155a565b60018101549091505f90610e5a90600160e01b900463ffffffff16610e5560056002611b0d565b611b18565b905082811115610e6957505050565b604080516060810182526001840154600160701b90046001600160701b03168152815180830190925248825290602080830191610eb1918101610eaa611b23565b9052611c20565b6001600160701b03168152602001610ed2610ecd866002611b18565b611c65565b63ffffffff9081169091528151600190940180546020840151604090940151909216600160e01b026001600160e01b036001600160701b03948516600160701b026001600160e01b031990941694909616939093179190911793909316179091555050565b5f610f40611419565b5f928352600101602052506040902054600160801b90046001600160801b031690565b5f5f610f6d611419565b6001600160a01b0385165f9081526020829052604090205490915080156108a1576001600160a01b038086165f908152602084905260408120556108a19085168683611a0e565b604080518082019091525f80825260208201525f610fd061155a565b9050610ff5610fde84611add565b6001830154600160e01b900463ffffffff165b1190565b61101c57600181015461101790600160701b90046001600160701b0316611c6f565b610547565b6001810154610547906001600160701b0316611c6f565b5f6105dd61103f61155a565b546001600160401b031690565b5f6104c68364e8d4a51000846001611ca9565b5f5f611069611419565b6001600160a01b0384165f908152600282016020526040902090915061108f9085611929565b1561109d575f9150506104c9565b5f84815260018083016020908152604080842080546001600160801b0316855280840183528185206001600160a01b03891686529384019092528320549092036110ec575f93505050506104c9565b805482546001600160a01b0387165f90815260018401602052604090205461112491600160801b90046001600160801b0316906128c1565b610b9991906128ec565b5f611137611419565b60040154600160a01b90046001600160601b0316919050565b5f611159611419565b6001600160a01b039092165f90815260209290925250604090205490565b612710815f015163ffffffff1611156111a357604051633b97c27960e21b815260040160405180910390fd5b5f6111ac611419565b825160038201805463ffffffff60a01b1916600160a01b63ffffffff9093168302179055602090930151600490910180546001600160a01b03166001600160601b039092169093021790915550565b5f5f5f61120661155a565b90505f611215825f0154611cf4565b9050806060015192508261ffff168561ffff1603611237575f93505050915091565b8261ffff168561ffff1611156113205760028201545f9061126c9062278d0090600160401b90046001600160401b03166128ff565b6002840154909150600160401b90046001600160401b031615806112905750804210155b81906112b25760405163777ec76b60e11b81526004016107ab91815260200190565b5060036112c561ffff86166127106128ff565b6112cf91906128c1565b60026112e161ffff89166127106128ff565b6112eb91906128c1565b11158487909161131c5760405163e4e1563360e01b815261ffff9283166004820152911660248201526044016107ab565b5050505b61ffff8516606082015261133381611d78565b825550600201805467ffffffffffffffff60401b1916600160401b426001600160401b0316021790556001939092509050565b5f5f611370611a60565b80549091506001600160801b0316831580159061138d5750808411155b818590916113b757604051631e19e11960e21b8152600481019290925260248201526044016107ab565b508490505b8181116113f5575f81815260038401602052604090205480156113e25795945050505050565b50806113ed81612912565b9150506113bc565b50604051631e19e11960e21b815260048101829052602481018590526044016107ab565b7f7da2ae3c4a8197dbe64388763d16e7945dd85ef9823a62323a7cdcce718a163790565b5f5f611447611a60565b80549091506001600160801b0381166114608260801c90565b0361146e57505f9392505050565b5f61148b6114866001600160801b03841660016128ff565b610ba3565b90505f6114978661194c565b90506114a382826119a4565b159695505050505050565b5f6114b7611419565b6004908101546040516337ffcfaf60e21b81526001600160a01b039091169163dfff3ebc916114e891869101612840565b602060405180830381865afa158015611503573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104c9919061292a565b5f6104c9825f01518360600151846040015161154391906128ff565b61154d91906128ff565b6001600160801b03611deb565b7f2e57d696f4035f6dfbf369d367f6b4aaf23baac5f6ee9a3a5207d71c56de652c90565b61158781611dfa565b505f61159161155a565b90505f6115a0825f0154611cf4565b83815290506305f5e1006115b86332f1b336856128c1565b6115c291906128ec565b60208201526115d081611d78565b9091555050565b5f6115e061155a565b90505f6115ef825f0154611cf4565b6040810151909150838060028082101561162557604051631ad480f960e11b8152600481019290925260248201526044016107ab565b505060028401545f906116459062278d00906001600160401b03166128ff565b60028601549091506001600160401b031615806116625750804210155b8190611684576040516344331fd960e01b81526004016107ab91815260200190565b506116906003846128c1565b61169b6002846128c1565b111580156116bd57506116af6002846128c1565b6116ba6003846128c1565b10155b838390916116e757604051637e42087560e01b8152600481019290925260248201526044016107ab565b5050604084018690526116f984611d78565b85555050506002909101805467ffffffffffffffff1916426001600160401b03161790555050565b5f5f61172b611a60565b80549091506117398461143d565b61174c576117478160801c90565b6108a1565b6001600160801b03169392505050565b611764612363565b5f61176d61155a565b90505f611783825f015460c01c63ffffffff1690565b90505f5f5f5f61179289610fb4565b90505f81602001516202000060036117aa91906128c1565b6117b491906128c1565b82516117c3906207a1206128c1565b6117cd91906128ff565b90506117dd816001886001611ca9565b94505061182861181861180e623d0900845f01516117f9611e74565b54600160a01b900463ffffffff166001611ca9565b6001886001611ca9565b87546001600160401b0316611b18565b92506118348484611b18565b9150505f6118418a611915565b90505f61187863ffffffff83166118608460201c65ffffffffffff1690565b61186a91906128ff565b61187388612941565b611e98565b90505f61188482611ee6565b90505f6118a061189a8684633b9aca005f611ca9565b86611b0d565b90505f8b6118b35764e8d4a510006118bc565b6118bc8e6108a9565b905060405180608001604052806118dc838561104c90919063ffffffff16565b8152602081018590526040016118f28a8461104c565b8152602001611901898461104c565b90529e9d5050505050505050505050505050565b5f61191f82611f56565b6006015492915050565b600881901c5f90815260208390526040902054600160ff83161b16151592915050565b5f5f611956611e74565b805490915061197b9063ffffffff600160801b8204811691600160a01b90041661295b565b815463ffffffff919091169061199a906001600160801b031685612981565b61054791906128ec565b5f6104c682610ff1855b5f5f6119b8611e74565b80549091506105479084906119db90600160c01b900463ffffffff166001612994565b63ffffffff16611b18565b600881901c5f90815260209290925260409091208054600160ff9093169290921b9091179055565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610698908490611ff9565b7f0958201b72d64259285941dffd868dac55267471fcc73e8a06e1fd9cf870636190565b5f6104c9611a9183611f56565b6005015463ffffffff1690565b5f611aa7611e74565b546104c990600160a01b900463ffffffff16836128ec565b5f612710611ad363ffffffff8416856128c1565b6104c691906128ec565b5f5f611ae7611e74565b805490915063ffffffff600160801b8204169061199a906001600160801b031685612981565b5f6104c68284612981565b5f6104c682846128ff565b5f617a694614808015611b4a5750737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15155b15611c185760408051600481526024810182526020810180516001600160e01b0316631f6d6ef760e01b17905290515f918291737109709ecfa91a80626ff3989d68f67f5b1dd12d91611b9c916129b0565b5f60405180830381855afa9150503d805f8114611bd4576040519150601f19603f3d011682016040523d82523d5f602084013e611bd9565b606091505b5091509150818015611bed57506020815110155b15611c0e5780806020019051810190611c06919061292a565b935050505090565b6001935050505090565b4a5b91505090565b5f5f5f90505f611c33846020015161205c565b66ffffffffffffff16901b811790506038611c50845f015161205c565b66ffffffffffffff16901b1761054781612093565b5f6104c9826120c6565b604080518082019091525f8082526020820152506040805180820190915266ffffffffffffff603883901c81168252909116602082015290565b5f611cd6611cb6836120f6565b8015611cd157505f8480611ccc57611ccc6128d8565b868809115b151590565b611ce1868686612122565b611ceb91906128ff565b95945050505050565b611d1b60405180608001604052805f81526020015f81526020015f81526020015f81525090565b6040518060800160405280611d368460c01c63ffffffff1690565b8152602001611d4e8460401c6001600160801b031690565b81526020016001600160401b0384168152602001611d708460e01c61ffff1690565b905292915050565b5f5f5f9050611d8a83604001516121d8565b6001600160401b0316811790506040611da6846020015161220d565b6001600160801b0316901b8117905060c0611dc3845f01516120c6565b63ffffffff16901b8117905060e0611dde8460600151612240565b61ffff16901b1792915050565b5f8282188284100282186104c6565b5f60018280611e25576040516372e1574f60e01b8152600481019290925260248201526044016107ab565b505f9050611e348360026128c1565b905063ffffffff8181811115611e6b576040516303fd5c0b60e41b815263ffffffff909216600483015260248201526044016107ab565b50909392505050565b7fcc2bde3d21ba778aa5c156bb6fc47381978b0054c8a1ef73f44234164324cbe090565b5f5f8212611eba57611ea98261226e565b611eb390846128ff565b90506104c9565b60ff82901d8083011880841115611edd57611ed58185612981565b9150506104c9565b505f9392505050565b5f5f611ef061155a565b90505f611f09825f015460401c6001600160801b031690565b90505f611f2085611f1b8460646128c1565b611deb565b9050611ceb611f36845f015460e01c61ffff1690565b611f42906127106128ff565b611f4f90620186a06128c1565b8284612293565b5f5f611f6a611f63611a60565b5460801c90565b90505f611f756122fe565b90505f611f8282866128ff565b90505f838611158015611f9457508184105b905085848383611fc857604051638711786b60e01b81526004810193909352602483019190915260448201526064016107ab565b505050611fd3611a60565b6002015f611fe185896129c6565b81526020019081526020015f20945050505050919050565b5f5f60205f8451602086015f885af180612018576040513d5f823e3d81fd5b50505f513d9150811561202f57806001141561203c565b6001600160a01b0384163b155b15610d5e5783604051635274afe760e01b81526004016107ab9190612840565b5f66ffffffffffffff82111561208f576040516306dfcc6560e41b815260386004820152602481018390526044016107ab565b5090565b5f6001600160701b0382111561208f576040516306dfcc6560e41b815260706004820152602481018390526044016107ab565b5f63ffffffff82111561208f576040516306dfcc6560e41b815260206004820152602481018390526044016107ab565b5f600282600381111561210b5761210b6129d9565b61211591906129ed565b60ff166001149050919050565b5f838302815f1985870982811083820303915050805f036121565783828161214c5761214c6128d8565b0492505050610547565b80841161216d5761216d6003851502601118612312565b5f848688095f868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b5f6001600160401b0382111561208f57604080516306dfcc6560e41b81526004810191909152602481018390526044016107ab565b5f6001600160801b0382111561208f576040516306dfcc6560e41b815260806004820152602481018390526044016107ab565b5f61ffff82111561208f576040516306dfcc6560e41b815260106004820152602481018390526044016107ab565b5f5f82121561208f57604051635467221960e11b8152600481018390526024016107ab565b5f600181806122a285886128c1565b90505b80156122e9576122b581836128ff565b91506122c183866128c1565b6122cb87836128c1565b6122d591906128ec565b90506122e26001846128ff565b92506122a5565b6122f385836128ec565b979650505050505050565b5f612307612323565b6105dd9060016128ff565b634e487b715f52806020526024601cfd5b5f5f61232d611e74565b805490915061234a90600160c01b900463ffffffff1660016128ff565b8154611c1a9190600160a01b900463ffffffff166128c1565b60405180608001604052805f81526020015f81526020015f81526020015f81525090565b610b8180612a0f83390190565b5f5f604083850312156123a5575f5ffd5b82359150602083013580151581146123bb575f5ffd5b809150509250929050565b5f602082840312156123d6575f5ffd5b5035919050565b6001600160a01b0381168114610876575f5ffd5b5f60208284031215612401575f5ffd5b8135610547816123dd565b5f5f6040838503121561241d575f5ffd5b8235612428816123dd565b946020939093013593505050565b5f5f5f60608486031215612448575f5ffd5b83359250602084013591506040840135612461816123dd565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156124a2576124a261246c565b60405290565b604080519081016001600160401b03811182821017156124a2576124a261246c565b604051601f8201601f191681016001600160401b03811182821017156124f2576124f261246c565b604052919050565b8035612505816123dd565b919050565b5f5f5f6060848603121561251c575f5ffd5b8335612527816123dd565b925060208401356001600160401b03811115612541575f5ffd5b8401601f81018613612551575f5ffd5b80356001600160401b0381111561256a5761256a61246c565b8060051b61257a602082016124ca565b91825260208184018101929081019089841115612595575f5ffd5b6020850194505b838510156125bb5784358083526020958601959093509091019061259c565b80965050505050506125cf604085016124fa565b90509250925092565b63ffffffff81168114610876575f5ffd5b80356001600160601b0381168114612505575f5ffd5b5f5f828403610100811215612612575f5ffd5b608081121561261f575f5ffd5b50612628612480565b8335612633816123dd565b81526020840135612643816125d8565b60208201526040840135612656816123dd565b6040820152612667606085016125e9565b60608201529150609f8301841361267c575f5ffd5b6126846124a8565b80610100850186811115612696575f5ffd5b608086015b818110156126ed57604081890312156126b2575f5ffd5b6126ba6124a8565b81356126c5816123dd565b81526126d3602083016125e9565b60208201528085525060208401935060408101905061269b565b5093969095509350505050565b5f5f6040838503121561270b575f5ffd5b8235612716816123dd565b915060208301356123bb816123dd565b5f5f60408385031215612737575f5ffd5b8235915060208301356123bb816123dd565b5f604082840312801561275a575f5ffd5b506127636124a8565b823561276e816125d8565b815261277c602084016125e9565b60208201529392505050565b5f60208284031215612798575f5ffd5b813561ffff81168114610547575f5ffd5b5f60a08284031280156127ba575f5ffd5b5060405160a081016001600160401b03811182821017156127dd576127dd61246c565b60405282356127eb816125d8565b815260208301356127fb816125d8565b6020820152604083013561280e816125d8565b60408201526060830135612821816125d8565b60608201526080830135612834816125d8565b60808201529392505050565b6001600160a01b0391909116815260200190565b5f6080828403128015612865575f5ffd5b5061286e612480565b8235815260208084013590820152604080840135908201526060928301359281019290925250919050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176104c9576104c96128ad565b634e487b7160e01b5f52601260045260245ffd5b5f826128fa576128fa6128d8565b500490565b808201808211156104c9576104c96128ad565b5f60018201612923576129236128ad565b5060010190565b5f6020828403121561293a575f5ffd5b5051919050565b5f600160ff1b8201612955576129556128ad565b505f0390565b63ffffffff818116838216029081169081811461297a5761297a6128ad565b5092915050565b818103818111156104c9576104c96128ad565b63ffffffff81811683821601908111156104c9576104c96128ad565b5f82518060208501845e5f920191825250919050565b5f826129d4576129d46128d8565b500690565b634e487b7160e01b5f52602160045260245ffd5b5f60ff8316806129ff576129ff6128d8565b8060ff8416069150509291505056fe610140604052348015610010575f5ffd5b50604051610b81380380610b8183398101604081905261002f91610143565b5f816080015163ffffffff1611610059576040516318dbcf2b60e21b815260040160405180910390fd5b5f816060015163ffffffff1611610083576040516318dbcf2b60e21b815260040160405180910390fd5b5f816020015163ffffffff16116100ad576040516318dbcf2b60e21b815260040160405180910390fd5b806080015163ffffffff16816060015163ffffffff1611156100e2576040516318dbcf2b60e21b815260040160405180910390fd5b6001600160a01b039091166080908152815163ffffffff90811660a0526020830151811660c0526040830151811660e0526060830151811661010052910151166101205261020d565b805163ffffffff8116811461013e575f5ffd5b919050565b5f5f82840360c0811215610155575f5ffd5b83516001600160a01b038116811461016b575f5ffd5b925060a0601f198201121561017e575f5ffd5b5060405160a081016001600160401b03811182821017156101ad57634e487b7160e01b5f52604160045260245ffd5b6040526101bc6020850161012b565b81526101ca6040850161012b565b60208201526101db6060850161012b565b60408201526101ec6080850161012b565b60608201526101fd60a0850161012b565b6080820152809150509250929050565b60805160a05160c05160e05161010051610120516108d36102ae5f395f8181610520015281816106800152818161071c015261077301525f81816104ec01528181610744015261079901525f81816104b801526106df01525f818161038a015281816104840152818161065801526106ab01525f8181610354015261045001525f818160b8015281816101a60152818161023b015261028f01526108d35ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c80634fd90e56146100595780638e3356ce146100925780639611c5c2146100b3578063c3f909d4146100f2578063dfff3ebc14610159575b5f5ffd5b61006c6100673660046107d4565b61016c565b604080518251815260209283015163ffffffff1692810192909252015b60405180910390f35b6100a56100a03660046107d4565b61022f565b604051908152602001610089565b6100da7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610089565b6100fa610416565b60405161008991905f60a08201905063ffffffff835116825263ffffffff602084015116602083015263ffffffff604084015116604083015263ffffffff606084015116606083015263ffffffff608084015116608083015292915050565b6100a56101673660046107d4565b610551565b604080518082019091525f80825260208201526102295f5f846001600160a01b03166001600160a01b031681526020019081526020015f207f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b97dd9e26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610200573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061022491906107fa565b61056d565b92915050565b5f336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016811461028b5760405163fe671df560e01b81526001600160a01b0390911660048201526024015b60405180910390fd5b505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b97dd9e26040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102e9573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061030d91906107fa565b6001600160a01b0384165f908152602081905260408120919250610331828461056d565b805183549192506103479163ffffffff16141590565b156103f5576103b36103ae7f0000000000000000000000000000000000000000000000000000000000000000836020015163ffffffff166103889190610825565b7f0000000000000000000000000000000000000000000000000000000000000000610605565b610617565b825463ffffffff91909116600160201b0267ffffffff000000001990911617825580516103df9061064b565b825463ffffffff191663ffffffff919091161782555b815461040d90600160201b900463ffffffff16610655565b95945050505050565b6040805160a0810182525f808252602082018190529181018290526060810182905260808101919091526040518060a001604052806104747f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016104a87f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016104dc7f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016105107f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016105447f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff169052919050565b5f61022961055e8361016c565b6020015163ffffffff16610655565b604080518082019091525f808252602082015282545f9063ffffffff166105949084610838565b6105a190620186a061084b565b604080518082019091528481528554919250906020820190600160201b900463ffffffff1683116105f3576105d583610617565b86546105ee9190600160201b900463ffffffff16610862565b6105f5565b5f5b63ffffffff169052949350505050565b5f8282188284100282185b9392505050565b5f63ffffffff821115610647576040516306dfcc6560e41b81526020600482015260248101839052604401610282565b5090565b5f61022982610617565b5f7f000000000000000000000000000000000000000000000000000000000000000082106106a457507f0000000000000000000000000000000000000000000000000000000000000000919050565b5f6106cf837f0000000000000000000000000000000000000000000000000000000000000000610838565b90505f6402540be40082610703817f000000000000000000000000000000000000000000000000000000000000000061084b565b61070d919061084b565b610717919061087e565b9050807f0000000000000000000000000000000000000000000000000000000000000000101561076a57507f00000000000000000000000000000000000000000000000000000000000000009392505050565b6107bd610797827f0000000000000000000000000000000000000000000000000000000000000000610838565b7f00000000000000000000000000000000000000000000000000000000000000006107c5565b949350505050565b5f828218828411028218610610565b5f602082840312156107e4575f5ffd5b81356001600160a01b0381168114610610575f5ffd5b5f6020828403121561080a575f5ffd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561022957610229610811565b8181038181111561022957610229610811565b808202811582820484141761022957610229610811565b63ffffffff828116828216039081111561022957610229610811565b5f8261089857634e487b7160e01b5f52601260045260245ffd5b50049056fea264697066735822122030ef18002dc9d2e9e5cca970c14cbd35af325346dbe4df9a9fbc2e5fcc2d16a564736f6c634300081e0033a264697066735822122042991e13ab932aac4d664462c5d05377b1eb08b33be605bb8d8325f392c531e464736f6c634300081e0033","sourceMap":"1152:5755:112:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5481:220;;;;;;:::i;:::-;;:::i;:::-;;;;;;697:13:182;;679:32;;767:4;755:17;;;749:24;727:20;;;720:54;830:4;818:17;;;812:24;790:20;;;783:54;893:4;881:17;;;875:24;853:20;;;846:54;;;;666:3;651:19;;446:460;5481:220:112;;;;;;;;6263:181;;;;;;:::i;:::-;;:::i;:::-;;;1335:25:182;;;1323:2;1308:18;6263:181:112;1142:224:182;3149:223:112;;;;;;;;;;-1:-1:-1;3149:223:112;;;;;:::i;:::-;;:::i;:::-;;4870:141;;;;;;:::i;:::-;;:::i;:::-;;;2332:14:182;;2325:22;2307:41;;2295:2;2280:18;4870:141:112;2159:195:182;4695:171:112;;;;;;:::i;:::-;;:::i;3548:189::-;;;;;;;;;;-1:-1:-1;3548:189:112;;;;;:::i;:::-;;:::i;5821:153::-;;;;;;:::i;:::-;;:::i;1255:291::-;;;;;;;;;;-1:-1:-1;1255:291:112;;;;;:::i;:::-;;:::i;2349:81::-;;;;;;;;;;;;;:::i;4531:160::-;;;;;;:::i;:::-;;:::i;3376:168::-;;;;;;;;;;-1:-1:-1;3376:168:112;;;;;:::i;:::-;;:::i;6127:132::-;;;;;;:::i;:::-;;:::i;:::-;;;;8718:13:182;;8700:32;;8788:4;8776:17;;;8770:24;8748:20;;;8741:54;;;;8673:18;6127:132:112;8490:311:182;6566:190:112;;;;;;:::i;:::-;;:::i;4077:182::-;;;;;;:::i;:::-;;:::i;5015:112::-;;;:::i;4387:140::-;;;;;;:::i;:::-;;:::i;2185:160::-;;;;;;;;;;-1:-1:-1;2185:160:112;;;;;:::i;:::-;;:::i;2923:222::-;;;;;;;;;;-1:-1:-1;2923:222:112;;;;;:::i;:::-;;:::i;3741:235::-;;;;;;;;;;-1:-1:-1;3741:235:112;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;5978:145::-;;;;;;:::i;:::-;;:::i;5253:140::-;;;:::i;5705:112::-;;;;;;:::i;:::-;;:::i;4263:120::-;;;;;;:::i;:::-;;:::i;6760:145::-;;;;;;:::i;:::-;;:::i;2574:345::-;;;;;;;;;;-1:-1:-1;2574:345:112;;;;;:::i;:::-;;:::i;5131:118::-;;;:::i;:::-;;;;13369:13:182;;-1:-1:-1;;;;;13365:39:182;;;13347:58;;13465:4;13453:17;;;13447:24;13473:10;13443:41;13421:20;;;13414:71;13533:17;;;13527:24;13523:50;13501:20;;;13494:80;;;;13634:4;13622:17;;;13616:24;-1:-1:-1;;;;;13612:57:182;13590:20;;;13583:87;;;;13334:3;13319:19;5131:118:112;13130:546:182;2434:136:112;;;;;;;;;;-1:-1:-1;2434:136:112;;;;;:::i;:::-;;:::i;6448:114::-;;;:::i;5481:220::-;5591:27;;:::i;:::-;5635:61;5672:10;5684:11;5635:36;:61::i;:::-;5628:68;;5481:220;;;;;:::o;6263:181::-;6352:17;6384:55;6421:17;6384:36;:55::i;3149:223::-;3220:20;3243:48;3280:10;3243:36;:48::i;:::-;3302:65;;;-1:-1:-1;;;;;14354:32:182;;;14336:51;;14423:32;;14418:2;14403:18;;14396:60;3220:71:112;;-1:-1:-1;3302:65:112;;14309:18:182;3302:65:112;;;;;;;3214:158;3149:223;:::o;4870:141::-;4947:4;4966:40;4990:7;4999:6;4966:23;:40::i;4695:171::-;4791:4;4810:51;4836:6;4844:7;4853;4810:25;:51::i;:::-;4803:58;;4695:171;;;;;;:::o;3548:189::-;3653:7;3675:57;3704:7;3713;3722:9;3675:28;:57::i;5821:153::-;5902:5;5922:47;5951:17;5922:28;:47::i;1255:291::-;1424:76;1466:24;1492:7;1424:41;:76::i;:::-;1506:35;1533:7;1506:26;:35::i;:::-;1255:291;;:::o;2349:81::-;2396:29;:27;:29::i;:::-;2349:81::o;4531:160::-;4612:7;4634:52;4679:6;4634:44;:52::i;3376:168::-;3463:7;3485:54;3517:10;3529:9;3485:31;:54::i;6127:132::-;-1:-1:-1;;;;;;;;;;;;;;;;;6224:30:112;6243:10;6224:18;:30::i;6566:190::-;6665:13;6693:58;6735:15;6693:30;:28;:30::i;:::-;:41;;:58::i;4077:182::-;4173:7;4195:59;4238:6;4246:7;4195:42;:59::i;5015:112::-;5069:7;5091:31;:29;:31::i;:::-;5084:38;;5015:112;:::o;4387:140::-;4459:7;4481:41;4511:10;4481:29;:41::i;2185:160::-;2258:31;2281:7;2258:22;:31::i;:::-;2300:40;;;14711:13:182;;14726:10;14707:30;14689:49;;14798:4;14786:17;;;14780:24;-1:-1:-1;;;;;14776:57:182;14754:20;;;14747:87;2300:40:112;;14662:18:182;2300:40:112;;;;;;;2185:160;:::o;2923:222::-;2985:12;2999:13;3016:36;3047:4;3016:30;:36::i;:::-;2984:68;;;;3062:7;3058:83;;;3084:50;;;15045:6:182;15033:19;;;15015:38;;15089:19;;15084:2;15069:18;;15062:47;3084:50:112;;14988:18:182;3084:50:112;;;;;;;3058:83;2978:167;;2923:222;:::o;3741:235::-;3822:12;3842:21;3912:4;3920:7;3866:62;;;;;:::i;:::-;-1:-1:-1;;;;;15414:32:182;;;15396:51;;15487:13;;15502:10;15483:30;;;15478:2;15463:18;;;15456:58;;;;15560:15;;15554:22;15550:39;;15545:2;15530:18;;;15523:67;;;;15636:15;;15630:22;15626:39;;15621:2;15606:18;;;15599:67;;;;15713:15;;15707:22;15703:39;;15697:3;15682:19;;;15675:68;;;;15790:16;;;15784:23;15780:40;15434:3;15759:19;;15752:69;15383:3;15368:19;3866:62:112;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3842:86:112;3741:235;-1:-1:-1;;;3741:235:112:o;5978:145::-;6054:7;6076:42;6100:17;6076:23;:42::i;5253:140::-;5308:18;5341:22;:20;:22::i;:::-;:29;;:47;-1:-1:-1;;;;;5341:47:112;;5253:140;-1:-1:-1;5253:140:112:o;5705:112::-;5767:4;5786:26;5808:3;5786:21;:26::i;4263:120::-;4325:7;4347:31;4370:7;4347:22;:31::i;6760:145::-;6846:7;6868:32;6888:11;6868:19;:32::i;2574:345::-;2636:25;2664:42;:19;:17;:19::i;:::-;:26;3653:3:96;3601:55;3334:10;3600:72;;3490:187;2664:42:112;2636:70;-1:-1:-1;2636:70:112;2720:11;:32;;;;2712:107;;;;-1:-1:-1;;;2712:107:112;;;;;16006:25:182;;;;16047:18;;;16040:34;15979:18;;2712:107:112;;;;;;;;;;;2825:36;2849:11;2825:23;:36::i;:::-;2872:42;;2902:11;;2872:42;;;;;2630:289;2574:345;:::o;5131:118::-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5215:22:112;:20;:22::i;:::-;5208:36;;;;;;;;5215:29;;;5208:36;-1:-1:-1;;;;;5208:36:112;;;;;-1:-1:-1;;;5208:36:112;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5208:36:112;;;;;;;-1:-1:-1;5131:118:112:o;2434:136::-;2513:52;2545:19;2513:31;:52::i;:::-;2434:136;:::o;6448:114::-;6504:8;6527:30;:28;:30::i;27317:329:110:-;27427:27;;:::i;:::-;27464:28;27495:54;27538:10;27495:42;:54::i;:::-;27464:85;;27562:79;27595:20;27617:10;27629:11;27562:32;:79::i;:::-;27555:86;27317:329;-1:-1:-1;;;;27317:329:110:o;17084:208:107:-;17173:17;17228:58;:38;17248:17;17228:19;:38::i;:::-;3126:2:97;3074:54;2444:14;3073:71;;2959:190;4822:353:113;4896:20;-1:-1:-1;;;;;4932:24:113;;4924:82;;;;-1:-1:-1;;;4924:82:113;;;;;;;;;;;;5012:35;5050:12;:10;:12::i;:::-;5083:34;;;;-1:-1:-1;;;;;5123:47:113;;;-1:-1:-1;;;;;;5123:47:113;;;;;;5083:34;;;;;4822:353;-1:-1:-1;;4822:353:113:o;13623:162::-;13700:4;13719:61;13772:6;13719:12;:10;:12::i;:::-;-1:-1:-1;;;;;13719:35:113;;;;;;:26;;;;;:35;;;;;;:39;:61::i;13428:191::-;13524:4;13613:1;13543:12;:10;:12::i;:::-;:33;;;;:25;;;;:33;;;;;;;;:51;;;:42;;;:51;;;;;-1:-1:-1;;;;;13543:67:113;;;;;;:58;;:67;;;-1:-1:-1;13543:67:113;;;:71;;13428:191::o;6226:1116::-;6331:7;6346:18;6367:52;6382:15;6367:50;:52::i;:::-;6346:73;;6426:35;6464:12;:10;:12::i;:::-;6426:50;-1:-1:-1;6483:26:113;;6519:687;6543:7;:14;6539:1;:18;6519:687;;;6590:49;6626:12;6590:7;6598:1;6590:10;;;;;;;;:::i;:::-;;;;;;;:35;;:49;;;;:::i;:::-;6589:50;6680:28;:7;6688:1;6680:10;;;;;;;;:::i;:::-;;;;;;;:26;:28::i;:::-;6710:12;6572:159;;;;;;-1:-1:-1;;;6572:159:113;;;;;16006:25:182;;;;16047:18;;;16040:34;15979:18;;6572:159:113;15832:248:182;6572:159:113;;;6744:66;6798:7;6806:1;6798:10;;;;;;;;:::i;:::-;;;;;;;6744:13;:27;;:36;6772:7;-1:-1:-1;;;;;6744:36:113;-1:-1:-1;;;;;6744:36:113;;;;;;;;;;;;:40;;:66;;;;:::i;:::-;6822:8;6740:99;6846:66;6900:7;6908:1;6900:10;;;;;;;;:::i;:::-;;;;;;;6846:13;:27;;:36;6874:7;-1:-1:-1;;;;;6846:36:113;-1:-1:-1;;;;;6846:36:113;;;;;;;;;;;;:40;;:66;;;;:::i;:::-;6921:22;6946:13;:26;;:38;6973:7;6981:1;6973:10;;;;;;;;:::i;:::-;;;;;;;;;;;;6946:38;;;;;;;;;;;;;-1:-1:-1;6946:38:113;;;7032:21;;-1:-1:-1;;;;;7032:21:113;7021:33;;:10;;;;:33;;;;;-1:-1:-1;;;;;7079:18:113;;;;:9;;;:18;;;;;;;6946:38;;-1:-1:-1;7109:10:113;;7105:95;;7175:15;;7163:9;;7154:18;;-1:-1:-1;;;7163:9:113;;-1:-1:-1;;;;;7163:9:113;7154:6;:18;:::i;:::-;:36;;;;:::i;:::-;7131:60;;;;:::i;:::-;;;7105:95;6564:642;;;6519:687;6559:3;;6519:687;;;-1:-1:-1;7216:22:113;;7212:94;;7248:51;-1:-1:-1;;;;;7248:22:113;;7271:7;7280:18;7248:22;:51::i;:::-;7319:18;6226:1116;-1:-1:-1;;;;;;6226:1116:113:o;21264:386:115:-;21345:5;21358:31;21392:19;:17;:19::i;:::-;21453:16;;;;-1:-1:-1;693:3:95;641:55;21432:50:115;;;;;21417:167;;;;-1:-1:-1;;;21417:167:115;;;;;16006:25:182;;;;16047:18;;;16040:34;15979:18;;21417:167:115;15832:248:182;21417:167:115;;;21597:48;:32;21611:17;21597:13;:32::i;:::-;:46;:48::i;17095:1103:113:-;17276:30;17309:70;17320:13;:30;;;-1:-1:-1;;;;;17309:70:113;17352:13;:26;;;17309:10;:70::i;:::-;17276:103;-1:-1:-1;17391:9:113;17386:808;2263:1;17406;:33;17386:808;;;17454:37;17494:10;17505:1;17494:13;;;;;;;:::i;:::-;;;;;17519:16;;17494:13;;-1:-1:-1;;;;;;17519:30:113;17515:232;;17580:23;;;;17668:16;;;-1:-1:-1;;;;;17580:28:113;;;17561:159;;;;-1:-1:-1;;;17561:159:113;;-1:-1:-1;;;;;17409:32:182;;;17561:159:113;;;17391:51:182;-1:-1:-1;;;;;17478:39:182;17458:18;;;17451:67;17364:18;;17561:159:113;17218:306:182;17561:159:113;;;17730:8;;;17515:232;17772:23;;;;17895:16;;;17799:22;-1:-1:-1;;;;;17772:49:113;;;-1:-1:-1;17772:49:113;17755:223;;;;-1:-1:-1;;;17755:223:113;;-1:-1:-1;;;;;17748:32:182;;;17755:223:113;;;17730:51:182;-1:-1:-1;;;;;17817:39:182;;;17797:18;;;17790:67;17873:18;;;17866:34;17703:18;;17755:223:113;17529:377:182;17755:223:113;-1:-1:-1;17992:9:113;;-1:-1:-1;;17987:201:113;18011:1;18007;:5;17987:201;;;18074:16;;-1:-1:-1;;;;;18048:42:113;:10;18059:1;18048:13;;;;;;;:::i;:::-;;;;;:22;18152:16;;;-1:-1:-1;;;;;18048:42:113;;;;18029:150;;;;-1:-1:-1;;;18029:150:113;;;;;;;;:::i;:::-;-1:-1:-1;18014:3:113;;17987:201;;;;17446:748;17386:808;17441:3;;17386:808;;;;17270:928;17095:1103;;:::o;4169:430::-;4283:6;4258:7;:20;;;4247:42;;;;4239:92;;;;-1:-1:-1;;;4239:92:113;;;;;;;;;;;;4337:35;4375:12;:10;:12::i;:::-;4393:30;;:20;;;:30;;;;;;;;-1:-1:-1;;;4393:30:113;;;-1:-1:-1;;;;;;4393:30:113;;;-1:-1:-1;;;;;4393:30:113;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4393:30:113;;;;;;;;;;;;-1:-1:-1;4525:34:113;;:69;;-1:-1:-1;;;;;;4525:69:113;-1:-1:-1;;;4525:69:113;;;4169:430::o;12562:620:107:-;12609:9;12621:51;12636:15;12621:49;:51::i;:::-;12609:63;;12738:25;12766:12;:10;:12::i;:::-;12807:26;;;:39;:26;;-1:-1:-1;12785:19:107;;12807:71;;-1:-1:-1;;;12807:39:107;;;;12863:14;6750:1;6795;12863:14;:::i;:::-;12807:71;:::i;:::-;12785:93;-1:-1:-1;;;;12885:48:107;;;12920:7;;;12562:620::o;12885:48::-;12968:209;;;;;;;;12999:26;;;:31;-1:-1:-1;;;12999:31:107;;-1:-1:-1;;;;;12999:31:107;12968:209;;13044:70;;;;;;;;13064:13;13044:70;;12968:209;;;;;;13044:81;;:70;;13088:24;:22;:24::i;:::-;13044:70;;:79;:81::i;:::-;-1:-1:-1;;;;;12968:209:107;;;;;13147:23;13148:10;:4;6795:1;13148:10;:::i;:::-;13147:21;:23::i;:::-;12968:209;;;;;;;12939:238;;:26;;;;:238;;;;;;;;;;;;;;-1:-1:-1;;;12939:238:107;-1:-1:-1;;;;;;;;;;12939:238:107;;;-1:-1:-1;;;12939:238:107;-1:-1:-1;;;;;;12939:238:107;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12562:620:107:o;13122:149:113:-;13203:7;13225:12;:10;:12::i;:::-;:33;;;;:25;;:33;;-1:-1:-1;13225:33:113;;;:41;-1:-1:-1;;;13225:41:113;;-1:-1:-1;;;;;13225:41:113;;13122:149::o;5847:375::-;5934:7;5949:35;5987:12;:10;:12::i;:::-;-1:-1:-1;;;;;6022:42:113;;6005:14;6022:42;;;;;;;;;;;5949:50;;-1:-1:-1;6075:10:113;;6071:127;;-1:-1:-1;;;;;6095:42:113;;;6140:1;6095:42;;;;;;;;;;:46;6149:42;;:22;;6126:10;6184:6;6149:22;:42::i;13953:338:107:-;-1:-1:-1;;;;;;;;;;;;;;;;;14043:25:107;14071:12;:10;:12::i;:::-;14043:40;;14096:85;:30;:10;:28;:30::i;:::-;14129:26;;;:39;-1:-1:-1;;;14129:39:107;;;;:52;-1:-1:-1;1759:33:180;1694:101;14096:85:107;:190;;14242:26;;;:31;:44;;-1:-1:-1;;;14242:31:107;;-1:-1:-1;;;;;14242:31:107;:42;:44::i;:::-;14096:190;;;14190:26;;;:30;:43;;-1:-1:-1;;;;;14190:30:107;:41;:43::i;16812:127::-;16868:8;16891:43;:12;:10;:12::i;:::-;:19;-1:-1:-1;;;;;4019:63:96;;3886:202;2850:334;2948:13;3002:171;3039:9;1062:4;3121:15;3147:18;3002:11;:171::i;14032:633:113:-;14128:7;14143:35;14181:12;:10;:12::i;:::-;-1:-1:-1;;;;;14204:36:113;;;;;;:27;;;:36;;;;;14143:50;;-1:-1:-1;14204:62:113;;14258:6;14204:40;:62::i;:::-;14200:91;;;14283:1;14276:8;;;;;14200:91;14297:23;14323:34;;;:26;;;;:34;;;;;;;;14404:22;;-1:-1:-1;;;;;14404:22:113;14392:35;;:11;;;:35;;;;;-1:-1:-1;;;;;14548:18:113;;;;:9;;;:18;;;;;;14323:34;;14548:23;14544:52;;14588:1;14581:8;;;;;;;14544:52;14644:15;;14631:10;;-1:-1:-1;;;;;14610:18:113;;14644:15;14610:18;;;:9;;;:18;;;;;;:31;;-1:-1:-1;;;14631:10:113;;-1:-1:-1;;;;;14631:10:113;;14610:31;:::i;:::-;:49;;;;:::i;13789:117::-;13843:7;13865:12;:10;:12::i;:::-;:36;;;-1:-1:-1;;;13865:36:113;;-1:-1:-1;;;;;13865:36:113;;;-1:-1:-1;13789:117:113:o;12978:140::-;13050:7;13072:12;:10;:12::i;:::-;-1:-1:-1;;;;;13072:41:113;;;:29;:41;;;;;;;;-1:-1:-1;13072:41:113;;;;;12978:140::o;5485:358::-;5602:6;5577:7;:20;;;5566:42;;;;5558:92;;;;-1:-1:-1;;;5558:92:113;;;;;;;;;;;;5656:35;5694:12;:10;:12::i;:::-;5748:20;;5712;;;:56;;-1:-1:-1;;;;5712:56:113;-1:-1:-1;;;5712:56:113;;;;;;;;;5814:24;;;;;5774:37;;;;:64;;-1:-1:-1;;;;;5774:64:113;-1:-1:-1;;;;;5774:64:113;;;;;;;;;;-1:-1:-1;5485:358:113:o;11528:1030:107:-;11592:12;11606:13;11627:25;11655:12;:10;:12::i;:::-;11627:40;;11673:23;11699:28;:8;:15;;;:26;:28::i;:::-;11673:54;;11750:6;:27;;;11734:44;;11797:6;11789:14;;:4;:14;;;11785:57;;11821:5;11813:22;;;;11528:1030;;;:::o;11785:57::-;11859:6;11852:13;;:4;:13;;;11848:531;;;11905:33;;;;11875:19;;11897:80;;5688:7;;-1:-1:-1;;;11905:33:107;;-1:-1:-1;;;;;11905:33:107;11897:80;:::i;:::-;12002:33;;;;11875:102;;-1:-1:-1;;;;12002:33:107;;-1:-1:-1;;;;;12002:33:107;:38;;:72;;;12063:11;12044:15;:30;;12002:72;12125:11;11985:160;;;;;-1:-1:-1;;;11985:160:107;;;;;;1335:25:182;;1323:2;1308:18;;1142:224;11985:160:107;-1:-1:-1;5745:1:107;12240:24;12249:15;;;12240:6;:24;:::i;:::-;12239:57;;;;:::i;:::-;5796:1;12171:22;12180:13;;;12171:6;:22;:::i;:::-;12170:55;;;;:::i;:::-;:126;;12351:6;12359:4;12153:219;;;;;;-1:-1:-1;;;12153:219:107;;15045:6:182;15033:19;;;12153:219:107;;;15015:38:182;15089:19;;15069:18;;;15062:47;14988:18;;12153:219:107;14845:270:182;12153:219:107;;;11867:512;11848:531;12385:34;;;:27;;;:34;12443:17;12385:6;12443:15;:17::i;:::-;12425:35;;-1:-1:-1;12466:33:107;;:59;;-1:-1:-1;;;;12466:59:107;-1:-1:-1;;;12509:15:107;-1:-1:-1;;;;;12466:59:107;;;;;-1:-1:-1;;11528:1030:107;;-1:-1:-1;;;11528:1030:107:o;22412:818:115:-;22488:7;22503:31;22537:19;:17;:19::i;:::-;22579:16;;;;-1:-1:-1;;;;;;811:80:95;22628:21:115;;;;;:52;;;22674:6;22653:17;:27;;22628:52;22723:6;22731:17;22613:142;;;;;;-1:-1:-1;;;22613:142:115;;;;;16006:25:182;;;;16047:18;;;16040:34;15979:18;;22613:142:115;15832:248:182;22613:142:115;-1:-1:-1;22779:17:115;;-1:-1:-1;22762:215:115;22803:6;22798:1;:11;22762:215;;22824:23;22850:28;;;:25;;;:28;;;;;;22890:20;;22886:85;;22945:15;22412:818;-1:-1:-1;;;;;22412:818:115:o;22886:85::-;-1:-1:-1;22811:3:115;;;;:::i;:::-;;;;22762:215;;;-1:-1:-1;23164:61:115;;-1:-1:-1;;;23164:61:115;;;;;16006:25:182;;;16047:18;;;16040:34;;;15979:18;;23164:61:115;15832:248:182;18202:193:113;3733:33;;18202:193::o;24600:458:115:-;24662:4;24674:31;24708:19;:17;:19::i;:::-;24761:16;;;;-1:-1:-1;;;;;;811:80:95;;24788:17:115;:4;693:3:95;641:55;;534:167;24788:17:115;:37;24784:70;;-1:-1:-1;24842:5:115;;24600:458;-1:-1:-1;;;24600:458:115:o;24784:70::-;24860:24;24887:43;24909:20;-1:-1:-1;;;;;811:80:95;;24928:1:115;24909:20;:::i;:::-;24887:21;:43::i;:::-;24860:70;;24936:18;24957:24;:3;:22;:24::i;:::-;24936:45;-1:-1:-1;24996:57:115;:18;24936:45;24996:43;:57::i;:::-;24995:58;;24600:458;-1:-1:-1;;;;;;24600:458:115:o;12836:138:113:-;12898:7;12920:12;:10;:12::i;:::-;:27;;;;;:49;;-1:-1:-1;;;12920:49:113;;-1:-1:-1;;;;;12920:27:113;;;;:40;;:49;;12961:7;;12920:49;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;19709:502:107:-;19795:7;20101:105;20163:11;:23;;;20138:11;:22;;;20110:11;:25;;;:50;;;;:::i;:::-;:76;;;;:::i;:::-;-1:-1:-1;;;;;20101:8:107;:105::i;21239:183::-;6848:30;;21239:183::o;9060:464::-;9183:29;9200:11;9183:16;:29::i;:::-;;9219:25;9247:12;:10;:12::i;:::-;9219:40;;9266:23;9292:28;:8;:15;;;:26;:28::i;:::-;9326:31;;;9266:54;-1:-1:-1;3599:3:107;9397:47;3657:11;9346;9397:47;:::i;:::-;:80;;;;:::i;:::-;9363:31;;;:114;9502:17;9363:6;9502:15;:17::i;:::-;9484:35;;;-1:-1:-1;;9060:464:107:o;9528:1062::-;9607:25;9635:12;:10;:12::i;:::-;9607:40;;9653:23;9679:28;:8;:15;;;:26;:28::i;:::-;9748:25;;;;9653:54;;-1:-1:-1;9811:19:107;;4712:1;9846:33;;;;9838:113;;;;-1:-1:-1;;;9838:113:107;;;;;16006:25:182;;;;16047:18;;;16040:34;15979:18;;9838:113:107;15832:248:182;9838:113:107;-1:-1:-1;;9988:30:107;;;;9958:19;;9980:70;;4570:7;;-1:-1:-1;;;;;9988:30:107;9980:70;:::i;:::-;10071:30;;;;9958:92;;-1:-1:-1;;;;;;10071:30:107;:35;;:69;;;10129:11;10110:15;:30;;10071:69;10183:11;10056:145;;;;;-1:-1:-1;;;10056:145:107;;;;;;1335:25:182;;1323:2;1308:18;;1142:224;10056:145:107;-1:-1:-1;10255:31:107;4620:1;10255:7;:31;:::i;:::-;10223:28;4664:1;10223:4;:28;:::i;:::-;:63;;:138;;;;-1:-1:-1;10330:31:107;4664:1;10330:7;:31;:::i;:::-;10298:28;4620:1;10298:4;:28;:::i;:::-;:63;;10223:138;10408:7;10417:4;10208:220;;;;;;-1:-1:-1;;;10208:220:107;;;;;16006:25:182;;;;16047:18;;;16040:34;15979:18;;10208:220:107;15832:248:182;10208:220:107;-1:-1:-1;;10435:25:107;;;:47;;;10506:17;10435:6;10506:15;:17::i;:::-;10488:35;;-1:-1:-1;;;10529:30:107;;;;:56;;-1:-1:-1;;10529:56:107;10569:15;-1:-1:-1;;;;;10529:56:107;;;;-1:-1:-1;;9528:1062:107:o;20563:297:115:-;20653:7;20668:31;20702:19;:17;:19::i;:::-;20754:16;;20668:53;;-1:-1:-1;20783:33:115;20805:10;20783:21;:33::i;:::-;:72;;20838:17;:4;693:3:95;641:55;;534:167;20838:17:115;20783:72;;;-1:-1:-1;;;;;811:80:95;;20776:79:115;-1:-1:-1;;;20563:297:115:o;14295:2226:107:-;14436:27;;:::i;:::-;14473:25;14501:12;:10;:12::i;:::-;14473:40;;14520:18;14541:31;:8;:15;;;3653:3:96;3601:55;3334:10;3600:72;;3490:187;14541:31:107;14520:52;;14579:29;14614:26;14646:14;14675:21;14699:30;14718:10;14699:18;:30::i;:::-;14675:54;;14781:15;14903:4;:12;;;3708:7;3757:1;14860:40;;;;:::i;:::-;:55;;;;:::i;:::-;14843:12;;14810:45;;2993:7;14810:45;:::i;:::-;14809:107;;;;:::i;:::-;14781:135;;14964:55;14976:7;14985:1;14988:10;15000:18;14964:11;:55::i;:::-;14927:93;;14771:258;15097:339;15124:258;15151:140;3047:9;15207:4;:12;;;15221:20;:18;:20::i;:::-;:34;-1:-1:-1;;;15221:34:107;;;;15257:18;15151:11;:140::i;:::-;15307:1;15324:10;15350:18;15124:11;:258::i;:::-;15397:15;;-1:-1:-1;;;;;4019:63:96;12807:71:107;:::i;15097:339::-;15077:359;;15461:40;:20;15484:17;15461:40;:::i;:::-;15453:48;;14667:841;15514:35;15552:42;15572:21;15552:19;:42::i;:::-;15514:80;-1:-1:-1;15600:18:107;15627:103;2389:10:97;2697:63;;15645:31:107;:15;2932:2:97;2880:54;2444:14;2879:71;;2769:186;15645:31:107;:63;;;;:::i;:::-;15710:19;15718:10;15710:19;:::i;:::-;15627:17;:103::i;:::-;15600:130;;15736:29;15768:32;15789:10;15768:20;:32::i;:::-;15736:64;;15807:20;15834:149;15857:110;15885:5;15893:21;3348:3;15947:19;15857:11;:110::i;:::-;15978:5;15834:149;:::i;:::-;15807:176;;15990:32;16025:11;:139;;1062:4:96;16025:139:107;;;16045:59;16082:21;16045:36;:59::i;:::-;15990:174;;16178:338;;;;;;;;16419:38;16442:14;16419:11;:22;;:38;;;;:::i;:::-;16178:338;;;;;;;;;;16243:47;:20;16275:14;16243:31;:47::i;:::-;16178:338;;;;16332:44;:17;16361:14;16332:28;:44::i;:::-;16178:338;;16171:345;14295:2226;-1:-1:-1;;;;;;;;;;;;;;14295:2226:107:o;16881:167:115:-;16953:19;16987:46;17015:17;16987:27;:46::i;:::-;:56;;;;16881:167;-1:-1:-1;;16881:167:115:o;1028:217:64:-;1144:1;1135:10;;;1102:4;1206:20;;;;;;;;;;;1170:1;1184:4;1176:12;;1170:19;1206:27;:32;;1028:217;;;;:::o;5304:236:92:-;5369:5;5382:25;5410:12;:10;:12::i;:::-;5515:18;;5382:40;;-1:-1:-1;5493:40:92;;5515:18;-1:-1:-1;;;5515:18:92;;;;;-1:-1:-1;;;5493:19:92;;;:40;:::i;:::-;5471:17;;5447:87;;;;;;5448:40;;-1:-1:-1;;;;;5471:17:92;5465:2;5448:40;:::i;:::-;5447:87;;;;:::i;5175:125::-;5252:4;5271:24;:2;5276:19;5292:2;3348:439;3406:5;3419:25;3447:12;:10;:12::i;:::-;3750:27;;;;-1:-1:-1;3734:48:92;;:2;;3750:31;;-1:-1:-1;;;3750:27:92;;;;3780:1;3750:31;:::i;:::-;3739:43;;3734:48;:::i;1581:186:64:-;1677:1;1668:10;;;1651:14;1732:20;;;;;;;;;;;;:28;;1703:1;1717:4;1709:12;;;1703:19;;;;1732:28;;;;;1581:186::o;1219:160:46:-;1328:43;;;-1:-1:-1;;;;;19794:32:182;;1328:43:46;;;19776:51:182;19843:18;;;;19836:34;;;1328:43:46;;;;;;;;;;19749:18:182;;;;1328:43:46;;;;;;;;-1:-1:-1;;;;;1328:43:46;-1:-1:-1;;;1328:43:46;;;1301:71;;1321:5;;1301:19;:71::i;25754:188:115:-;5747:30;;25754:188::o;18020:167::-;18093:4;18112:70;:46;18140:17;18112:27;:46::i;:::-;:57;;;;;;979:137:178;5544:136:92;5599:5;5648:12;:10;:12::i;:::-;:26;5630:44;;-1:-1:-1;;;5648:26:92;;;;5642:2;5630:44;:::i;1856:120:113:-;1912:7;1965:6;1934:28;1939:23;;;1934:2;:28;:::i;:::-;:37;;;;:::i;2588:208:92:-;2652:4;2664:25;2692:12;:10;:12::i;:::-;2772:18;;2664:40;;-1:-1:-1;2772:18:92;-1:-1:-1;;;2772:18:92;;;;2728:40;;-1:-1:-1;;;;;2751:17:92;2745:2;2728:40;:::i;1370:113:180:-;1419:4;1446:33;1476:2;1458;1446:33;:::i;1255:113::-;1304:4;1331:33;1361:2;1343;1331:33;:::i;2466:989:167:-;2515:7;2947:6;2930:13;:23;;2963:46;;;;-1:-1:-1;2983:22:167;;:26;;2963:46;2959:451;;;3152:43;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3152:43:167;-1:-1:-1;;;3152:43:167;;;3130:66;;3095:12;;;;3130:21;;:66;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3094:102;;;;3208:7;:28;;;;;3234:2;3219:4;:11;:17;;3208:28;3204:87;;;3266:4;3255:27;;;;;;;;;;;;:::i;:::-;3248:34;;;;;2466:989;:::o;3204:87::-;3402:1;3395:8;;;;;2466:989;:::o;2959:451::-;2425:17:103;3422:28:167;3415:35;;;2466:989;:::o;1685:277:97:-;1750:19;1777:13;1793:1;1777:17;;1846:1;1817:24;:5;:13;;;:22;:24::i;:::-;1809:33;;:38;;1800:47;;;;1899:2;1870:24;:5;:13;;;:22;:24::i;:::-;1862:33;;:39;;1853:48;1939:17;1853:48;1939:15;:17::i;518:145:178:-;571:14;620:37;650:5;620:17;:37::i;1966:322:97:-;-1:-1:-1;;;;;;;;;;;;;;;;;;2218:65:97;;;;;;;;;1298:16;2187:2;2178:11;;;;;2218:65;;2133:20;;;2218:65;;;;;1966:322::o;9351:238:61:-;9452:7;9506:76;9522:26;9539:8;9522:16;:26::i;:::-;:59;;;;;9580:1;9565:11;9552:25;;;;;:::i;:::-;9562:1;9559;9552:25;:29;9522:59;34914:9:62;34907:17;;34795:145;9506:76:61;9478:25;9485:1;9488;9491:11;9478:6;:25::i;:::-;:104;;;;:::i;:::-;9471:111;9351:238;-1:-1:-1;;;;;9351:238:61:o;4740:422:96:-;4825:16;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4825:16:96;4856:301;;;;;;;;5040:35;5054:20;3653:3;3601:55;3334:10;3600:72;;3490:187;5040:35;4856:301;;;;4971:49;4999:20;3858:2;3806:54;-1:-1:-1;;;;;3805:72:96;;3681:201;4971:49;4856:301;;;;-1:-1:-1;;;;;4019:63:96;;4856:301;;;;5105:45;5129:20;4265:3;4213:55;3284:6;4212:72;;4092:197;5105:45;4856:301;;4849:308;4740:422;-1:-1:-1;;4740:422:96:o;4293:443::-;4360:19;4387:13;4403:1;4387:17;;4427:54;4443:7;:26;;;4427:52;:54::i;:::-;-1:-1:-1;;;;;4419:63:96;4410:72;;;;4554:2;4505:44;:7;:32;;;:42;:44::i;:::-;-1:-1:-1;;;;;4497:53:96;:59;;4488:68;;;;4613:3;4579:29;:7;:18;;;:27;:29::i;:::-;4571:38;;:45;;4562:54;;;;4683:3;4639:39;:7;:28;;;:37;:39::i;:::-;4631:48;;:55;;4622:64;;4293:443;-1:-1:-1;;4293:443:96:o;3371:111:61:-;3429:7;3066:5;;;3463;;;3065:36;3060:42;;3455:20;2825:294;18427:403:107;18497:7;18570:1;18520:11;:15;18512:74;;;;-1:-1:-1;;;18512:74:107;;;;;16006:25:182;;;;16047:18;;;16040:34;15979:18;;18512:74:107;15832:248:182;18512:74:107;-1:-1:-1;18592:17:107;;-1:-1:-1;18612:15:107;:11;18626:1;18612:15;:::i;:::-;18592:35;-1:-1:-1;18723:16:107;18592:35;18710:29;;;;18702:100;;;;-1:-1:-1;;;18702:100:107;;20651:10:182;20639:23;;;18702:100:107;;;20621:42:182;20679:18;;;20672:34;20594:18;;18702:100:107;20448:264:182;18702:100:107;-1:-1:-1;18816:9:107;;18427:403;-1:-1:-1;;;18427:403:107:o;5861:189:92:-;937:31;;5861:189::o;21720:243:107:-;21786:7;21811:1;21805:2;:7;21801:54;;21834:14;:2;:12;:14::i;:::-;21829:19;;:2;:19;:::i;:::-;21822:26;;;;21801:54;2436:3:63;2431:8;;;2576;;;2575:17;21904:8:107;;;21900:44;;;21929:8;21934:3;21929:2;:8;:::i;:::-;21922:15;;;;;21900:44;-1:-1:-1;21957:1:107;;21720:243;-1:-1:-1;;;21720:243:107:o;17562:861::-;17635:7;17650:25;17678:12;:10;:12::i;:::-;17650:40;;17696:19;17718:45;:8;:15;;;3858:2:96;3806:54;-1:-1:-1;;;;;3805:72:96;;3681:201;17718:45:107;17696:67;-1:-1:-1;17929:23:107;17955:39;17964:10;17976:17;17696:67;17990:3;17976:17;:::i;:::-;17955:8;:39::i;:::-;17929:65;;18313:105;18339:41;:8;:15;;;4265:3:96;4213:55;3284:6;4212:72;;4092:197;18339:41:107;18330:50;;:6;:50;:::i;:::-;18329:58;;18384:3;18329:58;:::i;:::-;18389:15;18406:11;18313:15;:105::i;13583:541:115:-;13682:35;13727:15;13745:30;:12;:10;:12::i;:::-;:17;693:3:95;641:55;;534:167;13745:30:115;13727:48;;13781:12;13796:16;:14;:16::i;:::-;13781:31;-1:-1:-1;13819:18:115;13840:24;13781:31;13840:17;:24;:::i;:::-;13819:45;;13870:14;13908:7;13887:17;:28;;:52;;;;;13929:10;13919:7;:20;13887:52;13870:69;-1:-1:-1;14008:17:115;14027:7;14036:10;13870:69;13945:103;;;;-1:-1:-1;;;13945:103:115;;;;;20919:25:182;;;;20960:18;;;20953:34;;;;21003:18;;;20996:34;20892:18;;13945:103:115;20717:319:182;13945:103:115;;;;14062:12;:10;:12::i;:::-;:31;;:57;14094:24;14114:4;14094:17;:24;:::i;:::-;14062:57;;;;;;;;;;;14055:64;;;;;;13583:541;;;:::o;7686:720:46:-;7766:18;7794:19;7932:4;7929:1;7922:4;7916:11;7909:4;7903;7899:15;7896:1;7889:5;7882;7877:60;7989:7;7979:176;;8033:4;8027:11;8078:16;8075:1;8070:3;8055:40;8124:16;8119:3;8112:29;7979:176;-1:-1:-1;;8232:1:46;8226:8;8182:16;;-1:-1:-1;8258:15:46;;:68;;8310:11;8325:1;8310:16;;8258:68;;;-1:-1:-1;;;;;8276:26:46;;;:31;8258:68;8254:146;;;8382:5;8349:40;;-1:-1:-1;;;8349:40:46;;;;;;;;:::i;13796:213:62:-;13852:6;13882:16;13874:24;;13870:103;;;13921:41;;-1:-1:-1;;;13921:41:62;;13952:2;13921:41;;;21339:36:182;21391:18;;;21384:34;;;21312:18;;13921:41:62;21158:266:182;13870:103:62;-1:-1:-1;13996:5:62;13796:213::o;10282:218::-;10339:7;-1:-1:-1;;;;;10362:25:62;;10358:105;;;10410:42;;-1:-1:-1;;;10410:42:62;;10441:3;10410:42;;;21339:36:182;21391:18;;;21384:34;;;21312:18;;10410:42:62;21158:266:182;15296:213:62;15352:6;15382:16;15374:24;;15370:103;;;15421:41;;-1:-1:-1;;;15421:41:62;;15452:2;15421:41;;;21339:36:182;21391:18;;;21384:34;;;21312:18;;15421:41:62;21158:266:182;29534:122:61;29602:4;29643:1;29631:8;29625:15;;;;;;;;:::i;:::-;:19;;;;:::i;:::-;:24;;29648:1;29625:24;29618:31;;29534:122;;;:::o;4996:4226::-;5078:14;5449:5;;;5078:14;-1:-1:-1;;5453:1:61;5449;5621:20;5694:5;5690:2;5687:13;5679:5;5675:2;5671:14;5667:34;5658:43;;;5796:5;5805:1;5796:10;5792:368;;6134:11;6126:5;:19;;;;;:::i;:::-;;6119:26;;;;;;5792:368;6285:5;6270:11;:20;6266:143;;6310:84;3066:5;6330:16;;3065:36;940:4:51;3060:42:61;6310:11;:84::i;:::-;6664:17;6799:11;6796:1;6793;6786:25;7199:12;7229:15;;;7214:31;;7348:22;;;;;8094:1;8075;:15;;8074:21;;8327;;;8323:25;;8312:36;8397:21;;;8393:25;;8382:36;8469:21;;;8465:25;;8454:36;8540:21;;;8536:25;;8525:36;8613:21;;;8609:25;;8598:36;8687:21;;;8683:25;;;8672:36;7597:12;;;;7593:23;;;7618:1;7589:31;6913:20;;;6902:32;;;7709:12;;;;6960:21;;;;7446:16;;;;7700:21;;;;9163:15;;;;;-1:-1:-1;;4996:4226:61;;;;;:::o;13296:213:62:-;13352:6;-1:-1:-1;;;;;13374:24:62;;13370:103;;;13452:2;13421:41;;-1:-1:-1;;;13421:41:62;;;;;21339:36:182;;;;21391:18;;;21384:34;;;21312:18;;13421:41:62;21158:266:182;9264:218:62;9321:7;-1:-1:-1;;;;;9344:25:62;;9340:105;;;9392:42;;-1:-1:-1;;;9392:42:62;;9423:3;9392:42;;;21339:36:182;21391:18;;;21384:34;;;21312:18;;9392:42:62;21158:266:182;16296:213:62;16352:6;16382:16;16374:24;;16370:103;;;16421:41;;-1:-1:-1;;;16421:41:62;;16452:2;16421:41;;;21339:36:182;21391:18;;;21384:34;;;21312:18;;16421:41:62;21158:266:182;17171:193:62;17227:7;17258:1;17250:5;:9;17246:81;;;17282:34;;-1:-1:-1;;;17282:34:62;;;;;1335:25:182;;;1308:18;;17282:34:62;1142:224:182;24089:440:107;24195:7;24222:1;24195:7;;24284:22;24294:12;24284:7;:22;:::i;:::-;24253:53;;24312:179;24319:24;;24312:179;;24353:30;24363:20;24353:30;;:::i;:::-;;-1:-1:-1;24453:16:107;24468:1;24453:12;:16;:::i;:::-;24415:33;24438:10;24415:20;:33;:::i;:::-;24414:56;;;;:::i;:::-;24391:79;-1:-1:-1;24478:6:107;24483:1;24478:6;;:::i;:::-;;;24312:179;;;24503:21;24512:12;24503:6;:21;:::i;:::-;24496:28;24089:440;-1:-1:-1;;;;;;;24089:440:107:o;11736:202:115:-;11785:7;11897:32;:30;:32::i;:::-;:36;;11932:1;11897:36;:::i;1776:194:51:-;1881:10;1875:4;1868:24;1918:4;1912;1905:18;1949:4;1943;1936:18;4672:203:92;4729:7;4744:25;4772:12;:10;:12::i;:::-;4837:27;;;;-1:-1:-1;4829:40:92;;-1:-1:-1;;;4837:27:92;;;;4868:1;4829:40;:::i;:::-;4805:19;;4797:73;;;-1:-1:-1;;;4805:19:92;;;;4797:73;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;:::o;14:427:182:-;111:6;119;172:2;160:9;151:7;147:23;143:32;140:52;;;188:1;185;178:12;140:52;233:23;;;-1:-1:-1;332:2:182;317:18;;304:32;374:15;;367:23;355:36;;345:64;;405:1;402;395:12;345:64;428:7;418:17;;;14:427;;;;;:::o;911:226::-;970:6;1023:2;1011:9;1002:7;998:23;994:32;991:52;;;1039:1;1036;1029:12;991:52;-1:-1:-1;1084:23:182;;911:226;-1:-1:-1;911:226:182:o;1371:131::-;-1:-1:-1;;;;;1446:31:182;;1436:42;;1426:70;;1492:1;1489;1482:12;1507:247;1566:6;1619:2;1607:9;1598:7;1594:23;1590:32;1587:52;;;1635:1;1632;1625:12;1587:52;1674:9;1661:23;1693:31;1718:5;1693:31;:::i;1759:395::-;1855:6;1863;1916:2;1904:9;1895:7;1891:23;1887:32;1884:52;;;1932:1;1929;1922:12;1884:52;1971:9;1958:23;1990:31;2015:5;1990:31;:::i;:::-;2040:5;2118:2;2103:18;;;;2090:32;;-1:-1:-1;;;1759:395:182:o;2359:515::-;2464:6;2472;2480;2533:2;2521:9;2512:7;2508:23;2504:32;2501:52;;;2549:1;2546;2539:12;2501:52;2594:23;;;-1:-1:-1;2714:2:182;2699:18;;2686:32;;-1:-1:-1;2796:2:182;2781:18;;2768:32;2809:33;2768:32;2809:33;:::i;:::-;2861:7;2851:17;;;2359:515;;;;;:::o;2879:127::-;2940:10;2935:3;2931:20;2928:1;2921:31;2971:4;2968:1;2961:15;2995:4;2992:1;2985:15;3011:253;3083:2;3077:9;3125:4;3113:17;;-1:-1:-1;;;;;3145:34:182;;3181:22;;;3142:62;3139:88;;;3207:18;;:::i;:::-;3243:2;3236:22;3011:253;:::o;3269:251::-;3341:2;3335:9;;;3371:15;;-1:-1:-1;;;;;3401:34:182;;3437:22;;;3398:62;3395:88;;;3463:18;;:::i;3525:275::-;3596:2;3590:9;3661:2;3642:13;;-1:-1:-1;;3638:27:182;3626:40;;-1:-1:-1;;;;;3681:34:182;;3717:22;;;3678:62;3675:88;;;3743:18;;:::i;:::-;3779:2;3772:22;3525:275;;-1:-1:-1;3525:275:182:o;3805:142::-;3881:20;;3910:31;3881:20;3910:31;:::i;:::-;3805:142;;;:::o;3952:1257::-;4098:6;4106;4114;4167:2;4155:9;4146:7;4142:23;4138:32;4135:52;;;4183:1;4180;4173:12;4135:52;4222:9;4209:23;4241:31;4266:5;4241:31;:::i;:::-;4291:5;-1:-1:-1;4347:2:182;4332:18;;4319:32;-1:-1:-1;;;;;4363:30:182;;4360:50;;;4406:1;4403;4396:12;4360:50;4429:22;;4482:4;4474:13;;4470:27;-1:-1:-1;4460:55:182;;4511:1;4508;4501:12;4460:55;4551:2;4538:16;-1:-1:-1;;;;;4569:6:182;4566:30;4563:56;;;4599:18;;:::i;:::-;4645:6;4642:1;4638:14;4672:28;4696:2;4692;4688:11;4672:28;:::i;:::-;4734:19;;;4778:2;4808:11;;;4804:20;;;4769:12;;;;4836:19;;;4833:39;;;4868:1;4865;4858:12;4833:39;4900:2;4896;4892:11;4881:22;;4912:202;4928:6;4923:3;4920:15;4912:202;;;5022:17;;5052:20;;;5101:2;4945:12;;;;5022:17;;-1:-1:-1;5092:12:182;;;;4912:202;;;5133:5;5123:15;;;;;;;5157:46;5199:2;5188:9;5184:18;5157:46;:::i;:::-;5147:56;;3952:1257;;;;;:::o;5622:139::-;5725:10;5718:5;5714:22;5707:5;5704:33;5694:61;;5751:1;5748;5741:12;5766:179;5833:20;;-1:-1:-1;;;;;5882:38:182;;5872:49;;5862:77;;5935:1;5932;5925:12;5950:1604;6113:6;6121;6165:9;6156:7;6152:23;6195:3;6191:2;6187:12;6184:32;;;6212:1;6209;6202:12;6184:32;6236:4;6232:2;6228:13;6225:33;;;6254:1;6251;6244:12;6225:33;;6280:22;;:::i;:::-;6339:9;6326:23;6358:33;6383:7;6358:33;:::i;:::-;6400:22;;6474:2;6459:18;;6446:32;6487:50;6446:32;6487:50;:::i;:::-;6564:2;6553:14;;6546:31;6629:2;6614:18;;6601:32;6642:33;6601:32;6642:33;:::i;:::-;6702:2;6691:14;;6684:31;6747:37;6780:2;6765:18;;6747:37;:::i;:::-;6742:2;6731:14;;6724:61;6735:5;-1:-1:-1;6847:3:182;6832:19;;6828:33;-1:-1:-1;6818:61:182;;6875:1;6872;6865:12;6818:61;6899:22;;:::i;:::-;6943:3;6984;6973:9;6969:19;7011:7;7003:6;7000:19;6997:39;;;7032:1;7029;7022:12;6997:39;7071:4;7060:9;7056:20;7085:439;7101:6;7096:3;7093:15;7085:439;;;7181:2;7175:3;7166:7;7162:17;7158:26;7155:46;;;7197:1;7194;7187:12;7155:46;7229:22;;:::i;:::-;7292:3;7279:17;7309:33;7334:7;7309:33;:::i;:::-;7355:24;;7417:31;7444:2;7435:12;;7417:31;:::i;:::-;7412:2;7403:7;7399:16;7392:57;7474:7;7469:3;7462:20;;7511:2;7506:3;7502:12;7495:19;;7127:2;7122:3;7118:12;7111:19;;7085:439;;;-1:-1:-1;5950:1604:182;;7543:5;;-1:-1:-1;5950:1604:182;-1:-1:-1;;;;5950:1604:182:o;7818:404::-;7902:6;7910;7963:2;7951:9;7942:7;7938:23;7934:32;7931:52;;;7979:1;7976;7969:12;7931:52;8018:9;8005:23;8037:31;8062:5;8037:31;:::i;:::-;8087:5;-1:-1:-1;8144:2:182;8129:18;;8116:32;8157:33;8116:32;8157:33;:::i;9301:395::-;9397:6;9405;9458:2;9446:9;9437:7;9433:23;9429:32;9426:52;;;9474:1;9471;9464:12;9426:52;9519:23;;;-1:-1:-1;9618:2:182;9603:18;;9590:32;9631:33;9590:32;9631:33;:::i;9701:488::-;9798:6;9858:2;9846:9;9837:7;9833:23;9829:32;9873:2;9870:22;;;9888:1;9885;9878:12;9870:22;-1:-1:-1;9930:22:182;;:::i;:::-;9989:9;9976:23;10008:50;10050:7;10008:50;:::i;:::-;10067:22;;10121:37;10154:2;10139:18;;10121:37;:::i;:::-;10116:2;10105:14;;10098:61;10109:5;9701:488;-1:-1:-1;;;9701:488:182:o;10194:272::-;10252:6;10305:2;10293:9;10284:7;10280:23;10276:32;10273:52;;;10321:1;10318;10311:12;10273:52;10360:9;10347:23;10410:6;10403:5;10399:18;10392:5;10389:29;10379:57;;10432:1;10429;10422:12;10471:1218;10566:6;10626:3;10614:9;10605:7;10601:23;10597:33;10642:2;10639:22;;;10657:1;10654;10647:12;10639:22;-1:-1:-1;10726:2:182;10720:9;10768:3;10756:16;;-1:-1:-1;;;;;10787:34:182;;10823:22;;;10784:62;10781:88;;;10849:18;;:::i;:::-;10885:2;10878:22;10922:23;;10954:48;10922:23;10954:48;:::i;:::-;11011:21;;11084:2;11069:18;;11056:32;11097:50;11056:32;11097:50;:::i;:::-;11175:2;11163:15;;11156:32;11240:2;11225:18;;11212:32;11253:50;11212:32;11253:50;:::i;:::-;11331:2;11319:15;;11312:32;11396:2;11381:18;;11368:32;11409:50;11368:32;11409:50;:::i;:::-;11487:2;11475:15;;11468:32;11552:3;11537:19;;11524:33;11566:50;11524:33;11566:50;:::i;:::-;11644:3;11632:16;;11625:33;11636:6;10471:1218;-1:-1:-1;;;10471:1218:182:o;11694:233::-;-1:-1:-1;;;;;11888:32:182;;;;11870:51;;11858:2;11843:18;;11694:233::o;12392:733::-;12490:6;12550:3;12538:9;12529:7;12525:23;12521:33;12566:2;12563:22;;;12581:1;12578;12571:12;12563:22;-1:-1:-1;12623:22:182;;:::i;:::-;12690:23;;12722:22;;12817:2;12802:18;;;12789:32;12837:14;;;12830:31;12934:2;12919:18;;;12906:32;12954:14;;;12947:31;13051:2;13036:18;;;13023:32;13071:14;;;13064:31;;;;-1:-1:-1;12729:5:182;12392:733;-1:-1:-1;12392:733:182:o;16085:127::-;16146:10;16141:3;16137:20;16134:1;16127:31;16177:4;16174:1;16167:15;16201:4;16198:1;16191:15;16526:127;16587:10;16582:3;16578:20;16575:1;16568:31;16618:4;16615:1;16608:15;16642:4;16639:1;16632:15;16658:168;16731:9;;;16762;;16779:15;;;16773:22;;16759:37;16749:71;;16800:18;;:::i;16831:127::-;16892:10;16887:3;16883:20;16880:1;16873:31;16923:4;16920:1;16913:15;16947:4;16944:1;16937:15;16963:120;17003:1;17029;17019:35;;17034:18;;:::i;:::-;-1:-1:-1;17068:9:182;;16963:120::o;17088:125::-;17153:9;;;17174:10;;;17171:36;;;17187:18;;:::i;18578:135::-;18617:3;18638:17;;;18635:43;;18658:18;;:::i;:::-;-1:-1:-1;18705:1:182;18694:13;;18578:135::o;18718:184::-;18788:6;18841:2;18829:9;18820:7;18816:23;18812:32;18809:52;;;18857:1;18854;18847:12;18809:52;-1:-1:-1;18880:16:182;;18718:184;-1:-1:-1;18718:184:182:o;18907:136::-;18942:3;-1:-1:-1;;;18963:22:182;;18960:48;;18988:18;;:::i;:::-;-1:-1:-1;19028:1:182;19024:13;;18907:136::o;19048:244::-;19159:10;19132:18;;;19152;;;19128:43;19191:28;;;;19238:24;;;19228:58;;19266:18;;:::i;:::-;19228:58;19048:244;;;;:::o;19297:128::-;19364:9;;;19385:11;;;19382:37;;;19399:18;;:::i;19430:167::-;19525:10;19498:18;;;19518;;;19494:43;;19549:19;;19546:45;;;19571:18;;:::i;19881:301::-;20010:3;20048:6;20042:13;20094:6;20087:4;20079:6;20075:17;20070:3;20064:37;20156:1;20120:16;;20145:13;;;-1:-1:-1;20120:16:182;19881:301;-1:-1:-1;19881:301:182:o;21041:112::-;21073:1;21099;21089:35;;21104:18;;:::i;:::-;-1:-1:-1;21138:9:182;;21041:112::o;21972:127::-;22033:10;22028:3;22024:20;22021:1;22014:31;22064:4;22061:1;22054:15;22088:4;22085:1;22078:15;22104:157;22134:1;22168:4;22165:1;22161:12;22192:3;22182:37;;22199:18;;:::i;:::-;22251:3;22244:4;22241:1;22237:12;22233:22;22228:27;;;22104:157;;;;:::o","linkReferences":{}},"methodIdentifiers":{"canPruneAtTime(uint256)":"dc1bb8f4","claimProverRewards(address,uint256[],IERC20)":"385b9012","claimSequencerRewards(address,IERC20)":"5e5fafb3","deployRewardBooster(RewardBoostConfig)":"bcfe1a1c","getCheckpointReward()":"86a0d763","getCollectiveProverRewardsForEpoch(uint256)":"5a97eaa1","getEpochForCheckpoint(uint256)":"483315b3","getEthPerFeeAssetAtCheckpoint(uint256)":"16a7ced5","getFirstProvenBy(uint256)":"c4fb3d7c","getHasClaimed(address,uint256)":"28e07ac3","getHasSubmitted(uint256,uint256,address)":"3334f7dc","getL1FeesAt(uint256)":"5f82401f","getManaMinFeeComponentsAt(uint256,bool)":"11704430","getProvingCostPerMana()":"fe2a92d0","getProvingCostPerManaInFeeAsset(uint256)":"604ef88f","getRewardConfig()":"ec147806","getRewardDistributor()":"cf20d872","getSequencerRewards(address)":"8789a132","getSharesFor(address)":"dfff3ebc","getSpecificProverRewardsForEpoch(uint256,address)":"68faa778","initializeConfig(RewardConfig,RegistryRewardOverride[2])":"498a4cc9","summedMinFee(ManaMinFeeComponents)":"e068d95a","updateConfig(MutableRewardConfig)":"8841c467","updateL1GasFeeOracle()":"508ac49b","updateManaTarget(uint256)":"e6e28440","updateProtocolFeeMargin(uint16)":"a4f40ee9","updateProtocolFeeRecipient(address)":"1df47f80","updateProvingCostPerMana(uint256)":"ed176514"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"maximum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"}],\"name\":\"FeeLib__InvalidManaLimit\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"minimum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"}],\"name\":\"FeeLib__InvalidManaTarget\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"nextAllowed\",\"type\":\"uint256\"}],\"name\":\"FeeLib__ProtocolFeeMarginCooldown\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"current\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requested\",\"type\":\"uint256\"}],\"name\":\"FeeLib__ProtocolFeeMarginStepExceeded\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minimum\",\"type\":\"uint256\"}],\"name\":\"FeeLib__ProvingCostBelowFloor\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"nextAllowed\",\"type\":\"uint256\"}],\"name\":\"FeeLib__ProvingCostCooldown\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"current\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requested\",\"type\":\"uint256\"}],\"name\":\"FeeLib__ProvingCostStepExceeded\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"registry\",\"type\":\"address\"}],\"name\":\"RewardLib__DuplicateRegistryRewardOverride\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RewardLib__InvalidProtocolFeeRecipient\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"registry\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sequencerReward\",\"type\":\"uint256\"}],\"name\":\"RewardLib__InvalidRegistryRewardOverride\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RewardLib__InvalidSequencerBps\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"registry\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sequencerReward\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultSequencerReward\",\"type\":\"uint256\"}],\"name\":\"RewardLib__RegistryRewardOverrideAboveDefault\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proven\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requested\",\"type\":\"uint256\"}],\"name\":\"Rollup__CheckpointNotProven\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"actual\",\"type\":\"uint256\"}],\"name\":\"Rollup__InvalidCheckpointNumber\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"minimum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"}],\"name\":\"Rollup__InvalidManaTarget\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"Epoch\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"Epoch\",\"name\":\"currentEpoch\",\"type\":\"uint256\"}],\"name\":\"Rollup__NotPastDeadline\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"checkpointNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"pendingCheckpointNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"upperLimit\",\"type\":\"uint256\"}],\"name\":\"Rollup__UnavailableTempCheckpointLog\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"name\":\"SafeCastOverflowedIntToUint\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"bits\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"SafeCastOverflowedUintDowncast\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"SafeERC20FailedOperation\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"manaTarget\",\"type\":\"uint256\"}],\"name\":\"ManaTargetUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"oldBps\",\"type\":\"uint16\"},{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"newBps\",\"type\":\"uint16\"}],\"name\":\"ProtocolFeeMarginUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"oldRecipient\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newRecipient\",\"type\":\"address\"}],\"name\":\"ProtocolFeeRecipientUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"Bps\",\"name\":\"sequencerBps\",\"type\":\"uint32\"},{\"internalType\":\"uint96\",\"name\":\"checkpointReward\",\"type\":\"uint96\"}],\"indexed\":false,\"internalType\":\"struct MutableRewardConfig\",\"name\":\"rewardConfig\",\"type\":\"tuple\"}],\"name\":\"RewardConfigUpdated\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"Timestamp\",\"name\":\"_ts\",\"type\":\"uint256\"}],\"name\":\"canPruneAtTime\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCheckpointReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Epoch\",\"name\":\"_epoch\",\"type\":\"uint256\"}],\"name\":\"getCollectiveProverRewardsForEpoch\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_checkpointNumber\",\"type\":\"uint256\"}],\"name\":\"getEpochForCheckpoint\",\"outputs\":[{\"internalType\":\"Epoch\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_checkpointNumber\",\"type\":\"uint256\"}],\"name\":\"getEthPerFeeAssetAtCheckpoint\",\"outputs\":[{\"internalType\":\"EthPerFeeAssetE12\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_checkpointNumber\",\"type\":\"uint256\"}],\"name\":\"getFirstProvenBy\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_prover\",\"type\":\"address\"},{\"internalType\":\"Epoch\",\"name\":\"_epoch\",\"type\":\"uint256\"}],\"name\":\"getHasClaimed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Epoch\",\"name\":\"_epoch\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_length\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_prover\",\"type\":\"address\"}],\"name\":\"getHasSubmitted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Timestamp\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getL1FeesAt\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"baseFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blobFee\",\"type\":\"uint256\"}],\"internalType\":\"struct L1FeeData\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Timestamp\",\"name\":\"_timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"_inFeeAsset\",\"type\":\"bool\"}],\"name\":\"getManaMinFeeComponentsAt\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocolFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"congestionMultiplier\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"sequencerCost\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"proverCost\",\"type\":\"uint256\"}],\"internalType\":\"struct ManaMinFeeComponents\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getProvingCostPerMana\",\"outputs\":[{\"internalType\":\"EthValue\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"EthPerFeeAssetE12\",\"name\":\"_ethPerFeeAsset\",\"type\":\"uint256\"}],\"name\":\"getProvingCostPerManaInFeeAsset\",\"outputs\":[{\"internalType\":\"FeeAssetValue\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRewardConfig\",\"outputs\":[{\"components\":[{\"internalType\":\"contract IRewardDistributor\",\"name\":\"rewardDistributor\",\"type\":\"IRewardDistributor\"},{\"internalType\":\"Bps\",\"name\":\"sequencerBps\",\"type\":\"uint32\"},{\"internalType\":\"contract IBoosterCore\",\"name\":\"booster\",\"type\":\"IBoosterCore\"},{\"internalType\":\"uint96\",\"name\":\"checkpointReward\",\"type\":\"uint96\"}],\"internalType\":\"struct RewardConfig\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRewardDistributor\",\"outputs\":[{\"internalType\":\"contract IRewardDistributor\",\"name\":\"\",\"type\":\"IRewardDistributor\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sequencer\",\"type\":\"address\"}],\"name\":\"getSequencerRewards\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_prover\",\"type\":\"address\"}],\"name\":\"getSharesFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Epoch\",\"name\":\"_epoch\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_prover\",\"type\":\"address\"}],\"name\":\"getSpecificProverRewardsForEpoch\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocolFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"congestionMultiplier\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"sequencerCost\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"proverCost\",\"type\":\"uint256\"}],\"internalType\":\"struct ManaMinFeeComponents\",\"name\":\"_components\",\"type\":\"tuple\"}],\"name\":\"summedMinFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"SafeCastOverflowedIntToUint(int256)\":[{\"details\":\"An int value doesn't fit in an uint of `bits` size.\"}],\"SafeCastOverflowedUintDowncast(uint8,uint256)\":[{\"details\":\"Value doesn't fit in an uint of `bits` size.\"}],\"SafeERC20FailedOperation(address)\":[{\"details\":\"An operation with an ERC-20 token failed.\"}]},\"kind\":\"dev\",\"methods\":{\"updateConfig(MutableRewardConfig)\":{\"details\":\"The owner-only fee and reward setters below hold their validation, mutation and event emission here rather than in the Rollup. The Rollup sits close to the EIP-170 limit, and an event's topic hash plus its argument encoding costs it ~75 bytes per emit site; the `FeeLib` mutators inline another few hundred. A delegatecall keeps `msg.sender`, storage and the log's emitting address, so moving them across this boundary is behaviour preserving, and it only costs gas on cold admin paths. `ProposeLib` calls `FeeLib` directly, so `propose` is unaffected.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/core/libraries/rollup/RewardExtLib.sol\":\"RewardExtLib\"},\"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/SlotDerivation.sol\":{\"keccak256\":\"0x8447b57b63810fe2e367c09496a966f143ec0e825d71ddb9fce2506cff84b618\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://996cb48f793bf151555045b37138e36b3cdb31d6bc6552d3149285260be00cfb\",\"dweb:/ipfs/QmcLaTTMNVbkMx58xhkp6GeFt4V3GtSyupZuaKG3vYW2Zc\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xcf74f855663ce2ae00ed8352666b7935f6cddea2932fdf2c3ecd30a9b1cd0e97\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9f660b1f351b757dfe01438e59888f31f33ded3afcf5cb5b0d9bf9aa6f320a8b\",\"dweb:/ipfs/QmarDJ5hZEgBtCmmrVzEZWjub9769eD686jmzb2XpSU1cM\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x9e82c00fb176503860139c6bbf593b1a954ee7ff97ab2969656571382b9b58a2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://34b4eb157b44d4441315db65561ba7cf0fe909dc598c2cfd7080d203077d5b57\",\"dweb:/ipfs/QmcNdvK3kDUAUr48urHxoeHd1TqVDya4YfZTM66i4goEJn\"]},\"lib/openzeppelin-contracts/contracts/utils/TransientSlot.sol\":{\"keccak256\":\"0x9303ef5a2beb555e52ce56598de205ce07ca8988fc67d073687c06cb8fc973d1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b2e48fb42844c25e6cb38e7cfa1d91dcdc054613fd10f608833dbc677acf889\",\"dweb:/ipfs/QmT4HQxbgpWA3fZnK4dY3eXHNCoyBvpvzNq5k7eSt5mR5t\"]},\"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol\":{\"keccak256\":\"0x69f54c02b7d81d505910ec198c11ed4c6a728418a868b906b4a0cf29946fda84\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8e25e4bdb7ae1f21d23bfee996e22736fc0ab44cfabedac82a757b1edc5623b9\",\"dweb:/ipfs/QmQdWQvB6JCP9ZMbzi8EvQ1PTETqkcTWrbcVurS7DKpa5n\"]},\"lib/openzeppelin-contracts/contracts/utils/cryptography/EIP712.sol\":{\"keccak256\":\"0x10eb97d047f8d84fe263a02bb4a656ac6674f6679d74532cc37546289e073a9d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e41287d40b0c46982f1083d40d32de2761f009c5c51627fe79a7feb0ab1cf5c\",\"dweb:/ipfs/Qme7dbh6HX3ZvUJdbQAcVqXkmyXyfcLiUZRhhon3cU6K8p\"]},\"lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol\":{\"keccak256\":\"0x4515543bc4c78561f6bea83ecfdfc3dead55bd59858287d682045b11de1ae575\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://60601f91440125727244fffd2ba84da7caafecaae0fd887c7ccfec678e02b61e\",\"dweb:/ipfs/QmZnKPBtVDiQS9Dp8gZ4sa3ZeTrWVfqF7yuUd6Y8hwm1Rs\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621\",\"dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0x2c33f654cefbbe80a9b436b5792cfe8bda2e87f139f110073c99762558db252f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://dc7ebd80046a52f28978cf46a24ff3e4c8568264ab6bb138038951c75d576167\",\"dweb:/ipfs/QmQQjXVr4CbDR3DXd8GHEqn3JSJYTnbBHMJp9tvc29yXrc\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol\":{\"keccak256\":\"0x195533c86d0ef72bcc06456a4f66a9b941f38eb403739b00f21fd7c1abd1ae54\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1d578337048cad08c1c03041cca5978eff5428aa130c781b271ad9e5566e1f8\",\"dweb:/ipfs/QmPFKL2r9CBsMwmUqqdcFPfHZB2qcs9g1HDrPxzWSxomvy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xb1970fac7b64e6c09611e6691791e848d5e3fe410fa5899e7df2e0afd77a99e3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://db5fbb3dddd8b7047465b62575d96231ba8a2774d37fb4737fbf23340fabbb03\",\"dweb:/ipfs/QmVUSvooZKEdEdap619tcJjTLcAuH6QBdZqAzWwnAXZAWJ\"]},\"lib/openzeppelin-contracts/contracts/utils/structs/BitMaps.sol\":{\"keccak256\":\"0x3616f1b0d0a9ee1ca8f0953ecaceb9230e36f691c7974d30f964212acff52d2b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d4bebdd07b31ac28e3e596ac6f0333da90a4e332405aa7d65f3a3a7e0b4cf15e\",\"dweb:/ipfs/QmckoDU5bBnye2UtPcrfJNahLD2FbxrnPP9nrREMWPpnug\"]},\"lib/openzeppelin-contracts/contracts/utils/structs/Checkpoints.sol\":{\"keccak256\":\"0x66364cd3247ea71cdb58f080f5d5ed6732433a8001413139661841535494692f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f87914c6645b58eaf75f00a156037a7da91129f3a56aec44aebfc715b19ea44\",\"dweb:/ipfs/QmNX7NLSMXyWuogvf8wfCwjUGwLhLBZrGktWPSdoHtERGp\"]},\"lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol\":{\"keccak256\":\"0x9b161e97b8967d4bc0c08d25741889a30692cdda4b71910bf1b0e315f1962212\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://821500c39d095eaa25b06f46e65f1d0e97c4c96b39227f79077dee7d9e84051f\",\"dweb:/ipfs/QmSTeGorKzSWF6HAmxo32uCZiEuKNvreQdUiX1AaYtUMTz\"]},\"src/core/interfaces/IEscapeHatch.sol\":{\"keccak256\":\"0x1a499acad8813b56e7d9cdcff3152e36196482794e62302e95a28603f5915747\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://18da3711ad1fbc413336c252709e1ad32d51092336fbe6c2428b48768f58352c\",\"dweb:/ipfs/QmdkMJiH1pdcuoLe5zPHeMtnFhZ1k7PLZJtoWQUcpcm4bJ\"]},\"src/core/interfaces/IFeeJuicePortal.sol\":{\"keccak256\":\"0xce84c8907395b4c11cc6dd8035d8e14560153450f9d88340cfb8abb914c66639\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f5eb389f1a6e9adbb2f24dad7a6c0bc706d49decad82ba9b582c288e12eddda6\",\"dweb:/ipfs/QmNM3uQmJYn9B6RAHSMUT3TZMR6R75okjJErUEsuRjxGXt\"]},\"src/core/interfaces/IRollup.sol\":{\"keccak256\":\"0x8c843d930bb66928087a3ce19786d0a7b2d0d28d321ac41c10394088baab7f5c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://7df362b5237cfcfac09915ef4ae261d985ae26a91be847855ef277715f732748\",\"dweb:/ipfs/QmeW86CE58Kntiuy8ZHdRFBGnw5yxFCmG4gdFVnYppTcr1\"]},\"src/core/interfaces/ISlasher.sol\":{\"keccak256\":\"0xf7dc3b2795b2806dbec7c94c33665abcf00a35ee65802a47f6222faf8641d302\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://d7c9283746c66f04df5a133145b3196fc176e06e2fe6b3285056ffac68a09e9b\",\"dweb:/ipfs/QmPxTkM1eMNFny3yibc69p1GqWvPkno5fzBjyju89h7CNk\"]},\"src/core/interfaces/IStaking.sol\":{\"keccak256\":\"0x81ddf8fa0cf8a213d690845fd4d3e31e45c543e5876612e94607cdb753804f1d\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://7e0ae2a10903274cca7231306660dd6d5d1e5632238618b390aa7f4dfa5422f3\",\"dweb:/ipfs/QmTMXRYdNGnmecbUdREFfgsLwnMsRjDseLVXsvPqQoiago\"]},\"src/core/interfaces/IValidatorSelection.sol\":{\"keccak256\":\"0x880355d12ccf03d98667fe24763c8145abbd8ca8ea9faf8a30a967311dcac7ed\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://c98e9fd3b3abb044b084d559e9e50cab0d58e08ab880fcbf8f52d9d93cac8ffd\",\"dweb:/ipfs/Qmd3nRejx4X57zgehytxvjdYrL5X61nM3bdfJKySAwDMoS\"]},\"src/core/interfaces/IVerifier.sol\":{\"keccak256\":\"0xf5b6025ff3d59b8922bb45fb05786764e74109b4a349d206b8a7979f46484c55\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://98ec47ac3e15b1d8f2c80854ed6fd83e655e9e96341bb827f3be8e6b47f4c7fb\",\"dweb:/ipfs/QmcmUkLgM7fb7mEaJTiWJWrZTW2kAWtRcYS6imBfmueALe\"]},\"src/core/interfaces/messagebridge/IInbox.sol\":{\"keccak256\":\"0x1149c904c8b3bd2942628fbab5480cdc044e831d51963f9e6946f1974cc162bd\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://af2f1f49feba389b0bdbf427c4a85fac2908699585e5babd75f77cf14416ed5f\",\"dweb:/ipfs/QmZYjZyhicCpTcwPuWTjTTUxnaBnfv5bTMWDgxyDGqy8Gm\"]},\"src/core/interfaces/messagebridge/IOutbox.sol\":{\"keccak256\":\"0xf66d0bb4f6d978acf91a036737cd4326bfab16a4030d10510d2976e4218ed8ad\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e796eea21d552b2ca4d0446bb096e2c980ab84816d9dd1398113293ae8128b30\",\"dweb:/ipfs/QmNuGgRtPFgRe3asa68vDMcWpyfDFqQ5w5j5U7yWD1EsyZ\"]},\"src/core/libraries/ConstantsGen.sol\":{\"keccak256\":\"0xe328f94338f5563669e04618c3ec21ec38b9f21ab24d5de698d80cf38f977dfa\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://3d9872c9a78d7241053e9ce3eadf192d18a9cb4b95c0ac120470d92435b7216e\",\"dweb:/ipfs/QmcRnfbW8sNWwRHPik4wvkA7CTY1BTjuf2ydu3jN5otQJT\"]},\"src/core/libraries/DataStructures.sol\":{\"keccak256\":\"0x5ea9d1097f0b53eafbd72332d4c5c517307e5a056266befe5b46f5f43ee3d83c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1a742311dc3c5ead2d5361549f017d20f46c40a4e74e879823ac168cf5b572d4\",\"dweb:/ipfs/QmTNDc1fiPti41QqJTJQoV9uduB6eXaQhbfq1hfVVjVNvS\"]},\"src/core/libraries/Errors.sol\":{\"keccak256\":\"0x5de665a9151b837e2e179ea55c9c54577981d385cffea2fe046d6f70624497b2\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://53645107af6da2cf033f7e16a1a5f8922a63db2e332ba769a72128ee0a30ff3e\",\"dweb:/ipfs/QmYyNYvZwtYNUiwW422pNfqERp8Tf76DQCnRFiiYZS85w8\"]},\"src/core/libraries/HatchMath.sol\":{\"keccak256\":\"0xca787b2889e281c8db132043312aa9513315669782981689824344c910833fe4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://77ec2f6b5919d53d3a7128f6006155f2566a84e7a56cd26e9d5e6d1514ccd7a2\",\"dweb:/ipfs/Qmc3Z2quujEwxQU1JBfrxhkiULaczspBsTMjXibqXCjFyd\"]},\"src/core/libraries/SlashRoundLib.sol\":{\"keccak256\":\"0x6773eea1fa593e5c1e16fcd3a8341b537bf5ed7ee2f10472649dfd542e3ade8e\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://756bdaa3facd4034149eeb3553ae99777b646c3e16abf8d41f9558e74249baa6\",\"dweb:/ipfs/QmNpb62diGKNKf5pcynejjhNex9c6PTkZnVUeuLvJ2qCZ9\"]},\"src/core/libraries/StakingQueue.sol\":{\"keccak256\":\"0xbbeafda1659a92be14ec5b77838952a089f075cc1d0c5f348b6ff336ea6a1a98\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f3c8bdb1de77dab697ef4442f72fa4830c757059f8d948d2f3aeb7f6983aa64f\",\"dweb:/ipfs/QmSDYdTnFo8nx34q3fdJCKpy8DCnKBQ4isxr49o4sY5T6T\"]},\"src/core/libraries/TimeLib.sol\":{\"keccak256\":\"0x865b760fe681ee74a93b49491d897a98091432ebc2923ff17717ddb6d26d31ab\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4ccdfb80464d8e58a95a68314fe2dd33f4a1634ab0695a9a4e9c180a50cc592b\",\"dweb:/ipfs/QmNUUFN7RTjiicZCkci6eEnfromVTPS2MVE4CkbqoneV6P\"]},\"src/core/libraries/compressed-data/CheckpointLog.sol\":{\"keccak256\":\"0x613513b7eb7855ff619c9eb3f1589fcfb0d7675e15c5261034ac353a62c5cabf\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://110e7cc1eae76116a6682a9044cf9031744a7a8c46164987e246923169618d5e\",\"dweb:/ipfs/QmcuhMXiGWjAbYGYYXKrTCLNYguQZpgxpWVWteJezYKVzQ\"]},\"src/core/libraries/compressed-data/StakingQueueConfig.sol\":{\"keccak256\":\"0x32b00fd08e1754d9d9c9b377ae0a0ea887ace519db0ec6d252e1b2216891068e\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4ecea0a1ff8536819d37d3800b2915249b5c854d9dc611e91aae81df6acf7d76\",\"dweb:/ipfs/Qmf3FgXCf1MP78p5B76kQnwx8yXFXncutVzQhV2fteBvVn\"]},\"src/core/libraries/compressed-data/Tips.sol\":{\"keccak256\":\"0xdf872f54470e59b86349871e2c12075e8daaad85894f90e64f92538daf5f4008\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://493e4bc02c6e9acbb5bfaa68f19bf4defb409211b701784e43d2ca6cbc11ccd1\",\"dweb:/ipfs/QmSUahndZ78LBx6WdozXWL6QkqxZXzrXpHna2kGwCqgy34\"]},\"src/core/libraries/compressed-data/fees/FeeConfig.sol\":{\"keccak256\":\"0xd5593d342fd9e75cf10d9c126d5aa46eab6707221111d81757e0f5c3473c23fd\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5cdfdfa94ea9d7b93cb80bdbd9e81c80fc7d71de890d88bb957960d0d5734298\",\"dweb:/ipfs/QmQ2VjHtpja19AxDnGg2Q5hCck678PUrfLDuwUNvcyo4YS\"]},\"src/core/libraries/compressed-data/fees/FeeStructs.sol\":{\"keccak256\":\"0x23304769b5d5098b6d6b1092be483f34c0c901d7e14667404e8c5335dad8b501\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://9ef5000b6a27a338f60dad80f73ea03d6560afc46c063d8d52932574d82cf157\",\"dweb:/ipfs/QmSzdqmERrrCqdfqy4jXhdiyokyNRLvi4qLp85iw8rR9iJ\"]},\"src/core/libraries/crypto/Hash.sol\":{\"keccak256\":\"0x0e2bad615ee34b98ffdc7b81558e78ad3701cf8e02dc0fa4721555b4cdb861cb\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://8f69943a9ad3fba8a12ae34b3d60815c4339ea66a5ec75beb781d22a872c2d4d\",\"dweb:/ipfs/QmTfjRk9vBaxfziFgwYzWgTWFEvbB8EEudkcYupPw6qLXW\"]},\"src/core/libraries/crypto/SampleLib.sol\":{\"keccak256\":\"0x59e87e7d6a1e966c0f73bd919825ff7d81dc898625fe9fd20e6786e10b43783e\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://a931d31192faf6d9d9c82fc7099a776b5886d90dd0a2a9ee8093cc680dfdef70\",\"dweb:/ipfs/QmbQjTTf96tr2WSiuoWK8k984dGuXKooZWZ5o9EL7wEPhv\"]},\"src/core/libraries/rollup/AttestationLib.sol\":{\"keccak256\":\"0xf2111c30dc0d6c81d4f990990dfa37813932180e2b94739050356c5942f316e3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://fc4d8c42797fa58646094be9e108a60a278f2c2beea06bd7b06b00933b00c5b9\",\"dweb:/ipfs/QmdNPs36gak9y4YoCQq2ttv1nj8ALyab6f9P7SoozECrfN\"]},\"src/core/libraries/rollup/BlobLib.sol\":{\"keccak256\":\"0x40be24c3f297efce26b76cf2f674454344a20ba8b8fde7cdfd4c7ecfe339a507\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://6c37144509a9269c3fe0f0791649ef4f74e5db0b54d8b27c68a1558be2ccd350\",\"dweb:/ipfs/QmT4Fc8um96XkUWd1kJrdnHKvwqKouJtJW8zUaig5nVFQx\"]},\"src/core/libraries/rollup/CoordinationSignatureLib.sol\":{\"keccak256\":\"0x939c2aa29f536822f1f35db30af3b783986612bb35a210c583247f764c39dfae\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://6f5e71fe318f83063eda2027992740e7be7e0274887b4c11ab00ef3199398729\",\"dweb:/ipfs/QmPGkRVfkoLj8bi95vyySrtFeTaUGf62qcWoBy1nZRjZQc\"]},\"src/core/libraries/rollup/FeeLib.sol\":{\"keccak256\":\"0x78cccc8618137ebda0ca1cb68071a6458eff5c1e4eecce22de77c7479cb2f917\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://eb96d87ba3229de5d5a8e8cd9e1c29438789e578f915d787f2f7c0788f380679\",\"dweb:/ipfs/Qma3VYid6EyGtNCLertDyViT1Z8Ma1vNnc7EAEmJfxf8t9\"]},\"src/core/libraries/rollup/FieldLib.sol\":{\"keccak256\":\"0xd09f77d3aa6d7efc844e99bd496a145171613825bc45d35e1518889098f91e95\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://499d0aeb3c7b6801e49f7554110a194ebeca73bec4ddf4b00ea8dd64fcc4b2ac\",\"dweb:/ipfs/QmQf7EeP4kwTGPR2xfDK2MpNAqqcAY4vWZ3faEKn6JEW8R\"]},\"src/core/libraries/rollup/ProposeLib.sol\":{\"keccak256\":\"0x90d4fff721a1bcdbb555aad73a040ac1f0c3a61e286b0f291f47248129d8a777\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://988c7390ba413ae25939df5a9f8850649106627ddf453a60b472e31c32a97156\",\"dweb:/ipfs/QmXNPKm6y3bgTmjfeTMrY4sfBUFT4fLxZsMBBSC13Nt6oy\"]},\"src/core/libraries/rollup/ProposedHeaderLib.sol\":{\"keccak256\":\"0x43a9fa530b7cb948c1d7c436bddafdd8ddd8c022c67e25045372bc68b9e5018c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://904e4aa94b322f68c605dd34ea38bb77343437e2f2203c3e650cf7a7bb3aa19e\",\"dweb:/ipfs/QmX3H4PMwh57L5Zv3LFrHjkNmgVZiik4FmzSyJhnTJcqPD\"]},\"src/core/libraries/rollup/RewardExtLib.sol\":{\"keccak256\":\"0xc250dd943f18f347695d8fbec4b0ff86c38946f8d802a7a854961a53f5ce5d87\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://a6b4697bc295751e161204bbdf3c9744cc42c2a9296c6ba01bf4da868c25c939\",\"dweb:/ipfs/QmcVXrV111CvkFmcVXkpq43LCjWcnHQN1R27rHLLWq16do\"]},\"src/core/libraries/rollup/RewardLib.sol\":{\"keccak256\":\"0x12369f8300eaf1b004a87be6ef45061ec02be89257be343caa3a2f62db7e3290\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://678df0355f68957863798287ce5d890ed6530885d48423df2631407c17e031bb\",\"dweb:/ipfs/QmRp3iBcj1q5h66YZv7Tqix41LjBYqLVxow1XJkxut1cXW\"]},\"src/core/libraries/rollup/STFLib.sol\":{\"keccak256\":\"0xcb2ae0566bd5b0834f8ec2f73d78037f25d4d65894bff1ab8abcb9f8c65c7bc0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://35689b10ee3d4fff126625efa170fe77c617441fd7902d7376488af5061a79e0\",\"dweb:/ipfs/QmUzDZoMrpJAuhVYVGSruX4mj9jTJmSZncvoTHbsyZL7eM\"]},\"src/core/libraries/rollup/StakingLib.sol\":{\"keccak256\":\"0x6e3c96f937701c67570d902aca8d2f9a1ee35942e17b1e5a375b264582a6fe8c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://ddb78c290af17a9574b89104177d2f1079c5abeb462446722b8fb09e03659ea6\",\"dweb:/ipfs/QmURXaGC2SRKZc36NQZ4SXqNtgY5MpYQRamS3Shn2GMAoe\"]},\"src/core/libraries/rollup/ValidatorSelectionLib.sol\":{\"keccak256\":\"0xb2ad709554bab7c16597e0f71fe49ab68b90787b5da741b4ee138c2bde2b851d\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://a850a4276fca72867a1713a328c0f774f70d3b43e379350db5c985ed1ba0f38b\",\"dweb:/ipfs/QmYL5PycXBD4gxWVH6Z2A2niwkwFpqNd9r3Yqmkd3Ru9PY\"]},\"src/core/reward-boost/RewardBooster.sol\":{\"keccak256\":\"0x1cffe0dcbc06775ad415b06cd3591f74331bad3b154a3305ea6c5a081915fce0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://a2fcdbdcc260b3330bae0bc61227f652f9cb68e175fbc7d4173bf1d2dfaa92d1\",\"dweb:/ipfs/QmddUmciRbznTTfBpbZf2p3R9sC1oePRF9C3Swnq8qU3Xb\"]},\"src/core/slashing/Slasher.sol\":{\"keccak256\":\"0xc3040cd1813a6064a6afda9ca8b1f65f5cba2e7359050c48507d2f71d3606786\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://73f73fac9ffe650304c68a49635604806b86b0a5baadbf59ef36931e7937bc51\",\"dweb:/ipfs/QmaMMMXycUeybJyf2ZowJgQ1Wo4ZC7g5kyp1BHWfj8dkD9\"]},\"src/governance/Bn254LibWrapper.sol\":{\"keccak256\":\"0xea39571de45fe0fec82d9e760998677eb2432e08c6cdb00c41efa58caf56e607\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1e470b821f3d87fa0c988c5f23a8deed3849bffd2527b3b4ee137a90e0c1264c\",\"dweb:/ipfs/QmW3M4HyRLDruV5AYXCKicFCiiczmwnSTtnwVKUnQSm7a8\"]},\"src/governance/GSE.sol\":{\"keccak256\":\"0xc19fa4868d78030e2411dd5cef6d0da09645ade1d1ea0c4374b284a89feb722a\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://d06396c249566d0e9de5d34eade2bf27c4d583005c0129787bf6c413dcd9e273\",\"dweb:/ipfs/QmcimKKiV9KqobS5wzPsKYzyYu5WezCF3gyHkekf5tjrUU\"]},\"src/governance/GSEPayload.sol\":{\"keccak256\":\"0x40e5385b008f0335b50e066c647bb906685511c9fef206ce90a3391468558bae\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://a129e87e1d57cf0813b14108cbdbcdd4c114b20f3f2d67477302d6d050120c7e\",\"dweb:/ipfs/QmRcQQkeDhkrmQha3nkA8qvXnGmF6nLhZMKAhMx61A7a5y\"]},\"src/governance/Governance.sol\":{\"keccak256\":\"0x07770c3d80369adae51be8e361f63a2aa5ec489b354b10c8590be1e294dfe2e5\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://7219becf3467ea8368dba0bd093ba932b165cf3f214e7286f652e2730bf42eaf\",\"dweb:/ipfs/QmTSCDhSQBTKhzGUk12phxhqohSba6yopYMzF5T5XPFUWw\"]},\"src/governance/interfaces/IBn254LibWrapper.sol\":{\"keccak256\":\"0xdd0a3de8b8ff67cf2bf090d04b4a37aa6d604f402db3328387d2466d2354464a\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://daef0234547509cd7ae3a7babf0e50a8d1ca2894f1817e3e2409a50fd32947b9\",\"dweb:/ipfs/QmbwSedqnBfsqRnUq8XcXzoeoyhZTXJWJ9rpJn61BAJfej\"]},\"src/governance/interfaces/IEmpire.sol\":{\"keccak256\":\"0xe6a8a8c3fef8e6f9f5118bd40c63e951b13a59d5f885bbb979d38745ef760ed3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://940c1fe4138d7364ccdb7d5635ea90bafa1da274f680039b0b54ee8c2a275a9a\",\"dweb:/ipfs/QmX2EeoVyES18BMgcbKVDb36MCq8ooDVR98m2RmnmZjEAo\"]},\"src/governance/interfaces/IGovernance.sol\":{\"keccak256\":\"0xe420d305fbe7c35f4620cd1e0f05f9f4c5a91532621d21a64ea553a3d9a3c005\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1900ac41f945aa692d5228f134ae63840081d284bf89fdd2a06b45424fe359ff\",\"dweb:/ipfs/QmePFZ1xv5qfftJVDLc98XUVFsrpuKAbKZiro7MoMDTpoa\"]},\"src/governance/interfaces/IGovernanceProposer.sol\":{\"keccak256\":\"0x2be820a5452c481ffd329d68c46d0af6a286934963f26b36d363cd34fb0e5817\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f58839d1504e11e7da42b7f5a03fb9b9d8cc39ab4c16cfb86fa44c4de08df76f\",\"dweb:/ipfs/QmR6jUJozP9tfpZuSduk66E8n7WuL3zzsR3WHZ7BR2ZBX2\"]},\"src/governance/interfaces/IPayload.sol\":{\"keccak256\":\"0x5844ea725ce56ac8adeb20b2d37aa431ca087f68a65a7ca91f981be7458737c3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5ea670db51b2ccfac05a684b95458ecc015c9d12a6567c3f73d473386533f58c\",\"dweb:/ipfs/QmRUB8mckkGQ4nNsErRhnKMsD9SSkokRSpnr5XZC9dZdin\"]},\"src/governance/interfaces/IProposerPayload.sol\":{\"keccak256\":\"0x89068dd464c0bfb7d447c0e99728277e03c7c4b864208ead20321f0590187248\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4d1d9ba5f8b7da374d773acde9514ca6607ad31a3e83950caa097bdb8b0f9167\",\"dweb:/ipfs/Qmd7tWAD2Ubz434zZPJvuyAGsHYpXBHvVhVefLFzUudD2o\"]},\"src/governance/interfaces/IRegistry.sol\":{\"keccak256\":\"0xc3678c04c0945d3dc1d8007df3dc7f8b25d8108b0b25134842ffc5169f996ce8\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://71e4e401f1a6f561262755cc2e1c347cd3aa79e67d2e52ca547864f49de01724\",\"dweb:/ipfs/QmPvoKFEDTb41DSC3MmDMqtM3trj5oZb1Jj2jtQSnNfHBn\"]},\"src/governance/interfaces/IRewardDistributor.sol\":{\"keccak256\":\"0xf263f75be83d0b0e3c8f17ec7fc2558d3543df788dcb2db6f1ee158208134f14\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://b2b65819a5f9ecd2237957e987bb69160d3076ccaf9f76f925a936e574d63d76\",\"dweb:/ipfs/QmNgWESeo6UUvgW7rCMP3d4o8mUqSSbKrwbicH4kaUrm7h\"]},\"src/governance/libraries/AddressSnapshotLib.sol\":{\"keccak256\":\"0x1006e58059e0a1f0fef102f2f11f5649dffc7f2eb066fce51845e65a064f4210\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://de385ab9eb3bb66d7be1218b49ae9bba7d88797bcb375b9a7481a209d303a402\",\"dweb:/ipfs/QmZe6DTv3cACfdXNSMhbMhoefg31LW3uLxHLDC7nZhb4Yp\"]},\"src/governance/libraries/CheckpointedUintLib.sol\":{\"keccak256\":\"0xcd73cf7a62e4ac5cc79f7f8df8b35d5c5e4df5b8a3478bcbc2b29c9aa89ea4b4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f56f37060d39d3c9276f23c96be7f6b1ea44676312dbaa1ab16ab3bff6acebf1\",\"dweb:/ipfs/QmPDUEEgdbpTTs9r3fvdMYJo9akCRsWcJXyarBhQgcKb5q\"]},\"src/governance/libraries/ConfigurationLib.sol\":{\"keccak256\":\"0x7cb65bdbd8d077f3cfc01b065fb3a57628db36cd46f68885c74b9131198c2149\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e37bde50f5f739f479feb95fbe81ed24ee47f841b99f066ecf6782e758d1978a\",\"dweb:/ipfs/QmebPE5REUpYRB8dikUebcGtyk9uy44G9mbchKJtHxJAgy\"]},\"src/governance/libraries/DepositDelegationLib.sol\":{\"keccak256\":\"0x37fbca65ccabec9d901bd71d684dceec7c59fa5a05438fd209ea0d5e16e764c0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e42f2622978abc3ac84223a6b206201898d0269d20bf81539636c0999a0db9eb\",\"dweb:/ipfs/QmW4BgTjR6BuPxwxreKarUeK1u8gx3p9yFdDD4EsC5hkyb\"]},\"src/governance/libraries/Errors.sol\":{\"keccak256\":\"0x8861ea7508138c83e89f186ce17accb42a6eee7d1d2e52841975d4ba676daae4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://b0d5b01c2b0a20c3c70a7ab2b8405d083a063bf5758beb87a4d488bda76078fa\",\"dweb:/ipfs/QmfGH6CTCPA6nVA6KidcTSvaJ6MQZkv6KiuDVBTARGBTRv\"]},\"src/governance/libraries/ProposalLib.sol\":{\"keccak256\":\"0x616ffbb24c4454ca9e223e85ff01e8dca139723d5cd312d5d6f6111d79782a90\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://192f9be3355a7a94d19ae4e5b397e5db19dde64ccc671e149da06dfaa2577192\",\"dweb:/ipfs/QmTDcm7XEFLe7o5cXUmuu5wQDyprU78AVMymiWvrmP4tHT\"]},\"src/governance/libraries/compressed-data/Ballot.sol\":{\"keccak256\":\"0xca07dc8cf36ac2beae7674804af144b34b3c5848153351c17d996e9b3293cd5d\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://6911cc49f1d6977c12f652063c14891697c1ffe49fdf36903c32a8ad73cbd012\",\"dweb:/ipfs/QmQBEZARCAAj1ZLcswkH6FwP1RP8uuNjYTHqthmE9Z5RnM\"]},\"src/governance/libraries/compressed-data/Configuration.sol\":{\"keccak256\":\"0x40744f275af22d33c38fd9c6a7b822292c9c87b17ac2c78abbef4eb8356fd9f9\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://73c685be7e934516207827a59cbbeb7fc1164e7659dd3ec857a91cfea765b482\",\"dweb:/ipfs/QmQfudRpSSQnG9u4XV8iA2UAyDzQPFqWzpZy5NZbaD6htv\"]},\"src/governance/libraries/compressed-data/Proposal.sol\":{\"keccak256\":\"0x72cf619a21c8e95875c63d4361cbe1a815d9d67f36f3fe32b6c9ca4d9ab0d33a\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://d80f47beb3f91da3cc68264c86fc8fb8f0e4abaf9d92243ab3206407fceed5c6\",\"dweb:/ipfs/QmYyrBTDMfkTBu6EcKcSMR7JyfphZ5xH1VCQ8EHMQUvsoN\"]},\"src/governance/proposer/EmpireBase.sol\":{\"keccak256\":\"0x747b20e201dab632a831c12f1fee9ee52cc80a2098c77e8b6c7b09b0f3ba2bc0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://b7d4a0475ca364f75aa2a1d17ed9e6970f0be605126f2efe26d53c791d4a5209\",\"dweb:/ipfs/Qma5tkTcy94PqE9vtQybQSyH9LWaHR8V3ubwDPZwiUNT35\"]},\"src/governance/proposer/GovernanceProposer.sol\":{\"keccak256\":\"0xa2829df5b65856c9f1d6bf490fb50616f14402ff8eece2e32b63828b8b9337c3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://8ad52830a7a3aed3477bf55f92c3d68cb1c16a5cf1d636227ab76a306c846607\",\"dweb:/ipfs/QmRonyZQZj5D1e2g4Y6Tmj2AEUnekL4pGmgdMT4ycRAM8m\"]},\"src/mock/libraries/BlobLib.sol\":{\"keccak256\":\"0xa1b19239c5c64ba1b0c9f83ec0a30059f10ded12bf40d5d7c3f65974752b3121\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5cbce7d0dd0096232d60ec5c6920f211ffcaa46c8675b1129c1f939a1ee84837\",\"dweb:/ipfs/QmSS2qUhzUuZY1qHDjWUGvHuMqMG3cjHoHeDVvgWsjMdA9\"]},\"src/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":"uint256","name":"maximum","type":"uint256"},{"internalType":"uint256","name":"provided","type":"uint256"}],"type":"error","name":"FeeLib__InvalidManaLimit"},{"inputs":[{"internalType":"uint256","name":"minimum","type":"uint256"},{"internalType":"uint256","name":"provided","type":"uint256"}],"type":"error","name":"FeeLib__InvalidManaTarget"},{"inputs":[{"internalType":"uint256","name":"nextAllowed","type":"uint256"}],"type":"error","name":"FeeLib__ProtocolFeeMarginCooldown"},{"inputs":[{"internalType":"uint256","name":"current","type":"uint256"},{"internalType":"uint256","name":"requested","type":"uint256"}],"type":"error","name":"FeeLib__ProtocolFeeMarginStepExceeded"},{"inputs":[{"internalType":"uint256","name":"provided","type":"uint256"},{"internalType":"uint256","name":"minimum","type":"uint256"}],"type":"error","name":"FeeLib__ProvingCostBelowFloor"},{"inputs":[{"internalType":"uint256","name":"nextAllowed","type":"uint256"}],"type":"error","name":"FeeLib__ProvingCostCooldown"},{"inputs":[{"internalType":"uint256","name":"current","type":"uint256"},{"internalType":"uint256","name":"requested","type":"uint256"}],"type":"error","name":"FeeLib__ProvingCostStepExceeded"},{"inputs":[{"internalType":"address","name":"registry","type":"address"}],"type":"error","name":"RewardLib__DuplicateRegistryRewardOverride"},{"inputs":[],"type":"error","name":"RewardLib__InvalidProtocolFeeRecipient"},{"inputs":[{"internalType":"address","name":"registry","type":"address"},{"internalType":"uint256","name":"sequencerReward","type":"uint256"}],"type":"error","name":"RewardLib__InvalidRegistryRewardOverride"},{"inputs":[],"type":"error","name":"RewardLib__InvalidSequencerBps"},{"inputs":[{"internalType":"address","name":"registry","type":"address"},{"internalType":"uint256","name":"sequencerReward","type":"uint256"},{"internalType":"uint256","name":"defaultSequencerReward","type":"uint256"}],"type":"error","name":"RewardLib__RegistryRewardOverrideAboveDefault"},{"inputs":[{"internalType":"uint256","name":"proven","type":"uint256"},{"internalType":"uint256","name":"requested","type":"uint256"}],"type":"error","name":"Rollup__CheckpointNotProven"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"actual","type":"uint256"}],"type":"error","name":"Rollup__InvalidCheckpointNumber"},{"inputs":[{"internalType":"uint256","name":"minimum","type":"uint256"},{"internalType":"uint256","name":"provided","type":"uint256"}],"type":"error","name":"Rollup__InvalidManaTarget"},{"inputs":[{"internalType":"Epoch","name":"deadline","type":"uint256"},{"internalType":"Epoch","name":"currentEpoch","type":"uint256"}],"type":"error","name":"Rollup__NotPastDeadline"},{"inputs":[{"internalType":"uint256","name":"checkpointNumber","type":"uint256"},{"internalType":"uint256","name":"pendingCheckpointNumber","type":"uint256"},{"internalType":"uint256","name":"upperLimit","type":"uint256"}],"type":"error","name":"Rollup__UnavailableTempCheckpointLog"},{"inputs":[{"internalType":"int256","name":"value","type":"int256"}],"type":"error","name":"SafeCastOverflowedIntToUint"},{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"type":"error","name":"SafeCastOverflowedUintDowncast"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"type":"error","name":"SafeERC20FailedOperation"},{"inputs":[{"internalType":"uint256","name":"manaTarget","type":"uint256","indexed":true}],"type":"event","name":"ManaTargetUpdated","anonymous":false},{"inputs":[{"internalType":"uint16","name":"oldBps","type":"uint16","indexed":false},{"internalType":"uint16","name":"newBps","type":"uint16","indexed":false}],"type":"event","name":"ProtocolFeeMarginUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"oldRecipient","type":"address","indexed":false},{"internalType":"address","name":"newRecipient","type":"address","indexed":false}],"type":"event","name":"ProtocolFeeRecipientUpdated","anonymous":false},{"inputs":[{"internalType":"struct MutableRewardConfig","name":"rewardConfig","type":"tuple","components":[{"internalType":"Bps","name":"sequencerBps","type":"uint32"},{"internalType":"uint96","name":"checkpointReward","type":"uint96"}],"indexed":false}],"type":"event","name":"RewardConfigUpdated","anonymous":false},{"inputs":[{"internalType":"Timestamp","name":"_ts","type":"uint256"}],"stateMutability":"view","type":"function","name":"canPruneAtTime","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getCheckpointReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"Epoch","name":"_epoch","type":"uint256"}],"stateMutability":"view","type":"function","name":"getCollectiveProverRewardsForEpoch","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_checkpointNumber","type":"uint256"}],"stateMutability":"view","type":"function","name":"getEpochForCheckpoint","outputs":[{"internalType":"Epoch","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_checkpointNumber","type":"uint256"}],"stateMutability":"view","type":"function","name":"getEthPerFeeAssetAtCheckpoint","outputs":[{"internalType":"EthPerFeeAssetE12","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_checkpointNumber","type":"uint256"}],"stateMutability":"view","type":"function","name":"getFirstProvenBy","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_prover","type":"address"},{"internalType":"Epoch","name":"_epoch","type":"uint256"}],"stateMutability":"view","type":"function","name":"getHasClaimed","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"Epoch","name":"_epoch","type":"uint256"},{"internalType":"uint256","name":"_length","type":"uint256"},{"internalType":"address","name":"_prover","type":"address"}],"stateMutability":"view","type":"function","name":"getHasSubmitted","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"Timestamp","name":"_timestamp","type":"uint256"}],"stateMutability":"view","type":"function","name":"getL1FeesAt","outputs":[{"internalType":"struct L1FeeData","name":"","type":"tuple","components":[{"internalType":"uint256","name":"baseFee","type":"uint256"},{"internalType":"uint256","name":"blobFee","type":"uint256"}]}]},{"inputs":[{"internalType":"Timestamp","name":"_timestamp","type":"uint256"},{"internalType":"bool","name":"_inFeeAsset","type":"bool"}],"stateMutability":"view","type":"function","name":"getManaMinFeeComponentsAt","outputs":[{"internalType":"struct ManaMinFeeComponents","name":"","type":"tuple","components":[{"internalType":"uint256","name":"protocolFee","type":"uint256"},{"internalType":"uint256","name":"congestionMultiplier","type":"uint256"},{"internalType":"uint256","name":"sequencerCost","type":"uint256"},{"internalType":"uint256","name":"proverCost","type":"uint256"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getProvingCostPerMana","outputs":[{"internalType":"EthValue","name":"","type":"uint256"}]},{"inputs":[{"internalType":"EthPerFeeAssetE12","name":"_ethPerFeeAsset","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProvingCostPerManaInFeeAsset","outputs":[{"internalType":"FeeAssetValue","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRewardConfig","outputs":[{"internalType":"struct RewardConfig","name":"","type":"tuple","components":[{"internalType":"contract IRewardDistributor","name":"rewardDistributor","type":"IRewardDistributor"},{"internalType":"Bps","name":"sequencerBps","type":"uint32"},{"internalType":"contract IBoosterCore","name":"booster","type":"IBoosterCore"},{"internalType":"uint96","name":"checkpointReward","type":"uint96"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRewardDistributor","outputs":[{"internalType":"contract IRewardDistributor","name":"","type":"IRewardDistributor"}]},{"inputs":[{"internalType":"address","name":"_sequencer","type":"address"}],"stateMutability":"view","type":"function","name":"getSequencerRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_prover","type":"address"}],"stateMutability":"view","type":"function","name":"getSharesFor","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"Epoch","name":"_epoch","type":"uint256"},{"internalType":"address","name":"_prover","type":"address"}],"stateMutability":"view","type":"function","name":"getSpecificProverRewardsForEpoch","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"struct ManaMinFeeComponents","name":"_components","type":"tuple","components":[{"internalType":"uint256","name":"protocolFee","type":"uint256"},{"internalType":"uint256","name":"congestionMultiplier","type":"uint256"},{"internalType":"uint256","name":"sequencerCost","type":"uint256"},{"internalType":"uint256","name":"proverCost","type":"uint256"}]}],"stateMutability":"pure","type":"function","name":"summedMinFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]}],"devdoc":{"kind":"dev","methods":{"updateConfig(MutableRewardConfig)":{"details":"The owner-only fee and reward setters below hold their validation, mutation and event emission here rather than in the Rollup. The Rollup sits close to the EIP-170 limit, and an event's topic hash plus its argument encoding costs it ~75 bytes per emit site; the `FeeLib` mutators inline another few hundred. A delegatecall keeps `msg.sender`, storage and the log's emitting address, so moving them across this boundary is behaviour preserving, and it only costs gas on cold admin paths. `ProposeLib` calls `FeeLib` directly, so `propose` is unaffected."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@aztec-blob-lib/=src/mock/libraries/","@aztec/=src/","@generated/=generated/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@oz/=lib/openzeppelin-contracts/contracts/","@test/=test/","@zkpassport-test/=lib/circuits/src/solidity/test/","@zkpassport/=lib/circuits/src/solidity/src/","circuits/=lib/circuits/src/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","halmos-cheatcodes/=lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/","openzeppelin-contracts/=lib/openzeppelin-contracts/"],"optimizer":{"enabled":true,"runs":100},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/core/libraries/rollup/RewardExtLib.sol":"RewardExtLib"},"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/SlotDerivation.sol":{"keccak256":"0x8447b57b63810fe2e367c09496a966f143ec0e825d71ddb9fce2506cff84b618","urls":["bzz-raw://996cb48f793bf151555045b37138e36b3cdb31d6bc6552d3149285260be00cfb","dweb:/ipfs/QmcLaTTMNVbkMx58xhkp6GeFt4V3GtSyupZuaKG3vYW2Zc"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xcf74f855663ce2ae00ed8352666b7935f6cddea2932fdf2c3ecd30a9b1cd0e97","urls":["bzz-raw://9f660b1f351b757dfe01438e59888f31f33ded3afcf5cb5b0d9bf9aa6f320a8b","dweb:/ipfs/QmarDJ5hZEgBtCmmrVzEZWjub9769eD686jmzb2XpSU1cM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x9e82c00fb176503860139c6bbf593b1a954ee7ff97ab2969656571382b9b58a2","urls":["bzz-raw://34b4eb157b44d4441315db65561ba7cf0fe909dc598c2cfd7080d203077d5b57","dweb:/ipfs/QmcNdvK3kDUAUr48urHxoeHd1TqVDya4YfZTM66i4goEJn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/TransientSlot.sol":{"keccak256":"0x9303ef5a2beb555e52ce56598de205ce07ca8988fc67d073687c06cb8fc973d1","urls":["bzz-raw://8b2e48fb42844c25e6cb38e7cfa1d91dcdc054613fd10f608833dbc677acf889","dweb:/ipfs/QmT4HQxbgpWA3fZnK4dY3eXHNCoyBvpvzNq5k7eSt5mR5t"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"keccak256":"0x69f54c02b7d81d505910ec198c11ed4c6a728418a868b906b4a0cf29946fda84","urls":["bzz-raw://8e25e4bdb7ae1f21d23bfee996e22736fc0ab44cfabedac82a757b1edc5623b9","dweb:/ipfs/QmQdWQvB6JCP9ZMbzi8EvQ1PTETqkcTWrbcVurS7DKpa5n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/cryptography/EIP712.sol":{"keccak256":"0x10eb97d047f8d84fe263a02bb4a656ac6674f6679d74532cc37546289e073a9d","urls":["bzz-raw://3e41287d40b0c46982f1083d40d32de2761f009c5c51627fe79a7feb0ab1cf5c","dweb:/ipfs/Qme7dbh6HX3ZvUJdbQAcVqXkmyXyfcLiUZRhhon3cU6K8p"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol":{"keccak256":"0x4515543bc4c78561f6bea83ecfdfc3dead55bd59858287d682045b11de1ae575","urls":["bzz-raw://60601f91440125727244fffd2ba84da7caafecaae0fd887c7ccfec678e02b61e","dweb:/ipfs/QmZnKPBtVDiQS9Dp8gZ4sa3ZeTrWVfqF7yuUd6Y8hwm1Rs"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8","urls":["bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621","dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0x2c33f654cefbbe80a9b436b5792cfe8bda2e87f139f110073c99762558db252f","urls":["bzz-raw://dc7ebd80046a52f28978cf46a24ff3e4c8568264ab6bb138038951c75d576167","dweb:/ipfs/QmQQjXVr4CbDR3DXd8GHEqn3JSJYTnbBHMJp9tvc29yXrc"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"keccak256":"0x195533c86d0ef72bcc06456a4f66a9b941f38eb403739b00f21fd7c1abd1ae54","urls":["bzz-raw://b1d578337048cad08c1c03041cca5978eff5428aa130c781b271ad9e5566e1f8","dweb:/ipfs/QmPFKL2r9CBsMwmUqqdcFPfHZB2qcs9g1HDrPxzWSxomvy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xb1970fac7b64e6c09611e6691791e848d5e3fe410fa5899e7df2e0afd77a99e3","urls":["bzz-raw://db5fbb3dddd8b7047465b62575d96231ba8a2774d37fb4737fbf23340fabbb03","dweb:/ipfs/QmVUSvooZKEdEdap619tcJjTLcAuH6QBdZqAzWwnAXZAWJ"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/structs/BitMaps.sol":{"keccak256":"0x3616f1b0d0a9ee1ca8f0953ecaceb9230e36f691c7974d30f964212acff52d2b","urls":["bzz-raw://d4bebdd07b31ac28e3e596ac6f0333da90a4e332405aa7d65f3a3a7e0b4cf15e","dweb:/ipfs/QmckoDU5bBnye2UtPcrfJNahLD2FbxrnPP9nrREMWPpnug"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/structs/Checkpoints.sol":{"keccak256":"0x66364cd3247ea71cdb58f080f5d5ed6732433a8001413139661841535494692f","urls":["bzz-raw://0f87914c6645b58eaf75f00a156037a7da91129f3a56aec44aebfc715b19ea44","dweb:/ipfs/QmNX7NLSMXyWuogvf8wfCwjUGwLhLBZrGktWPSdoHtERGp"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol":{"keccak256":"0x9b161e97b8967d4bc0c08d25741889a30692cdda4b71910bf1b0e315f1962212","urls":["bzz-raw://821500c39d095eaa25b06f46e65f1d0e97c4c96b39227f79077dee7d9e84051f","dweb:/ipfs/QmSTeGorKzSWF6HAmxo32uCZiEuKNvreQdUiX1AaYtUMTz"],"license":"MIT"},"src/core/interfaces/IEscapeHatch.sol":{"keccak256":"0x1a499acad8813b56e7d9cdcff3152e36196482794e62302e95a28603f5915747","urls":["bzz-raw://18da3711ad1fbc413336c252709e1ad32d51092336fbe6c2428b48768f58352c","dweb:/ipfs/QmdkMJiH1pdcuoLe5zPHeMtnFhZ1k7PLZJtoWQUcpcm4bJ"],"license":"Apache-2.0"},"src/core/interfaces/IFeeJuicePortal.sol":{"keccak256":"0xce84c8907395b4c11cc6dd8035d8e14560153450f9d88340cfb8abb914c66639","urls":["bzz-raw://f5eb389f1a6e9adbb2f24dad7a6c0bc706d49decad82ba9b582c288e12eddda6","dweb:/ipfs/QmNM3uQmJYn9B6RAHSMUT3TZMR6R75okjJErUEsuRjxGXt"],"license":"Apache-2.0"},"src/core/interfaces/IRollup.sol":{"keccak256":"0x8c843d930bb66928087a3ce19786d0a7b2d0d28d321ac41c10394088baab7f5c","urls":["bzz-raw://7df362b5237cfcfac09915ef4ae261d985ae26a91be847855ef277715f732748","dweb:/ipfs/QmeW86CE58Kntiuy8ZHdRFBGnw5yxFCmG4gdFVnYppTcr1"],"license":"Apache-2.0"},"src/core/interfaces/ISlasher.sol":{"keccak256":"0xf7dc3b2795b2806dbec7c94c33665abcf00a35ee65802a47f6222faf8641d302","urls":["bzz-raw://d7c9283746c66f04df5a133145b3196fc176e06e2fe6b3285056ffac68a09e9b","dweb:/ipfs/QmPxTkM1eMNFny3yibc69p1GqWvPkno5fzBjyju89h7CNk"],"license":"Apache-2.0"},"src/core/interfaces/IStaking.sol":{"keccak256":"0x81ddf8fa0cf8a213d690845fd4d3e31e45c543e5876612e94607cdb753804f1d","urls":["bzz-raw://7e0ae2a10903274cca7231306660dd6d5d1e5632238618b390aa7f4dfa5422f3","dweb:/ipfs/QmTMXRYdNGnmecbUdREFfgsLwnMsRjDseLVXsvPqQoiago"],"license":"Apache-2.0"},"src/core/interfaces/IValidatorSelection.sol":{"keccak256":"0x880355d12ccf03d98667fe24763c8145abbd8ca8ea9faf8a30a967311dcac7ed","urls":["bzz-raw://c98e9fd3b3abb044b084d559e9e50cab0d58e08ab880fcbf8f52d9d93cac8ffd","dweb:/ipfs/Qmd3nRejx4X57zgehytxvjdYrL5X61nM3bdfJKySAwDMoS"],"license":"Apache-2.0"},"src/core/interfaces/IVerifier.sol":{"keccak256":"0xf5b6025ff3d59b8922bb45fb05786764e74109b4a349d206b8a7979f46484c55","urls":["bzz-raw://98ec47ac3e15b1d8f2c80854ed6fd83e655e9e96341bb827f3be8e6b47f4c7fb","dweb:/ipfs/QmcmUkLgM7fb7mEaJTiWJWrZTW2kAWtRcYS6imBfmueALe"],"license":"Apache-2.0"},"src/core/interfaces/messagebridge/IInbox.sol":{"keccak256":"0x1149c904c8b3bd2942628fbab5480cdc044e831d51963f9e6946f1974cc162bd","urls":["bzz-raw://af2f1f49feba389b0bdbf427c4a85fac2908699585e5babd75f77cf14416ed5f","dweb:/ipfs/QmZYjZyhicCpTcwPuWTjTTUxnaBnfv5bTMWDgxyDGqy8Gm"],"license":"Apache-2.0"},"src/core/interfaces/messagebridge/IOutbox.sol":{"keccak256":"0xf66d0bb4f6d978acf91a036737cd4326bfab16a4030d10510d2976e4218ed8ad","urls":["bzz-raw://e796eea21d552b2ca4d0446bb096e2c980ab84816d9dd1398113293ae8128b30","dweb:/ipfs/QmNuGgRtPFgRe3asa68vDMcWpyfDFqQ5w5j5U7yWD1EsyZ"],"license":"Apache-2.0"},"src/core/libraries/ConstantsGen.sol":{"keccak256":"0xe328f94338f5563669e04618c3ec21ec38b9f21ab24d5de698d80cf38f977dfa","urls":["bzz-raw://3d9872c9a78d7241053e9ce3eadf192d18a9cb4b95c0ac120470d92435b7216e","dweb:/ipfs/QmcRnfbW8sNWwRHPik4wvkA7CTY1BTjuf2ydu3jN5otQJT"],"license":"Apache-2.0"},"src/core/libraries/DataStructures.sol":{"keccak256":"0x5ea9d1097f0b53eafbd72332d4c5c517307e5a056266befe5b46f5f43ee3d83c","urls":["bzz-raw://1a742311dc3c5ead2d5361549f017d20f46c40a4e74e879823ac168cf5b572d4","dweb:/ipfs/QmTNDc1fiPti41QqJTJQoV9uduB6eXaQhbfq1hfVVjVNvS"],"license":"Apache-2.0"},"src/core/libraries/Errors.sol":{"keccak256":"0x5de665a9151b837e2e179ea55c9c54577981d385cffea2fe046d6f70624497b2","urls":["bzz-raw://53645107af6da2cf033f7e16a1a5f8922a63db2e332ba769a72128ee0a30ff3e","dweb:/ipfs/QmYyNYvZwtYNUiwW422pNfqERp8Tf76DQCnRFiiYZS85w8"],"license":"Apache-2.0"},"src/core/libraries/HatchMath.sol":{"keccak256":"0xca787b2889e281c8db132043312aa9513315669782981689824344c910833fe4","urls":["bzz-raw://77ec2f6b5919d53d3a7128f6006155f2566a84e7a56cd26e9d5e6d1514ccd7a2","dweb:/ipfs/Qmc3Z2quujEwxQU1JBfrxhkiULaczspBsTMjXibqXCjFyd"],"license":"Apache-2.0"},"src/core/libraries/SlashRoundLib.sol":{"keccak256":"0x6773eea1fa593e5c1e16fcd3a8341b537bf5ed7ee2f10472649dfd542e3ade8e","urls":["bzz-raw://756bdaa3facd4034149eeb3553ae99777b646c3e16abf8d41f9558e74249baa6","dweb:/ipfs/QmNpb62diGKNKf5pcynejjhNex9c6PTkZnVUeuLvJ2qCZ9"],"license":"Apache-2.0"},"src/core/libraries/StakingQueue.sol":{"keccak256":"0xbbeafda1659a92be14ec5b77838952a089f075cc1d0c5f348b6ff336ea6a1a98","urls":["bzz-raw://f3c8bdb1de77dab697ef4442f72fa4830c757059f8d948d2f3aeb7f6983aa64f","dweb:/ipfs/QmSDYdTnFo8nx34q3fdJCKpy8DCnKBQ4isxr49o4sY5T6T"],"license":"Apache-2.0"},"src/core/libraries/TimeLib.sol":{"keccak256":"0x865b760fe681ee74a93b49491d897a98091432ebc2923ff17717ddb6d26d31ab","urls":["bzz-raw://4ccdfb80464d8e58a95a68314fe2dd33f4a1634ab0695a9a4e9c180a50cc592b","dweb:/ipfs/QmNUUFN7RTjiicZCkci6eEnfromVTPS2MVE4CkbqoneV6P"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/CheckpointLog.sol":{"keccak256":"0x613513b7eb7855ff619c9eb3f1589fcfb0d7675e15c5261034ac353a62c5cabf","urls":["bzz-raw://110e7cc1eae76116a6682a9044cf9031744a7a8c46164987e246923169618d5e","dweb:/ipfs/QmcuhMXiGWjAbYGYYXKrTCLNYguQZpgxpWVWteJezYKVzQ"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/StakingQueueConfig.sol":{"keccak256":"0x32b00fd08e1754d9d9c9b377ae0a0ea887ace519db0ec6d252e1b2216891068e","urls":["bzz-raw://4ecea0a1ff8536819d37d3800b2915249b5c854d9dc611e91aae81df6acf7d76","dweb:/ipfs/Qmf3FgXCf1MP78p5B76kQnwx8yXFXncutVzQhV2fteBvVn"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/Tips.sol":{"keccak256":"0xdf872f54470e59b86349871e2c12075e8daaad85894f90e64f92538daf5f4008","urls":["bzz-raw://493e4bc02c6e9acbb5bfaa68f19bf4defb409211b701784e43d2ca6cbc11ccd1","dweb:/ipfs/QmSUahndZ78LBx6WdozXWL6QkqxZXzrXpHna2kGwCqgy34"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/fees/FeeConfig.sol":{"keccak256":"0xd5593d342fd9e75cf10d9c126d5aa46eab6707221111d81757e0f5c3473c23fd","urls":["bzz-raw://5cdfdfa94ea9d7b93cb80bdbd9e81c80fc7d71de890d88bb957960d0d5734298","dweb:/ipfs/QmQ2VjHtpja19AxDnGg2Q5hCck678PUrfLDuwUNvcyo4YS"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/fees/FeeStructs.sol":{"keccak256":"0x23304769b5d5098b6d6b1092be483f34c0c901d7e14667404e8c5335dad8b501","urls":["bzz-raw://9ef5000b6a27a338f60dad80f73ea03d6560afc46c063d8d52932574d82cf157","dweb:/ipfs/QmSzdqmERrrCqdfqy4jXhdiyokyNRLvi4qLp85iw8rR9iJ"],"license":"Apache-2.0"},"src/core/libraries/crypto/Hash.sol":{"keccak256":"0x0e2bad615ee34b98ffdc7b81558e78ad3701cf8e02dc0fa4721555b4cdb861cb","urls":["bzz-raw://8f69943a9ad3fba8a12ae34b3d60815c4339ea66a5ec75beb781d22a872c2d4d","dweb:/ipfs/QmTfjRk9vBaxfziFgwYzWgTWFEvbB8EEudkcYupPw6qLXW"],"license":"Apache-2.0"},"src/core/libraries/crypto/SampleLib.sol":{"keccak256":"0x59e87e7d6a1e966c0f73bd919825ff7d81dc898625fe9fd20e6786e10b43783e","urls":["bzz-raw://a931d31192faf6d9d9c82fc7099a776b5886d90dd0a2a9ee8093cc680dfdef70","dweb:/ipfs/QmbQjTTf96tr2WSiuoWK8k984dGuXKooZWZ5o9EL7wEPhv"],"license":"Apache-2.0"},"src/core/libraries/rollup/AttestationLib.sol":{"keccak256":"0xf2111c30dc0d6c81d4f990990dfa37813932180e2b94739050356c5942f316e3","urls":["bzz-raw://fc4d8c42797fa58646094be9e108a60a278f2c2beea06bd7b06b00933b00c5b9","dweb:/ipfs/QmdNPs36gak9y4YoCQq2ttv1nj8ALyab6f9P7SoozECrfN"],"license":"Apache-2.0"},"src/core/libraries/rollup/BlobLib.sol":{"keccak256":"0x40be24c3f297efce26b76cf2f674454344a20ba8b8fde7cdfd4c7ecfe339a507","urls":["bzz-raw://6c37144509a9269c3fe0f0791649ef4f74e5db0b54d8b27c68a1558be2ccd350","dweb:/ipfs/QmT4Fc8um96XkUWd1kJrdnHKvwqKouJtJW8zUaig5nVFQx"],"license":"Apache-2.0"},"src/core/libraries/rollup/CoordinationSignatureLib.sol":{"keccak256":"0x939c2aa29f536822f1f35db30af3b783986612bb35a210c583247f764c39dfae","urls":["bzz-raw://6f5e71fe318f83063eda2027992740e7be7e0274887b4c11ab00ef3199398729","dweb:/ipfs/QmPGkRVfkoLj8bi95vyySrtFeTaUGf62qcWoBy1nZRjZQc"],"license":"Apache-2.0"},"src/core/libraries/rollup/FeeLib.sol":{"keccak256":"0x78cccc8618137ebda0ca1cb68071a6458eff5c1e4eecce22de77c7479cb2f917","urls":["bzz-raw://eb96d87ba3229de5d5a8e8cd9e1c29438789e578f915d787f2f7c0788f380679","dweb:/ipfs/Qma3VYid6EyGtNCLertDyViT1Z8Ma1vNnc7EAEmJfxf8t9"],"license":"Apache-2.0"},"src/core/libraries/rollup/FieldLib.sol":{"keccak256":"0xd09f77d3aa6d7efc844e99bd496a145171613825bc45d35e1518889098f91e95","urls":["bzz-raw://499d0aeb3c7b6801e49f7554110a194ebeca73bec4ddf4b00ea8dd64fcc4b2ac","dweb:/ipfs/QmQf7EeP4kwTGPR2xfDK2MpNAqqcAY4vWZ3faEKn6JEW8R"],"license":"Apache-2.0"},"src/core/libraries/rollup/ProposeLib.sol":{"keccak256":"0x90d4fff721a1bcdbb555aad73a040ac1f0c3a61e286b0f291f47248129d8a777","urls":["bzz-raw://988c7390ba413ae25939df5a9f8850649106627ddf453a60b472e31c32a97156","dweb:/ipfs/QmXNPKm6y3bgTmjfeTMrY4sfBUFT4fLxZsMBBSC13Nt6oy"],"license":"Apache-2.0"},"src/core/libraries/rollup/ProposedHeaderLib.sol":{"keccak256":"0x43a9fa530b7cb948c1d7c436bddafdd8ddd8c022c67e25045372bc68b9e5018c","urls":["bzz-raw://904e4aa94b322f68c605dd34ea38bb77343437e2f2203c3e650cf7a7bb3aa19e","dweb:/ipfs/QmX3H4PMwh57L5Zv3LFrHjkNmgVZiik4FmzSyJhnTJcqPD"],"license":"Apache-2.0"},"src/core/libraries/rollup/RewardExtLib.sol":{"keccak256":"0xc250dd943f18f347695d8fbec4b0ff86c38946f8d802a7a854961a53f5ce5d87","urls":["bzz-raw://a6b4697bc295751e161204bbdf3c9744cc42c2a9296c6ba01bf4da868c25c939","dweb:/ipfs/QmcVXrV111CvkFmcVXkpq43LCjWcnHQN1R27rHLLWq16do"],"license":"Apache-2.0"},"src/core/libraries/rollup/RewardLib.sol":{"keccak256":"0x12369f8300eaf1b004a87be6ef45061ec02be89257be343caa3a2f62db7e3290","urls":["bzz-raw://678df0355f68957863798287ce5d890ed6530885d48423df2631407c17e031bb","dweb:/ipfs/QmRp3iBcj1q5h66YZv7Tqix41LjBYqLVxow1XJkxut1cXW"],"license":"Apache-2.0"},"src/core/libraries/rollup/STFLib.sol":{"keccak256":"0xcb2ae0566bd5b0834f8ec2f73d78037f25d4d65894bff1ab8abcb9f8c65c7bc0","urls":["bzz-raw://35689b10ee3d4fff126625efa170fe77c617441fd7902d7376488af5061a79e0","dweb:/ipfs/QmUzDZoMrpJAuhVYVGSruX4mj9jTJmSZncvoTHbsyZL7eM"],"license":"Apache-2.0"},"src/core/libraries/rollup/StakingLib.sol":{"keccak256":"0x6e3c96f937701c67570d902aca8d2f9a1ee35942e17b1e5a375b264582a6fe8c","urls":["bzz-raw://ddb78c290af17a9574b89104177d2f1079c5abeb462446722b8fb09e03659ea6","dweb:/ipfs/QmURXaGC2SRKZc36NQZ4SXqNtgY5MpYQRamS3Shn2GMAoe"],"license":"Apache-2.0"},"src/core/libraries/rollup/ValidatorSelectionLib.sol":{"keccak256":"0xb2ad709554bab7c16597e0f71fe49ab68b90787b5da741b4ee138c2bde2b851d","urls":["bzz-raw://a850a4276fca72867a1713a328c0f774f70d3b43e379350db5c985ed1ba0f38b","dweb:/ipfs/QmYL5PycXBD4gxWVH6Z2A2niwkwFpqNd9r3Yqmkd3Ru9PY"],"license":"Apache-2.0"},"src/core/reward-boost/RewardBooster.sol":{"keccak256":"0x1cffe0dcbc06775ad415b06cd3591f74331bad3b154a3305ea6c5a081915fce0","urls":["bzz-raw://a2fcdbdcc260b3330bae0bc61227f652f9cb68e175fbc7d4173bf1d2dfaa92d1","dweb:/ipfs/QmddUmciRbznTTfBpbZf2p3R9sC1oePRF9C3Swnq8qU3Xb"],"license":"Apache-2.0"},"src/core/slashing/Slasher.sol":{"keccak256":"0xc3040cd1813a6064a6afda9ca8b1f65f5cba2e7359050c48507d2f71d3606786","urls":["bzz-raw://73f73fac9ffe650304c68a49635604806b86b0a5baadbf59ef36931e7937bc51","dweb:/ipfs/QmaMMMXycUeybJyf2ZowJgQ1Wo4ZC7g5kyp1BHWfj8dkD9"],"license":"Apache-2.0"},"src/governance/Bn254LibWrapper.sol":{"keccak256":"0xea39571de45fe0fec82d9e760998677eb2432e08c6cdb00c41efa58caf56e607","urls":["bzz-raw://1e470b821f3d87fa0c988c5f23a8deed3849bffd2527b3b4ee137a90e0c1264c","dweb:/ipfs/QmW3M4HyRLDruV5AYXCKicFCiiczmwnSTtnwVKUnQSm7a8"],"license":"Apache-2.0"},"src/governance/GSE.sol":{"keccak256":"0xc19fa4868d78030e2411dd5cef6d0da09645ade1d1ea0c4374b284a89feb722a","urls":["bzz-raw://d06396c249566d0e9de5d34eade2bf27c4d583005c0129787bf6c413dcd9e273","dweb:/ipfs/QmcimKKiV9KqobS5wzPsKYzyYu5WezCF3gyHkekf5tjrUU"],"license":"Apache-2.0"},"src/governance/GSEPayload.sol":{"keccak256":"0x40e5385b008f0335b50e066c647bb906685511c9fef206ce90a3391468558bae","urls":["bzz-raw://a129e87e1d57cf0813b14108cbdbcdd4c114b20f3f2d67477302d6d050120c7e","dweb:/ipfs/QmRcQQkeDhkrmQha3nkA8qvXnGmF6nLhZMKAhMx61A7a5y"],"license":"Apache-2.0"},"src/governance/Governance.sol":{"keccak256":"0x07770c3d80369adae51be8e361f63a2aa5ec489b354b10c8590be1e294dfe2e5","urls":["bzz-raw://7219becf3467ea8368dba0bd093ba932b165cf3f214e7286f652e2730bf42eaf","dweb:/ipfs/QmTSCDhSQBTKhzGUk12phxhqohSba6yopYMzF5T5XPFUWw"],"license":"Apache-2.0"},"src/governance/interfaces/IBn254LibWrapper.sol":{"keccak256":"0xdd0a3de8b8ff67cf2bf090d04b4a37aa6d604f402db3328387d2466d2354464a","urls":["bzz-raw://daef0234547509cd7ae3a7babf0e50a8d1ca2894f1817e3e2409a50fd32947b9","dweb:/ipfs/QmbwSedqnBfsqRnUq8XcXzoeoyhZTXJWJ9rpJn61BAJfej"],"license":"Apache-2.0"},"src/governance/interfaces/IEmpire.sol":{"keccak256":"0xe6a8a8c3fef8e6f9f5118bd40c63e951b13a59d5f885bbb979d38745ef760ed3","urls":["bzz-raw://940c1fe4138d7364ccdb7d5635ea90bafa1da274f680039b0b54ee8c2a275a9a","dweb:/ipfs/QmX2EeoVyES18BMgcbKVDb36MCq8ooDVR98m2RmnmZjEAo"],"license":"Apache-2.0"},"src/governance/interfaces/IGovernance.sol":{"keccak256":"0xe420d305fbe7c35f4620cd1e0f05f9f4c5a91532621d21a64ea553a3d9a3c005","urls":["bzz-raw://1900ac41f945aa692d5228f134ae63840081d284bf89fdd2a06b45424fe359ff","dweb:/ipfs/QmePFZ1xv5qfftJVDLc98XUVFsrpuKAbKZiro7MoMDTpoa"],"license":"Apache-2.0"},"src/governance/interfaces/IGovernanceProposer.sol":{"keccak256":"0x2be820a5452c481ffd329d68c46d0af6a286934963f26b36d363cd34fb0e5817","urls":["bzz-raw://f58839d1504e11e7da42b7f5a03fb9b9d8cc39ab4c16cfb86fa44c4de08df76f","dweb:/ipfs/QmR6jUJozP9tfpZuSduk66E8n7WuL3zzsR3WHZ7BR2ZBX2"],"license":"Apache-2.0"},"src/governance/interfaces/IPayload.sol":{"keccak256":"0x5844ea725ce56ac8adeb20b2d37aa431ca087f68a65a7ca91f981be7458737c3","urls":["bzz-raw://5ea670db51b2ccfac05a684b95458ecc015c9d12a6567c3f73d473386533f58c","dweb:/ipfs/QmRUB8mckkGQ4nNsErRhnKMsD9SSkokRSpnr5XZC9dZdin"],"license":"Apache-2.0"},"src/governance/interfaces/IProposerPayload.sol":{"keccak256":"0x89068dd464c0bfb7d447c0e99728277e03c7c4b864208ead20321f0590187248","urls":["bzz-raw://4d1d9ba5f8b7da374d773acde9514ca6607ad31a3e83950caa097bdb8b0f9167","dweb:/ipfs/Qmd7tWAD2Ubz434zZPJvuyAGsHYpXBHvVhVefLFzUudD2o"],"license":"Apache-2.0"},"src/governance/interfaces/IRegistry.sol":{"keccak256":"0xc3678c04c0945d3dc1d8007df3dc7f8b25d8108b0b25134842ffc5169f996ce8","urls":["bzz-raw://71e4e401f1a6f561262755cc2e1c347cd3aa79e67d2e52ca547864f49de01724","dweb:/ipfs/QmPvoKFEDTb41DSC3MmDMqtM3trj5oZb1Jj2jtQSnNfHBn"],"license":"Apache-2.0"},"src/governance/interfaces/IRewardDistributor.sol":{"keccak256":"0xf263f75be83d0b0e3c8f17ec7fc2558d3543df788dcb2db6f1ee158208134f14","urls":["bzz-raw://b2b65819a5f9ecd2237957e987bb69160d3076ccaf9f76f925a936e574d63d76","dweb:/ipfs/QmNgWESeo6UUvgW7rCMP3d4o8mUqSSbKrwbicH4kaUrm7h"],"license":"Apache-2.0"},"src/governance/libraries/AddressSnapshotLib.sol":{"keccak256":"0x1006e58059e0a1f0fef102f2f11f5649dffc7f2eb066fce51845e65a064f4210","urls":["bzz-raw://de385ab9eb3bb66d7be1218b49ae9bba7d88797bcb375b9a7481a209d303a402","dweb:/ipfs/QmZe6DTv3cACfdXNSMhbMhoefg31LW3uLxHLDC7nZhb4Yp"],"license":"Apache-2.0"},"src/governance/libraries/CheckpointedUintLib.sol":{"keccak256":"0xcd73cf7a62e4ac5cc79f7f8df8b35d5c5e4df5b8a3478bcbc2b29c9aa89ea4b4","urls":["bzz-raw://f56f37060d39d3c9276f23c96be7f6b1ea44676312dbaa1ab16ab3bff6acebf1","dweb:/ipfs/QmPDUEEgdbpTTs9r3fvdMYJo9akCRsWcJXyarBhQgcKb5q"],"license":"Apache-2.0"},"src/governance/libraries/ConfigurationLib.sol":{"keccak256":"0x7cb65bdbd8d077f3cfc01b065fb3a57628db36cd46f68885c74b9131198c2149","urls":["bzz-raw://e37bde50f5f739f479feb95fbe81ed24ee47f841b99f066ecf6782e758d1978a","dweb:/ipfs/QmebPE5REUpYRB8dikUebcGtyk9uy44G9mbchKJtHxJAgy"],"license":"Apache-2.0"},"src/governance/libraries/DepositDelegationLib.sol":{"keccak256":"0x37fbca65ccabec9d901bd71d684dceec7c59fa5a05438fd209ea0d5e16e764c0","urls":["bzz-raw://e42f2622978abc3ac84223a6b206201898d0269d20bf81539636c0999a0db9eb","dweb:/ipfs/QmW4BgTjR6BuPxwxreKarUeK1u8gx3p9yFdDD4EsC5hkyb"],"license":"Apache-2.0"},"src/governance/libraries/Errors.sol":{"keccak256":"0x8861ea7508138c83e89f186ce17accb42a6eee7d1d2e52841975d4ba676daae4","urls":["bzz-raw://b0d5b01c2b0a20c3c70a7ab2b8405d083a063bf5758beb87a4d488bda76078fa","dweb:/ipfs/QmfGH6CTCPA6nVA6KidcTSvaJ6MQZkv6KiuDVBTARGBTRv"],"license":"Apache-2.0"},"src/governance/libraries/ProposalLib.sol":{"keccak256":"0x616ffbb24c4454ca9e223e85ff01e8dca139723d5cd312d5d6f6111d79782a90","urls":["bzz-raw://192f9be3355a7a94d19ae4e5b397e5db19dde64ccc671e149da06dfaa2577192","dweb:/ipfs/QmTDcm7XEFLe7o5cXUmuu5wQDyprU78AVMymiWvrmP4tHT"],"license":"Apache-2.0"},"src/governance/libraries/compressed-data/Ballot.sol":{"keccak256":"0xca07dc8cf36ac2beae7674804af144b34b3c5848153351c17d996e9b3293cd5d","urls":["bzz-raw://6911cc49f1d6977c12f652063c14891697c1ffe49fdf36903c32a8ad73cbd012","dweb:/ipfs/QmQBEZARCAAj1ZLcswkH6FwP1RP8uuNjYTHqthmE9Z5RnM"],"license":"Apache-2.0"},"src/governance/libraries/compressed-data/Configuration.sol":{"keccak256":"0x40744f275af22d33c38fd9c6a7b822292c9c87b17ac2c78abbef4eb8356fd9f9","urls":["bzz-raw://73c685be7e934516207827a59cbbeb7fc1164e7659dd3ec857a91cfea765b482","dweb:/ipfs/QmQfudRpSSQnG9u4XV8iA2UAyDzQPFqWzpZy5NZbaD6htv"],"license":"Apache-2.0"},"src/governance/libraries/compressed-data/Proposal.sol":{"keccak256":"0x72cf619a21c8e95875c63d4361cbe1a815d9d67f36f3fe32b6c9ca4d9ab0d33a","urls":["bzz-raw://d80f47beb3f91da3cc68264c86fc8fb8f0e4abaf9d92243ab3206407fceed5c6","dweb:/ipfs/QmYyrBTDMfkTBu6EcKcSMR7JyfphZ5xH1VCQ8EHMQUvsoN"],"license":"Apache-2.0"},"src/governance/proposer/EmpireBase.sol":{"keccak256":"0x747b20e201dab632a831c12f1fee9ee52cc80a2098c77e8b6c7b09b0f3ba2bc0","urls":["bzz-raw://b7d4a0475ca364f75aa2a1d17ed9e6970f0be605126f2efe26d53c791d4a5209","dweb:/ipfs/Qma5tkTcy94PqE9vtQybQSyH9LWaHR8V3ubwDPZwiUNT35"],"license":"Apache-2.0"},"src/governance/proposer/GovernanceProposer.sol":{"keccak256":"0xa2829df5b65856c9f1d6bf490fb50616f14402ff8eece2e32b63828b8b9337c3","urls":["bzz-raw://8ad52830a7a3aed3477bf55f92c3d68cb1c16a5cf1d636227ab76a306c846607","dweb:/ipfs/QmRonyZQZj5D1e2g4Y6Tmj2AEUnekL4pGmgdMT4ycRAM8m"],"license":"Apache-2.0"},"src/mock/libraries/BlobLib.sol":{"keccak256":"0xa1b19239c5c64ba1b0c9f83ec0a30059f10ded12bf40d5d7c3f65974752b3121","urls":["bzz-raw://5cbce7d0dd0096232d60ec5c6920f211ffcaa46c8675b1129c1f939a1ee84837","dweb:/ipfs/QmSS2qUhzUuZY1qHDjWUGvHuMqMG3cjHoHeDVvgWsjMdA9"],"license":"Apache-2.0"},"src/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":112}
|
|
1
|
+
{"abi":[{"type":"function","name":"canPruneAtTime","inputs":[{"name":"_ts","type":"uint256","internalType":"Timestamp"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getCheckpointReward","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getCollectiveProverRewardsForEpoch","inputs":[{"name":"_epoch","type":"uint256","internalType":"Epoch"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getEpochForCheckpoint","inputs":[{"name":"_checkpointNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"Epoch"}],"stateMutability":"view"},{"type":"function","name":"getEthPerFeeAssetAtCheckpoint","inputs":[{"name":"_checkpointNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"EthPerFeeAssetE12"}],"stateMutability":"view"},{"type":"function","name":"getFirstProvenBy","inputs":[{"name":"_checkpointNumber","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getHasClaimed","inputs":[{"name":"_prover","type":"address","internalType":"address"},{"name":"_epoch","type":"uint256","internalType":"Epoch"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getHasSubmitted","inputs":[{"name":"_epoch","type":"uint256","internalType":"Epoch"},{"name":"_length","type":"uint256","internalType":"uint256"},{"name":"_prover","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getHasSubmittedFullEpoch","inputs":[{"name":"_epoch","type":"uint256","internalType":"Epoch"},{"name":"_length","type":"uint256","internalType":"uint256"},{"name":"_prover","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getL1FeesAt","inputs":[{"name":"_timestamp","type":"uint256","internalType":"Timestamp"}],"outputs":[{"name":"","type":"tuple","internalType":"struct L1FeeData","components":[{"name":"baseFee","type":"uint256","internalType":"uint256"},{"name":"blobFee","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"getManaMinFeeComponentsAt","inputs":[{"name":"_timestamp","type":"uint256","internalType":"Timestamp"},{"name":"_inFeeAsset","type":"bool","internalType":"bool"}],"outputs":[{"name":"","type":"tuple","internalType":"struct ManaMinFeeComponents","components":[{"name":"protocolFee","type":"uint256","internalType":"uint256"},{"name":"congestionMultiplier","type":"uint256","internalType":"uint256"},{"name":"sequencerCost","type":"uint256","internalType":"uint256"},{"name":"proverCost","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"getProvingCostPerMana","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"EthValue"}],"stateMutability":"view"},{"type":"function","name":"getProvingCostPerManaInFeeAsset","inputs":[{"name":"_ethPerFeeAsset","type":"uint256","internalType":"EthPerFeeAssetE12"}],"outputs":[{"name":"","type":"uint256","internalType":"FeeAssetValue"}],"stateMutability":"view"},{"type":"function","name":"getRewardConfig","inputs":[],"outputs":[{"name":"","type":"tuple","internalType":"struct RewardConfig","components":[{"name":"rewardDistributor","type":"IRewardDistributor","internalType":"contract IRewardDistributor"},{"name":"sequencerBps","type":"uint32","internalType":"Bps"},{"name":"booster","type":"IBoosterCore","internalType":"contract IBoosterCore"},{"name":"checkpointReward","type":"uint96","internalType":"uint96"}]}],"stateMutability":"view"},{"type":"function","name":"getRewardDistributor","inputs":[],"outputs":[{"name":"","type":"IRewardDistributor","internalType":"contract IRewardDistributor"}],"stateMutability":"view"},{"type":"function","name":"getSequencerRewardCalculator","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getSequencerRewards","inputs":[{"name":"_sequencer","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getSharesFor","inputs":[{"name":"_prover","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getSpecificProverRewardsForEpoch","inputs":[{"name":"_epoch","type":"uint256","internalType":"Epoch"},{"name":"_prover","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"summedMinFee","inputs":[{"name":"_components","type":"tuple","internalType":"struct ManaMinFeeComponents","components":[{"name":"protocolFee","type":"uint256","internalType":"uint256"},{"name":"congestionMultiplier","type":"uint256","internalType":"uint256"},{"name":"sequencerCost","type":"uint256","internalType":"uint256"},{"name":"proverCost","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"event","name":"ManaTargetUpdated","inputs":[{"name":"manaTarget","type":"uint256","indexed":true,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProtocolFeeMarginUpdated","inputs":[{"name":"oldBps","type":"uint16","indexed":false,"internalType":"uint16"},{"name":"newBps","type":"uint16","indexed":false,"internalType":"uint16"}],"anonymous":false},{"type":"event","name":"ProtocolFeeRecipientUpdated","inputs":[{"name":"oldRecipient","type":"address","indexed":false,"internalType":"address"},{"name":"newRecipient","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RewardConfigUpdated","inputs":[{"name":"rewardConfig","type":"tuple","indexed":false,"internalType":"struct MutableRewardConfig","components":[{"name":"sequencerBps","type":"uint32","internalType":"Bps"},{"name":"checkpointReward","type":"uint96","internalType":"uint96"}]}],"anonymous":false},{"type":"event","name":"SequencerRewardCalculatorUpdated","inputs":[{"name":"oldCalculator","type":"address","indexed":false,"internalType":"address"},{"name":"newCalculator","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"error","name":"FeeLib__InvalidManaLimit","inputs":[{"name":"maximum","type":"uint256","internalType":"uint256"},{"name":"provided","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__InvalidManaTarget","inputs":[{"name":"minimum","type":"uint256","internalType":"uint256"},{"name":"provided","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__ProtocolFeeMarginCooldown","inputs":[{"name":"nextAllowed","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__ProtocolFeeMarginStepExceeded","inputs":[{"name":"current","type":"uint256","internalType":"uint256"},{"name":"requested","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__ProvingCostBelowFloor","inputs":[{"name":"provided","type":"uint256","internalType":"uint256"},{"name":"minimum","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__ProvingCostCooldown","inputs":[{"name":"nextAllowed","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeLib__ProvingCostStepExceeded","inputs":[{"name":"current","type":"uint256","internalType":"uint256"},{"name":"requested","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"RewardLib__InvalidProtocolFeeRecipient","inputs":[]},{"type":"error","name":"RewardLib__InvalidSequencerBps","inputs":[]},{"type":"error","name":"Rollup__CheckpointNotProven","inputs":[{"name":"proven","type":"uint256","internalType":"uint256"},{"name":"requested","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Rollup__InvalidCheckpointNumber","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"actual","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Rollup__InvalidManaTarget","inputs":[{"name":"minimum","type":"uint256","internalType":"uint256"},{"name":"provided","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Rollup__NotPastDeadline","inputs":[{"name":"deadline","type":"uint256","internalType":"Epoch"},{"name":"currentEpoch","type":"uint256","internalType":"Epoch"}]},{"type":"error","name":"Rollup__UnavailableTempCheckpointLog","inputs":[{"name":"checkpointNumber","type":"uint256","internalType":"uint256"},{"name":"pendingCheckpointNumber","type":"uint256","internalType":"uint256"},{"name":"upperLimit","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SafeCastOverflowedIntToUint","inputs":[{"name":"value","type":"int256","internalType":"int256"}]},{"type":"error","name":"SafeCastOverflowedUintDowncast","inputs":[{"name":"bits","type":"uint8","internalType":"uint8"},{"name":"value","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SafeERC20FailedOperation","inputs":[{"name":"token","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x61356b610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106101ab575f3560e01c806386a0d763116100f6578063dc1bb8f41161009a578063dc1bb8f41461041c578063dfff3ebc1461042f578063e068d95a14610442578063e6e2844014610455578063eb7991fa14610474578063ec14780614610493578063ed176514146104e8578063fe2a92d014610507575f5ffd5b806386a0d7631461036a5780638789a132146103725780638841c46714610385578063a4f40ee9146103a4578063bcfe1a1c146103c3578063c4fb3d7c146103e2578063cf20d872146103f5578063d4003253146103fd575f5ffd5b8063385b90121161015d578063385b90121461029e578063483315b3146102bd578063508ac49b146102d05780635a97eaa1146102e45780635e5fafb3146102f75780635f82401f14610316578063604ef88f1461034457806368faa77814610357575f5ffd5b806311704430146101af57806316a7ced5146101fe5780631df47f801461021f578063235ce66f1461024057806328e07ac314610263578063305656b2146102765780633334f7dc1461028b575b5f5ffd5b6101c26101bd36600461238d565b61050f565b6040516101f591908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b60405180910390f35b61021161020c3660046123bf565b61052a565b6040519081526020016101f5565b81801561022a575f5ffd5b5061023e6102393660046123ea565b610534565b005b61025361024e366004612405565b610589565b60405190151581526020016101f5565b61025361027136600461243b565b61059f565b61027e6105aa565b6040516101f59190612465565b610253610299366004612405565b6105b8565b8180156102a9575f5ffd5b506102116102b83660046124f5565b6105c4565b6102116102cb3660046123bf565b6105d0565b8180156102db575f5ffd5b5061023e6105da565b6102116102f23660046123bf565b6105e4565b818015610302575f5ffd5b506102116103113660046125c3565b6105ee565b6103296103243660046123bf565b6105f9565b604080518251815260209283015192810192909252016101f5565b6102116103523660046123bf565b610615565b6102116103653660046125ef565b610628565b610211610633565b6102116103803660046123ea565b61063c565b818015610390575f5ffd5b5061023e61039f366004612639565b610646565b8180156103af575f5ffd5b5061023e6103be366004612695565b61069e565b8180156103ce575f5ffd5b5061027e6103dd3660046126b6565b6106f7565b61027e6103f03660046123bf565b61077f565b61027e610789565b818015610408575f5ffd5b5061023e6104173660046123ea565b6107a4565b61025361042a3660046123bf565b6107f1565b61021161043d3660046123ea565b6107fb565b61021161045036600461274d565b610805565b818015610460575f5ffd5b5061023e61046f3660046123bf565b61080f565b81801561047f575f5ffd5b5061023e61048e366004612792565b610894565b61049b6108a6565b6040805182516001600160a01b03908116825260208085015163ffffffff16908301528383015116918101919091526060918201516001600160601b0316918101919091526080016101f5565b8180156104f3575f5ffd5b5061023e6105023660046123bf565b610926565b610211610932565b61051761235c565b610521838361093b565b90505b92915050565b5f61052482610962565b5f61053e8261097d565b604080516001600160a01b038084168252851660208201529192507fd3890fc76afcfc31cba1dcf2c27b50e2541e4d75039c981855b5b5e03682aea091015b60405180910390a15050565b5f6105958484846109d7565b90505b9392505050565b5f6105218383610a22565b5f6105b3610a50565b905090565b5f610595848484610a6b565b5f610595848484610ab7565b5f61052482610cd4565b6105e2610d24565b565b5f61052482610e42565b5f6105218383610e6e565b604080518082019091525f808252602082015261052482610ebf565b5f61052482610622610f3e565b90610f57565b5f6105218383610f6a565b5f6105b3611057565b5f61052482611079565b61064f816110a0565b60408051825163ffffffff1681526020808401516001600160601b0316908201527f24ea90802d5c1d10fd3da4b05f2415af510be55a0e3b385831be1851c3975869910160405180910390a150565b5f5f6106a983611124565b9150915081156106f2576040805161ffff8084168252851660208201527f50cfb74385ad073f39f956bcb64fa0e087dc901b2a9dcdf8e7a1d340cbf64b74910160405180910390a15b505050565b5f5f308360405161070790612380565b6001600160a01b039092168252805163ffffffff908116602080850191909152820151811660408085019190915282015181166060808501919091528201518116608080850191909152909101511660a082015260c001604051809103905ff080158015610777573d5f5f3e3d5ffd5b509392505050565b5f6105248261128f565b5f610792611342565b600301546001600160a01b0316919050565b5f6107ae82611366565b604080516001600160a01b038084168252851660208201529192507f94d38706e4767859df7903f27cd8cd923dff3af746eb8bbdf828b958710c458b910161057d565b5f61052482611399565b5f6105248261140a565b5f61052482611483565b5f61082861081b6114b6565b5460c01c63ffffffff1690565b905080828181101561085b57604051630d1bff9560e21b8152600481019290925260248201526044015b60405180910390fd5b5050610866826114da565b60405182907faaa1053539ab4621b2aecf54a7ccf2096610ff768f32261f667aca9ae3069482905f90a25050565b61089d82611533565b6106f281611366565b604080516080810182525f8082526020820181905291810182905260608101919091526108d1611342565b6040805160808101825260038301546001600160a01b038082168352600160a01b9182900463ffffffff1660208401526004909401549384169282019290925291046001600160601b03166060820152919050565b61092f816115e8565b50565b5f6105b3610f3e565b61094361235c565b5f61094d84611732565b905061095a81858561176d565b949350505050565b5f61052461096f83611926565b60501c65ffffffffffff1690565b5f6001600160a01b0382166109a557604051638513472b60e01b815260040160405180910390fd5b5f6109ae611342565b60050180546001600160a01b039485166001600160a01b03198216179091559290921692915050565b5f6109e0611342565b5f94855260019081016020908152604080872095875294820181528486206001600160a01b03949094168652920190915250902054600160f81b900460ff1690565b5f61052182610a2f611342565b6001600160a01b0386165f908152600291909101602052604090209061193a565b5f610a59611342565b600601546001600160a01b0316919050565b5f5f610a75611342565b5f95865260019081016020908152604080882096885295820181528587206001600160a01b039590951687529301909252509120546001600160f81b03161190565b5f5f610ac24261195d565b90505f610acd611342565b90505f805b8651811015610caf57610b0784888381518110610af157610af161280e565b60200260200101516119b590919063ffffffff16565b15610b2a888381518110610b1d57610b1d61280e565b60200260200101516119bf565b859091610b5357604051632851216f60e21b815260048101929092526024820152604401610852565b5050610ba5878281518110610b6a57610b6a61280e565b6020026020010151846002015f8b6001600160a01b03166001600160a01b031681526020019081526020015f2061193a90919063ffffffff16565b610ca757610bf9878281518110610bbe57610bbe61280e565b6020026020010151846002015f8b6001600160a01b03166001600160a01b031681526020019081526020015f206119f790919063ffffffff16565b5f836001015f898481518110610c1157610c1161280e565b60209081029190910181015182528181019290925260409081015f90812080546001600160801b03168252600180820185528383206001600160a01b038f168452908101909452919020549092506001600160f81b03168015610ca35781548354610c8c90600160801b90046001600160801b031683612836565b610c969190612861565b610ca09086612874565b94505b5050505b600101610ad2565b508015610cca57610cca6001600160a01b0386168883611a1f565b9695505050505050565b5f5f610cde611a71565b805490915060801c8381811115610d11576040516368dd4dfd60e11b815260048101929092526024820152604401610852565b5050610598610d1f84611a95565b611aaf565b5f610d2e42611ad0565b90505f610d396114b6565b60018101549091505f90610d6590600160e01b900463ffffffff16610d6060056002611b00565b611b0b565b905082811115610d7457505050565b604080516060810182526001840154600160701b90046001600160701b03168152815180830190925248825290602080830191610dbc918101610db5611b16565b9052611c13565b6001600160701b03168152602001610ddd610dd8866002611b0b565b611c58565b63ffffffff9081169091528151600190940180546020840151604090940151909216600160e01b026001600160e01b036001600160701b03948516600160701b026001600160e01b031990941694909616939093179190911793909316179091555050565b5f610e4b611342565b5f928352600101602052506040902054600160801b90046001600160801b031690565b5f5f610e78611342565b6001600160a01b0385165f90815260208290526040902054909150801561095a576001600160a01b038086165f9081526020849052604081205561095a9085168683611a1f565b604080518082019091525f80825260208201525f610edb6114b6565b9050610f00610ee984611ad0565b6001830154600160e01b900463ffffffff165b1190565b610f27576001810154610f2290600160701b90046001600160701b0316611c62565b610598565b6001810154610598906001600160701b0316611c62565b5f6105b3610f4a6114b6565b546001600160401b031690565b5f6105218364e8d4a51000846001611c9c565b5f5f610f74611342565b6001600160a01b0384165f9081526002820160205260409020909150610f9a908561193a565b15610fa8575f915050610524565b5f84815260018083016020908152604080842080546001600160801b0316855280840183528185206001600160a01b038916865293840190925283205490926001600160f81b039091169003611003575f9350505050610524565b805482546001600160a01b0387165f90815260018401602052604090205461104491600160801b90046001600160801b0316906001600160f81b0316612887565b6001600160f81b0316610cca9190612861565b5f611060611342565b60040154600160a01b90046001600160601b0316919050565b5f611082611342565b6001600160a01b039092165f90815260209290925250604090205490565b612710815f015163ffffffff1611156110cc57604051633b97c27960e21b815260040160405180910390fd5b5f6110d5611342565b825160038201805463ffffffff60a01b1916600160a01b63ffffffff9093168302179055602090930151600490910180546001600160a01b03166001600160601b039092169093021790915550565b5f5f5f61112f6114b6565b90505f61113e825f0154611ce7565b9050806060015192508261ffff168561ffff1603611160575f93505050915091565b8261ffff168561ffff1611156112495760028201545f906111959062278d0090600160401b90046001600160401b0316612874565b6002840154909150600160401b90046001600160401b031615806111b95750804210155b81906111db5760405163777ec76b60e11b815260040161085291815260200190565b5060036111ee61ffff8616612710612874565b6111f89190612836565b600261120a61ffff8916612710612874565b6112149190612836565b1115848790916112455760405163e4e1563360e01b815261ffff928316600482015291166024820152604401610852565b5050505b61ffff8516606082015261125c81611d6b565b825550600201805467ffffffffffffffff60401b1916600160401b426001600160401b0316021790556001939092509050565b5f5f611299611a71565b80549091506001600160801b031683158015906112b65750808411155b818590916112e057604051631e19e11960e21b815260048101929092526024820152604401610852565b508490505b81811161131e575f818152600384016020526040902054801561130b5795945050505050565b5080611316816128b8565b9150506112e5565b50604051631e19e11960e21b81526004810182905260248101859052604401610852565b7f7da2ae3c4a8197dbe64388763d16e7945dd85ef9823a62323a7cdcce718a163790565b5f5f611370611342565b60060180546001600160a01b039485166001600160a01b03198216179091559290921692915050565b5f5f6113a3611a71565b80549091506001600160801b0381166113bc8260801c90565b036113ca57505f9392505050565b5f6113e76113e26001600160801b0384166001612874565b610cd4565b90505f6113f38661195d565b90506113ff82826119b5565b159695505050505050565b5f611413611342565b6004908101546040516337ffcfaf60e21b81526001600160a01b039091169163dfff3ebc9161144491869101612465565b602060405180830381865afa15801561145f573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061052491906128d0565b5f610524825f01518360600151846040015161149f9190612874565b6114a99190612874565b6001600160801b03611dde565b7f2e57d696f4035f6dfbf369d367f6b4aaf23baac5f6ee9a3a5207d71c56de652c90565b6114e381611ded565b505f6114ed6114b6565b90505f6114fc825f0154611ce7565b83815290506305f5e1006115146332f1b33685612836565b61151e9190612861565b602082015261152c81611d6b565b9091555050565b612710816020015163ffffffff16111561156057604051633b97c27960e21b815260040160405180910390fd5b5f611569611342565b8251600382018054602086015163ffffffff16600160a01b9081026001600160c01b03199092166001600160a01b03948516179190911790915560408501516060909501516001600160601b03160293169290921760048301555060050180546001600160a01b0319166b4355415548584943414c4c4960401b179055565b5f6115f16114b6565b90505f611600825f0154611ce7565b6040810151909150838060028082101561163657604051631ad480f960e11b815260048101929092526024820152604401610852565b505060028401545f906116569062278d00906001600160401b0316612874565b60028601549091506001600160401b031615806116735750804210155b8190611695576040516344331fd960e01b815260040161085291815260200190565b506116a1600384612836565b6116ac600284612836565b111580156116ce57506116c0600284612836565b6116cb600384612836565b10155b838390916116f857604051637e42087560e01b815260048101929092526024820152604401610852565b50506040840186905261170a84611d6b565b85555050506002909101805467ffffffffffffffff1916426001600160401b03161790555050565b5f5f61173c611a71565b805490915061174a84611399565b61175d576117588160801c90565b61095a565b6001600160801b03169392505050565b61177561235c565b5f61177e6114b6565b90505f611794825f015460c01c63ffffffff1690565b90505f5f5f5f6117a389610ebf565b90505f81602001516202000060036117bb9190612836565b6117c59190612836565b82516117d4906207a120612836565b6117de9190612874565b90506117ee816001886001611c9c565b94505061183961182961181f623d0900845f015161180a611e67565b54600160a01b900463ffffffff166001611c9c565b6001886001611c9c565b87546001600160401b0316611b0b565b92506118458484611b0b565b9150505f6118528a611926565b90505f61188963ffffffff83166118718460201c65ffffffffffff1690565b61187b9190612874565b611884886128e7565b611e8b565b90505f61189582611ed9565b90505f6118b16118ab8684633b9aca005f611c9c565b86611b00565b90505f8b6118c45764e8d4a510006118cd565b6118cd8e610962565b905060405180608001604052806118ed8385610f5790919063ffffffff16565b8152602081018590526040016119038a84610f57565b81526020016119128984610f57565b90529e9d5050505050505050505050505050565b5f61193082611f49565b6006015492915050565b600881901c5f90815260208390526040902054600160ff83161b16151592915050565b5f5f611967611e67565b805490915061198c9063ffffffff600160801b8204811691600160a01b900416612901565b815463ffffffff91909116906119ab906001600160801b031685612927565b6105989190612861565b5f61052182610efc855b5f5f6119c9611e67565b80549091506105989084906119ec90600160c01b900463ffffffff16600161293a565b63ffffffff16611b0b565b600881901c5f90815260209290925260409091208054600160ff9093169290921b9091179055565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526106f2908490611fec565b7f0958201b72d64259285941dffd868dac55267471fcc73e8a06e1fd9cf870636190565b5f610524611aa283611f49565b6005015463ffffffff1690565b5f611ab8611e67565b5461052490600160a01b900463ffffffff1683612861565b5f5f611ada611e67565b805490915063ffffffff600160801b820416906119ab906001600160801b031685612927565b5f6105218284612927565b5f6105218284612874565b5f617a694614808015611b3d5750737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15155b15611c0b5760408051600481526024810182526020810180516001600160e01b0316631f6d6ef760e01b17905290515f918291737109709ecfa91a80626ff3989d68f67f5b1dd12d91611b8f91612956565b5f60405180830381855afa9150503d805f8114611bc7576040519150601f19603f3d011682016040523d82523d5f602084013e611bcc565b606091505b5091509150818015611be057506020815110155b15611c015780806020019051810190611bf991906128d0565b935050505090565b6001935050505090565b4a5b91505090565b5f5f5f90505f611c268460200151612055565b66ffffffffffffff16901b811790506038611c43845f0151612055565b66ffffffffffffff16901b176105988161208c565b5f610524826120bf565b604080518082019091525f8082526020820152506040805180820190915266ffffffffffffff603883901c81168252909116602082015290565b5f611cc9611ca9836120ef565b8015611cc457505f8480611cbf57611cbf61284d565b868809115b151590565b611cd486868661211b565b611cde9190612874565b95945050505050565b611d0e60405180608001604052805f81526020015f81526020015f81526020015f81525090565b6040518060800160405280611d298460c01c63ffffffff1690565b8152602001611d418460401c6001600160801b031690565b81526020016001600160401b0384168152602001611d638460e01c61ffff1690565b905292915050565b5f5f5f9050611d7d83604001516121d1565b6001600160401b0316811790506040611d998460200151612206565b6001600160801b0316901b8117905060c0611db6845f01516120bf565b63ffffffff16901b8117905060e0611dd18460600151612239565b61ffff16901b1792915050565b5f828218828410028218610521565b5f60018280611e18576040516372e1574f60e01b815260048101929092526024820152604401610852565b505f9050611e27836002612836565b905063ffffffff8181811115611e5e576040516303fd5c0b60e41b815263ffffffff90921660048301526024820152604401610852565b50909392505050565b7fcc2bde3d21ba778aa5c156bb6fc47381978b0054c8a1ef73f44234164324cbe090565b5f5f8212611ead57611e9c82612267565b611ea69084612874565b9050610524565b60ff82901d8083011880841115611ed057611ec88185612927565b915050610524565b505f9392505050565b5f5f611ee36114b6565b90505f611efc825f015460401c6001600160801b031690565b90505f611f1385611f0e846064612836565b611dde565b9050611cde611f29845f015460e01c61ffff1690565b611f3590612710612874565b611f4290620186a0612836565b828461228c565b5f5f611f5d611f56611a71565b5460801c90565b90505f611f686122f7565b90505f611f758286612874565b90505f838611158015611f8757508184105b905085848383611fbb57604051638711786b60e01b8152600481019390935260248301919091526044820152606401610852565b505050611fc6611a71565b6002015f611fd4858961296c565b81526020019081526020015f20945050505050919050565b5f5f60205f8451602086015f885af18061200b576040513d5f823e3d81fd5b50505f513d9150811561202257806001141561202f565b6001600160a01b0384163b155b1561204f5783604051635274afe760e01b81526004016108529190612465565b50505050565b5f66ffffffffffffff821115612088576040516306dfcc6560e41b81526038600482015260248101839052604401610852565b5090565b5f6001600160701b03821115612088576040516306dfcc6560e41b81526070600482015260248101839052604401610852565b5f63ffffffff821115612088576040516306dfcc6560e41b81526020600482015260248101839052604401610852565b5f60028260038111156121045761210461297f565b61210e9190612993565b60ff166001149050919050565b5f838302815f1985870982811083820303915050805f0361214f578382816121455761214561284d565b0492505050610598565b80841161216657612166600385150260111861230b565b5f848688095f868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b5f6001600160401b0382111561208857604080516306dfcc6560e41b8152600481019190915260248101839052604401610852565b5f6001600160801b03821115612088576040516306dfcc6560e41b81526080600482015260248101839052604401610852565b5f61ffff821115612088576040516306dfcc6560e41b81526010600482015260248101839052604401610852565b5f5f82121561208857604051635467221960e11b815260048101839052602401610852565b5f6001818061229b8588612836565b90505b80156122e2576122ae8183612874565b91506122ba8386612836565b6122c48783612836565b6122ce9190612861565b90506122db600184612874565b925061229e565b6122ec8583612861565b979650505050505050565b5f61230061231c565b6105b3906001612874565b634e487b715f52806020526024601cfd5b5f5f612326611e67565b805490915061234390600160c01b900463ffffffff166001612874565b8154611c0d9190600160a01b900463ffffffff16612836565b60405180608001604052805f81526020015f81526020015f81526020015f81525090565b610b81806129b583390190565b5f5f6040838503121561239e575f5ffd5b82359150602083013580151581146123b4575f5ffd5b809150509250929050565b5f602082840312156123cf575f5ffd5b5035919050565b6001600160a01b038116811461092f575f5ffd5b5f602082840312156123fa575f5ffd5b8135610598816123d6565b5f5f5f60608486031215612417575f5ffd5b83359250602084013591506040840135612430816123d6565b809150509250925092565b5f5f6040838503121561244c575f5ffd5b8235612457816123d6565b946020939093013593505050565b6001600160a01b0391909116815260200190565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156124af576124af612479565b60405290565b604051601f8201601f191681016001600160401b03811182821017156124dd576124dd612479565b604052919050565b80356124f0816123d6565b919050565b5f5f5f60608486031215612507575f5ffd5b8335612512816123d6565b925060208401356001600160401b0381111561252c575f5ffd5b8401601f8101861361253c575f5ffd5b80356001600160401b0381111561255557612555612479565b8060051b612565602082016124b5565b91825260208184018101929081019089841115612580575f5ffd5b6020850194505b838510156125a657843580835260209586019590935090910190612587565b80965050505050506125ba604085016124e5565b90509250925092565b5f5f604083850312156125d4575f5ffd5b82356125df816123d6565b915060208301356123b4816123d6565b5f5f60408385031215612600575f5ffd5b8235915060208301356123b4816123d6565b63ffffffff8116811461092f575f5ffd5b80356001600160601b03811681146124f0575f5ffd5b5f604082840312801561264a575f5ffd5b50604080519081016001600160401b038111828210171561266d5761266d612479565b604052823561267b81612612565b815261268960208401612623565b60208201529392505050565b5f602082840312156126a5575f5ffd5b813561ffff81168114610598575f5ffd5b5f60a08284031280156126c7575f5ffd5b5060405160a081016001600160401b03811182821017156126ea576126ea612479565b60405282356126f881612612565b8152602083013561270881612612565b6020820152604083013561271b81612612565b6040820152606083013561272e81612612565b6060820152608083013561274181612612565b60808201529392505050565b5f608082840312801561275e575f5ffd5b5061276761248d565b8235815260208084013590820152604080840135908201526060928301359281019290925250919050565b5f5f82840360a08112156127a4575f5ffd5b60808112156127b1575f5ffd5b506127ba61248d565b83356127c5816123d6565b815260208401356127d581612612565b602082015260408401356127e8816123d6565b60408201526127f960608501612623565b6060820152915060808301356123b4816123d6565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761052457610524612822565b634e487b7160e01b5f52601260045260245ffd5b5f8261286f5761286f61284d565b500490565b8082018082111561052457610524612822565b6001600160f81b038181168382168181029092169181830481148215176128b0576128b0612822565b505092915050565b5f600182016128c9576128c9612822565b5060010190565b5f602082840312156128e0575f5ffd5b5051919050565b5f600160ff1b82016128fb576128fb612822565b505f0390565b63ffffffff818116838216029081169081811461292057612920612822565b5092915050565b8181038181111561052457610524612822565b63ffffffff818116838216019081111561052457610524612822565b5f82518060208501845e5f920191825250919050565b5f8261297a5761297a61284d565b500690565b634e487b7160e01b5f52602160045260245ffd5b5f60ff8316806129a5576129a561284d565b8060ff8416069150509291505056fe610140604052348015610010575f5ffd5b50604051610b81380380610b8183398101604081905261002f91610143565b5f816080015163ffffffff1611610059576040516318dbcf2b60e21b815260040160405180910390fd5b5f816060015163ffffffff1611610083576040516318dbcf2b60e21b815260040160405180910390fd5b5f816020015163ffffffff16116100ad576040516318dbcf2b60e21b815260040160405180910390fd5b806080015163ffffffff16816060015163ffffffff1611156100e2576040516318dbcf2b60e21b815260040160405180910390fd5b6001600160a01b039091166080908152815163ffffffff90811660a0526020830151811660c0526040830151811660e0526060830151811661010052910151166101205261020d565b805163ffffffff8116811461013e575f5ffd5b919050565b5f5f82840360c0811215610155575f5ffd5b83516001600160a01b038116811461016b575f5ffd5b925060a0601f198201121561017e575f5ffd5b5060405160a081016001600160401b03811182821017156101ad57634e487b7160e01b5f52604160045260245ffd5b6040526101bc6020850161012b565b81526101ca6040850161012b565b60208201526101db6060850161012b565b60408201526101ec6080850161012b565b60608201526101fd60a0850161012b565b6080820152809150509250929050565b60805160a05160c05160e05161010051610120516108d36102ae5f395f8181610520015281816106800152818161071c015261077301525f81816104ec01528181610744015261079901525f81816104b801526106df01525f818161038a015281816104840152818161065801526106ab01525f8181610354015261045001525f818160b8015281816101a60152818161023b015261028f01526108d35ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c80634fd90e56146100595780638e3356ce146100925780639611c5c2146100b3578063c3f909d4146100f2578063dfff3ebc14610159575b5f5ffd5b61006c6100673660046107d4565b61016c565b604080518251815260209283015163ffffffff1692810192909252015b60405180910390f35b6100a56100a03660046107d4565b61022f565b604051908152602001610089565b6100da7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610089565b6100fa610416565b60405161008991905f60a08201905063ffffffff835116825263ffffffff602084015116602083015263ffffffff604084015116604083015263ffffffff606084015116606083015263ffffffff608084015116608083015292915050565b6100a56101673660046107d4565b610551565b604080518082019091525f80825260208201526102295f5f846001600160a01b03166001600160a01b031681526020019081526020015f207f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b97dd9e26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610200573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061022491906107fa565b61056d565b92915050565b5f336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016811461028b5760405163fe671df560e01b81526001600160a01b0390911660048201526024015b60405180910390fd5b505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b97dd9e26040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102e9573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061030d91906107fa565b6001600160a01b0384165f908152602081905260408120919250610331828461056d565b805183549192506103479163ffffffff16141590565b156103f5576103b36103ae7f0000000000000000000000000000000000000000000000000000000000000000836020015163ffffffff166103889190610825565b7f0000000000000000000000000000000000000000000000000000000000000000610605565b610617565b825463ffffffff91909116600160201b0267ffffffff000000001990911617825580516103df9061064b565b825463ffffffff191663ffffffff919091161782555b815461040d90600160201b900463ffffffff16610655565b95945050505050565b6040805160a0810182525f808252602082018190529181018290526060810182905260808101919091526040518060a001604052806104747f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016104a87f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016104dc7f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016105107f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016105447f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff169052919050565b5f61022961055e8361016c565b6020015163ffffffff16610655565b604080518082019091525f808252602082015282545f9063ffffffff166105949084610838565b6105a190620186a061084b565b604080518082019091528481528554919250906020820190600160201b900463ffffffff1683116105f3576105d583610617565b86546105ee9190600160201b900463ffffffff16610862565b6105f5565b5f5b63ffffffff169052949350505050565b5f8282188284100282185b9392505050565b5f63ffffffff821115610647576040516306dfcc6560e41b81526020600482015260248101839052604401610282565b5090565b5f61022982610617565b5f7f000000000000000000000000000000000000000000000000000000000000000082106106a457507f0000000000000000000000000000000000000000000000000000000000000000919050565b5f6106cf837f0000000000000000000000000000000000000000000000000000000000000000610838565b90505f6402540be40082610703817f000000000000000000000000000000000000000000000000000000000000000061084b565b61070d919061084b565b610717919061087e565b9050807f0000000000000000000000000000000000000000000000000000000000000000101561076a57507f00000000000000000000000000000000000000000000000000000000000000009392505050565b6107bd610797827f0000000000000000000000000000000000000000000000000000000000000000610838565b7f00000000000000000000000000000000000000000000000000000000000000006107c5565b949350505050565b5f828218828411028218610610565b5f602082840312156107e4575f5ffd5b81356001600160a01b0381168114610610575f5ffd5b5f6020828403121561080a575f5ffd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561022957610229610811565b8181038181111561022957610229610811565b808202811582820484141761022957610229610811565b63ffffffff828116828216039081111561022957610229610811565b5f8261089857634e487b7160e01b5f52601260045260245ffd5b50049056fea264697066735822122036a2966f46b9c90f837b54cb23afe8fceffae61c90e86ea8fb890a9392426bfd64736f6c634300081e0033a26469706673582212203f9662d5c64306fa06440daae80d3d0d23e60fc053ef47519013e5759de6dd6864736f6c634300081e0033","sourceMap":"1085:7034:113:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;1085:7034:113;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x73000000000000000000000000000000000000000030146080604052600436106101ab575f3560e01c806386a0d763116100f6578063dc1bb8f41161009a578063dc1bb8f41461041c578063dfff3ebc1461042f578063e068d95a14610442578063e6e2844014610455578063eb7991fa14610474578063ec14780614610493578063ed176514146104e8578063fe2a92d014610507575f5ffd5b806386a0d7631461036a5780638789a132146103725780638841c46714610385578063a4f40ee9146103a4578063bcfe1a1c146103c3578063c4fb3d7c146103e2578063cf20d872146103f5578063d4003253146103fd575f5ffd5b8063385b90121161015d578063385b90121461029e578063483315b3146102bd578063508ac49b146102d05780635a97eaa1146102e45780635e5fafb3146102f75780635f82401f14610316578063604ef88f1461034457806368faa77814610357575f5ffd5b806311704430146101af57806316a7ced5146101fe5780631df47f801461021f578063235ce66f1461024057806328e07ac314610263578063305656b2146102765780633334f7dc1461028b575b5f5ffd5b6101c26101bd36600461238d565b61050f565b6040516101f591908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b60405180910390f35b61021161020c3660046123bf565b61052a565b6040519081526020016101f5565b81801561022a575f5ffd5b5061023e6102393660046123ea565b610534565b005b61025361024e366004612405565b610589565b60405190151581526020016101f5565b61025361027136600461243b565b61059f565b61027e6105aa565b6040516101f59190612465565b610253610299366004612405565b6105b8565b8180156102a9575f5ffd5b506102116102b83660046124f5565b6105c4565b6102116102cb3660046123bf565b6105d0565b8180156102db575f5ffd5b5061023e6105da565b6102116102f23660046123bf565b6105e4565b818015610302575f5ffd5b506102116103113660046125c3565b6105ee565b6103296103243660046123bf565b6105f9565b604080518251815260209283015192810192909252016101f5565b6102116103523660046123bf565b610615565b6102116103653660046125ef565b610628565b610211610633565b6102116103803660046123ea565b61063c565b818015610390575f5ffd5b5061023e61039f366004612639565b610646565b8180156103af575f5ffd5b5061023e6103be366004612695565b61069e565b8180156103ce575f5ffd5b5061027e6103dd3660046126b6565b6106f7565b61027e6103f03660046123bf565b61077f565b61027e610789565b818015610408575f5ffd5b5061023e6104173660046123ea565b6107a4565b61025361042a3660046123bf565b6107f1565b61021161043d3660046123ea565b6107fb565b61021161045036600461274d565b610805565b818015610460575f5ffd5b5061023e61046f3660046123bf565b61080f565b81801561047f575f5ffd5b5061023e61048e366004612792565b610894565b61049b6108a6565b6040805182516001600160a01b03908116825260208085015163ffffffff16908301528383015116918101919091526060918201516001600160601b0316918101919091526080016101f5565b8180156104f3575f5ffd5b5061023e6105023660046123bf565b610926565b610211610932565b61051761235c565b610521838361093b565b90505b92915050565b5f61052482610962565b5f61053e8261097d565b604080516001600160a01b038084168252851660208201529192507fd3890fc76afcfc31cba1dcf2c27b50e2541e4d75039c981855b5b5e03682aea091015b60405180910390a15050565b5f6105958484846109d7565b90505b9392505050565b5f6105218383610a22565b5f6105b3610a50565b905090565b5f610595848484610a6b565b5f610595848484610ab7565b5f61052482610cd4565b6105e2610d24565b565b5f61052482610e42565b5f6105218383610e6e565b604080518082019091525f808252602082015261052482610ebf565b5f61052482610622610f3e565b90610f57565b5f6105218383610f6a565b5f6105b3611057565b5f61052482611079565b61064f816110a0565b60408051825163ffffffff1681526020808401516001600160601b0316908201527f24ea90802d5c1d10fd3da4b05f2415af510be55a0e3b385831be1851c3975869910160405180910390a150565b5f5f6106a983611124565b9150915081156106f2576040805161ffff8084168252851660208201527f50cfb74385ad073f39f956bcb64fa0e087dc901b2a9dcdf8e7a1d340cbf64b74910160405180910390a15b505050565b5f5f308360405161070790612380565b6001600160a01b039092168252805163ffffffff908116602080850191909152820151811660408085019190915282015181166060808501919091528201518116608080850191909152909101511660a082015260c001604051809103905ff080158015610777573d5f5f3e3d5ffd5b509392505050565b5f6105248261128f565b5f610792611342565b600301546001600160a01b0316919050565b5f6107ae82611366565b604080516001600160a01b038084168252851660208201529192507f94d38706e4767859df7903f27cd8cd923dff3af746eb8bbdf828b958710c458b910161057d565b5f61052482611399565b5f6105248261140a565b5f61052482611483565b5f61082861081b6114b6565b5460c01c63ffffffff1690565b905080828181101561085b57604051630d1bff9560e21b8152600481019290925260248201526044015b60405180910390fd5b5050610866826114da565b60405182907faaa1053539ab4621b2aecf54a7ccf2096610ff768f32261f667aca9ae3069482905f90a25050565b61089d82611533565b6106f281611366565b604080516080810182525f8082526020820181905291810182905260608101919091526108d1611342565b6040805160808101825260038301546001600160a01b038082168352600160a01b9182900463ffffffff1660208401526004909401549384169282019290925291046001600160601b03166060820152919050565b61092f816115e8565b50565b5f6105b3610f3e565b61094361235c565b5f61094d84611732565b905061095a81858561176d565b949350505050565b5f61052461096f83611926565b60501c65ffffffffffff1690565b5f6001600160a01b0382166109a557604051638513472b60e01b815260040160405180910390fd5b5f6109ae611342565b60050180546001600160a01b039485166001600160a01b03198216179091559290921692915050565b5f6109e0611342565b5f94855260019081016020908152604080872095875294820181528486206001600160a01b03949094168652920190915250902054600160f81b900460ff1690565b5f61052182610a2f611342565b6001600160a01b0386165f908152600291909101602052604090209061193a565b5f610a59611342565b600601546001600160a01b0316919050565b5f5f610a75611342565b5f95865260019081016020908152604080882096885295820181528587206001600160a01b039590951687529301909252509120546001600160f81b03161190565b5f5f610ac24261195d565b90505f610acd611342565b90505f805b8651811015610caf57610b0784888381518110610af157610af161280e565b60200260200101516119b590919063ffffffff16565b15610b2a888381518110610b1d57610b1d61280e565b60200260200101516119bf565b859091610b5357604051632851216f60e21b815260048101929092526024820152604401610852565b5050610ba5878281518110610b6a57610b6a61280e565b6020026020010151846002015f8b6001600160a01b03166001600160a01b031681526020019081526020015f2061193a90919063ffffffff16565b610ca757610bf9878281518110610bbe57610bbe61280e565b6020026020010151846002015f8b6001600160a01b03166001600160a01b031681526020019081526020015f206119f790919063ffffffff16565b5f836001015f898481518110610c1157610c1161280e565b60209081029190910181015182528181019290925260409081015f90812080546001600160801b03168252600180820185528383206001600160a01b038f168452908101909452919020549092506001600160f81b03168015610ca35781548354610c8c90600160801b90046001600160801b031683612836565b610c969190612861565b610ca09086612874565b94505b5050505b600101610ad2565b508015610cca57610cca6001600160a01b0386168883611a1f565b9695505050505050565b5f5f610cde611a71565b805490915060801c8381811115610d11576040516368dd4dfd60e11b815260048101929092526024820152604401610852565b5050610598610d1f84611a95565b611aaf565b5f610d2e42611ad0565b90505f610d396114b6565b60018101549091505f90610d6590600160e01b900463ffffffff16610d6060056002611b00565b611b0b565b905082811115610d7457505050565b604080516060810182526001840154600160701b90046001600160701b03168152815180830190925248825290602080830191610dbc918101610db5611b16565b9052611c13565b6001600160701b03168152602001610ddd610dd8866002611b0b565b611c58565b63ffffffff9081169091528151600190940180546020840151604090940151909216600160e01b026001600160e01b036001600160701b03948516600160701b026001600160e01b031990941694909616939093179190911793909316179091555050565b5f610e4b611342565b5f928352600101602052506040902054600160801b90046001600160801b031690565b5f5f610e78611342565b6001600160a01b0385165f90815260208290526040902054909150801561095a576001600160a01b038086165f9081526020849052604081205561095a9085168683611a1f565b604080518082019091525f80825260208201525f610edb6114b6565b9050610f00610ee984611ad0565b6001830154600160e01b900463ffffffff165b1190565b610f27576001810154610f2290600160701b90046001600160701b0316611c62565b610598565b6001810154610598906001600160701b0316611c62565b5f6105b3610f4a6114b6565b546001600160401b031690565b5f6105218364e8d4a51000846001611c9c565b5f5f610f74611342565b6001600160a01b0384165f9081526002820160205260409020909150610f9a908561193a565b15610fa8575f915050610524565b5f84815260018083016020908152604080842080546001600160801b0316855280840183528185206001600160a01b038916865293840190925283205490926001600160f81b039091169003611003575f9350505050610524565b805482546001600160a01b0387165f90815260018401602052604090205461104491600160801b90046001600160801b0316906001600160f81b0316612887565b6001600160f81b0316610cca9190612861565b5f611060611342565b60040154600160a01b90046001600160601b0316919050565b5f611082611342565b6001600160a01b039092165f90815260209290925250604090205490565b612710815f015163ffffffff1611156110cc57604051633b97c27960e21b815260040160405180910390fd5b5f6110d5611342565b825160038201805463ffffffff60a01b1916600160a01b63ffffffff9093168302179055602090930151600490910180546001600160a01b03166001600160601b039092169093021790915550565b5f5f5f61112f6114b6565b90505f61113e825f0154611ce7565b9050806060015192508261ffff168561ffff1603611160575f93505050915091565b8261ffff168561ffff1611156112495760028201545f906111959062278d0090600160401b90046001600160401b0316612874565b6002840154909150600160401b90046001600160401b031615806111b95750804210155b81906111db5760405163777ec76b60e11b815260040161085291815260200190565b5060036111ee61ffff8616612710612874565b6111f89190612836565b600261120a61ffff8916612710612874565b6112149190612836565b1115848790916112455760405163e4e1563360e01b815261ffff928316600482015291166024820152604401610852565b5050505b61ffff8516606082015261125c81611d6b565b825550600201805467ffffffffffffffff60401b1916600160401b426001600160401b0316021790556001939092509050565b5f5f611299611a71565b80549091506001600160801b031683158015906112b65750808411155b818590916112e057604051631e19e11960e21b815260048101929092526024820152604401610852565b508490505b81811161131e575f818152600384016020526040902054801561130b5795945050505050565b5080611316816128b8565b9150506112e5565b50604051631e19e11960e21b81526004810182905260248101859052604401610852565b7f7da2ae3c4a8197dbe64388763d16e7945dd85ef9823a62323a7cdcce718a163790565b5f5f611370611342565b60060180546001600160a01b039485166001600160a01b03198216179091559290921692915050565b5f5f6113a3611a71565b80549091506001600160801b0381166113bc8260801c90565b036113ca57505f9392505050565b5f6113e76113e26001600160801b0384166001612874565b610cd4565b90505f6113f38661195d565b90506113ff82826119b5565b159695505050505050565b5f611413611342565b6004908101546040516337ffcfaf60e21b81526001600160a01b039091169163dfff3ebc9161144491869101612465565b602060405180830381865afa15801561145f573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061052491906128d0565b5f610524825f01518360600151846040015161149f9190612874565b6114a99190612874565b6001600160801b03611dde565b7f2e57d696f4035f6dfbf369d367f6b4aaf23baac5f6ee9a3a5207d71c56de652c90565b6114e381611ded565b505f6114ed6114b6565b90505f6114fc825f0154611ce7565b83815290506305f5e1006115146332f1b33685612836565b61151e9190612861565b602082015261152c81611d6b565b9091555050565b612710816020015163ffffffff16111561156057604051633b97c27960e21b815260040160405180910390fd5b5f611569611342565b8251600382018054602086015163ffffffff16600160a01b9081026001600160c01b03199092166001600160a01b03948516179190911790915560408501516060909501516001600160601b03160293169290921760048301555060050180546001600160a01b0319166b4355415548584943414c4c4960401b179055565b5f6115f16114b6565b90505f611600825f0154611ce7565b6040810151909150838060028082101561163657604051631ad480f960e11b815260048101929092526024820152604401610852565b505060028401545f906116569062278d00906001600160401b0316612874565b60028601549091506001600160401b031615806116735750804210155b8190611695576040516344331fd960e01b815260040161085291815260200190565b506116a1600384612836565b6116ac600284612836565b111580156116ce57506116c0600284612836565b6116cb600384612836565b10155b838390916116f857604051637e42087560e01b815260048101929092526024820152604401610852565b50506040840186905261170a84611d6b565b85555050506002909101805467ffffffffffffffff1916426001600160401b03161790555050565b5f5f61173c611a71565b805490915061174a84611399565b61175d576117588160801c90565b61095a565b6001600160801b03169392505050565b61177561235c565b5f61177e6114b6565b90505f611794825f015460c01c63ffffffff1690565b90505f5f5f5f6117a389610ebf565b90505f81602001516202000060036117bb9190612836565b6117c59190612836565b82516117d4906207a120612836565b6117de9190612874565b90506117ee816001886001611c9c565b94505061183961182961181f623d0900845f015161180a611e67565b54600160a01b900463ffffffff166001611c9c565b6001886001611c9c565b87546001600160401b0316611b0b565b92506118458484611b0b565b9150505f6118528a611926565b90505f61188963ffffffff83166118718460201c65ffffffffffff1690565b61187b9190612874565b611884886128e7565b611e8b565b90505f61189582611ed9565b90505f6118b16118ab8684633b9aca005f611c9c565b86611b00565b90505f8b6118c45764e8d4a510006118cd565b6118cd8e610962565b905060405180608001604052806118ed8385610f5790919063ffffffff16565b8152602081018590526040016119038a84610f57565b81526020016119128984610f57565b90529e9d5050505050505050505050505050565b5f61193082611f49565b6006015492915050565b600881901c5f90815260208390526040902054600160ff83161b16151592915050565b5f5f611967611e67565b805490915061198c9063ffffffff600160801b8204811691600160a01b900416612901565b815463ffffffff91909116906119ab906001600160801b031685612927565b6105989190612861565b5f61052182610efc855b5f5f6119c9611e67565b80549091506105989084906119ec90600160c01b900463ffffffff16600161293a565b63ffffffff16611b0b565b600881901c5f90815260209290925260409091208054600160ff9093169290921b9091179055565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526106f2908490611fec565b7f0958201b72d64259285941dffd868dac55267471fcc73e8a06e1fd9cf870636190565b5f610524611aa283611f49565b6005015463ffffffff1690565b5f611ab8611e67565b5461052490600160a01b900463ffffffff1683612861565b5f5f611ada611e67565b805490915063ffffffff600160801b820416906119ab906001600160801b031685612927565b5f6105218284612927565b5f6105218284612874565b5f617a694614808015611b3d5750737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15155b15611c0b5760408051600481526024810182526020810180516001600160e01b0316631f6d6ef760e01b17905290515f918291737109709ecfa91a80626ff3989d68f67f5b1dd12d91611b8f91612956565b5f60405180830381855afa9150503d805f8114611bc7576040519150601f19603f3d011682016040523d82523d5f602084013e611bcc565b606091505b5091509150818015611be057506020815110155b15611c015780806020019051810190611bf991906128d0565b935050505090565b6001935050505090565b4a5b91505090565b5f5f5f90505f611c268460200151612055565b66ffffffffffffff16901b811790506038611c43845f0151612055565b66ffffffffffffff16901b176105988161208c565b5f610524826120bf565b604080518082019091525f8082526020820152506040805180820190915266ffffffffffffff603883901c81168252909116602082015290565b5f611cc9611ca9836120ef565b8015611cc457505f8480611cbf57611cbf61284d565b868809115b151590565b611cd486868661211b565b611cde9190612874565b95945050505050565b611d0e60405180608001604052805f81526020015f81526020015f81526020015f81525090565b6040518060800160405280611d298460c01c63ffffffff1690565b8152602001611d418460401c6001600160801b031690565b81526020016001600160401b0384168152602001611d638460e01c61ffff1690565b905292915050565b5f5f5f9050611d7d83604001516121d1565b6001600160401b0316811790506040611d998460200151612206565b6001600160801b0316901b8117905060c0611db6845f01516120bf565b63ffffffff16901b8117905060e0611dd18460600151612239565b61ffff16901b1792915050565b5f828218828410028218610521565b5f60018280611e18576040516372e1574f60e01b815260048101929092526024820152604401610852565b505f9050611e27836002612836565b905063ffffffff8181811115611e5e576040516303fd5c0b60e41b815263ffffffff90921660048301526024820152604401610852565b50909392505050565b7fcc2bde3d21ba778aa5c156bb6fc47381978b0054c8a1ef73f44234164324cbe090565b5f5f8212611ead57611e9c82612267565b611ea69084612874565b9050610524565b60ff82901d8083011880841115611ed057611ec88185612927565b915050610524565b505f9392505050565b5f5f611ee36114b6565b90505f611efc825f015460401c6001600160801b031690565b90505f611f1385611f0e846064612836565b611dde565b9050611cde611f29845f015460e01c61ffff1690565b611f3590612710612874565b611f4290620186a0612836565b828461228c565b5f5f611f5d611f56611a71565b5460801c90565b90505f611f686122f7565b90505f611f758286612874565b90505f838611158015611f8757508184105b905085848383611fbb57604051638711786b60e01b8152600481019390935260248301919091526044820152606401610852565b505050611fc6611a71565b6002015f611fd4858961296c565b81526020019081526020015f20945050505050919050565b5f5f60205f8451602086015f885af18061200b576040513d5f823e3d81fd5b50505f513d9150811561202257806001141561202f565b6001600160a01b0384163b155b1561204f5783604051635274afe760e01b81526004016108529190612465565b50505050565b5f66ffffffffffffff821115612088576040516306dfcc6560e41b81526038600482015260248101839052604401610852565b5090565b5f6001600160701b03821115612088576040516306dfcc6560e41b81526070600482015260248101839052604401610852565b5f63ffffffff821115612088576040516306dfcc6560e41b81526020600482015260248101839052604401610852565b5f60028260038111156121045761210461297f565b61210e9190612993565b60ff166001149050919050565b5f838302815f1985870982811083820303915050805f0361214f578382816121455761214561284d565b0492505050610598565b80841161216657612166600385150260111861230b565b5f848688095f868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b5f6001600160401b0382111561208857604080516306dfcc6560e41b8152600481019190915260248101839052604401610852565b5f6001600160801b03821115612088576040516306dfcc6560e41b81526080600482015260248101839052604401610852565b5f61ffff821115612088576040516306dfcc6560e41b81526010600482015260248101839052604401610852565b5f5f82121561208857604051635467221960e11b815260048101839052602401610852565b5f6001818061229b8588612836565b90505b80156122e2576122ae8183612874565b91506122ba8386612836565b6122c48783612836565b6122ce9190612861565b90506122db600184612874565b925061229e565b6122ec8583612861565b979650505050505050565b5f61230061231c565b6105b3906001612874565b634e487b715f52806020526024601cfd5b5f5f612326611e67565b805490915061234390600160c01b900463ffffffff166001612874565b8154611c0d9190600160a01b900463ffffffff16612836565b60405180608001604052805f81526020015f81526020015f81526020015f81525090565b610b81806129b583390190565b5f5f6040838503121561239e575f5ffd5b82359150602083013580151581146123b4575f5ffd5b809150509250929050565b5f602082840312156123cf575f5ffd5b5035919050565b6001600160a01b038116811461092f575f5ffd5b5f602082840312156123fa575f5ffd5b8135610598816123d6565b5f5f5f60608486031215612417575f5ffd5b83359250602084013591506040840135612430816123d6565b809150509250925092565b5f5f6040838503121561244c575f5ffd5b8235612457816123d6565b946020939093013593505050565b6001600160a01b0391909116815260200190565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156124af576124af612479565b60405290565b604051601f8201601f191681016001600160401b03811182821017156124dd576124dd612479565b604052919050565b80356124f0816123d6565b919050565b5f5f5f60608486031215612507575f5ffd5b8335612512816123d6565b925060208401356001600160401b0381111561252c575f5ffd5b8401601f8101861361253c575f5ffd5b80356001600160401b0381111561255557612555612479565b8060051b612565602082016124b5565b91825260208184018101929081019089841115612580575f5ffd5b6020850194505b838510156125a657843580835260209586019590935090910190612587565b80965050505050506125ba604085016124e5565b90509250925092565b5f5f604083850312156125d4575f5ffd5b82356125df816123d6565b915060208301356123b4816123d6565b5f5f60408385031215612600575f5ffd5b8235915060208301356123b4816123d6565b63ffffffff8116811461092f575f5ffd5b80356001600160601b03811681146124f0575f5ffd5b5f604082840312801561264a575f5ffd5b50604080519081016001600160401b038111828210171561266d5761266d612479565b604052823561267b81612612565b815261268960208401612623565b60208201529392505050565b5f602082840312156126a5575f5ffd5b813561ffff81168114610598575f5ffd5b5f60a08284031280156126c7575f5ffd5b5060405160a081016001600160401b03811182821017156126ea576126ea612479565b60405282356126f881612612565b8152602083013561270881612612565b6020820152604083013561271b81612612565b6040820152606083013561272e81612612565b6060820152608083013561274181612612565b60808201529392505050565b5f608082840312801561275e575f5ffd5b5061276761248d565b8235815260208084013590820152604080840135908201526060928301359281019290925250919050565b5f5f82840360a08112156127a4575f5ffd5b60808112156127b1575f5ffd5b506127ba61248d565b83356127c5816123d6565b815260208401356127d581612612565b602082015260408401356127e8816123d6565b60408201526127f960608501612623565b6060820152915060808301356123b4816123d6565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761052457610524612822565b634e487b7160e01b5f52601260045260245ffd5b5f8261286f5761286f61284d565b500490565b8082018082111561052457610524612822565b6001600160f81b038181168382168181029092169181830481148215176128b0576128b0612822565b505092915050565b5f600182016128c9576128c9612822565b5060010190565b5f602082840312156128e0575f5ffd5b5051919050565b5f600160ff1b82016128fb576128fb612822565b505f0390565b63ffffffff818116838216029081169081811461292057612920612822565b5092915050565b8181038181111561052457610524612822565b63ffffffff818116838216019081111561052457610524612822565b5f82518060208501845e5f920191825250919050565b5f8261297a5761297a61284d565b500690565b634e487b7160e01b5f52602160045260245ffd5b5f60ff8316806129a5576129a561284d565b8060ff8416069150509291505056fe610140604052348015610010575f5ffd5b50604051610b81380380610b8183398101604081905261002f91610143565b5f816080015163ffffffff1611610059576040516318dbcf2b60e21b815260040160405180910390fd5b5f816060015163ffffffff1611610083576040516318dbcf2b60e21b815260040160405180910390fd5b5f816020015163ffffffff16116100ad576040516318dbcf2b60e21b815260040160405180910390fd5b806080015163ffffffff16816060015163ffffffff1611156100e2576040516318dbcf2b60e21b815260040160405180910390fd5b6001600160a01b039091166080908152815163ffffffff90811660a0526020830151811660c0526040830151811660e0526060830151811661010052910151166101205261020d565b805163ffffffff8116811461013e575f5ffd5b919050565b5f5f82840360c0811215610155575f5ffd5b83516001600160a01b038116811461016b575f5ffd5b925060a0601f198201121561017e575f5ffd5b5060405160a081016001600160401b03811182821017156101ad57634e487b7160e01b5f52604160045260245ffd5b6040526101bc6020850161012b565b81526101ca6040850161012b565b60208201526101db6060850161012b565b60408201526101ec6080850161012b565b60608201526101fd60a0850161012b565b6080820152809150509250929050565b60805160a05160c05160e05161010051610120516108d36102ae5f395f8181610520015281816106800152818161071c015261077301525f81816104ec01528181610744015261079901525f81816104b801526106df01525f818161038a015281816104840152818161065801526106ab01525f8181610354015261045001525f818160b8015281816101a60152818161023b015261028f01526108d35ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c80634fd90e56146100595780638e3356ce146100925780639611c5c2146100b3578063c3f909d4146100f2578063dfff3ebc14610159575b5f5ffd5b61006c6100673660046107d4565b61016c565b604080518251815260209283015163ffffffff1692810192909252015b60405180910390f35b6100a56100a03660046107d4565b61022f565b604051908152602001610089565b6100da7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610089565b6100fa610416565b60405161008991905f60a08201905063ffffffff835116825263ffffffff602084015116602083015263ffffffff604084015116604083015263ffffffff606084015116606083015263ffffffff608084015116608083015292915050565b6100a56101673660046107d4565b610551565b604080518082019091525f80825260208201526102295f5f846001600160a01b03166001600160a01b031681526020019081526020015f207f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b97dd9e26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610200573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061022491906107fa565b61056d565b92915050565b5f336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016811461028b5760405163fe671df560e01b81526001600160a01b0390911660048201526024015b60405180910390fd5b505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663b97dd9e26040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102e9573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061030d91906107fa565b6001600160a01b0384165f908152602081905260408120919250610331828461056d565b805183549192506103479163ffffffff16141590565b156103f5576103b36103ae7f0000000000000000000000000000000000000000000000000000000000000000836020015163ffffffff166103889190610825565b7f0000000000000000000000000000000000000000000000000000000000000000610605565b610617565b825463ffffffff91909116600160201b0267ffffffff000000001990911617825580516103df9061064b565b825463ffffffff191663ffffffff919091161782555b815461040d90600160201b900463ffffffff16610655565b95945050505050565b6040805160a0810182525f808252602082018190529181018290526060810182905260808101919091526040518060a001604052806104747f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016104a87f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016104dc7f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016105107f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff1681526020016105447f0000000000000000000000000000000000000000000000000000000000000000610617565b63ffffffff169052919050565b5f61022961055e8361016c565b6020015163ffffffff16610655565b604080518082019091525f808252602082015282545f9063ffffffff166105949084610838565b6105a190620186a061084b565b604080518082019091528481528554919250906020820190600160201b900463ffffffff1683116105f3576105d583610617565b86546105ee9190600160201b900463ffffffff16610862565b6105f5565b5f5b63ffffffff169052949350505050565b5f8282188284100282185b9392505050565b5f63ffffffff821115610647576040516306dfcc6560e41b81526020600482015260248101839052604401610282565b5090565b5f61022982610617565b5f7f000000000000000000000000000000000000000000000000000000000000000082106106a457507f0000000000000000000000000000000000000000000000000000000000000000919050565b5f6106cf837f0000000000000000000000000000000000000000000000000000000000000000610838565b90505f6402540be40082610703817f000000000000000000000000000000000000000000000000000000000000000061084b565b61070d919061084b565b610717919061087e565b9050807f0000000000000000000000000000000000000000000000000000000000000000101561076a57507f00000000000000000000000000000000000000000000000000000000000000009392505050565b6107bd610797827f0000000000000000000000000000000000000000000000000000000000000000610838565b7f00000000000000000000000000000000000000000000000000000000000000006107c5565b949350505050565b5f828218828411028218610610565b5f602082840312156107e4575f5ffd5b81356001600160a01b0381168114610610575f5ffd5b5f6020828403121561080a575f5ffd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561022957610229610811565b8181038181111561022957610229610811565b808202811582820484141761022957610229610811565b63ffffffff828116828216039081111561022957610229610811565b5f8261089857634e487b7160e01b5f52601260045260245ffd5b50049056fea264697066735822122036a2966f46b9c90f837b54cb23afe8fceffae61c90e86ea8fb890a9392426bfd64736f6c634300081e0033a26469706673582212203f9662d5c64306fa06440daae80d3d0d23e60fc053ef47519013e5759de6dd6864736f6c634300081e0033","sourceMap":"1085:7034:113:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6693:220;;;;;;:::i;:::-;;:::i;:::-;;;;;;697:13:184;;679:32;;767:4;755:17;;;749:24;727:20;;;720:54;830:4;818:17;;;812:24;790:20;;;783:54;893:4;881:17;;;875:24;853:20;;;846:54;;;;666:3;651:19;;446:460;6693:220:113;;;;;;;;7475:181;;;;;;:::i;:::-;;:::i;:::-;;;1335:25:184;;;1323:2;1308:18;7475:181:113;1142:224:184;3322:223:113;;;;;;;;;;-1:-1:-1;3322:223:113;;;;;:::i;:::-;;:::i;:::-;;5587:189;;;;;;:::i;:::-;;:::i;:::-;;;2452:14:184;;2445:22;2427:41;;2415:2;2400:18;5587:189:113;2279:195:184;5780:141:113;;;;;;:::i;:::-;;:::i;6475:130::-;;;:::i;:::-;;;;;;;:::i;5412:171::-;;;;;;:::i;:::-;;:::i;4265:189::-;;;;;;;;;;-1:-1:-1;4265:189:113;;;;;:::i;:::-;;:::i;7033:153::-;;;;;;:::i;:::-;;:::i;2522:81::-;;;;;;;;;;;;;:::i;5248:160::-;;;;;;:::i;:::-;;:::i;4093:168::-;;;;;;;;;;-1:-1:-1;4093:168:113;;;;;:::i;:::-;;:::i;7339:132::-;;;;;;:::i;:::-;;:::i;:::-;;;;6740:13:184;;6722:32;;6810:4;6798:17;;;6792:24;6770:20;;;6763:54;;;;6695:18;7339:132:113;6512:311:184;7778:190:113;;;;;;:::i;:::-;;:::i;4794:182::-;;;;;;:::i;:::-;;:::i;5925:112::-;;;:::i;5104:140::-;;;;;;:::i;:::-;;:::i;2358:160::-;;;;;;;;;;-1:-1:-1;2358:160:113;;;;;:::i;:::-;;:::i;3096:222::-;;;;;;;;;;-1:-1:-1;3096:222:113;;;;;:::i;:::-;;:::i;4458:235::-;;;;;;;;;;-1:-1:-1;4458:235:113;;;;;:::i;:::-;;:::i;7190:145::-;;;;;;:::i;:::-;;:::i;6163:140::-;;;:::i;3849:240::-;;;;;;;;;;-1:-1:-1;3849:240:113;;;;;:::i;:::-;;:::i;6917:112::-;;;;;;:::i;:::-;;:::i;4980:120::-;;;;;;:::i;:::-;;:::i;7972:145::-;;;;;;:::i;:::-;;:::i;2747:345::-;;;;;;;;;;-1:-1:-1;2747:345:113;;;;;:::i;:::-;;:::i;1501:218::-;;;;;;;;;;-1:-1:-1;1501:218:113;;;;;:::i;:::-;;:::i;6041:118::-;;;:::i;:::-;;;;12610:13:184;;-1:-1:-1;;;;;12606:39:184;;;12588:58;;12706:4;12694:17;;;12688:24;12714:10;12684:41;12662:20;;;12655:71;12774:17;;;12768:24;12764:50;12742:20;;;12735:80;;;;12875:4;12863:17;;;12857:24;-1:-1:-1;;;;;12853:57:184;12831:20;;;12824:87;;;;12575:3;12560:19;6041:118:113;12371:546:184;2607:136:113;;;;;;;;;;-1:-1:-1;2607:136:113;;;;;:::i;:::-;;:::i;7660:114::-;;;:::i;6693:220::-;6803:27;;:::i;:::-;6847:61;6884:10;6896:11;6847:36;:61::i;:::-;6840:68;;6693:220;;;;;:::o;7475:181::-;7564:17;7596:55;7633:17;7596:36;:55::i;3322:223::-;3393:20;3416:48;3453:10;3416:36;:48::i;:::-;3475:65;;;-1:-1:-1;;;;;13595:32:184;;;13577:51;;13664:32;;13659:2;13644:18;;13637:60;3393:71:113;;-1:-1:-1;3475:65:113;;13550:18:184;3475:65:113;;;;;;;;3387:158;3322:223;:::o;5587:189::-;5692:4;5711:60;5746:6;5754:7;5763;5711:34;:60::i;:::-;5704:67;;5587:189;;;;;;:::o;5780:141::-;5857:4;5876:40;5900:7;5909:6;5876:23;:40::i;6475:130::-;6538:7;6560:40;:38;:40::i;:::-;6553:47;;6475:130;:::o;5412:171::-;5508:4;5527:51;5553:6;5561:7;5570;5527:25;:51::i;4265:189::-;4370:7;4392:57;4421:7;4430;4439:9;4392:28;:57::i;7033:153::-;7114:5;7134:47;7163:17;7134:28;:47::i;2522:81::-;2569:29;:27;:29::i;:::-;2522:81::o;5248:160::-;5329:7;5351:52;5396:6;5351:44;:52::i;4093:168::-;4180:7;4202:54;4234:10;4246:9;4202:31;:54::i;7339:132::-;-1:-1:-1;;;;;;;;;;;;;;;;;7436:30:113;7455:10;7436:18;:30::i;7778:190::-;7877:13;7905:58;7947:15;7905:30;:28;:30::i;:::-;:41;;:58::i;4794:182::-;4890:7;4912:59;4955:6;4963:7;4912:42;:59::i;5925:112::-;5979:7;6001:31;:29;:31::i;5104:140::-;5176:7;5198:41;5228:10;5198:29;:41::i;2358:160::-;2431:31;2454:7;2431:22;:31::i;:::-;2473:40;;;13952:13:184;;13967:10;13948:30;13930:49;;14039:4;14027:17;;;14021:24;-1:-1:-1;;;;;14017:57:184;13995:20;;;13988:87;2473:40:113;;13903:18:184;2473:40:113;;;;;;;2358:160;:::o;3096:222::-;3158:12;3172:13;3189:36;3220:4;3189:30;:36::i;:::-;3157:68;;;;3235:7;3231:83;;;3257:50;;;14286:6:184;14274:19;;;14256:38;;14330:19;;14325:2;14310:18;;14303:47;3257:50:113;;14229:18:184;3257:50:113;;;;;;;3231:83;3151:167;;3096:222;:::o;4458:235::-;4539:12;4559:21;4629:4;4637:7;4583:62;;;;;:::i;:::-;-1:-1:-1;;;;;14655:32:184;;;14637:51;;14728:13;;14743:10;14724:30;;;14719:2;14704:18;;;14697:58;;;;14801:15;;14795:22;14791:39;;14786:2;14771:18;;;14764:67;;;;14877:15;;14871:22;14867:39;;14862:2;14847:18;;;14840:67;;;;14954:15;;14948:22;14944:39;;14938:3;14923:19;;;14916:68;;;;15031:16;;;15025:23;15021:40;14675:3;15000:19;;14993:69;14624:3;14609:19;4583:62:113;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4559:86:113;4458:235;-1:-1:-1;;;4458:235:113:o;7190:145::-;7266:7;7288:42;7312:17;7288:23;:42::i;6163:140::-;6218:18;6251:22;:20;:22::i;:::-;:29;;:47;-1:-1:-1;;;;;6251:47:113;;6163:140;-1:-1:-1;6163:140:113:o;3849:240::-;3926:21;3950:51;3989:11;3950:38;:51::i;:::-;4012:72;;;-1:-1:-1;;;;;13595:32:184;;;13577:51;;13664:32;;13659:2;13644:18;;13637:60;3926:75:113;;-1:-1:-1;4012:72:113;;13550:18:184;4012:72:113;13403:300:184;6917:112:113;6979:4;6998:26;7020:3;6998:21;:26::i;4980:120::-;5042:7;5064:31;5087:7;5064:22;:31::i;7972:145::-;8058:7;8080:32;8100:11;8080:19;:32::i;2747:345::-;2809:25;2837:42;:19;:17;:19::i;:::-;:26;3653:3:97;3601:55;3334:10;3600:72;;3490:187;2837:42:113;2809:70;-1:-1:-1;2809:70:113;2893:11;:32;;;;2885:107;;;;-1:-1:-1;;;2885:107:113;;;;;15247:25:184;;;;15288:18;;;15281:34;15220:18;;2885:107:113;;;;;;;;;;;2998:36;3022:11;2998:23;:36::i;:::-;3045:42;;3075:11;;3045:42;;;;;2803:289;2747:345;:::o;1501:218::-;1607:35;1634:7;1607:26;:35::i;:::-;1648:66;1687:26;1648:38;:66::i;6041:118::-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6125:22:113;:20;:22::i;:::-;6118:36;;;;;;;;6125:29;;;6118:36;-1:-1:-1;;;;;6118:36:113;;;;;-1:-1:-1;;;6118:36:113;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6118:36:113;;;;;;;-1:-1:-1;6041:118:113:o;2607:136::-;2686:52;2718:19;2686:31;:52::i;:::-;2607:136;:::o;7660:114::-;7716:8;7739:30;:28;:30::i;27317:329:111:-;27427:27;;:::i;:::-;27464:28;27495:54;27538:10;27495:42;:54::i;:::-;27464:85;;27562:79;27595:20;27617:10;27629:11;27562:32;:79::i;:::-;27555:86;27317:329;-1:-1:-1;;;;27317:329:111:o;17084:208:108:-;17173:17;17228:58;:38;17248:17;17228:19;:38::i;:::-;3126:2:98;3074:54;2444:14;3073:71;;2959:190;5086:353:114;5160:20;-1:-1:-1;;;;;5196:24:114;;5188:82;;;;-1:-1:-1;;;5188:82:114;;;;;;;;;;;;5276:35;5314:12;:10;:12::i;:::-;5347:34;;;;-1:-1:-1;;;;;5387:47:114;;;-1:-1:-1;;;;;;5387:47:114;;;;;;5347:34;;;;;5086:353;-1:-1:-1;;5086:353:114:o;13117:213::-;13222:4;13241:12;:10;:12::i;:::-;:33;;;;:25;;;;:33;;;;;;;;:51;;;:42;;;:51;;;;;-1:-1:-1;;;;;13241:74:114;;;;;;:65;;:74;;;-1:-1:-1;13241:74:114;;:84;-1:-1:-1;;;13241:84:114;;;;;13117:213::o;13334:162::-;13411:4;13430:61;13483:6;13430:12;:10;:12::i;:::-;-1:-1:-1;;;;;13430:35:114;;;;;;:26;;;;;:35;;;;;;:39;:61::i;13743:128::-;13806:7;13828:12;:10;:12::i;:::-;:38;;;-1:-1:-1;;;;;13828:38:114;;13743:128;-1:-1:-1;13743:128:114:o;12908:205::-;13004:4;13107:1;13023:12;:10;:12::i;:::-;:33;;;;:25;;;;:33;;;;;;;;:51;;;:42;;;:51;;;;;-1:-1:-1;;;;;13023:74:114;;;;;;:65;;:74;;;-1:-1:-1;13023:74:114;;:81;-1:-1:-1;;;;;13023:81:114;:85;;12908:205::o;6490:1130::-;6595:7;6610:18;6631:52;6646:15;6631:50;:52::i;:::-;6610:73;;6690:35;6728:12;:10;:12::i;:::-;6690:50;-1:-1:-1;6747:26:114;;6783:701;6807:7;:14;6803:1;:18;6783:701;;;6854:49;6890:12;6854:7;6862:1;6854:10;;;;;;;;:::i;:::-;;;;;;;:35;;:49;;;;:::i;:::-;6853:50;6944:28;:7;6952:1;6944:10;;;;;;;;:::i;:::-;;;;;;;:26;:28::i;:::-;6974:12;6836:159;;;;;;-1:-1:-1;;;6836:159:114;;;;;15247:25:184;;;;15288:18;;;15281:34;15220:18;;6836:159:114;15073:248:184;6836:159:114;;;7008:66;7062:7;7070:1;7062:10;;;;;;;;:::i;:::-;;;;;;;7008:13;:27;;:36;7036:7;-1:-1:-1;;;;;7008:36:114;-1:-1:-1;;;;;7008:36:114;;;;;;;;;;;;:40;;:66;;;;:::i;:::-;7086:8;7004:99;7110:66;7164:7;7172:1;7164:10;;;;;;;;:::i;:::-;;;;;;;7110:13;:27;;:36;7138:7;-1:-1:-1;;;;;7110:36:114;-1:-1:-1;;;;;7110:36:114;;;;;;;;;;;;:40;;:66;;;;:::i;:::-;7185:22;7210:13;:26;;:38;7237:7;7245:1;7237:10;;;;;;;;:::i;:::-;;;;;;;;;;;;7210:38;;;;;;;;;;;;;-1:-1:-1;7210:38:114;;;7296:21;;-1:-1:-1;;;;;7296:21:114;7285:33;;:10;;;;:33;;;;;-1:-1:-1;;;;;7343:25:114;;;;:16;;;:25;;;;;;:32;7210:38;;-1:-1:-1;;;;;;7343:32:114;7387:10;;7383:95;;7453:15;;7441:9;;7432:18;;-1:-1:-1;;;7441:9:114;;-1:-1:-1;;;;;7441:9:114;7432:6;:18;:::i;:::-;:36;;;;:::i;:::-;7409:60;;;;:::i;:::-;;;7383:95;6828:656;;;6783:701;6823:3;;6783:701;;;-1:-1:-1;7494:22:114;;7490:94;;7526:51;-1:-1:-1;;;;;7526:22:114;;7549:7;7558:18;7526:22;:51::i;:::-;7597:18;6490:1130;-1:-1:-1;;;;;;6490:1130:114:o;21264:386:116:-;21345:5;21358:31;21392:19;:17;:19::i;:::-;21453:16;;;;-1:-1:-1;693:3:96;641:55;21432:50:116;;;;;21417:167;;;;-1:-1:-1;;;21417:167:116;;;;;15247:25:184;;;;15288:18;;;15281:34;15220:18;;21417:167:116;15073:248:184;21417:167:116;;;21597:48;:32;21611:17;21597:13;:32::i;:::-;:46;:48::i;12562:620:108:-;12609:9;12621:51;12636:15;12621:49;:51::i;:::-;12609:63;;12738:25;12766:12;:10;:12::i;:::-;12807:26;;;:39;:26;;-1:-1:-1;12785:19:108;;12807:71;;-1:-1:-1;;;12807:39:108;;;;12863:14;6750:1;6795;12863:14;:::i;:::-;12807:71;:::i;:::-;12785:93;-1:-1:-1;;;;12885:48:108;;;12920:7;;;12562:620::o;12885:48::-;12968:209;;;;;;;;12999:26;;;:31;-1:-1:-1;;;12999:31:108;;-1:-1:-1;;;;;12999:31:108;12968:209;;13044:70;;;;;;;;13064:13;13044:70;;12968:209;;;;;;13044:81;;:70;;13088:24;:22;:24::i;:::-;13044:70;;:79;:81::i;:::-;-1:-1:-1;;;;;12968:209:108;;;;;13147:23;13148:10;:4;6795:1;13148:10;:::i;:::-;13147:21;:23::i;:::-;12968:209;;;;;;;12939:238;;:26;;;;:238;;;;;;;;;;;;;;-1:-1:-1;;;12939:238:108;-1:-1:-1;;;;;;;;;;12939:238:108;;;-1:-1:-1;;;12939:238:108;-1:-1:-1;;;;;;12939:238:108;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12562:620:108:o;12602:149:114:-;12683:7;12705:12;:10;:12::i;:::-;:33;;;;:25;;:33;;-1:-1:-1;12705:33:114;;;:41;-1:-1:-1;;;12705:41:114;;-1:-1:-1;;;;;12705:41:114;;12602:149::o;6111:375::-;6198:7;6213:35;6251:12;:10;:12::i;:::-;-1:-1:-1;;;;;6286:42:114;;6269:14;6286:42;;;;;;;;;;;6213:50;;-1:-1:-1;6339:10:114;;6335:127;;-1:-1:-1;;;;;6359:42:114;;;6404:1;6359:42;;;;;;;;;;:46;6413:42;;:22;;6390:10;6448:6;6413:22;:42::i;13953:338:108:-;-1:-1:-1;;;;;;;;;;;;;;;;;14043:25:108;14071:12;:10;:12::i;:::-;14043:40;;14096:85;:30;:10;:28;:30::i;:::-;14129:26;;;:39;-1:-1:-1;;;14129:39:108;;;;:52;-1:-1:-1;1759:33:182;1694:101;14096:85:108;:190;;14242:26;;;:31;:44;;-1:-1:-1;;;14242:31:108;;-1:-1:-1;;;;;14242:31:108;:42;:44::i;:::-;14096:190;;;14190:26;;;:30;:43;;-1:-1:-1;;;;;14190:30:108;:41;:43::i;16812:127::-;16868:8;16891:43;:12;:10;:12::i;:::-;:19;-1:-1:-1;;;;;4019:63:97;;3886:202;2850:334;2948:13;3002:171;3039:9;1062:4;3121:15;3147:18;3002:11;:171::i;13875:661:114:-;13971:7;13986:35;14024:12;:10;:12::i;:::-;-1:-1:-1;;;;;14047:36:114;;;;;;:27;;;:36;;;;;13986:50;;-1:-1:-1;14047:62:114;;14101:6;14047:40;:62::i;:::-;14043:91;;;14126:1;14119:8;;;;;14043:91;14140:23;14166:34;;;:26;;;;:34;;;;;;;;14247:22;;-1:-1:-1;;;;;14247:22:114;14235:35;;:11;;;:35;;;;;-1:-1:-1;;;;;14391:25:114;;;;:16;;;:25;;;;;:32;14166:34;;-1:-1:-1;;;;;14391:32:114;;;:37;;14387:66;;14445:1;14438:8;;;;;;;14387:66;14515:15;;14502:10;;-1:-1:-1;;;;;14467:25:114;;14515:15;14467:25;;;:16;;;:25;;;;;:32;:45;;-1:-1:-1;;;14502:10:114;;-1:-1:-1;;;;;14502:10:114;;-1:-1:-1;;;;;14467:32:114;:45;:::i;:::-;-1:-1:-1;;;;;14467:63:114;;;;;:::i;13500:117::-;13554:7;13576:12;:10;:12::i;:::-;:36;;;-1:-1:-1;;;13576:36:114;;-1:-1:-1;;;;;13576:36:114;;;-1:-1:-1;13500:117:114:o;12458:140::-;12530:7;12552:12;:10;:12::i;:::-;-1:-1:-1;;;;;12552:41:114;;;:29;:41;;;;;;;;-1:-1:-1;12552:41:114;;;;;12458:140::o;5749:358::-;5866:6;5841:7;:20;;;5830:42;;;;5822:92;;;;-1:-1:-1;;;5822:92:114;;;;;;;;;;;;5920:35;5958:12;:10;:12::i;:::-;6012:20;;5976;;;:56;;-1:-1:-1;;;;5976:56:114;-1:-1:-1;;;5976:56:114;;;;;;;;;6078:24;;;;;6038:37;;;;:64;;-1:-1:-1;;;;;6038:64:114;-1:-1:-1;;;;;6038:64:114;;;;;;;;;;-1:-1:-1;5749:358:114:o;11528:1030:108:-;11592:12;11606:13;11627:25;11655:12;:10;:12::i;:::-;11627:40;;11673:23;11699:28;:8;:15;;;:26;:28::i;:::-;11673:54;;11750:6;:27;;;11734:44;;11797:6;11789:14;;:4;:14;;;11785:57;;11821:5;11813:22;;;;11528:1030;;;:::o;11785:57::-;11859:6;11852:13;;:4;:13;;;11848:531;;;11905:33;;;;11875:19;;11897:80;;5688:7;;-1:-1:-1;;;11905:33:108;;-1:-1:-1;;;;;11905:33:108;11897:80;:::i;:::-;12002:33;;;;11875:102;;-1:-1:-1;;;;12002:33:108;;-1:-1:-1;;;;;12002:33:108;:38;;:72;;;12063:11;12044:15;:30;;12002:72;12125:11;11985:160;;;;;-1:-1:-1;;;11985:160:108;;;;;;1335:25:184;;1323:2;1308:18;;1142:224;11985:160:108;-1:-1:-1;5745:1:108;12240:24;12249:15;;;12240:6;:24;:::i;:::-;12239:57;;;;:::i;:::-;5796:1;12171:22;12180:13;;;12171:6;:22;:::i;:::-;12170:55;;;;:::i;:::-;:126;;12351:6;12359:4;12153:219;;;;;;-1:-1:-1;;;12153:219:108;;14286:6:184;14274:19;;;12153:219:108;;;14256:38:184;14330:19;;14310:18;;;14303:47;14229:18;;12153:219:108;14086:270:184;12153:219:108;;;11867:512;11848:531;12385:34;;;:27;;;:34;12443:17;12385:6;12443:15;:17::i;:::-;12425:35;;-1:-1:-1;12466:33:108;;:59;;-1:-1:-1;;;;12466:59:108;-1:-1:-1;;;12509:15:108;-1:-1:-1;;;;;12466:59:108;;;;;-1:-1:-1;;11528:1030:108;;-1:-1:-1;;;11528:1030:108:o;22412:818:116:-;22488:7;22503:31;22537:19;:17;:19::i;:::-;22579:16;;;;-1:-1:-1;;;;;;811:80:96;22628:21:116;;;;;:52;;;22674:6;22653:17;:27;;22628:52;22723:6;22731:17;22613:142;;;;;;-1:-1:-1;;;22613:142:116;;;;;15247:25:184;;;;15288:18;;;15281:34;15220:18;;22613:142:116;15073:248:184;22613:142:116;-1:-1:-1;22779:17:116;;-1:-1:-1;22762:215:116;22803:6;22798:1;:11;22762:215;;22824:23;22850:28;;;:25;;;:28;;;;;;22890:20;;22886:85;;22945:15;22412:818;-1:-1:-1;;;;;22412:818:116:o;22886:85::-;-1:-1:-1;22811:3:116;;;;:::i;:::-;;;;22762:215;;;-1:-1:-1;23164:61:116;;-1:-1:-1;;;23164:61:116;;;;;15247:25:184;;;15288:18;;;15281:34;;;15220:18;;23164:61:116;15073:248:184;14540:193:114;3396:33;;14540:193::o;4582:281::-;4659:21;4688:35;4726:12;:10;:12::i;:::-;4760:39;;;;-1:-1:-1;;;;;4805:53:114;;;-1:-1:-1;;;;;;4805:53:114;;;;;;4760:39;;;;;4582:281;-1:-1:-1;;4582:281:114:o;24600:458:116:-;24662:4;24674:31;24708:19;:17;:19::i;:::-;24761:16;;;;-1:-1:-1;;;;;;811:80:96;;24788:17:116;:4;693:3:96;641:55;;534:167;24788:17:116;:37;24784:70;;-1:-1:-1;24842:5:116;;24600:458;-1:-1:-1;;;24600:458:116:o;24784:70::-;24860:24;24887:43;24909:20;-1:-1:-1;;;;;811:80:96;;24928:1:116;24909:20;:::i;:::-;24887:21;:43::i;:::-;24860:70;;24936:18;24957:24;:3;:22;:24::i;:::-;24936:45;-1:-1:-1;24996:57:116;:18;24936:45;24996:43;:57::i;:::-;24995:58;;24600:458;-1:-1:-1;;;;;;24600:458:116:o;12316:138:114:-;12378:7;12400:12;:10;:12::i;:::-;:27;;;;;:49;;-1:-1:-1;;;12400:49:114;;-1:-1:-1;;;;;12400:27:114;;;;:40;;:49;;12441:7;;12400:49;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;19709:502:108:-;19795:7;20101:105;20163:11;:23;;;20138:11;:22;;;20110:11;:25;;;:50;;;;:::i;:::-;:76;;;;:::i;:::-;-1:-1:-1;;;;;20101:8:108;:105::i;21239:183::-;6848:30;;21239:183::o;9060:464::-;9183:29;9200:11;9183:16;:29::i;:::-;;9219:25;9247:12;:10;:12::i;:::-;9219:40;;9266:23;9292:28;:8;:15;;;:26;:28::i;:::-;9326:31;;;9266:54;-1:-1:-1;3599:3:108;9397:47;3657:11;9346;9397:47;:::i;:::-;:80;;;;:::i;:::-;9363:31;;;:114;9502:17;9363:6;9502:15;:17::i;:::-;9484:35;;;-1:-1:-1;;9060:464:108:o;3769:430:114:-;3883:6;3858:7;:20;;;3847:42;;;;3839:92;;;;-1:-1:-1;;;3839:92:114;;;;;;;;;;;;3937:35;3975:12;:10;:12::i;:::-;3993:30;;:20;;;:30;;;;;;;;-1:-1:-1;;;3993:30:114;;;-1:-1:-1;;;;;;3993:30:114;;;-1:-1:-1;;;;;3993:30:114;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3993:30:114;;;;;;;;;;;;-1:-1:-1;4125:34:114;;:69;;-1:-1:-1;;;;;;4125:69:114;-1:-1:-1;;;4125:69:114;;;3769:430::o;9528:1062:108:-;9607:25;9635:12;:10;:12::i;:::-;9607:40;;9653:23;9679:28;:8;:15;;;:26;:28::i;:::-;9748:25;;;;9653:54;;-1:-1:-1;9811:19:108;;4712:1;9846:33;;;;9838:113;;;;-1:-1:-1;;;9838:113:108;;;;;15247:25:184;;;;15288:18;;;15281:34;15220:18;;9838:113:108;15073:248:184;9838:113:108;-1:-1:-1;;9988:30:108;;;;9958:19;;9980:70;;4570:7;;-1:-1:-1;;;;;9988:30:108;9980:70;:::i;:::-;10071:30;;;;9958:92;;-1:-1:-1;;;;;;10071:30:108;:35;;:69;;;10129:11;10110:15;:30;;10071:69;10183:11;10056:145;;;;;-1:-1:-1;;;10056:145:108;;;;;;1335:25:184;;1323:2;1308:18;;1142:224;10056:145:108;-1:-1:-1;10255:31:108;4620:1;10255:7;:31;:::i;:::-;10223:28;4664:1;10223:4;:28;:::i;:::-;:63;;:138;;;;-1:-1:-1;10330:31:108;4664:1;10330:7;:31;:::i;:::-;10298:28;4620:1;10298:4;:28;:::i;:::-;:63;;10223:138;10408:7;10417:4;10208:220;;;;;;-1:-1:-1;;;10208:220:108;;;;;15247:25:184;;;;15288:18;;;15281:34;15220:18;;10208:220:108;15073:248:184;10208:220:108;-1:-1:-1;;10435:25:108;;;:47;;;10506:17;10435:6;10506:15;:17::i;:::-;10488:35;;-1:-1:-1;;;10529:30:108;;;;:56;;-1:-1:-1;;10529:56:108;10569:15;-1:-1:-1;;;;;10529:56:108;;;;-1:-1:-1;;9528:1062:108:o;20563:297:116:-;20653:7;20668:31;20702:19;:17;:19::i;:::-;20754:16;;20668:53;;-1:-1:-1;20783:33:116;20805:10;20783:21;:33::i;:::-;:72;;20838:17;:4;693:3:96;641:55;;534:167;20838:17:116;20783:72;;;-1:-1:-1;;;;;811:80:96;;20776:79:116;-1:-1:-1;;;20563:297:116:o;14295:2226:108:-;14436:27;;:::i;:::-;14473:25;14501:12;:10;:12::i;:::-;14473:40;;14520:18;14541:31;:8;:15;;;3653:3:97;3601:55;3334:10;3600:72;;3490:187;14541:31:108;14520:52;;14579:29;14614:26;14646:14;14675:21;14699:30;14718:10;14699:18;:30::i;:::-;14675:54;;14781:15;14903:4;:12;;;3708:7;3757:1;14860:40;;;;:::i;:::-;:55;;;;:::i;:::-;14843:12;;14810:45;;2993:7;14810:45;:::i;:::-;14809:107;;;;:::i;:::-;14781:135;;14964:55;14976:7;14985:1;14988:10;15000:18;14964:11;:55::i;:::-;14927:93;;14771:258;15097:339;15124:258;15151:140;3047:9;15207:4;:12;;;15221:20;:18;:20::i;:::-;:34;-1:-1:-1;;;15221:34:108;;;;15257:18;15151:11;:140::i;:::-;15307:1;15324:10;15350:18;15124:11;:258::i;:::-;15397:15;;-1:-1:-1;;;;;4019:63:97;12807:71:108;:::i;15097:339::-;15077:359;;15461:40;:20;15484:17;15461:40;:::i;:::-;15453:48;;14667:841;15514:35;15552:42;15572:21;15552:19;:42::i;:::-;15514:80;-1:-1:-1;15600:18:108;15627:103;2389:10:98;2697:63;;15645:31:108;:15;2932:2:98;2880:54;2444:14;2879:71;;2769:186;15645:31:108;:63;;;;:::i;:::-;15710:19;15718:10;15710:19;:::i;:::-;15627:17;:103::i;:::-;15600:130;;15736:29;15768:32;15789:10;15768:20;:32::i;:::-;15736:64;;15807:20;15834:149;15857:110;15885:5;15893:21;3348:3;15947:19;15857:11;:110::i;:::-;15978:5;15834:149;:::i;:::-;15807:176;;15990:32;16025:11;:139;;1062:4:97;16025:139:108;;;16045:59;16082:21;16045:36;:59::i;:::-;15990:174;;16178:338;;;;;;;;16419:38;16442:14;16419:11;:22;;:38;;;;:::i;:::-;16178:338;;;;;;;;;;16243:47;:20;16275:14;16243:31;:47::i;:::-;16178:338;;;;16332:44;:17;16361:14;16332:28;:44::i;:::-;16178:338;;16171:345;14295:2226;-1:-1:-1;;;;;;;;;;;;;;14295:2226:108:o;16881:167:116:-;16953:19;16987:46;17015:17;16987:27;:46::i;:::-;:56;;;;16881:167;-1:-1:-1;;16881:167:116:o;1028:217:64:-;1144:1;1135:10;;;1102:4;1206:20;;;;;;;;;;;1170:1;1184:4;1176:12;;1170:19;1206:27;:32;;1028:217;;;;:::o;5304:236:93:-;5369:5;5382:25;5410:12;:10;:12::i;:::-;5515:18;;5382:40;;-1:-1:-1;5493:40:93;;5515:18;-1:-1:-1;;;5515:18:93;;;;;-1:-1:-1;;;5493:19:93;;;:40;:::i;:::-;5471:17;;5447:87;;;;;;5448:40;;-1:-1:-1;;;;;5471:17:93;5465:2;5448:40;:::i;:::-;5447:87;;;;:::i;5175:125::-;5252:4;5271:24;:2;5276:19;5292:2;3348:439;3406:5;3419:25;3447:12;:10;:12::i;:::-;3750:27;;;;-1:-1:-1;3734:48:93;;:2;;3750:31;;-1:-1:-1;;;3750:27:93;;;;3780:1;3750:31;:::i;:::-;3739:43;;3734:48;:::i;1581:186:64:-;1677:1;1668:10;;;1651:14;1732:20;;;;;;;;;;;;:28;;1703:1;1717:4;1709:12;;;1703:19;;;;1732:28;;;;;1581:186::o;1219:160:46:-;1328:43;;;-1:-1:-1;;;;;18645:32:184;;1328:43:46;;;18627:51:184;18694:18;;;;18687:34;;;1328:43:46;;;;;;;;;;18600:18:184;;;;1328:43:46;;;;;;;;-1:-1:-1;;;;;1328:43:46;-1:-1:-1;;;1328:43:46;;;1301:71;;1321:5;;1301:19;:71::i;25754:188:116:-;5747:30;;25754:188::o;18020:167::-;18093:4;18112:70;:46;18140:17;18112:27;:46::i;:::-;:57;;;;;;979:137:180;5544:136:93;5599:5;5648:12;:10;:12::i;:::-;:26;5630:44;;-1:-1:-1;;;5648:26:93;;;;5642:2;5630:44;:::i;2588:208::-;2652:4;2664:25;2692:12;:10;:12::i;:::-;2772:18;;2664:40;;-1:-1:-1;2772:18:93;-1:-1:-1;;;2772:18:93;;;;2728:40;;-1:-1:-1;;;;;2751:17:93;2745:2;2728:40;:::i;1370:113:182:-;1419:4;1446:33;1476:2;1458;1446:33;:::i;1255:113::-;1304:4;1331:33;1361:2;1343;1331:33;:::i;2466:989:169:-;2515:7;2947:6;2930:13;:23;;2963:46;;;;-1:-1:-1;2983:22:169;;:26;;2963:46;2959:451;;;3152:43;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3152:43:169;-1:-1:-1;;;3152:43:169;;;3130:66;;3095:12;;;;3130:21;;:66;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3094:102;;;;3208:7;:28;;;;;3234:2;3219:4;:11;:17;;3208:28;3204:87;;;3266:4;3255:27;;;;;;;;;;;;:::i;:::-;3248:34;;;;;2466:989;:::o;3204:87::-;3402:1;3395:8;;;;;2466:989;:::o;2959:451::-;2425:17:104;3422:28:169;3415:35;;;2466:989;:::o;1685:277:98:-;1750:19;1777:13;1793:1;1777:17;;1846:1;1817:24;:5;:13;;;:22;:24::i;:::-;1809:33;;:38;;1800:47;;;;1899:2;1870:24;:5;:13;;;:22;:24::i;:::-;1862:33;;:39;;1853:48;1939:17;1853:48;1939:15;:17::i;518:145:180:-;571:14;620:37;650:5;620:17;:37::i;1966:322:98:-;-1:-1:-1;;;;;;;;;;;;;;;;;;2218:65:98;;;;;;;;;1298:16;2187:2;2178:11;;;;;2218:65;;2133:20;;;2218:65;;;;;1966:322::o;9351:238:61:-;9452:7;9506:76;9522:26;9539:8;9522:16;:26::i;:::-;:59;;;;;9580:1;9565:11;9552:25;;;;;:::i;:::-;9562:1;9559;9552:25;:29;9522:59;34914:9:62;34907:17;;34795:145;9506:76:61;9478:25;9485:1;9488;9491:11;9478:6;:25::i;:::-;:104;;;;:::i;:::-;9471:111;9351:238;-1:-1:-1;;;;;9351:238:61:o;4740:422:97:-;4825:16;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4825:16:97;4856:301;;;;;;;;5040:35;5054:20;3653:3;3601:55;3334:10;3600:72;;3490:187;5040:35;4856:301;;;;4971:49;4999:20;3858:2;3806:54;-1:-1:-1;;;;;3805:72:97;;3681:201;4971:49;4856:301;;;;-1:-1:-1;;;;;4019:63:97;;4856:301;;;;5105:45;5129:20;4265:3;4213:55;3284:6;4212:72;;4092:197;5105:45;4856:301;;4849:308;4740:422;-1:-1:-1;;4740:422:97:o;4293:443::-;4360:19;4387:13;4403:1;4387:17;;4427:54;4443:7;:26;;;4427:52;:54::i;:::-;-1:-1:-1;;;;;4419:63:97;4410:72;;;;4554:2;4505:44;:7;:32;;;:42;:44::i;:::-;-1:-1:-1;;;;;4497:53:97;:59;;4488:68;;;;4613:3;4579:29;:7;:18;;;:27;:29::i;:::-;4571:38;;:45;;4562:54;;;;4683:3;4639:39;:7;:28;;;:37;:39::i;:::-;4631:48;;:55;;4622:64;;4293:443;-1:-1:-1;;4293:443:97:o;3371:111:61:-;3429:7;3066:5;;;3463;;;3065:36;3060:42;;3455:20;2825:294;18427:403:108;18497:7;18570:1;18520:11;:15;18512:74;;;;-1:-1:-1;;;18512:74:108;;;;;15247:25:184;;;;15288:18;;;15281:34;15220:18;;18512:74:108;15073:248:184;18512:74:108;-1:-1:-1;18592:17:108;;-1:-1:-1;18612:15:108;:11;18626:1;18612:15;:::i;:::-;18592:35;-1:-1:-1;18723:16:108;18592:35;18710:29;;;;18702:100;;;;-1:-1:-1;;;18702:100:108;;19502:10:184;19490:23;;;18702:100:108;;;19472:42:184;19530:18;;;19523:34;19445:18;;18702:100:108;19299:264:184;18702:100:108;-1:-1:-1;18816:9:108;;18427:403;-1:-1:-1;;;18427:403:108:o;5861:189:93:-;937:31;;5861:189::o;21720:243:108:-;21786:7;21811:1;21805:2;:7;21801:54;;21834:14;:2;:12;:14::i;:::-;21829:19;;:2;:19;:::i;:::-;21822:26;;;;21801:54;2436:3:63;2431:8;;;2576;;;2575:17;21904:8:108;;;21900:44;;;21929:8;21934:3;21929:2;:8;:::i;:::-;21922:15;;;;;21900:44;-1:-1:-1;21957:1:108;;21720:243;-1:-1:-1;;;21720:243:108:o;17562:861::-;17635:7;17650:25;17678:12;:10;:12::i;:::-;17650:40;;17696:19;17718:45;:8;:15;;;3858:2:97;3806:54;-1:-1:-1;;;;;3805:72:97;;3681:201;17718:45:108;17696:67;-1:-1:-1;17929:23:108;17955:39;17964:10;17976:17;17696:67;17990:3;17976:17;:::i;:::-;17955:8;:39::i;:::-;17929:65;;18313:105;18339:41;:8;:15;;;4265:3:97;4213:55;3284:6;4212:72;;4092:197;18339:41:108;18330:50;;:6;:50;:::i;:::-;18329:58;;18384:3;18329:58;:::i;:::-;18389:15;18406:11;18313:15;:105::i;13583:541:116:-;13682:35;13727:15;13745:30;:12;:10;:12::i;:::-;:17;693:3:96;641:55;;534:167;13745:30:116;13727:48;;13781:12;13796:16;:14;:16::i;:::-;13781:31;-1:-1:-1;13819:18:116;13840:24;13781:31;13840:17;:24;:::i;:::-;13819:45;;13870:14;13908:7;13887:17;:28;;:52;;;;;13929:10;13919:7;:20;13887:52;13870:69;-1:-1:-1;14008:17:116;14027:7;14036:10;13870:69;13945:103;;;;-1:-1:-1;;;13945:103:116;;;;;19770:25:184;;;;19811:18;;;19804:34;;;;19854:18;;;19847:34;19743:18;;13945:103:116;19568:319:184;13945:103:116;;;;14062:12;:10;:12::i;:::-;:31;;:57;14094:24;14114:4;14094:17;:24;:::i;:::-;14062:57;;;;;;;;;;;14055:64;;;;;;13583:541;;;:::o;7686:720:46:-;7766:18;7794:19;7932:4;7929:1;7922:4;7916:11;7909:4;7903;7899:15;7896:1;7889:5;7882;7877:60;7989:7;7979:176;;8033:4;8027:11;8078:16;8075:1;8070:3;8055:40;8124:16;8119:3;8112:29;7979:176;-1:-1:-1;;8232:1:46;8226:8;8182:16;;-1:-1:-1;8258:15:46;;:68;;8310:11;8325:1;8310:16;;8258:68;;;-1:-1:-1;;;;;8276:26:46;;;:31;8258:68;8254:146;;;8382:5;8349:40;;-1:-1:-1;;;8349:40:46;;;;;;;;:::i;8254:146::-;7756:650;;7686:720;;:::o;13796:213:62:-;13852:6;13882:16;13874:24;;13870:103;;;13921:41;;-1:-1:-1;;;13921:41:62;;13952:2;13921:41;;;20190:36:184;20242:18;;;20235:34;;;20163:18;;13921:41:62;20009:266:184;13870:103:62;-1:-1:-1;13996:5:62;13796:213::o;10282:218::-;10339:7;-1:-1:-1;;;;;10362:25:62;;10358:105;;;10410:42;;-1:-1:-1;;;10410:42:62;;10441:3;10410:42;;;20190:36:184;20242:18;;;20235:34;;;20163:18;;10410:42:62;20009:266:184;15296:213:62;15352:6;15382:16;15374:24;;15370:103;;;15421:41;;-1:-1:-1;;;15421:41:62;;15452:2;15421:41;;;20190:36:184;20242:18;;;20235:34;;;20163:18;;15421:41:62;20009:266:184;29534:122:61;29602:4;29643:1;29631:8;29625:15;;;;;;;;:::i;:::-;:19;;;;:::i;:::-;:24;;29648:1;29625:24;29618:31;;29534:122;;;:::o;4996:4226::-;5078:14;5449:5;;;5078:14;-1:-1:-1;;5453:1:61;5449;5621:20;5694:5;5690:2;5687:13;5679:5;5675:2;5671:14;5667:34;5658:43;;;5796:5;5805:1;5796:10;5792:368;;6134:11;6126:5;:19;;;;;:::i;:::-;;6119:26;;;;;;5792:368;6285:5;6270:11;:20;6266:143;;6310:84;3066:5;6330:16;;3065:36;940:4:51;3060:42:61;6310:11;:84::i;:::-;6664:17;6799:11;6796:1;6793;6786:25;7199:12;7229:15;;;7214:31;;7348:22;;;;;8094:1;8075;:15;;8074:21;;8327;;;8323:25;;8312:36;8397:21;;;8393:25;;8382:36;8469:21;;;8465:25;;8454:36;8540:21;;;8536:25;;8525:36;8613:21;;;8609:25;;8598:36;8687:21;;;8683:25;;;8672:36;7597:12;;;;7593:23;;;7618:1;7589:31;6913:20;;;6902:32;;;7709:12;;;;6960:21;;;;7446:16;;;;7700:21;;;;9163:15;;;;;-1:-1:-1;;4996:4226:61;;;;;:::o;13296:213:62:-;13352:6;-1:-1:-1;;;;;13374:24:62;;13370:103;;;13452:2;13421:41;;-1:-1:-1;;;13421:41:62;;;;;20190:36:184;;;;20242:18;;;20235:34;;;20163:18;;13421:41:62;20009:266:184;9264:218:62;9321:7;-1:-1:-1;;;;;9344:25:62;;9340:105;;;9392:42;;-1:-1:-1;;;9392:42:62;;9423:3;9392:42;;;20190:36:184;20242:18;;;20235:34;;;20163:18;;9392:42:62;20009:266:184;16296:213:62;16352:6;16382:16;16374:24;;16370:103;;;16421:41;;-1:-1:-1;;;16421:41:62;;16452:2;16421:41;;;20190:36:184;20242:18;;;20235:34;;;20163:18;;16421:41:62;20009:266:184;17171:193:62;17227:7;17258:1;17250:5;:9;17246:81;;;17282:34;;-1:-1:-1;;;17282:34:62;;;;;1335:25:184;;;1308:18;;17282:34:62;1142:224:184;24089:440:108;24195:7;24222:1;24195:7;;24284:22;24294:12;24284:7;:22;:::i;:::-;24253:53;;24312:179;24319:24;;24312:179;;24353:30;24363:20;24353:30;;:::i;:::-;;-1:-1:-1;24453:16:108;24468:1;24453:12;:16;:::i;:::-;24415:33;24438:10;24415:20;:33;:::i;:::-;24414:56;;;;:::i;:::-;24391:79;-1:-1:-1;24478:6:108;24483:1;24478:6;;:::i;:::-;;;24312:179;;;24503:21;24512:12;24503:6;:21;:::i;:::-;24496:28;24089:440;-1:-1:-1;;;;;;;24089:440:108:o;11736:202:116:-;11785:7;11897:32;:30;:32::i;:::-;:36;;11932:1;11897:36;:::i;1776:194:51:-;1881:10;1875:4;1868:24;1918:4;1912;1905:18;1949:4;1943;1936:18;4672:203:93;4729:7;4744:25;4772:12;:10;:12::i;:::-;4837:27;;;;-1:-1:-1;4829:40:93;;-1:-1:-1;;;4837:27:93;;;;4868:1;4829:40;:::i;:::-;4805:19;;4797:73;;;-1:-1:-1;;;4805:19:93;;;;4797:73;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;:::o;14:427:184:-;111:6;119;172:2;160:9;151:7;147:23;143:32;140:52;;;188:1;185;178:12;140:52;233:23;;;-1:-1:-1;332:2:184;317:18;;304:32;374:15;;367:23;355:36;;345:64;;405:1;402;395:12;345:64;428:7;418:17;;;14:427;;;;;:::o;911:226::-;970:6;1023:2;1011:9;1002:7;998:23;994:32;991:52;;;1039:1;1036;1029:12;991:52;-1:-1:-1;1084:23:184;;911:226;-1:-1:-1;911:226:184:o;1371:131::-;-1:-1:-1;;;;;1446:31:184;;1436:42;;1426:70;;1492:1;1489;1482:12;1507:247;1566:6;1619:2;1607:9;1598:7;1594:23;1590:32;1587:52;;;1635:1;1632;1625:12;1587:52;1674:9;1661:23;1693:31;1718:5;1693:31;:::i;1759:515::-;1864:6;1872;1880;1933:2;1921:9;1912:7;1908:23;1904:32;1901:52;;;1949:1;1946;1939:12;1901:52;1994:23;;;-1:-1:-1;2114:2:184;2099:18;;2086:32;;-1:-1:-1;2196:2:184;2181:18;;2168:32;2209:33;2168:32;2209:33;:::i;:::-;2261:7;2251:17;;;1759:515;;;;;:::o;2479:395::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;2838:2;2823:18;;;;2810:32;;-1:-1:-1;;;2479:395:184:o;2879:211::-;-1:-1:-1;;;;;3051:32:184;;;;3033:51;;3021:2;3006:18;;2879:211::o;3095:127::-;3156:10;3151:3;3147:20;3144:1;3137:31;3187:4;3184:1;3177:15;3211:4;3208:1;3201:15;3227:252;3299:2;3293:9;3341:3;3329:16;;-1:-1:-1;;;;;3360:34:184;;3396:22;;;3357:62;3354:88;;;3422:18;;:::i;:::-;3458:2;3451:22;3227:252;:::o;3484:275::-;3555:2;3549:9;3620:2;3601:13;;-1:-1:-1;;3597:27:184;3585:40;;-1:-1:-1;;;;;3640:34:184;;3676:22;;;3637:62;3634:88;;;3702:18;;:::i;:::-;3738:2;3731:22;3484:275;;-1:-1:-1;3484:275:184:o;3764:142::-;3840:20;;3869:31;3840:20;3869:31;:::i;:::-;3764:142;;;:::o;3911:1257::-;4057:6;4065;4073;4126:2;4114:9;4105:7;4101:23;4097:32;4094:52;;;4142:1;4139;4132:12;4094:52;4181:9;4168:23;4200:31;4225:5;4200:31;:::i;:::-;4250:5;-1:-1:-1;4306:2:184;4291:18;;4278:32;-1:-1:-1;;;;;4322:30:184;;4319:50;;;4365:1;4362;4355:12;4319:50;4388:22;;4441:4;4433:13;;4429:27;-1:-1:-1;4419:55:184;;4470:1;4467;4460:12;4419:55;4510:2;4497:16;-1:-1:-1;;;;;4528:6:184;4525:30;4522:56;;;4558:18;;:::i;:::-;4604:6;4601:1;4597:14;4631:28;4655:2;4651;4647:11;4631:28;:::i;:::-;4693:19;;;4737:2;4767:11;;;4763:20;;;4728:12;;;;4795:19;;;4792:39;;;4827:1;4824;4817:12;4792:39;4859:2;4855;4851:11;4840:22;;4871:202;4887:6;4882:3;4879:15;4871:202;;;4981:17;;5011:20;;;5060:2;4904:12;;;;4981:17;;-1:-1:-1;5051:12:184;;;;4871:202;;;5092:5;5082:15;;;;;;;5116:46;5158:2;5147:9;5143:18;5116:46;:::i;:::-;5106:56;;3911:1257;;;;;:::o;5840:404::-;5924:6;5932;5985:2;5973:9;5964:7;5960:23;5956:32;5953:52;;;6001:1;5998;5991:12;5953:52;6040:9;6027:23;6059:31;6084:5;6059:31;:::i;:::-;6109:5;-1:-1:-1;6166:2:184;6151:18;;6138:32;6179:33;6138:32;6179:33;:::i;7323:395::-;7419:6;7427;7480:2;7468:9;7459:7;7455:23;7451:32;7448:52;;;7496:1;7493;7486:12;7448:52;7541:23;;;-1:-1:-1;7640:2:184;7625:18;;7612:32;7653:33;7612:32;7653:33;:::i;7723:139::-;7826:10;7819:5;7815:22;7808:5;7805:33;7795:61;;7852:1;7849;7842:12;7867:179;7934:20;;-1:-1:-1;;;;;7983:38:184;;7973:49;;7963:77;;8036:1;8033;8026:12;8051:663;8148:6;8208:2;8196:9;8187:7;8183:23;8179:32;8223:2;8220:22;;;8238:1;8235;8228:12;8220:22;-1:-1:-1;8307:2:184;8301:9;;;8337:15;;-1:-1:-1;;;;;8367:34:184;;8403:22;;;8364:62;8361:88;;;8429:18;;:::i;:::-;8465:2;8458:22;8502:23;;8534:48;8502:23;8534:48;:::i;:::-;8591:21;;8645:37;8678:2;8663:18;;8645:37;:::i;:::-;8640:2;8628:15;;8621:62;8632:6;8051:663;-1:-1:-1;;;8051:663:184:o;8719:272::-;8777:6;8830:2;8818:9;8809:7;8805:23;8801:32;8798:52;;;8846:1;8843;8836:12;8798:52;8885:9;8872:23;8935:6;8928:5;8924:18;8917:5;8914:29;8904:57;;8957:1;8954;8947:12;8996:1218;9091:6;9151:3;9139:9;9130:7;9126:23;9122:33;9167:2;9164:22;;;9182:1;9179;9172:12;9164:22;-1:-1:-1;9251:2:184;9245:9;9293:3;9281:16;;-1:-1:-1;;;;;9312:34:184;;9348:22;;;9309:62;9306:88;;;9374:18;;:::i;:::-;9410:2;9403:22;9447:23;;9479:48;9447:23;9479:48;:::i;:::-;9536:21;;9609:2;9594:18;;9581:32;9622:50;9581:32;9622:50;:::i;:::-;9700:2;9688:15;;9681:32;9765:2;9750:18;;9737:32;9778:50;9737:32;9778:50;:::i;:::-;9856:2;9844:15;;9837:32;9921:2;9906:18;;9893:32;9934:50;9893:32;9934:50;:::i;:::-;10012:2;10000:15;;9993:32;10077:3;10062:19;;10049:33;10091:50;10049:33;10091:50;:::i;:::-;10169:3;10157:16;;10150:33;10161:6;8996:1218;-1:-1:-1;;;8996:1218:184:o;10701:733::-;10799:6;10859:3;10847:9;10838:7;10834:23;10830:33;10875:2;10872:22;;;10890:1;10887;10880:12;10872:22;-1:-1:-1;10932:22:184;;:::i;:::-;10999:23;;11031:22;;11126:2;11111:18;;;11098:32;11146:14;;;11139:31;11243:2;11228:18;;;11215:32;11263:14;;;11256:31;11360:2;11345:18;;;11332:32;11380:14;;;11373:31;;;;-1:-1:-1;11038:5:184;10701:733;-1:-1:-1;10701:733:184:o;11439:927::-;11538:6;11546;11590:9;11581:7;11577:23;11620:3;11616:2;11612:12;11609:32;;;11637:1;11634;11627:12;11609:32;11661:4;11657:2;11653:13;11650:33;;;11679:1;11676;11669:12;11650:33;;11705:22;;:::i;:::-;11764:9;11751:23;11783:33;11808:7;11783:33;:::i;:::-;11825:22;;11899:2;11884:18;;11871:32;11912:50;11871:32;11912:50;:::i;:::-;11989:2;11978:14;;11971:31;12054:2;12039:18;;12026:32;12067:33;12026:32;12067:33;:::i;:::-;12127:2;12116:14;;12109:31;12172:37;12205:2;12190:18;;12172:37;:::i;:::-;12167:2;12156:14;;12149:61;12160:5;-1:-1:-1;12286:4:184;12271:20;;12258:34;12301:33;12258:34;12301:33;:::i;15326:127::-;15387:10;15382:3;15378:20;15375:1;15368:31;15418:4;15415:1;15408:15;15442:4;15439:1;15432:15;15767:127;15828:10;15823:3;15819:20;15816:1;15809:31;15859:4;15856:1;15849:15;15883:4;15880:1;15873:15;15899:168;15972:9;;;16003;;16020:15;;;16014:22;;16000:37;15990:71;;16041:18;;:::i;16072:127::-;16133:10;16128:3;16124:20;16121:1;16114:31;16164:4;16161:1;16154:15;16188:4;16185:1;16178:15;16204:120;16244:1;16270;16260:35;;16275:18;;:::i;:::-;-1:-1:-1;16309:9:184;;16204:120::o;16329:125::-;16394:9;;;16415:10;;;16412:36;;;16428:18;;:::i;16459:298::-;-1:-1:-1;;;;;16532:27:184;;;16579;;;16630:13;;;16626:39;;;;16708:17;;;16700:26;;16687:11;;16684:43;16674:77;;16731:18;;:::i;:::-;16674:77;;16459:298;;;;:::o;17221:135::-;17260:3;17281:17;;;17278:43;;17301:18;;:::i;:::-;-1:-1:-1;17348:1:184;17337:13;;17221:135::o;17569:184::-;17639:6;17692:2;17680:9;17671:7;17667:23;17663:32;17660:52;;;17708:1;17705;17698:12;17660:52;-1:-1:-1;17731:16:184;;17569:184;-1:-1:-1;17569:184:184:o;17758:136::-;17793:3;-1:-1:-1;;;17814:22:184;;17811:48;;17839:18;;:::i;:::-;-1:-1:-1;17879:1:184;17875:13;;17758:136::o;17899:244::-;18010:10;17983:18;;;18003;;;17979:43;18042:28;;;;18089:24;;;18079:58;;18117:18;;:::i;:::-;18079:58;17899:244;;;;:::o;18148:128::-;18215:9;;;18236:11;;;18233:37;;;18250:18;;:::i;18281:167::-;18376:10;18349:18;;;18369;;;18345:43;;18400:19;;18397:45;;;18422:18;;:::i;18732:301::-;18861:3;18899:6;18893:13;18945:6;18938:4;18930:6;18926:17;18921:3;18915:37;19007:1;18971:16;;18996:13;;;-1:-1:-1;18971:16:184;18732:301;-1:-1:-1;18732:301:184:o;19892:112::-;19924:1;19950;19940:35;;19955:18;;:::i;:::-;-1:-1:-1;19989:9:184;;19892:112::o;20823:127::-;20884:10;20879:3;20875:20;20872:1;20865:31;20915:4;20912:1;20905:15;20939:4;20936:1;20929:15;20955:157;20985:1;21019:4;21016:1;21012:12;21043:3;21033:37;;21050:18;;:::i;:::-;21102:3;21095:4;21092:1;21088:12;21084:22;21079:27;;;20955:157;;;;:::o","linkReferences":{}},"methodIdentifiers":{"canPruneAtTime(uint256)":"dc1bb8f4","claimProverRewards(address,uint256[],IERC20)":"385b9012","claimSequencerRewards(address,IERC20)":"5e5fafb3","deployRewardBooster(RewardBoostConfig)":"bcfe1a1c","getCheckpointReward()":"86a0d763","getCollectiveProverRewardsForEpoch(uint256)":"5a97eaa1","getEpochForCheckpoint(uint256)":"483315b3","getEthPerFeeAssetAtCheckpoint(uint256)":"16a7ced5","getFirstProvenBy(uint256)":"c4fb3d7c","getHasClaimed(address,uint256)":"28e07ac3","getHasSubmitted(uint256,uint256,address)":"3334f7dc","getHasSubmittedFullEpoch(uint256,uint256,address)":"235ce66f","getL1FeesAt(uint256)":"5f82401f","getManaMinFeeComponentsAt(uint256,bool)":"11704430","getProvingCostPerMana()":"fe2a92d0","getProvingCostPerManaInFeeAsset(uint256)":"604ef88f","getRewardConfig()":"ec147806","getRewardDistributor()":"cf20d872","getSequencerRewardCalculator()":"305656b2","getSequencerRewards(address)":"8789a132","getSharesFor(address)":"dfff3ebc","getSpecificProverRewardsForEpoch(uint256,address)":"68faa778","initializeConfig(RewardConfig,address)":"eb7991fa","summedMinFee(ManaMinFeeComponents)":"e068d95a","updateConfig(MutableRewardConfig)":"8841c467","updateL1GasFeeOracle()":"508ac49b","updateManaTarget(uint256)":"e6e28440","updateProtocolFeeMargin(uint16)":"a4f40ee9","updateProtocolFeeRecipient(address)":"1df47f80","updateProvingCostPerMana(uint256)":"ed176514","updateSequencerRewardCalculator(address)":"d4003253"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"maximum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"}],\"name\":\"FeeLib__InvalidManaLimit\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"minimum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"}],\"name\":\"FeeLib__InvalidManaTarget\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"nextAllowed\",\"type\":\"uint256\"}],\"name\":\"FeeLib__ProtocolFeeMarginCooldown\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"current\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requested\",\"type\":\"uint256\"}],\"name\":\"FeeLib__ProtocolFeeMarginStepExceeded\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minimum\",\"type\":\"uint256\"}],\"name\":\"FeeLib__ProvingCostBelowFloor\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"nextAllowed\",\"type\":\"uint256\"}],\"name\":\"FeeLib__ProvingCostCooldown\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"current\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requested\",\"type\":\"uint256\"}],\"name\":\"FeeLib__ProvingCostStepExceeded\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RewardLib__InvalidProtocolFeeRecipient\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RewardLib__InvalidSequencerBps\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proven\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requested\",\"type\":\"uint256\"}],\"name\":\"Rollup__CheckpointNotProven\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"actual\",\"type\":\"uint256\"}],\"name\":\"Rollup__InvalidCheckpointNumber\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"minimum\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"}],\"name\":\"Rollup__InvalidManaTarget\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"Epoch\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"Epoch\",\"name\":\"currentEpoch\",\"type\":\"uint256\"}],\"name\":\"Rollup__NotPastDeadline\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"checkpointNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"pendingCheckpointNumber\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"upperLimit\",\"type\":\"uint256\"}],\"name\":\"Rollup__UnavailableTempCheckpointLog\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"name\":\"SafeCastOverflowedIntToUint\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"bits\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"SafeCastOverflowedUintDowncast\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"SafeERC20FailedOperation\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"manaTarget\",\"type\":\"uint256\"}],\"name\":\"ManaTargetUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"oldBps\",\"type\":\"uint16\"},{\"indexed\":false,\"internalType\":\"uint16\",\"name\":\"newBps\",\"type\":\"uint16\"}],\"name\":\"ProtocolFeeMarginUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"oldRecipient\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newRecipient\",\"type\":\"address\"}],\"name\":\"ProtocolFeeRecipientUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"Bps\",\"name\":\"sequencerBps\",\"type\":\"uint32\"},{\"internalType\":\"uint96\",\"name\":\"checkpointReward\",\"type\":\"uint96\"}],\"indexed\":false,\"internalType\":\"struct MutableRewardConfig\",\"name\":\"rewardConfig\",\"type\":\"tuple\"}],\"name\":\"RewardConfigUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"oldCalculator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newCalculator\",\"type\":\"address\"}],\"name\":\"SequencerRewardCalculatorUpdated\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"Timestamp\",\"name\":\"_ts\",\"type\":\"uint256\"}],\"name\":\"canPruneAtTime\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCheckpointReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Epoch\",\"name\":\"_epoch\",\"type\":\"uint256\"}],\"name\":\"getCollectiveProverRewardsForEpoch\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_checkpointNumber\",\"type\":\"uint256\"}],\"name\":\"getEpochForCheckpoint\",\"outputs\":[{\"internalType\":\"Epoch\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_checkpointNumber\",\"type\":\"uint256\"}],\"name\":\"getEthPerFeeAssetAtCheckpoint\",\"outputs\":[{\"internalType\":\"EthPerFeeAssetE12\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_checkpointNumber\",\"type\":\"uint256\"}],\"name\":\"getFirstProvenBy\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_prover\",\"type\":\"address\"},{\"internalType\":\"Epoch\",\"name\":\"_epoch\",\"type\":\"uint256\"}],\"name\":\"getHasClaimed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Epoch\",\"name\":\"_epoch\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_length\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_prover\",\"type\":\"address\"}],\"name\":\"getHasSubmitted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Epoch\",\"name\":\"_epoch\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_length\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_prover\",\"type\":\"address\"}],\"name\":\"getHasSubmittedFullEpoch\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Timestamp\",\"name\":\"_timestamp\",\"type\":\"uint256\"}],\"name\":\"getL1FeesAt\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"baseFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blobFee\",\"type\":\"uint256\"}],\"internalType\":\"struct L1FeeData\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Timestamp\",\"name\":\"_timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"_inFeeAsset\",\"type\":\"bool\"}],\"name\":\"getManaMinFeeComponentsAt\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocolFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"congestionMultiplier\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"sequencerCost\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"proverCost\",\"type\":\"uint256\"}],\"internalType\":\"struct ManaMinFeeComponents\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getProvingCostPerMana\",\"outputs\":[{\"internalType\":\"EthValue\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"EthPerFeeAssetE12\",\"name\":\"_ethPerFeeAsset\",\"type\":\"uint256\"}],\"name\":\"getProvingCostPerManaInFeeAsset\",\"outputs\":[{\"internalType\":\"FeeAssetValue\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRewardConfig\",\"outputs\":[{\"components\":[{\"internalType\":\"contract IRewardDistributor\",\"name\":\"rewardDistributor\",\"type\":\"IRewardDistributor\"},{\"internalType\":\"Bps\",\"name\":\"sequencerBps\",\"type\":\"uint32\"},{\"internalType\":\"contract IBoosterCore\",\"name\":\"booster\",\"type\":\"IBoosterCore\"},{\"internalType\":\"uint96\",\"name\":\"checkpointReward\",\"type\":\"uint96\"}],\"internalType\":\"struct RewardConfig\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRewardDistributor\",\"outputs\":[{\"internalType\":\"contract IRewardDistributor\",\"name\":\"\",\"type\":\"IRewardDistributor\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getSequencerRewardCalculator\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sequencer\",\"type\":\"address\"}],\"name\":\"getSequencerRewards\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_prover\",\"type\":\"address\"}],\"name\":\"getSharesFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Epoch\",\"name\":\"_epoch\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_prover\",\"type\":\"address\"}],\"name\":\"getSpecificProverRewardsForEpoch\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocolFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"congestionMultiplier\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"sequencerCost\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"proverCost\",\"type\":\"uint256\"}],\"internalType\":\"struct ManaMinFeeComponents\",\"name\":\"_components\",\"type\":\"tuple\"}],\"name\":\"summedMinFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"SafeCastOverflowedIntToUint(int256)\":[{\"details\":\"An int value doesn't fit in an uint of `bits` size.\"}],\"SafeCastOverflowedUintDowncast(uint8,uint256)\":[{\"details\":\"Value doesn't fit in an uint of `bits` size.\"}],\"SafeERC20FailedOperation(address)\":[{\"details\":\"An operation with an ERC-20 token failed.\"}]},\"kind\":\"dev\",\"methods\":{\"getSequencerRewardCalculator()\":{\"returns\":{\"_0\":\"The calculator, or zero if every checkpoint receives the default sequencer reward\"}},\"initializeConfig(RewardConfig,address)\":{\"params\":{\"_config\":\"The full reward configuration, including the immutable distributor and booster\",\"_sequencerRewardCalculator\":\"The initial sequencer reward calculator, or zero for none\"}},\"updateConfig(MutableRewardConfig)\":{\"details\":\"The owner-only fee and reward setters below hold their validation, mutation and event emission here rather than in the Rollup. The Rollup sits close to the EIP-170 limit, and an event's topic hash plus its argument encoding costs it ~75 bytes per emit site; the `FeeLib` mutators inline another few hundred. A delegatecall keeps `msg.sender`, storage and the log's emitting address, so moving them across this boundary is behaviour preserving, and it only costs gas on cold admin paths. `ProposeLib` calls `FeeLib` directly, so `propose` is unaffected.\"},\"updateSequencerRewardCalculator(address)\":{\"details\":\"Accepts any address, including zero (no calculator). The event is emitted even if the value is unchanged.\",\"params\":{\"_calculator\":\"The new calculator, or zero for none\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"getSequencerRewardCalculator()\":{\"notice\":\"Returns the current sequencer reward calculator\"},\"initializeConfig(RewardConfig,address)\":{\"notice\":\"Writes the reward configuration and the initial sequencer reward calculator at construction\"},\"updateSequencerRewardCalculator(address)\":{\"notice\":\"Replaces the sequencer reward calculator and emits {IRollupCore.SequencerRewardCalculatorUpdated}\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/core/libraries/rollup/RewardExtLib.sol\":\"RewardExtLib\"},\"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/SlotDerivation.sol\":{\"keccak256\":\"0x8447b57b63810fe2e367c09496a966f143ec0e825d71ddb9fce2506cff84b618\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://996cb48f793bf151555045b37138e36b3cdb31d6bc6552d3149285260be00cfb\",\"dweb:/ipfs/QmcLaTTMNVbkMx58xhkp6GeFt4V3GtSyupZuaKG3vYW2Zc\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xcf74f855663ce2ae00ed8352666b7935f6cddea2932fdf2c3ecd30a9b1cd0e97\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9f660b1f351b757dfe01438e59888f31f33ded3afcf5cb5b0d9bf9aa6f320a8b\",\"dweb:/ipfs/QmarDJ5hZEgBtCmmrVzEZWjub9769eD686jmzb2XpSU1cM\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x9e82c00fb176503860139c6bbf593b1a954ee7ff97ab2969656571382b9b58a2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://34b4eb157b44d4441315db65561ba7cf0fe909dc598c2cfd7080d203077d5b57\",\"dweb:/ipfs/QmcNdvK3kDUAUr48urHxoeHd1TqVDya4YfZTM66i4goEJn\"]},\"lib/openzeppelin-contracts/contracts/utils/TransientSlot.sol\":{\"keccak256\":\"0x9303ef5a2beb555e52ce56598de205ce07ca8988fc67d073687c06cb8fc973d1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b2e48fb42844c25e6cb38e7cfa1d91dcdc054613fd10f608833dbc677acf889\",\"dweb:/ipfs/QmT4HQxbgpWA3fZnK4dY3eXHNCoyBvpvzNq5k7eSt5mR5t\"]},\"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol\":{\"keccak256\":\"0x69f54c02b7d81d505910ec198c11ed4c6a728418a868b906b4a0cf29946fda84\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8e25e4bdb7ae1f21d23bfee996e22736fc0ab44cfabedac82a757b1edc5623b9\",\"dweb:/ipfs/QmQdWQvB6JCP9ZMbzi8EvQ1PTETqkcTWrbcVurS7DKpa5n\"]},\"lib/openzeppelin-contracts/contracts/utils/cryptography/EIP712.sol\":{\"keccak256\":\"0x10eb97d047f8d84fe263a02bb4a656ac6674f6679d74532cc37546289e073a9d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e41287d40b0c46982f1083d40d32de2761f009c5c51627fe79a7feb0ab1cf5c\",\"dweb:/ipfs/Qme7dbh6HX3ZvUJdbQAcVqXkmyXyfcLiUZRhhon3cU6K8p\"]},\"lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol\":{\"keccak256\":\"0x4515543bc4c78561f6bea83ecfdfc3dead55bd59858287d682045b11de1ae575\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://60601f91440125727244fffd2ba84da7caafecaae0fd887c7ccfec678e02b61e\",\"dweb:/ipfs/QmZnKPBtVDiQS9Dp8gZ4sa3ZeTrWVfqF7yuUd6Y8hwm1Rs\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621\",\"dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0x2c33f654cefbbe80a9b436b5792cfe8bda2e87f139f110073c99762558db252f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://dc7ebd80046a52f28978cf46a24ff3e4c8568264ab6bb138038951c75d576167\",\"dweb:/ipfs/QmQQjXVr4CbDR3DXd8GHEqn3JSJYTnbBHMJp9tvc29yXrc\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol\":{\"keccak256\":\"0x195533c86d0ef72bcc06456a4f66a9b941f38eb403739b00f21fd7c1abd1ae54\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1d578337048cad08c1c03041cca5978eff5428aa130c781b271ad9e5566e1f8\",\"dweb:/ipfs/QmPFKL2r9CBsMwmUqqdcFPfHZB2qcs9g1HDrPxzWSxomvy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xb1970fac7b64e6c09611e6691791e848d5e3fe410fa5899e7df2e0afd77a99e3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://db5fbb3dddd8b7047465b62575d96231ba8a2774d37fb4737fbf23340fabbb03\",\"dweb:/ipfs/QmVUSvooZKEdEdap619tcJjTLcAuH6QBdZqAzWwnAXZAWJ\"]},\"lib/openzeppelin-contracts/contracts/utils/structs/BitMaps.sol\":{\"keccak256\":\"0x3616f1b0d0a9ee1ca8f0953ecaceb9230e36f691c7974d30f964212acff52d2b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d4bebdd07b31ac28e3e596ac6f0333da90a4e332405aa7d65f3a3a7e0b4cf15e\",\"dweb:/ipfs/QmckoDU5bBnye2UtPcrfJNahLD2FbxrnPP9nrREMWPpnug\"]},\"lib/openzeppelin-contracts/contracts/utils/structs/Checkpoints.sol\":{\"keccak256\":\"0x66364cd3247ea71cdb58f080f5d5ed6732433a8001413139661841535494692f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f87914c6645b58eaf75f00a156037a7da91129f3a56aec44aebfc715b19ea44\",\"dweb:/ipfs/QmNX7NLSMXyWuogvf8wfCwjUGwLhLBZrGktWPSdoHtERGp\"]},\"lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol\":{\"keccak256\":\"0x9b161e97b8967d4bc0c08d25741889a30692cdda4b71910bf1b0e315f1962212\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://821500c39d095eaa25b06f46e65f1d0e97c4c96b39227f79077dee7d9e84051f\",\"dweb:/ipfs/QmSTeGorKzSWF6HAmxo32uCZiEuKNvreQdUiX1AaYtUMTz\"]},\"src/core/interfaces/IEscapeHatch.sol\":{\"keccak256\":\"0x1a499acad8813b56e7d9cdcff3152e36196482794e62302e95a28603f5915747\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://18da3711ad1fbc413336c252709e1ad32d51092336fbe6c2428b48768f58352c\",\"dweb:/ipfs/QmdkMJiH1pdcuoLe5zPHeMtnFhZ1k7PLZJtoWQUcpcm4bJ\"]},\"src/core/interfaces/IFeeJuicePortal.sol\":{\"keccak256\":\"0xce84c8907395b4c11cc6dd8035d8e14560153450f9d88340cfb8abb914c66639\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f5eb389f1a6e9adbb2f24dad7a6c0bc706d49decad82ba9b582c288e12eddda6\",\"dweb:/ipfs/QmNM3uQmJYn9B6RAHSMUT3TZMR6R75okjJErUEsuRjxGXt\"]},\"src/core/interfaces/IRollup.sol\":{\"keccak256\":\"0x4885f9bbf279f63143fa0ccd21ce4918fd34eef9ce4ba871c78c22ae6c174f8b\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://c3eac7f06a1db468466f6e977fc204b4106808d0293ca57d336004ed33cc0add\",\"dweb:/ipfs/QmUzzFrVi15V2WRFsgpSmDQBfPUbbA4ochmZD55VhovJBR\"]},\"src/core/interfaces/ISequencerRewardCalculator.sol\":{\"keccak256\":\"0xb7fb4ad1c171762783aecdd5e85036e71990438fc11e1121842b31c431ff0c67\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://15bf6fea8074c7a5f71860b325786d2dd5b625cbfb5b0bd4d0fc4f1a5f566d5a\",\"dweb:/ipfs/QmTH4XovGivVCs4Hp6PT3UVKLrSCPPtv1mmtvUeALVCnAZ\"]},\"src/core/interfaces/ISlasher.sol\":{\"keccak256\":\"0xf7dc3b2795b2806dbec7c94c33665abcf00a35ee65802a47f6222faf8641d302\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://d7c9283746c66f04df5a133145b3196fc176e06e2fe6b3285056ffac68a09e9b\",\"dweb:/ipfs/QmPxTkM1eMNFny3yibc69p1GqWvPkno5fzBjyju89h7CNk\"]},\"src/core/interfaces/IStaking.sol\":{\"keccak256\":\"0x81ddf8fa0cf8a213d690845fd4d3e31e45c543e5876612e94607cdb753804f1d\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://7e0ae2a10903274cca7231306660dd6d5d1e5632238618b390aa7f4dfa5422f3\",\"dweb:/ipfs/QmTMXRYdNGnmecbUdREFfgsLwnMsRjDseLVXsvPqQoiago\"]},\"src/core/interfaces/IValidatorSelection.sol\":{\"keccak256\":\"0xe22dc335f3fd5f5cbf10928fa7e9e945ea8a04fa99362ec6e2022c862d7baca4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e26be09d3c823c545a2252467e13b68d366f3e711e15085be09f565ac436acc9\",\"dweb:/ipfs/QmS1ddcZteAjeojaJJz1ZgRPdynzpNu1HSSPbmEjJNe99G\"]},\"src/core/interfaces/IVerifier.sol\":{\"keccak256\":\"0xf5b6025ff3d59b8922bb45fb05786764e74109b4a349d206b8a7979f46484c55\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://98ec47ac3e15b1d8f2c80854ed6fd83e655e9e96341bb827f3be8e6b47f4c7fb\",\"dweb:/ipfs/QmcmUkLgM7fb7mEaJTiWJWrZTW2kAWtRcYS6imBfmueALe\"]},\"src/core/interfaces/messagebridge/IInbox.sol\":{\"keccak256\":\"0x1149c904c8b3bd2942628fbab5480cdc044e831d51963f9e6946f1974cc162bd\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://af2f1f49feba389b0bdbf427c4a85fac2908699585e5babd75f77cf14416ed5f\",\"dweb:/ipfs/QmZYjZyhicCpTcwPuWTjTTUxnaBnfv5bTMWDgxyDGqy8Gm\"]},\"src/core/interfaces/messagebridge/IOutbox.sol\":{\"keccak256\":\"0xf66d0bb4f6d978acf91a036737cd4326bfab16a4030d10510d2976e4218ed8ad\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e796eea21d552b2ca4d0446bb096e2c980ab84816d9dd1398113293ae8128b30\",\"dweb:/ipfs/QmNuGgRtPFgRe3asa68vDMcWpyfDFqQ5w5j5U7yWD1EsyZ\"]},\"src/core/libraries/ConstantsGen.sol\":{\"keccak256\":\"0xe328f94338f5563669e04618c3ec21ec38b9f21ab24d5de698d80cf38f977dfa\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://3d9872c9a78d7241053e9ce3eadf192d18a9cb4b95c0ac120470d92435b7216e\",\"dweb:/ipfs/QmcRnfbW8sNWwRHPik4wvkA7CTY1BTjuf2ydu3jN5otQJT\"]},\"src/core/libraries/DataStructures.sol\":{\"keccak256\":\"0x5ea9d1097f0b53eafbd72332d4c5c517307e5a056266befe5b46f5f43ee3d83c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1a742311dc3c5ead2d5361549f017d20f46c40a4e74e879823ac168cf5b572d4\",\"dweb:/ipfs/QmTNDc1fiPti41QqJTJQoV9uduB6eXaQhbfq1hfVVjVNvS\"]},\"src/core/libraries/Errors.sol\":{\"keccak256\":\"0x282e22d0eb9cd8f22f7bfaef3c3e3cad5461734d6e421f392b372a146c83d467\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5c250d031a44b257109f81417bb89c0e5b99d44bb17a55379695061afa9d3ef1\",\"dweb:/ipfs/QmenxQJyukQT7KkCsfXV6by3VU6qumEUnK4EH4mqHAw6iK\"]},\"src/core/libraries/HatchMath.sol\":{\"keccak256\":\"0xca787b2889e281c8db132043312aa9513315669782981689824344c910833fe4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://77ec2f6b5919d53d3a7128f6006155f2566a84e7a56cd26e9d5e6d1514ccd7a2\",\"dweb:/ipfs/Qmc3Z2quujEwxQU1JBfrxhkiULaczspBsTMjXibqXCjFyd\"]},\"src/core/libraries/SlashRoundLib.sol\":{\"keccak256\":\"0x6773eea1fa593e5c1e16fcd3a8341b537bf5ed7ee2f10472649dfd542e3ade8e\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://756bdaa3facd4034149eeb3553ae99777b646c3e16abf8d41f9558e74249baa6\",\"dweb:/ipfs/QmNpb62diGKNKf5pcynejjhNex9c6PTkZnVUeuLvJ2qCZ9\"]},\"src/core/libraries/StakingQueue.sol\":{\"keccak256\":\"0xbbeafda1659a92be14ec5b77838952a089f075cc1d0c5f348b6ff336ea6a1a98\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f3c8bdb1de77dab697ef4442f72fa4830c757059f8d948d2f3aeb7f6983aa64f\",\"dweb:/ipfs/QmSDYdTnFo8nx34q3fdJCKpy8DCnKBQ4isxr49o4sY5T6T\"]},\"src/core/libraries/TimeLib.sol\":{\"keccak256\":\"0x865b760fe681ee74a93b49491d897a98091432ebc2923ff17717ddb6d26d31ab\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4ccdfb80464d8e58a95a68314fe2dd33f4a1634ab0695a9a4e9c180a50cc592b\",\"dweb:/ipfs/QmNUUFN7RTjiicZCkci6eEnfromVTPS2MVE4CkbqoneV6P\"]},\"src/core/libraries/compressed-data/CheckpointLog.sol\":{\"keccak256\":\"0x613513b7eb7855ff619c9eb3f1589fcfb0d7675e15c5261034ac353a62c5cabf\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://110e7cc1eae76116a6682a9044cf9031744a7a8c46164987e246923169618d5e\",\"dweb:/ipfs/QmcuhMXiGWjAbYGYYXKrTCLNYguQZpgxpWVWteJezYKVzQ\"]},\"src/core/libraries/compressed-data/StakingQueueConfig.sol\":{\"keccak256\":\"0x32b00fd08e1754d9d9c9b377ae0a0ea887ace519db0ec6d252e1b2216891068e\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4ecea0a1ff8536819d37d3800b2915249b5c854d9dc611e91aae81df6acf7d76\",\"dweb:/ipfs/Qmf3FgXCf1MP78p5B76kQnwx8yXFXncutVzQhV2fteBvVn\"]},\"src/core/libraries/compressed-data/Tips.sol\":{\"keccak256\":\"0xdf872f54470e59b86349871e2c12075e8daaad85894f90e64f92538daf5f4008\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://493e4bc02c6e9acbb5bfaa68f19bf4defb409211b701784e43d2ca6cbc11ccd1\",\"dweb:/ipfs/QmSUahndZ78LBx6WdozXWL6QkqxZXzrXpHna2kGwCqgy34\"]},\"src/core/libraries/compressed-data/fees/FeeConfig.sol\":{\"keccak256\":\"0xd5593d342fd9e75cf10d9c126d5aa46eab6707221111d81757e0f5c3473c23fd\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5cdfdfa94ea9d7b93cb80bdbd9e81c80fc7d71de890d88bb957960d0d5734298\",\"dweb:/ipfs/QmQ2VjHtpja19AxDnGg2Q5hCck678PUrfLDuwUNvcyo4YS\"]},\"src/core/libraries/compressed-data/fees/FeeStructs.sol\":{\"keccak256\":\"0x23304769b5d5098b6d6b1092be483f34c0c901d7e14667404e8c5335dad8b501\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://9ef5000b6a27a338f60dad80f73ea03d6560afc46c063d8d52932574d82cf157\",\"dweb:/ipfs/QmSzdqmERrrCqdfqy4jXhdiyokyNRLvi4qLp85iw8rR9iJ\"]},\"src/core/libraries/crypto/Hash.sol\":{\"keccak256\":\"0x0e2bad615ee34b98ffdc7b81558e78ad3701cf8e02dc0fa4721555b4cdb861cb\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://8f69943a9ad3fba8a12ae34b3d60815c4339ea66a5ec75beb781d22a872c2d4d\",\"dweb:/ipfs/QmTfjRk9vBaxfziFgwYzWgTWFEvbB8EEudkcYupPw6qLXW\"]},\"src/core/libraries/crypto/SampleLib.sol\":{\"keccak256\":\"0x59e87e7d6a1e966c0f73bd919825ff7d81dc898625fe9fd20e6786e10b43783e\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://a931d31192faf6d9d9c82fc7099a776b5886d90dd0a2a9ee8093cc680dfdef70\",\"dweb:/ipfs/QmbQjTTf96tr2WSiuoWK8k984dGuXKooZWZ5o9EL7wEPhv\"]},\"src/core/libraries/rollup/AttestationLib.sol\":{\"keccak256\":\"0xf2111c30dc0d6c81d4f990990dfa37813932180e2b94739050356c5942f316e3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://fc4d8c42797fa58646094be9e108a60a278f2c2beea06bd7b06b00933b00c5b9\",\"dweb:/ipfs/QmdNPs36gak9y4YoCQq2ttv1nj8ALyab6f9P7SoozECrfN\"]},\"src/core/libraries/rollup/BlobLib.sol\":{\"keccak256\":\"0x5b0d454bd38592154954f1da4cc59f50a036d0a28a169401abd9b5fdb88a4fe1\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://68cf3a3fa979a6cfdc618e66621a0233263a83c259b17f6193fb0339796bee9d\",\"dweb:/ipfs/QmcRKQmFf8mZxWKUT7Vgg3LnTxVsCen5f8TnMqCQMGi2j6\"]},\"src/core/libraries/rollup/CoordinationSignatureLib.sol\":{\"keccak256\":\"0x939c2aa29f536822f1f35db30af3b783986612bb35a210c583247f764c39dfae\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://6f5e71fe318f83063eda2027992740e7be7e0274887b4c11ab00ef3199398729\",\"dweb:/ipfs/QmPGkRVfkoLj8bi95vyySrtFeTaUGf62qcWoBy1nZRjZQc\"]},\"src/core/libraries/rollup/FeeLib.sol\":{\"keccak256\":\"0x78cccc8618137ebda0ca1cb68071a6458eff5c1e4eecce22de77c7479cb2f917\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://eb96d87ba3229de5d5a8e8cd9e1c29438789e578f915d787f2f7c0788f380679\",\"dweb:/ipfs/Qma3VYid6EyGtNCLertDyViT1Z8Ma1vNnc7EAEmJfxf8t9\"]},\"src/core/libraries/rollup/FieldLib.sol\":{\"keccak256\":\"0xd09f77d3aa6d7efc844e99bd496a145171613825bc45d35e1518889098f91e95\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://499d0aeb3c7b6801e49f7554110a194ebeca73bec4ddf4b00ea8dd64fcc4b2ac\",\"dweb:/ipfs/QmQf7EeP4kwTGPR2xfDK2MpNAqqcAY4vWZ3faEKn6JEW8R\"]},\"src/core/libraries/rollup/ProposeLib.sol\":{\"keccak256\":\"0x90d4fff721a1bcdbb555aad73a040ac1f0c3a61e286b0f291f47248129d8a777\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://988c7390ba413ae25939df5a9f8850649106627ddf453a60b472e31c32a97156\",\"dweb:/ipfs/QmXNPKm6y3bgTmjfeTMrY4sfBUFT4fLxZsMBBSC13Nt6oy\"]},\"src/core/libraries/rollup/ProposedHeaderLib.sol\":{\"keccak256\":\"0x43a9fa530b7cb948c1d7c436bddafdd8ddd8c022c67e25045372bc68b9e5018c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://904e4aa94b322f68c605dd34ea38bb77343437e2f2203c3e650cf7a7bb3aa19e\",\"dweb:/ipfs/QmX3H4PMwh57L5Zv3LFrHjkNmgVZiik4FmzSyJhnTJcqPD\"]},\"src/core/libraries/rollup/RewardExtLib.sol\":{\"keccak256\":\"0x258e1b7ebfa2c5cecc4d5bcecacfda7e6398b0191a08d6f2a9f775724ab7fd5d\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://9d1d38d938a44dd27419cb656a7726609da2dc074fef9c54e35909d5e304915b\",\"dweb:/ipfs/QmSZ6VVTYYBXQra114KmdZyVXVSh6J8MLKRjwEF9EmE3fp\"]},\"src/core/libraries/rollup/RewardLib.sol\":{\"keccak256\":\"0x3a73a07577c713179be2de8df601445e79c606afb42f74bed33d1000c6f14ff8\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e432e402f6721bf70849ae3d731dcc669abeeb7df8399c878cc946fea0657a1a\",\"dweb:/ipfs/QmYuGKQvN9iFhQpKLo6Rd7oTkMZx6VfdrJFh6tVgLEDg5M\"]},\"src/core/libraries/rollup/STFLib.sol\":{\"keccak256\":\"0xcb2ae0566bd5b0834f8ec2f73d78037f25d4d65894bff1ab8abcb9f8c65c7bc0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://35689b10ee3d4fff126625efa170fe77c617441fd7902d7376488af5061a79e0\",\"dweb:/ipfs/QmUzDZoMrpJAuhVYVGSruX4mj9jTJmSZncvoTHbsyZL7eM\"]},\"src/core/libraries/rollup/SequencerRewardCalculatorLib.sol\":{\"keccak256\":\"0x2d5e8efc5a87bec1d50a8c9df0696a8248e0905ab62dcd7ec6a51527ad33b604\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://15d4a7d1f265fc1a248762702373534fcae9d85df5150e5e1a45f79b94736ed4\",\"dweb:/ipfs/QmdAT5Aw6JSg5GJnTikfDtJHnJZuMib7L8GB3yQ4jMuiFr\"]},\"src/core/libraries/rollup/StakingLib.sol\":{\"keccak256\":\"0x6e3c96f937701c67570d902aca8d2f9a1ee35942e17b1e5a375b264582a6fe8c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://ddb78c290af17a9574b89104177d2f1079c5abeb462446722b8fb09e03659ea6\",\"dweb:/ipfs/QmURXaGC2SRKZc36NQZ4SXqNtgY5MpYQRamS3Shn2GMAoe\"]},\"src/core/libraries/rollup/ValidatorSelectionLib.sol\":{\"keccak256\":\"0xea94ff99c5e47c51bbd4ffe8282447c7aae23065e255ec2d2806a11901ab1752\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4e5c466c3c0ca5834c41714ddd64e7e5a34e6c37a5d57ddbed40b567582746bb\",\"dweb:/ipfs/QmUYZ4KgwoUhxQCMtazUgj8tN6wkRHcakZ5rg5EjQq1XuU\"]},\"src/core/reward-boost/RewardBooster.sol\":{\"keccak256\":\"0x1cffe0dcbc06775ad415b06cd3591f74331bad3b154a3305ea6c5a081915fce0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://a2fcdbdcc260b3330bae0bc61227f652f9cb68e175fbc7d4173bf1d2dfaa92d1\",\"dweb:/ipfs/QmddUmciRbznTTfBpbZf2p3R9sC1oePRF9C3Swnq8qU3Xb\"]},\"src/core/slashing/Slasher.sol\":{\"keccak256\":\"0xc3040cd1813a6064a6afda9ca8b1f65f5cba2e7359050c48507d2f71d3606786\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://73f73fac9ffe650304c68a49635604806b86b0a5baadbf59ef36931e7937bc51\",\"dweb:/ipfs/QmaMMMXycUeybJyf2ZowJgQ1Wo4ZC7g5kyp1BHWfj8dkD9\"]},\"src/governance/Bn254LibWrapper.sol\":{\"keccak256\":\"0xea39571de45fe0fec82d9e760998677eb2432e08c6cdb00c41efa58caf56e607\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1e470b821f3d87fa0c988c5f23a8deed3849bffd2527b3b4ee137a90e0c1264c\",\"dweb:/ipfs/QmW3M4HyRLDruV5AYXCKicFCiiczmwnSTtnwVKUnQSm7a8\"]},\"src/governance/GSE.sol\":{\"keccak256\":\"0xc19fa4868d78030e2411dd5cef6d0da09645ade1d1ea0c4374b284a89feb722a\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://d06396c249566d0e9de5d34eade2bf27c4d583005c0129787bf6c413dcd9e273\",\"dweb:/ipfs/QmcimKKiV9KqobS5wzPsKYzyYu5WezCF3gyHkekf5tjrUU\"]},\"src/governance/GSEPayload.sol\":{\"keccak256\":\"0x40e5385b008f0335b50e066c647bb906685511c9fef206ce90a3391468558bae\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://a129e87e1d57cf0813b14108cbdbcdd4c114b20f3f2d67477302d6d050120c7e\",\"dweb:/ipfs/QmRcQQkeDhkrmQha3nkA8qvXnGmF6nLhZMKAhMx61A7a5y\"]},\"src/governance/Governance.sol\":{\"keccak256\":\"0x07770c3d80369adae51be8e361f63a2aa5ec489b354b10c8590be1e294dfe2e5\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://7219becf3467ea8368dba0bd093ba932b165cf3f214e7286f652e2730bf42eaf\",\"dweb:/ipfs/QmTSCDhSQBTKhzGUk12phxhqohSba6yopYMzF5T5XPFUWw\"]},\"src/governance/interfaces/IBn254LibWrapper.sol\":{\"keccak256\":\"0xdd0a3de8b8ff67cf2bf090d04b4a37aa6d604f402db3328387d2466d2354464a\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://daef0234547509cd7ae3a7babf0e50a8d1ca2894f1817e3e2409a50fd32947b9\",\"dweb:/ipfs/QmbwSedqnBfsqRnUq8XcXzoeoyhZTXJWJ9rpJn61BAJfej\"]},\"src/governance/interfaces/IEmpire.sol\":{\"keccak256\":\"0xe6a8a8c3fef8e6f9f5118bd40c63e951b13a59d5f885bbb979d38745ef760ed3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://940c1fe4138d7364ccdb7d5635ea90bafa1da274f680039b0b54ee8c2a275a9a\",\"dweb:/ipfs/QmX2EeoVyES18BMgcbKVDb36MCq8ooDVR98m2RmnmZjEAo\"]},\"src/governance/interfaces/IGovernance.sol\":{\"keccak256\":\"0xe420d305fbe7c35f4620cd1e0f05f9f4c5a91532621d21a64ea553a3d9a3c005\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1900ac41f945aa692d5228f134ae63840081d284bf89fdd2a06b45424fe359ff\",\"dweb:/ipfs/QmePFZ1xv5qfftJVDLc98XUVFsrpuKAbKZiro7MoMDTpoa\"]},\"src/governance/interfaces/IGovernanceProposer.sol\":{\"keccak256\":\"0x2be820a5452c481ffd329d68c46d0af6a286934963f26b36d363cd34fb0e5817\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f58839d1504e11e7da42b7f5a03fb9b9d8cc39ab4c16cfb86fa44c4de08df76f\",\"dweb:/ipfs/QmR6jUJozP9tfpZuSduk66E8n7WuL3zzsR3WHZ7BR2ZBX2\"]},\"src/governance/interfaces/IPayload.sol\":{\"keccak256\":\"0x5844ea725ce56ac8adeb20b2d37aa431ca087f68a65a7ca91f981be7458737c3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5ea670db51b2ccfac05a684b95458ecc015c9d12a6567c3f73d473386533f58c\",\"dweb:/ipfs/QmRUB8mckkGQ4nNsErRhnKMsD9SSkokRSpnr5XZC9dZdin\"]},\"src/governance/interfaces/IProposerPayload.sol\":{\"keccak256\":\"0x89068dd464c0bfb7d447c0e99728277e03c7c4b864208ead20321f0590187248\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4d1d9ba5f8b7da374d773acde9514ca6607ad31a3e83950caa097bdb8b0f9167\",\"dweb:/ipfs/Qmd7tWAD2Ubz434zZPJvuyAGsHYpXBHvVhVefLFzUudD2o\"]},\"src/governance/interfaces/IRegistry.sol\":{\"keccak256\":\"0xc3678c04c0945d3dc1d8007df3dc7f8b25d8108b0b25134842ffc5169f996ce8\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://71e4e401f1a6f561262755cc2e1c347cd3aa79e67d2e52ca547864f49de01724\",\"dweb:/ipfs/QmPvoKFEDTb41DSC3MmDMqtM3trj5oZb1Jj2jtQSnNfHBn\"]},\"src/governance/interfaces/IRewardDistributor.sol\":{\"keccak256\":\"0xf263f75be83d0b0e3c8f17ec7fc2558d3543df788dcb2db6f1ee158208134f14\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://b2b65819a5f9ecd2237957e987bb69160d3076ccaf9f76f925a936e574d63d76\",\"dweb:/ipfs/QmNgWESeo6UUvgW7rCMP3d4o8mUqSSbKrwbicH4kaUrm7h\"]},\"src/governance/libraries/AddressSnapshotLib.sol\":{\"keccak256\":\"0x1006e58059e0a1f0fef102f2f11f5649dffc7f2eb066fce51845e65a064f4210\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://de385ab9eb3bb66d7be1218b49ae9bba7d88797bcb375b9a7481a209d303a402\",\"dweb:/ipfs/QmZe6DTv3cACfdXNSMhbMhoefg31LW3uLxHLDC7nZhb4Yp\"]},\"src/governance/libraries/CheckpointedUintLib.sol\":{\"keccak256\":\"0xcd73cf7a62e4ac5cc79f7f8df8b35d5c5e4df5b8a3478bcbc2b29c9aa89ea4b4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f56f37060d39d3c9276f23c96be7f6b1ea44676312dbaa1ab16ab3bff6acebf1\",\"dweb:/ipfs/QmPDUEEgdbpTTs9r3fvdMYJo9akCRsWcJXyarBhQgcKb5q\"]},\"src/governance/libraries/ConfigurationLib.sol\":{\"keccak256\":\"0x7cb65bdbd8d077f3cfc01b065fb3a57628db36cd46f68885c74b9131198c2149\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e37bde50f5f739f479feb95fbe81ed24ee47f841b99f066ecf6782e758d1978a\",\"dweb:/ipfs/QmebPE5REUpYRB8dikUebcGtyk9uy44G9mbchKJtHxJAgy\"]},\"src/governance/libraries/DepositDelegationLib.sol\":{\"keccak256\":\"0x37fbca65ccabec9d901bd71d684dceec7c59fa5a05438fd209ea0d5e16e764c0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://e42f2622978abc3ac84223a6b206201898d0269d20bf81539636c0999a0db9eb\",\"dweb:/ipfs/QmW4BgTjR6BuPxwxreKarUeK1u8gx3p9yFdDD4EsC5hkyb\"]},\"src/governance/libraries/Errors.sol\":{\"keccak256\":\"0x8861ea7508138c83e89f186ce17accb42a6eee7d1d2e52841975d4ba676daae4\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://b0d5b01c2b0a20c3c70a7ab2b8405d083a063bf5758beb87a4d488bda76078fa\",\"dweb:/ipfs/QmfGH6CTCPA6nVA6KidcTSvaJ6MQZkv6KiuDVBTARGBTRv\"]},\"src/governance/libraries/ProposalLib.sol\":{\"keccak256\":\"0x616ffbb24c4454ca9e223e85ff01e8dca139723d5cd312d5d6f6111d79782a90\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://192f9be3355a7a94d19ae4e5b397e5db19dde64ccc671e149da06dfaa2577192\",\"dweb:/ipfs/QmTDcm7XEFLe7o5cXUmuu5wQDyprU78AVMymiWvrmP4tHT\"]},\"src/governance/libraries/compressed-data/Ballot.sol\":{\"keccak256\":\"0xca07dc8cf36ac2beae7674804af144b34b3c5848153351c17d996e9b3293cd5d\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://6911cc49f1d6977c12f652063c14891697c1ffe49fdf36903c32a8ad73cbd012\",\"dweb:/ipfs/QmQBEZARCAAj1ZLcswkH6FwP1RP8uuNjYTHqthmE9Z5RnM\"]},\"src/governance/libraries/compressed-data/Configuration.sol\":{\"keccak256\":\"0x40744f275af22d33c38fd9c6a7b822292c9c87b17ac2c78abbef4eb8356fd9f9\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://73c685be7e934516207827a59cbbeb7fc1164e7659dd3ec857a91cfea765b482\",\"dweb:/ipfs/QmQfudRpSSQnG9u4XV8iA2UAyDzQPFqWzpZy5NZbaD6htv\"]},\"src/governance/libraries/compressed-data/Proposal.sol\":{\"keccak256\":\"0x72cf619a21c8e95875c63d4361cbe1a815d9d67f36f3fe32b6c9ca4d9ab0d33a\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://d80f47beb3f91da3cc68264c86fc8fb8f0e4abaf9d92243ab3206407fceed5c6\",\"dweb:/ipfs/QmYyrBTDMfkTBu6EcKcSMR7JyfphZ5xH1VCQ8EHMQUvsoN\"]},\"src/governance/proposer/EmpireBase.sol\":{\"keccak256\":\"0x747b20e201dab632a831c12f1fee9ee52cc80a2098c77e8b6c7b09b0f3ba2bc0\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://b7d4a0475ca364f75aa2a1d17ed9e6970f0be605126f2efe26d53c791d4a5209\",\"dweb:/ipfs/Qma5tkTcy94PqE9vtQybQSyH9LWaHR8V3ubwDPZwiUNT35\"]},\"src/governance/proposer/GovernanceProposer.sol\":{\"keccak256\":\"0xa2829df5b65856c9f1d6bf490fb50616f14402ff8eece2e32b63828b8b9337c3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://8ad52830a7a3aed3477bf55f92c3d68cb1c16a5cf1d636227ab76a306c846607\",\"dweb:/ipfs/QmRonyZQZj5D1e2g4Y6Tmj2AEUnekL4pGmgdMT4ycRAM8m\"]},\"src/mock/libraries/BlobLib.sol\":{\"keccak256\":\"0xa1b19239c5c64ba1b0c9f83ec0a30059f10ded12bf40d5d7c3f65974752b3121\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5cbce7d0dd0096232d60ec5c6920f211ffcaa46c8675b1129c1f939a1ee84837\",\"dweb:/ipfs/QmSS2qUhzUuZY1qHDjWUGvHuMqMG3cjHoHeDVvgWsjMdA9\"]},\"src/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":"uint256","name":"maximum","type":"uint256"},{"internalType":"uint256","name":"provided","type":"uint256"}],"type":"error","name":"FeeLib__InvalidManaLimit"},{"inputs":[{"internalType":"uint256","name":"minimum","type":"uint256"},{"internalType":"uint256","name":"provided","type":"uint256"}],"type":"error","name":"FeeLib__InvalidManaTarget"},{"inputs":[{"internalType":"uint256","name":"nextAllowed","type":"uint256"}],"type":"error","name":"FeeLib__ProtocolFeeMarginCooldown"},{"inputs":[{"internalType":"uint256","name":"current","type":"uint256"},{"internalType":"uint256","name":"requested","type":"uint256"}],"type":"error","name":"FeeLib__ProtocolFeeMarginStepExceeded"},{"inputs":[{"internalType":"uint256","name":"provided","type":"uint256"},{"internalType":"uint256","name":"minimum","type":"uint256"}],"type":"error","name":"FeeLib__ProvingCostBelowFloor"},{"inputs":[{"internalType":"uint256","name":"nextAllowed","type":"uint256"}],"type":"error","name":"FeeLib__ProvingCostCooldown"},{"inputs":[{"internalType":"uint256","name":"current","type":"uint256"},{"internalType":"uint256","name":"requested","type":"uint256"}],"type":"error","name":"FeeLib__ProvingCostStepExceeded"},{"inputs":[],"type":"error","name":"RewardLib__InvalidProtocolFeeRecipient"},{"inputs":[],"type":"error","name":"RewardLib__InvalidSequencerBps"},{"inputs":[{"internalType":"uint256","name":"proven","type":"uint256"},{"internalType":"uint256","name":"requested","type":"uint256"}],"type":"error","name":"Rollup__CheckpointNotProven"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"actual","type":"uint256"}],"type":"error","name":"Rollup__InvalidCheckpointNumber"},{"inputs":[{"internalType":"uint256","name":"minimum","type":"uint256"},{"internalType":"uint256","name":"provided","type":"uint256"}],"type":"error","name":"Rollup__InvalidManaTarget"},{"inputs":[{"internalType":"Epoch","name":"deadline","type":"uint256"},{"internalType":"Epoch","name":"currentEpoch","type":"uint256"}],"type":"error","name":"Rollup__NotPastDeadline"},{"inputs":[{"internalType":"uint256","name":"checkpointNumber","type":"uint256"},{"internalType":"uint256","name":"pendingCheckpointNumber","type":"uint256"},{"internalType":"uint256","name":"upperLimit","type":"uint256"}],"type":"error","name":"Rollup__UnavailableTempCheckpointLog"},{"inputs":[{"internalType":"int256","name":"value","type":"int256"}],"type":"error","name":"SafeCastOverflowedIntToUint"},{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"type":"error","name":"SafeCastOverflowedUintDowncast"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"type":"error","name":"SafeERC20FailedOperation"},{"inputs":[{"internalType":"uint256","name":"manaTarget","type":"uint256","indexed":true}],"type":"event","name":"ManaTargetUpdated","anonymous":false},{"inputs":[{"internalType":"uint16","name":"oldBps","type":"uint16","indexed":false},{"internalType":"uint16","name":"newBps","type":"uint16","indexed":false}],"type":"event","name":"ProtocolFeeMarginUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"oldRecipient","type":"address","indexed":false},{"internalType":"address","name":"newRecipient","type":"address","indexed":false}],"type":"event","name":"ProtocolFeeRecipientUpdated","anonymous":false},{"inputs":[{"internalType":"struct MutableRewardConfig","name":"rewardConfig","type":"tuple","components":[{"internalType":"Bps","name":"sequencerBps","type":"uint32"},{"internalType":"uint96","name":"checkpointReward","type":"uint96"}],"indexed":false}],"type":"event","name":"RewardConfigUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"oldCalculator","type":"address","indexed":false},{"internalType":"address","name":"newCalculator","type":"address","indexed":false}],"type":"event","name":"SequencerRewardCalculatorUpdated","anonymous":false},{"inputs":[{"internalType":"Timestamp","name":"_ts","type":"uint256"}],"stateMutability":"view","type":"function","name":"canPruneAtTime","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getCheckpointReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"Epoch","name":"_epoch","type":"uint256"}],"stateMutability":"view","type":"function","name":"getCollectiveProverRewardsForEpoch","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_checkpointNumber","type":"uint256"}],"stateMutability":"view","type":"function","name":"getEpochForCheckpoint","outputs":[{"internalType":"Epoch","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_checkpointNumber","type":"uint256"}],"stateMutability":"view","type":"function","name":"getEthPerFeeAssetAtCheckpoint","outputs":[{"internalType":"EthPerFeeAssetE12","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_checkpointNumber","type":"uint256"}],"stateMutability":"view","type":"function","name":"getFirstProvenBy","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_prover","type":"address"},{"internalType":"Epoch","name":"_epoch","type":"uint256"}],"stateMutability":"view","type":"function","name":"getHasClaimed","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"Epoch","name":"_epoch","type":"uint256"},{"internalType":"uint256","name":"_length","type":"uint256"},{"internalType":"address","name":"_prover","type":"address"}],"stateMutability":"view","type":"function","name":"getHasSubmitted","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"Epoch","name":"_epoch","type":"uint256"},{"internalType":"uint256","name":"_length","type":"uint256"},{"internalType":"address","name":"_prover","type":"address"}],"stateMutability":"view","type":"function","name":"getHasSubmittedFullEpoch","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"Timestamp","name":"_timestamp","type":"uint256"}],"stateMutability":"view","type":"function","name":"getL1FeesAt","outputs":[{"internalType":"struct L1FeeData","name":"","type":"tuple","components":[{"internalType":"uint256","name":"baseFee","type":"uint256"},{"internalType":"uint256","name":"blobFee","type":"uint256"}]}]},{"inputs":[{"internalType":"Timestamp","name":"_timestamp","type":"uint256"},{"internalType":"bool","name":"_inFeeAsset","type":"bool"}],"stateMutability":"view","type":"function","name":"getManaMinFeeComponentsAt","outputs":[{"internalType":"struct ManaMinFeeComponents","name":"","type":"tuple","components":[{"internalType":"uint256","name":"protocolFee","type":"uint256"},{"internalType":"uint256","name":"congestionMultiplier","type":"uint256"},{"internalType":"uint256","name":"sequencerCost","type":"uint256"},{"internalType":"uint256","name":"proverCost","type":"uint256"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getProvingCostPerMana","outputs":[{"internalType":"EthValue","name":"","type":"uint256"}]},{"inputs":[{"internalType":"EthPerFeeAssetE12","name":"_ethPerFeeAsset","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProvingCostPerManaInFeeAsset","outputs":[{"internalType":"FeeAssetValue","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRewardConfig","outputs":[{"internalType":"struct RewardConfig","name":"","type":"tuple","components":[{"internalType":"contract IRewardDistributor","name":"rewardDistributor","type":"IRewardDistributor"},{"internalType":"Bps","name":"sequencerBps","type":"uint32"},{"internalType":"contract IBoosterCore","name":"booster","type":"IBoosterCore"},{"internalType":"uint96","name":"checkpointReward","type":"uint96"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRewardDistributor","outputs":[{"internalType":"contract IRewardDistributor","name":"","type":"IRewardDistributor"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getSequencerRewardCalculator","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_sequencer","type":"address"}],"stateMutability":"view","type":"function","name":"getSequencerRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_prover","type":"address"}],"stateMutability":"view","type":"function","name":"getSharesFor","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"Epoch","name":"_epoch","type":"uint256"},{"internalType":"address","name":"_prover","type":"address"}],"stateMutability":"view","type":"function","name":"getSpecificProverRewardsForEpoch","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"struct ManaMinFeeComponents","name":"_components","type":"tuple","components":[{"internalType":"uint256","name":"protocolFee","type":"uint256"},{"internalType":"uint256","name":"congestionMultiplier","type":"uint256"},{"internalType":"uint256","name":"sequencerCost","type":"uint256"},{"internalType":"uint256","name":"proverCost","type":"uint256"}]}],"stateMutability":"pure","type":"function","name":"summedMinFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]}],"devdoc":{"kind":"dev","methods":{"getSequencerRewardCalculator()":{"returns":{"_0":"The calculator, or zero if every checkpoint receives the default sequencer reward"}},"initializeConfig(RewardConfig,address)":{"params":{"_config":"The full reward configuration, including the immutable distributor and booster","_sequencerRewardCalculator":"The initial sequencer reward calculator, or zero for none"}},"updateConfig(MutableRewardConfig)":{"details":"The owner-only fee and reward setters below hold their validation, mutation and event emission here rather than in the Rollup. The Rollup sits close to the EIP-170 limit, and an event's topic hash plus its argument encoding costs it ~75 bytes per emit site; the `FeeLib` mutators inline another few hundred. A delegatecall keeps `msg.sender`, storage and the log's emitting address, so moving them across this boundary is behaviour preserving, and it only costs gas on cold admin paths. `ProposeLib` calls `FeeLib` directly, so `propose` is unaffected."},"updateSequencerRewardCalculator(address)":{"details":"Accepts any address, including zero (no calculator). The event is emitted even if the value is unchanged.","params":{"_calculator":"The new calculator, or zero for none"}}},"version":1},"userdoc":{"kind":"user","methods":{"getSequencerRewardCalculator()":{"notice":"Returns the current sequencer reward calculator"},"initializeConfig(RewardConfig,address)":{"notice":"Writes the reward configuration and the initial sequencer reward calculator at construction"},"updateSequencerRewardCalculator(address)":{"notice":"Replaces the sequencer reward calculator and emits {IRollupCore.SequencerRewardCalculatorUpdated}"}},"version":1}},"settings":{"remappings":["@aztec-blob-lib/=src/mock/libraries/","@aztec/=src/","@generated/=generated/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@oz/=lib/openzeppelin-contracts/contracts/","@test/=test/","@zkpassport-test/=lib/circuits/src/solidity/test/","@zkpassport/=lib/circuits/src/solidity/src/","circuits/=lib/circuits/src/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","halmos-cheatcodes/=lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/","openzeppelin-contracts/=lib/openzeppelin-contracts/"],"optimizer":{"enabled":true,"runs":100},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/core/libraries/rollup/RewardExtLib.sol":"RewardExtLib"},"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/SlotDerivation.sol":{"keccak256":"0x8447b57b63810fe2e367c09496a966f143ec0e825d71ddb9fce2506cff84b618","urls":["bzz-raw://996cb48f793bf151555045b37138e36b3cdb31d6bc6552d3149285260be00cfb","dweb:/ipfs/QmcLaTTMNVbkMx58xhkp6GeFt4V3GtSyupZuaKG3vYW2Zc"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xcf74f855663ce2ae00ed8352666b7935f6cddea2932fdf2c3ecd30a9b1cd0e97","urls":["bzz-raw://9f660b1f351b757dfe01438e59888f31f33ded3afcf5cb5b0d9bf9aa6f320a8b","dweb:/ipfs/QmarDJ5hZEgBtCmmrVzEZWjub9769eD686jmzb2XpSU1cM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x9e82c00fb176503860139c6bbf593b1a954ee7ff97ab2969656571382b9b58a2","urls":["bzz-raw://34b4eb157b44d4441315db65561ba7cf0fe909dc598c2cfd7080d203077d5b57","dweb:/ipfs/QmcNdvK3kDUAUr48urHxoeHd1TqVDya4YfZTM66i4goEJn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/TransientSlot.sol":{"keccak256":"0x9303ef5a2beb555e52ce56598de205ce07ca8988fc67d073687c06cb8fc973d1","urls":["bzz-raw://8b2e48fb42844c25e6cb38e7cfa1d91dcdc054613fd10f608833dbc677acf889","dweb:/ipfs/QmT4HQxbgpWA3fZnK4dY3eXHNCoyBvpvzNq5k7eSt5mR5t"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"keccak256":"0x69f54c02b7d81d505910ec198c11ed4c6a728418a868b906b4a0cf29946fda84","urls":["bzz-raw://8e25e4bdb7ae1f21d23bfee996e22736fc0ab44cfabedac82a757b1edc5623b9","dweb:/ipfs/QmQdWQvB6JCP9ZMbzi8EvQ1PTETqkcTWrbcVurS7DKpa5n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/cryptography/EIP712.sol":{"keccak256":"0x10eb97d047f8d84fe263a02bb4a656ac6674f6679d74532cc37546289e073a9d","urls":["bzz-raw://3e41287d40b0c46982f1083d40d32de2761f009c5c51627fe79a7feb0ab1cf5c","dweb:/ipfs/Qme7dbh6HX3ZvUJdbQAcVqXkmyXyfcLiUZRhhon3cU6K8p"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol":{"keccak256":"0x4515543bc4c78561f6bea83ecfdfc3dead55bd59858287d682045b11de1ae575","urls":["bzz-raw://60601f91440125727244fffd2ba84da7caafecaae0fd887c7ccfec678e02b61e","dweb:/ipfs/QmZnKPBtVDiQS9Dp8gZ4sa3ZeTrWVfqF7yuUd6Y8hwm1Rs"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8","urls":["bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621","dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0x2c33f654cefbbe80a9b436b5792cfe8bda2e87f139f110073c99762558db252f","urls":["bzz-raw://dc7ebd80046a52f28978cf46a24ff3e4c8568264ab6bb138038951c75d576167","dweb:/ipfs/QmQQjXVr4CbDR3DXd8GHEqn3JSJYTnbBHMJp9tvc29yXrc"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"keccak256":"0x195533c86d0ef72bcc06456a4f66a9b941f38eb403739b00f21fd7c1abd1ae54","urls":["bzz-raw://b1d578337048cad08c1c03041cca5978eff5428aa130c781b271ad9e5566e1f8","dweb:/ipfs/QmPFKL2r9CBsMwmUqqdcFPfHZB2qcs9g1HDrPxzWSxomvy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xb1970fac7b64e6c09611e6691791e848d5e3fe410fa5899e7df2e0afd77a99e3","urls":["bzz-raw://db5fbb3dddd8b7047465b62575d96231ba8a2774d37fb4737fbf23340fabbb03","dweb:/ipfs/QmVUSvooZKEdEdap619tcJjTLcAuH6QBdZqAzWwnAXZAWJ"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/structs/BitMaps.sol":{"keccak256":"0x3616f1b0d0a9ee1ca8f0953ecaceb9230e36f691c7974d30f964212acff52d2b","urls":["bzz-raw://d4bebdd07b31ac28e3e596ac6f0333da90a4e332405aa7d65f3a3a7e0b4cf15e","dweb:/ipfs/QmckoDU5bBnye2UtPcrfJNahLD2FbxrnPP9nrREMWPpnug"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/structs/Checkpoints.sol":{"keccak256":"0x66364cd3247ea71cdb58f080f5d5ed6732433a8001413139661841535494692f","urls":["bzz-raw://0f87914c6645b58eaf75f00a156037a7da91129f3a56aec44aebfc715b19ea44","dweb:/ipfs/QmNX7NLSMXyWuogvf8wfCwjUGwLhLBZrGktWPSdoHtERGp"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol":{"keccak256":"0x9b161e97b8967d4bc0c08d25741889a30692cdda4b71910bf1b0e315f1962212","urls":["bzz-raw://821500c39d095eaa25b06f46e65f1d0e97c4c96b39227f79077dee7d9e84051f","dweb:/ipfs/QmSTeGorKzSWF6HAmxo32uCZiEuKNvreQdUiX1AaYtUMTz"],"license":"MIT"},"src/core/interfaces/IEscapeHatch.sol":{"keccak256":"0x1a499acad8813b56e7d9cdcff3152e36196482794e62302e95a28603f5915747","urls":["bzz-raw://18da3711ad1fbc413336c252709e1ad32d51092336fbe6c2428b48768f58352c","dweb:/ipfs/QmdkMJiH1pdcuoLe5zPHeMtnFhZ1k7PLZJtoWQUcpcm4bJ"],"license":"Apache-2.0"},"src/core/interfaces/IFeeJuicePortal.sol":{"keccak256":"0xce84c8907395b4c11cc6dd8035d8e14560153450f9d88340cfb8abb914c66639","urls":["bzz-raw://f5eb389f1a6e9adbb2f24dad7a6c0bc706d49decad82ba9b582c288e12eddda6","dweb:/ipfs/QmNM3uQmJYn9B6RAHSMUT3TZMR6R75okjJErUEsuRjxGXt"],"license":"Apache-2.0"},"src/core/interfaces/IRollup.sol":{"keccak256":"0x4885f9bbf279f63143fa0ccd21ce4918fd34eef9ce4ba871c78c22ae6c174f8b","urls":["bzz-raw://c3eac7f06a1db468466f6e977fc204b4106808d0293ca57d336004ed33cc0add","dweb:/ipfs/QmUzzFrVi15V2WRFsgpSmDQBfPUbbA4ochmZD55VhovJBR"],"license":"Apache-2.0"},"src/core/interfaces/ISequencerRewardCalculator.sol":{"keccak256":"0xb7fb4ad1c171762783aecdd5e85036e71990438fc11e1121842b31c431ff0c67","urls":["bzz-raw://15bf6fea8074c7a5f71860b325786d2dd5b625cbfb5b0bd4d0fc4f1a5f566d5a","dweb:/ipfs/QmTH4XovGivVCs4Hp6PT3UVKLrSCPPtv1mmtvUeALVCnAZ"],"license":"Apache-2.0"},"src/core/interfaces/ISlasher.sol":{"keccak256":"0xf7dc3b2795b2806dbec7c94c33665abcf00a35ee65802a47f6222faf8641d302","urls":["bzz-raw://d7c9283746c66f04df5a133145b3196fc176e06e2fe6b3285056ffac68a09e9b","dweb:/ipfs/QmPxTkM1eMNFny3yibc69p1GqWvPkno5fzBjyju89h7CNk"],"license":"Apache-2.0"},"src/core/interfaces/IStaking.sol":{"keccak256":"0x81ddf8fa0cf8a213d690845fd4d3e31e45c543e5876612e94607cdb753804f1d","urls":["bzz-raw://7e0ae2a10903274cca7231306660dd6d5d1e5632238618b390aa7f4dfa5422f3","dweb:/ipfs/QmTMXRYdNGnmecbUdREFfgsLwnMsRjDseLVXsvPqQoiago"],"license":"Apache-2.0"},"src/core/interfaces/IValidatorSelection.sol":{"keccak256":"0xe22dc335f3fd5f5cbf10928fa7e9e945ea8a04fa99362ec6e2022c862d7baca4","urls":["bzz-raw://e26be09d3c823c545a2252467e13b68d366f3e711e15085be09f565ac436acc9","dweb:/ipfs/QmS1ddcZteAjeojaJJz1ZgRPdynzpNu1HSSPbmEjJNe99G"],"license":"Apache-2.0"},"src/core/interfaces/IVerifier.sol":{"keccak256":"0xf5b6025ff3d59b8922bb45fb05786764e74109b4a349d206b8a7979f46484c55","urls":["bzz-raw://98ec47ac3e15b1d8f2c80854ed6fd83e655e9e96341bb827f3be8e6b47f4c7fb","dweb:/ipfs/QmcmUkLgM7fb7mEaJTiWJWrZTW2kAWtRcYS6imBfmueALe"],"license":"Apache-2.0"},"src/core/interfaces/messagebridge/IInbox.sol":{"keccak256":"0x1149c904c8b3bd2942628fbab5480cdc044e831d51963f9e6946f1974cc162bd","urls":["bzz-raw://af2f1f49feba389b0bdbf427c4a85fac2908699585e5babd75f77cf14416ed5f","dweb:/ipfs/QmZYjZyhicCpTcwPuWTjTTUxnaBnfv5bTMWDgxyDGqy8Gm"],"license":"Apache-2.0"},"src/core/interfaces/messagebridge/IOutbox.sol":{"keccak256":"0xf66d0bb4f6d978acf91a036737cd4326bfab16a4030d10510d2976e4218ed8ad","urls":["bzz-raw://e796eea21d552b2ca4d0446bb096e2c980ab84816d9dd1398113293ae8128b30","dweb:/ipfs/QmNuGgRtPFgRe3asa68vDMcWpyfDFqQ5w5j5U7yWD1EsyZ"],"license":"Apache-2.0"},"src/core/libraries/ConstantsGen.sol":{"keccak256":"0xe328f94338f5563669e04618c3ec21ec38b9f21ab24d5de698d80cf38f977dfa","urls":["bzz-raw://3d9872c9a78d7241053e9ce3eadf192d18a9cb4b95c0ac120470d92435b7216e","dweb:/ipfs/QmcRnfbW8sNWwRHPik4wvkA7CTY1BTjuf2ydu3jN5otQJT"],"license":"Apache-2.0"},"src/core/libraries/DataStructures.sol":{"keccak256":"0x5ea9d1097f0b53eafbd72332d4c5c517307e5a056266befe5b46f5f43ee3d83c","urls":["bzz-raw://1a742311dc3c5ead2d5361549f017d20f46c40a4e74e879823ac168cf5b572d4","dweb:/ipfs/QmTNDc1fiPti41QqJTJQoV9uduB6eXaQhbfq1hfVVjVNvS"],"license":"Apache-2.0"},"src/core/libraries/Errors.sol":{"keccak256":"0x282e22d0eb9cd8f22f7bfaef3c3e3cad5461734d6e421f392b372a146c83d467","urls":["bzz-raw://5c250d031a44b257109f81417bb89c0e5b99d44bb17a55379695061afa9d3ef1","dweb:/ipfs/QmenxQJyukQT7KkCsfXV6by3VU6qumEUnK4EH4mqHAw6iK"],"license":"Apache-2.0"},"src/core/libraries/HatchMath.sol":{"keccak256":"0xca787b2889e281c8db132043312aa9513315669782981689824344c910833fe4","urls":["bzz-raw://77ec2f6b5919d53d3a7128f6006155f2566a84e7a56cd26e9d5e6d1514ccd7a2","dweb:/ipfs/Qmc3Z2quujEwxQU1JBfrxhkiULaczspBsTMjXibqXCjFyd"],"license":"Apache-2.0"},"src/core/libraries/SlashRoundLib.sol":{"keccak256":"0x6773eea1fa593e5c1e16fcd3a8341b537bf5ed7ee2f10472649dfd542e3ade8e","urls":["bzz-raw://756bdaa3facd4034149eeb3553ae99777b646c3e16abf8d41f9558e74249baa6","dweb:/ipfs/QmNpb62diGKNKf5pcynejjhNex9c6PTkZnVUeuLvJ2qCZ9"],"license":"Apache-2.0"},"src/core/libraries/StakingQueue.sol":{"keccak256":"0xbbeafda1659a92be14ec5b77838952a089f075cc1d0c5f348b6ff336ea6a1a98","urls":["bzz-raw://f3c8bdb1de77dab697ef4442f72fa4830c757059f8d948d2f3aeb7f6983aa64f","dweb:/ipfs/QmSDYdTnFo8nx34q3fdJCKpy8DCnKBQ4isxr49o4sY5T6T"],"license":"Apache-2.0"},"src/core/libraries/TimeLib.sol":{"keccak256":"0x865b760fe681ee74a93b49491d897a98091432ebc2923ff17717ddb6d26d31ab","urls":["bzz-raw://4ccdfb80464d8e58a95a68314fe2dd33f4a1634ab0695a9a4e9c180a50cc592b","dweb:/ipfs/QmNUUFN7RTjiicZCkci6eEnfromVTPS2MVE4CkbqoneV6P"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/CheckpointLog.sol":{"keccak256":"0x613513b7eb7855ff619c9eb3f1589fcfb0d7675e15c5261034ac353a62c5cabf","urls":["bzz-raw://110e7cc1eae76116a6682a9044cf9031744a7a8c46164987e246923169618d5e","dweb:/ipfs/QmcuhMXiGWjAbYGYYXKrTCLNYguQZpgxpWVWteJezYKVzQ"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/StakingQueueConfig.sol":{"keccak256":"0x32b00fd08e1754d9d9c9b377ae0a0ea887ace519db0ec6d252e1b2216891068e","urls":["bzz-raw://4ecea0a1ff8536819d37d3800b2915249b5c854d9dc611e91aae81df6acf7d76","dweb:/ipfs/Qmf3FgXCf1MP78p5B76kQnwx8yXFXncutVzQhV2fteBvVn"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/Tips.sol":{"keccak256":"0xdf872f54470e59b86349871e2c12075e8daaad85894f90e64f92538daf5f4008","urls":["bzz-raw://493e4bc02c6e9acbb5bfaa68f19bf4defb409211b701784e43d2ca6cbc11ccd1","dweb:/ipfs/QmSUahndZ78LBx6WdozXWL6QkqxZXzrXpHna2kGwCqgy34"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/fees/FeeConfig.sol":{"keccak256":"0xd5593d342fd9e75cf10d9c126d5aa46eab6707221111d81757e0f5c3473c23fd","urls":["bzz-raw://5cdfdfa94ea9d7b93cb80bdbd9e81c80fc7d71de890d88bb957960d0d5734298","dweb:/ipfs/QmQ2VjHtpja19AxDnGg2Q5hCck678PUrfLDuwUNvcyo4YS"],"license":"Apache-2.0"},"src/core/libraries/compressed-data/fees/FeeStructs.sol":{"keccak256":"0x23304769b5d5098b6d6b1092be483f34c0c901d7e14667404e8c5335dad8b501","urls":["bzz-raw://9ef5000b6a27a338f60dad80f73ea03d6560afc46c063d8d52932574d82cf157","dweb:/ipfs/QmSzdqmERrrCqdfqy4jXhdiyokyNRLvi4qLp85iw8rR9iJ"],"license":"Apache-2.0"},"src/core/libraries/crypto/Hash.sol":{"keccak256":"0x0e2bad615ee34b98ffdc7b81558e78ad3701cf8e02dc0fa4721555b4cdb861cb","urls":["bzz-raw://8f69943a9ad3fba8a12ae34b3d60815c4339ea66a5ec75beb781d22a872c2d4d","dweb:/ipfs/QmTfjRk9vBaxfziFgwYzWgTWFEvbB8EEudkcYupPw6qLXW"],"license":"Apache-2.0"},"src/core/libraries/crypto/SampleLib.sol":{"keccak256":"0x59e87e7d6a1e966c0f73bd919825ff7d81dc898625fe9fd20e6786e10b43783e","urls":["bzz-raw://a931d31192faf6d9d9c82fc7099a776b5886d90dd0a2a9ee8093cc680dfdef70","dweb:/ipfs/QmbQjTTf96tr2WSiuoWK8k984dGuXKooZWZ5o9EL7wEPhv"],"license":"Apache-2.0"},"src/core/libraries/rollup/AttestationLib.sol":{"keccak256":"0xf2111c30dc0d6c81d4f990990dfa37813932180e2b94739050356c5942f316e3","urls":["bzz-raw://fc4d8c42797fa58646094be9e108a60a278f2c2beea06bd7b06b00933b00c5b9","dweb:/ipfs/QmdNPs36gak9y4YoCQq2ttv1nj8ALyab6f9P7SoozECrfN"],"license":"Apache-2.0"},"src/core/libraries/rollup/BlobLib.sol":{"keccak256":"0x5b0d454bd38592154954f1da4cc59f50a036d0a28a169401abd9b5fdb88a4fe1","urls":["bzz-raw://68cf3a3fa979a6cfdc618e66621a0233263a83c259b17f6193fb0339796bee9d","dweb:/ipfs/QmcRKQmFf8mZxWKUT7Vgg3LnTxVsCen5f8TnMqCQMGi2j6"],"license":"Apache-2.0"},"src/core/libraries/rollup/CoordinationSignatureLib.sol":{"keccak256":"0x939c2aa29f536822f1f35db30af3b783986612bb35a210c583247f764c39dfae","urls":["bzz-raw://6f5e71fe318f83063eda2027992740e7be7e0274887b4c11ab00ef3199398729","dweb:/ipfs/QmPGkRVfkoLj8bi95vyySrtFeTaUGf62qcWoBy1nZRjZQc"],"license":"Apache-2.0"},"src/core/libraries/rollup/FeeLib.sol":{"keccak256":"0x78cccc8618137ebda0ca1cb68071a6458eff5c1e4eecce22de77c7479cb2f917","urls":["bzz-raw://eb96d87ba3229de5d5a8e8cd9e1c29438789e578f915d787f2f7c0788f380679","dweb:/ipfs/Qma3VYid6EyGtNCLertDyViT1Z8Ma1vNnc7EAEmJfxf8t9"],"license":"Apache-2.0"},"src/core/libraries/rollup/FieldLib.sol":{"keccak256":"0xd09f77d3aa6d7efc844e99bd496a145171613825bc45d35e1518889098f91e95","urls":["bzz-raw://499d0aeb3c7b6801e49f7554110a194ebeca73bec4ddf4b00ea8dd64fcc4b2ac","dweb:/ipfs/QmQf7EeP4kwTGPR2xfDK2MpNAqqcAY4vWZ3faEKn6JEW8R"],"license":"Apache-2.0"},"src/core/libraries/rollup/ProposeLib.sol":{"keccak256":"0x90d4fff721a1bcdbb555aad73a040ac1f0c3a61e286b0f291f47248129d8a777","urls":["bzz-raw://988c7390ba413ae25939df5a9f8850649106627ddf453a60b472e31c32a97156","dweb:/ipfs/QmXNPKm6y3bgTmjfeTMrY4sfBUFT4fLxZsMBBSC13Nt6oy"],"license":"Apache-2.0"},"src/core/libraries/rollup/ProposedHeaderLib.sol":{"keccak256":"0x43a9fa530b7cb948c1d7c436bddafdd8ddd8c022c67e25045372bc68b9e5018c","urls":["bzz-raw://904e4aa94b322f68c605dd34ea38bb77343437e2f2203c3e650cf7a7bb3aa19e","dweb:/ipfs/QmX3H4PMwh57L5Zv3LFrHjkNmgVZiik4FmzSyJhnTJcqPD"],"license":"Apache-2.0"},"src/core/libraries/rollup/RewardExtLib.sol":{"keccak256":"0x258e1b7ebfa2c5cecc4d5bcecacfda7e6398b0191a08d6f2a9f775724ab7fd5d","urls":["bzz-raw://9d1d38d938a44dd27419cb656a7726609da2dc074fef9c54e35909d5e304915b","dweb:/ipfs/QmSZ6VVTYYBXQra114KmdZyVXVSh6J8MLKRjwEF9EmE3fp"],"license":"Apache-2.0"},"src/core/libraries/rollup/RewardLib.sol":{"keccak256":"0x3a73a07577c713179be2de8df601445e79c606afb42f74bed33d1000c6f14ff8","urls":["bzz-raw://e432e402f6721bf70849ae3d731dcc669abeeb7df8399c878cc946fea0657a1a","dweb:/ipfs/QmYuGKQvN9iFhQpKLo6Rd7oTkMZx6VfdrJFh6tVgLEDg5M"],"license":"Apache-2.0"},"src/core/libraries/rollup/STFLib.sol":{"keccak256":"0xcb2ae0566bd5b0834f8ec2f73d78037f25d4d65894bff1ab8abcb9f8c65c7bc0","urls":["bzz-raw://35689b10ee3d4fff126625efa170fe77c617441fd7902d7376488af5061a79e0","dweb:/ipfs/QmUzDZoMrpJAuhVYVGSruX4mj9jTJmSZncvoTHbsyZL7eM"],"license":"Apache-2.0"},"src/core/libraries/rollup/SequencerRewardCalculatorLib.sol":{"keccak256":"0x2d5e8efc5a87bec1d50a8c9df0696a8248e0905ab62dcd7ec6a51527ad33b604","urls":["bzz-raw://15d4a7d1f265fc1a248762702373534fcae9d85df5150e5e1a45f79b94736ed4","dweb:/ipfs/QmdAT5Aw6JSg5GJnTikfDtJHnJZuMib7L8GB3yQ4jMuiFr"],"license":"Apache-2.0"},"src/core/libraries/rollup/StakingLib.sol":{"keccak256":"0x6e3c96f937701c67570d902aca8d2f9a1ee35942e17b1e5a375b264582a6fe8c","urls":["bzz-raw://ddb78c290af17a9574b89104177d2f1079c5abeb462446722b8fb09e03659ea6","dweb:/ipfs/QmURXaGC2SRKZc36NQZ4SXqNtgY5MpYQRamS3Shn2GMAoe"],"license":"Apache-2.0"},"src/core/libraries/rollup/ValidatorSelectionLib.sol":{"keccak256":"0xea94ff99c5e47c51bbd4ffe8282447c7aae23065e255ec2d2806a11901ab1752","urls":["bzz-raw://4e5c466c3c0ca5834c41714ddd64e7e5a34e6c37a5d57ddbed40b567582746bb","dweb:/ipfs/QmUYZ4KgwoUhxQCMtazUgj8tN6wkRHcakZ5rg5EjQq1XuU"],"license":"Apache-2.0"},"src/core/reward-boost/RewardBooster.sol":{"keccak256":"0x1cffe0dcbc06775ad415b06cd3591f74331bad3b154a3305ea6c5a081915fce0","urls":["bzz-raw://a2fcdbdcc260b3330bae0bc61227f652f9cb68e175fbc7d4173bf1d2dfaa92d1","dweb:/ipfs/QmddUmciRbznTTfBpbZf2p3R9sC1oePRF9C3Swnq8qU3Xb"],"license":"Apache-2.0"},"src/core/slashing/Slasher.sol":{"keccak256":"0xc3040cd1813a6064a6afda9ca8b1f65f5cba2e7359050c48507d2f71d3606786","urls":["bzz-raw://73f73fac9ffe650304c68a49635604806b86b0a5baadbf59ef36931e7937bc51","dweb:/ipfs/QmaMMMXycUeybJyf2ZowJgQ1Wo4ZC7g5kyp1BHWfj8dkD9"],"license":"Apache-2.0"},"src/governance/Bn254LibWrapper.sol":{"keccak256":"0xea39571de45fe0fec82d9e760998677eb2432e08c6cdb00c41efa58caf56e607","urls":["bzz-raw://1e470b821f3d87fa0c988c5f23a8deed3849bffd2527b3b4ee137a90e0c1264c","dweb:/ipfs/QmW3M4HyRLDruV5AYXCKicFCiiczmwnSTtnwVKUnQSm7a8"],"license":"Apache-2.0"},"src/governance/GSE.sol":{"keccak256":"0xc19fa4868d78030e2411dd5cef6d0da09645ade1d1ea0c4374b284a89feb722a","urls":["bzz-raw://d06396c249566d0e9de5d34eade2bf27c4d583005c0129787bf6c413dcd9e273","dweb:/ipfs/QmcimKKiV9KqobS5wzPsKYzyYu5WezCF3gyHkekf5tjrUU"],"license":"Apache-2.0"},"src/governance/GSEPayload.sol":{"keccak256":"0x40e5385b008f0335b50e066c647bb906685511c9fef206ce90a3391468558bae","urls":["bzz-raw://a129e87e1d57cf0813b14108cbdbcdd4c114b20f3f2d67477302d6d050120c7e","dweb:/ipfs/QmRcQQkeDhkrmQha3nkA8qvXnGmF6nLhZMKAhMx61A7a5y"],"license":"Apache-2.0"},"src/governance/Governance.sol":{"keccak256":"0x07770c3d80369adae51be8e361f63a2aa5ec489b354b10c8590be1e294dfe2e5","urls":["bzz-raw://7219becf3467ea8368dba0bd093ba932b165cf3f214e7286f652e2730bf42eaf","dweb:/ipfs/QmTSCDhSQBTKhzGUk12phxhqohSba6yopYMzF5T5XPFUWw"],"license":"Apache-2.0"},"src/governance/interfaces/IBn254LibWrapper.sol":{"keccak256":"0xdd0a3de8b8ff67cf2bf090d04b4a37aa6d604f402db3328387d2466d2354464a","urls":["bzz-raw://daef0234547509cd7ae3a7babf0e50a8d1ca2894f1817e3e2409a50fd32947b9","dweb:/ipfs/QmbwSedqnBfsqRnUq8XcXzoeoyhZTXJWJ9rpJn61BAJfej"],"license":"Apache-2.0"},"src/governance/interfaces/IEmpire.sol":{"keccak256":"0xe6a8a8c3fef8e6f9f5118bd40c63e951b13a59d5f885bbb979d38745ef760ed3","urls":["bzz-raw://940c1fe4138d7364ccdb7d5635ea90bafa1da274f680039b0b54ee8c2a275a9a","dweb:/ipfs/QmX2EeoVyES18BMgcbKVDb36MCq8ooDVR98m2RmnmZjEAo"],"license":"Apache-2.0"},"src/governance/interfaces/IGovernance.sol":{"keccak256":"0xe420d305fbe7c35f4620cd1e0f05f9f4c5a91532621d21a64ea553a3d9a3c005","urls":["bzz-raw://1900ac41f945aa692d5228f134ae63840081d284bf89fdd2a06b45424fe359ff","dweb:/ipfs/QmePFZ1xv5qfftJVDLc98XUVFsrpuKAbKZiro7MoMDTpoa"],"license":"Apache-2.0"},"src/governance/interfaces/IGovernanceProposer.sol":{"keccak256":"0x2be820a5452c481ffd329d68c46d0af6a286934963f26b36d363cd34fb0e5817","urls":["bzz-raw://f58839d1504e11e7da42b7f5a03fb9b9d8cc39ab4c16cfb86fa44c4de08df76f","dweb:/ipfs/QmR6jUJozP9tfpZuSduk66E8n7WuL3zzsR3WHZ7BR2ZBX2"],"license":"Apache-2.0"},"src/governance/interfaces/IPayload.sol":{"keccak256":"0x5844ea725ce56ac8adeb20b2d37aa431ca087f68a65a7ca91f981be7458737c3","urls":["bzz-raw://5ea670db51b2ccfac05a684b95458ecc015c9d12a6567c3f73d473386533f58c","dweb:/ipfs/QmRUB8mckkGQ4nNsErRhnKMsD9SSkokRSpnr5XZC9dZdin"],"license":"Apache-2.0"},"src/governance/interfaces/IProposerPayload.sol":{"keccak256":"0x89068dd464c0bfb7d447c0e99728277e03c7c4b864208ead20321f0590187248","urls":["bzz-raw://4d1d9ba5f8b7da374d773acde9514ca6607ad31a3e83950caa097bdb8b0f9167","dweb:/ipfs/Qmd7tWAD2Ubz434zZPJvuyAGsHYpXBHvVhVefLFzUudD2o"],"license":"Apache-2.0"},"src/governance/interfaces/IRegistry.sol":{"keccak256":"0xc3678c04c0945d3dc1d8007df3dc7f8b25d8108b0b25134842ffc5169f996ce8","urls":["bzz-raw://71e4e401f1a6f561262755cc2e1c347cd3aa79e67d2e52ca547864f49de01724","dweb:/ipfs/QmPvoKFEDTb41DSC3MmDMqtM3trj5oZb1Jj2jtQSnNfHBn"],"license":"Apache-2.0"},"src/governance/interfaces/IRewardDistributor.sol":{"keccak256":"0xf263f75be83d0b0e3c8f17ec7fc2558d3543df788dcb2db6f1ee158208134f14","urls":["bzz-raw://b2b65819a5f9ecd2237957e987bb69160d3076ccaf9f76f925a936e574d63d76","dweb:/ipfs/QmNgWESeo6UUvgW7rCMP3d4o8mUqSSbKrwbicH4kaUrm7h"],"license":"Apache-2.0"},"src/governance/libraries/AddressSnapshotLib.sol":{"keccak256":"0x1006e58059e0a1f0fef102f2f11f5649dffc7f2eb066fce51845e65a064f4210","urls":["bzz-raw://de385ab9eb3bb66d7be1218b49ae9bba7d88797bcb375b9a7481a209d303a402","dweb:/ipfs/QmZe6DTv3cACfdXNSMhbMhoefg31LW3uLxHLDC7nZhb4Yp"],"license":"Apache-2.0"},"src/governance/libraries/CheckpointedUintLib.sol":{"keccak256":"0xcd73cf7a62e4ac5cc79f7f8df8b35d5c5e4df5b8a3478bcbc2b29c9aa89ea4b4","urls":["bzz-raw://f56f37060d39d3c9276f23c96be7f6b1ea44676312dbaa1ab16ab3bff6acebf1","dweb:/ipfs/QmPDUEEgdbpTTs9r3fvdMYJo9akCRsWcJXyarBhQgcKb5q"],"license":"Apache-2.0"},"src/governance/libraries/ConfigurationLib.sol":{"keccak256":"0x7cb65bdbd8d077f3cfc01b065fb3a57628db36cd46f68885c74b9131198c2149","urls":["bzz-raw://e37bde50f5f739f479feb95fbe81ed24ee47f841b99f066ecf6782e758d1978a","dweb:/ipfs/QmebPE5REUpYRB8dikUebcGtyk9uy44G9mbchKJtHxJAgy"],"license":"Apache-2.0"},"src/governance/libraries/DepositDelegationLib.sol":{"keccak256":"0x37fbca65ccabec9d901bd71d684dceec7c59fa5a05438fd209ea0d5e16e764c0","urls":["bzz-raw://e42f2622978abc3ac84223a6b206201898d0269d20bf81539636c0999a0db9eb","dweb:/ipfs/QmW4BgTjR6BuPxwxreKarUeK1u8gx3p9yFdDD4EsC5hkyb"],"license":"Apache-2.0"},"src/governance/libraries/Errors.sol":{"keccak256":"0x8861ea7508138c83e89f186ce17accb42a6eee7d1d2e52841975d4ba676daae4","urls":["bzz-raw://b0d5b01c2b0a20c3c70a7ab2b8405d083a063bf5758beb87a4d488bda76078fa","dweb:/ipfs/QmfGH6CTCPA6nVA6KidcTSvaJ6MQZkv6KiuDVBTARGBTRv"],"license":"Apache-2.0"},"src/governance/libraries/ProposalLib.sol":{"keccak256":"0x616ffbb24c4454ca9e223e85ff01e8dca139723d5cd312d5d6f6111d79782a90","urls":["bzz-raw://192f9be3355a7a94d19ae4e5b397e5db19dde64ccc671e149da06dfaa2577192","dweb:/ipfs/QmTDcm7XEFLe7o5cXUmuu5wQDyprU78AVMymiWvrmP4tHT"],"license":"Apache-2.0"},"src/governance/libraries/compressed-data/Ballot.sol":{"keccak256":"0xca07dc8cf36ac2beae7674804af144b34b3c5848153351c17d996e9b3293cd5d","urls":["bzz-raw://6911cc49f1d6977c12f652063c14891697c1ffe49fdf36903c32a8ad73cbd012","dweb:/ipfs/QmQBEZARCAAj1ZLcswkH6FwP1RP8uuNjYTHqthmE9Z5RnM"],"license":"Apache-2.0"},"src/governance/libraries/compressed-data/Configuration.sol":{"keccak256":"0x40744f275af22d33c38fd9c6a7b822292c9c87b17ac2c78abbef4eb8356fd9f9","urls":["bzz-raw://73c685be7e934516207827a59cbbeb7fc1164e7659dd3ec857a91cfea765b482","dweb:/ipfs/QmQfudRpSSQnG9u4XV8iA2UAyDzQPFqWzpZy5NZbaD6htv"],"license":"Apache-2.0"},"src/governance/libraries/compressed-data/Proposal.sol":{"keccak256":"0x72cf619a21c8e95875c63d4361cbe1a815d9d67f36f3fe32b6c9ca4d9ab0d33a","urls":["bzz-raw://d80f47beb3f91da3cc68264c86fc8fb8f0e4abaf9d92243ab3206407fceed5c6","dweb:/ipfs/QmYyrBTDMfkTBu6EcKcSMR7JyfphZ5xH1VCQ8EHMQUvsoN"],"license":"Apache-2.0"},"src/governance/proposer/EmpireBase.sol":{"keccak256":"0x747b20e201dab632a831c12f1fee9ee52cc80a2098c77e8b6c7b09b0f3ba2bc0","urls":["bzz-raw://b7d4a0475ca364f75aa2a1d17ed9e6970f0be605126f2efe26d53c791d4a5209","dweb:/ipfs/Qma5tkTcy94PqE9vtQybQSyH9LWaHR8V3ubwDPZwiUNT35"],"license":"Apache-2.0"},"src/governance/proposer/GovernanceProposer.sol":{"keccak256":"0xa2829df5b65856c9f1d6bf490fb50616f14402ff8eece2e32b63828b8b9337c3","urls":["bzz-raw://8ad52830a7a3aed3477bf55f92c3d68cb1c16a5cf1d636227ab76a306c846607","dweb:/ipfs/QmRonyZQZj5D1e2g4Y6Tmj2AEUnekL4pGmgdMT4ycRAM8m"],"license":"Apache-2.0"},"src/mock/libraries/BlobLib.sol":{"keccak256":"0xa1b19239c5c64ba1b0c9f83ec0a30059f10ded12bf40d5d7c3f65974752b3121","urls":["bzz-raw://5cbce7d0dd0096232d60ec5c6920f211ffcaa46c8675b1129c1f939a1ee84837","dweb:/ipfs/QmSS2qUhzUuZY1qHDjWUGvHuMqMG3cjHoHeDVvgWsjMdA9"],"license":"Apache-2.0"},"src/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":113}
|